/* 用途: BM2/BP1に沿ったブランドと記事の配置。トップと共通ページには適用しない。 */
.detail-page { background:#fff; }
.detail-page .top-name-unit { display:inline-block; white-space:nowrap; }
.detail-hero { background:#f1faf5; margin:0 0 0; border-block:1px solid #e5f0e9; }
.detail-hero-inner { width:calc(100% - 32px); max-width:1020px; margin:auto; padding:18px 0; }
.detail-hero h1 { font-size:24px; line-height:1.5; margin:0 0 8px; word-break:keep-all; word-break:auto-phrase; overflow-wrap:normal; text-wrap:balance; }
.detail-hero .hero-rating-line { display:flex; align-items:center; gap:10px; margin:0 0 8px; font-size:26px; }
.detail-hero .hero-rating-line strong { font-size:28px; font-weight:700; color:var(--brand); }
.detail-hero .hero-rating-line .stars { width:120px; height:24px; }
.detail-counts { font-size:14px; line-height:1.7; }
.detail-counts>span { display:block; }
.detail-store-count { display:flex; flex-wrap:wrap; gap:4px; }
.detail-store-count dt,.detail-store-count dd { margin:0; font-weight:400; }
.detail-fields { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.detail-fields a,.detail-fields>span,.detail-method-chip { display:flex; align-items:center; min-height:44px; padding:6px 12px; border-radius:999px; background:#e4f3eb; text-decoration:none; font-size:13px; color:var(--brand); }
.detail-hero .intro,.detail-hero-copy>.note { font-size:13px; line-height:1.65; color:var(--muted); margin:8px 0 0; }
.detail-hero-action>.apply { margin:14px 0 8px; border-radius:999px; }
.detail-hero-action>small { display:block; font-size:13px; color:var(--muted); }
.detail-page .rating-block { padding:0; margin:0 0 20px; }
.detail-summary { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; margin-bottom:12px; padding:12px; border-radius:12px; background:#f1faf5; }
.detail-rating,.detail-numbers { min-width:0; }
.detail-summary .detail-method-link { grid-column:2; }
@media(max-width:767px) { .detail-summary .detail-method-link { grid-column:1; } }
.detail-page .detail-summary .detail-box-title,.detail-information>.detail-box-title,.detail-toc>.detail-box-title { display:flex; align-items:center; gap:6px; font-size:15px; font-weight:500; margin:0 0 10px; }
.detail-page .detail-summary .rating { display:block; padding:10px 8px; background:white; border-radius:10px; margin:0; }
.detail-page .detail-summary .bar-row { grid-template-columns:26px minmax(0,1fr) 48px; gap:4px; margin:6px 0; }
.detail-summary .bar-label { font-size:13px; white-space:nowrap; }
.detail-summary .bar-label::first-letter { color:#a95a00; }
.detail-summary .bar-track { height:10px; border-radius:10px; background:#edf0f2; }
.detail-summary .bar-track>span { background:var(--brand)!important; border-radius:10px; }
.detail-summary .bar-value { font-size:12px; font-weight:400; }
.detail-metrics { display:grid; gap:8px; margin:0; }
.detail-page .detail-metrics .decision-row { display:block; padding:10px; border:0; border-radius:10px; background:white; }
.detail-page .detail-metrics dt { font-size:13px; line-height:1.5; color:var(--ink); }
.detail-page .detail-metrics dd { margin:6px 0 0; font-size:14px; font-weight:500; }
.detail-page .detail-metrics strong { font-size:28px; color:var(--brand); }
.detail-page .detail-metrics .metric-label { font-size:13px; font-weight:400; word-break:keep-all; }
.detail-page .detail-metrics small { font-size:12px; line-height:1.5; }
.detail-information { padding:12px; margin-top:12px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.detail-information .decision-row { display:flex; align-items:start; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); }
.detail-information .decision-row:last-child { border:0; }
.detail-information dt { flex:0 0 65px; font-size:13px; color:var(--muted); }
.detail-information dd { font-size:14px; margin:0; min-width:0; }
.detail-information .gold-fees-row dd { word-break:auto-phrase; }
.detail-information .methods { display:flex; flex-wrap:wrap; gap:12px; margin:0; }
.detail-information .method { display:flex; flex-direction:column-reverse; align-items:center; gap:4px; min-height:44px; padding:0; border:0; background:transparent; font-size:13px; color:var(--brand); }
.detail-information .method .line-icon { width:22px; height:22px; }
.detail-page .jump-nav { width:100%; max-width:none; margin:0; border-radius:0; background:#fff; border-block:1px solid var(--line); top:0; z-index:15; box-shadow:0 2px 5px #1c243005; }
.detail-page .jump-nav>div { max-width:1020px; margin:auto; }
.detail-page .jump-nav a { color:var(--ink); border-radius:6px; font-weight:500; padding:10px 12px; }
.detail-page .jump-nav a[aria-current=true] { background:var(--brand); color:#fff; font-weight:700; }
.detail-page .jump-nav a[aria-current=true] .line-icon { color:#fff; }
.detail-page .jump-nav.detail-tabs-suppressed { visibility:hidden; height:0; border:0; overflow:hidden; }
.detail-toc { border:1px solid var(--line); border-radius:12px; overflow:hidden; margin:12px 0; background:#fff; }
.detail-toc>.detail-box-title { padding:10px 12px; background:#edf8f2; margin:0; }
.detail-toc-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.detail-toc-grid>a { display:flex; align-items:center; justify-content:space-between; gap:4px; min-height:48px; padding:8px 10px; font-size:13px; text-decoration:none; color:var(--ink); border-right:1px solid var(--line); border-top:1px solid var(--line); word-break:keep-all; }
.detail-toc-grid>a::after { content:'›'; color:var(--brand); margin-left:auto; }
.detail-toc-grid .line-icon,.detail-toc-grid .tab-count { display:none; }
.detail-page main>section { padding:0; border:0; background:#fff; border-radius:0; margin:24px 0; }
.detail-page h2 { font-size:19px; font-weight:700; background:#fff; color:var(--ink); padding:0 0 10px; border:0; border-bottom:1px solid var(--line); border-radius:0; margin-bottom:14px; }
.detail-page h2 .line-icon { color:var(--brand); width:22px; height:22px; }
.detail-page .answer,.detail-page .lead { border:1px solid #d8eadf; border-radius:12px; background:#f1faf5; box-shadow:0 2px 6px #1c243005; }
.detail-page .article-lead { padding:14px 16px; }
.detail-voice-groups { display:grid; gap:12px; }
.detail-voice-group { border-radius:12px; padding:12px; background:#edf8f2; border:1px solid #dceee3; }
.detail-negative { background:#fff0f2; border-color:#f5dce1; }
.detail-voice-group .voice-group-heading { margin:0 0 10px; }
.detail-voice-group .voice-group-heading { flex-wrap:wrap; }
.detail-voice-group .voice-group-heading .voice-topic { font-weight:400; white-space:nowrap; }
.detail-voice-group .voice-card { border:0; border-bottom:1px solid #dceee3; border-radius:0; background:#fff; padding:12px; margin:0; box-shadow:none; }
.detail-negative .voice-card { border-color:#f5dce1; }
.detail-voice-group .voice-bubble { border:0; background:transparent; padding:0; }
.detail-voice-group .voice-bubble::before,.detail-voice-group .voice-bubble::after { display:none; }
.detail-voice-group .voice-head { margin-bottom:6px; }
.detail-page .brand-bars .bar-row { display:grid; grid-template-columns:minmax(0,1fr) 70px; gap:8px; padding:8px; border-bottom:1px solid var(--line); border-radius:0; font-weight:400; }
.detail-page .brand-bars .bar-row[data-brand-current=true] { background:#e7f5ed; color:var(--brand); }
.detail-page .brand-bars .bar-value { font-weight:400; }
.detail-page .compare-count-note { display:block; font-size:13px; font-weight:400; }
.detail-page .brand-bars .compare-count-note { grid-column:1/-1; margin:0; }
.detail-page .brand-bars .bar-track { display:none; }
.detail-page .brand-bar-name { word-break:keep-all; overflow-wrap:normal; }
.detail-page .table-scroll { border:1px solid var(--line); border-radius:12px; }
.detail-page table { border:0; }
.detail-page table.official-examples { min-width:0; table-layout:fixed; }
.detail-page .official-examples th,.detail-page .official-examples td { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.detail-page .official-examples th:nth-child(2) { width:112px; }
.detail-page .official-examples th:nth-child(3) { width:90px; }
.detail-page .official-examples td:nth-child(2) { white-space:nowrap; }
.detail-page .official-examples td:not(:nth-child(2)) [data-fact] { white-space:normal; }
.detail-page thead th { background:#f0f2f4; }
.detail-page td,.detail-page th { border-color:var(--line); }
.detail-page .cta { border:1px solid var(--line); border-radius:12px; background:white; box-shadow:0 2px 6px #1c243005; }
.detail-page .cta-heading { word-break:keep-all; word-break:auto-phrase; text-wrap:balance; }
.detail-page .ugc-panel { border:1px solid var(--line); border-radius:12px; padding:16px; background:#fff; box-shadow:0 2px 6px #1c243005; }
.detail-page .ugc-field input,.detail-page .ugc-field textarea,.detail-page .ugc-field select { border-radius:10px; }
.detail-page .ugc-vote { margin:12px 0; }
.detail-page [data-ugc-question=comparison] .ugc-choices { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:5px; }
.detail-page [data-ugc-question=comparison] .ugc-choice-button { display:flex; flex-direction:column; justify-content:center; gap:6px; min-height:96px; padding:8px 2px; border:1px solid var(--line); border-radius:8px; color:var(--ink); font-size:12px; line-height:1.5; }
.detail-page [data-ugc-question=comparison] .ugc-choice-button>span:last-child { white-space:nowrap; }
.detail-page [data-ugc-question=comparison] .ugc-choice-button .ugc-check { display:none; }
.detail-choice-icon { width:24px; height:24px; color:var(--brand); }
.detail-page [data-ugc-question=comparison] .ugc-choice-button[aria-pressed=true] { background:#e7f5ed; border-color:var(--brand); }
.detail-page .ugc-result-row { border:1px solid var(--line); background:#f1faf5; padding:8px; border-radius:8px; }
.detail-page .ugc-thanks { background:#f1faf5; border-radius:8px; padding:10px; }
.detail-invitation { background:#edf8f2; border:1px solid #dceee3; border-radius:12px; padding:16px; }
.detail-invitation .detail-invitation-title { display:flex; align-items:start; gap:8px; margin:0 0 10px; font-size:16px; font-weight:500; color:var(--brand); }
.detail-invitation p:not(.detail-invitation-title) { font-size:13px; color:var(--muted); margin:0 0 12px; }
.detail-write { display:flex; align-items:center; justify-content:center; min-height:48px; background:var(--brand); color:white; border-radius:999px; font-weight:700; text-decoration:none; }
.detail-sticky-identity { display:none; }
.detail-page #sticky-apply { border-top:1px solid var(--line); background:white; }
.detail-page #sticky-apply .apply,.detail-page #sticky-apply .sticky-review { border-radius:10px; }
.detail-page #sticky-apply .sticky-review { background:#fff; color:var(--brand); border:1px solid var(--brand); }
.detail-page #sticky-apply[hidden] { display:none!important; }
@media(max-width:1023px) {
 .detail-page main { padding-top:16px; }
 .detail-page .detail-hero .intro { display:block; overflow:visible; -webkit-line-clamp:unset; }
 .detail-page #sticky-apply { height:auto; min-height:68px; padding:10px 16px max(10px,env(safe-area-inset-bottom)); }
 .detail-page.sticky-enabled { padding-bottom:88px; }
}
@media(min-width:1024px) {
 .detail-page .row-table.review-comparison .row-meta { flex-wrap:wrap; }
 .detail-page .row-table.condition-comparison thead th:first-child { width:126px; }
 .detail-page .row-table.condition-comparison thead th:nth-child(n+2):not(.row-arrow) { width:calc((100% - 126px)/3); }
 .detail-page .row-table.condition-comparison .row-arrow { width:0; padding:0; font-size:0; }
 .detail-page .row-table.condition-comparison tbody .row-arrow::after { content:'›'; position:absolute; right:4px; top:50%; transform:translateY(-50%); font-size:26px; }
 .detail-page .row-table.condition-comparison th,.detail-page .row-table.condition-comparison td { padding:16px 18px; }
 .detail-page .row-table.condition-comparison th:first-child { padding-left:12px; padding-right:0; }
 .detail-page .row-table.condition-comparison .row-meta { flex-wrap:wrap; gap:2px 6px; white-space:normal; }
 .detail-page .row-table.condition-comparison .row-meta .sampling-note { display:none; }
 .detail-page .row-table.condition-comparison .row-condition-value { display:block; position:relative; }
 .detail-page .row-table.condition-comparison .condition-value { display:inline; font-size:13px; }
 .detail-page .row-table.condition-comparison .row-condition-mark { position:absolute; left:-14px; top:0; margin:0; font-size:12px; }
 .detail-page .row-table.condition-comparison .top-name-unit { display:inline-block; word-break:keep-all; }
 .detail-hero-inner { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:24px; padding:24px 0; }
 .detail-hero h1 { font-size:32px; }
 .detail-hero-action>.apply { margin-top:0; }
 .detail-page .page-layout { grid-template-columns:minmax(0,1fr) 340px; gap:24px; }
 .detail-page .page-layout main { padding-top:20px; }
 .detail-page .desktop-sidebar { top:68px; max-height:calc(100vh - 160px); overflow:auto; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; margin-top:20px; }
 .detail-page .detail-desktop-vote .ugc-panel { margin-top:12px; }
 .detail-page .detail-desktop-vote [data-ugc-question=comparison] .ugc-choices { grid-template-columns:1fr; }
 .detail-page .detail-desktop-vote [data-ugc-question=comparison] .ugc-choice-button { flex-direction:row; justify-content:start; padding:8px 12px; min-height:48px; gap:12px; font-size:13px; }
 .detail-page .detail-desktop-vote [data-ugc-question=comparison] .ugc-choice-button br { display:none; }
 .detail-page .detail-toc { display:none; }
 .detail-page .detail-summary { grid-template-columns:1fr 1fr; padding:16px; gap:16px; }
 .detail-page .detail-summary .detail-box-title { font-size:16px; }
 .detail-page .detail-summary .bar-row { margin:10px 0; }
 .detail-page .detail-metrics { grid-template-columns:1fr; }
 .detail-page .detail-voice-groups { grid-template-columns:1fr 1fr; }
 .detail-page #sticky-apply { display:flex!important; align-items:center; justify-content:flex-end; gap:12px; min-height:72px; height:auto; position:fixed; z-index:20; bottom:0; left:0; right:0; padding:10px max(32px,calc((100vw - 1020px)/2)); }
 .detail-page #sticky-apply[hidden] { display:none!important; }
 .detail-page #sticky-apply .apply { width:auto; padding:10px 16px; margin:0; min-height:48px; font-size:14px; }
 .detail-page #sticky-apply .sticky-review { display:flex; align-items:center; justify-content:center; min-height:48px; padding:10px 16px; font-size:14px; font-weight:700; text-decoration:none; white-space:nowrap; }
 .detail-page #sticky-apply .sticky-review[hidden] { display:none; }
 .detail-sticky-identity { display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:14px; margin-right:auto; word-break:keep-all; }
 .detail-sticky-identity .hero-rating-line { display:flex; align-items:center; gap:6px; margin:0; }
 .detail-sticky-identity .stars { width:80px; height:16px; }
 .detail-sticky-identity strong { font-weight:500; }
 .detail-page.sticky-enabled { padding-bottom:88px; }
}
@media(min-width:1024px) and (max-width:1199px) {
 .detail-page .row-table.condition-comparison .condition-value { font-size:12px; }
 .detail-page .page-layout { grid-template-columns:minmax(0,1fr) 300px; }
}
@media(max-width:1023px) {
 .detail-page .ugc-vote { padding:12px 8px; }
 .detail-page .ugc-vote .ugc-question-heading { padding:0 4px; }
}
.detail-mobile-application>.apply { margin:12px 0 8px; border-radius:999px; }
.detail-page .detail-mobile-information .detail-information { background:#f1faf5; margin-bottom:12px; }
.detail-page .detail-mobile-information .detail-information dd { font-weight:500; }
.detail-fields a { min-width:44px; }
.detail-page .detail-metrics .metric-label-tail { display:inline; }
.detail-page .detail-metrics .metric-value { display:block; }
.detail-page .detail-metrics .metric-value strong { display:block; }
.detail-summary .detail-box-title .line-icon,.detail-information .detail-box-title .line-icon,.detail-toc .detail-box-title .line-icon { color:var(--brand); }
.detail-page [data-ugc-question=comparison] .ugc-choice-button { letter-spacing:0; }
.detail-page [data-ugc-question=comparison] .ugc-choice-button>span:last-child { font-size:12px; line-height:1.5; }
@media(max-width:1023px) {
 .detail-page [data-ugc-question=comparison] .ugc-choice-button { padding:8px 0; }
}
.detail-brand-title,.detail-title-tail { display:inline-block; }
.detail-metrics { grid-template-columns:minmax(0,1fr); min-width:0; }
.detail-page .detail-metrics .decision-row { min-width:0; }
.detail-page .detail-metrics .metric-label-tail { display:inline-block; }
.detail-brand-title,.detail-title-tail { max-width:100%; }
.detail-title-tail { word-break:normal; word-break:auto-phrase; text-wrap:balance; overflow-wrap:normal; }
.detail-page .detail-numbers[hidden] { display:none; }
.detail-summary:has(.detail-numbers[hidden]) { grid-template-columns:1fr; }
.detail-hero h1 { display:block; }
.detail-page .ugc-result-row { grid-template-columns:minmax(0,1fr) 44px; }
.detail-page .ugc-result-label { grid-column:1 / -1; word-break:keep-all; overflow-wrap:normal; }
@media(max-width:380px) {
 .detail-page .detail-mobile-vote .ugc-panel { padding-inline:0; }
}
@media(max-width:767px) {
 .detail-page .detail-summary { grid-template-columns:minmax(0,1fr); }
 .detail-page .detail-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .detail-page .detail-metrics.detail-metrics-stack { grid-template-columns:minmax(0,1fr); }
}
.detail-page .detail-summary .rating,.detail-page .detail-metrics .decision-row { border:1px solid var(--line); border-radius:12px; box-shadow:0 2px 6px #1c243005; }
.detail-page [data-reader-metric] small { font-weight:400; }
@media(min-width:1024px) {
}
.detail-page h2 { margin-inline:0; }

/* 段階14c: CM1の条件行、CP2の左右配置。指定された赤と既存の線アイコンを使う。 */
.detail-page .apply,.detail-page #sticky-apply .apply,.detail-page #sticky-apply .sticky-review { border-radius:999px; }
.detail-page .cta-box { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; padding:18px; container-type:inline-size; }
.detail-page .cta-box .cta-overview { min-width:0; text-align:center; padding:0 0 2px; }
.cta-name { font-size:32px; font-weight:700; line-height:1.5; text-wrap:balance; margin-bottom:8px; }
.cta-name .top-name-unit { white-space:nowrap; }
.cta-rating { display:flex; align-items:center; justify-content:center; gap:10px; margin:0 0 4px; }
.cta-rating .stars { width:120px; height:24px; }
.cta-rating strong { font-size:28px; font-weight:700; color:var(--brand); line-height:1.4; }
.cta-review-count { font-size:14px; line-height:1.7; text-wrap:balance; }
.cta-review-count>span { white-space:nowrap; font-weight:700; }
.cta-conditions { min-width:0; padding:12px 8px 8px; border-radius:12px; background:#edf8f2; container-type:inline-size; }
.detail-page .cta-conditions .cta-conditions-title { display:flex; align-items:center; gap:8px; margin:0 4px 10px; font-size:15px; font-weight:700; line-height:1.5; color:var(--ink); text-wrap:balance; }
.cta-conditions .cta-conditions-title .line-icon { flex:none; width:22px; height:22px; color:var(--brand); }
.cta-conditions dl { display:grid; gap:4px; margin:0; }
.cta-condition-row { display:grid; grid-template-columns:112px minmax(0,1fr); align-items:start; gap:8px 10px; padding:10px; text-align:left; border-radius:8px; background:#fff; font-size:14px; line-height:1.7; }
.cta-condition-row dt { display:flex; align-items:center; gap:6px; margin:0; font-weight:500; }
.cta-condition-row dt .line-icon { flex:none; color:var(--brand); width:20px; height:20px; margin-top:2px; }
.cta-condition-row dt>span { white-space:nowrap; }
.cta-condition-row dd { min-width:0; margin:0; font-weight:500; word-break:auto-phrase; overflow-wrap:normal; }
.cta-condition-row[data-cta-condition=gold_fees] { grid-template-columns:minmax(0,1fr); gap:6px; }
.cta-methods { display:flex; align-items:center; flex-wrap:wrap; gap:4px; }
.cta-method { display:inline-flex; align-items:center; border-radius:999px; background:#e4f3eb; color:var(--brand); font-size:12px; padding:3px 8px; white-space:nowrap; }
/* 本文に何度も入るので、枠の幅いっぱいにせず中央に小さく置く。 */
.detail-page .cta-box>.apply { justify-self:center; width:auto; min-width:min(100%,320px); max-width:100%; min-height:44px; margin:0; padding:8px 20px; font-size:14px; line-height:1.5; }
.detail-page .cta-box>.cta-note { display:block; margin:-8px 0 0; font-size:12px; line-height:1.7; color:var(--muted); text-align:center; }
@media(min-width:1024px) {
 .detail-page .cta-box { grid-template-columns:minmax(0,34fr) minmax(0,66fr); align-items:center; gap:16px; padding:20px; }
 .detail-page .cta-box .cta-overview { padding:8px 14px 8px 0; border-right:1px solid var(--line); }
 /* 枠は2列の節の中で半分の幅になる。名前の大きさは、画面ではなく枠の幅に合わせる。 */
 .detail-page .cta-box .cta-name { font-size:clamp(22px,5.6cqi,36px); }
 .detail-page .cta-box .cta-name-long { font-size:clamp(18px,4.4cqi,28px); }
 .detail-page .cta-box .cta-rating strong { font-size:36px; }
 .detail-page .cta-box .cta-conditions .cta-conditions-title { color:var(--brand); }
 .detail-page .cta-box .cta-rating { flex-wrap:wrap; gap:4px 8px; }
 .detail-page .cta-box .cta-rating .stars { width:100px; height:20px; }
 .detail-page .cta-box .cta-review-count { font-size:13px; }
 .detail-page .cta-box>.apply,.detail-page .cta-box>.cta-note { grid-column:1/-1; }
 .detail-page .cta-box-sparse { grid-template-columns:minmax(0,1fr); }
 .detail-page .cta-box-sparse .cta-overview { padding:0; border:0; }
}
.cta-condition-short dd { color:var(--brand); font-size:18px; font-weight:700; }
/* 値の列に8文字入らない幅では、項目名の下へ値を置く。 */
@container (width < 286px) {
 .cta-condition-short { grid-template-columns:minmax(0,1fr); gap:6px; }
}
@container (width < 254px) {
 .cta-condition-row:not([data-cta-condition=methods]) { grid-template-columns:minmax(0,1fr); gap:6px; }
}
.cta-value-part { display:block; }

/* 買取店詳細の紹介枠は、店名と評価、行き先だけをまとめる。記事用の枠は従来どおり。 */
.detail-page .cta-box-compact { gap:8px; padding:12px; }
.detail-page .cta-box-compact .cta-overview { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:2px 10px; padding:0; border:0; }
.detail-page .cta-box-compact .cta-name { margin:0; font-size:20px; line-height:1.4; }
.detail-page .cta-box-compact .cta-rating { flex-wrap:nowrap; gap:6px; margin:0; }
.detail-page .cta-box-compact .cta-rating .stars { width:90px; height:18px; }
.detail-page .cta-box-compact .cta-rating strong { font-size:20px; line-height:1.2; }
.detail-page .cta-box-compact .cta-review-count { font-size:12px; line-height:1.5; }
.detail-page .cta-box-compact .cta-action { display:grid; min-width:0; gap:4px; }
.detail-page .cta-box-compact .cta-action>.apply { width:100%; min-width:0; max-width:100%; height:44px; min-height:44px; margin:0; padding:0 12px; font-size:14px; line-height:1.5; }
.detail-page .cta-box-compact .cta-note { margin:0; font-size:12px; line-height:1.7; text-align:center; }
@media(min-width:1024px) {
 .detail-page .cta-box-compact { grid-template-columns:minmax(0,1fr) max-content; align-items:center; gap:20px; padding:12px 16px; }
 .detail-page .cta-box-compact .cta-overview { justify-content:flex-start; }
 .detail-page .cta-box-compact .cta-name { flex-basis:100%; text-align:left; }
 .detail-page .cta-box-compact .cta-action>.apply { width:auto; min-width:320px; padding:8px 20px; white-space:nowrap; overflow-wrap:normal; }
}
/* 見出しから外した枠名も従来の行高と改行を保つ。 */
.detail-box-title { line-height:1.6; word-break:auto-phrase; text-wrap:balance; }

.detail-invitation .detail-invitation-title { line-height:1.6; word-break:auto-phrase; text-wrap:balance; }

.cta-conditions-title { word-break:auto-phrase; }

.article-official [data-fact] { white-space:normal; }
.article-official a,.cooling-off-note a { display:inline-flex; align-items:center; min-height:44px; }

.detail-article .breadcrumb a{min-width:44px}
.detail-article .article-comparison{font-size:14px;table-layout:fixed;width:100%;min-width:0}
.detail-article .article-comparison th,.detail-article .article-comparison td{width:auto;min-width:0;overflow-wrap:anywhere}
.detail-article .detail-method-chip{display:block;min-height:0;padding:0;border-radius:0;background:none;font-size:13px;color:var(--muted);font-weight:400}
@media(min-width:1024px){.detail-article .jump-nav{display:none}}
@media(max-width:767px){
.detail-article .article-comparison{min-width:600px}
.detail-article .article-comparison th:first-child{position:sticky;left:0;width:120px;background:var(--paper,#fff);z-index:1}
.detail-article .article-comparison .current-brand th:first-child{background:var(--current)}
}
