.s5-price-api-status[data-s5-price-api-status="99"] + span {
  display: block;
  font-size: 10px;
  color: red;
}
.c5_acc br.bsp {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .c5_acc br.bsp {
    display: none;
  }
}
.c5_acc br.nbsp {
  display: none;
}
@media screen and (min-width: 768px) {
  .c5_acc br.nbsp {
    display: inline-block;
  }
}
.c5_acc-heading {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.6;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
@media screen and (min-width: 768px) {
  .c5_acc-heading {
    font-size: 27px;
    font-size: 1.6875rem;
  }
}
@media screen and (min-width: 768px) {
  .c5_acc-items {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    border-top: none;
  }
}
.c5_acc-single {
  display: flex;
  flex-direction: column;
  position: relative;
}
@media screen and (min-width: 768px) {
  .c5_acc-single {
    flex-direction: row;
    align-items: flex-start;
    border-bottom: 1px solid #c8c8c8;
    border-top: 1px solid #c8c8c8;
  }
}
.c5_acc-single::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(100% - 12px);
  left: calc(50% - 22px);
  width: 44px;
  height: 44px;
  background: url(../img/arrow.svg) no-repeat center center;
  background-size: contain;
}
@media screen and (min-width: 768px) {
  .c5_acc-single::after {
    content: "";
    position: absolute;
    top: 20px;
    bottom: 20px;
    left: calc(50% - 0.5px);
    width: 1px;
    background: #c8c8c8;
  }
}
.c5_acc-single-item {
  border-bottom: none;
  display: flex;
  flex-direction: column-reverse;
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-item {
    border-bottom: none;
    width: 50%;
    flex: 0 0 auto;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 1200px) {
  .c5_acc-single-item {
    flex-direction: row;
    align-items: center;
    height: 220px;
    width: 50%;
    flex: 0 0 auto;
    padding-bottom: 0;
    padding-left: 50px;
  }
}
.c5_acc-single-item:first-child {
  padding-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-item:first-child {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .c5_acc-single-item:first-child {
    padding-bottom: 0;
    padding-left: 30px;
  }
}
@media screen and (min-width: 768px) {
  .c5_acc-single-item-body {
    padding: 0 30px;
  }
}
@media screen and (min-width: 1200px) {
  .c5_acc-single-item-body {
    flex: 0 0 auto;
    padding: 0;
  }
}
.c5_acc-single-item-img {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-item-img {
    height: 240px;
  }
}
@media screen and (min-width: 1200px) {
  .c5_acc-single-item-img {
    height: auto;
    flex: 1 1 auto;
  }
}
.c5_acc-single-item-img img {
  vertical-align: top;
  height: auto;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-item-img img {
    padding: 0 !important;
    height: auto;
  }
}
.c5_acc-single-item-img .bc-zd1 {
  width: 48%;
  padding: 10px 0;
  max-width: 168px;
}
.c5_acc-single-item-img .np-fz100 {
  width: 40.8571428571%;
  padding: 38px 0;
  max-width: 143px;
}
.c5_acc-single-item-img .bc-qz1 {
  width: 58.2857142857%;
  padding: 10px 0;
  max-width: 204px;
}
.c5_acc-single-item-img .gp-vpt3 {
  width: 57.4285714286%;
  padding: 22px 0;
  max-width: 201px;
}
.c5_acc-single-item-img .np-bx1 {
  width: 46.5714285714%;
  padding: 38px 0;
  max-width: 163px;
}
.c5_acc-single-item-img .bc-trw {
  width: 55.4285714286%;
  padding: 10px 0;
  max-width: 194px;
}
.c5_acc-single-item-img .np-fw50 {
  width: 60.8571428571%;
  padding: 30px 0;
  max-width: 213px;
}
.c5_acc-single-cat {
  margin: 0;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-cat {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.c5_acc-single-name {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.6;
  margin: 4px 0 0;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-name {
    font-size: 27px;
    font-size: 1.6875rem;
    margin-top: 0;
  }
}
.c5_acc-single-price {
  margin: 0;
  line-height: 1.6;
}
.c5_acc-single-price-before {
  font-size: 14px;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-price-before {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c5_acc-single-price .fmtPrice {
  font-size: 18px;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-price .fmtPrice {
    font-size: 22px;
    font-size: 1.375rem;
  }
}
.c5_acc-single-price .fmtDetail {
  font-size: 14px;
  font-size: 0.875rem;
  margin-left: -0.2em;
}
@media screen and (min-width: 768px) {
  .c5_acc-single-price .fmtDetail {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c5_acc-single-price .fmtTax {
  margin-left: 0.5em;
}
.c5_acc-kit {
  border: 1px solid #c8c8c8;
  display: flex;
  flex-direction: column-reverse;
  max-width: 600px;
  margin: 0 auto;
  width: 100%;
}
@media screen and (min-width: 980px) {
  .c5_acc-kit {
    max-width: 100%;
    flex-direction: row;
    padding: 0;
    min-height: 360px;
  }
}
.c5_acc-kit-body {
  padding: 40px 6px 50px 20px;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-body {
    flex: 1 1 auto;
    padding: 40px 30px 50px 30px;
  }
}
@media screen and (min-width: 980px) {
  .c5_acc-kit-body {
    padding: 40px 0 40px 60px;
  }
}
.c5_acc-kit-img {
  width: 100%;
}
@media screen and (min-width: 980px) {
  .c5_acc-kit-img {
    width: auto;
    height: 100%;
    flex: 0 1 auto;
  }
}
.c5_acc-kit-img img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
@media screen and (min-width: 980px) {
  .c5_acc-kit-img img {
    /* カード高さ依存（height:100%）だと本文が伸びた際に画像まで伸びるため実寸で固定 */
    height: 358px;
    width: auto;
  }
}
.c5_acc-kit-cat {
  margin: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-cat {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.c5_acc-kit-name {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin: 5px 0 0;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-name {
    font-size: 34px;
    font-size: 2.125rem;
  }
}
.c5_acc-kit-price {
  margin: 0;
  line-height: 1.6;
}
.c5_acc-kit-price-before {
  font-size: 14px;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-price-before {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c5_acc-kit-price .fmtPrice {
  color: #b40014;
  font-size: 22px;
  font-size: 1.375rem;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-price .fmtPrice {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
.c5_acc-kit-price .fmtDetail {
  font-size: 14px;
  font-size: 0.875rem;
  margin-left: -0.2em;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-price .fmtDetail {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c5_acc-kit-price .fmtTax {
  margin-left: 0.5em;
}
.c5_acc-kit-summary {
  margin-top: 40px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-summary {
    margin-top: 24px;
    font-size: 16px;
    font-size: 1rem;
  }
}
.c5_acc-kit-summary-ttl {
  margin: 0;
}
.c5_acc-kit-summary-list {
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
}

/* ------------------------------------------------------------------
   2026-10 ACC kit 追加掲載：おトクキット枠
   ・セクション全体をピンクパネル化（#fef4f3）
   ・見出しに「おトクキット」ロゴを追加（SP=上下積み / PC=横並び）
   ・単品行とキットカードを白パネルに
   ------------------------------------------------------------------ */
.c5_acc {
  background: #fef4f3;
  padding: 15px 20px 30px;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .c5_acc {
    padding: 37px 50px 51px;
  }
}
@media screen and (min-width: 768px) {
  .c5_acc-heading {
    flex-direction: row;
    margin-bottom: 26px;
  }
}
.c5_acc-heading-logo {
  display: block;
  width: 91px;
  height: auto;
  margin-bottom: 8px;
  flex: none;
}
@media screen and (min-width: 768px) {
  .c5_acc-heading-logo {
    width: 121px;
    margin-bottom: 0;
    margin-right: 13px;
  }
}
.c5_acc-items {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  gap: 54px;
  width: 100%;
  margin-left: 0;
  padding: 0;
  border-top: none;
}
.c5_acc-single,
.c5_acc-kit {
  background: #fff;
  border: none;
}
@media screen and (min-width: 768px) {
  .c5_acc-single {
    border-top: none;
    border-bottom: none;
  }
}

/* --- 実レンダリング比較による調整（2026-10-05） --- */
/* カード間隔：単品→キット / キット→次の単品 でデザイン上の値が異なる */
@media screen and (min-width: 768px) {
  .c5_acc-items {
    gap: 44px;
  }
}
.c5_acc-kit + .c5_acc-single {
  margin-top: 26px;
}
@media screen and (min-width: 768px) {
  .c5_acc-kit + .c5_acc-single {
    margin-top: 56px;
  }
}
@media screen and (min-width: 980px) {
  .c5_acc-kit {
    min-height: 358px;
  }
}
/* 単品2点の間の区切り線（PCは縦線のため横線は出さない）
   デザイン実測：#e3e3e3・1px・左右15pxインセット */
.c5_acc-single-item + .c5_acc-single-item {
  position: relative;
}
.c5_acc-single-item + .c5_acc-single-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 15px;
  right: 15px;
  height: 1px;
  background: #e3e3e3;
}
@media screen and (min-width: 980px) {
  .c5_acc-single-item + .c5_acc-single-item::before {
    display: none;
  }
}

/* SPのみ：単品カードのテキストに内側余白（デザイン実測 15px）
   ※ 768px以上は既存の padding:0 30px / 1200px以上は padding:0 をそのまま活かすため
      max-width で閉じる（min-width で上書きすると既存の余白を潰してしまう） */
@media screen and (max-width: 767px) {
  .c5_acc-single-item-body {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* SPでは単品画像を max-width いっぱいで表示する（デザイン実測と一致） */
@media screen and (max-width: 767px) {
  .c5_acc-single-item-img .bc-zd1,
  .c5_acc-single-item-img .np-fz100,
  .c5_acc-single-item-img .bc-qz1,
  .c5_acc-single-item-img .gp-vpt3,
  .c5_acc-single-item-img .np-bx1,
  .c5_acc-single-item-img .bc-trw,
  .c5_acc-single-item-img .np-fw50 {
    width: 100%;
  }
}

/* --- SP(<768px) の内側余白をデザイン実測に合わせる --- */
@media screen and (max-width: 767px) {
  .c5_acc-single {
    padding-top: 14px;
  }
  .c5_acc-single-item {
    padding-bottom: 29px;
  }
  .c5_acc-single-item:first-child {
    padding-bottom: 21px;
  }
  .c5_acc-kit {
    padding-top: 10px;
  }
  .c5_acc-kit-body {
    padding: 0 20px 30px 20px;
  }
  .c5_acc-kit-summary {
    margin-top: 26px;
  }
}

/* SPの商品別画像余白（デザイン実測から。素材ごとに内部余白が違うため個別指定） */
@media screen and (max-width: 767px) {
  .c5_acc-single {
    padding-top: 0;
  }
  .c5_acc-single-item-img .bc-zd1 { padding: 24px 0 16px; }
  .c5_acc-single-item-img .bc-qz1 { padding: 28px 0 10px; }
  .c5_acc-single-item-img .bc-trw { padding: 0; }
  .c5_acc-single-item-img .gp-vpt3 { padding: 36px 0 22px; max-width: 208px; }
  .c5_acc-single-item-img .np-fz100 { padding: 26px 0 32px; }
  .c5_acc-single-item-img .np-fw50 { padding: 18px 0 18px; }
  .c5_acc-single-item-img .np-bx1 { padding: 26px 0 38px; }
}

/* ------------------------------------------------------------------
   タブレット（768〜1199px）の調整。デザイン支給が無いため、
   ・見出しは1行に収まらない幅までは SP と同じ2行＋ロゴ上下積み
   ・単品行は2カラムを維持せずカラム落ちさせ、キットカードと同じ
     600px センタリングに揃える（980px未満）
   ------------------------------------------------------------------ */
@media screen and (max-width: 999px) {
  .c5_acc br.bsp {
    display: inline-block;
  }
  .c5_acc-heading {
    flex-direction: column;
  }
  .c5_acc-heading-logo {
    margin-right: 0;
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 979px) {
  .c5_acc-single {
    flex-direction: column;
    width: 100%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  .c5_acc-single-item {
    width: 100%;
  }
  .c5_acc-single::after {
    display: none;
  }
}

/* 1200px以上は画像とテキストが横並びになり、パーセント指定だと残り幅に連動して
   画像が小さくなりすぎる。max-width を上限とした自然サイズで固定する。
   （元CSSの vw 指定はビューポート幅に連動し、1200〜1439pxで縮みすぎるため不採用） */
@media screen and (min-width: 1200px) {
  .c5_acc-single-item-img .bc-zd1,
  .c5_acc-single-item-img .np-fz100,
  .c5_acc-single-item-img .bc-qz1,
  .c5_acc-single-item-img .gp-vpt3,
  .c5_acc-single-item-img .np-bx1,
  .c5_acc-single-item-img .bc-trw,
  .c5_acc-single-item-img .np-fw50 {
    width: auto;
  }
}

/* ------------------------------------------------------------------
   2026-10 FB対応：キットカードに商品ページへのボタンを追加
   ・ソニー共通コンポーネント s5-buttonV3 を使用（配色は共通定義のまま）
   ・SP はコンテンツ幅いっぱい／PC はデザイン実寸の 288px 固定
------------------------------------------------------------------ */
.c5_acc-kit-btn {
  margin: 24px 0 0;
}
.c5_acc-kit-btn .s5-buttonV3 {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c5_acc-kit-btn .s5-buttonV3 {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .c5_acc-kit-btn .s5-buttonV3 {
    width: 288px;
  }
}
