.nihongo-lab-landing{--font: "DM Sans", system-ui, sans-serif;--font-round: "Zen Maru Gothic", "Zen Kaku Gothic New", system-ui, sans-serif;--font-jp: "Zen Kaku Gothic New", "DM Sans", system-ui, sans-serif;--mono: "DM Mono", monospace;--bg: oklch(97.6% .008 75);--bg-2: oklch(96% .013 75);--bg-ink: oklch(24% .014 190);--card: oklch(100% 0 0);--ink-1: oklch(24% .014 200);--ink-2: oklch(43% .012 200);--ink-3: oklch(60% .01 200);--border: oklch(89.5% .011 75);--border-strong: oklch(82% .013 75);--teal: oklch(56% .105 182);--teal-h: oklch(50% .112 182);--teal-bg: oklch(96% .03 182);--teal-line: oklch(88% .055 182);--amber: oklch(64% .13 62);--amber-h: oklch(58% .14 62);--amber-bg: oklch(96.5% .038 62);--amber-line: oklch(88% .065 62);--violet: oklch(56% .125 298);--violet-h: oklch(50% .133 298);--violet-bg: oklch(96% .028 298);--violet-line: oklch(89% .048 298);--green: oklch(62% .105 155);--green-bg: oklch(96% .034 155);--shadow-sm: 0 1px 3px oklch(15% .01 200/.06), 0 1px 2px oklch(15% .01 200/.04);--shadow-md: 0 4px 16px oklch(15% .01 200/.08), 0 1px 3px oklch(15% .01 200/.05);--shadow-lg: 0 18px 48px oklch(15% .01 200/.12), 0 5px 14px oklch(15% .01 200/.06);--maxw: 1120px;--r: 16px;font-family:var(--font);background:var(--bg);color:var(--ink-1);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.7}body.ja .nihongo-lab-landing{font-family:var(--font-jp)}body.ja .nihongo-lab-landing .btn,body.ja .nihongo-lab-landing h1,body.ja .nihongo-lab-landing h2,body.ja .nihongo-lab-landing h3,body.ja .nihongo-lab-landing h4{font-family:var(--font-round)}.nihongo-lab-landing a{color:var(--teal);text-decoration:none;transition:color .15s}.nihongo-lab-landing a:hover{color:var(--teal-h)}.nihongo-lab-landing button{cursor:pointer;font-family:inherit;border:none;background:none;color:inherit}.nihongo-lab-landing img{display:block;max-width:100%}.nihongo-lab-landing ::selection{background:#a4e7db}.nihongo-lab-landing .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}.nihongo-lab-landing .mono{font-family:var(--mono)}.nihongo-lab-landing .center{text-align:center}.nihongo-lab-landing .stripe{height:5px;display:flex}.nihongo-lab-landing .stripe>div:first-child{flex:2.2;background:var(--teal)}.nihongo-lab-landing .stripe>div:nth-child(2){flex:1;background:var(--amber)}.nihongo-lab-landing .stripe>div:last-child{flex:.7;background:var(--violet)}.nihongo-lab-landing header.nav{position:sticky;top:72px;z-index:90;background:#faf6f1d6;backdrop-filter:saturate(150%) blur(14px);-webkit-backdrop-filter:saturate(150%) blur(14px);border-bottom:1px solid var(--border)}.nihongo-lab-landing .nav-in{display:flex;align-items:center;gap:26px;height:64px}.nihongo-lab-landing .brand{display:flex;align-items:center;gap:11px;flex-shrink:0;color:var(--ink-1)}.nihongo-lab-landing .brand:hover{color:var(--ink-1)}.nihongo-lab-landing .brand .mark{width:36px;height:36px;border-radius:11px;background:var(--teal);display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font);font-weight:700;font-size:16px;letter-spacing:-.03em;box-shadow:0 4px 12px oklch(56% .105 182/.34),inset 0 1px #ffffff4d}.nihongo-lab-landing .brand .name{font-family:var(--font);font-weight:600;font-size:17px;letter-spacing:-.02em}.nihongo-lab-landing .brand .name b{font-weight:700}.nihongo-lab-landing .nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}.nihongo-lab-landing .nav-links a{color:var(--ink-2);font-size:13.5px;font-weight:500;padding:8px 12px;border-radius:9px;transition:background .14s,color .14s}.nihongo-lab-landing .nav-links a:hover{background:var(--bg-2);color:var(--ink-1)}.nihongo-lab-landing .lang-switcher-floating{position:fixed;top:120px;right:24px;z-index:1000}@media(max-width:640px){.nihongo-lab-landing .lang-switcher-floating{top:96px;right:16px}}.nihongo-lab-landing .lang{display:flex;gap:3px;padding:3px;background:var(--bg-2);border:1px solid var(--border);border-radius:99px;flex-shrink:0;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .lang button{font-family:var(--mono);font-size:11px;letter-spacing:.06em;padding:6px 11px;border-radius:99px;color:var(--ink-3);transition:all .15s}.nihongo-lab-landing .lang button.on{background:var(--card);color:var(--ink-1);box-shadow:var(--shadow-sm);font-weight:500}body.ja .nihongo-lab-landing .lang button{font-family:var(--mono)}.nihongo-lab-landing .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font);font-weight:700;font-size:14.5px;padding:12px 21px;border-radius:11px;transition:all .16s;white-space:nowrap;text-align:center}.nihongo-lab-landing .btn-primary{background:var(--teal);color:#fff;box-shadow:0 6px 16px oklch(56% .105 182/.3),inset 0 1px #ffffff40}.nihongo-lab-landing .btn-primary:hover{background:var(--teal-h);color:#fff;transform:translateY(-1px)}.nihongo-lab-landing .btn-amber{background:var(--amber);color:#fff;box-shadow:0 6px 16px #c3782952,inset 0 1px #ffffff47}.nihongo-lab-landing .btn-amber:hover{background:var(--amber-h);color:#fff;transform:translateY(-1px)}.nihongo-lab-landing .btn-ghost{background:var(--card);color:var(--ink-1);border:1.5px solid var(--border-strong);box-shadow:var(--shadow-sm)}.nihongo-lab-landing .btn-ghost:hover{border-color:var(--ink-3);background:var(--bg-2);color:var(--ink-1)}.nihongo-lab-landing .btn-sm{padding:9px 16px;font-size:13px;border-radius:10px}.nihongo-lab-landing .btn-lg{padding:16px 30px;font-size:16px;border-radius:13px}.nihongo-lab-landing .btn-light{background:#fdf8f1;color:var(--ink-1)}.nihongo-lab-landing .btn-light:hover{background:#fff;color:var(--ink-1);transform:translateY(-1px)}.nihongo-lab-landing .btn-outline-d{background:transparent;color:#efeae4;border:1.5px solid oklch(50% .02 75)}.nihongo-lab-landing .btn-outline-d:hover{border-color:#aca397;color:#fff}.nihongo-lab-landing .nav-cta{flex-shrink:0}.nihongo-lab-landing .hamburger{display:none;width:40px;height:40px;border-radius:10px;align-items:center;justify-content:center}.nihongo-lab-landing .mob-menu{display:none;border-bottom:1px solid var(--border);background:var(--bg)}.nihongo-lab-landing .mob-menu.open{display:block}.nihongo-lab-landing .mob-menu nav{display:flex;flex-direction:column;padding:12px 32px 20px;gap:2px}.nihongo-lab-landing .mob-menu a{padding:12px 4px;font-size:15px;font-weight:500;color:var(--ink-1);border-bottom:1px solid var(--border)}.nihongo-lab-landing section{padding:96px 0}.nihongo-lab-landing .eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.nihongo-lab-landing .eyebrow .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.nihongo-lab-landing .eyebrow.c-teal{color:var(--teal)}.nihongo-lab-landing .eyebrow.c-amber{color:var(--amber-h)}.nihongo-lab-landing .eyebrow.c-violet{color:var(--violet)}.nihongo-lab-landing h2.sec{font-family:var(--font);font-weight:700;font-size:clamp(1.75rem,3.6vw,2.6rem);line-height:1.28;letter-spacing:-.025em;color:var(--ink-1);text-wrap:balance;margin-top:16px}body.ja .nihongo-lab-landing h2.sec{line-height:1.42;letter-spacing:-.01em}.nihongo-lab-landing .lead{font-size:16.5px;line-height:1.95;color:var(--ink-2);max-width:680px;margin-top:20px;text-wrap:pretty}.nihongo-lab-landing .center .lead{margin-left:auto;margin-right:auto}.nihongo-lab-landing .band{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.nihongo-lab-landing .ph{background:repeating-linear-gradient(135deg,#f0eae3 0 11px,#f7f3ee 11px 22px);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-align:center;padding:14px;text-transform:uppercase}.nihongo-lab-landing .rv{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.nihongo-lab-landing .rv.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.nihongo-lab-landing .rv{opacity:1!important;transform:none!important;transition:none!important}}.nihongo-lab-landing .hero{position:relative;overflow:hidden;padding:80px 0 92px}.nihongo-lab-landing .hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}.nihongo-lab-landing .hero-bg .g1{position:absolute;top:-24%;right:-6%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,oklch(90% .055 182/.55),transparent 70%)}.nihongo-lab-landing .hero-bg .g2{position:absolute;bottom:-32%;left:-12%;width:560px;height:560px;border-radius:50%;background:radial-gradient(closest-side,oklch(91% .055 62/.5),transparent 70%)}.nihongo-lab-landing .hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.nihongo-lab-landing .pillbadge{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:999px;background:var(--teal-bg);border:1px solid var(--teal-line);font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-h)}.nihongo-lab-landing .pillbadge .pulse{width:8px;height:8px;border-radius:50%;background:var(--teal);animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 oklch(56% .105 182/.5)}70%{box-shadow:0 0 0 9px oklch(56% .105 182/0)}to{box-shadow:0 0 oklch(56% .105 182/0)}}.nihongo-lab-landing .hero h1{font-family:var(--font);font-weight:700;letter-spacing:-.035em;font-size:clamp(2.2rem,4.9vw,3.5rem);line-height:1.1;color:var(--ink-1);margin-top:22px}body.ja .nihongo-lab-landing .hero h1{line-height:1.3;letter-spacing:-.01em}.nihongo-lab-landing .hero h1 .t{color:var(--teal)}.nihongo-lab-landing .hero h1 .a{color:var(--amber-h)}.nihongo-lab-landing .hero h1 .v{color:var(--violet)}.nihongo-lab-landing .hero .kicker{font-family:var(--font);font-weight:600;font-size:clamp(16px,1.9vw,18.5px);color:var(--ink-1);margin-top:22px;line-height:1.6}.nihongo-lab-landing .hero .sub{font-size:15.5px;color:var(--ink-2);max-width:520px;line-height:1.9;margin-top:14px;text-wrap:pretty}.nihongo-lab-landing .hero .promise{display:inline-flex;align-items:center;gap:10px;margin-top:24px;padding:12px 18px;border-radius:12px;background:var(--card);border:1px solid var(--amber-line);box-shadow:var(--shadow-sm);font-family:var(--font);font-weight:700;font-size:15px;color:var(--ink-1)}.nihongo-lab-landing .hero .promise .ic{width:26px;height:26px;border-radius:8px;background:var(--amber-bg);color:var(--amber-h);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .hero-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.nihongo-lab-landing .hero-marks{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.nihongo-lab-landing .hero-mark{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);font-family:var(--mono);font-weight:500;font-size:11.5px;letter-spacing:.04em;color:var(--ink-1)}.nihongo-lab-landing .hero-mark svg{color:var(--ink-3);flex-shrink:0}.nihongo-lab-landing .hero-art{position:relative}.nihongo-lab-landing .stack{background:var(--card);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow-lg);padding:22px;display:flex;flex-direction:column;gap:14px}.nihongo-lab-landing .stack .hero-img{border-radius:14px;aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.nihongo-lab-landing .arc{display:flex;flex-direction:column;gap:8px}.nihongo-lab-landing .arc-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--bg-2)}.nihongo-lab-landing .arc-row .n{font-family:var(--mono);font-size:11px;color:var(--ink-3);width:18px;flex-shrink:0}.nihongo-lab-landing .arc-row .lbl{font-family:var(--font);font-weight:700;font-size:13.5px;color:var(--ink-1)}body.ja .nihongo-lab-landing .arc-row .lbl{font-family:var(--font-round)}.nihongo-lab-landing .arc-row .bar{margin-left:auto;height:6px;border-radius:99px;background:#e9e4dd;width:78px;overflow:hidden;flex-shrink:0}.nihongo-lab-landing .arc-row .bar i{display:block;height:100%;border-radius:99px}.nihongo-lab-landing .arc-row.s1{border-color:var(--teal-line);background:var(--teal-bg)}.nihongo-lab-landing .arc-row.s1 .bar i{width:28%;background:var(--teal)}.nihongo-lab-landing .arc-row.s2{border-color:var(--teal-line)}.nihongo-lab-landing .arc-row.s2 .bar i{width:52%;background:var(--teal)}.nihongo-lab-landing .arc-row.s3{border-color:var(--amber-line);background:var(--amber-bg)}.nihongo-lab-landing .arc-row.s3 .bar i{width:76%;background:var(--amber)}.nihongo-lab-landing .arc-row.s4{border-color:var(--violet-line);background:var(--violet-bg)}.nihongo-lab-landing .arc-row.s4 .bar i{width:100%;background:var(--violet)}.nihongo-lab-landing .red-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.nihongo-lab-landing .red-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .red-top{display:flex;align-items:center;gap:11px}.nihongo-lab-landing .red-letter{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font);font-weight:800;font-size:19px}.nihongo-lab-landing .red-name{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3)}.nihongo-lab-landing .red-card.research .red-letter{background:var(--teal-bg);color:var(--teal-h)}.nihongo-lab-landing .red-card.development .red-letter{background:var(--amber-bg);color:var(--amber-h)}.nihongo-lab-landing .red-card.value .red-letter{background:var(--violet-bg);color:var(--violet)}.nihongo-lab-landing .red-card h3{font-family:var(--font);font-weight:700;font-size:19px;line-height:1.45;letter-spacing:-.02em;margin-top:22px}.nihongo-lab-landing .red-card p{font-size:13.8px;line-height:1.9;color:var(--ink-2);margin-top:10px}.nihongo-lab-landing .red-note{margin-top:28px;padding:28px 32px;border-radius:18px;background:var(--bg-ink);color:#fff}.nihongo-lab-landing .red-note .rn-label{font-family:var(--mono);font-size:16px;font-weight:700;letter-spacing:.12em;color:#8ebcb3}.nihongo-lab-landing .red-note p{margin-top:10px;font-size:14.5px;line-height:1.9;color:#dbd7d0}.nihongo-lab-landing .red-note b{color:#fff}.nihongo-lab-landing .project-path{display:flex;align-items:stretch;gap:10px;margin-top:48px}.nihongo-lab-landing .pp-step{flex:1;min-width:0;background:var(--card);border:1px solid var(--border);border-radius:15px;padding:20px 18px;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .pp-num{font-family:var(--mono);color:var(--teal);font-size:11px;letter-spacing:.08em}.nihongo-lab-landing .pp-step h3{font-family:var(--font);font-size:15px;font-weight:700;line-height:1.45;margin-top:10px}.nihongo-lab-landing .pp-step p{font-size:12.5px;line-height:1.75;color:var(--ink-2);margin-top:7px}.nihongo-lab-landing .pp-arrow{display:flex;align-items:center;color:var(--ink-3);font-size:18px}.nihongo-lab-landing .language-in-work{margin-top:28px;padding:28px 30px;background:var(--card);border:1px solid var(--teal-line);border-radius:16px;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .liw-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--teal-h)}.nihongo-lab-landing .liw-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.nihongo-lab-landing .liw-chips span{padding:8px 12px;border-radius:999px;background:var(--teal-bg);border:1px solid var(--teal-line);font-family:var(--font);font-size:12.5px;font-weight:600;color:var(--ink-1)}.nihongo-lab-landing .language-in-work p{margin-top:18px;font-size:13.5px;line-height:1.9;color:var(--ink-2)}.nihongo-lab-landing .feel-in{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center;margin-top:12px}.nihongo-lab-landing .feel-photo{aspect-ratio:1 / 1;width:100%;max-width:520px;justify-self:center;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border)}.nihongo-lab-landing .feel-img{width:100%;height:100%;object-fit:cover;border-radius:20px;display:block}.nihongo-lab-landing .feels{display:flex;flex-direction:column;gap:2px;margin-top:28px}.nihongo-lab-landing .fl{display:flex;gap:15px;padding:17px 4px;border-bottom:1px solid var(--border)}.nihongo-lab-landing .fl:last-child{border-bottom:none}.nihongo-lab-landing .fl .fic{width:40px;height:40px;border-radius:12px;background:var(--teal-bg);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .fl h4{font-family:var(--font);font-weight:700;font-size:15px;letter-spacing:-.015em;color:var(--ink-1)}.nihongo-lab-landing .fl p{font-size:13.5px;line-height:1.75;color:var(--ink-2);margin-top:3px;text-wrap:pretty}.nihongo-lab-landing .why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:48px}.nihongo-lab-landing .why{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:26px 28px 28px;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .why .wn{font-family:var(--mono);font-size:20px;font-weight:500;color:var(--amber-h);letter-spacing:-.02em}.nihongo-lab-landing .why h3{font-family:var(--font);font-weight:700;font-size:17px;line-height:1.45;letter-spacing:-.02em;color:var(--ink-1);margin-top:10px;text-wrap:pretty}body.ja .nihongo-lab-landing .why h3{letter-spacing:0;line-height:1.6}.nihongo-lab-landing .why p{font-size:13.5px;line-height:1.9;color:var(--ink-2);margin-top:10px;text-wrap:pretty}.nihongo-lab-landing .why.wide{grid-column:1/-1;border-left:4px solid var(--teal)}.nihongo-lab-landing .dir-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;align-items:start;margin-top:52px}.nihongo-lab-landing .dir-photo{position:relative}.nihongo-lab-landing .dir-photo .badge{position:absolute;left:-14px;bottom:22px;display:inline-flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-md);padding:10px 16px 10px 12px;border-radius:99px}.nihongo-lab-landing .dir-photo .badge .d{width:32px;height:32px;border-radius:50%;background:var(--violet);color:#fff;font-family:var(--font);font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center}.nihongo-lab-landing .dir-photo .badge .bt{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-3)}.nihongo-lab-landing .dir-photo .badge .bt b{display:block;font-family:var(--font-round);font-size:13px;color:var(--ink-1);letter-spacing:0;margin-top:1px}.nihongo-lab-landing .dir-name{font-family:var(--font);font-weight:700;font-size:clamp(1.7rem,3.2vw,2.3rem);letter-spacing:-.02em;color:var(--ink-1);line-height:1.2}.nihongo-lab-landing .dir-role{font-family:var(--font-round);font-size:14.5px;font-weight:700;color:var(--violet);margin-top:8px}.nihongo-lab-landing .dir-org{font-family:var(--mono);font-size:12.5px;color:var(--ink-3);margin-top:4px}.nihongo-lab-landing .dir-bio{font-size:15px;line-height:2.05;color:var(--ink-2);margin-top:22px;text-wrap:pretty}.nihongo-lab-landing .dir-bio strong{color:var(--ink-1);font-weight:700}.nihongo-lab-landing .dir-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.nihongo-lab-landing .dir-tags .mt{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:11px;background:var(--bg-2);border:1px solid var(--border);font-family:var(--font);font-size:12px;font-weight:500;color:var(--ink-1)}.nihongo-lab-landing .dir-tags .mt .d{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nihongo-lab-landing .mentor-note{margin-top:48px;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:30px 34px;box-shadow:var(--shadow-sm);display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center}.nihongo-lab-landing .mentor-note .mi{width:54px;height:54px;border-radius:15px;background:var(--green-bg);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .mentor-note h4{font-family:var(--font-round);font-size:16px;font-weight:700;color:var(--ink-1)}.nihongo-lab-landing .mentor-note p{font-size:14px;line-height:1.95;color:var(--ink-2);margin-top:8px;text-wrap:pretty}.nihongo-lab-landing .beg-in{max-width:820px;margin:0 auto;text-align:center}.nihongo-lab-landing .beg-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px;text-align:left}.nihongo-lab-landing .beg-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:26px 28px;box-shadow:var(--shadow-sm)}.nihongo-lab-landing .beg-card .bh{display:flex;align-items:center;gap:11px}.nihongo-lab-landing .beg-card .bh .ic{width:38px;height:38px;border-radius:11px;background:var(--green-bg);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .beg-card h3{font-family:var(--font);font-weight:700;font-size:16px;letter-spacing:-.02em;color:var(--ink-1)}.nihongo-lab-landing .beg-card p{font-size:13.5px;line-height:1.9;color:var(--ink-2);margin-top:12px;text-wrap:pretty}.nihongo-lab-landing .pricing-notice-banner{margin-top:36px;background:var(--teal-bg);border:1px solid var(--teal-line);border-radius:16px;padding:18px 24px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm)}@media(max-width:640px){.nihongo-lab-landing .pricing-notice-banner{flex-direction:column;align-items:flex-start;gap:10px}}.nihongo-lab-landing .pricing-notice-banner .notice-badge{background:var(--teal);color:#fff;font-family:var(--font-round);font-weight:700;font-size:13px;padding:6px 14px;border-radius:99px;white-space:nowrap;flex-shrink:0}.nihongo-lab-landing .pricing-notice-banner .notice-text{font-size:14px;line-height:1.6;color:var(--ink-1)}.nihongo-lab-landing .pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:40px;align-items:stretch}@media(max-width:840px){.nihongo-lab-landing .pricing-grid{grid-template-columns:1fr;gap:36px}}.nihongo-lab-landing .pricing-card{position:relative;background:var(--card);border:1.5px solid var(--border);border-radius:20px;padding:36px 32px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}.nihongo-lab-landing .pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.nihongo-lab-landing .pricing-card.recommended{border-color:var(--amber);box-shadow:0 8px 28px #c378291f,var(--shadow-sm);background:linear-gradient(180deg,oklch(99.5% .008 62) 0%,var(--card) 100%)}.nihongo-lab-landing .pricing-card.recommended:hover{box-shadow:0 12px 36px #c378292e,var(--shadow-md)}.nihongo-lab-landing .recommend-badge{position:absolute;top:-14px;right:28px;background:var(--amber);color:#fff;font-family:var(--font-round);font-weight:700;font-size:12.5px;padding:4px 16px;border-radius:99px;box-shadow:0 4px 12px #c378294d;letter-spacing:.02em}.nihongo-lab-landing .pricing-card .card-header{margin-bottom:20px}.nihongo-lab-landing .pricing-card .course-tag{display:inline-block;font-family:var(--mono);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);background:var(--bg-2);padding:4px 10px;border-radius:6px;margin-bottom:12px}.nihongo-lab-landing .pricing-card .course-tag.tag-teal{color:var(--teal-h);background:var(--teal-bg);border:1px solid var(--teal-line)}.nihongo-lab-landing .pricing-card .course-tag.tag-amber{color:var(--amber-h);background:var(--amber-bg);border:1px solid var(--amber-line)}.nihongo-lab-landing .pricing-card .course-title{font-family:var(--font-round);font-weight:700;font-size:23px;color:var(--ink-1);line-height:1.3}.nihongo-lab-landing .pricing-card .course-title .plus{color:var(--amber-h);font-weight:800;margin:0 2px}.nihongo-lab-landing .pricing-card .course-desc{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin-top:8px;min-height:48px}.nihongo-lab-landing .pricing-card .price-box{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:18px 20px;margin-bottom:24px;margin-top:18px}.nihongo-lab-landing .pricing-card.recommended .price-box{background:oklch(98.5% .015 62);border-color:#f2d9c4}.nihongo-lab-landing .pricing-card .monitor-price{display:flex;align-items:baseline;color:var(--ink-1);font-family:var(--font-round);font-weight:700}.nihongo-lab-landing .pricing-card .monitor-price.highlight{color:var(--amber-h)}.nihongo-lab-landing .pricing-card .monitor-price .currency{font-size:20px;font-weight:600;margin-right:2px}.nihongo-lab-landing .pricing-card .monitor-price .amount{font-size:38px;line-height:1;letter-spacing:-.02em}.nihongo-lab-landing .pricing-card .monitor-price .unit{font-size:15px;color:var(--ink-2);margin-left:6px;font-weight:500}.nihongo-lab-landing .pricing-card .regular-price{font-size:12.5px;color:var(--ink-2);margin-top:6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nihongo-lab-landing .pricing-card .regular-price .strike{text-decoration:line-through;color:var(--ink-3)}.nihongo-lab-landing .pricing-card .regular-price .badge-sm{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.nihongo-lab-landing .pricing-card .regular-price .badge-sm.badge-teal{color:var(--teal-h);background:var(--teal-bg);border:1px solid var(--teal-line)}.nihongo-lab-landing .pricing-card .regular-price .badge-sm.badge-amber{color:var(--amber-h);background:var(--amber-bg);border:1px solid var(--amber-line)}.nihongo-lab-landing .pricing-card .course-meta{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.nihongo-lab-landing .pricing-card .meta-item{display:flex;align-items:center;gap:12px}.nihongo-lab-landing .pricing-card .meta-icon{width:36px;height:36px;border-radius:10px;background:var(--bg-2);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .pricing-card .meta-icon.ic-teal{background:var(--teal-bg);color:var(--teal)}.nihongo-lab-landing .pricing-card .meta-icon.ic-amber{background:var(--amber-bg);color:var(--amber-h)}.nihongo-lab-landing .pricing-card .meta-content{display:flex;flex-direction:column}.nihongo-lab-landing .pricing-card .meta-label{font-size:11px;color:var(--ink-3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em}.nihongo-lab-landing .pricing-card .meta-val{font-size:14.5px;font-weight:700;color:var(--ink-1);font-family:var(--font-round)}.nihongo-lab-landing .pricing-card .card-divider{height:1px;background:var(--border);margin:4px 0 20px}.nihongo-lab-landing .pricing-card .features-title{font-size:13px;font-weight:700;font-family:var(--font-round);color:var(--ink-1);margin-bottom:14px}.nihongo-lab-landing .pricing-card .features-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:32px;flex-grow:1}.nihongo-lab-landing .pricing-card .features-list li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--ink-2);line-height:1.6}.nihongo-lab-landing .pricing-card .features-list li .ck{color:var(--teal);flex-shrink:0;margin-top:3px}.nihongo-lab-landing .pricing-card .features-list li .ck.ck-amber{color:var(--amber-h)}.nihongo-lab-landing .pricing-card .features-list li.hl-feature{color:var(--ink-1);font-weight:600}.nihongo-lab-landing .pricing-card .card-cta{margin-top:auto}.nihongo-lab-landing .btn-full{width:100%}.nihongo-lab-landing .schedule-block{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:28px;margin-top:36px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px}.nihongo-lab-landing .spec-label{display:flex;align-items:center;gap:12px}.nihongo-lab-landing .spec-label .ic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .ic-teal{background:var(--teal-bg);color:var(--teal)}.nihongo-lab-landing .spec-label .t{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--ink-2);text-transform:uppercase}.nihongo-lab-landing .fmt-list{display:flex;flex-direction:column;gap:12px}.nihongo-lab-landing .fmt-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.nihongo-lab-landing .fmt-row .cls-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-round);font-weight:700;font-size:13px;color:#fff;padding:5px 13px;border-radius:99px;white-space:nowrap}.nihongo-lab-landing .fmt-row .when{font-size:13.5px;color:var(--ink-1);font-weight:500}.nihongo-lab-landing .fmt-note{font-size:12.5px;color:var(--ink-3);line-height:1.85;margin-top:6px}.nihongo-lab-landing .info-cta{position:relative;overflow:hidden;margin-top:48px;border-radius:24px;padding:56px 48px;text-align:center;color:var(--ink-1);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.nihongo-lab-landing .info-cta:before,.nihongo-lab-landing .info-cta:after{content:"";position:absolute;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--teal) 0 33%,var(--amber) 33% 66%,var(--violet) 66% 100%)}.nihongo-lab-landing .info-cta:before{top:0}.nihongo-lab-landing .info-cta:after{bottom:0}.nihongo-lab-landing .info-cta .ic-eyebrow{position:relative;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-h);display:inline-flex;align-items:center;gap:8px}.nihongo-lab-landing .info-cta .ic-eyebrow:before,.nihongo-lab-landing .info-cta .ic-eyebrow:after{content:"";width:22px;height:1px;background:var(--teal-line)}.nihongo-lab-landing .info-cta h2{position:relative;font-family:var(--font-round);font-weight:700;font-size:clamp(1.7rem,3.4vw,2.5rem);line-height:1.4;margin-top:18px;text-wrap:balance;color:var(--ink-1)}.nihongo-lab-landing .info-cta p{position:relative;font-family:var(--font-round);font-weight:500;font-size:clamp(14.5px,1.6vw,16px);line-height:1.9;color:var(--ink-2);max-width:540px;margin:16px auto 0;text-wrap:pretty}.nihongo-lab-landing .info-cta .ic-btns{position:relative;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:32px}.nihongo-lab-landing .info-cta .ic-note{position:relative;margin-top:22px;font-family:var(--font-round);font-size:12.5px;color:var(--ink-3)}@media(max-width:560px){.nihongo-lab-landing .info-cta{padding:44px 24px}}.nihongo-lab-landing .faq-wrap{max-width:820px;margin:44px auto 0;display:flex;flex-direction:column;gap:12px}.nihongo-lab-landing details.faq{background:var(--card);border:1px solid var(--border);border-radius:13px;overflow:hidden;transition:box-shadow .2s,border-color .2s}.nihongo-lab-landing details.faq[open]{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.nihongo-lab-landing details.faq summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;align-items:flex-start;gap:14px;font-family:var(--font);font-weight:700;font-size:15.5px;letter-spacing:-.015em;color:var(--ink-1);line-height:1.5}body.ja .nihongo-lab-landing details.faq summary{font-family:var(--font-round);letter-spacing:0;line-height:1.7}.nihongo-lab-landing details.faq summary::-webkit-details-marker{display:none}.nihongo-lab-landing details.faq summary .q{color:var(--teal);font-family:var(--mono);font-weight:500;flex-shrink:0;font-size:14px;margin-top:2px}.nihongo-lab-landing details.faq summary .chev{margin-left:auto;flex-shrink:0;transition:transform .25s;color:var(--ink-3);margin-top:4px}.nihongo-lab-landing details.faq[open] summary .chev{transform:rotate(180deg)}.nihongo-lab-landing details.faq .ans{padding:0 24px 22px 56px;font-size:14px;line-height:1.95;color:var(--ink-2);text-wrap:pretty}.nihongo-lab-landing details.faq .ans .tbd-inline{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--amber-h);background:var(--amber-bg);border:1px dashed var(--amber-line);border-radius:7px;padding:2px 9px;margin-left:2px}.nihongo-lab-landing .bridge{display:flex;align-items:center;gap:22px;padding:26px 30px;border-radius:18px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);flex-wrap:wrap}.nihongo-lab-landing .bridge .bic{width:46px;height:46px;border-radius:13px;background:var(--bg-2);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nihongo-lab-landing .bridge .bc{flex:1;min-width:240px}.nihongo-lab-landing .bridge h3{font-family:var(--font);font-weight:700;font-size:16px;letter-spacing:-.02em;color:var(--ink-1)}.nihongo-lab-landing .bridge p{font-size:13.5px;line-height:1.8;color:var(--ink-2);margin-top:5px;text-wrap:pretty}.nihongo-lab-landing .cta-band{background:var(--bg-ink);position:relative;overflow:hidden;padding:0}.nihongo-lab-landing .cta-band .cta-in{position:relative;z-index:1;text-align:center;padding:96px 0}.nihongo-lab-landing .cta-band .glow{position:absolute;top:-40%;left:50%;transform:translate(-50%);width:820px;height:600px;border-radius:50%;background:radial-gradient(closest-side,oklch(45% .09 298/.45),transparent 70%)}.nihongo-lab-landing .cta-band .pill{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#a7d6cd;background:#1b3c37;border:1px solid oklch(44% .055 182);padding:6px 14px;border-radius:99px}.nihongo-lab-landing .cta-band h2{font-family:var(--font);font-weight:700;font-size:clamp(1.75rem,3.8vw,2.75rem);letter-spacing:-.03em;color:#fdf8f1;margin-top:24px;line-height:1.25;text-wrap:balance;max-width:840px;margin-left:auto;margin-right:auto}body.ja .nihongo-lab-landing .cta-band h2{font-family:var(--font-round);letter-spacing:0;line-height:1.5}.nihongo-lab-landing .cta-band p{color:#c2bdb5;font-size:15.5px;line-height:1.95;margin-top:20px;max-width:560px;margin-left:auto;margin-right:auto;text-wrap:pretty}.nihongo-lab-landing .cta-band .cta-btns{display:flex;gap:13px;justify-content:center;margin-top:34px;flex-wrap:wrap}.nihongo-lab-landing .cta-band .cta-note{margin-top:22px;font-family:var(--mono);font-size:12px;color:#908b86;letter-spacing:.05em}.nihongo-lab-landing footer.ft{background:#121a19;color:#a8a49e;padding:60px 0 34px}.nihongo-lab-landing .ft-in{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.nihongo-lab-landing .ft .brand .name{color:#f6f1eb}.nihongo-lab-landing .ft .brand:hover .name{color:#fff}.nihongo-lab-landing .ft .about{font-size:13px;line-height:1.9;margin-top:18px;max-width:330px;color:#96918c}.nihongo-lab-landing .ft h4{font-family:var(--font);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#c8c3bd;margin-bottom:16px;font-weight:600}.nihongo-lab-landing .ft ul{list-style:none;display:flex;flex-direction:column;gap:11px}.nihongo-lab-landing .ft ul a{color:#a29e98;font-size:13.5px}.nihongo-lab-landing .ft ul a:hover{color:#e9e4dd}.nihongo-lab-landing .ft-bottom{margin-top:48px;padding-top:22px;border-top:1px solid oklch(32% .01 75);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:11.5px;color:#7e7a74}.nihongo-lab-landing .sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#faf6f1f0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);gap:10px}.nihongo-lab-landing .sticky-cta a{flex:1}@media(max-width:1000px){.nihongo-lab-landing .red-grid{grid-template-columns:1fr}.nihongo-lab-landing .project-path{display:grid;grid-template-columns:1fr 1fr}.nihongo-lab-landing .pp-arrow,.nihongo-lab-landing .nav-links{display:none}.nihongo-lab-landing .hamburger{display:flex;margin-left:auto}.nihongo-lab-landing .nav-cta{display:none}.nihongo-lab-landing section{padding:72px 0}.nihongo-lab-landing .hero-in,.nihongo-lab-landing .feel-in,.nihongo-lab-landing .dir-in{grid-template-columns:1fr;gap:36px}.nihongo-lab-landing .pg-grid,.nihongo-lab-landing .tbd-grid{grid-template-columns:1fr 1fr}.nihongo-lab-landing .feel-photo{margin-top:8px}.nihongo-lab-landing .ft-in{grid-template-columns:1fr 1fr}.nihongo-lab-landing .ft-in>div:first-child{grid-column:1/-1}.nihongo-lab-landing .sticky-cta{display:flex}}@media(max-width:640px){.nihongo-lab-landing .project-path{grid-template-columns:1fr}.nihongo-lab-landing .red-note{padding:24px 22px}.nihongo-lab-landing .wrap{padding:0 20px}.nihongo-lab-landing .hero{padding:56px 0 72px}.nihongo-lab-landing .why-grid,.nihongo-lab-landing .beg-cards,.nihongo-lab-landing .pg-grid,.nihongo-lab-landing .tbd-grid,.nihongo-lab-landing .ft-in{grid-template-columns:1fr}}
