:root{--ink:#1c1a15;--navy:#171610;--blue:#806120;--teal:#806120;--pale:#eee7d8;--line:#d9d0ba;--muted:#726d62;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:white;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8}a{color:var(--blue);text-underline-offset:4px}button,input,select{font:inherit}button,a,summary,input,select{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e69a11;outline-offset:4px}.skip{position:fixed;top:-100px;background:white;z-index:20;padding:10px}.skip:focus{top:0}.wrap{max-width:1240px;margin:auto;padding:0 40px}header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{max-width:1320px;margin:auto;min-height:86px;padding:12px 40px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{text-decoration:none;color:var(--navy);line-height:1.1;font-family:Arial,sans-serif;font-size:27px;letter-spacing:-1px}.brand span{display:block;font:12px/1.5 Meiryo,sans-serif;letter-spacing:2px;margin-top:7px}nav{display:flex;gap:27px;align-items:center}nav a{font-size:14px;text-decoration:none;font-weight:700;color:var(--ink)}.contact-link{border:1px solid var(--navy);padding:9px 17px}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:55px;padding-top:70px;padding-bottom:66px}.eyebrow{font:700 12px/1.6 Arial,sans-serif;letter-spacing:2.2px;color:var(--teal);margin:0 0 18px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,3.7vw,48px);line-height:1.55;letter-spacing:.01em;margin-bottom:20px;font-weight:800}h1 em{font-style:normal;color:var(--blue);border-bottom:4px solid #c5a556}h2{font-size:30px;line-height:1.6;letter-spacing:.015em;margin-bottom:16px}h3{font-size:20px;line-height:1.6;margin-bottom:12px}.lead{color:var(--muted);font-size:17px;line-height:2}.hero-links{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.primary,.secondary{padding:12px 20px;text-decoration:none;font-size:14px;font-weight:700;display:inline-block}.primary{background:var(--blue);color:white;border:1px solid var(--blue)}.primary:hover{background:var(--navy)}.secondary{border:1px solid var(--line);color:var(--ink);background:white}.checked{font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:12px;margin:0}.checked time{font-family:Arial,sans-serif;font-weight:bold;letter-spacing:1px;color:var(--ink)}.checked span{border-left:1px solid var(--line);padding-left:12px}.guide-map{background:var(--navy);color:white;padding:28px 30px 16px;align-self:center;border-top:5px solid #c5a556}.map-head{font-size:14px;color:#d8d3c6;border-bottom:1px solid #5b5241;padding-bottom:17px;display:flex;justify-content:space-between;gap:8px}.map-head span{font-family:Arial,sans-serif;color:#c5a556}.guide-map>a{color:white;text-decoration:none;display:grid;grid-template-columns:34px 1fr;position:relative;gap:16px;border-bottom:1px solid #5b5241;padding:23px 0}.map-no{font:14px Arial,sans-serif;padding-top:8px;color:#d6ba76}.guide-map strong{font-size:25px}.guide-map p{font-size:14px;color:#d8d3c6;margin:2px 0 0}.map-label{position:absolute;right:0;top:29px;font-size:12px;color:#e7cf98}.guide-map .map-note{font-size:12px;margin-top:16px;line-height:1.8}.update-strip{background:var(--pale);border-block:1px solid var(--line)}.updates{padding-top:28px;padding-bottom:28px;display:grid;grid-template-columns:1fr 1.1fr 1.3fr 1.2fr;gap:22px}.updates h2{font-size:18px;margin:4px 0}.updates p{font-size:12px;margin:0;color:var(--muted)}.updates .eyebrow{font-size:11px}.updates>a{border-left:1px solid #d9d0ba;padding-left:25px;text-decoration:none;color:var(--ink);align-self:center}.updates>a>span{display:block;font-size:12px;color:var(--muted)}.updates strong{display:block;font-size:18px;margin:4px 0}.updates small{font-size:12px;color:var(--blue)}.section{padding-top:78px;padding-bottom:78px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);margin:0 0 4px}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}.filters button{padding:8px 17px;background:white;border:1px solid var(--line);border-radius:3px;font-size:14px}.filters button.active{background:var(--navy);color:white;border-color:var(--navy)}.filters button:hover{border-color:var(--blue)}.search-row{display:flex;align-items:flex-end;gap:20px;padding:20px 24px;background:#eee7d8;border:1px solid var(--line)}label{display:block;font-size:14px;font-weight:700}input,select{display:block;border:1px solid #c3b89d;background:white;color:var(--ink);padding:10px 12px;border-radius:2px;max-width:100%;font-size:16px;margin-top:6px}input{width:100%}.search{flex:1}.search-row select{min-width:200px}.search-row p{font-size:14px;white-space:nowrap;margin:0 0 10px}.small{font-size:12px;color:var(--muted);line-height:1.9;margin:14px 0 24px}.program{border-bottom:1px solid var(--line);scroll-margin-top:110px}.program>summary{display:grid;grid-template-columns:1fr 180px 155px 30px;gap:24px;padding:26px 4px;list-style:none;align-items:center}.program>summary::-webkit-details-marker{display:none}.program>summary::after{content:'＋';font-size:25px;color:var(--blue)}.program[open]>summary::after{content:'−'}.program[open]>summary{border-bottom:1px solid var(--line)}.program h3{margin:9px 0 4px;font-size:21px}.program summary p{font-size:14px;color:var(--muted);margin:0}.badge{display:inline-block;font-size:12px;padding:2px 10px;background:#e7ecdf;color:#4f6f60;margin-right:10px;font-weight:700}.badge.soon{background:#f1e6cb;color:#806120}.badge.closed{background:#e9e5dc;color:#726d62}.program .round{font-size:12px;color:var(--muted)}.metric span{display:block;font-size:12px;color:var(--muted)}.metric strong{font-family:Arial,Meiryo,sans-serif;font-size:21px;display:block}.metric small{display:block;font-size:12px;color:var(--muted)}.program-body{padding:26px 28px 32px;background:#fffdf7}.program-body .two-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.program-body h4{font-size:15px;color:var(--teal);margin:0 0 7px}.program-body p,.program-body li{font-size:14px}.program-body ul{padding-left:20px;margin:0 0 15px}.program-body .program-note{border-left:3px solid #c59131;background:#fff8e9;padding:14px 18px;margin:15px 0}.sources{font-size:12px;line-height:2;color:var(--muted)}.program-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--line);padding-top:16px}.program-foot button{background:var(--navy);color:white;border:0;padding:9px 15px;font-size:14px}.program-foot a{font-size:14px}.points-section{background:#eee7d8}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.concepts article{padding:24px;background:white;border-top:3px solid var(--teal)}.label{font-size:12px;color:var(--teal);font-weight:bold}.concepts h3{margin:10px 0}.concepts p{font-size:14px;margin:0}.bonus-selector{display:flex;align-items:center;gap:25px;margin:38px 0 24px}.bonus-selector select{flex:1;margin:0;max-width:650px}.bonus-meta{padding:20px 25px;background:var(--navy);color:white}.bonus-meta h3{margin:0 0 6px}.bonus-meta p{font-size:14px;margin:0;color:#e4ddce}.bonus-table{background:white}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:17px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}thead{background:var(--navy);color:white}thead th{font-weight:500;white-space:nowrap}tbody th{font-weight:700;min-width:180px}td small{display:block;color:var(--muted);font-size:12px}td p{margin:0 0 8px}.bonus-table td:first-child{width:25%;font-weight:bold}.bonus-table td:nth-child(2){width:42%}.bonus-foot{padding:16px 22px;background:white;border-bottom:1px solid var(--line);font-size:12px}.note{background:#eee7d8;border-left:4px solid var(--blue);padding:22px 25px;margin:28px 0}.points-section .note{background:white}.note strong{font-size:16px}.note p{font-size:14px;margin:8px 0}.note a{font-size:14px}.preparation{margin-top:38px}.preparation ol{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0}.preparation li{border-top:1px solid #c3b89d;padding-top:15px;counter-increment:step}.preparation li:before{content:'0' counter(step);display:block;font-family:Arial,sans-serif;color:var(--teal);font-size:13px;margin-bottom:8px}.preparation strong{font-size:16px;display:block}.preparation span{font-size:12px;color:var(--muted)}.tax-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:30px 0}.tax-intro>div{padding:20px;border:1px solid var(--line)}.tax-intro span{font-size:12px;color:var(--blue);font-weight:700}.tax-intro strong{display:block;margin:8px 0;font-size:18px}.tax-intro p{font-size:14px;margin:0;color:var(--muted)}#tax .table-scroll{border:1px solid var(--line)}#tax table{min-width:850px}#tax tbody tr:nth-child(2){background:#f6f2e8}#tax td{width:27%}.calculator{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;padding:40px;margin:40px 0;background:#eee7d8;border:1px solid var(--line)}.calculator h3{font-size:25px}.calculator p{font-size:14px;color:var(--muted)}.calculator label{margin:17px 0}.calculator input,.calculator select{width:100%}.calc-result{align-self:stretch;background:var(--navy);color:white;padding:35px;display:flex;flex-direction:column;justify-content:center}.calc-result>span{font-size:14px;color:#cae2ec}.calc-result>strong{font-family:Arial,sans-serif;font-size:72px;font-weight:400;line-height:1.2;letter-spacing:-2px;margin:20px 0 26px}.calc-result strong span{font-family:Meiryo,sans-serif;font-size:22px;margin-left:8px;letter-spacing:0}.calc-result p{color:#bdd2df;font-size:12px;line-height:1.9;margin:23px 0 0}.calc-line{display:flex;justify-content:space-between;gap:20px;font-size:14px;border-top:1px solid #52677a;padding:11px 0}.calc-line b{white-space:nowrap}.tax-details details,.faq details{border-bottom:1px solid var(--line)}.tax-details summary,.faq summary{padding:20px 0;font-weight:700;font-size:16px}.tax-details details>div,.faq details>p{padding:0 12px 18px;font-size:14px;max-width:1000px}.flow-section{background:#f2f6f8}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin:35px 0}.flow>div{border-top:3px solid var(--navy);padding-top:20px}.flow span{font:14px Arial,sans-serif;color:var(--teal)}.flow h3{margin:12px 0;font-size:18px}.flow p{font-size:14px;color:var(--muted)}.consult{background:var(--navy);padding:36px;color:white;display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:35px}.consult h2{font-size:25px}.consult p{font-size:14px;color:#d8d3c6;margin-bottom:0}.consult .primary{background:white;color:var(--navy);white-space:nowrap}.faq{max-width:1040px}footer{background:#171610;color:#d8d3c6;padding:40px 0;font-size:12px}footer b{font:700 24px Arial,sans-serif;color:white}footer b span{font-size:12px;margin-left:15px}footer p{margin:15px 0;font-size:12px}footer a{color:#e7cf98;margin-right:30px}#empty{background:#eee7d8;padding:25px}#reset{display:block;margin-top:15px;border:1px solid var(--line);padding:8px 14px;background:white}[hidden]{display:none!important}button:hover,a.primary:hover{filter:brightness(.95)}
@media(min-width:1600px){.hero{padding-top:85px;padding-bottom:85px}}@media(max-width:1050px){.hero{gap:25px}.map-label{display:none}.program>summary{grid-template-columns:1fr 140px 110px 22px;gap:18px}.updates{grid-template-columns:1fr 1fr}.updates>a:last-child{border:0;padding-left:0}.section-heading{align-items:start;flex-direction:column;gap:12px}.calculator{gap:25px;padding:28px}.consult{flex-direction:column;align-items:start}nav{gap:16px}}@media(max-width:750px){html{scroll-padding-top:118px}.wrap{padding-left:22px;padding-right:22px}.header-inner{padding:13px 22px;display:block}.brand{font-size:23px}.brand span{display:inline;margin-left:12px;font-size:11px;letter-spacing:0}nav{margin-top:15px;gap:19px;overflow-x:auto}nav a{font-size:12px;white-space:nowrap}.contact-link{padding:0;border:0}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:40px;gap:32px}h1{font-size:34px;line-height:1.55}h2{font-size:25px}.lead{font-size:15px}.guide-map{padding:22px}.guide-map>a{padding:15px 0}.guide-map strong{font-size:22px}.guide-map p{font-size:12px}.hero-links{gap:10px}.primary,.secondary{font-size:13px;padding:11px 14px}.updates{gap:22px 16px}.updates strong{font-size:16px}.updates>a{padding-left:16px}.updates>a:nth-child(3){padding:0;border:0}.updates>a:last-child{padding-left:16px;border-left:1px solid #d9d0ba}.section{padding-top:48px;padding-bottom:48px}.section-heading>p{font-size:14px}.filters{gap:7px}.filters button{font-size:12px;padding:8px 11px}.search-row{padding:16px;display:grid;grid-template-columns:1fr;gap:12px}.search-row select{width:100%}.search-row p{margin:0}.program>summary{grid-template-columns:1fr 1fr 22px;gap:12px;padding:22px 0}.program .program-title{grid-column:1/-1}.program h3{font-size:19px}.program summary p{font-size:13px}.metric strong{font-size:19px}.program-body{padding:20px 15px}.program-body .two-grid{grid-template-columns:1fr;gap:12px}.program-foot{flex-direction:column;align-items:start}.three-grid,.tax-intro{grid-template-columns:1fr;gap:12px}.concepts article{padding:20px}.concepts h3{font-size:19px}.bonus-selector{display:block;margin-top:30px}.bonus-selector select{margin-top:10px;width:100%;font-size:14px}.bonus-table{min-width:660px}.bonus-meta{padding:18px}.bonus-meta h3{font-size:18px}.bonus-meta p{font-size:12px}.preparation ol{grid-template-columns:1fr 1fr;gap:18px}.note{padding:18px}.calculator{grid-template-columns:1fr;padding:22px;gap:16px}.calculator h3{font-size:23px}.calc-result{padding:24px}.calc-result>strong{font-size:62px}.flow{grid-template-columns:1fr 1fr;gap:20px}.flow h3{font-size:16px}.flow p{font-size:13px}.consult{padding:25px}.consult h2{font-size:22px}.consult .primary{white-space:normal}.desktop{display:none}.tax-details summary,.faq summary{font-size:15px}.checked{font-size:11px}footer b{font-size:22px}footer b span{display:block;margin:9px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,.filters,.search-row,.hero-links,.consult,.calculator{display:none}.section{padding-top:20px;padding-bottom:20px}.wrap{padding:0}.program>summary{break-inside:avoid}.table-scroll{overflow:visible}footer{background:white;color:black}}

body{background:#f6f2e8}.hero{background:radial-gradient(circle at 76% 32%,rgba(197,165,86,.12),transparent 45%)}.secondary,.filters button,.concepts article,.bonus-table,.bonus-foot{background:#fffdf7}.guide-nav{display:flex;justify-content:flex-end;padding-top:15px;padding-bottom:15px;border-bottom:1px solid var(--line);flex-wrap:wrap}.sitebar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px);border-bottom:1px solid rgba(209,182,109,.28);background:rgba(27,25,20,.97);position:sticky;top:0;z-index:50}.sitebar .brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none;min-width:0;letter-spacing:normal}.sitebar .brand-logo{width:44px;height:44px;object-fit:contain;display:block;flex:0 0 auto}.sitebar .brand-name{display:flex;flex-direction:column;justify-content:center;line-height:1.18;margin:0;letter-spacing:normal}.brand-name strong{font-size:17px;font-weight:400;color:#fff;letter-spacing:.045em}.brand-name small{display:block;margin-top:3px;font-size:11px;color:#d8d3c6;letter-spacing:.04em}.sitebar .brand-return{display:inline-flex;align-items:center;margin:0 0 0 10px;padding-left:14px;border-left:1px solid rgba(213,187,118,.34);color:#d9d2c3;font-size:10px;font-weight:600;line-height:1.4;letter-spacing:.025em;white-space:nowrap}.prototype{display:inline-flex;align-items:center;gap:9px;padding:6px 10px;border:1px solid rgba(213,187,118,.30);border-radius:999px;background:rgba(213,187,118,.06)}.prototype b{color:#f0d591;font-size:9px;letter-spacing:.15em}.prototype small{color:#c8c0ae;font-size:9px}.brand:hover{opacity:.82}@media(max-width:720px){.sitebar{height:auto;min-height:66px;padding:6px 14px}.sitebar .brand{gap:9px}.sitebar .brand-logo{width:36px;height:36px}.brand-name strong{font-size:15px}.brand-name small{font-size:9px}.sitebar .brand-return{margin-left:3px;padding-left:9px;max-width:142px;white-space:normal;font-size:9px;line-height:1.35}.prototype{display:none}.guide-nav{margin:0;justify-content:flex-start;gap:12px 20px}.guide-nav .contact-link{width:100%;color:#806120}}

/* Requested headline scale: matches the original hero heading. */
.hero h1,#finder .section-heading h2,#points .section-heading h2,#tax .section-heading h2,.flow-section>.wrap>h2{font-size:clamp(44px,7vw,94px);font-weight:800;line-height:1.12;letter-spacing:-.045em;font-feature-settings:"palt" 1;text-wrap:balance;overflow-wrap:anywhere}
#finder .section-heading,#points .section-heading,#tax .section-heading{display:block}
#finder .section-heading>p,#points .section-heading>p,#tax .section-heading>p{margin-top:24px}
.hero{grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr);gap:34px}
.hero>div{min-width:0}
@media(max-width:900px){.hero{grid-template-columns:1fr}.guide-map{width:100%}}
@media(max-width:750px){.hero h1,#finder .section-heading h2,#points .section-heading h2,#tax .section-heading h2,.flow-section>.wrap>h2{font-size:clamp(40px,7vw,94px);line-height:1.2}}

/* Deadline notices use the explicit Japan-time deadline in data.js. */
.deadline-urgent{color:#b42318!important;font-weight:700}

/* Catalog order subsidy entry */
.catalogorder-entry{background:#171610;border-top:1px solid rgba(213,187,118,.28);border-bottom:1px solid rgba(213,187,118,.28);color:#fff}
.catalogorder-entry-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:46px;align-items:center;padding-top:34px;padding-bottom:34px}
.catalogorder-entry .eyebrow{color:#d7bd77;margin:0 0 12px}
.catalogorder-title-row{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.catalogorder-entry h2{margin:0;font-size:clamp(24px,2.6vw,36px);line-height:1.35;letter-spacing:-.025em;color:#fff}
.catalogorder-entry p:not(.eyebrow){margin:13px 0 0;max-width:900px;color:#d8d3c6;font-size:14px;line-height:1.9}
.catalogorder-badge{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid rgba(235,205,128,.55);border-radius:999px;color:#f0d591;background:rgba(213,187,118,.08);font-size:11px;font-weight:700;letter-spacing:.08em;white-space:nowrap}
.catalogorder-cta{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:116px;padding:22px 54px 22px 24px;border:1px solid rgba(235,205,128,.48);background:rgba(255,255,255,.035);color:#fff;text-decoration:none;transition:.2s ease}
.catalogorder-cta span{font-size:11px;color:#d7bd77;letter-spacing:.06em;margin-bottom:8px}
.catalogorder-cta strong{font-size:17px;line-height:1.5}
.catalogorder-cta i{position:absolute;right:20px;top:50%;transform:translateY(-50%);font-style:normal;font-size:24px;color:#f0d591}
.catalogorder-cta:hover{background:rgba(213,187,118,.11);box-shadow:0 0 28px rgba(213,187,118,.12);border-color:#d7bd77}
@media(max-width:900px){.catalogorder-entry-inner{grid-template-columns:1fr;gap:20px}.catalogorder-cta{min-height:auto}}
@media(max-width:750px){.catalogorder-entry-inner{padding-top:28px;padding-bottom:28px}.catalogorder-entry h2{font-size:24px}.catalogorder-title-row{align-items:flex-start;flex-direction:column;gap:10px}.catalogorder-entry p:not(.eyebrow){font-size:13px}.catalogorder-cta{padding:18px 46px 18px 18px}.catalogorder-cta strong{font-size:15px}}
