/* くらしの制度（京都府版）v2 — 利用者の多いサイト（SUUMO・食べログ・じゃらん・価格.com・Yahoo!ニュース）の型に合わせた見た目。
   白の地・1pxの罫線・薄い灰色の帯。角丸は6px。リンクは青、金額は赤橙の太字。字間は詰めない（数字も +0.02em）。
   主の色（柿）はヘッダーの線・ボタン・選んでいるタブだけ。 */
:root{
  --brand:#D9541A; --brand-d:#B9430F; --brand-bg:#C2410C; --brand-tx:#B9430F; --link:#1A5DB5; --num:#D2381B; --ink:#222; --text:#333; --sub:#666; --mute:#767676;
  --line:#DDD; --line2:#E8E8E8; --band:#F5F5F2; --head:#F2F1EC; --hl:#FFF6D9; --ok:#1E8A55;
  --r:6px; --wrap:1120px; --gut:24px;
  --ja:"Noto Sans JP",system-ui,-apple-system,"Hiragino Sans","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
}
@media (max-width:599px){:root{--gut:12px}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font-family:var(--ja);font-size:14px;line-height:1.7;letter-spacing:.02em;word-break:keep-all;overflow-wrap:anywhere}
h-nb{white-space:nowrap}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0;padding:0}
ul,ol{list-style:none}
h1,h2,h3{color:var(--ink);font-weight:700;letter-spacing:.03em}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
img,svg{display:block;max-width:100%}
table{border-collapse:collapse}
button,select,input{font:inherit;color:inherit;letter-spacing:inherit}
.wrap{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut)}
.num{font-weight:700;letter-spacing:.02em;font-feature-settings:"tnum"}
.yen{color:var(--num);font-weight:700;letter-spacing:.02em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- 最上部の帯・ヘッダー・分類の帯 ---------- */
.strip{background:var(--band);border-bottom:1px solid var(--line2);font-size:12px;color:var(--sub)}
.strip .wrap{display:flex;justify-content:space-between;gap:16px;height:30px;align-items:center}
.hd{border-top:3px solid var(--brand);border-bottom:1px solid var(--line);background:#fff}
.hd .wrap{display:flex;align-items:center;gap:28px;height:68px}
.logo{display:flex;align-items:center;gap:8px;flex:none;color:var(--ink)}
.logo svg{display:block;width:30px;height:30px;flex:none}   /* 家の印（2026-11-12 ポケット役場。大きさを決めないと印が枠いっぱいに広がる） */
.logo:hover{text-decoration:none}
.logo b{font-size:22px;font-weight:900;letter-spacing:.06em;color:var(--brand);white-space:nowrap;line-height:1}
.logo span{font-size:15px;font-weight:700;letter-spacing:.08em}
.logo small{font-size:12px;font-weight:700;color:var(--sub);border:1px solid var(--line);border-radius:3px;padding:1px 6px;margin-left:2px}
.sf{flex:1;display:flex;max-width:600px;border:2px solid var(--brand);border-radius:var(--r);overflow:hidden;height:42px}
.sf input{flex:1;min-width:0;border:0;padding:0 14px;font-size:14px;outline:none;background:transparent;-webkit-appearance:none;appearance:none;border-radius:0}
input[type=search]::-webkit-search-decoration{-webkit-appearance:none}
.sf select{border:0;border-left:1px solid var(--line);padding:0 10px;background:#fff;font-size:13px;max-width:150px}
.sf button{border:0;background:var(--brand);color:#fff;font-weight:700;padding:0 22px;cursor:pointer}
.sf button:hover{background:var(--brand-d)}
.hd .links{margin-left:auto;display:flex;gap:18px;font-size:13px;white-space:nowrap}
.cat{border-bottom:1px solid var(--line);background:#fff}
.cat .wrap{display:flex;overflow-x:auto;scrollbar-width:none}
.cat .wrap::-webkit-scrollbar{display:none}
.cat a{flex:none;padding:11px 15px 10px;font-size:14px;font-weight:700;color:var(--ink);border-bottom:3px solid transparent}
.cat a:hover{text-decoration:none;color:var(--brand)}
.cat a[aria-current]{color:var(--brand);border-bottom-color:var(--brand)}
.cat a .c{font-weight:400;font-size:12px;color:var(--mute);margin-left:3px}
@media (max-width:899px){.hd .links{display:none}}
@media (max-width:599px){
  .strip{display:none}
  .hd .wrap{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px;gap:8px}
  .logo b{font-size:19px}.logo span{font-size:13px}.logo svg{width:26px;height:26px}
  .sf{flex-basis:100%;max-width:none;height:40px}
  .sf select{display:none}
  .cat a{padding:9px 12px 8px;font-size:13px}
}

/* ---------- パンくず・見出し ---------- */
.bc{font-size:12px;color:var(--sub);padding-top:10px;padding-bottom:10px}
.bc ol{display:flex;flex-wrap:wrap}
.bc li+li::before{content:"＞";margin:0 6px;color:var(--mute)}
.h2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.h2 h2{font-size:18px}
.h2 a{font-size:13px;white-space:nowrap}
.sec{margin-top:36px}

/* ---------- トップ：探す入口 ---------- */
.fv{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;margin-top:20px}
.box{border:1px solid var(--line);border-radius:var(--r);background:#fff}
.box>.t{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:var(--head);border-bottom:1px solid var(--line);border-radius:var(--r) var(--r) 0 0}
.box>.t{flex-wrap:wrap}
.box>.t h2{font-size:16px}
.box>.t span{font-size:12px;color:var(--sub)}
.mapw{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:8px;padding:12px 16px 16px}
.mapw svg{width:100%;height:auto}
.mapw path{stroke:#fff;stroke-width:1;stroke-linejoin:round;cursor:pointer;transition:opacity .12s}
.mapw a:hover path{opacity:.75}
.mapw text{font-size:10.5px;font-weight:700;fill:#333;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;pointer-events:none;letter-spacing:.02em}
.areas{display:grid;gap:10px;align-content:start}
.areas dt{font-size:12.5px;font-weight:700;color:var(--ink);padding:3px 8px;border-radius:3px;display:inline-flex;gap:6px;align-items:center}
.areas dt i{width:10px;height:10px;border-radius:2px;display:inline-block}
.areas dd{display:flex;flex-wrap:wrap;gap:2px 14px;padding:4px 8px 0;font-size:14px}
.areas dd a{font-weight:700}
.areas dd .c{font-size:12px;color:var(--mute);font-weight:400;margin-left:2px}
.purp li+li{border-top:1px solid var(--line2)}
.purp a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;color:var(--ink)}
.purp a:hover{background:#FAFAF7;text-decoration:none}
.purp b{font-size:15px}
.purp small{display:block;font-size:12px;color:var(--sub);font-weight:400;margin-top:1px}
.purp .c{font-size:13px;color:var(--sub);white-space:nowrap}
.purp .c::after{content:"";display:inline-block;width:6px;height:6px;border-top:2px solid var(--mute);border-right:2px solid var(--mute);transform:rotate(45deg);margin-left:8px;vertical-align:1px}
@media (max-width:899px){.fv{grid-template-columns:minmax(0,1fr)}}
@media (max-width:599px){.mapw{grid-template-columns:minmax(0,1fr);padding:10px}.mapw text{font-size:13px}}

/* 締め切りが近い制度（横の並び） */
.dlr{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r)}
.dlr li+li{border-left:1px solid var(--line2)}
.dlr a{display:block;padding:12px 14px 14px;color:var(--text);height:100%}
.dlr a:hover{background:#FAFAF7;text-decoration:none}
.dlr .d{font-size:13px;font-weight:700;color:var(--ink)}
.dlr .d em{font-style:normal;color:var(--num);margin-left:6px}
.dlr .w{font-size:12px;color:var(--sub);margin-top:6px}
.dlr .n{font-size:14px;font-weight:700;color:var(--link);line-height:1.5;margin-top:2px}
.dlr .y{margin-top:8px;font-size:12px;color:var(--sub)}
.dlr .y b{font-size:20px;color:var(--num);letter-spacing:.02em;margin:0 2px}
@media (max-width:1023px){.dlr{grid-template-columns:repeat(2,minmax(0,1fr))}.dlr li+li{border-left:0}.dlr li{border-top:1px solid var(--line2)}.dlr li:nth-child(-n+2){border-top:0}.dlr li:nth-child(even){border-left:1px solid var(--line2)}}
@media (max-width:599px){.dlr{grid-template-columns:minmax(0,1fr)}.dlr li:nth-child(even){border-left:0}.dlr li:nth-child(2){border-top:1px solid var(--line2)}}

/* 市町村で比べる・新着（表の行） */
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
@media (max-width:899px){.two{grid-template-columns:minmax(0,1fr)}}
.rows li{border-bottom:1px solid var(--line2)}
.rows a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 2px;color:var(--text)}
.rows a:hover{text-decoration:none;background:#FAFAF7}
.rows .k{font-size:14px;font-weight:700;color:var(--link)}
.rows .v{font-size:13px;color:var(--sub);white-space:nowrap}
.rows .v b{font-size:16px;color:var(--num)}
@media (max-width:599px){.rows a{grid-template-columns:minmax(0,1fr);gap:2px}.rows .v{white-space:normal}}
.news li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;padding:8px 2px;border-bottom:1px solid var(--line2);font-size:14px}
.news time{font-size:12.5px;color:var(--sub);padding-top:1px}
.news .m{font-size:12px;color:var(--sub);margin-right:6px}

/* ---------- 一覧 ---------- */
.lh{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:6px}
.lh h1{font-size:24px;line-height:1.4}
.lh .cnt{font-size:13px;color:var(--sub)}
.lh .cnt b{font-size:22px;color:var(--ink);margin:0 2px}
.keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;border:1px solid var(--line);border-radius:var(--r)}
.keys a{display:block;padding:10px 14px;color:var(--text)}
.keys a:hover{background:#FAFAF7;text-decoration:none}
.keys li+li{border-left:1px solid var(--line2)}
.keys .k{font-size:12px;color:var(--sub)}
.keys .v{font-size:17px;font-weight:700;color:var(--ink);margin-top:2px;line-height:1.4}
.keys .v small{font-size:12px;font-weight:400;color:var(--sub);margin-left:4px}
@media (max-width:899px){.keys{grid-template-columns:repeat(2,minmax(0,1fr))}.keys li:nth-child(3){border-left:0}.keys li:nth-child(n+3){border-top:1px solid var(--line2)}}
.lay{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;margin-top:20px;align-items:start}
.side .box+.box{margin-top:12px}
.side .t h2{font-size:14px}
.side fieldset{border:0;margin:0;padding:10px 14px 12px}
.side legend{font-size:13px;font-weight:700;color:var(--ink);padding:0;margin-bottom:6px}
.side label{display:flex;align-items:center;gap:6px;font-size:13px;padding:3px 0;cursor:pointer}
.side label .c{margin-left:auto;font-size:12px;color:var(--mute)}
.side fieldset+fieldset{border-top:1px solid var(--line2)}
.cond{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;background:var(--band);border-radius:var(--r);font-size:13px}
.cond b{font-size:12px;color:var(--sub);font-weight:700;margin-right:4px}
.cond .chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:4px;padding:2px 8px;font-size:13px}
.cond .chip button{border:0;background:none;padding:0;color:var(--sub);cursor:pointer;font-size:14px;line-height:1}
.sort{display:flex;border-bottom:1px solid var(--line);margin-top:12px}
.sort button{border:0;background:none;padding:10px 16px 9px;font-size:14px;font-weight:700;color:var(--sub);border-bottom:3px solid transparent;cursor:pointer}
.sort button[aria-pressed="true"]{color:var(--ink);border-bottom-color:var(--brand)}
.shown{font-size:13px;color:var(--sub);padding:10px 2px}
.it{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:18px 2px;border-bottom:1px solid var(--line2)}
.it .am{border:1px solid var(--line2);border-radius:var(--r);background:#FCFCFA;padding:12px 10px;text-align:center;align-self:start}
.it .am .l{font-size:11.5px;color:var(--sub);line-height:1.4}
.it .am .v{margin-top:4px;font-size:22px;font-weight:700;color:var(--num);letter-spacing:.02em;line-height:1.25}
.it .am .v small{font-size:12px;margin-left:1px}
.it .am .v.tx{font-size:15px;color:var(--ink)}
.it .who{font-size:12px;color:var(--sub)}
.it .who .lv{display:inline-block;min-width:44px;text-align:center;border:1px solid var(--line);border-radius:3px;padding:0 4px;margin-right:6px;font-size:11.5px;color:var(--text)}
.it .who .lv.m{border-color:var(--brand);color:var(--brand)}
.it h3{margin-top:2px;font-size:17px;line-height:1.5}
.it p{margin-top:4px;font-size:13.5px;color:var(--text)}
.it .fx{margin-top:8px;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:12.5px;color:var(--sub)}
.it .fx b{color:var(--ink);font-weight:700}
.it .fx .due{color:var(--num);font-weight:700}
.it .fx .end{color:var(--mute)}
.none{padding:24px 4px;color:var(--sub)}
@media (max-width:899px){.lay{grid-template-columns:minmax(0,1fr)}.side{order:2}}
@media (max-width:599px){.it{grid-template-columns:96px minmax(0,1fr);gap:12px}.it .am .v{font-size:17px}.it h3{font-size:15.5px}.lh h1{font-size:20px}}

/* ---------- 詳細 ---------- */
.dt{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;margin-top:6px;align-items:start}
.dt .ttl{border-bottom:1px solid var(--line);padding-bottom:12px}
.dt .ttl .who{font-size:12.5px;color:var(--sub)}
.dt .ttl h1{font-size:24px;line-height:1.45;margin-top:4px}
.dt .ttl .sub{font-size:13px;color:var(--sub);margin-top:2px}
.main-num{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px;border:1px solid var(--line);border-radius:var(--r)}
.main-num>div{padding:12px 16px}
.main-num>div+div{border-left:1px solid var(--line2)}
.main-num .k{font-size:12px;color:var(--sub)}
.main-num .v{font-size:26px;font-weight:700;color:var(--num);letter-spacing:.02em;line-height:1.3;margin-top:2px}
.main-num .v small{font-size:14px;margin-left:2px}
.main-num .v.ink{color:var(--ink)}
.main-num .n{font-size:12px;color:var(--sub);margin-top:2px}
@media (max-width:599px){.main-num{grid-template-columns:minmax(0,1fr)}.main-num>div+div{border-left:0;border-top:1px solid var(--line2)}}
.notice{margin-top:12px;padding:10px 14px;border:1px solid #F0D58A;background:var(--hl);border-radius:var(--r);font-size:13.5px}
.notice b{color:var(--ink)}
.spec{width:100%;margin-top:10px;border-top:1px solid var(--line);font-size:14px}
.spec th,.spec td{border-bottom:1px solid var(--line);padding:10px 14px;text-align:left;vertical-align:top}
.spec th{width:170px;background:var(--head);font-weight:700;color:var(--ink);font-size:13px}
@media (max-width:599px){.spec th{width:104px;padding:10px}.spec td{padding:10px}}
.cta{display:block;text-align:center;background:var(--brand);color:#fff;font-weight:700;font-size:15px;padding:13px 10px;border-radius:var(--r)}
.cta:hover{background:var(--brand-d);text-decoration:none}
.cta small{display:block;font-size:11.5px;font-weight:400;opacity:.9}
.aside .box+.box{margin-top:14px}
.aside .in{padding:14px 16px;font-size:13px}
.aside .in p+p{margin-top:6px}
.cmpt{width:100%;font-size:13.5px}
.cmpt th,.cmpt td{border-bottom:1px solid var(--line2);padding:8px 10px;text-align:left}
.cmpt thead th{background:var(--head);font-size:12px;color:var(--sub);font-weight:700;border-bottom:1px solid var(--line)}
.cmpt tbody th{font-weight:700;white-space:nowrap}
.cmpt td.o{color:var(--num);font-weight:700}
.cmpt tr.me{background:var(--hl)}
.cmpt tr.me th::after{content:"この市町村";margin-left:6px;font-size:11px;font-weight:700;color:var(--brand)}
.cmpw{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.cmpw .mapw{display:block;padding:12px}
.lgd{display:grid;gap:4px;margin-top:8px;font-size:12.5px}
.lgd span{display:flex;align-items:center;gap:6px}
.lgd i{width:12px;height:12px;border-radius:2px}
@media (max-width:899px){.dt,.cmpw{grid-template-columns:minmax(0,1fr)}}
.rel li{border-bottom:1px solid var(--line2)}
.rel a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 2px;font-size:14px}
.rel .v{color:var(--num);font-weight:700;white-space:nowrap;font-size:13px}
.src{margin-top:24px;font-size:12px;color:var(--sub)}
.src li{word-break:break-all;margin-top:2px}

/* ---------- フッター ---------- */
.ft{margin-top:48px;border-top:1px solid var(--line);background:var(--band);padding:24px 0 30px;font-size:12.5px;color:var(--sub)}
.ft .mg{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px}
.ft .cp{margin-top:16px}
.rows .nolink{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 2px}
.rows .nolink .k{color:var(--ink)}
.keys .ki{padding:10px 14px}
.h2{flex-wrap:wrap}
@media (max-width:599px){
  .it{grid-template-columns:108px minmax(0,1fr)}
  .it .am{padding:10px 6px}
  .it .am .v{font-size:16px}
  .it .am .v small{font-size:11px}
  .sort button{font-size:13px;padding:9px 10px 8px}
  .cmpt{font-size:12.5px}.cmpt th,.cmpt td{padding:7px 6px}
  .dt .ttl h1{font-size:21px}
}
h1,h2,.it h3,.dlr .n,.dt .ttl h1,.ev .n,.dlv .n,.rows .k,.news li>span,.rel li span:first-child,.keys .k{text-wrap:balance}
.main-num .v.ink{font-size:21px;line-height:1.45}
.keys .v small{white-space:nowrap}

/* くらしの制度 第3版の追加（全国のトップ・検索の欄・タブ・表・催し） */
/* ヘッダーの検索（内側のページ） */
.sf{border:1px solid #D6D0C6;border-radius:10px;height:44px;background:#fff;align-items:center}
.sf:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(217,84,26,.15)}
.sf .ic{display:flex;align-items:center;padding-left:12px;color:var(--mute)}
.sf input{padding:0 10px}
.sf select{height:28px;border-left:1px solid var(--line2)}
.sf button{border-radius:0 9px 9px 0}

/* 最初の画面の検索（トップ・京都府） */
.hero{background:#FFF3E9;border-bottom:1px solid #F2DCCB}
.hero-in{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:36px;align-items:center;padding-top:34px;padding-bottom:30px}
.hero h1{font-size:30px;line-height:1.5;letter-spacing:.05em}
.hero .lead{margin-top:10px;font-size:14.5px;line-height:1.85;color:var(--text);max-width:36em}
.hs{margin-top:20px;display:flex;align-items:center;height:60px;background:#fff;border:2px solid var(--brand);border-radius:14px;overflow:hidden}
.hs:focus-within{box-shadow:0 0 0 4px rgba(217,84,26,.16)}
.hs .ic{display:flex;align-items:center;padding-left:18px;color:var(--brand)}
.hs .ic svg{width:22px;height:22px}
.hs input{flex:1;min-width:0;height:100%;border:0;padding:0 12px;font-size:16px;outline:none;background:transparent;-webkit-appearance:none;appearance:none;border-radius:0}
.hs select{height:34px;border:0;border-left:1px solid #EADFD5;padding:0 12px;font-size:14px;background:#fff;max-width:200px;outline:none}
.hs button{height:100%;border:0;background:var(--brand);color:#fff;font-size:16px;font-weight:700;padding:0 26px;display:flex;align-items:center;gap:8px;cursor:pointer}
.hs button:hover{background:var(--brand-d)}
.pop{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px}
.pop b{font-size:12.5px;color:var(--sub);font-weight:700;margin-right:2px}
.pop a{background:#fff;border:1px solid #EBCDB8;border-radius:999px;padding:4px 13px;color:var(--ink);font-weight:500}
.pop a:hover{border-color:var(--brand);color:var(--brand);text-decoration:none}
.hst{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 30px}
.hst li{display:flex;align-items:baseline;gap:8px}
.hst b{font-size:24px;font-weight:700;color:var(--brand);letter-spacing:.02em}
.hst span{font-size:12.5px;color:var(--sub)}
.hero-r .art{width:100%;height:auto;border-radius:18px;background:#EAF1F6}
@media (max-width:899px){.hero-in{grid-template-columns:minmax(0,1fr);gap:18px}.hero-r{order:-1}.hero-r .art{max-height:220px}}
@media (max-width:599px){
  .hero-in{padding-top:18px;padding-bottom:20px}
  .hero h1{font-size:22px}
  .hero .lead{font-size:13.5px}
  .hs{height:52px;border-radius:12px}
  .hs select{display:none}
  .hs button{padding:0 16px}
  .hs button svg{display:none}
  .hst b{font-size:20px}
  .hero-r .art{max-height:170px}
}

/* 都道府県から探す（日本地図と地方の一覧） */
.jp{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;padding:14px 18px 18px;align-items:center}
.jpm svg{width:100%;height:auto}
.jpm a path{cursor:pointer}
.jpm a:hover path{fill:#C9521B}
.jl{font-size:26px;font-weight:700;fill:#B9430F}
.regions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px}
.regions dt{font-size:12.5px;font-weight:700;color:var(--sub);border-bottom:1px solid var(--line2);padding-bottom:4px}
.regions dd{display:flex;flex-wrap:wrap;gap:2px 12px;padding-top:6px;font-size:14px}
.regions .off{color:#AAA}
.regions .on{font-weight:700;color:var(--brand)}
.regions .on .c{font-weight:400;color:var(--sub);font-size:12px}
@media (max-width:899px){.jp{grid-template-columns:minmax(0,1fr)}.jpm{max-width:420px}}
@media (max-width:599px){.regions{grid-template-columns:minmax(0,1fr)}}

.purp.bx{border:1px solid var(--line);border-radius:var(--r)}
.dlr.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1023px){.dlr.c3{grid-template-columns:minmax(0,1fr)}.dlr.c3 li{border-left:0!important;border-top:1px solid var(--line2)}.dlr.c3 li:first-child{border-top:0}}

/* 一覧の札の実施（枠の札をやめ、文字の並びに） */
.it .who{font-size:12.5px;color:var(--sub)}
.it .who b{color:var(--ink);font-weight:700}
.it .who b.mu{color:var(--brand)}

/* 市町村のタブ */
.tabs{display:flex;gap:4px;margin-top:14px;border-bottom:2px solid var(--brand);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs a{flex:none;padding:10px 20px 9px;font-size:15px;font-weight:700;color:var(--ink);background:var(--band);border-radius:8px 8px 0 0}
.tabs a:hover{text-decoration:none;background:#EFEDE7}
.tabs a[aria-current]{background:var(--brand);color:#fff}
.tabbody{margin-top:16px}
.links-in{padding:10px 14px;font-size:13px;display:flex;flex-wrap:wrap;gap:2px 12px}
.more-l{padding:8px 14px 12px;font-size:13px}
.aside .rel{padding:0 14px}
.lead2{margin-top:14px;font-size:14.5px;line-height:1.85}

/* 表（ごみの分別・袋の値段・品目） */
.tbl{width:100%;font-size:14px;border-top:1px solid var(--line)}
.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.tbl thead th{background:var(--head);font-size:12.5px;color:var(--sub);font-weight:700;white-space:nowrap}
.tbl tbody th{font-weight:700;color:var(--ink);width:26%}
.tbl .yen{color:var(--num);font-weight:700}
.tbl .nw{white-space:nowrap}
.tbl .sm{font-size:12.5px;color:var(--sub)}
.h2 span{font-size:12.5px;color:var(--sub);font-weight:400}
.lk{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px}
.lk span{font-size:12.5px;color:var(--sub);margin-left:4px}
@media (max-width:599px){.tbl{font-size:13px}.tbl th,.tbl td{padding:8px}.tbl tbody th{width:32%}}

/* 手続きの流れ */
.flow{display:grid;gap:8px}
.flow li{display:grid;grid-template-columns:30px 150px minmax(0,1fr);gap:10px;align-items:baseline;padding:10px 12px;border:1px solid var(--line2);border-radius:var(--r)}
.flow .no{width:24px;height:24px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}
.flow b{color:var(--ink)}
@media (max-width:599px){.flow li{grid-template-columns:28px minmax(0,1fr)}.flow li span:last-child{grid-column:2}}

/* 催し */
.evl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.evr{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ev a{display:block;height:100%;border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;color:var(--text)}
.ev a:hover{border-color:var(--brand);text-decoration:none}
.ev .d{font-size:13px;font-weight:700;color:var(--num);letter-spacing:.02em}
.ev .n{margin-top:4px;font-size:15px;font-weight:700;color:var(--link);line-height:1.5}
.ev .w{margin-top:3px;font-size:12.5px;color:var(--sub)}
.ev .s{margin-top:6px;font-size:13px}
.ev .t{margin-top:6px;font-size:12px;color:var(--ink);font-weight:500}
@media (max-width:1023px){.evr{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.evl,.evr{grid-template-columns:minmax(0,1fr)}}

/* フッター */
.ft .fg{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px}
.ft b{color:var(--ink)}
@media (max-width:599px){.ft .fg{grid-template-columns:minmax(0,1fr)}}
.sf button{align-self:stretch;border-radius:0}
.regions{display:block}
.regions .rg{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--line2);padding:8px 0}
.regions .rg dt{border:0;padding:2px 0 0}
.regions .rg dd{padding-top:0}
.jpm path{stroke:#fff;stroke-width:.8}
.jpm g path{fill:#E2DDD3}
.dlv{border:1px solid var(--line);border-radius:var(--r)}
.dlv li+li{border-top:1px solid var(--line2)}
.dlv a{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:11px 14px;color:var(--text)}
.dlv a:hover{background:#FAFAF7;text-decoration:none}
.dlv .d{font-size:13px;font-weight:700;color:var(--ink)}
.dlv .d em{font-style:normal;color:var(--num);margin-left:6px}
.dlv .n{font-weight:700;color:var(--link)}
.dlv .y{color:var(--num);font-weight:700;white-space:nowrap}
@media (max-width:599px){.dlv a{grid-template-columns:minmax(0,1fr)}.dlv .y{justify-self:start}}
.main-num .v.ink.long{font-size:16px;line-height:1.55;margin-top:4px}
.tw{overflow-x:auto}
.tbl .fq{min-width:7em}
@media (max-width:599px){.tbl thead th{white-space:normal}.tbl .fq{min-width:5em}}
.it .ts{margin-top:1px;font-size:12.5px;color:var(--sub)}
/* 読みやすさ（文字のコントラスト 4.5 以上）：小さな文字とボタンは濃い柿色 */
.it .who b.mu,.regions .on,.tabs a[aria-current],.cat a[aria-current]{color:var(--brand-tx)}
.tabs a[aria-current]{background:var(--brand-bg);color:#fff}
.hs button,.sf button,.cta{background:var(--brand-bg)}
.hs button:hover,.sf button:hover,.cta:hover{background:#9A3412}
.hs{border-color:var(--brand-bg)}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:var(--link);padding:8px 12px;z-index:50}
.skip:focus{left:8px;top:8px}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #2563EB;outline-offset:2px}
/* iPhone の Safari は16px未満の入力欄を押すと拡大するので、スマホの入力欄は16px */
@media (max-width:599px){.sf input,.hs input,.sf select{font-size:16px}}
/* スマホの表のマスは、電話番号・括弧の終わりがマスの外に出ないよう、語の途中でも折る */
/* スマホの表のマス：文節で折る（keep-all のまま）。折らないかたまり（h-nb）がマスより広いとはみ出すので、マスの中だけ外す */
@media (max-width:599px){.spec td,.tbl td,.cmpt td{overflow-wrap:anywhere}.spec td h-nb,.tbl td h-nb,.cmpt td h-nb{white-space:normal}}

/* ---------- 近畿の比較 ---------- */
.kmap{border:1px solid var(--line);border-radius:var(--r);background:#fff}
.ktabs{display:flex;flex-wrap:wrap;gap:6px;padding:12px 14px;border-bottom:1px solid var(--line2)}
.ktabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;font-family:inherit}
.ktabs button[aria-pressed="true"]{background:var(--brand-bg);border-color:var(--brand-bg);color:#fff}
.kmw{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;padding:14px;align-items:start}
.kmw svg,.mapw svg{width:100%;height:auto;display:block}
.kmap path{fill:#E7E3DB;stroke:#fff;stroke-width:.5}
.kmap a:hover path,.mapw a:hover path{opacity:.75}
svg .pl{font-size:15px;font-weight:700;fill:#2a2a2a;paint-order:stroke;stroke:#fff;stroke-width:3px;pointer-events:none}
.lgd{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:13px}
.lgd span{display:inline-flex;align-items:center;gap:6px}
.lgd i{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.08)}
.lgd b{font-weight:700;color:var(--ink);margin-left:2px}
.lg-n{margin-top:12px;font-size:13px}
.ptbl th small,.ptbl td small{display:block;font-size:12px;color:var(--sub);font-weight:400}
.ptbl td b{font-size:16px;color:var(--num)}
.ptbl tr.sum th,.ptbl tr.sum td{background:#FAF7F2}
.kcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kcards a{display:block;border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;color:var(--text);height:auto}
.kcards a:hover{text-decoration:none;background:#FAFAF7}
.kcards b{display:block;color:var(--link);font-size:15px}
.kcards span{display:block;margin-top:4px;font-size:13.5px}
.kfacts p{font-size:15px;line-height:1.8}
.kfacts p+p{margin-top:4px}
.pchips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.pchips button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font-size:13px;cursor:pointer;font-family:inherit;color:var(--ink)}
.pchips button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
td.v::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:baseline}
td.c-a::before{background:#D9542C}td.c-q::before{background:#E57A50}td.c-b::before{background:#EE9A72}td.c-c::before{background:#F6CDB5}td.c-p::before{background:#F8DCCB}td.c-d::before{background:#FBEBE1;box-shadow:inset 0 0 0 1px #EAD7C8}td.c-x::before{background:#E7E3DB}
.keys.k8{grid-template-columns:repeat(4,minmax(0,1fr))}
.areas.plain dt{background:#F3EEE6}
@media (max-width:899px){.kmw{grid-template-columns:minmax(0,1fr)}.keys.k8{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.kcards{grid-template-columns:minmax(0,1fr)}}
.ptbl{table-layout:fixed;min-width:960px}
.ptbl thead th:first-child{width:118px}
.ptbl td{font-size:13px;line-height:1.5}
.rows .v small{margin-left:6px;font-size:12px;color:var(--sub)}
.kfacts .rule{margin-top:10px;padding:10px 12px;background:#FAF7F2;border:1px solid var(--line2);border-radius:6px;font-size:13.5px;line-height:1.8}
.kfacts .rule b{display:block;font-size:13px;color:var(--ink);margin-bottom:2px}
.kmw2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
.kmw2 .lgd{margin:0 0 12px}
.rows.pr .v{white-space:normal;text-align:right}
@media (max-width:899px){.kmw2{grid-template-columns:minmax(0,1fr)}}
/* 近畿の8項目の札：補足は長いので折り返す（京都府の4項目の札の nowrap を上書き）。8枚の並びの罫線 */
.keys.k8 .v small{white-space:normal;display:block;margin-left:0;margin-top:2px;line-height:1.5}
.keys.k8 li:nth-child(4n+1){border-left:0}
.keys.k8 li:nth-child(n+5){border-top:1px solid var(--line2)}
@media (max-width:899px){.keys.k8 li{border-left:0}.keys.k8 li:nth-child(even){border-left:1px solid var(--line2)}.keys.k8 li:nth-child(n+3){border-top:1px solid var(--line2)}}
/* 近畿の6項目の札（ごみの2項目を外した後。2026-11-10）：PC は3列×2段、狭い幅は2列×3段 */
.keys.k6{grid-template-columns:repeat(3,minmax(0,1fr))}
.keys.k6 .v small{white-space:normal;display:block;margin-left:0;margin-top:2px;line-height:1.5}
.keys.k6 li:nth-child(3n+1){border-left:0}
.keys.k6 li:nth-child(n+4){border-top:1px solid var(--line2)}
@media (max-width:899px){.keys.k6{grid-template-columns:repeat(2,minmax(0,1fr))}.keys.k6 li{border-left:0}.keys.k6 li:nth-child(even){border-left:1px solid var(--line2)}.keys.k6 li:nth-child(n+3){border-top:1px solid var(--line2)}}
/* トップの都道府県の選択。スマホで前の検索の選択を隠す決まり（.hs select{display:none}）に当たらないよう、.hs を重ねて強くする */
.hs.hs-pref select{display:block;flex:1;min-width:0;max-width:none;height:100%;border:0;padding:0 16px;font-size:16px;background:#fff}

/* 都道府県の市区町村の地図（2026-11-12 全47都道府県で同じ形。塗りと、マウスを乗せた時のオレンジはトップの日本地図と同じ） */
.pmw{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}
.pmap{position:relative}
.pmap svg{display:block;width:100%;height:auto;max-height:680px}
.pmap path{fill:#F2B18E;stroke:#fff;stroke-width:.8;stroke-linejoin:round;fill-rule:evenodd;transition:fill .12s;opacity:1}
.pmap a{cursor:pointer}
.mapw .pmap a:hover path,.pmap a:hover path,.pmap a.on path{fill:#C9521B;opacity:1}
.pmap .ex path{fill:#E2DDD3}
.pmap .fr{fill:none;stroke:#D8D2C8;stroke-width:1}
.pmap .fl{font-size:12px;fill:#666}
.ptip{position:absolute;z-index:5;pointer-events:none;transform:translate(-50%,calc(-100% - 14px));background:#fff;border:1px solid #D6D0C6;border-radius:6px;padding:3px 10px;font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap}
.ptip[hidden]{display:none}
.pmw .areas dd a.on,.pmw .areas dd a:hover{color:#C9521B}
@media (max-width:599px){.pmw{grid-template-columns:minmax(0,1fr)}.pmap svg{max-height:none}}

/* 横断の検索（ヘッダー・トップ・検索のページの窓と、市区町村の候補） */
.gsw{position:relative}
.hd .gsw{flex:1;max-width:600px}
.hd .gsw .sf{max-width:none;width:100%}
.hero .gsw .hs{margin-top:20px}
.hero .gsw+.hs-pref{margin-top:10px;height:50px;border-width:1px;border-color:#E3CDBD}
.hero .gsw+.hs-pref select{font-size:15px}
.sug{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;background:#fff;border:1px solid #D6D0C6;border-radius:10px;padding:4px 0;list-style:none;margin:0;max-height:380px;overflow:auto}
.sug[hidden]{display:none}
.sug a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 14px;color:var(--ink);text-decoration:none;font-size:14.5px}
.sug b{font-weight:700}
.sug span{font-size:12.5px;color:var(--sub);white-space:nowrap}
.sug [aria-selected=true] a,.sug a:hover{background:#FFF3E9}
.sug .all{border-top:1px solid var(--line2);margin-top:4px;padding-top:4px}
.sug .all a{color:var(--brand-tx);font-weight:700;font-size:13.5px}
@media (max-width:599px){.hd .gsw{flex-basis:100%;max-width:none}}

/* 検索のページ */
.srp .lead2{margin-top:8px}
.srp .gsw .hs{margin-top:14px}
.sr-f{margin-top:12px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;font-size:13.5px;color:var(--text)}
.sr-f select{height:38px;border:1px solid #D6D0C6;border-radius:8px;padding:0 10px;background:#fff;font-size:14px;max-width:100%}
.sr-out{margin-top:20px;min-height:120px}
.sr-msg,.sr-sum{font-size:14px;color:var(--sub)}
.sr-sec{margin-top:18px}
.sr-sec h2{font-size:16px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.sr-pl{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.sr-pl a{display:block;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink)}
.sr-pl a:hover{border-color:#E3B497;background:#FFF8F2;text-decoration:none}
.sr-pl b{display:block;font-size:15px}
.sr-pl span{display:block;margin-top:2px;font-size:12.5px;color:var(--sub)}
.sr-pg{list-style:none;margin:0;padding:0}
.sr-pg li{border-bottom:1px solid var(--line2);padding:12px 2px}
.sr-pg li>a{font-weight:700;font-size:15.5px;line-height:1.6}
.sr-pg .m{margin-top:3px;font-size:12.5px;color:var(--sub);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.sr-pg .lv{font-size:11.5px;font-weight:700;border:1px solid #D6D0C6;border-radius:4px;padding:0 6px;color:var(--text);background:#fff}
.sr-pg .own{font-size:11.5px;color:var(--brand-tx);font-weight:700}
.sr-pg .end{font-size:11.5px;color:#8A5A00;font-weight:700}
.sr-more{margin-top:14px;min-height:40px;padding:0 18px;border:1px solid #D6D0C6;border-radius:8px;background:#fff;color:var(--ink);font-weight:700;font-size:14px;cursor:pointer}
.sr-more:hover{border-color:var(--brand);color:var(--brand-tx)}
.sr-more[hidden]{display:none}
.sr-ex{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13px;color:var(--sub)}
.sr-ex a{border:1px solid #D6D0C6;border-radius:999px;padding:4px 12px;font-size:13.5px;background:#fff;color:var(--ink)}
.sr-ex a:hover{border-color:var(--brand);text-decoration:none}
/* 京都府のトップの地図（地域ごとの色分けは残す）も、マウスを乗せた市町村はほかの都道府県と同じオレンジにする（2026-11-12） */
.mapw.hv a:hover path{fill:#C9521B;opacity:1}
.pmw.wide{grid-template-columns:minmax(0,1fr)}
.pmw.wide .pmap{width:100%;max-width:860px;margin:0 auto}

/* 市町村のページ（基本情報・分野ごとの支援・制度の詳細）2026-11-10
   一覧は SUUMO・価格.com の一覧（行全体が詳細への入口、名前の下に対象、右に額）、詳細は既存の制度の詳細（主な数字・内容の表・公式ページのボタン）。
   白の地・1px の罫線・灰色の帯。主の色は上の帯の線・選んでいるタブ・額の数字・ボタン。影・左の色線・塗りの札は使わない。 */

/* 題の段 */
.ct{margin-top:6px}
.ct h1{font-size:26px;line-height:1.45}
.ct h1 small{font-size:17px;font-weight:500;color:var(--sub);margin-left:2px;letter-spacing:.06em}
.ct .who{font-size:12.5px;color:var(--brand-tx);font-weight:700}
@media (max-width:599px){.ct h1{font-size:21px}.ct h1 small{font-size:14px}}

/* 市のタブ（PC は1行、狭い幅は折り返して全部見せる。横に送って隠れるタブを作らない） */
.ctabs a{padding:10px 16px 9px;font-size:14.5px}
@media (max-width:1023px){
  .ctabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;border-bottom:0;overflow:visible;margin-top:12px}
  .ctabs a{border-radius:6px;text-align:center;padding:9px 4px;font-size:14px}
}
@media (max-width:599px){
  .ctabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .ctabs a{padding:8px 2px;font-size:13px}
}

/* 本文と横の欄 */
.cdt{margin-top:18px}
.cdt.top>.aside{grid-column:2;grid-row:1}
.cdt.top>.mn{grid-column:1;grid-row:1}
@media (max-width:899px){.cdt.top>.aside,.cdt.top>.mn{grid-column:auto;grid-row:auto}}
.sec.s1{margin-top:22px}
.cbody{margin-top:4px}

/* 場面の帯と、支援の一覧（行全体が詳細への入口） */
.stp{margin-top:24px;padding:7px 12px;background:var(--head);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink)}
.pl>li{border-bottom:1px solid var(--line2)}
.pl>li>a{display:block;padding:14px 12px 15px;color:var(--text)}
.pl>li>a:hover{background:#FAFAF7;text-decoration:none}
.pl>li>a:hover .nm b{text-decoration:underline}
.pl .nm b{font-size:16px;color:var(--link);line-height:1.5}
.pl .own,.ovl .own{margin-left:8px;font-size:12px;font-weight:700;color:var(--brand-tx);white-space:nowrap}
.ovl .own{margin-left:6px}
.tg{display:block;margin-top:2px;font-size:13px;color:var(--sub);line-height:1.6}
.tg span{display:inline-block;margin-right:6px;font-size:12px;color:var(--sub)}
.pl .am{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-top:4px}
.pl .am b{font-size:19px;color:var(--num);letter-spacing:.02em;line-height:1.35}
.pl .am b small{font-size:13px;margin-left:1px}
.pl .am b.tx{font-size:15px;color:var(--ink)}
.dl{font-size:13px;font-weight:700;color:var(--num);white-space:nowrap}
.dl.soon{color:#B45309}
.dl.end{color:var(--mute);font-weight:500}
.pl>li.off .nm b,.pl>li.off .am b{color:var(--mute)}
@media (max-width:767px){
  .pl>li>a{padding:12px 4px 13px}
  .pl .am b{font-size:18px}
}
.tbl.nf{margin-top:0}
.tbl.nf tbody th{width:30%}
/* スマホでは、支援の名前の下に内容を積む（2列だと名前が6行に折れる） */
@media (max-width:599px){
  .tbl.nf,.tbl.nf tbody,.tbl.nf tbody tr,.tbl.nf tbody th,.tbl.nf tbody td{display:block;width:auto}
  .tbl.nf tbody th{border-bottom:0;padding-bottom:2px}
  .tbl.nf tbody td{padding-top:0}
}
.of2{margin-left:8px;font-size:12.5px;white-space:nowrap}
/* 駅・路線・市町村の名前は、行の途中で割らない */
.pnm{white-space:nowrap}

/* 制度の詳細 */
/* 札が2つの時は、PC は2列。狭い幅は3つの時と同じく縦に積む（2列のままだと「対象」の文が折れる） */
@media (min-width:600px){.main-num.c2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.main-num.c1{grid-template-columns:minmax(0,1fr)}
.bul{display:grid;gap:2px}
.bul li{padding-left:1em;text-indent:-1em}
.bul li::before{content:"・"}

/* 分野ごとの主な支援（市のトップ） */
.tbl.cov tbody th{width:18%;font-size:15px}
.ovl li+li{margin-top:12px}
.ovl .nm{font-weight:700;font-size:14.5px}
.ovl .am{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-top:1px}
.ovl b{font-size:15px;color:var(--num)}
.ovl em{font-style:normal;font-size:12.5px;font-weight:700;color:var(--num)}
.ovl .tg{margin-top:1px;font-size:12.5px;color:var(--sub)}
@media (max-width:599px){.tbl.cov tbody th{width:28%;font-size:14px}}

/* となりの市町村との比べ（○△×の表） */
.mkw{border:1px solid var(--line);border-radius:var(--r)}
.mkt{width:100%;min-width:760px;font-size:13px;table-layout:fixed}
.mkt th,.mkt td{border-bottom:1px solid var(--line2);padding:8px 6px;text-align:center;vertical-align:top}
.mkt thead th{background:var(--head);font-size:12px;font-weight:700;line-height:1.45;border-bottom:1px solid var(--line)}
.mkt thead th a{color:var(--ink)}
.mkt thead th:first-child,.mkt tbody th{width:108px;text-align:left;padding-left:12px}
.mkt tbody th{font-size:13.5px;font-weight:700;background:#fff;position:sticky;left:0}
.mkt tbody th small{display:block;font-size:11.5px;font-weight:400;color:var(--sub)}
.mkt tbody tr:last-child th,.mkt tbody tr:last-child td{border-bottom:0}
.mkt tr.me th,.mkt tr.me td{background:var(--hl)}
.mk{display:block;font-style:normal;font-size:19px;line-height:1.2;font-weight:700}
.mk.o{color:var(--num)}
.mk.t{color:#555}
.mk.x{color:#A3A3A3}
.mkt td small{display:block;margin-top:2px;font-size:11.5px;color:var(--sub);line-height:1.45}
.mkr{margin-top:10px;display:grid;gap:3px;font-size:12.5px;color:var(--sub)}
.mkr div{display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:8px}
.mkr dt{color:var(--ink);font-weight:700}
@media (max-width:599px){.mkr div{grid-template-columns:minmax(0,1fr);gap:0}}

/* 基本情報（市のトップ） */
.ib .loc{padding:12px 16px 8px;border-bottom:1px solid var(--line2)}
.ib .loc svg{width:100%;height:auto;max-height:210px}
.ib .loc path{stroke:#fff;stroke-width:1;stroke-linejoin:round}
.ib .loc a:hover path{fill:#D6D0C6}
.ib .spec{margin-top:0;border-top:0;font-size:13.5px}
.ib .spec th{width:92px;font-size:12.5px;padding:9px 10px}
.ib .spec td{padding:9px 12px;line-height:1.65}
.ib .spec td small{display:block;font-size:12px;color:var(--sub)}
.ib .spec td b.num{font-size:17px;color:var(--ink)}
.ibs{padding:8px 14px 12px;font-size:12px;color:var(--sub)}

/* 駅と路線 */
.tbl.lines tbody th{width:28%}
.tbl.lines th small{display:block;font-size:12px;color:var(--sub);font-weight:400}
.acc{display:flex;flex-wrap:wrap;gap:4px 26px;margin-top:10px;font-size:13.5px}
.acc b{margin-left:8px;color:var(--ink)}
.h3s{margin-top:16px;font-size:14.5px;color:var(--ink)}
.acct{margin-top:8px}
.acct td b{margin-left:4px;color:var(--ink)}
/* 長さの変わる額・日付は1つのかたまりで折り返す（スマホで「1,6／00円」と割れないように） */
.ovl b,.ovl em{display:inline-block;white-space:nowrap}
.mkr dd span{display:inline-block;margin-right:14px}
/* 比べの表の列の見出し：PC の幅で「インフルエンザ」が1行に入る幅と大きさ */
.mkt thead th{font-size:11.5px;padding:8px 2px;letter-spacing:0}
.mkt thead th:first-child,.mkt tbody th{width:88px}
/* 分野のページの右の欄：窓口 */
.ctc{padding:4px 14px 8px}
.ctc li{padding:9px 0;border-bottom:1px solid var(--line2);font-size:13.5px;line-height:1.55}
.ctc li:last-child{border-bottom:0}
.ctc b{display:block;color:var(--ink)}
.ctc span{color:var(--sub);font-size:13px}
.cdt .cbody .stp:first-child{margin-top:0}

/* 広告の枠（units.py）。2026-11-10
   MONOSASHI の広告（helath_hp/MONOSASHI-REVENUE-2026-11/live-1110e/ms-units.css。2026-11-09〜10 に代表が確かめた形）を写した。
   色：SHIRITAI＝橙 #E2641C・資料作成AI＝赤 #D63F42・受発注業務の自動化＝青 #2257B8。影・左の色線・グラデーションは使わない。
   上に「PR」と広告主。置き場：PC は横の欄に正方形・本文の終わりに横長、スマホ・タブレットはページの終わりに正方形1つ */

.msu{margin:0;color:var(--ink);font-family:var(--ja);--msu-num:"Inter","Helvetica Neue",Arial,var(--ja)}
.msu__hd{display:flex;align-items:center;gap:7px;margin:0 0 6px;font-size:12px;line-height:1.5;color:var(--sub)}
.msu__pr{display:inline-block;padding:0 5px;border:1px solid var(--line);border-radius:3px;font:700 10.5px/1.6 var(--msu-num);letter-spacing:.06em;color:var(--sub)}
.msu__a{display:block;overflow:hidden;border:1px solid var(--line);border-radius:14px;color:#fff;text-decoration:none;transition:background-color .15s,border-color .15s}
.msu__a:hover{text-decoration:none}
.msu__a:focus-visible{outline:2px solid var(--link);outline-offset:2px}
.msu__ext{flex:none;margin-left:5px}

/* 見せる幅（同じ枠を幅で出し分ける） */
@media (max-width:899px){.msu--ge900{display:none}}
@media (min-width:900px){.msu--lt900{display:none}}
@media (max-width:1023px){.msu--ge1024{display:none}}
@media (min-width:1024px){.msu--lt1024{display:none}}

/* 置き場 */
.aside .msu{margin-top:18px}
.aside>.msu:first-child{margin-top:0}
.cbody>.msu,.mn>.msu,.dt>div>.msu{margin-top:32px}
.msu--wide{max-width:820px}
/* 正方形は幅 360px までにして中央に置く（本文の幅いっぱいに伸ばして横長にしない。横の欄は 300px なので、そのまま） */
.msu--square{max-width:360px;margin-left:auto;margin-right:auto}
/* スマホの幅では、本文の左右の端にそろえる（360px で中央に置くと、端が数 px〜15px 内側にずれる） */
@media (max-width:599px){.msu--square{max-width:none}}
/* PC の横の欄の正方形は、資料と画面の画像を外して背を低くする（MONOSASHI と同じ）。
   横の欄は 300px（MONOSASHI は 320〜340px）なので、受発注の見出し「FAX・メールの注文書から、」を1行に収める大きさにする */
@media (min-width:900px){
  .aside .msu--square .msu-sr__slides,.aside .msu--square .msu-sn__shot{display:none}
  .aside .msu-sn--square .msu-sn__h{font-size:19px}
}

.msu--orange .msu__a{background:#E2641C;border-color:#E2641C}
.msu--orange .msu__a:hover{background:#D85A14;border-color:#D85A14}
.msu--red .msu__a{background:#D63F42;border-color:#D63F42}
.msu--red .msu__a:hover{background:#CC393C;border-color:#CC393C}
.msu--navy .msu__a{background:#2257B8;border-color:#2257B8}
.msu--navy .msu__a:hover{background:#183F8A;border-color:#183F8A}

/* ---- SHIRITAI（橙）：白のロゴ・見出し・説明・チャットの画面・白いボタン ---- */
.msu-so{display:flex;flex-direction:column;align-items:flex-start;padding:18px;color:#fff}
.msu-so__logo{display:block;width:auto;height:22px}
/* チャットの画面は、入力欄の段を切って上から 330/416 を見せる */
.msu-so__chat{display:block;align-self:stretch;margin-top:14px;border-radius:14px;overflow:hidden;aspect-ratio:360/330}
.msu-so__chat img{display:block;width:100%;height:auto}
.msu-so__h{display:block;margin-top:14px;font-size:24px;font-weight:800;line-height:1.42;letter-spacing:.02em;color:#fff}
.msu-so__s{display:block;margin-top:8px;font-size:14px;font-weight:700;line-height:1.7}
.msu-so__btn{display:flex;align-items:center;justify-content:center;align-self:stretch;height:42px;margin-top:16px;border-radius:8px;background:#fff;color:#B4470B;font-size:14.5px;font-weight:800;letter-spacing:.04em}
.msu__a:hover .msu-so__btn{background:#FFF5EE}
.msu-so--wide{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:0 28px;padding:22px 26px}
.msu-so--wide .msu-so__l{display:flex;flex-direction:column;align-items:flex-start}
.msu-so--wide .msu-so__h{margin-top:12px;font-size:27px}
.msu-so--wide .msu-so__btn{align-self:flex-start;height:46px;margin-top:16px;padding:0 26px}
.msu-so--wide .msu-so__chat{margin-top:0}

/* ---- 資料作成AI（赤）：白のロゴとサービス名・見出し（数字を大きく）・説明・作成例の資料2枚・白のボタン ---- */
.msu-sr{display:flex;flex-direction:column;padding:18px;color:#fff}
.msu-sr__brand,.msu-sn__brand{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.msu-sr__logo,.msu-sn__logo{display:block;width:auto;height:15px}
.msu-sr__name,.msu-sn__name{font-size:12.5px;font-weight:700;line-height:1.4;letter-spacing:.04em}
.msu-sr__h{display:block;margin-top:14px;font-size:23px;font-weight:800;line-height:1.4;letter-spacing:.02em;color:#fff}
.msu-sr__num{font-family:var(--msu-num);font-size:46px;font-weight:800;line-height:1.05;letter-spacing:0;margin-right:2px}
.msu-sr__s{display:block;margin-top:8px;font-size:13.5px;line-height:1.7}
.msu-sr__slides{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.msu-sr__slides img{display:block;width:100%;height:auto;border-radius:3px}
.msu-sr__btn{display:flex;align-items:center;justify-content:center;height:42px;margin-top:14px;border-radius:8px;background:#fff;color:#C2363A;font-size:14.5px;font-weight:800;letter-spacing:.04em}
.msu__a:hover .msu-sr__btn{background:#FFF1F1}
.msu-sr--wide{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:0 26px;padding:22px 26px}
.msu-sr--wide .msu-sr__l{display:flex;flex-direction:column;align-items:flex-start}
.msu-sr--wide .msu-sr__h{font-size:26px}
.msu-sr--wide .msu-sr__num{font-size:52px}
.msu-sr--wide .msu-sr__btn{display:inline-flex;height:40px;padding:0 20px}
.msu-sr--wide .msu-sr__slides{margin-top:0}

/* ---- 受発注業務の自動化（青）：見出しの2行目は淡い青、画面は LP の受信箱 ---- */
.msu-sn{display:flex;flex-direction:column;padding:18px;color:#fff}
.msu-sn__name{color:#DCE6F8}
.msu-sn__h{display:block;margin-top:14px;font-size:23px;font-weight:800;line-height:1.45;letter-spacing:.02em;color:#fff}
.msu-sn__h em{font-style:normal;color:#BFD3FA}
.msu-sn--square .msu-sn__h{font-size:21px}
.msu-sn__s{display:block;margin-top:8px;font-size:13.5px;line-height:1.7;color:#E8EEF8}
.msu-sn__shot{display:block;margin-top:14px}
.msu-sn__shot img{display:block;width:100%;height:auto;border-radius:4px;background:#fff}
.msu-sn__btn{display:flex;align-items:center;justify-content:center;height:42px;margin-top:14px;border-radius:4px;background:#fff;color:#13264D;font-size:14.5px;font-weight:800;letter-spacing:.04em}
.msu__a:hover .msu-sn__btn{background:#EAF0FA}
.msu-sn--wide{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:0 26px;padding:22px 26px}
.msu-sn--wide .msu-sn__l{display:flex;flex-direction:column;align-items:flex-start}
.msu-sn--wide .msu-sn__h{font-size:26px}
.msu-sn--wide .msu-sn__btn{display:inline-flex;height:40px;padding:0 20px}
.msu-sn--wide .msu-sn__shot{margin-top:0}

/* 本文が 800px より狭い PC の幅（1024〜1167px）では、受発注の横長の見出しを小さくして2行に収める（上の 26px より後に置く） */
@media (max-width:1167px){.msu-sn--wide .msu-sn__h{font-size:22px}}

/* 線だけを減らす。site.css の最後に置く（後勝ち）
   2026-11-10 代表「縦線、横線みたいなのがとにかくAIっぽい」→ 色まで外した版は「オレンジのタブはまだ良かった。前の方がいい、色味無くしすぎ」
   色（橙のタブ・数字・背景・地図）は前のまま。外すのは、見出しの下の黒い太線と、数字の札の間の縦線だけ */
.h2{border-bottom:0;padding-bottom:0}
.keys li+li,.keys.k8 li,.keys.k6 li{border-left:0!important}
.main-num>div+div{border-left:0}
