:root{--green:#12853d;--green-dark:#08662c;--lime:#8bc400;--pink:#e83e8c;--ink:#17212b;--muted:#5e6c78;--line:#dfe7e2;--soft:#f4f8f5;--soft2:#eef7f1;--white:#fff;--shadow:0 18px 55px rgba(20,52,35,.10);--radius:24px;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;line-height:1.8;background:#fff}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.site-header{height:78px;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(20,50,35,.07)}.header-inner{max-width:1240px;height:100%;margin:auto;padding:0 28px;display:flex;align-items:center;gap:34px}.brand{width:180px;display:flex;align-items:center}.brand img{width:165px}.global-nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:700}.global-nav a,.login-link{transition:.2s}.global-nav a:hover,.login-link:hover{color:var(--green)}.header-actions{display:flex;gap:20px;align-items:center}.login-link{font-size:14px;font-weight:700}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:58px;padding:0 30px;border-radius:12px;font-weight:800;line-height:1.3;transition:.22s;box-shadow:none}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:linear-gradient(135deg,#15954a,#087633);box-shadow:0 10px 22px rgba(11,119,52,.18)}.button-primary:hover{box-shadow:0 14px 28px rgba(11,119,52,.27)}.button-secondary{border:1.5px solid var(--green);color:var(--green);background:#fff}.button-small{min-height:46px;padding:0 20px;border-radius:10px;font-size:13px}.full{width:100%}.menu-button{display:none}.hero{padding:92px 0 88px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fbfdfb 100%);position:relative}.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:#f0f8f2;right:-170px;top:40px;z-index:0}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center;position:relative;z-index:1}.eyebrow{margin:0 0 16px;color:var(--green);font-size:13px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(44px,5vw,68px);line-height:1.26;letter-spacing:-.04em}.hero h1 span,.section-heading h2 span,.value-copy h2 span{color:var(--green)}.hero-lead{margin:28px 0 30px;font-size:17px;color:#43505b;line-height:2}.hero-lead strong{font-size:20px;color:var(--ink)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.microcopy{font-size:12px;color:#748079;margin:15px 0 0}.hero-visual{position:relative;min-height:460px;display:flex;align-items:center}.hero-visual-card{width:100%;background:#fff;padding:42px 24px 28px;border-radius:34px;box-shadow:var(--shadow);border:1px solid #e7eee8}.hero-visual-card img{display:block;margin:auto;width:92%}.floating-note{position:absolute;width:154px;height:154px;border-radius:50%;padding:18px;background:#fff;border:1px solid #dce9df;box-shadow:0 14px 32px rgba(31,55,41,.14);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;line-height:1.35}.floating-note .note-small{display:block;font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.06em;margin-bottom:7px}.floating-note strong{display:block;font-size:19px;line-height:1.35;font-weight:900;letter-spacing:-.02em}.note-a{left:-34px;top:66px;background:#f3faf5;border-color:#cde8d5}.note-a .note-small{color:#7b9082}.note-a strong{color:#0f7f38}.note-b{right:-28px;bottom:55px;background:#fff5f8;border-color:#f1d4df}.note-b .note-small{color:#a07a88}.note-b strong{color:#d93f78}.trust-strip{border-top:1px solid #edf1ee;border-bottom:1px solid #e6ece8;background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0}.trust-grid>div{padding:2px 26px;border-right:1px solid #e6ece8;display:flex;flex-direction:column}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border-right:0}.trust-grid b{font-size:14px}.trust-grid span{font-size:12px;color:#718078}.section{padding:110px 0}.section-heading{max-width:760px;margin-bottom:58px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading h2,.value-copy h2{font-size:clamp(34px,4vw,50px);line-height:1.4;letter-spacing:-.035em;margin:0 0 20px}.section-heading>p:last-child{color:var(--muted);font-size:16px;margin:0}.section-problem{background:var(--soft)}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.problem-card{background:#fff;border:1px solid #e4ebe6;border-radius:20px;padding:36px 32px;box-shadow:0 8px 30px rgba(25,60,36,.045)}.problem-num{font-size:12px;letter-spacing:.16em;color:var(--green);font-weight:900}.problem-card h3{font-size:20px;margin:14px 0 10px}.problem-card p{font-size:14px;color:var(--muted);margin:0}.flow-section{padding-bottom:120px}.flow-grid{display:grid;grid-template-columns:1fr 38px 1fr 38px 1fr;gap:14px;align-items:center}.flow-grid>i{text-align:center;color:#9caf9f;font-style:normal;font-size:26px}.flow-item{text-align:center;border-top:3px solid var(--green);background:#fff;padding:32px 25px;border-radius:0 0 18px 18px;box-shadow:0 14px 38px rgba(25,60,36,.075)}.flow-item span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}.flow-item h3{font-size:21px;margin:12px 0 4px}.flow-item p{font-size:13px;color:var(--muted);margin:0}.feature-section{background:#fbfcfb}.feature-row{display:grid;grid-template-columns:.92fr 1.08fr;gap:72px;align-items:center;padding:74px 0;border-top:1px solid #e4eae6}.feature-row.reverse{grid-template-columns:1.08fr .92fr}.feature-row.reverse .feature-copy{order:2}.feature-row.reverse .feature-image{order:1}.feature-copy .point{font-size:12px;letter-spacing:.14em;color:var(--green);font-weight:900}.feature-copy h3{font-size:34px;line-height:1.5;margin:10px 0 18px;letter-spacing:-.02em}.feature-copy>p:not(.point){color:var(--muted)}.feature-copy ul{list-style:none;margin:25px 0 0;padding:0}.feature-copy li{font-size:14px;font-weight:700;padding:8px 0 8px 28px;position:relative}.feature-copy li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.feature-image{background:var(--soft2);border-radius:28px;min-height:390px;padding:42px;display:grid;place-items:center}.feature-image img{max-height:320px;object-fit:contain}.value-section{background:#123322;color:#fff}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.value-copy h2 span{color:#8bd399}.value-copy p:last-child{color:#cad8cf}.value-section .eyebrow{color:#8bd399}.value-list{border-top:1px solid rgba(255,255,255,.2)}.value-list>div{display:grid;grid-template-columns:58px 1fr;align-items:start;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.2)}.value-list b{color:#80c891;font-size:13px}.value-list span{color:#cdd9d1;font-size:14px}.value-list strong{display:block;color:#fff;font-size:20px;margin-bottom:2px}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.scene-grid article{padding:28px;border:1px solid #dfe8e1;border-radius:18px;background:#fff;transition:.2s}.scene-grid article:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(25,60,36,.075)}.scene-grid span{font-size:12px;font-weight:900;color:var(--green)}.scene-grid h3{font-size:19px;margin:8px 0}.scene-grid p{font-size:13px;color:var(--muted);margin:0}.dx-section{padding-top:20px}.dx-card{text-align:center;background:linear-gradient(135deg,#eff8f1,#f8fbf8);border-radius:30px;padding:72px 30px}.dx-card h2{font-size:44px;line-height:1.35;margin:0 0 22px}.dx-card>p:not(.eyebrow){color:var(--muted);margin-bottom:30px}.dx-card strong{color:var(--green-dark)}.plan-section{background:#f7f9f7}.plan-grid{max-width:900px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:22px}.plan-card{background:#fff;border:1px solid #dde6df;border-radius:22px;padding:38px}.plan-card.recommended{border:2px solid var(--green);position:relative}.plan-label{color:var(--green);font-size:11px;font-weight:900;letter-spacing:.16em;margin:0}.plan-card h3{font-size:22px;margin:5px 0 12px}.plan-price{margin:0;line-height:1.2}.plan-price b{font-size:48px;letter-spacing:-.04em}.plan-sub{font-size:13px;color:var(--muted);margin:12px 0 20px}.plan-card ul{list-style:none;padding:20px 0;margin:0 0 24px;border-top:1px solid #e8eee9}.plan-card li{font-size:14px;padding:6px 0}.plan-card li:before{content:"✓";color:var(--green);font-weight:900;margin-right:10px}.plan-note{text-align:center;color:#79847d;font-size:12px;margin-top:22px}.final-cta{background:linear-gradient(135deg,#0d7936,#115d30);color:#fff;text-align:center;padding:90px 0}.final-cta p{font-size:16px;font-weight:800;margin:0 0 5px;color:#bce1c6}.final-cta h2{font-size:clamp(36px,5vw,56px);margin:0 0 8px;letter-spacing:-.035em}.final-cta>div>span{display:block;color:#d9e8dd;margin-bottom:28px}.final-cta>div>div{display:flex;justify-content:center;align-items:center;gap:28px}.button-white{background:#fff;color:var(--green-dark)}.text-link-light{color:#fff;font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:5px}.site-footer{padding:58px 0 22px;background:#10231a;color:#c8d1cc}.footer-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.footer-logo img{width:160px;filter:none}.footer-grid p{font-size:12px;color:#8fa198}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 30px;font-size:12px}.footer-links a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:38px;padding-top:18px;font-size:11px;color:#7d8f85}.mobile-only{display:none}.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:980px){.global-nav{display:none}.header-inner{gap:16px}.header-actions{margin-left:auto}.menu-button{display:flex;width:40px;height:40px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;order:3}.menu-button span{display:block;width:23px;height:2px;background:var(--ink);margin:auto}.global-nav.is-open{display:flex;position:absolute;top:78px;left:0;right:0;background:#fff;padding:24px 28px 28px;flex-direction:column;gap:16px;border-bottom:1px solid #e6ece8;box-shadow:0 12px 20px rgba(20,40,28,.08)}.hero{padding-top:70px}.hero-grid{grid-template-columns:1fr;gap:45px}.hero-visual{max-width:680px;margin:auto;width:100%}.hero-copy{text-align:center}.hero-actions{justify-content:center}.feature-row,.feature-row.reverse,.value-grid{grid-template-columns:1fr;gap:40px}.feature-row.reverse .feature-copy,.feature-row.reverse .feature-image{order:initial}.value-grid{gap:50px}.scene-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container{width:min(calc(100% - 32px),var(--max))}.site-header{height:68px}.header-inner{padding:0 16px}.brand{width:128px}.brand img{width:128px}.login-link{display:none}.button-small{display:none}.global-nav.is-open{top:68px}.section{padding:78px 0}.hero{padding:58px 0 70px}.hero h1{font-size:41px}.hero-lead{font-size:15px;line-height:1.9}.hero-lead strong{font-size:17px}.hero-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .button{width:100%}.hero-visual{min-height:auto}.hero-visual-card{padding:28px 12px 20px}.floating-note{display:none}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{border-right:0;padding:14px 12px!important;border-bottom:1px solid #edf0ee}.trust-grid>div:nth-child(odd){border-right:1px solid #edf0ee}.problem-grid,.scene-grid,.plan-grid{grid-template-columns:1fr}.flow-grid{grid-template-columns:1fr}.flow-grid>i{transform:rotate(90deg)}.section-heading{margin-bottom:38px}.section-heading h2,.value-copy h2{font-size:34px}.feature-row{padding:52px 0}.feature-copy h3{font-size:27px}.feature-image{min-height:280px;padding:25px}.value-grid{gap:36px}.dx-card{padding:55px 20px}.dx-card h2{font-size:34px}.plan-card{padding:30px}.final-cta{padding:70px 0}.final-cta>div>div{flex-direction:column;gap:18px}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-links{grid-template-columns:1fr}.mobile-only{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button{transition:none}}

/* Accessibility: improve contrast and readability for secondary/small text (WCAG AA target) */
:root{--muted:#4f5d56}
.microcopy{font-size:13px;color:#5a6860;font-weight:600}
.trust-grid span{font-size:13px;color:#56655c;font-weight:600}
.problem-card p{color:var(--muted);font-weight:500}
.flow-item p{font-size:14px;color:var(--muted);font-weight:500}
.flow-grid>i{color:#627066}
.feature-copy>p:not(.point){color:var(--muted);font-weight:500}
.scene-grid p{font-size:14px;color:var(--muted);font-weight:500}
.dx-card>p:not(.eyebrow){color:var(--muted);font-weight:500}
.plan-sub{color:var(--muted);font-weight:500}
.plan-note{font-size:13px;color:#56655c;font-weight:500}
.note-a .note-small{color:#52675a}
.note-b .note-small{color:#785463}
.final-cta p{color:#e3f0e6}
.final-cta>div>span{color:#e3f0e6}

@media(max-width:680px){
  .trust-grid span,.microcopy,.plan-note{font-size:13px}
}
