/* 比較デスク 共通スタイル。各カテゴリの既存CSSの後に読み込む。外部フォント・画像なし。 */
:root{--hd-ink:#16212b;--hd-sub:#51616f;--hd-line:#d9e1e7;--hd-bg:#f6f8f9;--hd-card:#fff;--hd-accent:#0f5c7a;--hd-accent-ink:#fff;--hd-note:#eef4f7;--hd-pr:#7a4b00;--hd-pr-bg:#fff3d6;--hd-max:1120px}
.hd-global{background:#fff;border-bottom:1px solid var(--hd-line);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif}
.hd-global-in{max-width:var(--hd-max);margin:0 auto;padding:8px 16px;display:flex;align-items:center;gap:16px}
.hd-global .hd-brand{font-weight:800;font-size:1rem;letter-spacing:.04em;color:var(--hd-ink);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.hd-cats{display:flex;flex-wrap:nowrap;margin:0;gap:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;min-width:0;flex:1}
.hd-global .hd-cats a{flex:none;display:inline-flex;align-items:center;min-height:44px;color:var(--hd-sub);text-decoration:none;font-size:.8rem;line-height:1.3;padding:0 10px;border-radius:6px;white-space:nowrap}
.hd-global .hd-cats a:hover{background:var(--hd-note);color:var(--hd-ink)}
.hd-global .hd-cats a[aria-current]{color:var(--hd-accent);font-weight:700;box-shadow:inset 0 -2px var(--hd-accent)}
.hd-global a:focus-visible,.hd-footer a:focus-visible,.hd-page a:focus-visible,.hd-ad-notice a:focus-visible,.hd-crumbs a:focus-visible{outline:3px solid #7a4b00;outline-offset:2px;box-shadow:0 0 0 5px #fff}
.hd-ad-notice{max-width:var(--hd-max);margin:10px auto 0;padding:10px 16px;font-size:1rem;line-height:1.7;color:var(--hd-ink);background:var(--hd-pr-bg);border:1px solid #e3c680;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif}
.hd-ad-label{display:inline-block;font-weight:700;color:#fff;background:var(--hd-pr);border-radius:4px;padding:0 8px;margin-right:.6em}
.hd-ad-notice a{margin-left:.5em;white-space:nowrap;color:var(--hd-accent);text-decoration:underline;display:inline-block;padding:10px 0}
@media (max-width:1152px){.hd-ad-notice{margin-left:16px;margin-right:16px}}
.hd-crumbs{max-width:var(--hd-max);margin:10px auto 0;padding:0 16px;font-size:.85rem;color:var(--hd-sub);display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.hd-crumbs a{color:var(--hd-accent);text-decoration:underline;display:inline-block;padding:10px 0}
.hd-pr{display:inline-block;font-size:max(14px,.875rem);font-weight:700;letter-spacing:.04em;color:var(--hd-pr);background:var(--hd-pr-bg);border:1px solid #e3c680;border-radius:4px;padding:0 7px;margin-right:8px;line-height:1.6;vertical-align:middle}
.hd-ad-block{display:block;margin:14px 0;padding:10px 12px;background:#fffdf6;border:1px solid #e3c680;border-radius:8px;font-size:1rem;line-height:1.7}
.hd-src-hint{color:var(--hd-sub);font-size:.75em;margin-left:.3em;overflow-wrap:anywhere}
.hd-footer{margin-top:48px;background:#fff;border-top:1px solid var(--hd-line);color:var(--hd-sub);font-size:.8rem;line-height:1.8;max-width:none;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif}
.hd-footer-in{max-width:var(--hd-max);margin:0 auto;padding:28px 16px 36px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
.hd-footer .hd-footer-in h2{font-size:.85rem;line-height:1.5;margin:0 0 8px;padding:0;border:0;color:var(--hd-ink)}
.hd-footer .hd-footer-in ul{list-style:none;margin:0;padding:0}
.hd-footer .hd-footer-in nav{display:block;margin:0}
.hd-footer .hd-footer-in li a{display:inline-flex;align-items:center;min-height:44px;color:var(--hd-sub);text-decoration:underline}
.hd-footer .hd-footer-notes p{margin:0 0 10px}
.hd-footer .hd-ad-notice{grid-column:1/-1;max-width:none;margin:0;padding:12px 0 0;background:none;border:0;border-top:1px solid var(--hd-line);border-radius:0;font-size:.875rem}
.hd-footer .hd-footer-in .hd-copy{grid-column:1/-1;margin:0;padding-top:14px;border-top:1px solid var(--hd-line);font-size:.75rem}
@media (max-width:720px){.hd-footer-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hd-footer-notes{grid-column:1/-1}.hd-global-in{padding:6px 12px;gap:10px}.hd-global .hd-cats a[aria-current]{order:-1}}
/* 比較トレイ（画面下に固定）の下にフォーカス位置が隠れないようにする。引越しは画像枠の高さを戻す。 */
html{scroll-padding-bottom:160px}
.identity{min-height:0}
/* 一覧表：狭い画面で横にはみ出さない */
.table-scroll,.table-wrap,.table-wrapper{max-width:100%}
img{max-width:100%;height:auto}
/* ---- ルートページ・方針ページ・ブログ ---- */
.hd-page{margin:0;background:var(--hd-bg);color:var(--hd-ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;line-height:1.85;font-size:16px;-webkit-text-size-adjust:100%}
.hd-page *{box-sizing:border-box}
.hd-page a{color:var(--hd-accent);text-underline-offset:3px}
.hd-skip{position:absolute;left:-999px}.hd-skip:focus{left:8px;top:8px;background:#fff;padding:8px 12px;z-index:10}
.hd-main{max-width:var(--hd-max);margin:0 auto;padding:20px 16px 8px}
.hd-narrow{max-width:760px}
.hd-page h1{font-size:clamp(1.5rem,4.4vw,2rem);line-height:1.4;margin:10px 0 12px}
.hd-page h2{font-size:1.25rem;line-height:1.5;margin:36px 0 12px;padding-top:6px;border-top:1px solid var(--hd-line)}
.hd-page h3{font-size:1.05rem;margin:24px 0 8px}
.hd-page p{margin:0 0 16px}
.hd-lead{color:var(--hd-sub);font-size:1rem}
.hd-meta{color:var(--hd-sub);font-size:.82rem;margin:0 0 16px}
.hd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;list-style:none;padding:0;margin:16px 0}
.hd-card{background:var(--hd-card);border:1px solid var(--hd-line);border-radius:12px;padding:16px}
.hd-card h2,.hd-card h3{border:0;margin:0 0 6px;padding:0;font-size:1.05rem}
.hd-card p{margin:0;color:var(--hd-sub);font-size:.88rem;line-height:1.7}
.hd-card a{text-decoration:none}.hd-card a:hover{text-decoration:underline}
.hd-tag{display:inline-block;font-size:.78rem;color:var(--hd-sub);background:var(--hd-note);border-radius:4px;padding:1px 8px;margin-right:6px}
.hd-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0 20px;border:1px solid var(--hd-line);border-radius:10px;background:#fff}
.hd-table{border-collapse:collapse;width:100%;font-size:.9rem}
.hd-table th,.hd-table td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--hd-line)}
.hd-table tr:last-child th,.hd-table tr:last-child td{border-bottom:0}
.hd-table th[scope=row]{width:9.5em;background:#f3f6f8;font-weight:600}
.hd-table thead th{background:#f3f6f8;white-space:nowrap}
.hd-note{background:var(--hd-note);border-left:3px solid #6b9ab1;border-radius:6px;padding:12px 14px;font-size:.88rem;margin:16px 0}
.hd-view{border-left:3px solid #c9b27a;padding-left:12px}
.hd-view::before{content:"編集部の見方";display:block;font-size:.72rem;color:#7a6a3a;font-weight:700}
.hd-ref{font-size:.72rem;vertical-align:super;line-height:0;margin-left:2px;text-decoration:none}
.hd-sources{font-size:.86rem;padding-left:1.4em}
.hd-sources li{margin:8px 0;overflow-wrap:anywhere}
.hd-sources small{display:block;color:var(--hd-sub)}
.hd-toc{background:#fff;border:1px solid var(--hd-line);border-radius:10px;padding:12px 16px;margin:16px 0}
.hd-toc ol{margin:6px 0 0;padding-left:1.4em}
.hd-shop{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:12px 0}
.hd-shop>li>a{display:inline-block;min-height:44px;padding:9px 16px;border:1px solid var(--hd-accent);border-radius:8px;text-decoration:none;font-weight:600;background:#fff}
.hd-faq dt{font-weight:700;margin-top:16px}.hd-faq dd{margin:4px 0 0}
.hd-search{display:block;margin:16px 0}
.hd-search input{width:100%;max-width:420px;min-height:44px;padding:8px 12px;border:1px solid #99aebc;border-radius:8px;font:inherit}
.hd-list{list-style:none;padding:0;margin:16px 0;display:grid;gap:12px}
.hd-list article{background:#fff;border:1px solid var(--hd-line);border-radius:12px;padding:16px}
.hd-list h2{border:0;margin:4px 0 6px;padding:0;font-size:1.1rem}
.hd-list p{margin:0;color:var(--hd-sub);font-size:.9rem}
.hd-figure{margin:16px 0;background:#fff;border:1px solid var(--hd-line);border-radius:10px;padding:12px}
.hd-figure svg{display:block;max-width:100%;height:auto}
.hd-figure figcaption{font-size:.78rem;color:var(--hd-sub);margin-top:6px}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.hd-global,.hd-footer nav,.hd-ad-notice a{display:none}}
a.hd-tag{padding:10px 10px;text-decoration:none}
.hd-cat-mark{display:inline-block;vertical-align:middle;margin-right:8px;border-radius:8px;background:#fff;flex:none}
.hd-card .hd-cat-mark{display:block;margin:0 0 8px}

/* ==== ジャンル別の表示調整：構造（比較表・検索・並べ替え・詳細・内部リンク）は変えず、色・文字・罫線・余白を整える ==== */
/* 1. ジャンルの識別色。primary=帯・ボタン・リンク（白地で 6.9:1 以上）、wash=表見出しの地、edge=強調罫線。 */
:root{--hd-sub:#4d5d6a;--hd-line-strong:#c5d0d8;
--g-loan:#173b5e;--g-cards:#43357a;--g-internet:#2a4a8c;--g-clinics:#7a2f58;--g-careers:#1c5c40;--g-insurance:#7a452b;--g-water:#0f6276;--g-investing:#4d5c1e;--g-moving:#a8242f;--g-blog:#0f5c7a}
body.nagi-theme-cardloan{--nagi-primary:var(--g-loan);--nagi-primary-strong:#0f2a45;--nagi-secondary:#2f6f9c;--nagi-wash:#eef3f8;--nagi-edge:#b9cbdb}
body.nagi-theme-credit_cards{--nagi-primary:var(--g-cards);--nagi-primary-strong:#2f2459;--nagi-secondary:#6a5bb0;--nagi-wash:#f2f0fa;--nagi-edge:#cbc4e6}
body.nagi-theme-internet{--nagi-primary:var(--g-internet);--nagi-primary-strong:#1c3468;--nagi-secondary:#4f72c4;--nagi-wash:#eef2fb;--nagi-edge:#bccaea}
body.nagi-theme-clinics{--nagi-primary:var(--g-clinics);--nagi-primary-strong:#5a2040;--nagi-secondary:#a9557f;--nagi-wash:#f9eff4;--nagi-edge:#e3c2d2}
body.nagi-theme-careers{--nagi-primary:var(--g-careers);--nagi-primary-strong:#12432d;--nagi-secondary:#2a7d58;--nagi-wash:#edf6f1;--nagi-edge:#b7d8c6}
body.nagi-theme-insurance{--nagi-primary:var(--g-insurance);--nagi-primary-strong:#5a301c;--nagi-secondary:#a8623f;--nagi-wash:#faf2ed;--nagi-edge:#e5c9b8}
body.nagi-theme-water_servers{--nagi-primary:var(--g-water);--nagi-primary-strong:#094857;--nagi-secondary:#197d94;--nagi-wash:#eaf6f9;--nagi-edge:#b3d9e3}
body.nagi-theme-investing{--nagi-primary:var(--g-investing);--nagi-primary-strong:#374313;--nagi-secondary:#66772a;--nagi-wash:#f3f6e8;--nagi-edge:#cfd9ae}
/* 各カテゴリの既存CSSは :root で別名を解決しているため、body で定義し直して識別色を届ける。 */
body.nagi-site{--navy:var(--nagi-primary);--blue:var(--nagi-primary);--teal:var(--nagi-primary);--accent:var(--nagi-primary);--brand:var(--nagi-primary);--green:var(--nagi-primary);--pale:var(--nagi-wash);--tint:var(--nagi-wash);--light:var(--nagi-wash);--nagi-text-accent:var(--nagi-primary);--hd-accent:var(--nagi-primary);--ink:#1b2a35;--muted:#52626e}
body.nagi-site.nagi-theme-water_servers{--nagi-text-accent:var(--nagi-primary)}
/* 共通ナビ：カテゴリ名の前に識別色の印。入口ページのカードは上辺に同じ色。 */
.hd-global .hd-cats a[aria-current="page"]::before{content:"";flex:none;width:7px;height:7px;border-radius:2px;margin-right:6px;background:var(--hd-line-strong)}
.hd-cats a[href$="loan/"]::before{background:var(--g-loan)}.hd-cats a[href$="cards/"]::before{background:var(--g-cards)}.hd-cats a[href$="internet/"]::before{background:var(--g-internet)}
.hd-cats a[href$="clinics/"]::before{background:var(--g-clinics)}.hd-cats a[href$="careers/"]::before{background:var(--g-careers)}.hd-cats a[href$="insurance/"]::before{background:var(--g-insurance)}
.hd-cats a[href$="water/"]::before{background:var(--g-water)}.hd-cats a[href$="investing/"]::before{background:var(--g-investing)}.hd-cats a[href$="moving/"]::before{background:var(--g-moving)}.hd-cats a[href$="blog/"]::before{background:var(--g-blog)}
.hd-grid .hd-card{border-top:3px solid var(--hd-line-strong);border-radius:10px}
.hd-card:has(>h2>a[href$="loan/"]){border-top-color:var(--g-loan)}.hd-card:has(>h2>a[href$="cards/"]){border-top-color:var(--g-cards)}.hd-card:has(>h2>a[href$="internet/"]){border-top-color:var(--g-internet)}
.hd-card:has(>h2>a[href$="clinics/"]){border-top-color:var(--g-clinics)}.hd-card:has(>h2>a[href$="careers/"]){border-top-color:var(--g-careers)}.hd-card:has(>h2>a[href$="insurance/"]){border-top-color:var(--g-insurance)}
.hd-card:has(>h2>a[href$="water/"]){border-top-color:var(--g-water)}.hd-card:has(>h2>a[href$="investing/"]){border-top-color:var(--g-investing)}.hd-card:has(>h2>a[href$="moving/"]){border-top-color:var(--g-moving)}

/* 2. 文字。書体と基準の大きさをカテゴリ間でそろえ、12px未満の表示をなくす。 */
:root:has(body.nagi-site){font-size:100%}
body.nagi-site{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic UI","Yu Gothic",Meiryo,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.nagi-site :is(h1,h2,h3){color:var(--hd-ink);font-weight:700;letter-spacing:.02em}
.nagi-site :is(.numeric-cell,.price,td strong){font-variant-numeric:tabular-nums}
/* カードローンの一覧を、クレジットカード・回線と同じ文字の大きさにそろえる（13px・14px）。 */
@media(min-width:761px){body.nagi-theme-cardloan :is(input,select){font-size:14px}}
body.nagi-theme-cardloan :is(label,.compact-controls label,.advanced-grid .checkbox-label,.filter-actions summary,.filter-actions summary span){font-size:13px}
body.nagi-theme-cardloan :is(.provider-name,.type-badge,.status-badge,.status-badge small,.verification,.rate-basis-label){color:#233f53;font-size:13px}
body.nagi-theme-cardloan :is(#results-body td,.comparison-grid,.comparison-grid td,.comparison-grid tbody th,.comparison-grid thead th,.comparison-grid thead a,.comparison-grid small,.comparison-grid .text-button){font-size:14px}
body.nagi-theme-cardloan #results-body td:before{color:#233f53;font-size:13px}
body.nagi-theme-cardloan :is(.select-button,.selected-chip,#compare-button,#clear-selection,#pagination button,.filter-actions #reset,.comparison-grid caption){font-size:13px}
body.nagi-theme-cardloan .comparison-grid .different th:after{font-size:13px}
body.nagi-theme-cardloan :is(.sources span,.selection-feedback,.numeric-cell small){font-size:max(12px,.75rem)}
.nagi-site .compact-hero .data-stamp{font-size:max(12px,.75rem)!important}
@media (max-width:600px){body.nagi-theme-cardloan :is(.page-number,.table-help,.numeric-warning,.usage-notice summary,.catalog .section-heading #results-count){font-size:max(12px,.75rem)}}

/* 3. 表と罫線。枠はうすい灰、見出し行の下に識別色の線、状態の列が1文字幅に縮まないようにする。 */
.nagi-site .table-scroll{border-color:var(--hd-line-strong);border-radius:10px}
.nagi-site table:not(.comparison-grid)>thead th{border-bottom:2px solid var(--nagi-edge)}
.nagi-site tbody>tr>:is(th,td){border-bottom-color:var(--hd-line)}
@media (min-width:601px){
body.nagi-site:is(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) #results-body td:has(>:is(.verification,.status-badge)){min-width:8.5em;max-width:none}
body.nagi-theme-cardloan #results-body td:nth-child(6),body.nagi-theme-credit_cards #results-body td:nth-child(5),body.nagi-theme-internet #results-body td:nth-child(5){min-width:8.5em;max-width:none}
body.nagi-theme-internet #results-body td:nth-child(6){min-width:7em;max-width:none}
}
@media (min-width:761px){body.nagi-theme-clinics #results-table tbody td:nth-child(7){min-width:8em}}
@media (min-width:701px){body.nagi-theme-water_servers #results td:nth-child(5){min-width:5.5em}}

/* 4. 既存CSSに直接書かれた青・緑の地色を、識別色の系統へ寄せる（意味のある色＝確認済みの緑・注意の黄は変えない）。 */
:where(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) button:hover:where(:not(:disabled)){background:var(--nagi-primary-strong)}
:where(.nagi-theme-clinics) button:hover:where(:not(:disabled,.secondary,.text-button,.selected-chip)){background:var(--nagi-primary-strong)}
body.nagi-theme-clinics :is(.text-button,.selected-chip,button.secondary):hover:not(:disabled){background:var(--nagi-wash)}
body.nagi-theme-clinics .selected-chip{color:var(--nagi-primary)}
:where(.nagi-theme-careers) button:hover:where(:not(:disabled)){background:var(--nagi-wash)}
.nagi-site :is(button.primary,#compare-button):hover:not(:disabled){background:var(--nagi-primary-strong);border-color:var(--nagi-primary-strong)}
body:is(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) a.button{color:#fff}
body:is(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) .button:hover{background:var(--nagi-primary-strong)}
.nagi-site #compare-open:not(:disabled){background:var(--nagi-primary);border-color:var(--nagi-primary)}
body:is(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) .select-button:not([aria-pressed=true]){border-color:var(--nagi-edge)}
body:is(.nagi-theme-cardloan,.nagi-theme-credit_cards,.nagi-theme-internet) .select-button:not([aria-pressed=true]):hover{background:var(--nagi-wash)}
.nagi-site .selected-chip{border-color:var(--nagi-edge)}
.nagi-site .selected-chip:hover{background:var(--nagi-edge)}
.nagi-site #comparison-tray{border-color:var(--nagi-edge)}
.nagi-site :is(#tray,#selection-tray,.tray){background:#fff;border-top-color:var(--nagi-secondary)}
.nagi-site:not(.nagi-theme-clinics) :is(.notice,.disclaimer,.editorial-note):not(.hd-note){background:var(--nagi-wash);border-left-color:var(--nagi-secondary)}
body.nagi-site:is(.nagi-theme-insurance,.nagi-theme-investing) .notice{background:#fff6e8;border-left-color:#9d5800}
.nagi-site:not(.nagi-theme-clinics) .verification{background:var(--nagi-wash);color:#2b3d49}
.nagi-site :is(.badge,.category-label,#selection-summary button){background:var(--nagi-wash)}
.nagi-site .comparison-grid .different td,.nagi-site .comparison-table tr[data-comparison=different],.nagi-site #compare-table [data-comparison-state=different],.nagi-site #results tr.selected{background:var(--nagi-wash)}
.nagi-site .comparison-grid .different th:after,.nagi-site .difference-marker{color:var(--nagi-primary)}
/* 比較表の行見出し。「未確認」行の黄色い地（既存の指定）が勝つよう、詳細度を上げない。 */
:where(body.nagi-theme-careers) .comparison-table th:first-child,:where(body.nagi-theme-insurance,body.nagi-theme-investing) .comparison th:first-child{background:var(--nagi-wash)}
body.nagi-theme-credit_cards .compact-controls{border-top-color:var(--nagi-secondary)}
body.nagi-theme-clinics :is(#results-table thead th,.comparison-grid thead th,.detail-table th,.static-table th){background:var(--nagi-wash)}
body.nagi-theme-clinics .comparison-grid th:first-child{background:#f6f7f8}
body.nagi-theme-clinics .comparison-grid thead th:first-child{background:var(--nagi-wash)}
body.nagi-theme-clinics .risk-note{background:#f6f7f8;border-left-color:var(--hd-line-strong)}
body.nagi-theme-clinics .select-button[aria-pressed=true]{color:var(--nagi-primary);background:var(--nagi-wash)}
body.nagi-theme-clinics :is(input,select){border-color:#6b7b86}
body.nagi-theme-clinics button:disabled{background:#e9edf0;border-color:#b7c4cd;color:#52626e}

/* 5. ルート・方針・ブログのページ。見出しは左に識別色の帯、カードと表の角丸をそろえる。 */
.hd-main>h2{border-top:0;border-left:4px solid var(--hd-accent);padding:2px 0 2px 12px;margin:40px 0 14px}
.hd-list article{border-radius:10px}
.hd-table-wrap{border-color:var(--hd-line-strong)}
.hd-table thead th{border-bottom:2px solid #b9d3de}
.hd-toc{border-color:var(--hd-line-strong)}

/* 6. スマホ：横に流れるカテゴリナビの右端をぼかし、続きがあることを示す。 */
@media (max-width:720px){.hd-cats{padding-right:28px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent)}}

/* 操作状態と補助情報の可読性。選択済みの配色や医療区分の色は上書きしない。 */
.hd-ref,.hd-view::before,.hd-sources small,.kind-label{font-size:max(12px,.75rem)}
body.nagi-theme-internet #results-body td:before{font-size:13px;color:#233f53}
body.nagi-theme-internet .comparison-grid .different th:after{font-size:13px}
body.nagi-theme-internet :is(.filter-actions #reset,.provider-name,.type-badge,.status-badge,.status-badge small,.verification,.rate-basis-label,.selection-feedback,.numeric-cell small){font-size:13px}
@media(max-width:600px){body:is(.nagi-theme-cardloan,.nagi-theme-credit_cards) :is(.detail-table th,.nagi-condition-source){font-size:max(12px,.75rem)}}

body.nagi-theme-internet #selection-status{font-size:13px!important}
@media(max-width:600px){body.nagi-theme-internet :is(.page-number,.usage-notice summary,.advanced-grid .table-help,.catalog .section-heading #results-count){font-size:max(12px,.75rem)}}

body.nagi-theme-internet :is(.filter-actions summary span,.sources span){font-size:13px}
@media(max-width:600px){body.nagi-theme-internet :is(#clear-selection,.comparison-grid caption,.filter-actions summary){font-size:max(13px,.8125rem)}}


/* V15: page-scoped surfaces; controls and advertising are untouched. */
body[data-visual] { background:#f9f6ef; }
body[data-visual] .hd-global { background:var(--visual-title); border-bottom:3px solid var(--visual-ink); }
body[data-visual] .hd-brand { color:var(--visual-ink); }
body[data-visual] .hd-cats a[aria-current="page"] { color:var(--visual-ink); border-bottom:2px solid var(--visual-ink); }
body[data-visual] h1 { color:#202b33; background:var(--visual-title); border-left:6px solid var(--visual-ink); padding:16px 20px; border-radius:10px; }
body[data-visual] main h2 { color:var(--visual-ink); background:var(--visual-sub); border:0; border-left:4px solid var(--visual-ink); border-radius:4px; padding:9px 12px; }
body[data-visual] main h3 { color:var(--visual-ink); }
body[data-visual] .hd-main.hd-narrow { background:#fffdf8; border-radius:12px; padding:24px; box-sizing:border-box; }
body[data-visual-template="T-RECORD"] main h2 { background:transparent; border:0; }
.hd-editorial-photo { margin:20px 0 28px; }
.hd-editorial-photo img { display:block; width:100%; height:auto; aspect-ratio:3/2; border-radius:12px; background:#f1e7d3; }
.hd-editorial-photo figcaption { color:#4d584e; font-size:14px; line-height:1.7; margin-top:8px; }
.hd-editorial-photo--inline { max-width:560px; margin:28px auto; }
@media(max-width:600px) {
 body[data-visual] h1 { padding:12px 14px; }
 body[data-visual] .hd-main.hd-narrow { padding:16px; }
}

body[data-visual="blog"]{--visual-ink:#0f5c7a;--visual-title:#eaf2f4;--visual-sub:#eaf2f4}
body[data-visual="blog:daily"]{--visual-ink:#1f5a66;--visual-title:#e6f0f1;--visual-sub:#edf4f5}
body[data-visual="blog:entertainment"]{--visual-ink:#4a3f86;--visual-title:#ebe9f6;--visual-sub:#f3f2fa}
body[data-visual="blog:gadget"]{--visual-ink:#34507f;--visual-title:#e9eef8;--visual-sub:#f1f4fa}
body[data-visual="blog:goods"]{--visual-ink:#6b3f6e;--visual-title:#f3eaf3;--visual-sub:#f8f2f8}
body[data-visual="blog:kids"]{--visual-ink:#7a5a10;--visual-title:#f6edd3;--visual-sub:#faf5e4}
body[data-visual="blog:kitchen"]{--visual-ink:#304a3d;--visual-title:#f1e7d3;--visual-sub:#e8eee3}
body[data-visual="cards"]{--visual-ink:#43357a;--visual-title:#f2f0fa;--visual-sub:#f2f0fa}
body[data-visual="careers"]{--visual-ink:#1c5c40;--visual-title:#edf6f1;--visual-sub:#edf6f1}
body[data-visual="clinics"]{--visual-ink:#7a2f58;--visual-title:#f9eff4;--visual-sub:#f9eff4}
body[data-visual="common"]{--visual-ink:#0f5c7a;--visual-title:#eaf2f4;--visual-sub:#eaf2f4}
body[data-visual="home"]{--visual-ink:#0f5c7a;--visual-title:#eaf2f4;--visual-sub:#eaf2f4}
body[data-visual="insurance"]{--visual-ink:#7a452b;--visual-title:#faf2ed;--visual-sub:#faf2ed}
body[data-visual="internet"]{--visual-ink:#2a4a8c;--visual-title:#eef2fb;--visual-sub:#eef2fb}
body[data-visual="investing"]{--visual-ink:#4d5c1e;--visual-title:#f3f6e8;--visual-sub:#f3f6e8}
body[data-visual="loan"]{--visual-ink:#173b5e;--visual-title:#eef3f8;--visual-sub:#eef3f8}
body[data-visual="moving"]{--visual-ink:#a8242f;--visual-title:#fbf0f0;--visual-sub:#fbf0f0}
body[data-visual="water"]{--visual-ink:#0f6276;--visual-title:#eaf6f9;--visual-sub:#eaf6f9}

/* 絵と小アイコン。飾りは文字の色に従い、広告の発行コードには当てない。 */
.hd-sprite{position:absolute;width:0;height:0;overflow:hidden}
.hd-ic{display:inline-block;width:1.15em;height:1.15em;flex:none;margin-right:.4em;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.hd-ill{flex:none;object-fit:contain;pointer-events:none}
svg.hd-ill{fill:none;stroke:var(--visual-ink,#0f5c7a);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.hd-ill--logo{width:28px;height:28px;margin-right:8px}
.hd-ill--title{float:right;width:80px;height:80px;margin:-4px 0 0 14px}
.hd-ill--bar{width:44px;height:44px}
.hd-ill--card{width:56px;height:56px}
.hd-ill--mini{float:right;width:40px;height:40px;margin:0 0 6px 10px}
.hd-ill--inline{display:inline-block;width:24px;height:24px;margin-right:6px;vertical-align:middle}
/* 縦に積むラベル（flex・grid）でも、絵と文字を同じ行に保つ。 */
.hd-ic-label{display:inline-block}
th>.hd-ic{width:1em;height:1em;margin-right:.25em}
body[data-visual] h1{display:flow-root}
/* 手描き風：角を少し不ぞろいにする（色面は増やさない）。 */
body[data-visual] h1{border-radius:14px 10px 13px 9px/10px 13px 9px 14px}
body[data-visual] :is(.hd-card,.hd-list article,.hd-toc){border-radius:14px 10px 13px 9px/10px 13px 9px 14px}
/* ロゴの絵の分だけ、パソコン幅のナビの余白を詰める（項目が横にはみ出さないため）。 */
@media (min-width:721px){body[data-visual] .hd-global .hd-cats a{padding:0 5px}}
@media (max-width:600px){
.hd-ill--title{width:56px;height:56px;margin:-2px 0 0 10px}
.hd-ill--logo{width:24px;height:24px;margin-right:6px}
.hd-ill--mini{width:32px;height:32px}
.filter-actions #reset .hd-ic{display:none}
}
@media (max-width:760px){.hd-ill--bar{width:36px;height:36px}}
@media print{.hd-ill,.hd-card .hd-ill,.hd-ic{display:none}}
