
.v2-wrap--narrow { width: min(56rem, calc(100% - var(--v2-gutter) * 2)); }

/* ---------- 戻るボタン（矢印を左に） ---------- */
.v2-btn--back::after { display: none; }
.v2-btn--back::before { content: ""; flex: none; width: var(--v2-arrow); height: var(--v2-arrow); background: currentColor; -webkit-mask: var(--v2-i-arrow) center / contain no-repeat; mask: var(--v2-i-arrow) center / contain no-repeat; transform: scaleX(-1); }

/* ---------- ページの見出しの帯（お問い合わせ・料金） ---------- */
.v2-pagehead { position: relative; background: var(--v2-band); color: #fff; text-align: center; padding: 2.5rem 0 2.25rem; overflow: hidden; }
.v2-pagehead::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, rgba(204, 174, 108, 0) 0%, var(--v2-gold) 50%, rgba(204, 174, 108, 0) 100%); opacity: 0.8; }
.v2 .v2-pagehead__title { font-family: var(--v2-serif); font-weight: 800; color: #fff; font-size: 1.875rem; line-height: 1.45; letter-spacing: 0.06em; }
.v2-pagehead__en { margin-top: 0.5rem; font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.28em; color: var(--v2-gold); }
@media (min-width: 1024px) {
  .v2-pagehead { padding: 3.5rem 0 3.25rem; }
  .v2 .v2-pagehead__title { font-size: 2.75rem; }
}

/* ---------- お礼のページ ---------- */
.v2-thx__head { background: var(--v2-band); color: #fff; text-align: center; padding: 2.5rem 0 2.75rem; }
.v2-thx__mark { display: grid; place-items: center; width: 3.5rem; height: 3.5rem; margin: 0 auto 1rem; border-radius: 50%; border: 2px solid var(--v2-gold); }
.v2-thx__mark::before { content: ""; width: 1.75rem; height: 1.75rem; background: var(--v2-gold); -webkit-mask: var(--v2-i-check) center / contain no-repeat; mask: var(--v2-i-check) center / contain no-repeat; }
.v2 .v2-thx__title { font-family: var(--v2-serif); font-weight: 800; color: #fff; font-size: 1.75rem; line-height: 1.5; letter-spacing: 0.04em; }
.v2-thx__row { display: flex; flex-direction: column; align-items: center; gap: 1rem; margin-top: 1.25rem; }
.v2 .v2-thx__face { width: 4.5rem; height: 4.5rem; border-radius: 50%; object-fit: cover; object-position: 50% 22%; border: 2px solid var(--v2-gold); flex: none; }
.v2-thx__lead { color: rgba(255, 255, 255, 0.92); font-size: 0.9375rem; line-height: 1.9; text-align: left; max-width: 48rem; text-wrap: pretty; }
.v2-thx__lead strong { color: #fff; background: linear-gradient(transparent 62%, rgba(204, 174, 108, 0.5) 62%); }
.v2-thx__body { padding-block: 2.5rem 3.5rem; }
.v2-thx__card { padding: 1.5rem 1.25rem; }
.v2-thx__card + .v2-thx__card { margin-top: 1rem; }
.v2 .v2-thx__h { font-family: var(--v2-serif); font-weight: 800; font-size: 1.25rem; line-height: 1.5; color: var(--v2-heading); text-align: center; }
.v2-thx__h::after { content: ""; display: block; width: 2.5rem; height: 2px; margin: 0.625rem auto 0; background: var(--v2-gold); }
.v2-thx__steps { counter-reset: v2thx; display: grid; gap: 0.75rem; margin-top: 1.25rem; }
.v2-thx__steps li { counter-increment: v2thx; position: relative; display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: 0.875rem; align-items: center; padding: 0.875rem 1rem; background: var(--v2-pale-light); border: 1px solid var(--v2-border); border-radius: var(--v2-r-btn); line-height: 1.75; font-size: 0.9375rem; }
.v2-thx__steps li::before { content: counter(v2thx); display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--v2-navy); color: var(--v2-gold); font-family: var(--v2-serif); font-weight: 800; font-size: 1.125rem; line-height: 1; }
.v2-thx__prep { display: grid; gap: 0.75rem; margin-top: 1.25rem; }
.v2-thx__prep li { position: relative; padding-left: 2.125rem; line-height: 1.75; font-size: 0.9375rem; }
.v2-thx__prep li::before { content: ""; position: absolute; left: 0; top: 0.1875rem; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: var(--v2-gold-pale); border: 1px solid rgba(204, 174, 108, 0.6); }
.v2-thx__prep li::after { content: ""; position: absolute; left: 0.3125rem; top: 0.5rem; width: 0.875rem; height: 0.875rem; background: var(--v2-gold-strong); -webkit-mask: var(--v2-i-check) center / contain no-repeat; mask: var(--v2-i-check) center / contain no-repeat; }
.v2-thx__prep strong { color: var(--v2-heading); }
.v2-thx__note { margin-top: 1.5rem; font-size: var(--v2-fs-note); color: var(--v2-muted); line-height: 1.85; }
@media (min-width: 768px) {
  .v2 .v2-thx__title { font-size: 2.25rem; }
  .v2-thx__row { flex-direction: row; justify-content: center; gap: 1.5rem; }
  .v2 .v2-thx__face { width: 5.5rem; height: 5.5rem; }
  .v2-thx__lead { font-size: 1rem; }
  .v2-thx__card { padding: 2rem; }
  .v2 .v2-thx__h { font-size: 1.375rem; }
  .v2-thx__prep { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.5rem; }
}
@media (min-width: 1024px) {
  .v2-thx__head { padding: 3.5rem 0 3.75rem; }
  .v2-thx__body { padding-block: 3.5rem 4.5rem; }
  .v2-thx__steps { grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 1rem; }
  .v2-thx__steps li { grid-template-columns: 1fr; justify-items: center; align-content: start; text-align: left; padding: 1.25rem 1rem; }
  .v2-thx__steps li:not(:last-child)::after { content: ""; position: absolute; right: -0.875rem; top: 2.25rem; width: 0.75rem; height: 0.75rem; background: var(--v2-navy); -webkit-mask: var(--v2-i-arrow) center / contain no-repeat; mask: var(--v2-i-arrow) center / contain no-repeat; }
}

/* ---------- お問い合わせ ---------- */
.v2-contact .breadcrumb { margin: 0; }
.v2-contact__sec { padding-block: 2rem 3.5rem; }
.v2-contact__intro { display: flex; flex-direction: column; align-items: center; gap: 1rem; max-width: 48rem; margin: 0 auto 1.75rem; }
.v2 .v2-contact__face { width: 4.5rem; height: 4.5rem; border-radius: 50%; object-fit: cover; object-position: 50% 22%; border: 2px solid var(--v2-gold); flex: none; }
.v2-contact__lead { font-size: 0.9375rem; line-height: 1.9; color: var(--v2-text); }
.v2-contact__lead strong { color: var(--v2-heading); background: linear-gradient(transparent 62%, var(--v2-gold-pale) 62%); }
.v2-contact__grid { display: grid; gap: 1.5rem; }
.v2 .v2-contact__h { font-family: var(--v2-serif); font-weight: 800; font-size: 1.375rem; line-height: 1.5; color: var(--v2-heading); margin: 0 0 0.5rem; }
.v2-contact__note { font-size: 0.875rem; color: var(--v2-muted); margin: 0 0 1.25rem; line-height: 1.75; }
.v2-contact__form .form-note { font-size: 0.75rem; text-align: center; margin-top: 0.75rem; }
.v2-contact__form .cta-assure { text-align: center; margin-top: 0.75rem; }
.v2-contact__form .consent-field { margin-top: 1.5rem; }
.v2-contact__form .est-dt-note { font-size: 0.8125rem; color: var(--v2-muted); line-height: 1.75; margin-top: 0.5rem; }
.v2-contact__info { padding: 1.5rem 1.25rem; }
.v2-contact__info dl { margin: 0.75rem 0 0; }
.v2-contact__info dt { display: flex; align-items: center; gap: 0.5rem; font-weight: 700; font-size: 0.875rem; color: var(--v2-heading); margin-top: 0.875rem; padding-top: 0.875rem; border-top: 1px solid var(--v2-border); }
.v2-contact__info dt:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.v2-contact__info dt i { width: 1.25rem; text-align: center; color: var(--v2-gold-strong); }
.v2-contact__info dd { margin: 0.25rem 0 0 1.75rem; font-size: 0.9375rem; line-height: 1.75; color: var(--v2-text); overflow-wrap: anywhere; }
.v2-contact__info iframe { display: block; width: 100%; height: 15rem; border: 0; border-radius: var(--v2-r-sm); margin-top: 1.25rem; }
@media (min-width: 768px) {
  .v2-contact__intro { flex-direction: row; gap: 1.5rem; }
  .v2 .v2-contact__face { width: 5.5rem; height: 5.5rem; }
  .v2-contact__lead { font-size: 1rem; }
  .v2-contact__info { padding: 2rem; }
}
@media (min-width: 1024px) {
  .v2-contact__sec { padding-block: 3rem 5rem; }
  .v2-contact__grid { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 2rem; align-items: start; }
  .v2-contact__info { position: sticky; top: calc(var(--v2-header-h) + 1.5rem); }
}


/* ---------- ボタン：主＝オレンジ（文字は濃紺）、副＝紺。角の丸みは 8px ---------- */
body.v2-skin .section .btn, body.v2-skin .cta-band .btn, body.v2-skin .estimator-cta button { border-radius: var(--v2-r-btn); font-family: var(--v2-sans); letter-spacing: 0.02em; }
body.v2-skin .section .btn--accent, body.v2-skin .cta-band .btn--accent { background: var(--v2-orange); color: var(--v2-heading); box-shadow: var(--v2-sh-btn); }
body.v2-skin .section .btn--accent:hover, body.v2-skin .cta-band .btn--accent:hover { background: var(--v2-orange-hover); color: var(--v2-heading); transform: none; }
body.v2-skin .section .btn--primary, body.v2-skin .cta-band .btn--primary { background: var(--v2-navy); color: #fff; box-shadow: var(--v2-sh-btn); }
body.v2-skin .section .btn--primary:hover, body.v2-skin .cta-band .btn--primary:hover { background: var(--v2-navy-light); color: #fff; transform: none; }
body.v2-skin .cta-band .btn--primary { background: var(--v2-orange); color: var(--v2-heading); }
body.v2-skin .cta-band .btn--primary:hover { background: var(--v2-orange-hover); color: var(--v2-heading); }
body.v2-skin .section .btn i, body.v2-skin .cta-band .btn i { color: inherit; }

/* ---------- ページの見出しの帯 ---------- */
body.v2-skin .page-header { background: var(--v2-band); padding: 2.75rem 0 2.5rem; }
body.v2-skin .page-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: linear-gradient(90deg, rgba(204, 174, 108, 0) 0%, var(--v2-gold) 50%, rgba(204, 174, 108, 0) 100%); opacity: 0.8; }
body.v2-skin .page-header__title { font-family: var(--v2-serif); font-weight: 800; color: #fff; }
body.v2-skin .page-header__sub { color: var(--v2-gold); letter-spacing: 0.28em; font-weight: 500; }
@media (min-width: 1024px) { body.v2-skin .page-header { padding: 3.5rem 0 3.25rem; } }

/* ---------- 区画の見出し（明朝600＋金の短い線） ---------- */
body.v2-skin .section-title { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); line-height: 1.5; }
body.v2-skin .section-title::after { content: ""; display: block; width: var(--v2-rule-w); height: 2px; margin: var(--v2-rule-gap) auto 0; background: var(--v2-gold); }
body.v2-skin .section-pricing-intro .section-title { color: #fff; }
body.v2-skin .section-subtitle { color: var(--v2-muted); }

/* ---------- 冒頭の4つの約束 ---------- */
body.v2-skin .section-pricing-intro { background: var(--v2-band); padding: 3rem 0 3.25rem; }
body.v2-skin .strength-card { background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: var(--v2-r-card); backdrop-filter: none; }
body.v2-skin .strength-card:hover { border-color: var(--v2-gold); box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25); }
body.v2-skin .strength-card__num { color: var(--v2-gold); }
body.v2-skin .strength-card__icon { color: var(--v2-gold); font-size: 56px; }
body.v2-skin .strength-card__title { font-family: var(--v2-serif); font-weight: 800; }

/* ---------- 60秒見積りの看板 ---------- */
body.v2-skin .estimator-trigger, body.v2-skin .estimator-trigger.estimator-trigger--corp,
body.v2-skin .estimator-entry, body.v2-skin .estimator-entry.estimator-entry--corp { background: var(--v2-band); border: 1px solid rgba(204, 174, 108, 0.55); box-shadow: var(--v2-sh-panel); }
body.v2-skin .estimator-trigger::before, body.v2-skin .estimator-trigger::after, body.v2-skin .estimator-entry::before { display: none; }
body.v2-skin .estimator-trigger:hover, body.v2-skin .estimator-trigger.estimator-trigger--corp:hover,
body.v2-skin .estimator-entry:hover, body.v2-skin .estimator-entry.estimator-entry--corp:hover { box-shadow: 0 16px 40px rgba(20, 38, 95, 0.28); }
body.v2-skin .estimator-trigger__icon-wrap, body.v2-skin .estimator-trigger.estimator-trigger--corp .estimator-trigger__icon-wrap,
body.v2-skin .estimator-entry__icon-wrap, body.v2-skin .estimator-entry--corp .estimator-entry__icon-wrap { background: rgba(255, 255, 255, 0.06); border: 1.5px solid var(--v2-gold); color: var(--v2-gold); box-shadow: none; }
body.v2-skin .estimator-trigger__title, body.v2-skin .estimator-entry__title { font-family: var(--v2-serif); font-weight: 800; }
body.v2-skin .estimator-trigger__title-main, body.v2-skin .estimator-trigger__title-sub { font-family: var(--v2-serif); font-weight: 800; }
body.v2-skin .estimator-trigger__sub-em, body.v2-skin .estimator-entry__sub-em { color: var(--v2-gold); }
body.v2-skin .estimator-trigger__features i, body.v2-skin .estimator-trigger__features .fa-check-circle, body.v2-skin .estimator-trigger__features .fa-circle-check { color: var(--v2-gold); }
body.v2-skin .estimator-trigger__notice, body.v2-skin .estimator-entry__notice { background: rgba(204, 174, 108, 0.12); border-color: rgba(204, 174, 108, 0.55); color: var(--v2-gold); }
body.v2-skin .estimator-trigger__badge--new, body.v2-skin .estimator-entry__badge--new { background: var(--v2-gold); color: var(--v2-heading); box-shadow: none; animation: none; }
body.v2-skin .estimator-trigger__badge--off, body.v2-skin .estimator-entry__badge--off { background: var(--v2-orange); color: var(--v2-heading); box-shadow: none; }
body.v2-skin .estimator-trigger__price { color: #fff; }
body.v2-skin .estimator-trigger__btn, body.v2-skin .estimator-entry__btn { background: var(--v2-orange); color: var(--v2-heading); border-radius: var(--v2-r-btn); box-shadow: var(--v2-sh-btn); }
body.v2-skin .estimator-trigger__btn:hover, body.v2-skin .estimator-entry__btn:hover { background: var(--v2-orange-hover); color: var(--v2-heading); }

/* ---------- 60秒見積り（開いた後） ---------- */
body.v2-skin .estimator-card { border-color: var(--v2-border); border-radius: var(--v2-r-card); box-shadow: var(--v2-sh-panel); }
body.v2-skin .est-progress__steps li.is-on { color: var(--v2-heading); border-bottom-color: var(--v2-gold); }
body.v2-skin .est-progress__steps li.is-on span { background: var(--v2-navy); color: var(--v2-gold); }
body.v2-skin .est-wizard--corp .est-progress__hint, body.v2-skin .est-progress__hint { color: var(--v2-heading); }
body.v2-skin .est-group { background: #fff; border-color: var(--v2-border); border-left-color: var(--v2-navy); border-radius: var(--v2-r-card); }
body.v2-skin .est-group__title { color: var(--v2-heading); }
body.v2-skin .est-group__title i { color: var(--v2-gold-strong); }
body.v2-skin .est-step__title { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); }
body.v2-skin .est-chip { border-color: var(--v2-border-strong); border-radius: var(--v2-r-btn); }
body.v2-skin .est-chip:hover, body.v2-skin .est-wizard--corp .est-chip:hover { border-color: var(--v2-navy); }
body.v2-skin .est-chip.is-on, body.v2-skin .est-wizard--corp .est-chip.is-on { border-color: var(--v2-navy); background: var(--v2-pale); color: var(--v2-heading); box-shadow: inset 0 0 0 1px var(--v2-navy); }
body.v2-skin .est-chip--kind i { color: var(--v2-navy); }
body.v2-skin .est-chip--kind span { color: var(--v2-heading); }
body.v2-skin .est-chip--kind.is-on { border-color: var(--v2-navy); background: var(--v2-pale); box-shadow: 0 0 0 3px rgba(26, 48, 116, 0.12); }
body.v2-skin .est-chip--kind.is-on::after { border-color: var(--v2-navy); background: var(--v2-navy); }
body.v2-skin .est-item { border-color: var(--v2-border-strong); background: #fff; border-radius: var(--v2-r-btn); }
body.v2-skin .est-item:hover { background: var(--v2-pale-light); border-color: var(--v2-navy); box-shadow: none; }
body.v2-skin .est-item input[type="checkbox"] { accent-color: var(--v2-navy); }
body.v2-skin .est-item__price, body.v2-skin .est-wizard--corp .est-amount__price strong { color: var(--v2-navy); }
body.v2-skin .est-select { border-color: var(--v2-border-strong); background: #fff; }
body.v2-skin .est-select:hover, body.v2-skin .est-select:focus { border-color: var(--v2-navy); }
body.v2-skin .est-amount__row input[type="number"], body.v2-skin .est-wizard--corp .est-amount__row input[type="number"] { border-color: var(--v2-border-strong); color: var(--v2-heading); }
body.v2-skin .est-amount__range, body.v2-skin .est-wizard--corp .est-amount__range { accent-color: var(--v2-navy); }
body.v2-skin .est-setline i, body.v2-skin .est-wizard--corp .est-setline i, body.v2-skin .est-linkbtn, body.v2-skin .est-wizard--corp .est-linkbtn { color: var(--v2-navy); }
body.v2-skin .est-linkbtn { border-color: var(--v2-border-strong); border-radius: var(--v2-r-btn); }
body.v2-skin .est-bar__tot b, body.v2-skin .est-wizard--corp .est-bar__tot b { color: var(--v2-heading); }
body.v2-skin .est-bar__next { background: var(--v2-orange); color: var(--v2-heading); border-radius: var(--v2-r-btn); box-shadow: var(--v2-sh-btn); }
body.v2-skin .est-bar__next:hover { background: var(--v2-orange-hover); }
body.v2-skin .est-live-summary, body.v2-skin .est-live-summary--corp { background: var(--v2-band); border-color: rgba(204, 174, 108, 0.55); }
body.v2-skin .est-live-summary__title { color: var(--v2-gold); }
body.v2-skin .estimator-result, body.v2-skin .estimator-result.estimator-result--corp { background: var(--v2-band); }
body.v2-skin .est-total--final .est-total__amount { color: var(--v2-gold); }
body.v2-skin .est-corp-result__grid > div { border-color: var(--v2-border); border-radius: var(--v2-r-card); }
body.v2-skin .est-corp-result__grid b { color: var(--v2-heading); }
body.v2-skin .est-corp-result__grid > div.sum { background: var(--v2-band); }
body.v2-skin .est-corp-result__grid > div.sum b { color: var(--v2-gold); }
body.v2-skin .estimator-cta button:not(:disabled) { background: var(--v2-orange); color: var(--v2-heading); animation: none; box-shadow: var(--v2-sh-btn); }
body.v2-skin .estimator-cta button:not(:disabled):hover { background: var(--v2-orange-hover); }
body.v2-skin .estimator-form h3 { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); }

/* ---------- 料金のカードと表 ---------- */
body.v2-skin .pricing-card { border-color: var(--v2-border); border-radius: var(--v2-r-card); box-shadow: var(--v2-sh-card); }
body.v2-skin .pricing-card__header { border-bottom: 1px solid var(--v2-border); }
body.v2-skin .pricing-card__icon { background: var(--v2-gold-pale); color: var(--v2-gold-strong); border-radius: 50%; }
body.v2-skin .pricing-card__title { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); }
body.v2-skin .pricing-card__sub { color: var(--v2-muted); }
body.v2-skin .pricing-card h3 { color: var(--v2-heading); }
body.v2-skin .pricing-table { border-radius: var(--v2-r-btn); box-shadow: none; border: 1px solid var(--v2-border); border-collapse: separate; border-spacing: 0; }
body.v2-skin .pricing-table thead { background: var(--v2-navy); }
body.v2-skin .pricing-table thead th { font-weight: 700; letter-spacing: 0.06em; }
body.v2-skin .pricing-table tbody td { border-bottom: 1px dashed var(--v2-border); }
body.v2-skin .pricing-table tbody tr:last-child td { border-bottom: 0; }
body.v2-skin .pricing-table tbody tr:nth-child(even) { background: var(--v2-pale-light); }
body.v2-skin .pricing-table tbody tr td:first-child { color: var(--v2-heading); }
body.v2-skin .pricing-table tbody td:last-child { color: var(--v2-heading); font-variant-numeric: tabular-nums; }
body.v2-skin .pricing-table .taxin { color: var(--v2-muted); }

/* ---------- 期限の割増の帯（金の色調） ---------- */
body.v2-skin .deadline-warning-band { background: var(--v2-gold-pale); border: 1.5px solid var(--v2-gold); border-radius: var(--v2-r-card); }
body.v2-skin .deadline-warning-band__title { color: var(--v2-gold-text); font-weight: 600; }
body.v2-skin .deadline-warning-band__cells { border: 1px solid rgba(204, 174, 108, 0.45); border-radius: var(--v2-r-btn); }
body.v2-skin .deadline-warning-band__cell { border-right-color: rgba(204, 174, 108, 0.35); }

/* ---------- 料金についての方針（紺の丸に金の数字） ---------- */
body.v2-skin .policy-section__title { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); }
body.v2-skin .policy-list__num { background: var(--v2-navy); color: var(--v2-gold); font-family: var(--v2-serif); }

/* ---------- 法人ページの冒頭（共感の箱・選ばれる3つの理由） ---------- */
body.v2-skin .empathy-block { background: #fff; border: 1px solid var(--v2-border); border-left: 4px solid var(--v2-gold); border-radius: var(--v2-r-card); box-shadow: var(--v2-sh-card); }
body.v2-skin .empathy-block__title { font-weight: 600; color: var(--v2-heading); }
body.v2-skin .empathy-block__list li::before { color: var(--v2-gold-strong); }
body.v2-skin .empathy-block__answer { color: var(--v2-heading); border-top-color: var(--v2-border); }
body.v2-skin .reason-card { border-color: var(--v2-border); border-radius: var(--v2-r-card); box-shadow: var(--v2-sh-card); }
body.v2-skin .reason-card__icon { background: var(--v2-navy); color: var(--v2-gold); }
body.v2-skin .reason-card__num { color: var(--v2-gold-strong); }
body.v2-skin .reason-card__title { font-family: var(--v2-serif); font-weight: 800; color: var(--v2-heading); font-size: 1rem; }

/* ---------- 最後の帯 ---------- */
body.v2-skin .cta-band, body.v2-skin .cta-band.cta-band--mountain { background: var(--v2-band); }
body.v2-skin .cta-band__title { font-family: var(--v2-serif); font-weight: 800; color: #fff; }
body.v2-skin .cta-band__title::after { content: ""; display: block; width: var(--v2-rule-w); height: 2px; margin: var(--v2-rule-gap) auto 0; background: var(--v2-gold); }
body.v2-skin .cta-band__text { color: rgba(255, 255, 255, 0.9); }
body.v2-skin .cta-band .cta-assure, body.v2-skin .cta-band .cta-assure i { color: rgba(255, 255, 255, 0.85); }

/* ===== 見出しの紺の帯に、夜のオフィス街の写真を紺で薄く重ねる ===== */
.v2-pagehead, .v2-thx__head, body.v2-skin .page-header {
  background: linear-gradient(rgba(16, 36, 95, 0.76), rgba(16, 36, 95, 0.84)), url('/images/v2/bg/bg-night-office.webp') center 40% / cover no-repeat, var(--v2-navy);
}

/* ===== 法人の料金ページの冒頭「今の税理士に、こんな不満はありませんか？」
   トップの「法人のお客様へ」と同じ部品（淡い青の面・アイコン付きの白いカード・クリーム色の答えの箱）に、人物の絵を添える。
   スマホ：絵 → 見出し → カード → 答え の縦並び。パソコン：左に絵、右に見出しとカード、下に答え ===== */
.v2-empathy { max-width: 61.25rem; margin: 0.5rem auto 0; }
.v2-empathy__qa { display: grid; gap: 1rem; }
.v2-empathy__fig { width: 100%; max-width: 16rem; margin: 0 auto; aspect-ratio: 3 / 2; object-fit: contain; }
.v2-empathy .v2-seg__qtitle { margin-bottom: 0; line-height: 1.5; }
.v2-empathy .v2-seg__worries { grid-template-columns: minmax(0, 1fr); }
.v2-empathy .v2-seg__worry { border-color: #D2E0F2; }
.v2-empathy .v2-seg__answer { margin-top: 0.25rem; }
@media (min-width: 900px) {
  .v2-empathy__qa { grid-template-columns: 20rem minmax(0, 1fr); column-gap: 2.5rem; row-gap: 1.25rem; padding: 2rem 2.5rem; }
  .v2-empathy__fig { grid-column: 1; grid-row: 1 / span 2; align-self: center; max-width: 20rem; }
  .v2-empathy .v2-seg__qtitle { grid-column: 2; text-align: left; align-self: end; }
  .v2-empathy .v2-seg__worries { grid-column: 2; align-self: start; }
  .v2-empathy .v2-seg__answer { grid-column: 1 / -1; }
}
/* スマホ：カードの文字の幅を広げる（アイコン・余白を少し小さく） */
@media (max-width: 400px) {
  .v2-empathy__qa { padding: 1rem; }
  .v2-empathy .v2-seg__worry { grid-template-columns: 2.75rem minmax(0, 1fr); gap: 0.625rem; padding: 0.875rem; }
  .v2-empathy .v2-seg__wicon { width: 2.75rem; height: 2.75rem; }
  .v2-empathy .v2-seg__answer { padding: 0.875rem 1rem; }
}
@media (max-width: 359px) { .v2-empathy .v2-seg__answer { font-size: 0.9375rem; } }
