/* シニア割マップ（静的版）。2026-10-02 旅行サイト風に：大きな写真・白地・明朝の見出し・朱のボタン */
:root{--paper:#f6f4ef;--paper2:#ece8e0;--card:#fff;--ink:#1d2630;--ink2:#58626c;--line:#dcd7cd;
--shu:#c8401a;--shu-d:#9a2f10;--kin:#fbe6dc;--aka:#c0392b;--ai:#16314a;
--disp:"Shippori Mincho B1",serif;--body:"BIZ UDPGothic",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}html,body{overflow-x:clip}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--card);font-size:17px;line-height:1.85}
a{color:var(--shu)}img{max-width:100%;height:auto}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}

/* ヘッダー */
.gh{background:#fff;color:var(--ink);position:sticky;top:0;z-index:1100;border-bottom:1px solid var(--line)}
.gh .wrap{display:flex;align-items:center;gap:24px;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.logo .mark{width:38px;height:38px;border-radius:6px;background:var(--shu);color:#fff;display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:22px}
.logo b{font-family:var(--disp);font-weight:800;font-size:24px;line-height:1;white-space:nowrap;letter-spacing:.02em}
.logo small{display:block;font-size:12px;color:var(--ink2);margin-top:5px;letter-spacing:.05em}
.gnav{display:flex;gap:26px;margin-left:auto;font-size:15px;font-weight:700}.gnav a{color:var(--ink);text-decoration:none;white-space:nowrap;padding:22px 0;border-bottom:3px solid transparent}.gnav a:hover{border-bottom-color:var(--shu)}
.mapm{display:none;margin-left:auto;color:#fff;background:var(--shu);font-weight:700;font-size:15px;text-decoration:none;border-radius:6px;padding:5px 12px;white-space:nowrap}

/* フッター */
.gf{background:var(--ai);color:#d5dde5;padding:44px 0 24px;font-size:15px;margin-top:64px}
.gf .wrap{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:32px}
.gf b{color:#fff;font-family:var(--disp);font-weight:800;font-size:22px}.gf h4{margin:0;color:#fff;font-size:16px}
.gf p{line-height:2;margin:10px 0 0}.gf a{color:#fff}.gf .cr{text-align:center;font-size:13px;opacity:.7;margin-top:28px}

/* ボタン */
.go{display:inline-block;font-family:var(--body);font-weight:700;font-size:18px;padding:12px 30px;border:0;border-radius:6px;background:var(--shu);color:#fff;text-decoration:none;cursor:pointer}
.go:hover{background:var(--shu-d)}
.lnk{font-weight:700;margin-left:10px}

/* トップ：大きな写真 */
.hero{position:relative;background:var(--ai) center 40%/cover no-repeat;color:#fff;min-height:520px;display:flex;align-items:center}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,32,.72) 0%,rgba(10,20,32,.45) 45%,rgba(10,20,32,0) 75%)}
.hero .wrap{position:relative;width:100%;padding-top:56px;padding-bottom:120px}
.hero h1{font-family:var(--disp);font-weight:800;font-size:clamp(32px,5vw,56px);line-height:1.35;margin:0 0 18px;letter-spacing:.02em;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.hero .lead{font-size:18px;max-width:560px;margin:0;text-shadow:0 1px 8px rgba(0,0,0,.45)}
.sgw{position:relative;z-index:2;margin-top:-76px}
.sagasu{display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr auto;gap:14px;align-items:end;background:#fff;border-radius:8px;padding:20px 22px;box-shadow:0 10px 30px rgba(16,30,45,.18)}
.sagasu label{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:15px;color:var(--ink2);min-width:0}
.sagasu select,.sagasu input{width:100%;min-width:0;font:inherit;font-size:17px;font-weight:400;color:var(--ink);padding:10px;border:1px solid var(--line);border-radius:6px;background:#fff}
.sagasu .go{height:50px;white-space:nowrap}
.sgn{font-size:14px;color:var(--ink2);margin:8px 2px 0}
.sec{padding:52px 0 8px}.sec.alt{background:var(--paper);padding-bottom:52px;margin-top:44px}
.sh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 20px}
.sh h2{font-family:var(--disp);font-weight:800;font-size:30px;margin:0;letter-spacing:.03em}.sh a{font-weight:700;white-space:nowrap}
.zei{font-size:15px;color:var(--ink2);margin-top:18px}

/* 地方のカード */
.chiho{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.ch{min-width:0}
.ph{position:relative;aspect-ratio:16/10;border-radius:6px;overflow:hidden;background:var(--paper2)}
.ph img{display:block;width:100%;height:100%;object-fit:cover}
.ph::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(8,16,26,.7))}
.ph p{position:absolute;left:14px;right:14px;bottom:10px;margin:0;z-index:1;color:#fff;display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.ph b{font-family:var(--disp);font-weight:800;font-size:22px;line-height:1.3}.ph span{font-size:14px;font-weight:700}
.kn{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.kbs{display:flex;flex-wrap:wrap;gap:8px}
.kb{display:inline-flex;align-items:baseline;gap:4px;padding:4px 10px;border:1px solid var(--line);border-radius:6px;color:var(--ink);text-decoration:none;font-weight:700;font-size:16px;background:#fff}
.kb em{font-style:normal;font-size:13px;color:var(--shu)}a.kb:hover{border-color:var(--shu);color:var(--shu)}
.kb.off{color:#aaa49b;background:transparent;font-weight:400}

/* ジャンルの写真 */
.gt{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gt a{position:relative;display:block;aspect-ratio:4/3;border-radius:6px;overflow:hidden;background:var(--ai);color:#fff;text-decoration:none}
.gt img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gt a:hover img{transform:scale(1.05)}
.gt a::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(8,16,26,.75))}
.gt p{position:absolute;left:14px;right:14px;bottom:10px;margin:0;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.gt b{font-family:var(--disp);font-weight:800;font-size:21px;line-height:1.3}.gt span{font-size:14px;font-weight:700}
.oshi{display:flex;flex-direction:column;gap:4px;background:var(--card);border:2px solid var(--shu);border-radius:8px;padding:18px 22px;text-decoration:none;color:var(--ink)}
.oshi b{font-family:var(--disp);font-weight:800;font-size:22px;color:var(--shu)}.oshi:hover{background:#fff8f3}

/* 読みもの */
.kc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
.kc a{display:flex;flex-direction:column;gap:10px;color:var(--ink);text-decoration:none;font-weight:700;font-size:16px;line-height:1.6}
.kc img,.kc .ni{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:6px;background:var(--paper2)}
.kc a:hover span{text-decoration:underline}

/* 県・ジャンルのページの頭 */
.ban{position:relative;background:var(--ai) center 62%/cover no-repeat;color:#fff;padding:64px 0 40px}
.ban::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,32,.75),rgba(10,20,32,.35))}
.ban .wrap{position:relative}.ban .pk{color:#e5ebf0}.ban .pk a{color:#fff}
.ban h1{font-family:var(--disp);font-weight:800;font-size:clamp(28px,4.4vw,44px);line-height:1.35;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.ban+.pg{padding-top:26px}

/* 記事のならび */
.yk{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.yk li{border-top:1px solid var(--line)}
.yk a{display:flex;gap:14px;align-items:center;padding:12px 0;color:var(--ink);text-decoration:none;font-weight:700;font-size:16px;line-height:1.6}
.yk a:hover span{text-decoration:underline}
.yk img,.yk .ni{flex:0 0 160px;width:160px;height:90px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:var(--paper2)}

/* 県・ジャンルのページ */
.pg{padding-top:20px}
.pk{font-size:14px;color:var(--ink2);margin:0 0 10px}.pk a{color:inherit}
.pg h1,.kiji h1{font-family:var(--disp);font-weight:800;font-size:clamp(26px,4vw,36px);line-height:1.4;margin:0 0 14px}
.pg .lead{max-width:860px;margin:0 0 18px}
.tool{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin:0 0 22px}.tool .note{font-size:14px;color:var(--ink2);flex:1;min-width:260px}
.gmoku{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px;padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:8px}
.gmoku a{display:inline-flex;gap:4px;align-items:baseline;font-weight:700;text-decoration:none;color:var(--ink);padding:3px 10px;border-radius:6px;background:var(--paper)}
.gmoku a em{font-style:normal;font-size:14px;color:var(--shu)}.gmoku a:hover{background:var(--kin)}
.gs{margin:36px 0 0;scroll-margin-top:80px}
.gs h2{font-family:var(--disp);font-weight:800;font-size:24px;line-height:1.4;margin:0 0 12px;padding:0 0 8px;border-bottom:2px solid var(--ink)}
.gs h2 small{font-size:15px;color:var(--ink2);margin-left:10px;font-family:var(--body);font-weight:700}
.sp{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:12px 16px;margin:0 0 8px;scroll-margin-top:80px}
.sp:target{border-color:var(--shu);box-shadow:0 0 0 2px var(--shu)}
.sp-h{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.sp-h b{font-size:18px;line-height:1.5}
.age{font-size:14px;font-weight:700;color:var(--shu-d);background:var(--kin);border-radius:4px;padding:0 8px;white-space:nowrap}
.sp p{margin:4px 0 0}.sp .wr{font-size:17px}.sp .jo{font-size:15px;color:var(--ink2)}
.sp .ba{font-size:15px;color:var(--ink2)}.sp .ba a{font-weight:700}
.sp.grp{background:#fffaf4}.sp .nm{font-size:15px;line-height:1.9}
.mae{margin:16px 0 0;font-weight:700}

/* 記事 */
.kw{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start;padding-top:20px}
.kiji{min-width:0}.kiji .hi{font-size:14px;color:var(--ink2);margin:0 0 16px}
.kiji figure.hero{margin:0 0 18px}.kiji figure.hero img{display:block;width:100%;border-radius:8px;border:1px solid var(--line)}
.mokuji{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px 20px;margin:0 0 24px}.mokuji b{font-size:15px}
.mokuji ol{margin:6px 0 0;padding-left:1.4em}.mokuji li{font-size:16px;line-height:1.8}
.hon{font-size:17px;line-height:1.95}
.hon h2{font-family:var(--disp);font-weight:800;font-size:24px;line-height:1.45;margin:44px 0 14px;padding:0 0 8px;border-bottom:2px solid var(--ink);scroll-margin-top:80px}
.hon h3{font-size:20px;line-height:1.5;margin:28px 0 10px}
.hon p{margin:0 0 1.1em}.hon ul,.hon ol{padding-left:1.4em}
.hon table{border-collapse:collapse;width:100%;font-size:16px;background:#fff;margin:14px 0}
.hon th,.hon td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top;line-height:1.7}.hon th{background:var(--paper2)}
.hon details{border-top:1px solid var(--line);padding:4px 0}.hon details summary{cursor:pointer;font-weight:700;padding:10px 0}
.hon .sr-table-wrap{overflow-x:auto}
.cta{margin:40px 0 0;padding:20px 22px;border:2px solid var(--ink);border-radius:8px;background:var(--card)}
.cta b{font-family:var(--disp);font-weight:800;font-size:20px}.cta p{margin:8px 0 14px;font-size:16px}
.kaku{margin:24px 0 0;padding:14px 18px;background:var(--paper2);border-radius:6px;font-size:15px}
.rh{font-family:var(--disp);font-weight:800;font-size:22px;margin:40px 0 10px}
.kiji .yk{grid-template-columns:1fr}
.side{position:sticky;top:84px;display:flex;flex-direction:column;gap:16px}
.sb{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px 18px}
.sbh{font-family:var(--disp);font-weight:800;font-size:18px;margin:0 0 8px}.sb p{font-size:15px;margin:0 0 12px}
.sb .go{display:block;text-align:center;margin:0 0 10px}.sbl{display:inline-block;font-weight:700;font-size:15px}
.sb ul{list-style:none;padding:0;margin:0 0 8px}.sb li{border-top:1px solid var(--line);padding:8px 0;font-size:15px;line-height:1.6}.sb li:first-child{border-top:0}.sb li a{color:var(--ink)}

/* 固定ページ・問い合わせ */
.kotei{max-width:860px}.kotei h2,.kotei h3{font-family:var(--disp);font-weight:800}.kotei table{border-collapse:collapse;width:100%;background:#fff}
.kotei th,.kotei td{border:1px solid var(--line);padding:8px 12px;text-align:left}
.toi{max-width:680px}.toi .note{font-size:15px;color:var(--ink2)}
.toi form{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 20px 20px;margin-top:16px}
.toi label{display:block;margin:14px 0;font-weight:700}.toi label em{font-style:normal;font-size:13px;color:var(--aka);margin-left:6px}
.toi input,.toi select,.toi textarea{display:block;width:100%;margin-top:4px;font:inherit;font-weight:400;padding:9px;border:1px solid var(--line);border-radius:6px}
.hp{position:absolute;left:-9999px}.msg.ok{color:#1f7a3a}.msg.ng{color:var(--aka)}

@media(max-width:1000px){.kw{grid-template-columns:1fr;gap:32px}.side{position:static}}
@media(max-width:1000px){.chiho,.gt{grid-template-columns:repeat(3,minmax(0,1fr))}.sagasu{grid-template-columns:1fr 1fr 1fr}.sagasu .ad{grid-column:1/3}}
@media(max-width:860px){.kc{grid-template-columns:1fr 1fr}.yk{grid-template-columns:1fr}.gf .wrap{grid-template-columns:1fr;gap:16px}}
@media(max-width:760px){.wrap{padding:0 16px}.gh .wrap{height:58px;gap:10px}.logo b{font-size:19px}.logo .mark{width:34px;height:34px;font-size:18px}.logo small{display:none}
.gnav{display:none}.mapm{display:block}.sh h2{font-size:24px}
.hero{min-height:440px;background-position:76% 40%}.hero .wrap{padding-top:40px;padding-bottom:96px}.hero .lead{font-size:16px}
.hero::before{background:linear-gradient(180deg,rgba(10,20,32,.25),rgba(10,20,32,.7))}
.sgw{margin-top:-60px}.sagasu{grid-template-columns:1fr 1fr;padding:16px}.sagasu .ad,.sagasu .go{grid-column:1/-1}
.chiho{grid-template-columns:1fr 1fr;gap:18px 12px}.ph b{font-size:17px;white-space:nowrap}.ph p{left:10px;right:10px;flex-direction:column;align-items:flex-start;gap:0}.ph span{font-size:13px}
.hero h1{font-size:29px}
.gt{grid-template-columns:1fr 1fr;gap:10px}.gt b{font-size:17px}.gt p{left:10px;right:10px}.gt span{font-size:13px}
.kc{grid-template-columns:1fr;gap:20px}.ban{padding:44px 0 28px}
.kb{padding:4px 8px;font-size:15px}.kb em{font-size:13px}
.yk img,.yk .ni{flex-basis:112px;width:112px;height:63px}.yk a{font-size:15px}.gs h2{font-size:21px}.sp{padding:10px 12px}.sp-h b{font-size:17px}.hon h2{font-size:21px}}
/* 原稿の記事（記事/*.md・kiji_md.py）：市営住宅さがしの読みものと同じ型 2026-10-03 */
.yomu{--ai-l:#e6edf4}
.yomu p{margin:0 0 1.5em;letter-spacing:.02em;line-height:1.95}.yomu li{margin:.35em 0;letter-spacing:.02em;line-height:1.9}
.hon .yomu h2{background:var(--ai-l);border:0;border-left:6px solid var(--ai);border-radius:0 6px 6px 0;padding:12px 16px;margin:60px 0 20px}
.yomu h3{border-left:4px solid var(--shu);padding:2px 0 2px 12px;margin:36px 0 14px;line-height:1.5}
.yomu p b,.yomu li b,.yomu p strong,.yomu li strong{background:linear-gradient(transparent 60%,#ffe27a 60%);padding:0 2px}
.yomu .hyo{overflow-x:auto;margin:16px 0}.yomu table{margin:0}.yomu thead th{background:var(--ai);color:#fff;border-color:var(--ai);white-space:nowrap}
.yomu tbody tr:nth-child(even) td{background:#f5f8fb}.yomu tbody td:first-child{font-weight:700}.yomu td b{color:var(--shu-d);white-space:nowrap}
.yomu blockquote{margin:18px 0;text-align:center;font-weight:700;font-size:17px;border:2px solid var(--ai);border-radius:8px;background:#fff;padding:16px}
.yomu figure.e{margin:32px 0}.yomu figure.e img{display:block;width:100%;height:auto;border-radius:6px;border:1px solid var(--line)}
.yomu .nh{font-family:var(--disp);font-weight:800;font-size:18px;margin:0 0 8px;line-height:1.5}
.yomu .yoten{background:var(--paper2);border-radius:6px;padding:16px 20px;margin:22px 0}.yomu .yoten ul{margin:0}
.yomu .nayami{border:2px solid var(--ink);border-radius:6px;background:#fff;padding:16px 20px;margin:22px 0}.yomu .nayami ul{list-style:none;padding:0;margin:0 0 10px}.yomu .nayami li{padding:6px 0 6px 1.6em;position:relative;border-bottom:1px dashed var(--line)}.yomu .nayami li:before{content:"？";position:absolute;left:0;color:var(--shu);font-weight:700}
.yomu .hint{border-left:4px solid #e0a42a;background:#fffaf0;padding:14px 18px;margin:22px 0}.yomu .hint p{margin:6px 0 0}
.yomu .kiku{background:#fff;border:2px solid var(--ai);border-radius:8px;padding:16px 20px;margin:28px 0}.yomu .kiku ol{margin:0}
.yomu details.fq{border-top:1px solid var(--line)}.yomu details.fq summary{font-size:17px}.yomu details.fq p{margin:0 0 12px}
.yomu .kaiwa{margin:26px 0;display:flex;flex-direction:column;gap:14px}
.yomu .fk{display:flex;gap:12px;align-items:flex-start}.yomu .fk.r{flex-direction:row-reverse}
.yomu .fk-k{flex:0 0 64px;display:flex;flex-direction:column;align-items:center;gap:2px}.yomu .fk-k img{width:64px;height:64px;border-radius:50%;border:2px solid var(--line);background:#fff;object-fit:cover}.yomu .fk-k small{font-size:12px;color:var(--ink2);white-space:nowrap}
.yomu .fk-t{position:relative;margin:4px 0 0!important;background:#fff;border:2px solid var(--line);border-radius:14px;padding:12px 16px;font-size:16px;line-height:1.85;max-width:calc(100% - 76px)}
.yomu .fk-t:before{content:"";position:absolute;top:18px;left:-10px;border:8px solid transparent;border-right:10px solid var(--line);border-left:0}
.yomu .fk-t:after{content:"";position:absolute;top:20px;left:-6px;border:6px solid transparent;border-right:8px solid #fff;border-left:0}
.yomu .fk.r .fk-t{background:var(--ai-l);border-color:#b9cbe2}.yomu .fk.r .fk-t:before{left:auto;right:-10px;border-right:0;border-left:10px solid #b9cbe2}.yomu .fk.r .fk-t:after{left:auto;right:-6px;border-right:0;border-left:8px solid var(--ai-l)}
@media(max-width:520px){.yomu p,.yomu li{line-height:2}.yomu table{font-size:14px}.yomu th,.yomu td{padding:8px}.yomu thead th{white-space:normal}.hon .yomu h2{padding:10px 12px;margin-top:52px}
.yomu .fk-k{flex-basis:52px}.yomu .fk-k img{width:52px;height:52px}.yomu .fk-t{max-width:calc(100% - 64px);padding:10px 13px;font-size:15px}}

/* 入口：既存の記事から、原稿の記事への「くわしい記事」（build.posts の iriguchi） */
.kuwashiku{border:2px solid #16314a;border-radius:10px;padding:12px 16px;margin:18px 0 26px;background:#f6f4ef}
.kuwashiku .nh{margin:0 0 6px;font-weight:700;color:#16314a}
.kuwashiku ul{margin:0;padding-left:1.2em}
.kuwashiku li{margin:4px 0}
.kuwashiku a{font-weight:700}
