:root{color-scheme:light;--canvas: #f5f3ee;--surface: #ffffff;--surface-soft: #ebe8df;--ink: #171916;--muted: #62665f;--line: #c8cbc3;--forest: #17372c;--text-on-dark: #f4f2ec;--line-on-dark: rgb(255 255 255 / 26%);--coral: #d45f45;--coral-dark: #a33f2b;--focus: #0f6fd4;--content: 1180px;--reading: 760px;--radius-sm: 4px;--radius-md: 8px;--shadow-low: 0 12px 28px rgb(23 25 22 / 10%);--space-1: .5rem;--space-2: .75rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--space-7: 4.5rem;--space-8: 7rem;font-family:Inter,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{margin:0;background:var(--canvas);color:var(--ink);font-size:16px;line-height:1.75;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{position:fixed;z-index:100;top:var(--space-3);left:var(--space-3);padding:.65rem 1rem;background:var(--ink);color:var(--text-on-dark);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:20;top:0;min-height:72px;border-bottom:1px solid rgb(23 25 22 / 15%);background:#f5f3eef5}.header-inner,.section-inner,.footer-inner{width:min(calc(100% - 3rem),var(--content));margin-inline:auto}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);font-size:1.08rem;font-weight:760;text-decoration:none}.brand img{width:38px;height:38px;border:1px solid rgb(23 25 22 / 10%);border-radius:var(--radius-md)}.desktop-nav{display:flex;margin-left:auto;align-items:center;gap:var(--space-5);color:#353832;font-size:.92rem;font-weight:650}.header-actions{display:flex;flex:0 0 auto;align-items:center;gap:var(--space-2)}.desktop-nav a{text-decoration:none}.desktop-nav a:hover{text-decoration:underline}.language-link{min-height:44px;display:inline-flex!important;align-items:center;justify-content:center;font-weight:760;text-decoration:none!important}.language-link:hover{text-decoration:underline!important}.menu-toggle{display:none;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink);cursor:pointer;font-size:.9rem;font-weight:700}.mobile-menu{display:none}.eyebrow{margin:0 0 var(--space-3);color:currentColor;font-size:.8rem;font-weight:760;line-height:1.3;text-transform:uppercase}.hero{position:relative;isolation:isolate;height:calc(100svh - 120px);min-height:560px;max-height:820px;overflow:hidden;background:#cbbba8}.hero-media{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{position:absolute;z-index:-1;inset:0 auto 0 0;width:min(51%,760px);background:#f5f3eee0;content:""}.hero-inner{width:min(calc(100% - 3rem),var(--content));height:100%;margin-inline:auto;display:flex;align-items:center}.hero-copy{width:min(49%,580px);padding-block:var(--space-6)}.hero-brand{margin:0 0 var(--space-4);font-size:1.1rem;font-weight:780}.hero h1{max-width:9em;margin:0;font-size:4rem;font-weight:760;line-height:1.13;letter-spacing:0}.hero-lead{max-width:31rem;margin:var(--space-5) 0 0;color:#353832;font-size:1.08rem;line-height:1.9}.hero-action{margin-top:var(--space-5)}.text-link{display:inline-flex;min-height:44px;align-items:center;color:var(--coral-dark);font-weight:760;text-decoration:none}.text-link:after{margin-left:.6rem;content:"→"}.text-link:hover{text-decoration:underline}.section{padding-block:var(--space-8)}.section-kicker{margin:0 0 var(--space-3);color:var(--coral-dark);font-size:.82rem;font-weight:800;line-height:1.3}.section h2{max-width:13em;margin:0;font-size:3.25rem;font-weight:730;line-height:1.24;letter-spacing:0;text-wrap:balance}.section-lead{max-width:43rem;margin:var(--space-5) 0 0;color:var(--muted);font-size:1.05rem}.intro-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:end;gap:var(--space-7)}.memory-strip{display:grid;margin-top:var(--space-7);grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.memory-frame{aspect-ratio:4 / 3;margin:0;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-soft)}.memory-frame img{display:block;width:100%;height:100%;object-fit:cover}.memory-frame:first-child img{object-position:center 82%}html[lang=ja] .section h2{word-break:auto-phrase}.steps{margin-top:var(--space-7);border-top:1px solid var(--line)}.step{display:grid;padding-block:var(--space-5);border-bottom:1px solid var(--line);grid-template-columns:5rem minmax(13rem,.65fr) minmax(0,1fr);gap:var(--space-4)}.step-number{color:var(--coral-dark);font-weight:800}.step h3,.trust-point h3,.plan h3{margin:0;font-size:1.2rem;line-height:1.45}.step p,.trust-point p,.plan p{margin:0;color:var(--muted)}.value-line{margin:var(--space-7) 0 0;color:var(--forest);font-size:2rem;font-weight:710;line-height:1.4}.trust{background:var(--forest);color:#f7f5ef}.trust .section-kicker{color:#f2a18f}.trust .section-lead,.trust-point p{color:#d6e0d8}.trust-grid{display:grid;margin-top:var(--space-7);border-top:1px solid var(--line-on-dark);grid-template-columns:repeat(3,1fr)}.trust-point{min-height:230px;padding:var(--space-5);border-right:1px solid var(--line-on-dark)}.trust-point:first-child{padding-left:0}.trust-point:last-child{border-right:0}.trust-point h3{margin-bottom:var(--space-3)}.retention-note{max-width:50rem;margin:var(--space-6) 0 0;padding-top:var(--space-5);border-top:1px solid var(--line-on-dark);color:#d6e0d8;font-size:.93rem}.retention-note a{color:var(--text-on-dark)}.pricing{background:var(--surface)}.plans{display:grid;margin-top:var(--space-7);grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.plan{display:flex;min-height:340px;padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column}.plan--featured{border-top:5px solid var(--coral);padding-top:calc(var(--space-5) - 4px)}.plan-label{margin:0 0 var(--space-2);color:var(--coral-dark);font-size:.82rem;font-weight:780}.price{margin:var(--space-5) 0;font-size:2.15rem;font-weight:760;line-height:1.2}.price span{color:var(--muted);font-size:.9rem;font-weight:600}.allowance{margin-top:auto!important;padding-top:var(--space-5);border-top:1px solid var(--line);color:var(--ink)!important;font-weight:650}.pricing-note{max-width:46rem;margin:var(--space-5) 0 0;color:var(--muted);font-size:.92rem}.download{background:#e9ddd4}.download .section-inner{display:grid;grid-template-columns:1fr .75fr;align-items:end;gap:var(--space-7)}.availability{margin:0;padding:var(--space-5) 0;border-block:1px solid rgb(23 25 22 / 28%)}.availability strong{display:block;font-size:1.1rem}.availability span{display:block;margin-top:var(--space-1);color:var(--muted)}.site-footer{padding-block:var(--space-7) var(--space-5);background:#171916;color:var(--text-on-dark)}.footer-main{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-7)}.footer-brand{margin:0;font-size:1.45rem;font-weight:760}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.footer-links h2{margin:0 0 var(--space-3);color:#aeb3aa;font-size:.78rem}.footer-links a,.footer-links button{display:block;width:fit-content;margin-block:var(--space-2);border:0;background:transparent;color:var(--text-on-dark);cursor:pointer;font-size:.9rem;padding:0;text-align:left}.footer-bottom{display:flex;margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid rgb(255 255 255 / 20%);align-items:center;justify-content:space-between;gap:var(--space-4);color:#aeb3aa;font-size:.82rem}.consent-panel{position:fixed;z-index:50;right:var(--space-4);bottom:var(--space-4);width:min(calc(100% - 2rem),440px);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-low)}.consent-panel[hidden]{display:none}.consent-panel h2{margin:0;font-size:1.1rem}.consent-panel p{margin:var(--space-2) 0 0;color:var(--muted);font-size:.88rem;line-height:1.65}.consent-actions{display:grid;margin-top:var(--space-4);grid-template-columns:1fr 1fr;gap:var(--space-2)}.consent-actions button{min-height:44px;border:1px solid var(--ink);border-radius:var(--radius-sm);background:transparent;color:var(--ink);cursor:pointer;font-weight:700}.consent-actions button:hover{background:var(--surface-soft)}.legal-main{padding-block:var(--space-7) var(--space-8)}.legal-header{width:min(calc(100% - 3rem),var(--reading));margin-inline:auto;padding-bottom:var(--space-6);border-bottom:1px solid var(--line)}.legal-header h1{margin:0;font-size:3.3rem;line-height:1.2;letter-spacing:0}html[lang=en] .hero h1{max-width:13em;font-size:2.9rem}html[lang=en] .section h2{max-width:15em}.legal-header p{margin:var(--space-4) 0 0;color:var(--muted)}.legal-content{width:min(calc(100% - 3rem),var(--reading));margin:var(--space-6) auto 0}.legal-content h2{margin:var(--space-7) 0 var(--space-3);font-size:1.55rem;line-height:1.45}.legal-content h3{margin:var(--space-5) 0 var(--space-2);font-size:1.1rem}.legal-content p,.legal-content li{color:#3e423b}.legal-content ul,.legal-content ol{padding-left:1.3rem}.legal-content li+li{margin-top:var(--space-2)}.not-found-actions{margin-top:var(--space-5);display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.legal-table{width:100%;border-collapse:collapse}.legal-table th,.legal-table td{padding:var(--space-3) 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.legal-table th{width:12rem;padding-right:var(--space-4);color:var(--ink)}.support-contact{margin-block:var(--space-6);padding-block:var(--space-5);border-block:1px solid var(--line)}.support-contact a{color:var(--coral-dark);font-size:1.2rem;font-weight:760}@media(max-width:900px){.hero:after{width:60%}.hero-copy{width:54%}.hero h1{font-size:3.65rem}.section h2{font-size:2.65rem}.intro-grid,.download .section-inner{grid-template-columns:1fr;align-items:start}.plans{grid-template-columns:1fr}.plan{min-height:auto}.allowance{margin-top:var(--space-5)!important}}@media(max-width:759px){:root{--space-7: 3.25rem;--space-8: 5rem}.header-inner,.section-inner,.footer-inner,.hero-inner,.legal-header,.legal-content{width:min(calc(100% - 2rem),var(--content))}.site-header,.header-inner{min-height:64px}.desktop-nav{display:none}.menu-toggle{display:block;margin-left:.25rem;padding-left:1rem;border-left:1px solid var(--line)}.mobile-menu[data-open=true]{display:grid;padding:var(--space-3) 1rem var(--space-4);border-top:1px solid var(--line);background:var(--canvas);grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-4)}.mobile-menu a{min-height:44px;display:flex;align-items:center;font-weight:680;text-decoration:none}.hero{height:calc(100svh - 104px);min-height:560px;max-height:720px}.hero-media{object-position:34% center}.hero:after{width:100%;background:#17191694}.hero-copy{width:100%;color:var(--text-on-dark)}.hero h1{max-width:8em;font-size:2.2rem}html[lang=en] .hero h1{max-width:12em;font-size:1.9rem}.hero-lead{max-width:25rem;color:var(--text-on-dark);font-size:1rem}.hero .text-link{color:var(--text-on-dark)}.section h2{max-width:none;font-size:1.8rem;line-height:1.34}.memory-strip{margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.memory-frame{aspect-ratio:4 / 3}.step{grid-template-columns:2.5rem 1fr}.step p{grid-column:2}.trust-grid{grid-template-columns:1fr}.trust-point,.trust-point:first-child{min-height:auto;padding:var(--space-5) 0;border-right:0;border-bottom:1px solid var(--line-on-dark)}.trust-point:last-child{border-bottom:0}.footer-main{grid-template-columns:1fr;gap:var(--space-4)}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-4)}.footer-links>div:last-child{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-4)}.footer-links>div:last-child h2{grid-column:1 / -1}.footer-bottom{flex-wrap:wrap}.consent-panel{right:1rem;bottom:1rem}.consent-actions{grid-template-columns:1fr}.legal-header h1{font-size:2.35rem}html[lang=en] .legal-header h1{font-size:2.1rem}.legal-table,.legal-table tbody,.legal-table tr,.legal-table th,.legal-table td{display:block;width:100%}.legal-table th{padding-bottom:0;border-bottom:0}}@media(min-width:360px)and (max-width:759px){.hero h1{font-size:2.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{.site-header,.site-footer,.consent-panel,.skip-link{display:none!important}body{background:#fff}.legal-main{padding:0}}
