@font-face{font-family:SerifJP;src:url('./fonts/NotoSerifJP-variable.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:SansJP;src:url('./fonts/NotoSansJP-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--ink:#18333b;--cream:#f7f3ea;--sage:#aecbc4;--copper:#a86736;--green:#008343;--line:#d9d2c6;--font-mincho-weight:500;color:var(--ink);font-family:SansJP,sans-serif;font-synthesis:none;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;background:#fff}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:SerifJP,serif;font-weight:var(--font-mincho-weight)}h1 strong,h2 strong{font-weight:inherit}h2{font-size:clamp(28px,3.1vw,44px);line-height:1.65;letter-spacing:.025em}p,li{font-size:16px;line-height:1.95}a{color:inherit;text-underline-offset:4px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #e2a05d;outline-offset:5px}.skip-link{position:fixed;left:12px;top:-100px;z-index:20;background:white;padding:12px}.skip-link:focus{top:12px}.nobr{display:inline-block;white-space:nowrap}.mobile-only{display:none}.eyebrow{display:flex;align-items:center;gap:18px;margin-bottom:22px;font-size:12px;letter-spacing:.17em;font-weight:500}.eyebrow:after{content:'';height:1px;width:75px;background:var(--copper)}.fine{font-size:12px;line-height:1.9}.number{font-family:SerifJP,serif;font-size:1.6em;line-height:.9;vertical-align:-.05em}.included{font-family:SerifJP,serif;font-size:24px;font-weight:500;margin-top:8px}.cta{display:inline-flex;align-items:center;justify-content:center;gap:35px;min-height:60px;padding:12px 32px;border:1px solid rgba(255,255,255,.8);border-radius:40px;background:linear-gradient(110deg,#009f52,#008343 70%);color:#fff;text-decoration:none;font-size:19px;font-weight:500;letter-spacing:.045em;box-shadow:0 4px 14px #005e2812;transition:filter .2s,transform .2s}.cta:hover{filter:brightness(1.07);transform:translateY(-2px)}.cta>span:last-child{font-size:32px;line-height:1}.cta.compact{min-height:52px;font-size:16px}.grant-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 18px;border:1px solid #d4bd98;border-radius:5px;background:#f8e9c9;color:#273f42;font-size:13px;font-weight:500;line-height:1.65;text-decoration:none}.grant-note{font-size:11px;align-self:center}.badge-wrap{display:flex;align-items:center;gap:12px;margin-top:12px}
.hero{position:relative;isolation:isolate;min-height:650px;height:46.3vw;max-height:790px;overflow:hidden;background:var(--cream)}.hero-art{position:absolute;inset:0;z-index:-1}.hero-art img{width:100%;height:100%;object-fit:cover}.hero-content{max-width:1440px;margin:auto;padding:45px 5.5%;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(36px,4.1vw,61px);line-height:1.5;letter-spacing:.025em}.hero-offer{margin-top:22px;font-size:18px;font-weight:500}.hero-intro{margin-top:9px;font-size:15px;line-height:1.8}.hero-action{margin-top:23px}.hero .eyebrow{font-size:15px;margin-bottom:20px;letter-spacing:.07em}.hero .included{font-size:23px}.design-a .hero-content>*{max-width:48%}.design-a .hero-action{max-width:55%}.design-a .grant-badge{background:#a76d41;color:#fff;border:none}.design-c .hero-content{align-items:center;justify-content:flex-start;text-align:center;padding-top:70px}.design-c .hero h1{font-size:clamp(33px,3.25vw,47px);line-height:1.55}.design-c .hero-content>.eyebrow{display:none}.design-c .hero-offer{margin-top:24px}.design-c .hero-intro{display:none}.design-c .hero-action{margin-top:22px}.design-c .badge-wrap{justify-content:center}.design-c .hero .included{font-size:23px}
main>section+section{border-top:10px solid #fff}.split{display:grid;grid-template-columns:1.08fr 1fr;min-height:470px}.section-copy{align-self:center;padding:64px clamp(28px,5.5vw,90px)}.section-copy>p:not(.eyebrow){margin-top:23px}.section-copy h2{margin-bottom:22px}.photo{min-width:0;min-height:360px;background-image:url('./photos.png');background-size:200% 200%;background-repeat:no-repeat}.q1{background-position:left top}.q2{background-position:right top}.q3{background-position:left bottom}.q4{background-position:right bottom}.split .photo{aspect-ratio:1/1;max-height:620px;margin:auto 0;width:100%;min-height:0}.concerns{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px}.concerns li{display:flex;align-items:center;gap:12px;font-size:18px;line-height:1.7}.concerns svg{width:28px;height:28px;flex:none;color:var(--copper)}.dark{background:var(--ink);color:#fff}.mechanism{padding:60px 5.5%;display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:45px}.mechanism h2{font-size:36px;line-height:1.6;margin-bottom:22px}.mechanism p{font-size:15px}.steps{display:grid;grid-template-columns:1fr 25px 1fr 25px 1fr;align-items:start;gap:9px}.step{text-align:center}.disc{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1;background:#f4f0e5;color:var(--ink);padding:20px 10px;gap:8px}.disc svg{width:42px;height:42px}.disc b{font-family:SerifJP,serif;font-size:24px;font-weight:500}.step p{margin-top:15px;font-size:13px;line-height:1.8}.step-arrow{align-self:start;padding-top:55px;font-size:25px;color:var(--copper)}.dark .step-arrow{color:#d9c9ac}.production{background:var(--cream)}.features{display:flex;gap:12px;margin:25px 0}.features span{display:flex;align-items:center;justify-content:center;gap:12px;flex:1;border:1px solid #d8bb9f;background:#ffffffd9;padding:16px 10px;font-size:16px;font-weight:500;border-radius:3px;white-space:nowrap}.features svg{width:35px;height:35px;color:var(--copper);flex:none}.ads{background:var(--sage)}.ads h2{font-size:38px}.ads .section-copy{padding-top:48px;padding-bottom:48px}.ads .photo{aspect-ratio:1.1}.subsidy{padding:55px 6%;background:#fcfaf5}.subsidy h2{font-size:clamp(28px,2.65vw,39px);letter-spacing:0;white-space:nowrap;margin-bottom:15px}.subsidy-lead{max-width:800px}.subsidy-body{display:grid;grid-template-columns:1.25fr 1fr;gap:38px;align-items:center;margin:28px 0}.expense-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.expense-grid>div{padding:22px 18px;background:#fff;border:1px solid #d7c6b3;display:flex;align-items:center;gap:18px;border-radius:3px}.expense-grid svg{width:38px;height:38px;color:var(--copper);flex:none}.expense-grid p{line-height:1.6}.expense-grid b{display:block;font-size:20px;font-family:SerifJP,serif;font-weight:500}.expense-grid span{font-size:14px}.conditions{padding-left:35px;border-left:1px solid #d1ae8c}.conditions p{font-size:14px}.source{font-size:11px;text-align:right;margin-top:20px}.evidence{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.evidence summary{display:flex;justify-content:space-between;padding:17px 0;font-size:14px;cursor:pointer;list-style:none}.evidence>div{padding:8px 0 24px;max-width:920px}.evidence p,.evidence li{font-size:14px}.evidence p+p{margin-top:18px}.evidence ul{padding-left:1.3em;margin:15px 0}.evidence[open] summary span{transform:rotate(45deg)}
.plan{padding:65px 6%;text-align:center;background:var(--cream)}.plan>.eyebrow{justify-content:center}.plan h2{font-size:42px}.plan-included{font-family:SerifJP,serif;font-size:30px;margin:10px 0 18px}.process{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;padding:25px 10px;margin:32px auto 22px;background:#fff;border-radius:8px}.process li{position:relative;display:flex;flex-direction:column;align-items:center;gap:15px;font-size:15px;padding:0 18px}.process li+li:before{content:'›';position:absolute;left:-10px;top:24px;font-size:30px}.process svg{width:45px;height:45px}.plan .cta{margin-top:25px}.faq{padding:55px 6%;gap:60px;background:#fff}.faq h2{font-size:36px;margin-bottom:22px}.faq .eyebrow{margin-bottom:15px}.faq .photo{align-self:center;max-height:400px}.faq-list{display:grid;gap:0}.faq-list details{border-bottom:1px solid #d6dedb;padding:6px 0}.faq-list summary{display:flex;align-items:center;gap:15px;list-style:none;cursor:pointer;font-weight:500;font-size:15px;line-height:1.7;padding:15px 0}.faq-list summary::-webkit-details-marker,.evidence summary::-webkit-details-marker{display:none}.q{flex:none;display:grid;place-items:center;font-family:SerifJP,serif;background:var(--copper);border-radius:50%;color:white;width:32px;height:32px;font-size:20px}.q.a{background:transparent;border:1px solid #8cacac;color:var(--ink)}.toggle{margin-left:auto;font-weight:400}.faq-list details[open] .toggle{transform:rotate(45deg)}.answer{display:flex;align-items:flex-start;gap:15px;padding:0 0 20px}.answer p{font-size:14px}.final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:470px;text-align:center;padding:65px 24px}.final-photo{position:absolute;inset:0;z-index:-2;background-image:url('./photos.png');background-size:200% 200%;background-position:right bottom}.final-cta:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f7f3ead9,#f7f3eadb 55%,#f7f3ea8a)}.final-content{max-width:850px;margin:auto}.final-content .eyebrow{justify-content:center}.final-content h2{font-size:40px}.final-content>p{margin:20px 0}.final-content .fine{margin-top:12px;font-size:11px}footer{background:var(--ink);color:#fff;padding:30px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer a{font-size:12px}footer .fine{opacity:.7;font-size:10px}
.design-c .empathy{background:var(--cream)}.design-c .production{background:var(--sage)}.design-c .photo-first .photo{grid-column:1;grid-row:1}.design-c .photo-first .section-copy{grid-column:2;grid-row:1}.design-c .production .features span{border:0}.design-c .features svg{color:var(--ink)}.design-c .mechanism{display:block;text-align:center;background:#fff}.design-c .mechanism h2{font-size:35px}.design-c .mechanism .eyebrow{justify-content:center}.design-c .a-only{display:none}.design-c .steps{max-width:850px;margin:35px auto 0}.design-c .steps .disc{max-width:180px;margin:auto}.design-c .step-arrow{padding-top:68px}.design-c .ads{background:var(--ink)}.design-c .plan{background:#fff}.design-c .faq{display:block;background:var(--sage)}.design-c .faq-list{grid-template-columns:1fr 1fr;gap:18px 26px}.design-c .faq-list details{background:#ffffffd9;padding:8px 20px;border:0;border-radius:4px}.design-c .faq-list details:first-child{grid-column:1}.design-c .final-cta:after{background:linear-gradient(90deg,#f7f3ea9c,#f7f3eada 40%,#f7f3ea6b)}
@media(min-width:1700px){main,footer{max-width:1600px;margin:auto}body{background:#e7e7e2}.hero{height:740px}}
@media(max-width:1100px) and (min-width:701px){.hero{height:650px}.hero h1{font-size:43px}.hero-content{padding-left:4%}.hero-offer{font-size:15px}.hero .included{font-size:21px}.hero .eyebrow{margin-bottom:16px}.design-a .hero-content>*{max-width:50%}.hero .cta{font-size:16px;min-height:54px;gap:24px}.badge-wrap{flex-wrap:wrap;gap:6px}.hero .grant-note{font-size:10px}.hero .grant-badge{font-size:11px}.design-c .hero-content{padding-top:70px}.design-c .hero h1{font-size:36px}.split{grid-template-columns:1fr 1fr;min-height:410px}.section-copy{padding:38px 30px}.section-copy h2{font-size:29px}.concerns li{font-size:15px}.features span{font-size:13px;padding:13px 6px;gap:6px}.features svg{width:26px}.mechanism{gap:25px;padding:45px 4%;grid-template-columns:1fr 1.1fr}.mechanism h2{font-size:29px}.disc svg{width:32px;height:32px}.disc b{font-size:20px}.step-arrow{padding-top:40px}.step p{font-size:11px}.subsidy h2{font-size:28px}.expense-grid>div{gap:10px;padding:15px 10px}.expense-grid span{font-size:12px}.faq{gap:30px}.faq h2{font-size:30px}}
@media(max-width:700px){p,li{font-size:15px;line-height:1.9}h2{font-size:28px;line-height:1.65}.mobile-only{display:block}.eyebrow{font-size:10px;gap:15px;margin-bottom:18px}.eyebrow:after{width:45px}.fine{font-size:11px}.hero{height:710px;min-height:0;max-height:none}.hero-art img{object-fit:cover;object-position:center center}.hero-content{display:block;padding:38px 6%;position:relative}.hero h1{font-size:clamp(29px,8.2vw,37px);line-height:1.52;letter-spacing:0}.hero .eyebrow{font-size:12px;margin-bottom:18px}.design-a .hero-content>*{max-width:none}.hero-offer{margin-top:16px;font-size:13px;width:75%;line-height:1.8}.hero .included{font-family:SansJP,sans-serif;font-size:16px;margin-top:5px}.hero-intro{font-size:12px;line-height:1.8;max-width:62%!important;margin-top:10px}.hero-action{position:absolute;left:6%;right:6%;bottom:24px;margin:0;max-width:none!important}.cta{min-height:54px;font-size:17px;width:100%;gap:25px;padding:12px 18px}.hero .cta{min-height:54px}.badge-wrap{justify-content:center;flex-wrap:wrap;gap:4px;margin-top:10px}.grant-badge{font-size:11px;padding:7px 12px;width:100%;line-height:1.7}.grant-note{font-size:10px}.design-c .hero{height:750px}.design-c .hero-content{padding:65px 4% 0}.design-c .hero h1{font-size:clamp(26px,7.15vw,32px);line-height:1.65}.design-c .hero-offer{margin:18px auto 0;width:100%;font-size:14px}.design-c .hero .included{font-size:16px}.design-c .hero-action{left:6%;right:6%;bottom:26px}.hero-art img{width:100%;height:100%}main>section+section{border-top:7px solid #fff}.split{display:flex;flex-direction:column;min-height:0}.section-copy{padding:40px 7%;width:100%}.section-copy h2{margin-bottom:18px}.section-copy>p:not(.eyebrow){margin-top:18px}.split .photo{aspect-ratio:1;max-height:none;width:100%;margin:0}.empathy .photo{max-height:360px;aspect-ratio:1}.concerns{gap:13px;margin-top:22px}.concerns li{font-size:15px;gap:10px}.concerns svg{width:25px;height:25px}.mechanism{display:block;padding:40px 7%}.mechanism h2{font-size:28px}.mechanism p{font-size:14px}.steps{margin-top:30px;grid-template-columns:1fr 14px 1fr 14px 1fr;gap:3px}.disc{padding:12px 4px;gap:5px}.disc svg{width:30px;height:30px}.disc b{font-size:17px}.step p{font-size:11px;line-height:1.75;margin-top:12px}.step-arrow{padding-top:33px;font-size:20px}.features{gap:10px;margin:23px 0}.features span{font-size:14px;padding:14px 8px;gap:8px}.features svg{width:28px;height:28px}.ads .photo{aspect-ratio:1}.ads .section-copy{padding:40px 7%}.ads h2{font-size:28px}.ads .included{font-size:21px}.subsidy{padding:40px 7%}.subsidy h2{font-size:clamp(21px,5.5vw,26px);white-space:normal;line-height:1.7}.subsidy h2>.nobr:first-child{display:block;font-size:20px;margin-bottom:5px}.subsidy h2>.nobr:nth-child(2){white-space:normal}.subsidy h2>.nobr:last-child{display:block}.subsidy-lead{font-size:14px}.subsidy-body{display:block;margin:24px 0}.expense-grid{gap:12px}.expense-grid>div{display:block;text-align:center;padding:18px 6px}.expense-grid svg{width:32px;height:32px;margin-bottom:8px}.expense-grid b{font-size:20px}.expense-grid span{font-size:12px}.conditions{margin-top:22px;padding:0 0 0 17px}.conditions p{font-size:13px}.source{text-align:left;font-size:10px;line-height:1.9}.evidence summary{font-size:13px}.evidence p,.evidence li{font-size:13px}.plan{padding:42px 7%}.plan h2{font-size:26px;white-space:nowrap;letter-spacing:0}.plan-included{font-size:25px;margin-top:13px}.plan>p:not(.fine):not(.plan-included){font-size:14px}.process{margin:25px 0 20px;padding:22px 0;gap:0}.process li{font-size:12px;line-height:1.7;gap:12px;padding:0 8px}.process li+li:before{font-size:25px;top:15px;left:-5px}.process svg{width:35px;height:35px}.faq{padding:42px 7%;gap:30px}.faq h2{font-size:29px}.faq .photo{display:none}.faq-list summary{font-size:14px;gap:11px}.answer{gap:11px}.answer p{font-size:13px}.q{width:28px;height:28px;font-size:18px}.final-cta{min-height:450px;padding:45px 7%}.final-content h2{font-size:27px}.final-content>p{font-size:14px}.final-photo{background-size:300% 200%;background-position:right bottom}.final-cta:after{background:#f7f3eacf}.design-c .photo-first .photo{order:2}.design-c .mechanism{padding:40px 7%}.design-c .mechanism h2{font-size:27px}.design-c .mechanism h2 .a-only{display:block}.design-c .steps{margin-top:30px}.design-c .step-arrow{padding-top:33px}.design-c .faq-list{grid-template-columns:1fr;gap:12px}.design-c .faq-list details{padding:6px 13px}.design-c .final-cta:after{background:#f7f3eabf}footer{padding:24px 7%;flex-direction:column;align-items:flex-start;gap:8px}footer p,footer a{font-size:11px}}
.production h2{font-size:clamp(28px,2.65vw,38px)}
.final-photo{background-size:cover;background-position:center;background-image:url('./final-pc.png')}
@media(max-width:700px){.production h2{font-size:25px}.final-content h2{font-size:23px}.final-photo{background-position:60% center}.design-c .final-photo{background-position:55% center}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.cta{transition:none}}
