@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@500;600&display=swap');
:root{--paper:#f7f3ea;--warm:#fffdf8;--ink:#292824;--muted:#68645d;--red:#94362f;--deep:#66241f;--gold:#aa8650;--line:#ddd4c5;--sage:#6f796d;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--warm);font-family:'Noto Sans JP',sans-serif;line-height:1.85}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.6rem;z-index:99}.preopen{text-align:center;background:var(--ink);color:#fff;padding:.45rem 1rem;font-size:.76rem;letter-spacing:.04em}.header{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.5rem;position:relative}.brand{display:flex;gap:.72rem;align-items:center;color:var(--ink);text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--red);color:var(--red);font-family:'Noto Serif JP';font-size:1.2rem;transform:rotate(-3deg)}.brand-mark::before{content:'道'}.brand strong{font:600 1.08rem 'Noto Serif JP';letter-spacing:.08em;display:block}.brand small{display:block;font-size:.67rem;color:var(--muted);letter-spacing:.08em}.header nav{display:flex;align-items:center;gap:1.1rem}.header nav a,.footer-links a{font-size:.76rem;color:var(--ink);text-decoration:none}.header nav a:hover,.header nav a.active{color:var(--red)}.nav-cta{border:1px solid var(--red);padding:.55rem .8rem}.menu{display:none;background:none;border:0}.hero{background:linear-gradient(135deg,var(--paper) 0 66%,#eee6d8 66%);min-height:680px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:stretch}.hero-main{padding:clamp(4rem,8vw,8rem) max(5vw,calc((100vw - var(--max))/2));padding-right:5vw}.eyebrow,.kicker{color:var(--red);font-size:.78rem;letter-spacing:.19em;font-weight:600;text-transform:uppercase}.hero h1{font:600 clamp(2.25rem,5vw,4.7rem)/1.36 'Noto Serif JP';letter-spacing:.04em;margin:1.1rem 0 1.6rem}.hero-lead{font:500 clamp(1.02rem,1.6vw,1.3rem)/2 'Noto Serif JP';max-width:650px}.region-line{display:inline-flex;align-items:center;gap:.7rem;border-left:2px solid var(--red);padding:.3rem 0 .3rem 1rem;margin:1.5rem 0;color:var(--muted);font-size:.88rem}.buttons{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:50px;padding:.65rem 1.15rem;background:var(--red);color:#fff;text-decoration:none;border:1px solid var(--red);font-weight:600;font-size:.9rem}.button.secondary{background:transparent;color:var(--red)}.origin{padding:3rem clamp(1.5rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(100,80,50,.15)}.origin-image{aspect-ratio:4/5;min-height:340px;background:linear-gradient(160deg,rgba(47,45,40,.1),rgba(147,54,47,.23)),radial-gradient(circle at 50% 70%,#fbf7ef 0 5%,#c8b99f 6% 7%,transparent 8%),linear-gradient(125deg,#c8c0b0,#766e62);display:flex;align-items:flex-end;padding:1.5rem;color:#fff;position:relative;overflow:hidden}.origin-image:before{content:'写真差し替え予定';position:absolute;top:1rem;right:1rem;font-size:.68rem;padding:.25rem .5rem;border:1px solid rgba(255,255,255,.65)}.origin h2{font:600 1.35rem 'Noto Serif JP';margin:1.3rem 0 .3rem}.origin p{font-size:.82rem;color:var(--muted);margin:.2rem 0}.section{padding:clamp(4rem,8vw,7rem) 1.5rem}.section-inner{max-width:var(--max);margin:auto}.section-title{font:600 clamp(1.75rem,3vw,2.8rem)/1.5 'Noto Serif JP';margin:.5rem 0 1rem}.section-intro{max-width:760px;color:var(--muted);margin-bottom:2.5rem}.paper{background:var(--paper)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.card{background:#fff;border:1px solid var(--line);padding:1.8rem;min-height:250px;display:flex;flex-direction:column}.card .num{color:var(--gold);font:500 1rem 'Noto Serif JP'}.card h3{font:600 1.18rem 'Noto Serif JP';margin:.65rem 0}.card p{font-size:.86rem;color:var(--muted);margin:0}.text-link{margin-top:auto;padding-top:1rem;color:var(--red);font-weight:600;text-decoration:none;font-size:.84rem}.business-block{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--ink);color:#fff}.business-copy{padding:clamp(2.5rem,6vw,5rem)}.business-copy p{color:#dedbd5}.check-grid{padding:clamp(2.5rem,6vw,5rem);background:#37352f;display:grid;grid-template-columns:1fr 1fr;gap:.8rem;align-content:center}.check-grid span{border-bottom:1px solid #5a5751;padding:.8rem 0;font-size:.88rem}.check-grid span:before{content:'—';color:#c69c61;margin-right:.6rem}.region{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.map{min-height:340px;background:#eee6d8;position:relative;display:grid;place-items:center;overflow:hidden}.map-shape{width:52%;height:72%;background:#ddd0bb;clip-path:polygon(46% 0,69% 11%,65% 30%,93% 45%,73% 62%,79% 92%,48% 100%,29% 84%,7% 65%,16% 42%,2% 20%,33% 16%)}.pin{position:absolute;background:var(--red);color:#fff;border-radius:30px;padding:.42rem .75rem;font-size:.72rem;box-shadow:0 5px 15px #7555}.pin.takasaki{left:32%;top:52%}.pin.maebashi{left:53%;top:35%}.news-row{border-top:1px solid var(--line);padding:1.2rem 0;display:grid;grid-template-columns:130px 160px 1fr;gap:1rem;align-items:center}.tag{border:1px solid var(--gold);color:#7a5d31;padding:.2rem .5rem;text-align:center;font-size:.72rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.quote{font:500 1.55rem/1.8 'Noto Serif JP';color:var(--deep);border-left:2px solid var(--red);padding-left:1.5rem}.cta-band{background:var(--red);color:#fff;text-align:center}.cta-band p{color:#f2dedb}.page-hero{padding:clamp(4rem,9vw,7rem) 1.5rem;background:var(--paper);border-top:1px solid var(--line)}.page-hero>div,.page-body{max-width:950px;margin:auto}.page-hero h1{font:600 clamp(2rem,4vw,3.8rem)/1.45 'Noto Serif JP';margin:.6rem 0 1rem}.page-body{padding:4.5rem 1.5rem 7rem}.page-body h2{font:600 1.65rem 'Noto Serif JP';margin:3.5rem 0 1rem}.page-body h2:first-child{margin-top:0}.page-body h3{font:600 1.05rem 'Noto Serif JP'}.page-body p,.page-body li{color:var(--muted)}.entry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0}.entry{border:1px solid var(--line);padding:1.5rem;background:#fff}.entry p{margin-bottom:0}.notice{background:#f3eee4;border-left:3px solid var(--gold);padding:1.3rem 1.5rem;margin:2rem 0}.future{border:1px dashed #b7aa97;padding:1.5rem;margin-top:3rem}.steps{counter-reset:step;list-style:none;padding:0}.steps li{counter-increment:step;position:relative;padding:0 0 2rem 4rem}.steps li:before{content:counter(step);position:absolute;left:0;top:0;width:2.6rem;height:2.6rem;border:1px solid var(--red);color:var(--red);display:grid;place-items:center;font-family:'Noto Serif JP'}.contact-box{background:var(--paper);padding:2rem;border:1px solid var(--line)}footer{background:#24231f;color:#ddd8cf;padding:4rem max(1.5rem,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1fr auto;gap:2rem}.footer-brand{color:#fff}.footer-links{display:flex;gap:1rem;flex-wrap:wrap}.footer-links a{color:#ddd8cf}.legal{grid-column:1/-1;border-top:1px solid #494740;padding-top:1.5rem;font-size:.78rem;color:#aaa69e}footer>small{grid-column:1/-1;color:#8d8982}
@media(max-width:1000px){.header nav{display:none;position:absolute;z-index:20;top:100%;left:1rem;right:1rem;background:#fff;border:1px solid var(--line);padding:1rem;box-shadow:0 14px 30px #3322;flex-direction:column;align-items:stretch}.header nav.open{display:flex}.menu{display:grid;gap:4px}.menu span{display:block;width:24px;border-top:1px solid var(--ink)}.menu b{font-size:.58rem;font-weight:500}.hero{grid-template-columns:1fr}.hero-main{padding:5rem 2rem}.origin{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(220px,.7fr) 1fr;gap:2rem}.origin-image{min-height:300px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.preopen{text-align:left;font-size:.68rem}.header{padding:.85rem 1rem}.brand-mark{width:37px;height:37px}.brand strong{font-size:.9rem}.brand small{font-size:.58rem}.hero-main{padding:4rem 1.4rem}.hero h1{font-size:2.35rem}.origin,.business-block,.region,.split{grid-template-columns:1fr}.origin{display:grid;padding:1.4rem}.origin-image{aspect-ratio:16/11}.cards,.entry-grid{grid-template-columns:1fr}.card{min-height:220px}.check-grid{grid-template-columns:1fr}.region{gap:2rem}.news-row{grid-template-columns:100px 1fr}.news-row time{grid-column:1/-1}.section{padding-left:1.2rem;padding-right:1.2rem}.page-body{padding:3rem 1.2rem 5rem}footer{grid-template-columns:1fr}.footer-links{flex-direction:column}.legal{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.faq-page{background:var(--warm)}.faq-head{background:var(--paper);padding:clamp(2.5rem,7vw,6rem) 1.2rem}.faq-head>*{max-width:900px;margin-left:auto;margin-right:auto}.lang-switch{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:2.5rem}.lang-switch a{color:var(--red);background:#fff;border:1px solid var(--line);padding:.52rem .75rem;text-decoration:none;font-size:.85rem;font-weight:600}.faq-head h1{font:600 clamp(2rem,5vw,4rem)/1.35 'Noto Serif JP';margin:.7rem auto 1rem}.faq-lead{font-size:1.08rem;color:var(--muted)}.faq-answer{background:#fff;border-left:5px solid var(--red);padding:1.25rem 1.4rem;margin-top:2rem;font-size:1.08rem}.translation-status{font-size:.75rem;color:var(--muted);margin-top:1rem}.faq-content{max-width:900px;margin:auto;padding:3.5rem 1.2rem 6rem}.faq-content section{padding:1.8rem 0;border-bottom:1px solid var(--line)}.faq-content h2{font:600 clamp(1.35rem,3vw,1.75rem)/1.5 'Noto Serif JP';margin:0 0 .8rem}.faq-content p{color:var(--muted)}.checklist{background:#fff;border:1px solid var(--line)!important;padding:1.5rem!important;margin-top:2rem}.checklist ul{padding-left:1.4rem}.checklist li{margin:.6rem 0}.faq-cta{background:var(--red);color:#fff;padding:2rem;margin-top:2rem}.faq-cta .button{background:#fff;color:var(--red);border-color:#fff}.faq-cta p{color:#f2dedb;font-size:.83rem;margin-bottom:0}.source-note{padding:1.3rem;margin-top:1rem;background:#f4f0e8;font-size:.8rem}.source-note p{margin:.3rem 0 0}.faq-page:lang(en),.faq-page:lang(tl){letter-spacing:0}.faq-page:lang(en) h1,.faq-page:lang(en) h2,.faq-page:lang(tl) h1,.faq-page:lang(tl) h2{font-family:'Noto Sans JP',sans-serif}
@media(max-width:680px){.lang-switch{position:sticky;top:0;z-index:5;background:var(--paper);padding:.55rem 0}.lang-switch a{flex:1;text-align:center;padding:.6rem .25rem}.faq-head{padding-top:1rem}.faq-answer{font-size:1rem}.faq-content{padding-top:2rem}.faq-cta{padding:1.4rem}.faq-cta .button{width:100%}}
.site-lang{max-width:var(--max);margin:0 auto;padding:.35rem 1.5rem 1rem;display:flex;justify-content:flex-end;gap:.35rem}.site-lang a{border:1px solid var(--line);color:var(--red);background:#fff;text-decoration:none;font-size:.78rem;font-weight:600;padding:.35rem .65rem}.translation-status{margin-top:2.5rem;border-top:1px solid var(--line);padding-top:1rem;color:var(--muted);font-size:.78rem}html[lang="en"] body,html[lang="tl"] body{font-family:'Noto Sans JP',sans-serif}html[lang="en"] .hero h1,html[lang="tl"] .hero h1,html[lang="en"] .section-title,html[lang="tl"] .section-title,html[lang="en"] .page-hero h1,html[lang="tl"] .page-hero h1{font-family:'Noto Sans JP',sans-serif;letter-spacing:0}.hero:has(.hero-main:only-child){grid-template-columns:1fr;min-height:560px}.hero:has(.hero-main:only-child) .hero-main{max-width:var(--max);width:100%;margin:auto}
@media(max-width:680px){.site-lang{position:sticky;top:0;z-index:15;background:var(--warm);padding:.45rem .75rem;justify-content:stretch}.site-lang a{flex:1;text-align:center;padding:.55rem .25rem}.header nav{max-height:75vh;overflow:auto}.header nav a{padding:.35rem 0}}
.faq-gateway{background:var(--ink);color:#fff;padding:clamp(2.5rem,6vw,5rem) 1.5rem}.faq-gateway-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:stretch}.faq-gateway h2{font:600 clamp(1.8rem,3.5vw,3.2rem)/1.45 'Noto Serif JP';margin:.5rem 0 1rem}.faq-gateway p{color:#dedbd5}.featured-faq{display:flex;flex-direction:column;justify-content:center;background:var(--red);color:#fff;text-decoration:none;padding:clamp(1.5rem,4vw,3rem);border:1px solid #b8645d}.featured-faq span{font-size:.75rem;letter-spacing:.16em}.featured-faq strong{font:600 clamp(1.25rem,2.3vw,2rem)/1.55 'Noto Serif JP';margin:1rem 0}.featured-faq small{font-size:.83rem}.faq-hub-hero{background:linear-gradient(135deg,var(--paper),#eadfce)}.faq-hub{max-width:1050px}.topic-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.topic-list span{display:grid;grid-template-columns:auto 1fr;gap:.25rem .7rem;border:1px solid var(--line);padding:1.15rem;background:#fff;font-weight:600}.topic-list b{color:var(--gold);font-family:'Noto Serif JP'}.topic-list small{grid-column:2;color:var(--muted);font-weight:400;font-size:.72rem}.latest-faq{margin:3rem 0;background:var(--paper);border-left:5px solid var(--red);padding:clamp(1.5rem,4vw,3rem)}.latest-faq h2{margin-top:.5rem}.faq-paths,.continue-reading>div{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.faq-paths a,.continue-reading a{display:flex;flex-direction:column;border:1px solid var(--line);padding:1.3rem;text-decoration:none;color:var(--ink);background:#fff}.faq-paths span,.continue-reading span{color:var(--red);font-size:.82rem;margin-top:.4rem}.continue-reading{max-width:900px;margin:0 auto 5rem;padding:2rem 1.2rem;border-top:1px solid var(--line)}.continue-reading h2{font:600 1.65rem 'Noto Serif JP'}.continue-reading>div{grid-template-columns:repeat(3,1fr)}
@media(max-width:680px){.faq-gateway-inner,.topic-list,.faq-paths,.continue-reading>div{grid-template-columns:1fr}.faq-gateway{padding:2.2rem 1.2rem}.featured-faq{min-height:230px}.topic-list span{padding:1rem}.continue-reading{padding-top:1.5rem}}

.fee-faq{margin:3rem 0;border-top:1px solid var(--line);padding-top:1.5rem}.fee-faq details{border-bottom:1px solid var(--line);padding:1rem 0}.fee-faq summary{cursor:pointer;font-weight:600;color:var(--ink);font-size:1rem}.fee-faq details p{margin:.8rem 0 .2rem}.source-note{display:block;margin:2.5rem 0 0;padding:1rem 1.2rem;border-left:3px solid var(--gold);background:var(--paper);font-size:.88rem;overflow-wrap:anywhere}.source-note a,.page-body a,.fee-faq a{color:var(--deep);text-underline-offset:.2em}
