@font-face{font-family:Darumadrop;src:url(/fonts/DarumadropOne-wordmark.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/fonts/NunitoSans-latin-wght.woff2)format("woff2-variations");font-weight:200 1000;font-style:normal;font-display:swap}:root{--font-body:"Avenir Next", Avenir, "Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-ja:"Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", sans-serif;--font-brand:Darumadrop, var(--font-body);--font-rounded:ui-rounded, "SF Pro Rounded", var(--font-body);--text-copy:1.125rem;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-card:clamp(1.25rem, 1.6vw, 1.4rem);--title-page:clamp(2.25rem, 4.4vw, 3.5rem);--title-section:clamp(2.25rem, 4.6vw, 4.25rem);--title-display:clamp(3.25rem, 7.4vw, 104px);--leading-tight:1.04;--leading-snug:1.2;--leading-body:1.6;--tracking-title:-.03em;--weight-title:800;--ink:#10233f;--soft-ink:#3f566f;--softer-ink:#5b6f84;--ink-2:var(--soft-ink);--ink-3:var(--softer-ink);--ink-a10:#10233f1a;--ink-a20:#10233f33;--ink-a30:#10233f4d;--on-dark:#fff;--on-dark-2:#cfdff0;--bg:#f4f9fe;--surface:#fbfdff;--header-glass:#62b0fcd6;--white-a20:#fff3;--white-a40:#fff6;--white-a70:#ffffffb3;--line:#dde7f0;--line-strong:#b4c4d4;--sky:#62b0fc;--sky-50:#eaf4fe;--sky-100:#d6eafc;--blue:#1f6cc9;--green:#47a878;--mint-100:#e0f3e9;--mint-ink:#2a6547;--coral:#d96475;--coral-100:#ffe5ea;--coral-ink:#a5364c;--sun:#f4c550;--sun-100:#fff3d3;--violet:#9472c4;--violet-100:#efe8fa;--gold:#f2b01f;--gold-100:#fff6dc;--gold-ink:#805208;--combo:#f58a07;--combo-hot:#f0386b;--spent-100:#eef1f4;--spent-ink:#8a97a5;--device-edge:#565c67;--device-body:#14171c;--device-body-light:#3a3f49;--device-black:#000;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-2xl:40px;--r-pill:999px;--shadow-sm:0 1px 2px var(--ink-a10), 0 4px 12px #10233f0d;--shadow-md:0 12px 32px var(--ink-a10);--shadow-lg:0 32px 70px #10233f47;--page-max:1376px;--gutter:clamp(20px, 4vw, 64px);--measure:46rem;--header-height:4.75rem;--section-space:clamp(72px, 10vw, 136px);--badge-hero:clamp(200px, 20vw, 320px);--badge-section:13.5rem;--badge-header:10rem;--ease-out:cubic-bezier(.2, .8, .2, 1);--duration-fast:.16s;--duration-slow:.7s}@media (width<=700px){:root{--header-height:64px}}*,:before,:after{box-sizing:border-box}html{background:var(--sky);color:var(--ink);font-size:clamp(100%,.5rem + .6vw,118.75%);font-family:var(--font-body);font-synthesis:none;-webkit-font-smoothing:antialiased;scroll-padding-top:calc(var(--header-height) + 16px)}body{font-size:var(--text-copy);line-height:var(--leading-body);margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:3px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}h1,h2{color:var(--ink);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);line-height:var(--leading-snug);text-wrap:balance}h1{font-size:var(--title-page);margin:0;line-height:1.08}h3{color:var(--ink)}[lang=ja]{font-family:var(--font-ja)}.page-row,.practice-index,.planner,.kanji-page,.downloads-page,.review-page,.guide-page,.legal{width:100%;max-width:var(--page-max);padding-inline:var(--gutter);margin-inline:auto}.practice-index,.planner,.kanji-page,.downloads-page,.review-page,.guide-page,.legal{padding-top:clamp(28px,4vw,56px);padding-bottom:clamp(56px,7vw,96px)}.section-space{padding-block:var(--section-space)}.practice-index,.practice-page,.planner,.kanji-page,.downloads-page,.review-page{--ink-2:var(--ink);--ink-3:var(--ink)}.paper,.kanji-list,.kanji-drill,.next-step,.sources,.arcade-card,.level-card,.pack-card,.signup-card,.sample-card,.review-hero,.review-card,.level-guidance{--ink-2:var(--soft-ink);--ink-3:var(--softer-ink)}.guide-page,.legal{width:calc(100% - var(--gutter) * 2);max-width:calc(var(--page-max) - var(--gutter) * 2);background:var(--surface);border-radius:var(--r-2xl);box-shadow:var(--shadow-md);margin-block:clamp(20px,3vw,40px) clamp(48px,6vw,80px);padding:clamp(28px,4.5vw,64px)}.legal>*,.guide-page>p,.guide-page>ul,.guide-page>h2,.guide-page>.guide-sources{max-width:var(--measure)}.legal h1{font-size:var(--title-page)}.legal h2{font-size:var(--text-2xl);letter-spacing:-.02em;margin:36px 0 10px}.legal p,.legal li{font-size:var(--text-copy);line-height:1.7}.legal .updated{font-size:var(--text-sm);color:var(--ink-3);margin:14px 0 30px}.legal a{overflow-wrap:anywhere}.legal ul{padding-left:22px}.skip-link{z-index:30;background:var(--surface);border-radius:var(--r-sm);padding:10px 14px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:10px}.site-header{z-index:20;height:var(--header-height);background:var(--header-glass);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--ink-a10);transition:background var(--duration-fast) ease, border-color var(--duration-fast) ease;position:sticky;top:0}.site-header-row{justify-content:space-between;align-items:center;gap:20px;height:100%;display:flex}.wordmark{font-family:var(--font-brand);color:var(--ink);white-space:nowrap;font-size:2rem;line-height:1;text-decoration:none}.store-badge{border-radius:var(--r-sm);transition:transform var(--duration-fast) var(--ease-out);flex-shrink:0;display:block}.store-badge:hover{transform:translateY(-2px)}.store-badge img{width:100%;height:auto}.header-download{width:var(--badge-header);transition:transform var(--duration-fast) var(--ease-out), opacity var(--duration-fast) ease, visibility var(--duration-fast) ease}.site-header.over-hero{backdrop-filter:none;background:0 0;border-color:#0000}.site-header.over-hero .header-download{opacity:0;visibility:hidden}.site-footer{border-top:1px solid var(--ink-a20)}.site-footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;padding-block:36px;display:flex}.site-footer .wordmark{font-size:1.625rem}.site-footer nav{flex-wrap:wrap;gap:4px 24px;display:flex}.site-footer nav a{color:var(--ink);font-size:var(--text-md);padding-block:8px;font-weight:600;text-decoration:none}.site-footer nav a:hover{color:var(--ink);text-decoration:underline}.footer-copyright{color:var(--ink);font-size:var(--text-sm);flex-basis:100%;margin:0}.device{--device-width:300px;width:var(--device-width);padding:calc(var(--device-width) * .028);background:linear-gradient(145deg, var(--device-body-light), var(--device-body) 45%, var(--device-body-light));border-radius:calc(var(--device-width) * .17);box-shadow:inset 0 0 0 1.5px var(--device-edge), inset 0 0 0 3px var(--device-body), var(--shadow-lg);flex-shrink:0;position:relative}.device:after{content:"";top:calc(var(--device-width) * .058);width:calc(var(--device-width) * .3);height:calc(var(--device-width) * .088);background:var(--device-black);border-radius:var(--r-pill);position:absolute;left:50%;transform:translate(-50%)}.device img,.device video{border-radius:calc(var(--device-width) * .142);width:100%;height:auto;display:block}@media (width<=700px){.wordmark{font-size:1.625rem}.header-download{width:120px}:root{--badge-section:200px}.site-footer-row{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
