@charset "UTF-8";
:root {
  --board: 1440;
  --max: 1px;
}
@media (min-width: 1920px) {
  :root {
    --board: 1920;
    --max: 9999px;
  }
}
@media (max-width: 768px) {
  :root {
    --board: 375;
    --max: 9999px;
  }
}

:root {
  --weightLight: 300;
  --weightRegular: 400;
  --weightMedium: 500;
  --weightBold: 700;
}

:root {
  --fontSize: 16rem;
  --letterSpacing: 0;
  --lineHeight: 1.75;
  --kerning: unset;
  --gothic:
    "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,
    "MS Pゴシック", "MS PGothic", sans-serif: ;
}

:root {
  --bodyBg: var(--colorBg);
  --speed: 0.3s;
}

:root {
  --gothic:
    "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,
    "MS Pゴシック", "MS PGothic", sans-serif;
}

@media (hover: hover) {
  .button.copy-button:hover {
    background-color: #05a9e2;
  }
}

@media (hover: hover) {
  .subject-box__download:hover {
    background-color: #5b3d42;
  }
}

.article .class-flow--renewal .class-flow-sticky__tab {
  -webkit-transition: background-color 0.4s ease, color 0.4s ease;
  transition: background-color 0.4s ease, color 0.4s ease;
}
@media (hover: hover) {
  .article .class-flow--renewal .class-flow-sticky__tab:hover {
    background-color: #ed7d31;
    color: #fff;
  }
}
@media (hover: hover) {
  .article .class-flow--renewal .flow-card__copy:hover {
    background-color: #05a9e2;
  }
}

.article .copy-list.copy-list--grid .copy-list__item {
  width: clamp(0px, 10vw / var(--board) * 10 * 296, var(--max) * 296);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media (max-width: 768px) {
  .article .copy-list.copy-list--grid .copy-list__item {
    width: 100%;
  }
}
.article .copy-list.copy-list--cols2 {
  max-width: calc(clamp(0px, 10vw / var(--board) * 10 * 296, var(--max) * 296) * 2 + clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32));
  margin-inline: auto;
}
.article .copy-list.copy-list--cols3 {
  max-width: calc(clamp(0px, 10vw / var(--board) * 10 * 296, var(--max) * 296) * 3 + clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) * 2);
  margin-inline: auto;
}

.article .class-flow-root .class-flow-root__tabs--single .class-flow-root__tab {
  width: clamp(0px, 10vw / var(--board) * 10 * 1258, var(--max) * 1258);
}

