/* ⭐ 2026-08-23 橋本さん「読みにくい・滞在したくない」を受けて全面改訂。
   狙い＝【1】老眼でも読める大きさ 【2】主役は1つ 【3】色は3色 【4】数字を大きく。
   ⛔ カード左の色帯は使わない（AI製に見える定型・メモリ ai-design-fingerprints）。 */
:root{--ink:#1b2a35;--sub:#5a6a78;--line:#dde3e9;--bg:#fff;--accent:#12507d;
 --soft:#f4f7fa;--warm:#a8451f;--warmbg:#fdf4ef;--hi:#fff6d8}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
 font:18px/1.95 -apple-system,"Hiragino Sans","Yu Gothic",sans-serif;
 -webkit-text-size-adjust:100%}
.wrap{max-width:820px;margin:0 auto;padding:22px 20px 60px}
a{color:var(--accent)}
h1{font-size:28px;line-height:1.5;margin:.1em 0 .5em;letter-spacing:.01em}
h2{font-size:22px;line-height:1.5;margin:48px 0 14px;padding-bottom:8px;
 border-bottom:3px solid var(--accent)}
h3{font-size:19px;margin:30px 0 6px}
p{margin:0 0 1.1em}
.promise{color:var(--sub);font-size:16px;margin:-.2em 0 22px}
nav.site{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px;font-size:15px}
nav.site a{margin-right:16px;text-decoration:none}
.crumbs{font-size:14px;color:var(--sub);margin:0 0 16px}
table{border-collapse:collapse;width:100%;margin:18px 0;font-size:16px}
th,td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
th{background:var(--soft);white-space:nowrap;font-weight:600}
tbody tr:nth-child(even) td{background:#fbfcfd}
td.n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:17px}
/* ⭐ 2026-08-29 橋本さん「CSSのセンスが悪い」。
   直した3点＝【1】囲みを減らす（箱が3つ続いて主役が消えていた）
             【2】色を3つに絞る（紺・黄・グレー。オレンジの囲みを廃止）
             【3】文字を読む幅を確保する（囲みの中で行が詰まっていた） */
/* リード＝囲みをやめて1行の事実に。⛔ 箱にしない */
.lead{margin:0 0 22px;font-size:17px;color:var(--sub);
 border-bottom:1px solid var(--line);padding-bottom:16px}
.lead b{color:var(--ink);font-size:1.05em}
/* ⭐ 1ページで強い囲みは「答え」だけ＝主役を1つにする */
.answer{background:var(--hi);border:0;border-left:5px solid #d9b64e;border-radius:0;
 padding:18px 22px;margin:0 0 30px}
.answer h2{margin:0 0 10px;border:0;padding:0;font-size:18px;color:#6b5100;
 letter-spacing:.04em}
.answer p{margin:0 0 .7em;font-size:18px;line-height:1.9}
.answer p:last-child{margin-bottom:0}
/* 「無い」ことの案内＝色を足さず、線だけで示す */
.none{background:none;border:0;border-left:3px solid var(--line);
 border-radius:0;padding:4px 0 4px 16px;margin:18px 0;color:var(--sub);font-size:16px}
.none b{color:var(--ink)}
.tag{display:inline-block;font-size:13px;padding:2px 8px;border-radius:3px;background:var(--soft);
 border:1px solid var(--line);color:var(--sub);margin-left:7px;white-space:nowrap}
