@charset "UTF-8";

/* パターンBのスタイルはすべて body.ab-top_renewal-b スコープで定義すること */

body.ab-top_renewal-b {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .index {
  width: 100%;
  max-width: 100%;
  align-self: stretch;
  box-sizing: border-box;
  text-align: center;
}

/* hero */
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero {
  position: relative;
  z-index: 2;
  width: 100%;
  aspect-ratio: 750 / 1156;
  overflow: hidden;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__bg picture,
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__bg img {
  display: block;
  width: 100%;
  height: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__bg picture {
  position: absolute;
  inset: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__bg img {
  object-fit: cover;
  object-position: center top;
}

@keyframes hero-title-soft-in {
  from {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero .hero__title {
  position: absolute;
  top: -9px;
  left: clamp(16px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
  z-index: 2;
  width: clamp(280px, calc(328 / 375 * 100vw), calc(328 * 550px / 375));
  max-width: min(calc(100% - clamp(16px, calc(22 / 375 * 100vw), calc(22 * 550px / 375))), calc(328 * 550px / 375));
  height: auto;
  display: block;
  pointer-events: none;
  object-fit: contain;
  object-position: left top;
  opacity: 0;
  animation: hero-title-soft-in 0.85s ease-out 0.15s forwards;
}

@media (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero .hero__title {
    top: calc(clamp(-9px, calc(20 / 375 * 100vw), calc(20 * 550px / 375)) - 43px);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero .hero__title {
    animation: none;
    opacity: 1;
    transform: none;
  }
}

/* PC用コンテンツブロック（SP非表示） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__pc-content {
  display: none;
}

@media (min-width: 768px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero {
    aspect-ratio: unset;
    height: calc(100vh - 250px);
    min-height: 500px;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero .hero__title {
    display: none;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__pc-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    left: 10vw;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__title--pc {
    display: block;
    width: clamp(287px, calc(574 / 1440 * 100vw), 574px);
    height: auto;
    pointer-events: none;
  }
}

/* FV CTA 共通 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta {
  position: absolute;
  z-index: 3;
  text-decoration: none;
}

/* FV CTA SP（円形SVGボタン） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--sp {
  right: clamp(10px, calc(12 / 375 * 100vw), calc(12 * 550px / 375));
  bottom: clamp(12px, calc(16 / 375 * 100vw), calc(16 * 550px / 375));
  width: clamp(106px, calc(126 / 375 * 100vw), calc(126 * 550px / 375));
  height: clamp(106px, calc(126 / 375 * 100vw), calc(126 * 550px / 375));
  display: block;
  overflow: visible;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta-img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta-img--midori {
  display: none;
}

/* FV CTA PC（旧仕様テキストボタン） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--pc {
  display: none;
}

@media (min-width: 768px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--sp {
    display: none;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--pc {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    margin-top: 32px;
    width: fit-content;
    padding-block: clamp(20px, calc(24 / 1440 * 100vw), 20px);
    padding-inline: clamp(20px, calc(80 / 1440 * 100vw), 80px);
    background-color: #fc7f01;
    border-radius: 99px;
    color: #fff;
    font-size: clamp(15px, calc(15 / 1440 * 100vw), 20px);
    font-weight: 700;
    font-family: YakuHanJP, "Noto Sans JP", sans-serif;
    letter-spacing: 0.07em;
    text-align: center;
    white-space: nowrap;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--pc:hover {
    opacity: 0.8;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta--pc::after {
    content: "";
    display: block;
    width: 12px;
    height: 14px;
    background: url("/assets/koukou/20260324/img/fv_cta-arrow.svg") no-repeat center / contain;
    position: absolute;
    right: clamp(20px, calc(20 / 1440 * 100vw), 20px);
    top: 50%;
    transform: translateY(-50%);
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta-group {
    display: inline-flex;
    flex-direction: column;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta-note {
    display: block;
    margin-top: 8px;
    color: #333;
    font-size: 10px;
    line-height: 1;
    text-align: center;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta__badge {
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  background: #ef5400;
  border-radius: 40px;
  padding: 1px 9px 2px;
  white-space: nowrap;
  font-size: clamp(12px, calc(14 / 375 * 100vw), 16px);
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.03em;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta__join {
  font-size: clamp(18px, calc(21 / 375 * 100vw), 24px);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-top: clamp(10px, calc(14 / 375 * 100vw), 16px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta__sub {
  font-size: clamp(10px, calc(11 / 375 * 100vw), 13px);
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.03em;
  line-height: 1.5;
  margin-top: -2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta__arrow {
  display: block;
  margin-top: 1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .hero__cta__arrow img {
  display: block;
  width: clamp(12px, calc(14 / 375 * 100vw), 16px);
  height: auto;
}

/* オンラインライブセクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar {
  position: relative;
  z-index: 1;
  background: linear-gradient(to bottom, #98c1ff, #d7f0ff);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__inner {
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 0 7.5px rgba(0, 0, 0, 0.1);
  /* 既定は 550px まで。768px 未満だけ 340 にすると、724px 等の幅で永遠に狭いままになる */
  width: 100%;
  max-width: 550px;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 70px;
  padding-bottom: 24px;
}
@media screen and (max-width: 549px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__inner {
    max-width: 340px;
    margin-bottom: 40px;
  }
}

/* パターンA（data-ab-variant-id="a"）：closingdate バナー余白調整 */
body.ab-top_renewal-b [data-ab-variant-id="a"] .kv-banner.u-ptlr {
  padding: 35px 22px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__title {
  text-align: center;
  margin-bottom: 18px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__title h2 {
  margin: 0;
  padding-top: 17px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__title img {
  display: block;
  margin: 16px auto 0;
  width: 191px;
  max-width: 100%;
  height: auto;
}
@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__title img {
    width: 308px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__sub {
  font-size: clamp(14px, calc(16 / 375 * 100vw), 18px);
  font-weight: 700;
  margin-top: 7px;
  text-align: center;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__list {
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 550px;
  width: 100%;
  box-sizing: border-box;
  padding-left: 18px;
  padding-right: 18px;
}

/* 仕様B：closingdate バナー（HTML内のstyleをCSSへ移管） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr {
  padding: 40px 20px !important;
  text-align: center;
  box-sizing: border-box;
  width: 100%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr a {
  display: block;
  max-width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr img {
  display: block;
  max-width: 550px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr picture {
  display: block;
  margin: 0 auto;
}

/* 期間外でも表示する代わりに、リンク内の日別カウントダウンは先頭1枚だけに絞る */
/* body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr > a picture:not(:first-of-type) {
  display: none !important;
} */

@media screen and (max-width: 549px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .kv-banner.u-ptlr {
    padding: 40px 20px 20px !important;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__item {
  border-radius: 10px;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__item--today {
  background: #fff3f6;
  border: 1px solid #fee9ee;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__item--soon {
  background: #fff9e9;
  border: 1px solid #faf1da;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__link {
  display: flex;
  align-items: center;
  padding: clamp(14px, calc(16 / 375 * 100vw), 18px);
  text-decoration: none;
  color: inherit;
  gap: clamp(10px, calc(12 / 375 * 100vw), 16px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__badge img {
  width: clamp(48px, calc(56 / 375 * 100vw), 66px);
  height: auto;
  flex-shrink: 0;
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__content {
  flex: 1;
  padding-top: 2px;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__date {
  font-size: clamp(18px, calc(20 / 375 * 100vw), 22px);
  font-weight: 700;
  color: #2b2b2b;
  letter-spacing: 0.01em;
  line-height: 1.8;
  padding-top: 3px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__text {
  font-size: clamp(13px, calc(14 / 375 * 100vw), 16px);
  font-weight: 600;
  color: #2b2b2b;
  line-height: 1.3;
  padding-top: 3px;
  letter-spacing: 0.01em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__arrow {
  flex-shrink: 0;
  transform: translateY(7px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .webinar__arrow img {
  display: block;
  height: clamp(15px, calc(18 / 375 * 100vw), 22px);
  width: auto;
  aspect-ratio: 8 / 14;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-media {
  background: #fff;
  margin: 20px 0px 20px 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-media__text {
  text-align: center;
  margin-top: 8px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-media__text-top {
  font-size: 14px;
  font-weight: 700;
  color: #2b2b2b;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-media__text-bottom {
  font-size: 14px;
  font-weight: 700;
  color: #fd6467;
}

/* 合格実績セクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list {
  display: block !important;
}

/* 直前の webinar カード(340px)と幅を揃える */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .l-k-article__main {
  max-width: 550px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .l-k-article__main > .c-img {
  width: 100%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

@media screen and (max-width: 549px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .l-k-article__main > .c-img {
    width: 337px;
    max-width: 100%;
  }
}

.sect-goukaku-result {
  padding-block: 60px;
}

/* 合格実績メインタイトル（337×114 相当を 375→550 の比率でスケール） */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .l-k-article__main > .c-img:first-of-type img, .sect-goukaku-result__title img {
  display: block;
  margin: -11px auto 0;
  width: clamp(260px, calc(337 / 375 * 100vw), calc(337 * 550px / 375));
  max-width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3, #goukaku-list {
  max-width: 550px;
  width: clamp(278px, calc(325 / 375 * 100vw), calc(325 * 550px / 375));
  margin-top: clamp(30px, calc(37 / 375 * 100vw), calc(37 * 550px / 375));
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university, #goukaku-list .university
 {
  /* include側(goukaku.html)の背景指定を上書き：WebP優先 + PNGフォールバック */
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: 100% auto !important;
  background-image: url(/assets/koukou/20260324/img/goukaku-sokuhou-top3_labe.webp) !important;
  height: 0;
  padding-top: calc(64 / 300 * 100%);
  position: relative;
  width: 100%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}

/* バッジはWebP背景画像に含まれているため、include側の::beforeを非表示 */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university::before, #goukaku-list .university::before {
  content: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university-3, #goukaku-list .university-3 {
  margin-top: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university-4, #goukaku-list .university-4 {
  margin-top: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university > div, #goukaku-list .university > div{
  position: absolute;
  top: 42%;
  left: 23%;
  transform: translateY(-50%);
  z-index: 1;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .name, #goukaku-list .name {
  color: #a11517;
  font-weight: bold;
  font-size: clamp(15px, calc(18 / 375 * 100vw), calc(18 * 550px / 375));
  line-height: 1;
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  letter-spacing: 0.1em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .faculty, #goukaku-list .faculty {
  color: #2f0e09;
  font-weight: bold;
  font-size: clamp(9px, calc(11 / 375 * 100vw), calc(11 * 550px / 375));
}

@media screen and (max-width: 549px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .faculty, #goukaku-list .faculty {
    color: #a98080;
  }
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3, #goukaku-list {
  max-width: 550px;
  width: clamp(278px, calc(325 / 375 * 100vw), calc(325 * 550px / 375));
  margin-top: clamp(30px, calc(37 / 375 * 100vw), calc(37 * 550px / 375));
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university, #goukaku-list .university {
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: 100% auto !important;
  background-image: url(/assets/koukou/20260324/img/goukaku-sokuhou-top3_labe.webp) !important;
  height: 0;
  padding-top: calc(64 / 300 * 100%);
  position: relative;
  width: 100%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university::before, #goukaku-list .university::before {
  content: none;
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university-3, #goukaku-list .university-3 {
  margin-top: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university-4, #goukaku-list .university-4 {
  margin-top: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .university > div, #goukaku-list .university > div {
  position: absolute;
  top: 42%;
  left: 23%;
  transform: translateY(-50%);
  z-index: 1;
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .name, #goukaku-list .name {
  color: #a11517;
  font-weight: bold;
  font-size: clamp(15px, calc(18 / 375 * 100vw), calc(18 * 550px / 375));
  line-height: 1;
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  letter-spacing: 0.1em;
}

[data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .faculty, #goukaku-list .faculty {
  color: #2f0e09;
  font-weight: bold;
  font-size: clamp(9px, calc(11 / 375 * 100vw), calc(11 * 550px / 375));
}

@media screen and (max-width: 549px) {
  [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_top3 .faculty, #goukaku-list .faculty {
    color: #a98080;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_prefecture.results-list, #achievement-list {
  max-width: 550px;
width: calc(100% - 70px);
  box-sizing: border-box;
  min-height: 384px;
  margin: 15px auto;
  /* .index の text-align:center を打ち消し、アコーディオン・本文を左基準に */
  text-align: left;
}
@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list #results-list_prefecture.results-lis, #achievement-list #results-list_prefecture.results-lis {
    width: 550px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary + div, #achievement-list summary + div {
  margin-top: 1.2rem;
  margin-bottom: 25px;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list li, #achievement-list li, #achievement-list li {
  display: inline-block;
  font-size: 16px;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list li:not(:last-child):after, #achievement-list li:not(:last-child):after, #achievement-list li:not(:last-child):after {
  display: inline-block;
  content: "/";
  padding: 0 5px;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list p.type, #achievement-list p.type {
  padding-bottom: 0.5rem;
  margin: 1.2rem 0;
  color: #f93667;
  border-bottom: 1px solid;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list ul, #achievement-list ul {
  margin-top: 0;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .end, #achievement-list .end {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .end .text, #achievement-list .end .text {
  color: #f93667;
}
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .end .date, #achievement-list .end .date {
  color: #bbb;
  margin-left: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .l-k-article--goukaku-pt61, #achievement-list .l-k-article--goukaku-pt61 {
  padding-top: 61px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .goukaku-results-header, .sect-goukaku-result .goukaku-results-header {
  width: 305px;
  max-width: 550px;
  margin: 29px auto 0;
  box-sizing: border-box;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .goukaku-results-header, .sect-goukaku-result .goukaku-results-header {
    width: 550px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .goukaku-results-footer, .sect-goukaku-result .goukaku-results-footer {
  width: 305px;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  padding-right: 0;
  text-align: right;
  font-size: 10px;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .goukaku-results-footer, .sect-goukaku-result .goukaku-results-footer {
    width: 550px;
  }
}

/* 推薦入試セクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam {
  background: url(/assets/koukou/20260324/img/recommend__bg.webp) no-repeat center top / cover;
  padding: 53px 0 60px;
  margin-top: 16px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__inner {
  max-width: 550px;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__title {
  text-align: center;
  margin: clamp(4px, calc(5 / 375 * 100vw), calc(5 * 550px / 375)) 0 clamp(36px, calc(46 / 375 * 100vw), calc(46 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__title img {
  display: block;
  width: clamp(250px, calc(279 / 375 * 100vw), calc(279 * 550px / 375));
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

[data-ab-variant-id="b"] .p-exam__title {
  text-align: center;
  margin: clamp(4px, calc(5 / 375 * 100vw), calc(5 * 550px / 375)) 0 clamp(36px, calc(46 / 375 * 100vw), calc(46 * 550px / 375));
}

[data-ab-variant-id="b"] .p-exam__title img {
  display: block;
  width: clamp(250px, calc(279 / 375 * 100vw), calc(279 * 550px / 375));
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__note {
  font-size: 10px;
  color: #333333;
  margin-top: 9px;
  letter-spacing: 0.01em;
  /* transform: translate(7px); */
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note {
  font-size: 10px;
  color: #333333;
  margin-top: 9px;
  letter-spacing: 0.01em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__arrow {
  margin: 37px 0;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__arrow img {
  display: block;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__lead {
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__lead img {
  display: block;
  margin: 0 auto;
  width: min(100%, clamp(250px, calc(313 / 375 * 100vw), 313px));
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__lead img {
    width: min(100%, 440px);
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point {
  margin: 53px auto 0;
  border-radius: 10px;
  background: linear-gradient(90deg, #0b70ff 0%, #2198ec 51.02%, #35bed9 100%);
  text-align: center;
  width: min(100%, clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375)));
  min-height: clamp(112px, calc(112 / 375 * 100vw), calc(112 * 550px / 375));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 18px 20px 22px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point-label {
  margin-bottom: 6px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point-label img {
  height: auto;
  padding-top: 0;
  margin: 0 auto;
  display: block;
  transform: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point-text {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin-left: 0;
  text-align: center;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point-text {
    font-size: 24px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__point-text--ml-1 {
  margin-left: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__tb {
  display: block;
  width: clamp(310px, calc(352 / 375 * 100vw), calc(352 * 550px / 375));
  height: auto;
  max-width: 550px;
  margin: 25px auto;
  border-radius: 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__carousel,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__carouselPC {
  margin-top: 25px;
  max-width: 550px;
  width: 100%;
  margin-inline: auto;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__swiper {
  overflow: hidden !important;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__swiper .swiper-wrapper {
  transition-duration: 0ms;
  transform: translate3d(-1125px, 0px, 0px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__swiper .swiper-pagination {
  position: static !important;
  display: flex !important;
  justify-content: center;
  gap: 8px;
  margin-top: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide {
  box-sizing: border-box;
  overflow: visible;
  display: flex;
  justify-content: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-chart {
  position: relative;
  display: block;
  width: 100%;
  max-width: 550px;
  margin: 0 auto;
  padding: 20px 12px 3px 52px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-chart__img {
  display: block;
  width: clamp(250px, calc(298 / 375 * 100vw), calc(298 * 550px / 375));
  height: auto;
  object-fit: contain;
  margin-inline: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-chart__img--3 {
  transform: translateY(2px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-chart__img--2 {
  transform: translateY(10px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-badge {
  position: absolute;
  top: 2px;
  left: 14px;
  display: block;
  max-width: min(174px, 56vw);
  opacity: 0;
  transform: scale(0.5);
  transform-origin: top left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-badge img {
  display: block;
  width: 100%;
  max-width: 174px;
  height: auto;
}

/* PC: グラフ最大幅に対するバッジ比を SP（174px / 298px）と同じにする → 174×(550/375) */
@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-badge {
    max-width: min(100%, calc(174 * 550px / 375));
  }

  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-badge img {
    max-width: min(100%, calc(174 * 550px / 375));
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__slide-badge--active {
  animation: p-exam-badge-pop 1.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes p-exam-badge-pop {
  from {
    opacity: 0;
    transform: scale(0.5);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__swiper .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #0b1142;
  opacity: 0.4;
  transition: opacity 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__swiper .swiper-pagination-bullet-active {
  background: #0b1142;
  opacity: 1;
  transform: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn--admission {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 300px;
  height: 59px;
  margin: 0 auto;
  background: #ff6a00;
  border-radius: 999px;
  margin-top: 50px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn--admission.p-exam__admission-btn--mt27 {
  margin-top: 27px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn--admission.p-why__appeal-admission-btn--mt-5 {
  margin-top: -5px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn__text {
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.05em;
  display: block;
  width: 100%;
  text-align: center;
  margin-left: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn__icon {
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-btn__icon img {
  display: block;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] img[src*="recommendcta-icon.svg"] {
  width: 14px !important;
  height: 12px !important;
  max-width: 14px;
  max-height: 12px;
  object-fit: contain;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-action__note {
  font-size: 10px;
  color: #2b2b2b;
  text-align: center;
  margin-top: 5px;
  letter-spacing: 0.05em;
}

/* 理由カード */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__cards {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card {
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  max-width: 100%;
  height: clamp(239px, calc(239 / 375 * 100vw), calc(239 * 550px / 375));
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__cards > .p-exam__card:nth-child(2) {
  height: clamp(260px, calc(292 / 375 * 100vw), calc(292 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card--stat {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card--hyotei {
  position: relative;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-text {
  position: relative;
  z-index: 1;
  text-align: center;
  width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__cards > .p-exam__card:nth-child(2) .p-exam__card-text {
  padding-top: 2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-lead {
  font-size: 20px;
  font-weight: 700;
  color: #0b1142;
  letter-spacing: 0.05em;
  line-height: 1.3;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
  white-space: nowrap;
  margin-top: 5px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-about {
  font-size: 25px;
  font-weight: 800;
  color: #0b1142;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-num {
  display: inline-flex;
  align-items: baseline;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-num--pink {
  font-size: 50px;
  font-weight: 700;
  color: #fd6467;
  letter-spacing: 0.05em;
  font-style: normal;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-percent {
  font-size: 32px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-slash {
  font-size: 30px;
  font-weight: 700;
  color: #0b1142;
  line-height: 1;
  align-self: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-denom {
  font-size: 40px;
  font-weight: 700;
  color: #0b1142;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-sub {
  font-size: 23px;
  font-weight: 700;
  color: #0b1142;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin-top: 4px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-sub--pink {
  color: #fd6467;
  font-style: normal;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__card-video {
  position: absolute;
  bottom: clamp(28px, calc(34 / 375 * 100vw), calc(34 * 550px / 375));
  left: 50%;
  transform: translateX(-50%);
  width: clamp(210px, calc(250 / 375 * 100vw), calc(250 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more {
  margin-top: 15px !important;
  width: clamp(317px, calc(317 / 375 * 100vw), calc(317 * 550px / 375));
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail {
  margin-top: 15px !important;
  width: clamp(317px, calc(317 / 375 * 100vw), calc(317 * 550px / 375));
  text-align: left;
  margin-inline: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__label {
  color: #333;

  &.c-expand-detail__label--white {
    background-color: #3c3c3c;
    color: #fff;
  }

  &.c-expand-detail__label--navy {
    background-color: #3c3c3c;
    color: #0b1142;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note {
  &.c-expand-detail__note--navy {
    color: #0b1142;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more--detail-a {
  padding-left: 28px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__note--detail-a {
  transform: translate(2px);
  margin-top: 5px;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more--detail-b {
  padding-left: 7px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more--detail-b .p-exam__label {
  transform: translate(10px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__note--detail-b {
  box-sizing: border-box;
  text-align: left;
  padding-left: 40px;
  padding-top: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note--detail-c {
  /* transform: translate(-10px); */
  margin-top: 7px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail--detail-c.p-why__detail-more {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail--detail-d {
  width: clamp(310px, calc(310 / 375 * 100vw), calc(310 * 550px / 375));
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note--detail-d {
  /* 詳細ラベルと左揃え（translate で余白が付いていたのを解除） */
  transform: none;
  margin-left: 0;
  padding-left: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note--detail-e {
  transform: translate(0);
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail__note--detail-f {
  transform: translate(0);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more input {
  display: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more .c-expand__main {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.3s ease,
    opacity 0.3s ease;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more label {
  width: 67px;
  height: 25px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  background: rgba(189, 189, 189, 0.5);
  font-weight: normal;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more label i {
  display: inline-block;
  position: relative;
  width: 9px;
  height: 9px;
  margin-left: 3px;
  vertical-align: -1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more label i::before,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more label i::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: 0;
  width: 100%;
  height: 1px;
  background: #333;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more label i::after {
  transform: rotate(90deg);
  transition: transform 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more input:checked + label i::after {
  transform: rotate(0deg);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-exam__more input:checked ~ .c-expand__main {
  max-height: 600px;
  opacity: 1;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail input {
  display: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail .c-expand__main {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    max-height 0.3s ease,
    opacity 0.3s ease;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail label {
  width: 67px;
  height: 25px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  background: rgba(189, 189, 189, 0.5) !important;
  font-weight: normal;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail label i {
  display: inline-block;
  position: relative;
  width: 9px;
  height: 9px;
  margin-left: 3px;
  vertical-align: -1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail label i::before,
body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail label i::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail label i::after {
  transform: rotate(90deg);
  transition: transform 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail input:checked + label i::after {
  transform: rotate(0deg);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail input:checked ~ .c-expand__main {
  max-height: 600px;
  opacity: 1;
  text-align: left;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .c-expand-detail--detail-f input:checked ~ .c-expand__main {
    width: min(100%, 440px);
    box-sizing: border-box;
  }
}

/* ３つの理由セクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__head {
  position: relative;
  margin-top: clamp(56px, calc(76 / 375 * 100vw), calc(76 * 550px / 375));
  margin-left: auto;
  margin-right: auto;
  max-width: 495px;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding-left: clamp(0px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
  padding-right: clamp(0px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__head::before {
  content: "";
  position: absolute;
  z-index: 0;
  bottom: -40px;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/assets/koukou/20260324/img/reason__bg.webp) no-repeat center / 100% auto;
  pointer-events: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__head > * {
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__title img {
  display: block;
  margin: 0 auto;
  width: clamp(254px, calc(254 / 375 * 100vw), calc(254 * 550px / 375));
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav {
  margin: clamp(22px, calc(30 / 375 * 100vw), calc(30 * 550px / 375)) auto clamp(44px, calc(60 / 375 * 100vw), calc(60 * 550px / 375));
  width: 100%;
  max-width: 550px;
  box-sizing: border-box;
  /* .index の text-align:center を打ち消し */
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  width: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-item {
  position: relative;
  width: 100%;
  max-width: 550px;
  height: clamp(44px, calc(49 / 375 * 100vw), calc(49 * 550px / 375));
  padding-bottom: clamp(12px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  box-sizing: content-box;
}

/* 理解度にマッチ：動画ありの行だけクリップ */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-item--video {
  overflow: hidden;
}

/* 理解度にマッチ：nav内の動画が背景化しないよう li 内に閉じ込める */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-item--video > video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  z-index: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-link {
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(to right, rgba(11, 17, 66, 0.3) 50%, transparent 50%) repeat-x;
  background-size: 6px 1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-link {
  display: flex;
  align-items: center;
  gap: clamp(14px, calc(20 / 375 * 100vw), calc(20 * 550px / 375));
  background: transparent;
  text-decoration: none;
  color: #0b1142;
  width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-content {
  display: flex;
  align-items: center;
  gap: clamp(11px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  flex: 1;
  margin-left: clamp(12px, calc(18 / 375 * 100vw), calc(18 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(30px, calc(34 / 375 * 100vw), calc(34 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-num img {
  display: block;
  width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-text {
  flex: 1;
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  text-align: left;
  margin: 0 0 0 clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0 0 0 -10px;
  padding: 0;
  transform: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-arrow img {
  display: block;
  width: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-num--s1-ml-9 {
  margin-left: -9px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-arrow--s1-tx-9 {
  transform: none !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-arrow--1,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-arrow--2,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-arrow--3 {
  transform: none !important;
  align-self: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-link--s1-gap13 {
  gap: 13px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-num--s1-ml-9 {
  margin-left: -9px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-arrow--s1-tx-9 {
  transform: none !important;
  align-self: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-link--s1-gap13 {
  gap: 13px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-num--s2-ml-11 {
  margin-left: -10px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-num--s3 {
  margin-left: -10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__nav-link--s2-gap14 {
  gap: 14px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-num--s2-ml-11 {
  margin-left: -10px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-num--s3 {
  margin-left: -10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-link--s2-gap14 {
  gap: 14px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__cards--r {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__cards--s {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg {
  padding:
    clamp(80px, calc(80 / 375 * 100vw), calc(80 * 550px / 375))
    0
    clamp(16px, calc(16 / 375 * 100vw), calc(16 * 550px / 375))
    0;
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  text-align: left;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.1));
  overflow: hidden;
  border-radius: 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--r1 {
  background-image: url(/assets/koukou/20260324/img/reason__bg-curve1.webp);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--r2 {
  background-image: url(/assets/koukou/20260324/img/reason__bg-curve2.webp);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--r3 {
  background-image: url(/assets/koukou/20260324/img/reason__bg-curve3.webp);

}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--r1 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--r2 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--r3 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--s1 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--s2 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-title--s3 {
  font-size: clamp(20px, calc(25 / 375 * 100vw), calc(25 * 550px / 375));
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img-inner {
  display: block;
  margin-top: 26px;
  width: 277px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  border-radius: 10px;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img-inner,
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img-inner-2,
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img-inner-3 {
    width: 100%;
    max-width: 400px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-head-inner--r1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-head-inner--r2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-head-inner--r3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-num--r1 {
  display: block;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-num--r2 {
  display: block;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-num--r3 {
  display: block;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--r1 {
  padding: 30px 0 0;
  position: relative;
  z-index: 0;
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--r2 {
  /* 白背景はカード幅いっぱい（狭い白い柱が下に出ないようにする） */
  background: #fff;
  border-radius: 0 0 10px 10px;
  align-self: stretch;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  padding: 25px clamp(16px, calc(18 / 375 * 100vw), calc(18 * 550px / 375)) 0px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--r3 {
  background: #fff;
  border-radius: 0 0 10px 10px;
  align-self: stretch;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-top: 0;
  padding: clamp(14px, calc(18 / 375 * 100vw), calc(18 * 550px / 375)) clamp(16px, calc(18 / 375 * 100vw), calc(18 * 550px / 375)) 0;
  position: relative;
  z-index: 1;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--s1 {
  padding: 26px 0px 14px;
  border-radius: 0 0 10px 10px;
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  margin: 0 auto;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--s2 {
  padding: 25px 0px 14px;
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  margin: 0 auto 22px;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-body--s3 {
  padding: 22px 0px 14px;
  border-radius: 0 0 10px 10px;
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-body--s1 {
  align-self: stretch;
  padding: 26px clamp(12px, calc(16 / 375 * 100vw), calc(16 * 550px / 375)) 14px;
  border-radius: 0 0 10px 10px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 auto;
  overflow-x: hidden;
  overflow-wrap: break-word;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-body--s2 {
  align-self: stretch;
  padding: 25px clamp(12px, calc(16 / 375 * 100vw), calc(16 * 550px / 375)) 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 auto 22px;
  overflow-x: hidden;
  overflow-wrap: break-word;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-body--s3 {
  align-self: stretch;
  padding: 22px clamp(12px, calc(16 / 375 * 100vw), calc(16 * 550px / 375)) 14px;
  border-radius: 0 0 10px 10px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
  overflow-wrap: break-word;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r1 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  text-align: left;
  overflow-wrap: break-word;
  word-break: break-word;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r1 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r1 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r2 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  text-align: left;
  overflow-wrap: break-word;
  word-break: break-word;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r2 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r2 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r3 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  text-align: left;
  overflow-wrap: break-word;
  word-break: break-word;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r3 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r3 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s1 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: break-word;
  word-break: break-word;
  box-sizing: border-box;
  text-align: center;
  width: fit-content;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s1 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s1 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s2 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: break-word;
  word-break: break-word;
  box-sizing: border-box;
  text-align: center;
  width: fit-content;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s2 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s2 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s3 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: break-word;
  word-break: break-word;
  box-sizing: border-box;
  text-align: center;
  width: fit-content;
  margin: 0 auto 17px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s3 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--s3 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s1 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: anywhere;
  word-break: break-word;
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s1 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s1 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s2 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: anywhere;
  word-break: break-word;
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s2 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s2 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s3 {
  font-size: 14px;
  color: #0b1142;
  font-weight: 600;
  overflow-wrap: anywhere;
  word-break: break-word;
  box-sizing: border-box;
  text-align: left;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 0 17px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s3 strong,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-text--s3 span {
  color: #fd6467;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__detail-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 16px;
  font-size: 13px;
  font-weight: 600;
  color: #5a6a7e;
  background: none;
  border: 1px solid #c0cad6;
  border-radius: 4px;
  padding: 6px 12px;
  cursor: pointer;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__detail {
  margin-top: 12px;
  font-size: 12px;
  color: #5a6a7e;
  line-height: 1.8;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r1 .p-why__detail-more {
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375)) !important;
  max-width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  overflow: hidden;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r2 .p-why__detail-more,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r3 .p-why__detail-more {
  width: 100% !important;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r1 .p-why__detail-more input:checked ~ .c-expand__main {
  overflow: hidden !important;
  width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  max-width: clamp(250px, calc(289 / 375 * 100vw), calc(289 * 550px / 375));
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r2 .p-why__detail-more input:checked ~ .c-expand__main,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r3 .p-why__detail-more input:checked ~ .c-expand__main {
  overflow: hidden !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r1 .p-why__detail-more .c-expand__main p,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r2 .p-why__detail-more .c-expand__main p,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card--r3 .p-why__detail-more .c-expand__main p {
  word-break: break-word;
  overflow-wrap: anywhere;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-text--r2-pad28 {
  padding: 6px 0 0;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new {
  position: relative;
  margin-top: 14px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  background: #2a305c;
  border-radius: 10px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-wrap {
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-wrap > .p-why__new-badge-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 0;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-badge-wrap {
  padding-top: 30px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-badge {
  width: fit-content;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-badge img {
  display: block;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-head {
  padding: 13px 0 22px;
  color: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-sub {
  font-size: 14px;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-title {
  font-size: 25px;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__tst {
  width: clamp(242px, calc(242 / 375 * 100vw), calc(242 * 550px / 375));
  margin: 0 auto;
  border-radius: 36px 36px 0 0;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__tst img {
  display: block;
  width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-support {
  padding: 2cqi 20px 0;
  color: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-support::before {
  content: "";
  display: block;
  width: clamp(240px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: 1px;
  background-image: repeating-linear-gradient(to right, #fff 0, #fff 3px, transparent 3px, transparent 6px);
  margin: 31px auto 34px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-support-text {
  font-size: 16px;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-support-title {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-support-title strong {
  font-size: 25px;
  font-weight: 700;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps {
  list-style: none;
  margin: 18px 0 40px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: relative;
  text-align: left;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps::before {
  content: "";
  position: absolute;
  left: 37px;
  top: 75px;
  bottom: 75px;
  width: 1px;
  background: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.45) 0, rgba(255, 255, 255, 0.45) 1px, transparent 1px, transparent 2px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step {
  display: flex;
  align-items: center;
  width: clamp(292px, calc(292 / 375 * 100vw), calc(292 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step-year {
  flex-shrink: 0;
  width: 75px;
  height: 75px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  position: relative;
  z-index: 1;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--1 .p-why__new-step-year {
  background: #729ae0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--2 .p-why__new-step-year {
  background: #f08e47;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--3 .p-why__new-step-year {
  background: #5bbcb7;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--goal .p-why__new-step-year {
  background: #fd6467;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step-year-haru {
  display: block;
  font-size: 25px;
  text-align: center;
  transform: translateY(-4px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step-body {
  flex: 1;
  height: 75px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 13px 0 59px;
  border-radius: 0 5px 5px 0;
  color: #fff;
  margin-left: -38px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--1 .p-why__new-step-body {
  background: rgba(114, 154, 224, 0.4);
  gap: 1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--2 .p-why__new-step-body {
  background: rgba(240, 142, 71, 0.4);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--3 .p-why__new-step-body {
  background: rgba(91, 188, 183, 0.4);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--goal .p-why__new-step-body {
  background: rgba(253, 100, 103, 0.4);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__goal-cta--mt29 {
  margin-top: 24px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__goal-admission-btn--mt27 {
  margin-top: 32px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step-title {
  font-size: 20px;
  font-weight: 600;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step--goal .p-why__new-step-title {
  font-size: 23px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step-text {
  font-size: 13px;
  font-weight: 500;
  margin-top: 2px;
}

/* 推薦ステップ：スクロールインで学年順に表示 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps.p-why__new-steps--inview .p-why__new-step--1 {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.08s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps.p-why__new-steps--inview .p-why__new-step--2 {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.28s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps.p-why__new-steps--inview .p-why__new-step--3 {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.48s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-steps.p-why__new-steps--inview .p-why__new-step--goal {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.68s;
}

@media (prefers-reduced-motion: reduce) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__new-step {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* スマイルポイント（p-merit） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__inner {
  padding: 0 20px;
  max-width: 550px;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__title--a {
  margin: 0;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__title--a img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item {
  margin: 0;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item--a {
  margin-top: 13px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item > img {
  display: block;
  width: 100%;
  height: auto;
}

/* 2つ目：解説動画プレースホルダー（画像ではなくHTML/CSSの四角） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__video {
  width: 100%;
  aspect-ratio: 16 / 9;
  max-height: 220px;
  background: #c8d4e4;
  border-radius: 8px;
}

/* 一般入試の対策も心配セクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage {
  margin-top: 80px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__kv {
  position: relative;
  text-align: center;
  background: url(/assets/koukou/20260324/img/support__kv.webp) no-repeat center top / cover;
  min-height: 0;
  padding: clamp(48px, calc(67 / 375 * 100vw), calc(67 * 550px / 375)) 16px 0;
  overflow: visible;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__lead {
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  text-align: center;
  white-space: normal;
  z-index: 1;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__lead-main {
  font-size: 25px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__lead-sub {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 25px;
}

/* p-coverage__kv 内キャッチ：デフォルトの figure マージン／枠を消して一枚画像として表示 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__lead figure.is-visible,
[data-ab-variant-id="b"] .p-coverage__lead figure.is-visible {
  margin: 0 auto;
  padding: 0;
  border: 0;
  outline: none;
  display: block;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__kv img.p-coverage__kv-catch {
  display: block;
  width: clamp(260px, calc(260 / 375 * 100vw), calc(259 * 550px / 375));
  height: auto;
  max-width: min(100%, calc(259 * 550px / 375));
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel {
  position: relative;
  z-index: 1;
  background: #ebf5ff;
  /* 外側はフルブリード、中身の横幅は .p-coverage__panel-head（p-why__head と同型） */
  padding: clamp(40px, calc(56 / 375 * 100vw), calc(56 * 550px / 375)) 0 clamp(20px, calc(31 / 375 * 100vw), calc(31 * 550px / 375));
  text-align: center;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 550px;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding-left: clamp(0px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
  padding-right: clamp(0px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head::before {
  content: "";
  position: absolute;
  bottom: -40px;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/assets/koukou/20260324/img/support__bg.webp) no-repeat center / 100% auto;
  mix-blend-mode: screen;
  pointer-events: none;
  z-index: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-heading {
  margin: 0;
  font: inherit;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-heading .p-coverage__panel-title {
  display: block;
  margin: 0 auto;
  width: clamp(280px, calc(280 / 375 * 100vw), calc(280 * 550px / 375));
  max-width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-wrap {
  position: relative;
  margin-top: clamp(22px, calc(30 / 375 * 100vw), calc(30 * 550px / 375));
  padding-top: clamp(18px, calc(26 / 375 * 100vw), calc(26 * 550px / 375));
}

/* p-why__inner と同型（縦並び・中央寄せ）＋このセクション用グラデーション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__cards-wrap {
  background: linear-gradient(rgba(107, 169, 255, 0.15), rgba(92, 113, 197, 0.15));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-wrap .p-coverage__nav-list {
  position: relative;
  z-index: 1;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  width: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__nav-wrap .p-coverage__nav {
  width: 100%;
  max-width: 550px;
  margin: 0 auto;
  margin-bottom: clamp(28px, calc(44 / 375 * 100vw), calc(44 * 550px / 375));
  box-sizing: border-box;
}

/* p-why ナビと同じレイアウト（クラス名は p-coverage のみ） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-item {
  position: relative;
  width: 100%;
  max-width: 550px;
  height: clamp(44px, calc(49 / 375 * 100vw), calc(49 * 550px / 375));
  padding-bottom: clamp(12px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  box-sizing: content-box;
  /* .index の text-align:center を打ち消し */
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(to right, rgba(11, 17, 66, 0.3) 50%, transparent 50%) repeat-x;
  background-size: 6px 1px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-link {
  display: flex;
  align-items: center;
  gap: clamp(14px, calc(20 / 375 * 100vw), calc(20 * 550px / 375));
  background: transparent;
  text-decoration: none;
  color: #0b1142;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-content {
  display: flex;
  align-items: center;
  gap: clamp(11px, calc(15 / 375 * 100vw), calc(15 * 550px / 375));
  flex: 1;
  margin-left: clamp(12px, calc(18 / 375 * 100vw), calc(18 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(30px, calc(34 / 375 * 100vw), calc(34 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-num img {
  display: block;
  width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-text {
  flex: 1;
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  text-align: left;
  margin: 0 0 0 clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0 18px 0 -5px;
  padding: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__panel-head .p-coverage__nav-arrow img {
  display: block;
  width: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  height: auto;
}

/* p-coverageカード */
/* p-why__cards--r と同型（クラス名は p-coverage のみ） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__cards--s {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  align-items: center;
  padding-bottom: 60px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__cards--s > .p-coverage__card {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* p-why__card-bg に相当 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-bg--s1 {
  overflow: hidden;
  border-radius: 10px;
  position: relative;
  background-image: image-set(
    url(/assets/koukou/20260324/img/p-coverage__card-bg--s1.webp) 1x,
    url(/assets/koukou/20260324/img/p-coverage__card-bg--s1@2x.webp) 2x
  );
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  padding-bottom: 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-bg--s2 {
  overflow: hidden;
  border-radius: 10px;
  position: relative;
  background-image: url(/assets/koukou/20260324/img/smile__bg-curve2.webp);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-bg--s3 {
  overflow: hidden;
  border-radius: 10px;
  position: relative;
  background-image: url(/assets/koukou/20260324/img/smile__bg-curve3.webp);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

/* メディアブロック（旧 .p-coverage__card--s* 直下と同じ流れを維持） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s1 {
  /* p-why__inner（p-why__card-img--s1）と同じ考え方：上に余白を作り素材を下げる + 15px 下へ */
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  padding-top: clamp(120px, calc(15px + 150 / 375 * 100vw), 220px);
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img {
    width: 100%;
    max-width: 400px;
  }
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s1 {
    width: 100%;
    max-width: 400px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s1 video {
  display: block;
  border-radius: 16px;
  width: clamp(240px, calc(277 / 375 * 100vw), 277px);
  max-width: 100%;
  height: auto;
  margin-top: -26px;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s1  video {
    width: 100%;
    max-width: 400px;
  }
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img-video--s1-mt21 {
    width: 100%;
    max-width: 400px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img-video-notice {
  font-size: 8px;
  color: #333;
  margin-top: 10px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s2 {
  margin-top: 95px;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

@media screen and (min-width: 440px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s2 {
    margin-top: 115px;
  }
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s2 {
    margin-top: 135px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 {
  margin-top: 95px;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

@media screen and (min-width: 440px) {
    body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 {
        margin-top: 115px;
    }
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 {
    margin-top: 135px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s2 img,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 img {
  display: block;
  margin: 0 auto;
  height: auto;
  width: clamp(240px, calc(277 / 375 * 100vw), 277px);
  max-width: 100%;
  margin-top: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 video {
  display: block;
  margin: 0 auto;
  height: auto;
  width: clamp(240px, calc(277 / 375 * 100vw), 277px);
  max-width: 100%;
  border-radius: 10px;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 video {
    margin-top: 22px;
    width: 100%;
    max-width: 400px;
  }
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s2 img,
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-coverage__card-img--s3 img {
    margin-top: 22px;
    width: 100%;
    max-width: 400px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg-img--s1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 0;
  pointer-events: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg-img--s2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 0;
  pointer-events: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg-img--s3 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 0;
  pointer-events: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--s1 {
  position: relative;
  z-index: 1;
  overflow: hidden;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--s2 {
  position: relative;
  z-index: 1;
  overflow: hidden;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-bg--s3 {
  position: relative;
  z-index: 1;
  overflow: hidden;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s1 {
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s1 img {
  display: block;
  height: auto;
  opacity: 0.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s2 {
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s2 img {
  display: block;
  height: auto;
  opacity: 0.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s3 {
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-label--s3 img {
  display: block;
  height: auto;
  opacity: 0.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s1 {
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  padding-top: 140px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s1 video {
  display: block;
  border-radius: 10px 10px 10px 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img-video--s1-mt21 {
  margin-top: 21px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s2 {
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  margin-top: 106px;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s2 img {
  display: block;
  margin: 0 auto;
  height: auto;
  border-radius: 10px 10px 10px 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s3 {
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  padding-top: 107px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__card-img--s3 img {
  display: block;
  margin: 0 auto;
  height: auto;
  border-radius: 10px 10px 10px 0;
}

/* スマイルポイントセクショ */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit {
  background: linear-gradient(to bottom, #0b70ff, #3dc2ef);
  margin-top: 60px;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__inner {
  width: clamp(310px, calc(347 / 375 * 100vw), calc(347 * 550px / 375));
  margin: 0 auto;
  padding-bottom: 60px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__title--b {
  position: relative;
  left: calc(50% - 50vw);
  width: 100vw;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] img.p-merit__title-bg {
  display: block;
  width: 100%;
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] img.p-merit__title-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: clamp(160px, calc(222 / 375 * 100vw), 325px);
  height: auto;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__title--a img:not(.p-merit__title-bg) {
    max-width: 480px;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item {
  margin-top: 34px;
}

/* .index の text-align:center を打ち消し、バッジ・本文を左基準に（全 SMILE POINT 項目） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item.p-merit__item--a.p-merit__item--b {
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__inner > .p-merit__item:nth-child(2) {
  margin: -30px 0 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* 解説動画：.index の text-align:center を打ち消してバッジ・文言を左基準に */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item:has(.p-merit__card--video) {
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__item.p-merit__item--anki {
  margin-top: 32px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__badge {
  display: inline-flex;
  align-items: center;
  background: #2a305c;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding: 0px 10px;
  height: 32px;
  border-radius: 3px;
  letter-spacing: 0.05em;
  margin-bottom: 3px;
  margin-top: -7px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__text {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.75;
  margin-bottom: 9px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card {
  border-radius: 10px;
  overflow: hidden;
  width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card img {
  display: block;
  width: 100%;
  height: auto;
}

/* 画像（.p-merit__card img）と同様：カード幅100%・縦は素材比率 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card > video {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

/* 解説動画 smailepoint__video.mp4（307×180） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card--video {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card--video video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 307 / 180;
  border-radius: 10px;
  object-fit: cover;
  object-position: center;
}

/* body に ab クラスが無いケースの保険（同じ見え方に揃える） */
[data-ab-variant-id="b"] .p-merit__card {
  border-radius: 10px;
  overflow: hidden;
  width: 100%;
}

[data-ab-variant-id="b"] .p-merit__card > video {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

[data-ab-variant-id="b"] .p-merit__card--video {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
}

[data-ab-variant-id="b"] .p-merit__card--video video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 307 / 180;
  border-radius: 10px;
  object-fit: cover;
  object-position: center;
}

[data-ab-variant-id="b"] .p-merit__item:has(.p-merit__card--video) {
  text-align: left;
}

/* 直感的セクション smailepoint-02.mp4（307×200＝smailepoint-03.webp 画像と同寸） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-merit__card > video[src*="smailepoint-02.mp4"] {
  aspect-ratio: 307 / 200;
}

/* 推薦入試も見据えてセクション */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing {
  background: #fff;
  margin-top: 75px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__inner {
  margin: 0 auto;
}

/* タイトルエリア */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__head {
  position: relative;
  margin-bottom: 40px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card--tablet,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card--course {
padding: 0 20px 2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__title-img {
  display: block;
  width: 100%;
  max-width: 550px;
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__checks {
  position: absolute;
  right: 25px;
  top: 39%;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__check {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__check:not(:last-child) {
  padding-bottom: 13px;
  margin-bottom: 13px;
  background-image: repeating-linear-gradient(to right, rgba(11, 17, 66, 0.3) 0px, rgba(11, 17, 66, 0.3) 3px, transparent 3px, transparent 6px);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: bottom;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__check::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  min-width: 20px;
  background: url("/assets/koukou/20260324/img/feature__check.svg") no-repeat center / contain;
}

/* カード共通 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card {
  background: #e1f0fb;
  border-radius: 10px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  margin: 0 auto 0;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card-title {
  padding-top: 26px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card-title img {
  display: inline-block;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card-img {
  margin: 20px 0 30px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card-img img {
  display: inline-block;
  width: clamp(300px, calc(349 / 375 * 100vw), calc(349 * 550px / 375));
  height: auto;
}

/* プラス */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__plus {
  display: block;
  width: 25px;
  height: 25px;
  margin: 12px auto;
}

/* 追加費用カード（+ 下 20px は .p-pricing__plus の margin-bottom で確保） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__card--course {
  margin-top: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course-head {
  font-size: 20px;
  font-weight: 700;
  color: #0b1142;
  letter-spacing: 0.01em;
  padding-top: 23px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses {
  margin: 12px auto 20px;
  width: 100%;
  line-height: 0;
}

/* p-coverage__lead figure.is-visible と同型：一枚画像として中央に収める */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses > figure,
[data-ab-variant-id="b"] .p-pricing__courses > figure {
  margin: 0 auto;
  padding: 0;
  border: 0;
  outline: none;
  display: block;
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses > figure:first-of-type,
[data-ab-variant-id="b"] .p-pricing__courses > figure:first-of-type {
  line-height: 0;
}

/* 講座バナーは data-show-courses で1枚だけ表示（3枚版・4枚版の切り替え） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="4"] > .p-pricing__courses3,
[data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="4"] > .p-pricing__courses3 {
  display: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="3"] > .p-pricing__courses4,
[data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="3"] > .p-pricing__courses4 {
  display: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses img {
  height: auto;
  width: clamp(250px, calc(296 / 375 * 100vw), calc(296 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses .p-pricing__courses4 {
  margin: clamp(10px, calc(14 / 375 * 100vw), calc(14 * 550px / 375)) 0 0;
  padding: 0;
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  line-height: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="4"] .p-pricing__courses4 {
  margin-top: 0;
}

/* p-coverage__kv-catch と同パターン（375→550 の clamp、上段講座バナーと同じ 296 系） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__courses img.p-pricing__courses4-img,
[data-ab-variant-id="b"] .p-pricing__courses img.p-pricing__courses4-img {
  display: block;
  width: clamp(250px, calc(296 / 375 * 100vw), calc(296 * 550px / 375));
  height: auto;
  max-width: min(100%, calc(296 * 550px / 375));
  margin: 0 auto;
  box-sizing: border-box;
}

[data-ab-variant-id="b"] .p-pricing__courses .p-pricing__courses4 {
  margin: clamp(10px, calc(14 / 375 * 100vw), calc(14 * 550px / 375)) 0 0;
  padding: 0;
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  line-height: 0;
}

[data-ab-variant-id="b"] .p-pricing__courses[data-show-courses="4"] .p-pricing__courses4 {
  margin-top: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course {
  background: #fff;
  border-radius: 10px;
  width: 134px;
  padding: 12px 8px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course-name {
  font-size: 14px;
  font-weight: 700;
  color: #0b1142;
  margin-bottom: 15px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course-name span {
  display: block;
  font-size: 20px;
  font-weight: 700;
  background: linear-gradient(to right, #0b70ff, #35bed9);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.4;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course-line {
  height: 1px;
  background: linear-gradient(to right, #0b70ff, #35bed9);
  margin-bottom: 15px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__course-list {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  color: #0b1142;
  line-height: 1.5;
  letter-spacing: 0.03em;
}

/* 月額価格 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price {
  text-align: center;
  padding: clamp(32px, calc(40 / 375 * 100vw), calc(40 * 550px / 375)) 0 clamp(20px, calc(24 / 375 * 100vw), calc(24 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-block {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-row {
  display: flex;
  align-items: baseline;
  gap: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
  margin-bottom: clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
}

/* SP（375）基準をやや大きめにし、550px カラムまで比率でスケール */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b1142;
  color: #fff;
  font-size: clamp(16px, calc(17 / 375 * 100vw), calc(19 * 550px / 375));
  font-weight: 700;
  width: clamp(50px, calc(60 / 375 * 100vw), calc(60 * 550px / 375));
  height: clamp(27px, calc(32 / 375 * 100vw), calc(32 * 550px / 375));
  border-radius: 40px;
  flex-shrink: 0;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-num {
  font-size: clamp(52px, calc(65 / 375 * 100vw), calc(68 * 550px / 375));
  font-weight: 900;
  color: #0b1142;
  line-height: 1;
  letter-spacing: -0.02em;
  margin: 0;
  margin-top: clamp(5px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-unit {
  font-size: clamp(22px, calc(26 / 375 * 100vw), calc(29 * 550px / 375));
  font-weight: 900;
  letter-spacing: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__price-tax {
  font-size: clamp(13px, calc(15 / 375 * 100vw), calc(17 * 550px / 375));
  font-weight: 500;
  color: #2a305c;
  letter-spacing: 0.05em;
  width: 100%;
  text-align: right;
  margin: 0;
  transform: translate(clamp(4px, calc(8 / 375 * 100vw), calc(8 * 550px / 375)), 0);
}

[data-ab-variant-id="b"] .p-pricing__price {
  text-align: center;
  padding: clamp(32px, calc(40 / 375 * 100vw), calc(40 * 550px / 375)) 0 clamp(20px, calc(24 / 375 * 100vw), calc(24 * 550px / 375));
}

[data-ab-variant-id="b"] .p-pricing__price-block {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  max-width: 100%;
  box-sizing: border-box;
}

[data-ab-variant-id="b"] .p-pricing__price-row {
  display: flex;
  align-items: baseline;
  gap: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
  margin-bottom: clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
}

[data-ab-variant-id="b"] .p-pricing__price-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b1142;
  color: #fff;
  font-size: clamp(16px, calc(19 / 375 * 100vw), calc(19 * 550px / 375));
  font-weight: 700;
  width: clamp(50px, calc(60 / 375 * 100vw), calc(60 * 550px / 375));
  height: clamp(27px, calc(32 / 375 * 100vw), calc(32 * 550px / 375));
  border-radius: 40px;
  flex-shrink: 0;
  line-height: 1;
}

[data-ab-variant-id="b"] .p-pricing__price-num {
  font-size: clamp(52px, calc(68 / 375 * 100vw), calc(68 * 550px / 375));
  font-weight: 900;
  color: #0b1142;
  line-height: 1;
  letter-spacing: -0.02em;
  margin: 0;
  margin-top: clamp(5px, calc(8 / 375 * 100vw), calc(8 * 550px / 375));
  white-space: nowrap;
}

[data-ab-variant-id="b"] .p-pricing__price-unit {
  font-size: clamp(22px, calc(29 / 375 * 100vw), calc(29 * 550px / 375));
  font-weight: 900;
  letter-spacing: 0;
}

[data-ab-variant-id="b"] .p-pricing__price-tax {
  font-size: clamp(13px, calc(17 / 375 * 100vw), calc(17 * 550px / 375));
  font-weight: 500;
  color: #2a305c;
  letter-spacing: 0.05em;
  width: 100%;
  text-align: right;
  margin: 0;
  transform: translate(clamp(4px, calc(8 / 375 * 100vw), calc(8 * 550px / 375)), 0);
}

/* 塾・予備校比較カード */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare {
  background: linear-gradient(to bottom, #134fc7 1.7%, #d4f8ff 101.6%);
  border-radius: 10px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  margin: 0 auto;
  padding: 40px 0 40px;
  position: relative;
  overflow: hidden;
  margin: 11px auto 0;
}

/* feature__bg オーバーレイ */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-bg {
  position: absolute;
  top: 11px;
  left: 0;
  width: 100%;
  height: 125px;
  overflow: hidden;
  opacity: 0.7;
  pointer-events: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-head {
  position: relative;
  text-align: center;
  padding: 0 18px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
  letter-spacing: 0.055em;
  margin-bottom: 4px;
  white-space: normal;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title span {
  font-size: 28px;
  position: relative;
}

/* お得! 上の丸 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title span::before,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title span::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #fff;
  top: -3px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title span::before {
  left: 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-title span::after {
  left: 42px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__compare-desc {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.05em;
  padding-top: 10px;
  margin: 0;
  transform: none;
  overflow-wrap: anywhere;
  word-break: break-word;
  text-align: left;
}

/* シミュレーションカード */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__sim-card {
  background: #fff;
  border-radius: 10px;
  width: clamp(310px, calc(310 / 375 * 100vw), calc(310 * 550px / 375));
  margin: 43px auto 20px;
  padding: 27px 0 31px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__sim-label {
  font-size: 14px;
  font-weight: 700;
  color: #0b1142;
  margin-bottom: 12px;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__sim-img img {
  display: inline-block;
  max-width: 100%;
  margin-top: 12px;
  width: clamp(250px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__sim-video {
  display: block;
  max-width: 100%;
  margin: 12px auto 0;
  width: clamp(250px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: auto;
  aspect-ratio: 300 / 208;
  object-fit: contain;
}

/* 注釈 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__notes {
  padding: 0 30px;
  margin-bottom: 30px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__notes p {
  font-size: 10px;
  font-weight: 400;
  color: #2b2b2b;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-wrap {
  --p-pricing-cta-w: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  margin-top: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-wrap .c-action {
  width: var(--p-pricing-cta-w);
  max-width: 100%;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-wrap .c-btn.c-btn--admission {
  width: 100%;
  max-width: none;
  margin-top: 44px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-wrap .p-pricing__cta-doc {
  width: var(--p-pricing-cta-w);
  max-width: 100%;
  box-sizing: border-box;
}

/* CTA（お試し・資料ご請求） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__inner > .c-action {
  margin: 0 auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-sim,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-doc {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 auto;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.08em;
  text-decoration: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-sim {
  background: #2a305c;
  width: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: 59px;
  font-size: 15px;
  position: relative;
  margin-top: 25px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-doc {
  background: #22c55e;
  width: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: 59px;
  font-size: 15px;
  position: relative;
  margin-top: 25px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-pricing__cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 16px;
  top: 50%;
  translate: 0 -50%;
}

/* 受講生の声セクション（p-review） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review {
  background: linear-gradient(#ffdede, #fff6f6);
  margin-top: 60px;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
  overflow: visible;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__head {
  position: relative;
  z-index: 1;
  width: 100%;
  align-self: stretch;
  text-align: center;
  overflow: visible;
  /* ::before の高さがタイトル行だけだと voice__bg が下で切れるため、装飾の余白を確保 */
  padding-bottom: clamp(36px, calc(48 / 375 * 100vw), calc(48 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__head-inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 550px;
  margin: 0 auto;
  padding: 0 clamp(16px, calc(40 / 375 * 100vw), calc(40 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__head::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  z-index: 0;
  width: 100%;
  /* 550カラム＋左右パディング相当まで広げ、背景の左右が切れにくくする */
  max-width: min(100%, calc(550px + 2 * (40 * 550px / 375)));
  height: auto;
  transform: translateX(-50%);
  margin-left: 0;
  background: url("/assets/koukou/20260324/img/voice__bg.png") center top / 100% auto no-repeat;
  pointer-events: none;
}

@media (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__head::before {
    width: 100vw;
    max-width: none;
    background-image: url("/assets/koukou/20260324/img/voice__bg-wide.webp");
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__title-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  /* セクション上寄せ（以前 50px） */
  padding-top: clamp(18px, calc(64 / 375 * 100vw), calc(64 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__inner {
  box-sizing: border-box;
  position: relative;
  z-index: 0;
  width: 100%;
  max-width: 550px;
  padding: 0px 17px 0;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card {
  position: relative;
  background: #fff;
  border-radius: 5px;
  max-width: 100%;
  margin: 0 auto 40px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-photo-wrap {
  position: absolute;
  top: -20px;
  left: 10px;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-photo {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border: 2px solid #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-photo--square {
  border-radius: 5px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-photo--circle {
  border-radius: 50%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-band {
  min-height: 80px;
  padding: 12px 14px 12px 35.2941176%;
  border-radius: 5px 5px 0 0;
  display: flex;
  align-items: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-band--pink {
  background: #fd6467;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-band--purple {
  background: #4a559e;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-univ-name {
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.3;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-univ-dept {
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.05em;
  margin-top: 2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-body {
  padding: 20px 20px 30px;
  letter-spacing: 0.01em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-text {
  font-size: 14px;
  text-align: left;
  font-weight: 500;
  color: #2b2b2b;
  margin-bottom: 18px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__em {
  font-weight: 700;
  color: #fd6467;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: clamp(270px, calc(270 / 375 * 100vw), calc(270 * 550px / 375));
  max-width: 100%;
  min-height: 51px;
  padding: 0 40px;
  background: #2a305c;
  border-radius: 999px;
  margin: 0 auto;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  white-space: nowrap;
  text-decoration: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__cta-icon {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__senpai-head {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 90.6666667%;
  max-width: 100%;
  height: 15px;
  margin: 0 auto 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__senpai-line {
  flex: 1;
  height: 1px;
  background: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__senpai-title {
  font-size: 20px;
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-heading {
  font-size: 16px;
  font-weight: 700;
  color: #2b2b2b;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__divider {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin-bottom: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card-text--review {
  font-size: 13px;
  margin-bottom: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__card--review {
  margin-bottom: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__carousel {
  overflow-x: hidden;
  overflow-y: visible;
  width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__swiper {
  position: relative;
  overflow: visible;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__swiper .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
}

/* スワイパー外に置き、カルーセル→ページネーション→※詳細の順で並べる */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__carousel .p-review__pagination {
  position: static !important;
  margin-top: 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 8px 0 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #0b1142;
  opacity: 0.4;
  transition: opacity 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__pagination .swiper-pagination-bullet-active {
  background: #0b1142;
  opacity: 1;
  transform: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__notes-wrap {
  padding: 0 20px 60px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review .c-expand-detail {
  margin-top: 0 !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__notes-toggle {
  display: inline-flex;
  align-items: center;
  background: rgba(189, 189, 189, 0.5);
  border: none;
  border-radius: 4px;
  padding: 4px 10px;
  font-size: 12px;
  color: #2b2b2b;
  cursor: pointer;
  margin-bottom: 8px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-review__notes p {
  font-size: 10px;
  color: #2b2b2b;
}

/* お試し申し込みセクション（p-apply） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply {
  background: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__inner {
  max-width: 550px;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__box {
  border: 1px solid #22c55e;
  border-radius: 10px;
  overflow: hidden;
  width: clamp(320px, calc(320 / 375 * 100vw), calc(320 * 550px / 375));
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__header {
  background: #22c55e;
  text-align: center;
  padding: 16px 20px 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__catch {
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  margin-bottom: 6px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__title-line {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__title-main {
  font-size: 35px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__title-kw {
  font-size: 18px;
  font-weight: 700;
  color: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__carousel {
  overflow-x: hidden;
  overflow-y: visible;
  width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__swiper {
  overflow: visible;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__swiper .swiper-slide {
  display: flex;
  justify-content: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__swiper .swiper-slide img {
  display: block;
  max-width: 500px;
  height: auto;
  margin-top: 56px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__swiper .swiper-pagination {
  position: static;
  margin-top: 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__carousel-track {
  display: flex;
  transition: transform 0.4s ease;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__slide {
  flex-shrink: 0;
  width: 100%;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__card {
  background: #e7fff0;
  width: 100%;
  padding: 20px 16px 12px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__card img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__copy {
  font-size: 10px;
  color: #2b2b2b;
  text-align: center;
  margin-top: 8px;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__chevron {
  text-align: center;
  font-size: 14px;
  color: #555;
  margin: 6px 0 12px;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__info {
  background: #fff;
  width: 100%;
  padding: 12px 16px 20px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__info-sub {
  font-size: 14px;
  font-weight: 700;
  color: #22c55e;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__info-name {
  font-size: 16px;
  font-weight: 500;
  color: #2b2b2b;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__info-title {
  font-size: 24px;
  font-weight: 900;
  color: #2b2b2b;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 8px 0 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #0b1142;
  opacity: 0.4;
  transition: opacity 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__pagination .swiper-pagination-bullet-active {
  background: #0b1142;
  opacity: 1;
  transform: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes-wrap {
  padding: 0 29px 24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes-wrap .cnt-suisen_note_request.c-expand-detail {
  margin-top: 1px !important;
  position: relative;
  top: -2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes-wrap .cnt-suisen_note_request .c-expand-detail__note--detail-f {
  transform: translate(5px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes-wrap .cnt-suisen_note_request.c-expand-detail + a.p-pricing__cta-doc {
  margin-top: 39px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes-toggle {
  display: inline-flex;
  align-items: center;
  background: rgba(189, 189, 189, 0.5);
  border: none;
  border-radius: 3px;
  padding: 4px 10px;
  font-size: 12px;
  color: #2b2b2b;
  cursor: pointer;
  margin-bottom: 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__notes p {
  font-size: 10px;
  color: #2b2b2b;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade {
  padding: 32px 0 40px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 23px;
  width: clamp(260px, calc(295 / 375 * 100vw), calc(295 * 550px / 375));
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-line {
  flex: 1;
  height: 1px;
  background: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-title {
  font-size: 16px;
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-btns {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: clamp(270px, calc(270 / 375 * 100vw), calc(270 * 550px / 375));
  height: 46px;
  border-radius: 999px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-btn--1 {
  background: #729ae0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-btn--2 {
  background: #f08e47;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-btn--3 {
  background: #5bbcb7;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-apply__grade-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

/* スマイルゼミはあらゆる入試の可能性に対応 */
.p-why__appeal {
  margin-top: 60px;
}

.p-why__appeal-inner {
  text-align: center;
  margin-bottom: 24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-why__appeal-title img {
  display: block;
  margin: 0 auto;
  height: auto;
  max-width: 550px;
  width: 100%;
  box-sizing: border-box;
}

/* お試しオファーセクション（p-trial） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial {
  background: #fff2eb;
  margin-top: 72px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__inner {
  max-width: 550px;
  margin: 0 auto;
}

/* 上部 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__upper {
  background: #ffe4d7;
  background-color: #ffe4d7;
  padding-top: 68px;
  padding-bottom: 32px;
  position: relative;
  text-align: center;
  overflow: visible;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__patent {
  display: flex;
  justify-content: center;
  margin-top: -101px;
  position: relative;
  z-index: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__heading {
  font-weight: 700;
  text-align: center;
  padding: 14px 0 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__heading-free {
  font-size: 30px;
  color: #fd6467;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__heading-dark {
  font-size: 20px;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__heading-zemi {
  font-size: 30px;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__heading-em {
  font-size: 20px;
  color: #fd6467;
}

/* 人物+締め切り */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__person-area {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__person-img {
  position: relative;
  display: block;
  width: 100%;
  max-width: 550px;
  height: auto;
  aspect-ratio: 375 / 294;
  object-fit: contain;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline {
  position: absolute;
  right: clamp(18px, calc(23 / 375 * 100vw), calc(23 * 550px / 375));
  top: clamp(56px, calc(67 / 375 * 100vw), calc(67 * 550px / 375));
  z-index: 1;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-top {
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
  margin-bottom: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-top-no {
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-big {
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-label {
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
  margin-bottom: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-date {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-m {
  font-size: clamp(32px, calc(38 / 375 * 100vw), calc(38 * 550px / 375));
  font-weight: 900;
  color: #fd6467;
  line-height: 1;
  letter-spacing: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-slash {
  font-size: clamp(20px, calc(24 / 375 * 100vw), calc(24 * 550px / 375));
  font-weight: 700;
  color: #fd6467;
  line-height: 1;
  padding: 0 clamp(0px, calc(1 / 375 * 100vw), calc(1 * 550px / 375)) clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
  align-self: flex-end;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-d {
  font-size: clamp(48px, calc(58 / 375 * 100vw), calc(58 * 550px / 375));
  font-weight: 700;
  color: #fd6467;
  line-height: 1;
  letter-spacing: -0.02em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-week {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  align-self: flex-end;
  flex-shrink: 0;
  margin-left: clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
  margin-bottom: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
  gap: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(24px, calc(28 / 375 * 100vw), calc(28 * 550px / 375));
  height: clamp(24px, calc(28 / 375 * 100vw), calc(28 * 550px / 375));
  border-radius: 50%;
  background: #fd6467;
  color: #fff;
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  font-weight: 700;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__deadline-made {
  font-size: clamp(11px, calc(13 / 375 * 100vw), calc(13 * 550px / 375));
  font-weight: 900;
  color: #fd6467;
  margin-top: 0;
  line-height: 1;
  letter-spacing: 0.05em;
}

[data-ab-variant-id="b"] .p-trial__deadline {
  position: absolute;
  right: clamp(18px, calc(23 / 375 * 100vw), calc(23 * 550px / 375));
  top: clamp(56px, calc(67 / 375 * 100vw), calc(67 * 550px / 375));
  z-index: 1;
  text-align: center;
}

[data-ab-variant-id="b"] .p-trial__deadline-top {
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
  margin-bottom: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

[data-ab-variant-id="b"] .p-trial__deadline-top-no {
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
}

[data-ab-variant-id="b"] .p-trial__deadline-big {
  font-size: clamp(18px, calc(22 / 375 * 100vw), calc(22 * 550px / 375));
}

[data-ab-variant-id="b"] .p-trial__deadline-label {
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  font-weight: 700;
  color: #0b1142;
  white-space: nowrap;
  margin-bottom: clamp(3px, calc(4 / 375 * 100vw), calc(4 * 550px / 375));
}

[data-ab-variant-id="b"] .p-trial__deadline-date {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  line-height: 1;
}

[data-ab-variant-id="b"] .p-trial__deadline-m {
  font-size: clamp(32px, calc(38 / 375 * 100vw), calc(38 * 550px / 375));
  font-weight: 900;
  color: #fd6467;
  line-height: 1;
  letter-spacing: 0;
}

[data-ab-variant-id="b"] .p-trial__deadline-slash {
  font-size: clamp(20px, calc(24 / 375 * 100vw), calc(24 * 550px / 375));
  font-weight: 700;
  color: #fd6467;
  line-height: 1;
  padding: 0 clamp(0px, calc(1 / 375 * 100vw), calc(1 * 550px / 375)) clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
  align-self: flex-end;
}

[data-ab-variant-id="b"] .p-trial__deadline-d {
  font-size: clamp(48px, calc(58 / 375 * 100vw), calc(58 * 550px / 375));
  font-weight: 700;
  color: #fd6467;
  line-height: 1;
  letter-spacing: -0.02em;
}

[data-ab-variant-id="b"] .p-trial__deadline-week {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  align-self: flex-end;
  flex-shrink: 0;
  margin-left: clamp(4px, calc(6 / 375 * 100vw), calc(6 * 550px / 375));
  margin-bottom: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
  gap: clamp(1px, calc(2 / 375 * 100vw), calc(2 * 550px / 375));
}

[data-ab-variant-id="b"] .p-trial__deadline-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(24px, calc(28 / 375 * 100vw), calc(28 * 550px / 375));
  height: clamp(24px, calc(28 / 375 * 100vw), calc(28 * 550px / 375));
  border-radius: 50%;
  background: #fd6467;
  color: #fff;
  font-size: clamp(12px, calc(14 / 375 * 100vw), calc(14 * 550px / 375));
  font-weight: 700;
  line-height: 1;
}

[data-ab-variant-id="b"] .p-trial__deadline-made {
  font-size: clamp(11px, calc(13 / 375 * 100vw), calc(13 * 550px / 375));
  font-weight: 900;
  color: #fd6467;
  margin-top: 0;
  line-height: 1;
  letter-spacing: 0.05em;
}

/* CTA */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(300px, calc(300 / 375 * 100vw), calc(300 * 550px / 375));
  height: 59px;
  background: #ff6a00;
  border-radius: 999px;
  margin: 30px auto 0;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__cta-icon {
  position: absolute;
  right: 23px;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__cta-note {
  font-size: 10px;
  color: #2b2b2b;
  text-align: center;
  margin-top: 6px;
  letter-spacing: 0.03em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__lower {
  background: #fff2eb;
  padding-bottom: 60px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__dispatch {
  font-size: 20px;
  font-weight: 700;
  color: #0b1142;
  padding: 77px 0 21px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__dispatch-em {
  color: #fd6467;
}

/* 全額返金保証 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__guarantee {
  padding: 0 20px 8px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__guarantee-img {
  display: block;
  width: clamp(230px, calc(230 / 375 * 100vw), calc(230 * 550px / 375));
  height: auto;
  margin: 0 auto;
}

/* 矢印 */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__arrow {
  display: block;
  margin: 0 auto;
  margin: 40px auto 16px;
}

/* 2個目の矢印だけ上書き（.p-trial__after の直後） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__after + img.p-trial__arrow {
  margin: 28px auto 21px !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__after-line1 {
  font-size: 20px;
  font-weight: 700;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__after-line2 {
  font-size: 30px;
  font-weight: 700;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__after-em {
  color: #fd6467;
}

/* タブレット */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__tablet-block {
  margin-top: -5px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__tablet-label {
  font-size: 18px;
  font-weight: 700;
  color: #0b1142;
  margin-bottom: 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__tablet-em {
  color: #fd6467;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__tablet-img {
  display: block;
  width: clamp(200px, calc(234 / 375 * 100vw), calc(234 * 550px / 375));
  height: auto;
  margin: 0 auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] img.p-trial__tablet-img[src*="offer__2.webp"] {
  height: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__campaign-sub {
  font-size: 18px;
  font-weight: 700;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__campaign-title {
  font-size: 30px;
  font-weight: 700;
  color: #0b1142;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__campaign-em {
  color: #fd6467;
}

/* バナー */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner {
  display: flex;
  align-items: stretch;
  background: #fff;
  border-radius: 5px;
  width: clamp(340px, calc(340 / 375 * 100vw), calc(340 * 550px / 375));
  margin: 0 auto 24px;
  overflow: hidden;
  min-height: 165px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-left {
  flex: 1;
  padding: 27px 16px 10px 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-tag {
  display: inline-block;
  background: #2a305c;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  border-radius: 20px;
  padding: 4px 12px;
  margin-bottom: 6px;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-desc {
  font-size: 14px;
  font-weight: 700;
  color: #333;
  line-height: 1.34;
  margin-bottom: 8px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-date {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: center;
  gap: 0;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-date-m {
  font-size: 38px;
  font-weight: 900;
  color: #ff6a00;
  line-height: 1;
  letter-spacing: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-date-slash {
  font-size: 24px;
  font-weight: 700;
  color: #ff6a00;
  line-height: 1;
  padding: 0 1px 6px;
  align-self: flex-end;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-date-d {
  font-size: 58px;
  font-weight: 700;
  color: #ff6a00;
  line-height: 1;
  letter-spacing: -0.02em;
  transform: translate(7px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-week {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  align-self: flex-end;
  flex-shrink: 0;
  margin-left: 11px;
  margin-bottom: 11px;
  gap: 2px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ff6a00;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-made {
  font-size: 13px;
  font-weight: 900;
  color: #ff6a00;
  margin-top: 0;
  line-height: 1;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-right {
  width: 165px;
  flex-shrink: 0;
  background: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-trial__banner-pic {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 550px;
}

/* よくあるご質問（p-yokuaru） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru {
  background: #fff;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__sheet {
  margin: 0 auto;
  padding: 44px 0 60px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__h2 {
  font-size: 25px;
  font-weight: 700;
  color: #2b2b2b;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 18px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__entries {
  list-style: none;
  margin: 0 auto;
  max-width: 550px;
  padding: 0;
  border-top: 1px solid #e0e0e0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__row {
  border-bottom: 1px solid #e0e0e0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__ask {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  /* 開いたときは下を詰めて回答エリアに接続（閉じたときは後段で上下均等） */
  padding: 24px 30px 11px 30px;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}

/* 閉じたとき：上下余白を揃えて Q 行を中央寄せ */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__ask[aria-expanded="false"] {
  padding: 24px 30px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__markq {
  font-size: 22px;
  font-weight: 900;
  color: #fd6467;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  line-height: 1.5;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__asktxt {
  flex: 1;
  font-size: 16px;
  font-weight: 700;
  color: #2b2b2b;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__asktxt br {
    display: none;
  }
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__plus {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__plus::before {
  content: "";
  position: absolute;
  background: rgba(43, 43, 43, 0.5);
  border-radius: 1px;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__plus::after {
  content: "";
  position: absolute;
  background: rgba(43, 43, 43, 0.5);
  border-radius: 1px;
  transition:
    transform 0.3s,
    opacity 0.3s;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__plus::before {
  width: 2px;
  height: 14px;
  top: 3px;
  left: 9px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__plus::after {
  width: 14px;
  height: 2px;
  top: 9px;
  left: 3px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__ask[aria-expanded="true"] .p-yokuaru__plus::before {
  transform: rotate(90deg);
  opacity: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__detail {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition:
    max-height 0.3s ease,
    opacity 0.3s ease;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__ask[aria-expanded="true"] + .p-yokuaru__detail {
  max-height: 600px;
  opacity: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__detailin {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 10px;
  padding: 4px 30px 20px 30px;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__marka {
  font-size: 22px;
  font-weight: 900;
  color: #0b70ff;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  line-height: 1;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__ans {
  flex: 1;
  text-align: left;
  min-width: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__body p {
  font-size: 14px;
  font-weight: 400;
  color: #2b2b2b;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin-bottom: 22px;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__entries > .p-yokuaru__row:nth-child(2) .p-yokuaru__body {
  margin-bottom: 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__entries > .p-yokuaru__row:nth-child(2) .p-yokuaru__body p:nth-child(3) {
  margin-bottom: 9px;
}

/* 念のため：3問目（.p-yokuaru__row:nth-child(3)）には margin-bottom:16px を当てない */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__entries > .p-yokuaru__row:nth-child(3) .p-yokuaru__body {
  margin-bottom: 0 !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__entries > .p-yokuaru__row:nth-child(3) .p-yokuaru__body p:nth-child(2) {
  margin-bottom: 0 !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__fine p {
  font-size: 11px;
  font-weight: 400;
  color: #2b2b2b;
  line-height: 1.6;
  text-align: left;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-yokuaru__fine p:last-child {
  margin-bottom: 0;
}

/* お問い合わせセクション（p-reach） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach {
  background: #0b1142;
  padding: 32px 0 40px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__inner {
  max-width: 550px;
  margin: 0 auto;
  padding: 0 18px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__title {
  font-size: 25px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__card:last-child {
  margin-bottom: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__card-head {
  background: #8ea9c2;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  padding: 10px 16px;
  letter-spacing: 0.05em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__card-body {
  padding: 20px 16px 24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__card-body--member {
  text-align: center;
  padding: 24px 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__section-label {
  font-size: 18px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 50px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.08em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__btn--line {
  background: #06c755;
  font-size: 14px;
  width: clamp(260px, calc(260 / 375 * 100vw), calc(260 * 550px / 375));
  height: 60px;
  margin: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__btn--tel {
  background: #2a305c;
  font-size: 16px;
  letter-spacing: 0.1em;
  width: clamp(260px, calc(260 / 375 * 100vw), calc(260 * 550px / 375));
  height: 60px;
  margin: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__btn--member {
  background: #2a305c;
  font-size: 14px;
  width: clamp(260px, calc(260 / 375 * 100vw), calc(260 * 550px / 375));
  height: 60px;
  margin: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__divider {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 20px 0;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__divider::before,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #8ea9c2;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__divider-label {
  background: #8ea9c2;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 14px;
  border-radius: 30px;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__hours {
  font-size: 14px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  margin-top: 20px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__notes {
  width: clamp(260px, calc(260 / 375 * 100vw), calc(260 * 550px / 375));
  margin: 20px auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__notes p {
  font-size: 10px;
  color: #0b1142;
  margin-bottom: 4px;
  letter-spacing: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__notes p:last-child {
  margin-bottom: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach__member-text {
  font-size: 16px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 16px;
}

/* お問い合わせ（index の p-reach-b クラス ↔ 上記 p-reach と同デザイン） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b {
  background: #0b1142;
  padding: 25px 0 40px;
  margin-top: -24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__heading {
  font-size: 25px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 0 0 20px;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 23px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  width: calc(100% - 36px);
  max-width: 550px;
  margin: 22px auto 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card:last-child {
  margin-bottom: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card-label {
  background: #8ea9c2;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  padding: 10px 16px;
  letter-spacing: 0.05em;
  margin: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card-inner {
  padding: 30px 16px 24px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card--member .p-reach-b__card-inner {
  text-align: center;
  padding: 32px 16px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__subtitle {
  font-size: 18px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  letter-spacing: 0.05em;
  margin: 0 0 12px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  max-width: 260px;
  height: 60px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.08em;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  position: relative;
  padding-left: 52px;
  padding-right: 52px;
  text-align: center;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__btn--line {
  background: #06c755;
  font-size: 14px;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__btn--tel {
  background: #2a305c;
  font-size: 16px;
  letter-spacing: 0.1em;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__card--member .p-reach-b__btn--tel {
  background: #2a305c;
  font-size: 14px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__btn-icon img {
  filter: brightness(0) invert(1);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__separator {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 26px 0 20px;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__separator::before,
body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__separator::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #8ea9c2;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__separator span {
  background: #8ea9c2;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 14px;
  border-radius: 30px;
  white-space: nowrap;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__time {
  font-size: 14px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  margin: 4px 0 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__note {
  width: 260px;
  max-width: 100%;
  margin: 11px auto 0;
  font-size: 10px;
  color: #0b1142;
  letter-spacing: 0;
  line-height: 1.5;
  padding-bottom: 13px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .p-reach-b__member-text {
  font-size: 16px;
  font-weight: 700;
  color: #0b1142;
  text-align: center;
  line-height: 1.6;
  margin: 0 0 16px;
}

/* promo-banner（オンラインライブ上・パターンB） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner {
  width: 100%;
  max-width: 550px;
  width: 340px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 25px;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner > picture {
  display: none !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner > picture.in-the-middle {
  display: block !important;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner picture img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 550px;
  height: auto;
  border-radius: 10px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner--deadline {
  width: 100%;
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner--deadline picture {
  display: none !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner--deadline picture.in-the-middle {
  display: block !important;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .promo-banner--deadline img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 550px;
  height: auto;
  border-radius: 10px;
}

/* ============================================
   合格実績 アコーディオン (results-list_prefecture) - パターンB
   ============================================ */

/* これまでの実績 テキストヘッダー */
body.ab-top_renewal-b [data-ab-variant-id="b"] .pass-records-header, #achievement-list .pass-records-header {
  width: 305px;
  max-width: 550px;
  margin: 29px auto 0;
  box-sizing: border-box;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] .pass-records-header__title, #achievement-list .pass-records-header__title {
  font-weight: 600;
  font-size: 15px;
  color: #2b2b2b;
  letter-spacing: 0.05em;
  display: block;
  padding-left: 0;
  /* .index の text-align:center を打ち消し */
  text-align: left;
}

@media screen and (min-width: 550px) {
  body.ab-top_renewal-b [data-ab-variant-id="b"] .pass-records-header, #achievement-list .pass-records-header {
    width: 550px;
  }
}

/* これまでの実績 日付フッター（アコーディオン右下） */
body.ab-top_renewal-b [data-ab-variant-id="b"] .pass-records-footer, #achievement-list .pass-records-footer {
  font-size: 10px;
  color: #2b2b2b;
  opacity: 0.5;
  letter-spacing: 0.05em;
  text-align: right;
  margin-top: 0px;
  margin-right: 18px;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list details + details, #achievement-list details + details {
  margin-top: 0;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary, #achievement-list summary {
  display: block;
  list-style: none;
  padding: 21px 0px 21px 12px;
  background: #edf7ff;
  color: #2b2b2b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.01em;
  border-bottom: 1px solid #bde0f4;
  cursor: pointer;
  position: relative;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary.pass-records-summary--hokkaido-tohoku, #achievement-list summary.pass-records-summary--hokkaido-tohoku,
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary.pass-records-summary--kanto, #achievement-list summary.pass-records-summary--kanto {
  transform: translateY(-6px);
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary::-webkit-details-marker, #achievement-list summary::-webkit-details-marker {
  display: none;
}

body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list details:nth-child(even) summary, #achievement-list details:nth-child(even) summary {
  background: #f5fcff;
}

/* "+" アイコン */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list summary::after, #achievement-list summary::after {
  content: "+";
  position: absolute;
  top: 59%;
  right: 20px;
  transform: translateY(calc(-50% - 3px));
  font-size: 20px;
  font-weight: 500;
  color: #2b2b2b;
  width: auto;
  height: auto;
  border: none;
}

/* 展開時は "−" に変更 */
body.ab-top_renewal-b [data-ab-variant-id="b"] #koukou-goukaku-list .results-list details[open] summary::after, #achievement-list details[open] summary::after {
  content: "−";
  top: 50%;
  transform: translateY(calc(-50% - 3px));
}
