:root{--ink:#14221e;--muted:#5f716b;--line:#d8e2de;--canvas:#f5f8f6;--green:#0f6b57;--green-dark:#084c3d;--green-soft:#dceee7;--yellow:#f0bf2e;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);font-family:var(--font-geist), "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;-webkit-font-smoothing:antialiased;margin:0;line-height:1.75}a{color:inherit}a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}summary:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.button:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.site-shell{min-height:100vh;overflow:hidden}.content-wrap{width:min(1120px,100% - 64px);margin:0 auto}.site-header{z-index:2;background:var(--white);border-bottom:1px solid var(--line);position:relative}.site-header-inner,.site-footer-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1240px,100% - 64px);min-height:76px;margin:0 auto;display:flex}.brand{color:var(--ink);letter-spacing:.02em;align-items:center;gap:12px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--green);width:38px;height:38px;color:var(--white);border-radius:50%;place-items:center;font-size:19px;line-height:1;display:grid}.site-nav{align-items:center;gap:28px;font-size:13px;font-weight:700;display:flex}.site-nav a,.footer-links a{color:var(--muted);text-decoration:none}.site-nav a:hover,.footer-links a:hover,.back-link a:hover{color:var(--green)}.hero-section{background:var(--white);border-bottom:1px solid var(--line)}.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:center;gap:76px;min-height:580px;padding:82px 0 88px;display:grid}.eyebrow{color:var(--green);letter-spacing:.14em;margin:0 0 18px;font-size:11px;font-weight:800;line-height:1.4}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:.01em;line-height:1.25}h1{max-width:620px;margin-bottom:26px;font-size:clamp(34px,5vw,62px);font-weight:800}.hero-lead{max-width:610px;color:var(--muted);margin-bottom:32px;font-size:16px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:10px 20px;font-size:13px;font-weight:800;text-decoration:none;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:var(--white)}.button-primary:hover{background:var(--green-dark)}.button-secondary{border-color:var(--line);background:var(--white);color:var(--green-dark)}.button-secondary:hover{border-color:var(--green)}.button-light{background:var(--white);color:var(--green-dark)}.updated-note{color:#82918d;margin:26px 0 0;font-size:12px}.hero-panel{background:var(--green-dark);max-width:420px;color:var(--white);box-shadow:16px 16px 0 var(--yellow);border-radius:8px;justify-self:end;padding:32px}.hero-panel-topline,.hero-panel-meta{color:#b9d8ce;letter-spacing:.12em;justify-content:space-between;gap:12px;font-size:10px;font-weight:800;display:flex}.hero-panel-topline span:last-child{color:var(--yellow)}.hero-panel-title{margin:58px 0 34px;font-size:28px;line-height:1.45}.hero-panel-title strong{color:var(--yellow);font-weight:800}.progress-track{background:#376f62;border-radius:10px;height:7px;margin-bottom:16px;overflow:hidden}.progress-track span{background:var(--yellow);width:67%;height:100%;display:block}.hero-panel-meta{letter-spacing:0;border-bottom:1px solid #376f62;padding-bottom:22px}.hero-panel-meta strong{color:var(--white);font-size:12px}.hero-panel-list{color:#e0eee9;gap:12px;margin-top:25px;font-size:13px;display:grid}.hero-panel-list b{background:var(--yellow);width:19px;height:19px;color:var(--green-dark);border-radius:50%;place-items:center;margin-right:8px;font-size:11px;display:inline-grid}.intro-band{background:var(--green-soft)}.intro-grid{grid-template-columns:.9fr 1.1fr;gap:80px;padding:72px 0;display:grid}.intro-grid h2,.section-heading h2,.contact-inner h2{margin-bottom:0;font-size:33px}.intro-grid>p{max-width:560px;color:var(--green-dark);margin:0;font-size:16px}.section-block{padding:100px 0}.section-heading{grid-template-columns:1fr 1fr;align-items:end;gap:48px;margin-bottom:46px;display:grid}.section-heading>p{color:var(--muted);margin:0;font-size:14px}.feature-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.feature-item{border-bottom:1px solid var(--line);min-height:240px;padding:30px 34px 24px 0}.feature-item:nth-child(odd){border-right:1px solid var(--line);padding-right:48px}.feature-item:nth-child(2n){padding-left:48px}.feature-number{color:var(--yellow);margin-bottom:28px;font-size:14px;font-weight:900;display:inline-block}.feature-item h3{margin-bottom:14px;font-size:21px}.feature-item p{max-width:470px;color:var(--muted);margin:0;font-size:14px}.pro-band{background:var(--green);color:var(--white)}.pro-grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding:88px 0;display:grid}.eyebrow-light{color:var(--yellow)}.pro-grid h2{margin-bottom:18px;font-size:34px}.pro-grid p:not(.eyebrow){color:#d7e8e2;max-width:560px;margin:0;font-size:15px}.pro-details{border-top:1px solid #4d927f}.pro-details div{border-bottom:1px solid #4d927f;flex-direction:column;gap:4px;padding:19px 0;display:flex}.pro-details span{color:#afd3c7;letter-spacing:.08em;font-size:11px;font-weight:800}.pro-details strong{font-size:15px}.faq-section{padding-bottom:112px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;padding:23px 36px 23px 0;font-size:16px;font-weight:800;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{float:right;color:var(--green);content:"+";font-size:22px;font-weight:400;line-height:1}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:760px;color:var(--muted);margin:-6px 0 24px;font-size:14px}.faq-list a,.legal-document a{color:var(--green);font-weight:700}.contact-band{background:var(--yellow)}.contact-inner{justify-content:space-between;align-items:center;gap:30px;padding:54px 0;display:flex}.contact-inner .eyebrow{color:var(--green-dark);margin-bottom:8px}.contact-inner h2{color:var(--green-dark)}.legal-hero{background:var(--green-dark);color:var(--white)}.legal-hero-inner{padding:88px 0 82px}.legal-hero .eyebrow{color:var(--yellow)}.legal-hero h1{margin-bottom:14px;font-size:49px}.legal-hero p{color:#d4e8e1;margin-bottom:12px;font-size:17px}.legal-hero span{color:#9fc3b8;font-size:12px}.legal-document{max-width:850px;padding:84px 0 112px}.legal-lead{border-bottom:1px solid var(--line);color:var(--green-dark);padding-bottom:38px;font-size:16px}.legal-document section{border-bottom:1px solid var(--line);padding:36px 0 12px}.legal-document h2{color:var(--green-dark);margin-bottom:14px;font-size:21px}.legal-document p{color:var(--muted);font-size:14px}.legal-document section p:last-child{margin-bottom:8px}.back-link{padding-top:38px;font-size:14px;font-weight:800}.back-link a{color:var(--green);text-decoration:none}.site-footer{background:var(--ink);color:#a7bbb4}.site-footer-inner{min-height:92px;font-size:12px}.footer-links{gap:22px;display:flex}@media (max-width:800px){.content-wrap,.site-header-inner,.site-footer-inner{width:min(100% - 40px,620px)}.hero-grid,.intro-grid,.pro-grid,.section-heading{grid-template-columns:1fr;gap:36px}.hero-grid{padding:64px 0 76px}.hero-panel{max-width:none;box-shadow:10px 10px 0 var(--yellow);justify-self:stretch}.section-block{padding:76px 0}.section-heading{align-items:start;margin-bottom:30px}.feature-item,.feature-item:nth-child(odd),.feature-item:nth-child(2n){border-right:0;min-height:0;padding:25px 0}.feature-item h3{font-size:19px}.pro-grid{padding:68px 0}.legal-hero-inner{padding:64px 0 58px}.legal-hero h1{font-size:37px}}@media (max-width:520px){.site-header-inner{min-height:68px}.brand{font-size:12px}.brand-mark{width:32px;height:32px;font-size:16px}.site-nav{gap:14px;font-size:11px}h1{font-size:35px}.hero-lead{font-size:14px}.hero-panel{padding:25px}.hero-panel-title{margin-top:40px;font-size:24px}.intro-grid h2,.section-heading h2,.contact-inner h2,.pro-grid h2{font-size:28px}.contact-inner{flex-direction:column;align-items:flex-start;padding:42px 0}.site-footer-inner{flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:20px 0}.legal-document{padding-top:56px}}