.article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title:has(.flow-item-heading__num) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 768px) {
  .article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title:has(.flow-item-heading__num) {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: clamp(0px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  }
}
.article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__num {
  font-size: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56);
}
@media (max-width: 768px) {
  .article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__num {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
}
.article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__unit {
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
}
@media (max-width: 768px) {
  .article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__unit {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  }
}
.article .class-flow--renewal .flow-highlight.flow-highlight--multi {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.article .class-flow--renewal .flow-highlight__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (max-width: 768px) {
  .article .class-flow--renewal .flow-highlight__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
}
.article .class-flow--renewal .flow-highlight__divider {
  display: block;
  width: 100%;
  height: 2px;
  margin: 0;
  border: 0;
  background-color: transparent;
  background-image: repeating-linear-gradient(to right, #5b3d42 0, #5b3d42 1px, transparent 1px, transparent 7px);
}

.subject-box--v2 .subject-box__inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
}
@media (max-width: 768px) {
  .subject-box--v2 .subject-box__inner {
    gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
}
.subject-box--v2 .subject-box__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 88, var(--max) * 88);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}
@media (max-width: 768px) {
  .subject-box--v2 .subject-box__row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
}
.subject-box--v2 .subject-box__share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.subject-box--v2 .subject-box__share + .subject-box__share {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}
@media (max-width: 768px) {
  .subject-box--v2 .subject-box__share {
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    margin-top: 0;
  }
}
.subject-box--v2 .subject-box__share-item {
  width: 100%;
}
.subject-box--v2 .subject-box__downloads {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
}
@media (max-width: 768px) {
  .subject-box--v2 .subject-box__downloads {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
}
.subject-box--v2 .subject-box__share-button {
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  border-radius: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  line-height: 1.31;
}
.subject-box--v2 .subject-box__share-button img {
  width: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  height: auto;
}
.subject-box--v2 .subject-box__share-text {
  margin: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8) 0 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 1.5;
  color: #5b3d42;
  text-align: center;
}

body:has(.subject-box--v2) .class-flow {
  background-position: bottom center;
  background-size: 100%;
}
body:has(.subject-box--v2) .class-flow:before {
  content: none;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-card__share::before {
  content: none;
}
body:has(.subject-box--v2) .subject-box__download {
  padding: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12) clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 1.5;
}
body:has(.subject-box--v2) .subject-box__download-icon {
  width: auto;
  height: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
}
body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--lesson {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--lesson {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  }
}
body:has(.subject-box--v2) .flow-item-heading__note {
  margin: 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 2;
  color: #333;
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .flow-item-heading__note {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    line-height: 1.6;
  }
}
body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
/* 事後学習の見出し上に置く目安時数（富士通 0827: 「目安時数：1コマ（朝の会等を利用してもよい）」）。*/
body:has(.subject-box--v2) .flow-item-heading__approx {
  display: block;
  margin: 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 2;
  color: #333;
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .flow-item-heading__approx {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    line-height: 1.6;
  }
}
body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup .flow-item-heading__badge {
  width: auto;
  height: auto;
  padding: clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4) clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  border-radius: clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  line-height: 1.125;
}
body:has(.subject-box--v2) .article-tags__item {
  color: #ffdb4f;
}
body:has(.subject-box--v2) .article-title {
  line-height: 1.5;
}
body:has(.subject-box--v2) .article-header .title-box__content::before,
body:has(.subject-box--v2) .article-header .title-box__content::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/border_title-box-v2.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
body:has(.subject-box--v2) .subject-block__badge {
  padding: clamp(0px, 10vw / var(--board) * 10 * 6, var(--max) * 6) clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30) clamp(0px, 10vw / var(--board) * 10 * 9, var(--max) * 9);
}
body:has(.subject-box--v2) .supervisor .supervisor-box {
  border-color: #5b3d42;
}
body:has(.subject-box--v2) .tag-list__item {
  color: #5b3d42;
  padding: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5) clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15) clamp(0px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
}
body:has(.subject-box--v2) .supervisor .return-button {
  color: #5b3d42;
  line-height: 1.5;
}
body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 0;
  background-image: repeating-linear-gradient(to right, #5b3d42 0, #5b3d42 1px, transparent 1px, transparent 7px);
  background-size: 100% 2px;
  background-repeat: no-repeat;
  background-position: left bottom;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-card__title {
  display: none;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-step:not(:last-child) {
  border-bottom: 0;
  background-image: repeating-linear-gradient(to right, #5b3d42 0, #5b3d42 1px, transparent 1px, transparent 7px);
  background-size: 100% 2px;
  background-repeat: no-repeat;
  background-position: left bottom;
}
body:has(.subject-box--v2) .subject-block__grade {
  line-height: 1.45;
}
body:has(.subject-box--v2) .subject-block__lead,
body:has(.subject-box--v2) .subject-block__title {
  line-height: 1.45;
}
body:has(.subject-box--v2) .subject-theme-card__label {
  line-height: 1.2;
}
body:has(.subject-box--v2) .subject-theme-card__themes {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  text-align: left;
}
body:has(.subject-box--v2) .provide-area__text {
  line-height: 1.45;
}
body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__hours {
  line-height: 1;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  width: 100%;
  border: 4px solid #95caed;
  border-radius: 24px;
  background-color: #fff;
  color: #5b3d42;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout > * {
  margin: 0;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout__title {
  font-weight: 700;
  line-height: 1.5;
  color: #95caed;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout__content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout__content > * {
  margin: 0;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout__body {
  line-height: 1.75;
  text-align: justify;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout__note {
  line-height: 2;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-callout a {
  /* 記事内の a { display: block } を打ち消して注記文中にインラインで流す */
  display: inline;
  color: #0653ce;
  text-decoration: underline;
}
@media (min-width: 769px) {
  body:has(.subject-box--v2) .article-container .section-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .article-tags {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .article-tags.card-tag {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .article-tags__item {
    padding: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8) clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16) clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
    line-height: 1;
  }
  body:has(.subject-box--v2) .article-tags__item small {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .article-header {
    gap: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  }
  body:has(.subject-box--v2) .article-header .title-box__content {
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) 0;
  }
  body:has(.subject-box--v2) .article-header--renewal .provide-swiper__thumbs .swiper-slide {
    height: clamp(0px, 10vw / var(--board) * 10 * 74, var(--max) * 74);
  }
  body:has(.subject-box--v2) .article-header--renewal .provide-swiper__thumbs .swiper-slide img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  body:has(.subject-box--v2) .article-header .title-box__content::before,
  body:has(.subject-box--v2) .article-header .title-box__content::after {
    width: clamp(0px, 10vw / var(--board) * 10 * 576, var(--max) * 576);
    height: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .article-title {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .article-header--renewal .title-box__target {
    gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .article-header--renewal .title-box__target .title-box__target-icon {
    width: clamp(0px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  }
  body:has(.subject-box--v2) .subject-box {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    padding: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) clamp(0px, 10vw / var(--board) * 10 * 92, var(--max) * 92) clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
    border-radius: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .subject-block__lead {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .subject-table {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .subject-table thead th {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  }
  body:has(.subject-box--v2) .subject-table .subject-table__term,
  body:has(.subject-box--v2) .subject-table .subject-table__period {
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
    padding-right: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  }
  body:has(.subject-box--v2) .subject-table .subject-table__unit,
  body:has(.subject-box--v2) .subject-table .subject-table__subunit {
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    padding-right: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .subject-table th.subject-table__unit {
    padding-left: 0;
    padding-right: 0;
  }
  body:has(.subject-box--v2) .subject-table .subject-table__subunit {
    width: clamp(0px, 10vw / var(--board) * 10 * 304, var(--max) * 304);
  }
  body:has(.subject-box--v2) .subject-table .subject-table__unit-inner {
    gap: clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  }
  body:has(.subject-box--v2) .subject-block__title:has(+ .subject-block__desc) {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .subject-theme-card {
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
  body:has(.subject-box--v2) .class-flow-root .class-flow-root__tabs {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow-root .class-flow-root__tab {
    line-height: 1;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow__body {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow__body .section-inner {
    position: relative;
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .class-flow__title {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-left: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta {
    position: absolute;
    top: 0;
    right: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
    margin: 0;
    width: auto;
    padding: 0 clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::before,
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::after {
    width: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
    height: clamp(0px, 10vw / var(--board) * 10 * 101, var(--max) * 101);
    background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/class-flow-meta-union-1col.svg);
    background-size: 100% 100%;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::before {
    left: 0;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::after {
    right: 0;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__col {
    width: clamp(0px, 10vw / var(--board) * 10 * 412, var(--max) * 412);
    gap: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
    padding: clamp(0px, 10vw / var(--board) * 10 * 13, var(--max) * 13) clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__label {
    height: clamp(0px, 10vw / var(--board) * 10 * 37, var(--max) * 37);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__hours {
    min-height: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .class-flow__body:has(.class-flow-meta__col + .class-flow-meta__col) .class-flow__title {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 0;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col) {
    position: relative;
    top: auto;
    right: auto;
    width: clamp(0px, 10vw / var(--board) * 10 * 920, var(--max) * 920);
    margin: 0 auto clamp(0px, 10vw / var(--board) * 10 * 68, var(--max) * 68);
    padding: 0 clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
    gap: 0;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col)::before,
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col)::after {
    top: 0;
    bottom: 0;
    height: auto;
    background-image: none;
    border-style: solid;
    border-color: transparent;
    border-width: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0;
    -o-border-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/class-flow-meta-union.svg) 40 0 fill stretch;
       border-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/class-flow-meta-union.svg) 40 0 fill stretch;
    border-image-width: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col)::after {
    -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col) .class-flow-meta__col {
    padding: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16) clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta:has(.class-flow-meta__col + .class-flow-meta__col) .class-flow-meta__hours-main {
    line-height: clamp(0px, 10vw / var(--board) * 10 * 36, var(--max) * 36);
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .flow-list__item--lesson {
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .flow-list {
    gap: clamp(0px, 10vw / var(--board) * 10 * 42, var(--max) * 42);
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .flow-list__item {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .class-flow .flow-list__item:not(:last-child)::after {
    bottom: clamp(var(--max) * -53, 10vw / var(--board) * 10 * -53, 0px);
  }
  body:has(.subject-box--v2) .class-flow.class-flow--renewal .flow-list__item--followup {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 3, var(--max) * 3);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-block:not(:last-child) {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-objectives__item {
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-block__label {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card .flow-block__label,
  body:has(.subject-box--v2) .class-flow--renewal .flow-steps .flow-block__label {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-step:not(:last-child) {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-steps__list {
    gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__body {
    gap: clamp(0px, 10vw / var(--board) * 10 * 52, var(--max) * 52);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__share {
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
    min-height: clamp(0px, 10vw / var(--board) * 10 * 231, var(--max) * 231);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__share-lead {
    line-height: 1;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-highlight {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__title {
    flex: 0 0 clamp(0px, 10vw / var(--board) * 10 * 240, var(--max) * 240);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__content {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__body {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__note {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  }
  body:has(.subject-box--v2) .katsuyo-report_block {
    width: clamp(0px, 10vw / var(--board) * 10 * 1048, var(--max) * 1048);
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    margin-left: auto;
    margin-right: auto;
  }
  body:has(.subject-box--v2) .supervisor .section-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-title {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-box {
    padding: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-box .supervisor-box__inner {
    padding: clamp(0px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
  }
  body:has(.subject-box--v2) .supervisor .teacher-info__name {
    margin-bottom: 0;
  }
  body:has(.subject-box--v2) .supervisor .tag-box.stand_alone {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .supervisor .return-button {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .other-block .block-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
  body:has(.subject-box--v2) .other-block .other-contents .other-contents__title {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .other-block .other-contents .banner-top {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .article-container .section-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .article-tags {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  }
  body:has(.subject-box--v2) .article-tags__item {
    padding: clamp(0px, 10vw / var(--board) * 10 * 3, var(--max) * 3) clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15) clamp(0px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  }
  body:has(.subject-box--v2) .article-header .title-box__content {
    padding: clamp(0px, 10vw / var(--board) * 10 * 22, var(--max) * 22) 0;
  }
  body:has(.subject-box--v2) .article-title br,
  body:has(.subject-box--v2) .article-sub-title br,
  body:has(.subject-box--v2) .subject-table-caption br,
  body:has(.subject-box--v2) .flow-highlight__title br,
  body:has(.subject-box--v2) .subject-block__desc br {
    display: none;
  }
  body:has(.subject-box--v2) .subject-table-caption {
    width: clamp(0px, 10vw / var(--board) * 10 * 263, var(--max) * 263);
  }
  body:has(.subject-box--v2) .article-header {
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .title-box__target {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .provide-area__text {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  }
  body:has(.subject-box--v2) .subject-box {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    padding: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .subject-box__download {
    height: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
    padding: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12) clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
    gap: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  }
  body:has(.subject-box--v2) .subject-theme-card {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .subject-tabs__list {
    gap: clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  }
  body:has(.subject-box--v2) .subject-tabs__tab {
    height: auto;
    min-height: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
  body:has(.subject-box--v2) .subject-tabs__panel {
    padding: clamp(0px, 10vw / var(--board) * 10 * 18, var(--max) * 18) 0 clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24) clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .subject-table-scroll {
    margin-right: 0;
    padding-right: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow-root .class-flow-root__tabs {
    padding: 0;
    gap: 0;
  }
  body:has(.subject-box--v2) .class-flow-root .class-flow-root__tab {
    line-height: 1.25;
    height: auto;
    min-height: clamp(0px, 10vw / var(--board) * 10 * 72, var(--max) * 72);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow__body {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta {
    width: clamp(0px, 10vw / var(--board) * 10 * 311, var(--max) * 311);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    padding: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::before,
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta::after {
    width: 100%;
    height: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__col {
    padding: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8) clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    width: 100%;
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__label {
    height: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  }
  body:has(.subject-box--v2) .class-flow--renewal .class-flow-meta__hours {
    min-height: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--lesson .flow-item-heading__title {
    min-height: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--lesson .flow-item-heading__unit {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-block:not(:last-child) {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 11, var(--max) * 11);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup .flow-item-heading__badge {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
    line-height: 1.0715;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title {
    line-height: 1.4545;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-block__label,
  body:has(.subject-box--v2) .class-flow--renewal .flow-steps .flow-block__label {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-step:not(:last-child) {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-steps__list {
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__body {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__share {
    padding: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16) clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-step__phase {
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-step__phase-time img {
    width: clamp(0px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
    height: clamp(0px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-step__title,
  body:has(.subject-box--v2) .class-flow--renewal .flow-step__body {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    line-height: 1.75;
    text-align: justify;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-highlight {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout {
    flex-direction: column;
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    border-width: 3px;
    border-radius: 16px;
    padding: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__title {
    flex: none;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__title br {
    display: none;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__content {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__body {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-callout__note {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 13, var(--max) * 13);
    line-height: 1.9;
  }
  body:has(.subject-box--v2) .class-flow--renewal .flow-highlight__title {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .class-flow--renewal .katsuyo-report_block {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  body:has(.subject-box--v2) .class-flow .section-inner {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .supervisor .section-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-title {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-box {
    margin-bottom: 0;
  }
  body:has(.subject-box--v2) .supervisor .supervisor-box .supervisor-box__inner {
    padding: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16) clamp(0px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
    row-gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .supervisor .supervisor-box__message {
    margin-bottom: 0;
  }
  body:has(.subject-box--v2) .supervisor .teacher-info__image {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .supervisor .teacher-info__name {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .supervisor .tag-box {
    gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
  body:has(.subject-box--v2) .supervisor .tag-box.stand_alone {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .tag-list {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .supervisor .return-button {
    margin-top: 0;
  }
  body:has(.subject-box--v2) .other-block .block-inner {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 17, var(--max) * 17);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .other-block .other-contents .other-contents__title {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .other-block .other-contents .other-contents__title img {
    height: auto;
    aspect-ratio: 336.08/112.91;
  }
  body:has(.subject-box--v2) .other-block .other-contents .banner-top {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
  body:has(.subject-box--v2) .other-block .other-contents .banner-list {
    gap: clamp(0px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
  }
  body:has(.subject-box--v2) .banner-list .banner-description {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  }
}

.subject-theme-card--groups {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.subject-theme-card--groups .subject-theme-card__group-title {
  margin: 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  font-weight: 700;
  line-height: 1.45;
  color: #5b3d42;
  text-align: left;
}
.subject-theme-card--groups .subject-theme-card__group-list {
  margin: 0;
  padding: 0 0 0 clamp(0px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  list-style: none;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  line-height: 2;
  color: #333;
  text-align: left;
}
.subject-theme-card--groups .subject-theme-card__group-list li {
  position: relative;
}
.subject-theme-card--groups .subject-theme-card__group-list li::before {
  content: "";
  position: absolute;
  left: calc(-1 * clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16));
  top: calc(1em - clamp(0px, 10vw / var(--board) * 10 * 0.5, var(--max) * 0.5));
  width: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5);
  height: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5);
  border-radius: 50%;
  background-color: currentColor;
}
@media (max-width: 768px) {
  .subject-theme-card--groups {
    gap: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  }
  .subject-theme-card--groups .subject-theme-card__group-title {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .subject-theme-card--groups .subject-theme-card__group-list {
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
    line-height: 1.75;
  }
  .subject-theme-card--groups .subject-theme-card__group-list li::before {
    top: calc(0.875em - clamp(0px, 10vw / var(--board) * 10 * 0.5, var(--max) * 0.5));
  }
}

.article .class-flow--with-try-more::after {
  content: none;
}

.article .class-flow--with-try-more .section-inner {
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
}
@media (max-width: 768px) {
  .article .class-flow--with-try-more .section-inner {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 62, var(--max) * 62);
  }
}

@media (max-width: 768px) {
  body:has(.subject-box--v2) .class-flow--with-try-more .section-inner {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 62, var(--max) * 62);
  }
}

@media (max-width: 768px) {
  body:has(.subject-box--v2) .supervisor .supervisor-box .supervisor-box__inner:has(+ .supervisor-box__inner) {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
}

.article .try-more-v2 {
  position: relative;
  --tryMoreBg: #e1f0fa;
  padding: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56) 0 clamp(0px, 10vw / var(--board) * 10 * 244, var(--max) * 244);
  background-color: var(--tryMoreBg);
}
.article .try-more-v2--green {
  --tryMoreBg: #e7f4e6;
}
@media (max-width: 768px) {
  .article .try-more-v2 {
    padding: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32) 0 clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
}
.article .try-more-v2::before {
  content: "";
  position: absolute;
  top: clamp(var(--max) * -56, 10vw / var(--board) * 10 * -56, 0px);
  left: 50%;
  display: inline-block;
  width: 100vw;
  height: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56);
  border-radius: 50% 50% 0 0/93% 93% 0 0;
  background-color: var(--tryMoreBg);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 768px) {
  .article .try-more-v2::before {
    top: clamp(var(--max) * -30, 10vw / var(--board) * 10 * -30, 0px);
    height: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  }
}
.article .try-more-v2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  display: inline-block;
  width: 100vw;
  height: clamp(0px, 10vw / var(--board) * 10 * 140, var(--max) * 140);
  background-size: cover;
  background-repeat: no-repeat;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 768px) {
  .article .try-more-v2::after {
    content: none;
  }
}
/* 既定（青テーマ）。街並みは try-more 用のデザイン書き出しを使う
   （2026-09-07 修正: class-flow 用の cat01 を流用していたため差し替え） */
.article .try-more-v2.cat01::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/bg_try-more_bottom_blue.svg);
}
.article .try-more-v2.try-more-v2--green::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/bg_try-more_bottom_green.svg);
}
.article .try-more-v2.try-more-v2--blue::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/bg_try-more_bottom_blue.svg);
}
.article .try-more-v2 .section-inner {
  position: relative;
  z-index: 1;
  max-width: clamp(0px, 10vw / var(--board) * 10 * 1120, var(--max) * 1120);
  margin: 0 auto;
}
@media (max-width: 768px) {
  .article .try-more-v2 .section-inner {
    padding: 0 clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
}
.article .try-more-v2 .katsuyo-report_block {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
}
@media (max-width: 768px) {
  .article .try-more-v2 .katsuyo-report_block {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
}

.try-more-v2__body {
  padding-top: 0;
}

.try-more-v2__title {
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  text-align: center;
}
.try-more-v2__title img {
  display: block;
  width: clamp(0px, 10vw / var(--board) * 10 * 692, var(--max) * 692);
  height: auto;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .try-more-v2__title {
    padding: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5) 0;
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
  .try-more-v2__title img {
    width: clamp(0px, 10vw / var(--board) * 10 * 315, var(--max) * 315);
  }
}

.try-more-v2__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: clamp(0px, 10vw / var(--board) * 10 * 1048, var(--max) * 1048);
  margin: 0 auto;
  padding: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  border-radius: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  background-color: #fff;
}
@media (max-width: 768px) {
  .try-more-v2__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    width: 100%;
    padding: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
    border-radius: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
}

.try-more-v2__image {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  margin: 0;
}
@media (max-width: 768px) {
  .try-more-v2__image {
    width: 100%;
  }
}
.try-more-v2__image img {
  display: block;
  width: 100%;
  height: auto;
}

.try-more-v2__detail {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  max-width: clamp(0px, 10vw / var(--board) * 10 * 528, var(--max) * 528);
}
@media (max-width: 768px) {
  .try-more-v2__detail {
    max-width: none;
    width: 100%;
  }
}

.try-more-v2__detail-title {
  margin: 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  font-weight: 700;
  color: #333;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .try-more-v2__detail-title {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .try-more-v2__detail-title br {
    display: none;
  }
}

.try-more-v2__text {
  margin: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16) 0 0;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  line-height: 1.8;
  color: #333;
}
@media (max-width: 768px) {
  .try-more-v2__text {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  }
}

.try-more-v2__button {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
}

@media (max-width: 768px) {
  .try-more-v2__card a.try-more-v2__button {
    height: auto;
    min-height: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    line-height: 1.3;
  }
}
.try-more-v2__button--link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56);
  border-radius: 999px;
  background-color: #ed7d31;
  -webkit-box-shadow: 0 clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4) 0 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4) 0 0 rgba(0, 0, 0, 0.2);
  color: #fff;
  font-weight: 700;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  text-align: center;
  text-decoration: none;
}
@media (hover: hover) {
  .try-more-v2__button--link:hover {
    background-color: #5b3d42;
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .try-more-v2__button--link {
    height: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  }
}
.try-more-v2__button--link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: clamp(0px, 10vw / var(--board) * 10 * 37, var(--max) * 37);
  width: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  height: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  border-top: solid clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2) #fff;
  border-right: solid clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2) #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

.try-more-v2__card + .try-more-v2__card {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}

@media (max-width: 768px) {
  .try-more-v2 .subject-box__download {
    height: auto;
    min-height: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  }
}

.article .class-flow[style*="--classFlowBg"] {
  background-color: var(--classFlowBg) !important;
}

.article .supervisor.cat06 .supervisor-box__inner:nth-of-type(1) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.article .supervisor.cat06 .supervisor-box__inner:nth-of-type(2) {
  border-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.article .supervisor .teacher-info-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0px, 10vw / var(--board) * 10 * 31, var(--max) * 31);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 328, var(--max) * 328);
}
.article .supervisor .teacher-info-group .teacher-info {
  width: 100%;
}
@media (max-width: 768px) {
  .article .supervisor .teacher-info-group {
    width: 100%;
    gap: clamp(0px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  }
}

.article .supervisor .teacher-info__note {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 1.5;
  color: #5b3d42;
  text-align: left;
}

.article .subject-block__grade-note {
  margin-left: clamp(0px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  color: #5b3d42;
  font-weight: 700;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
}

.article .subject-block__intro {
  display: block;
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  color: #5b3d42;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  line-height: 1.7;
}
@media (max-width: 768px) {
  .article .subject-block__intro {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  }
}

.article .flow-step__phase-name:only-child {
  padding-right: 0;
}
.article .flow-step__phase-name:only-child::after {
  content: none;
}

.article .flow-step__note {
  margin: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8) 0 0;
  color: #333;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 2;
  text-align: justify;
}

body:has(.subject-box--v2) .subject-box__download--narrow-gap {
  gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
}

body:has(.subject-box--v2) .class-flow--renewal .flow-card__shares {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  max-width: clamp(0px, 10vw / var(--board) * 10 * 455, var(--max) * 455);
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .class-flow--renewal .flow-card__shares {
    max-width: none;
  }
}
body:has(.subject-box--v2) .class-flow--renewal .flow-card__shares .flow-card__share {
  max-width: none;
  min-height: 0;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-card__shares .flow-card__share::before {
  content: none;
}
body:has(.subject-box--v2) .class-flow--renewal .flow-card__shares .flow-card__share-lead {
  line-height: 1.4;
}

body:has(.subject-box--v2) .class-flow--renewal .flow-card__body:has(.flow-card__shares) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
/* 旧デザイン style.css の併読対策（2026-08-28 / NOREN の head 共通化に伴う対応）
   style.css の `.article .class-flow.catNN:after`（詳細度 0,3,1）が
   renewal-style.css の `.article .class-flow:after`（0,2,1）を上書きし、
   街並みが旧デザインの色付きSVGに戻るため、同詳細度・後方で白版に固定する */
.article .class-flow.class-flow--renewal::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/bg_class-flow_bottom.svg);
}
/* cat04 / cat05 は renewal-style.css 側で別の街並みを使うので、同じ対応関係を維持する */
.article .class-flow--renewal.cat04::after,
.article .class-flow--renewal.cat05::after {
  background-image: url(/miraiseed/fansite/kigyou_collabo/assets/img/bg_class-flow_bottom_cat03.svg);
}

/* 教科ブロックのリード内に置く注記（富士通 0827: 「※「総合」用教材から一部抜粋して…」）。
   lead の <span> をブロック化して一段下げる。 */
.article .subject-block__lead span {
  display: block;
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  font-weight: 400;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  line-height: 1.5;
}

/* 監修ボックス下のボタン（富士通 0827）。旧デザインの padding-top 3vw に対し、
   新テンプレでは 2vw 相当（1440基準で 29px）にすると見た目が揃う、との先方指示。
   v1 に効かないよう body:has(.subject-box--v2) でスコープ（2026-09-02） */
body:has(.subject-box--v2) .supervisor .supervisor-box__inner:has(.supervisor-box__bottom) .supervisor-box__bottom {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 29, var(--max) * 29);
}
@media (max-width: 768px) {
  body:has(.subject-box--v2) .supervisor .supervisor-box__inner:has(.supervisor-box__bottom) .supervisor-box__bottom {
    padding-top: clamp(0px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  }
}

/* 授業の流れの各ステップ手前に置く注記（富士通 0827: 「※1時間目用のスライド17～25を…」） */
/* 左端は .flow-step__image の左辺に合わせる
   （.flow-step__content の 380px ＋ .flow-step__main の gap 48px = 428px） */
.article .flow-step__lead-note {
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12) clamp(0px, 10vw / var(--board) * 10 * 428, var(--max) * 428);
  color: #db1729;
  font-weight: 700;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  line-height: 1.5;
}
@media (max-width: 768px) {
  .article .flow-step__lead-note {
    margin-left: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  }
}

/* ---------------------------------------------------------------------------
   事後学習（任意）のシンプル構成（富士通 0827）
   「任意」バッジ＋本文見出し＋「この時間のねらい」＋右にカード画像。
   カードサンプル枠・授業の流れは持たない。
   --------------------------------------------------------------------------- */
/* renewal-style.css の
   `.article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title`（32px）と
   renewal-add.css の `body:has(.subject-box--v2) …`（0,4,0）に勝てる詳細度で指定する */
.article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title--text,
body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title--text {
  font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
  line-height: 1.5;
}
.article .flow-objectives--with-image .flow-objectives__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.article .flow-objectives--with-image .flow-objectives__list {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}
.article .flow-objectives--with-image .flow-objectives__image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(0px, 10vw / var(--board) * 10 * 484, var(--max) * 484);
          flex: 0 0 clamp(0px, 10vw / var(--board) * 10 * 484, var(--max) * 484);
  margin: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 484, var(--max) * 484);
  border: 1px solid #d9d9d9;
  border-radius: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  overflow: hidden;
}
.article .flow-objectives--with-image .flow-objectives__image img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .article .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title--text,
  body:has(.subject-box--v2) .class-flow--renewal .flow-item-heading--followup .flow-item-heading__title--text {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .article .flow-objectives--with-image .flow-objectives__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .article .flow-objectives--with-image .flow-objectives__image {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    width: 100%;
  }
}
/* 旧デザイン style.css の併読対策その2（2026-08-31）
   style.css の `.main-container { overflow: hidden }` が祖先スクロールコンテナを作り、
   「授業の内容」左の気球（.class-flow-sticky / position: sticky）が追従しなくなるため clip に置換。
   clip はスクロールコンテナを作らないので sticky が生きる。v2 ページのみに適用 */
body:has(.subject-box--v2) .main-container {
  overflow: clip;
}

/* 旧デザイン style.css の併読対策その3（2026-09-02 / 先方FB対応）
   症状1・2: ダウンロードボタンのホバーに transition が効かない
   style.css の `a:not(.more-button):not(.notification-button):not(.download-button):not(.link-button):not(.button.faq-button):not(.button.button-accordion)`
   （詳細度 0,8,1）が renewal-style.css の `.subject-box__download`（詳細度 0,1,0）に勝ち、
   実際の transition が `opacity 0.3s` になってしまっていた。style.css より後に読み込まれる
   renewal-add.css 側で、style.css と同点以上の詳細度（0,9,1）になるセレクタに書き直して
   本来の transition を取り戻す（値は renewal-style.css の .subject-box__download が持つものと同一）。

   症状3・5: 矢印アイコン（.return-button::before / .button.link-button::after 系）が極小
   renewal-style.css が rem 指定（0.85rem・0.2rem）のまま残っており、html の font-size が
   clamp(1.5625%, 0.0694444vw, 6.25%) に変更されたことで 1rem ≒ 1px に潰れていた。
   旧デザインは html { font-size: 62.5% }（1rem = 10px）前提だったため、本来の意図である
   8.5px 角・枠線 2px を、このプロジェクトの clamp 記法で書き直す。
   ここは renewal-style.css 自身の指定を、body:has() 分の追加詳細度で上書きするだけなので
   style.css との点数勝負は発生しない。SP（max-width:768px）側は renewal-style.css に
   既に vw 指定があるため触らない。 */
body:has(.subject-box--v2) a.subject-box__download:not(.more-button):not(.notification-button):not(.download-button):not(.link-button):not(.button.faq-button):not(.button.button-accordion) {
  -webkit-transition: 0.3s background-color, 0.3s color, 0.3s -webkit-transform, 0.3s -webkit-box-shadow;
  transition: transform 0.3s, box-shadow 0.3s, background-color 0.3s, color 0.3s, -webkit-transform 0.3s, -webkit-box-shadow 0.3s;
}

body:has(.subject-box--v2) .button.link-button.return-button::before,
body:has(.subject-box--v2) .button.return-button.faq-button::before,
body:has(.subject-box--v2) .button.return-button.button-accordion::before {
  width: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  height: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  border-top-width: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  border-right-width: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
}

/* 「＞」矢印（link-button--yellow の ::after 含む汎用 .button.link-button::after）
   width/height は直したが枠線幅の上書きが漏れており、border-top/border-right が
   rem 指定のまま 1px に潰れていた（公開中ページの実測値は 2px）。border-color/style は
   renewal-style.css の指定のまま触らない */
body:has(.subject-box--v2) .button.link-button::after,
body:has(.subject-box--v2) .button.faq-button::after,
body:has(.subject-box--v2) .button.button-accordion::after {
  width: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  height: clamp(0px, 10vw / var(--board) * 10 * 8.5, var(--max) * 8.5);
  border-top-width: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  border-right-width: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
}

/* 症状4: 「授業実践例を見る」ボタンの文字色
   公開中ページの実測値 #5b3d42 に合わせる
   （参照: https://bso.benesse.ne.jp/miraiseed/fansite/kigyou_collabo/case/fujitsu/ ）
   renewal-style.css の `a { color: inherit }`（詳細度 0,0,1）に勝つよう、
   body:has() 分の詳細度（0,1,3）を持たせて上書きする */
body:has(.subject-box--v2) .button.link-button.link-button--yellow {
  color: #5b3d42;
}
/* ホバー時は白（先方指示 2026-09-02） */
@media (hover: hover) {
  body:has(.subject-box--v2) .button.link-button.link-button--yellow:hover {
    color: #fff;
  }
}

/* [_wt-kose(系統B)より統合 2026-09-02] */
/* 教科書対応表の「学期」列は折り返さない（2026-09-02）
   「3学期」が幅の狭い環境で 2 行に割れることがあるため、v2 ページの
   .subject-table__term を nowrap で固定する。表は .subject-table-scroll
   （overflow-x: auto）の中にあるので、はみ出してもページ全体は横スクロールしない */
body:has(.subject-box--v2) .subject-table .subject-table__term {
  white-space: nowrap;
}

/* 本番の共通ヘッダー・フッターが style.css を後読みする件の暫定対処（詳細度 +1、v2 スコープ内） */
.subject-box--v2 .subject-box__share-button.copy-button {
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  gap: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}

.article .class-flow.class-flow--with-try-more::after {
  content: none;
}

.article .class-flow.class-flow--with-try-more .section-inner {
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
}
@media (max-width: 768px) {
  .article .class-flow.class-flow--with-try-more .section-inner {
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 62, var(--max) * 62);
  }
}

.article .article-header.article-header--renewal {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.article .article-header.article-header--renewal .title-box {
  width: clamp(0px, 10vw / var(--board) * 10 * 576, var(--max) * 576);
}
@media (max-width: 768px) {
  .article .article-header.article-header--renewal .title-box {
    width: 100%;
  }
}