.tag.p{background:var(--warmbg);border-color:#e0b8a5;color:var(--warm)}
.note{font-size:15px;color:var(--sub);margin:12px 0 1.4em;line-height:1.85}
.note b{color:var(--ink);font-weight:600}
.cols{columns:3;font-size:15px;margin:12px 0}
.cols a{display:block}
/* 目次＝長い解説ページだけに出す */
.toc{border:1px solid var(--line);border-radius:6px;padding:14px 18px;margin:0 0 30px;font-size:16px}
.toc b{display:block;margin-bottom:6px;font-size:15px;color:var(--sub)}
.toc ol{margin:0;padding-left:1.3em}
.toc li{margin:.25em 0}
/* 流れ図＝矢印で1本道に見せる（画像を使わない） */
.flow{margin:22px 0;padding:0;list-style:none}
.flow li{background:var(--soft);border:1px solid var(--line);border-radius:6px;
 padding:12px 16px;margin:0 0 8px;font-size:17px;position:relative}
.flow li b{color:var(--accent)}
.flow li::after{content:"↓";display:block;text-align:center;color:var(--sub);
 font-size:20px;margin:6px 0 -14px}
.flow li:last-child::after{content:""}
.flow li.hit{background:var(--hi);border-color:#e6cf7a}
/* 2つを見比べる */
/* ⭐ 2026-08-29 橋本さん「2つのカードを浮かしてほしい」 */
.vs{display:flex;gap:16px;margin:22px 0 30px;flex-wrap:wrap}
.vs>div{flex:1 1 280px;background:#fff;border:1px solid var(--line);border-radius:10px;
 padding:20px 22px;box-shadow:0 2px 6px rgba(20,40,60,.07),0 8px 20px rgba(20,40,60,.06);
 transition:transform .15s ease,box-shadow .15s ease}
.vs>div:hover{transform:translateY(-3px);
 box-shadow:0 4px 10px rgba(20,40,60,.10),0 14px 30px rgba(20,40,60,.10)}
.vs h3{margin:0 0 10px;font-size:19px;color:var(--accent);line-height:1.5}
.vs p{margin:0;font-size:16px;line-height:1.9}
.vs p a{display:inline-block;margin-top:10px;font-weight:600;text-decoration:none}
.vs p a:hover{text-decoration:underline}
/* ⭐ トップ＝まず「自分の県を選ぶ」ためのブロック（47行の表を最初に見せない） */
.stats{display:flex;gap:14px;margin:0 0 30px;flex-wrap:wrap}
.stats>div{flex:1 1 200px;border:1px solid var(--line);border-radius:6px;padding:16px 18px;
 background:var(--soft)}
.stats span{display:block;font-size:15px;color:var(--sub);line-height:1.6}
.area{margin:0 0 26px}
.area h3{font-size:16px;color:var(--sub);margin:0 0 8px;font-weight:600}
.area .list{display:flex;flex-wrap:wrap;gap:8px}
.area a{display:inline-block;border:1px solid var(--line);border-radius:5px;
 padding:9px 14px;text-decoration:none;background:#fff;font-size:17px;line-height:1.4}
.area a:hover{border-color:var(--accent);background:var(--soft)}
.area a i{font-style:normal;color:var(--sub);font-size:14px;margin-left:5px}
.area a.zero{color:var(--sub);border-style:dashed;pointer-events:none}
/* ⭐ 2026-08-28 橋本さん「統一された注意点ならポップアップで十分」。
   手本＝seikotsu-in.site（店舗カード内にポップアップ）。本文から注意を全部どかす。 */
button.pop{display:block;width:100%;text-align:left;background:#fff;
 border:1px solid var(--accent);border-radius:6px;padding:15px 18px;margin:6px 0 30px;
 font:inherit;color:var(--accent);cursor:pointer}
button.pop b{display:block;font-size:17px;line-height:1.5}
button.pop span{display:block;font-size:15px;color:var(--sub);margin-top:4px}
button.pop:hover{background:var(--soft)}
button.more{display:inline-block;background:none;border:1px solid var(--line);
 border-radius:5px;padding:7px 13px;margin:2px 0 22px;font:inherit;font-size:15px;
 color:var(--accent);cursor:pointer}
button.more:hover{background:var(--soft)}
dialog{max-width:720px;width:92%;border:0;border-radius:10px;padding:0;
 box-shadow:0 10px 40px rgba(0,0,0,.3);color:var(--ink)}
dialog::backdrop{background:rgba(20,30,40,.55)}
.dh{display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:16px 20px;border-bottom:1px solid var(--line);background:var(--soft);
 position:sticky;top:0}
.dh h2{margin:0;border:0;padding:0;font-size:19px}
button.x{background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:var(--sub)}
.db{padding:18px 22px 26px;font-size:16px;line-height:1.9}
.db h4{font-size:17px;margin:24px 0 6px;color:var(--accent)}
.db h4:first-child{margin-top:0}
.db p{margin:0 0 .9em}
.db ul{margin:.3em 0 1em;padding-left:1.3em}
/* ⭐ 絞り込みバー（手本＝seikotsu-in.site の型） */
.bar{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}
.bar .f{background:#fff;border:1px solid var(--line);border-radius:20px;
 padding:9px 15px;font:inherit;font-size:15px;color:var(--ink);cursor:pointer}
.bar .f i{font-style:normal;color:var(--sub);margin-left:5px;font-size:14px}
.bar .f:hover{border-color:var(--accent)}
.bar .f.on{background:var(--accent);border-color:var(--accent);color:#fff}
.bar .f.on i{color:#cfe0ee}
/* ⭐ 窓の見分け（チェックボックス）＝橋本さん 2026-08-29 */
.chk{border:2px solid var(--accent);border-radius:8px;padding:20px 22px;margin:26px 0}
.chk h2{margin:0 0 10px;border:0;padding:0;font-size:20px}
.chk .q{margin:20px 0 0}
.chk .q>b{display:block;margin-bottom:6px;font-size:17px}
.chk .hint{display:block;font-size:15px;color:var(--sub);margin:0 0 8px;line-height:1.8}
.chk label{display:block;border:1px solid var(--line);border-radius:6px;
 padding:11px 14px;margin:6px 0;cursor:pointer;font-size:17px;background:#fff}
.chk label:hover{background:var(--soft);border-color:var(--accent)}
.chk input{margin-right:9px;transform:scale(1.3)}
.ans{margin:22px 0 0;padding:16px 18px;background:var(--hi);
 border:2px solid #e6cf7a;border-radius:8px;font-size:17px;line-height:1.9}
.ans p{margin:.7em 0 0;font-size:16px}
.big{font-size:34px;font-weight:700;line-height:1.2;color:var(--accent);
 font-variant-numeric:tabular-nums}
footer{margin-top:56px;border-top:1px solid var(--line);padding-top:16px;font-size:15px;color:var(--sub)}
footer a{margin-right:14px;display:inline-block;margin-bottom:6px}
/* ⭐ 2026-08-28 スマホ最適化（橋本さん「ペルソナが利用者なので」）
   読者は寒い・うるさい家の中でスマホを見ている。⇒ 電話とタップのしやすさを最優先。 */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0}
.tw table{margin:0;min-width:520px}
td a[href^="tel:"]{display:inline-block;padding:6px 0;font-weight:600;font-size:17px;
 letter-spacing:.02em}
a[href*="maps"]{display:inline-block;padding:6px 0;font-size:15px}
td a{word-break:break-all}
@media(max-width:600px){
 body{font-size:17px;line-height:1.9}
 .wrap{padding:14px 14px 48px}
 h1{font-size:21px;line-height:1.5}
 h2{font-size:19px;margin:36px 0 12px}
 h3{font-size:18px;margin:26px 0 4px}
 .lead,.answer p{font-size:17px}
 .answer{padding:16px 16px}
 .cols{columns:1}
 /* 数字3つは縦に積む（横に潰さない） */
 .stats{gap:10px}
 .stats>div{flex:1 1 100%;padding:14px 16px;display:flex;align-items:baseline;gap:12px}
 .stats span{margin:0}
 .big{font-size:30px}
 /* 県を選ぶボタン＝指で押せる大きさに */
 .area a{padding:12px 14px;font-size:17px;flex:1 1 46%;text-align:center}
 .area .list{gap:9px}
 /* 表は画面外へはみ出させず、枠の中で横スクロール */
 table,th,td{font-size:15px}
 th,td{padding:9px 10px}
 /* 店のカード＝見出しと値を縦に積む（横2列だと文字が潰れる） */
 h3+table th,h3+table td{display:block;width:100%;border:0;padding:2px 0}
 h3+table th{background:none;color:var(--sub);font-size:14px;padding-top:10px;white-space:normal}
 h3+table{border:1px solid var(--line);border-radius:6px;padding:10px 14px}
 h3+table tr{display:block;border-bottom:1px solid var(--line)}
 h3+table tr:last-child{border-bottom:0}
 td a[href^="tel:"]{font-size:19px;padding:8px 0}
 /* ポップアップ＝画面の下から出す */
 dialog{width:100%;max-width:100%;max-height:88vh;margin:auto auto 0;
  border-radius:12px 12px 0 0}
 .db{padding:16px 16px 30px;font-size:16px}
 .dh h2{font-size:17px}
 button.pop{padding:13px 15px}
 button.pop b{font-size:17px}
 button.more{width:100%;text-align:center;padding:11px}
 .vs>div{flex:1 1 100%}
}
.mapbtn{display:inline-block;margin:.3em .2em .2em 0;padding:.45em 1em;
  font-size:.95em;font-weight:700;color:#1a4a7a;background:#eef4fa;
  border:1px solid #b9d2e8;border-radius:4px;cursor:pointer}
.mapbtn:hover{background:#e0ecf7}
.mapbox{margin:.5em 0;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.mapbox iframe{display:block;width:100%;height:260px;border:0}
.asp{margin:1.6em 0;padding:1em 1.1em;border:1px solid var(--line);border-radius:6px;background:#fafbfc}
.asp h2{margin:.2em 0 .5em;font-size:1.05em;border:0;padding:0}
.asp .pr{display:inline-block;margin:0 0 .3em;padding:.1em .6em;font-size:.8em;font-weight:700;
  color:#555;background:#e8e8e8;border-radius:3px}
.asp .asplink{margin:.8em 0 .4em;font-weight:700}
