@charset "UTF-8";
:root{color-scheme:light;--paper:#f7f8f3;--ink:#162b22;--muted:#58685f;--green:#146341;--lime:#d6f27c;--line:#dbe3d9;--white:#fff;--soft:#eaf0e6;--radius:24px;--max:1200px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",sans-serif;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.75;-webkit-text-size-adjust:100%}
body,button,summary{font-family:inherit}
a{color:inherit;text-underline-offset:4px}
img{display:block;max-width:100%;height:auto}
picture{display:block}
button,summary,a{-webkit-tap-highlight-color:transparent}
button,summary{font-size:inherit}
a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #3f7dcc;outline-offset:5px}
[hidden]{display:none!important}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{text-wrap:balance;overflow-wrap:break-word;hyphens:auto;line-height:1.22;letter-spacing:-.035em}
p,li,td{overflow-wrap:break-word}
h1{font-size:clamp(2.6rem,5.3vw,4.8rem);font-weight:780;line-height:1.14}
h2{font-size:clamp(2rem,3.8vw,3.3rem);font-weight:740}
h3{font-size:1.3rem;letter-spacing:-.02em}
.title-phrase{display:inline-block;max-width:100%}
p{color:var(--muted)}
.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--white);z-index:100;border:2px solid var(--green)}
.skip:focus{top:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:rgba(247,248,243,.97)}
.header-row{display:flex;align-items:center;gap:22px;min-height:88px}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0;font-size:1.12rem;font-weight:760;letter-spacing:-.025em}
.brand img{width:38px;height:38px;border-radius:10px}
.desktop-nav{display:flex;gap:22px;align-items:center;margin-left:auto}
.desktop-nav a{font-size:.85rem;font-weight:620;text-decoration:none;line-height:1.4}
.desktop-nav a:hover,.footer-links a:hover{color:var(--green);text-decoration:underline}
.header-tools{display:flex;align-items:center;gap:14px;margin-left:auto}
.language-menu,.mobile-menu{position:relative}
.language-menu summary,.mobile-menu summary{display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;list-style:none;min-height:44px;font-size:.85rem;font-weight:600}
summary::-webkit-details-marker{display:none}
.language-menu summary::after{content:'⌄';font-size:1rem}
.language-menu .language-list{position:absolute;right:0;top:52px;width:222px;padding:10px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 45px #1835251a;max-height:70vh;overflow-y:auto}
.language-list a{display:block;padding:8px 13px;text-decoration:none;border-radius:7px;font-size:.9rem}
.language-list a:hover,.language-list a[aria-current=page]{background:var(--soft);color:var(--green)}
.mobile-menu{display:none}
.language-notice{background:#fff8cf;border-bottom:1px solid #ecdfa5;color:#2f3028}
.language-notice-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding-block:12px;min-height:60px}
.language-notice-row>p{flex:1 1 240px;min-width:0;color:inherit;font-size:.87rem;font-weight:650;line-height:1.65}
.language-notice-actions{display:flex;flex-wrap:wrap;gap:10px}
.language-notice-actions a,.language-notice-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #ab9345;border-radius:7px;padding:8px 14px;font-size:.78rem;font-weight:650;line-height:1.5;text-align:center;text-decoration:none;cursor:pointer;background:#fffdf0;color:#433e2e;overflow-wrap:anywhere}
.language-notice-actions .language-notice-accept{background:#19201c;color:#fff;border-color:#19201c}
.language-notice-actions a:hover{background:#304137}.language-notice-actions button:hover{background:#fff2ad}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:12px 23px;text-decoration:none;border:1px solid transparent;border-radius:12px;font-weight:680;font-size:.94rem;line-height:1.5;transition:background .18s,transform .18s;text-align:center}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--green);color:#fff}
.button-primary:hover{background:#0e4f33}
.button-secondary{border-color:var(--line);background:transparent}
.button-secondary:hover{background:var(--soft)}
.button-small{min-height:42px;font-size:.8rem;padding:9px 14px;border-radius:9px}
.arrow{font-size:1.1em;flex-shrink:0}
.eyebrow{font-size:.75rem;color:var(--green);font-weight:780;letter-spacing:.1em;line-height:1.6;margin-bottom:19px}
.hero{padding:78px 0 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:58px;align-items:center}
.hero h1 span{display:block;color:var(--green)}
.hero h1:lang(ja) span{word-break:keep-all}
.hero .lede{font-size:1.1rem;line-height:1.9;max-width:38em;margin-top:25px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
.requirements{font-size:.78rem;line-height:1.7;margin-top:18px;max-width:40em}
.hero-art{width:100%;max-width:440px;justify-self:center}
.hero-screenshot{width:100%;height:auto;border:1px solid #cedac8;border-radius:20px;box-shadow:0 23px 60px -20px #16352536}
.hero-art figcaption{text-align:center;font-size:.75rem;margin-top:16px;color:var(--muted)}
.facts{margin-top:63px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.facts span{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;font-size:.85rem;font-weight:650;line-height:1.6}
.facts i{width:7px;height:7px;border:2px solid var(--green);border-radius:50%;flex-shrink:0}
.section{padding:98px 0}
.section-heading{max-width:760px;margin-bottom:43px}
.section-heading>p:not(.eyebrow){margin-top:20px;font-size:1.02rem}
.section-heading.center{margin-inline:auto;text-align:center}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.feature{padding:34px 36px;background:var(--paper)}
.feature-icon{display:flex;width:44px;height:44px;background:#e5eddc;color:var(--green);border-radius:13px;align-items:center;justify-content:center;margin-bottom:22px}
.feature-icon svg{width:22px;height:22px}
.feature p{margin-top:12px;font-size:.95rem;max-width:37em}
.screens-section{background:#eaf0e4;border-block:1px solid #e0e6da}
.screen-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:900px;margin:0 auto}
.screen-card{border:1px solid #cedac8;border-radius:20px;overflow:hidden;background:#f0f7ef}
.screen-card img{width:100%;height:auto}
.screen-card figcaption{padding:16px 22px;background:#f7faf4;font-weight:650;font-size:.9rem;border-top:1px solid var(--line)}
.screen-caption{font-size:.78rem;text-align:center;margin-top:20px}
.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}
.step{border-top:1px solid #b8c9b1;padding-top:22px}
.step-number{font-family:ui-monospace,monospace;color:var(--green);font-size:.9rem;display:block;margin-bottom:24px}
.step p{font-size:.94rem;margin-top:14px}
.plans-section{background:#f0f2e9;border-block:1px solid var(--line)}
.comparison-wrap{max-width:960px;margin-inline:auto;overflow-x:auto;border:1px solid #d6dfd0;border-radius:20px;background:#fff}
.comparison{width:100%;border-collapse:collapse;text-align:left;font-size:.95rem}
.comparison th,.comparison td{padding:20px 25px;border-bottom:1px solid #e5ebdf;vertical-align:middle;overflow-wrap:anywhere;hyphens:auto}
.comparison thead{background:#f7f9f3}
.comparison th{font-weight:700;line-height:1.5}
.comparison th:first-child{width:41%}.comparison th:last-child,.comparison td:last-child{background:#f1f7e8;color:#225338}
.comparison tr:last-child td,.comparison tr:last-child th{border-bottom:0}
.plan-notes{max-width:920px;margin:20px auto 0;display:grid;gap:10px}.plan-notes p{font-size:.8rem;line-height:1.8}
.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{font-weight:650;line-height:1.6;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 0;list-style:none}
.faq-item summary::after{content:'+';font-size:1.35rem;font-weight:400;color:var(--green);flex-shrink:0;line-height:1.2}
.faq-item[open] summary::after{content:'−'}
.faq-item p{font-size:.95rem;padding:0 28px 24px 0;line-height:1.9}
.closing{background:#183f2d;border-radius:30px;padding:62px;display:flex;align-items:center;justify-content:space-between;gap:50px;color:#fff;margin-bottom:85px}
.closing .eyebrow{color:var(--lime)}.closing h2 span{color:var(--lime);display:block}.closing p:not(.eyebrow){color:#d6e5d6;margin-top:18px}
.closing .button{background:var(--lime);color:#193526;flex-shrink:0;max-width:310px}
.site-footer{border-top:1px solid var(--line);padding:51px 0 26px;background:#f1f4eb}
.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:50px;padding-bottom:35px}
.footer-description{font-size:.9rem;margin-top:17px}
.footer-title{font-size:.77rem;font-weight:750;letter-spacing:.04em;margin-bottom:14px;color:var(--muted)}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:.86rem}
.footer-links a{text-decoration:none}
.support-email{overflow-wrap:anywhere}
.footer-languages{border-top:1px solid var(--line);padding:21px 0;display:flex;flex-wrap:wrap;gap:10px 19px;font-size:.75rem}
.footer-languages a{color:var(--muted);text-decoration:none}.footer-languages a[aria-current=page]{color:var(--green);font-weight:700}
.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;font-size:.75rem;color:var(--muted)}
.footer-company-link{display:block;flex-shrink:0}
.footer-company-logo{width:150px;height:auto;border-radius:8px}
.footer-credit{flex:1;min-width:0;text-align:right}
.copyright{white-space:nowrap}.footer-bottom a{font-weight:650;color:var(--ink)}
.subhero{padding:75px 0 48px;max-width:850px}.subhero h1{font-size:clamp(2.5rem,5vw,4.2rem)}.subhero .lede{font-size:1.08rem;margin-top:25px;max-width:700px}
.support-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:46px;padding-bottom:68px}
.support-sections{display:grid;gap:18px}
.support-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:30px}
.support-card p{margin-top:14px;font-size:.95rem}
.contact-card{background:#e9f0e0;border:1px solid #d8e3cc;border-radius:20px;padding:30px;align-self:start;position:sticky;top:116px}
.contact-card ul{padding-left:20px;font-size:.9rem;color:var(--muted);margin:20px 0}
.contact-card .support-email{display:block;margin-top:14px;font-weight:700;color:var(--green);font-size:clamp(.9rem,2vw,1.2rem)}
.contact-card .small{font-size:.8rem;margin-top:22px}
.contact-card h3{margin-top:30px;font-size:1.05rem}
.legal-notice{padding:18px 23px;border:1px solid var(--line);border-radius:12px;font-size:.85rem;background:#f0f4e8;margin:22px 0}
.legal-section{max-width:850px;padding-bottom:74px}
.legal-copy h3{margin:34px 0 12px;font-size:1.15rem;letter-spacing:0;line-height:1.5}
.legal-copy p{font-size:.94rem;line-height:1.95;margin-top:14px;white-space:pre-line}
.terms-disclosure{border:1px solid var(--line);border-radius:18px;background:#fff;padding:25px 30px}
.terms-disclosure>summary{cursor:pointer;font-size:1.25rem;font-weight:700;display:flex;justify-content:space-between;gap:20px;list-style:none;line-height:1.5}
.terms-disclosure>summary::after{content:'+';color:var(--green)}.terms-disclosure[open]>summary::after{content:'−'}
.privacy-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 30px}
.privacy-point{padding:21px;border:1px solid var(--line);border-radius:15px;font-weight:650;font-size:.9rem;line-height:1.6;background:#fff}
.privacy-point::before{content:'✓';display:block;color:var(--green);font-size:1.2rem;margin-bottom:10px}
.error-page{padding:100px 0;min-height:65vh;max-width:720px}.error-page p{margin:22px 0}
@media(min-width:1141px){.header-tools{margin-left:0}}
@media(max-width:1140px){.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{border:1px solid var(--line);border-radius:9px;padding:8px 13px}.mobile-menu nav{position:absolute;right:0;top:52px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 35px #1a30221a;padding:14px;border-radius:14px;min-width:240px;max-width:min(90vw,350px)}.mobile-menu nav a{display:block;padding:10px 14px;text-decoration:none;font-size:.9rem}.mobile-menu nav a:hover{background:var(--soft)}.header-row{gap:16px}.hero-grid{gap:30px}.hero h1{font-size:clamp(2.8rem,4.7vw,3.7rem)}.hero{padding-top:56px}.faq-layout{gap:45px}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.header-row{min-height:76px}.header-tools{gap:13px}.header-download{display:none}.hero{padding-top:45px}.hero-grid{grid-template-columns:1fr;gap:20px}.hero h1{font-size:clamp(2.5rem,7.6vw,3.9rem)}.hero .lede{max-width:35em;font-size:1rem}.hero-art{max-width:440px;margin-inline:auto;margin-top:15px}.facts{margin-top:25px;padding:21px 0;gap:12px}.facts span{font-size:.76rem;flex-direction:column;gap:7px}.section{padding:65px 0}.feature{padding:28px}.section-heading{margin-bottom:30px}.step-grid{gap:23px}.step h3{font-size:1.14rem}.screen-grid{gap:18px}.screen-card figcaption{padding:13px 15px}.faq-layout{grid-template-columns:1fr;gap:10px}.closing{padding:38px;gap:28px;flex-direction:column;align-items:flex-start;margin-bottom:58px}.footer-main{gap:30px;grid-template-columns:1.2fr 1fr}.footer-main>div:first-child{grid-column:1/-1}.subhero{padding-top:45px}.support-layout{grid-template-columns:1fr;gap:25px}.contact-card{position:static;grid-row:1}.support-card{padding:24px}.privacy-points{gap:10px}.comparison th,.comparison td{padding:17px 18px;font-size:.85rem}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.brand{gap:8px;font-size:1rem}.brand img{width:32px;height:32px;border-radius:8px}.header-row{gap:10px}.header-tools{gap:10px}.language-menu summary{font-size:.78rem;max-width:125px}.mobile-menu summary{font-size:.78rem;padding:7px 10px}.hero h1{font-size:2.65rem;line-height:1.18}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.feature-grid{grid-template-columns:1fr}.screen-grid{grid-template-columns:1fr;max-width:360px}.step-grid{grid-template-columns:1fr;gap:28px}.step{padding-top:16px}.step-number{margin-bottom:12px}.comparison th,.comparison td{padding:14px 11px;font-size:.78rem;line-height:1.7}.comparison th:first-child{width:35%}.comparison th:last-child{width:34%}.facts span{font-size:.7rem}.closing{padding:31px 25px;border-radius:22px}.closing h2{font-size:2.25rem}.footer-main{grid-template-columns:1fr 1fr;gap:23px}.footer-bottom{font-size:.7rem}.privacy-points{grid-template-columns:1fr}.privacy-point::before{display:inline;margin-right:10px}.terms-disclosure{padding:22px}.contact-card{padding:25px}.eyebrow{font-size:.7rem}.subhero h1{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media(max-width:360px){.brand{font-size:.85rem;gap:6px}.brand img{width:28px;height:28px}.header-tools{gap:7px}.language-menu summary{font-size:.7rem;max-width:86px;overflow-wrap:anywhere}.language-menu summary>span{display:none}.mobile-menu summary{font-size:.7rem;padding-inline:8px}.header-row{gap:7px}.hero h1{font-size:2.25rem}}
@media(max-width:1400px){.header-download{display:none}}
@media(max-width:360px){.subhero h1{font-size:2.1rem}}
@media(max-width:480px){.footer-bottom{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px 20px}.footer-company-logo{width:120px}.footer-credit{text-align:left}.footer-bottom>a:last-child{grid-column:1/-1;justify-self:end}}
@media(max-width:480px){.language-notice-row>p{flex-basis:100%}.language-notice-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.language-notice-actions a,.language-notice-actions button{min-height:44px;padding-inline:10px}}
