:root{--cream:#fbf7f0;--cream-2:#f1ece2;--peach:#fde7cc;--mint:#ddedeb;--ink:#1e1b18;--ink-2:#5e5852;--ink-3:#6e6862;--ink-4:#9a948c;--ink-5:#c9c2b6;--orange:#f49b2e;--orange-2:#d9821a;--orange-3:#b86a0e;--orange-shadow:#c97a18;--orange-hi:#f8ab4c;--teal:#2f7f7a;--coral:#e8654a;--coral-soft:#fbe0d8;--blue:#0084fc;--app-bg:#151617;--line:#ede6da;--text-2:#3a3632;--radius-pill:999px;--shadow-sticker:5px 5px 0 var(--ink);--border-sticker:2.5px solid var(--ink);--font-display:"Zen Maru Gothic","Noto Sans JP","Hiragino Maru Gothic ProN",sans-serif;--font-body:"Noto Sans JP",-apple-system,"Hiragino Sans","Hiragino Kaku Gothic ProN",system-ui,sans-serif;--font-en:-apple-system,"SF Pro Display","Helvetica Neue","Segoe UI",system-ui,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:900;letter-spacing:-.01em}p{margin:0}svg{display:block}.d,.num{font-family:var(--font-display)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.container{width:min(1280px,100% - 40px);margin-inline:auto}@media (min-width:900px){.container{width:min(1280px,100% - 160px)}}.doodle-bg{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220' fill='none' stroke='%231E1B18' stroke-width='1.6' stroke-linecap='round' opacity='0.08'><path d='M30 40l0 14M23 47l14 0'/><circle cx='150' cy='30' r='4'/><path d='M180 120c6-8 14-8 20 0'/><path d='M60 170l6-12 6 12'/><path d='M110 90l4 0M118 90l4 0'/><circle cx='40' cy='130' r='2' fill='%231E1B18'/><path d='M200 200l0 10M195 205l10 0'/><path d='M120 190c8 4 16-4 24 0'/></svg>")}.scallop{height:24px;background-size:24px 24px;background-repeat:repeat-x}.scallop--white{background-image:radial-gradient(circle at 12px 0,transparent 12px,#ffffff 13px)}.scallop--teal{background-image:radial-gradient(circle at 12px 0,transparent 12px,var(--teal) 13px)}.sticker{background:#fff;border:2px solid var(--ink);border-radius:18px;box-shadow:var(--shadow-sticker);font-family:var(--font-display);font-weight:700}.pill{gap:8px}.btn,.pill{display:inline-flex;align-items:center;border-radius:var(--radius-pill)}.btn{justify-content:center;gap:10px;height:58px;padding:0 30px;font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--ink);position:relative;cursor:pointer;transition:transform .12s ease,translate .3s var(--ease-spring),box-shadow .2s ease,background-color .2s ease}.btn--primary{background:var(--orange);box-shadow:0 4px 0 var(--orange-shadow);overflow:hidden}.btn--primary:after{content:"";position:absolute;inset:0;pointer-events:none;translate:-110% 0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%)}.btn--outline{background:#fff;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.btn--dark{background:var(--ink);color:#fff;border-radius:16px;font-family:var(--font-body);font-weight:500;font-size:14px;padding:0 20px}.btn--sm{height:46px;padding:0 24px;font-size:15px}@media (hover:hover){.btn--primary:hover{translate:0 -3px;background:var(--orange-hi);box-shadow:0 7px 0 var(--orange-shadow)}.btn--primary:hover:after{translate:110% 0;transition:translate .7s ease}.btn--outline:hover{translate:-2px -2px;background:var(--peach);box-shadow:6px 6px 0 var(--ink)}.btn--dark:hover{translate:0 -3px;box-shadow:0 5px 0 var(--orange)}}.btn:active{transform:translateY(3px);translate:0 0}.btn--primary:active{box-shadow:0 1px 0 var(--orange-shadow)}.btn--outline:active{box-shadow:1px 1px 0 var(--ink)}.btn--dark:active{box-shadow:0 1px 0 var(--orange)}.btn{white-space:nowrap}@media (max-width:899px){.btn{height:54px;font-size:17px;width:100%}.btn--dark{width:auto;flex:1 1;padding:0 14px}}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--orange)}.eyebrow--center:after,.eyebrow:before{content:"";width:24px;height:2px;background:var(--orange)}.h2{font-size:clamp(26px,3.2vw,44px);line-height:1.3}.accent{color:var(--orange-2)}.underline{position:relative;display:inline-block}.underline>svg{position:absolute;left:-2px;bottom:-8px;width:104%;height:16px}.nowrap{white-space:nowrap}:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:6px}.sr-only{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip,.sr-only{position:absolute}.skip{left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px}.skip:focus{top:12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-spring:cubic-bezier(.34,1.56,.64,1)}@keyframes m-float{0%,to{translate:0 0}50%{translate:0 var(--float-y,-10px)}}@keyframes m-bob{0%,to{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:-1.5deg}}@keyframes m-breathe{0%,to{scale:1}50%{scale:1.03}}@keyframes m-twinkle{0%,to{scale:1;rotate:0deg;opacity:1}50%{scale:.72;rotate:25deg;opacity:.6}}@keyframes m-sway{0%,to{rotate:calc(var(--sway, 5deg) * -1)}50%{rotate:var(--sway,5deg)}}@keyframes m-nudge{0%,to{translate:0 0}50%{translate:5px 0}}@keyframes m-march{to{stroke-dashoffset:-150}}@keyframes m-pop{0%{scale:.3;opacity:0}}@keyframes m-rise{0%{opacity:0;translate:0 28px}}@keyframes m-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}svg.m-breathe,svg.m-float,svg.m-nudge,svg.m-sway,svg.m-twinkle{overflow:visible}.m-float{animation:m-float var(--dur,6s) ease-in-out var(--delay,0s) infinite}.m-bob{transform-origin:50% 100%;animation:m-bob var(--dur,5.5s) ease-in-out var(--delay,0s) infinite}.m-breathe{animation:m-breathe var(--dur,9s) ease-in-out var(--delay,0s) infinite}.m-breathe,.m-twinkle{transform-origin:50% 50%}.m-twinkle{animation:m-twinkle var(--dur,3.2s) ease-in-out var(--delay,0s) infinite}.m-sway{transform-origin:50% 50%;animation:m-sway var(--dur,4s) ease-in-out var(--delay,0s) infinite}.m-nudge{animation:m-nudge var(--dur,2.6s) ease-in-out var(--delay,0s) infinite}.m-march{animation:m-march 14s linear infinite}.m-pop-float{animation:m-pop .7s var(--ease-spring) var(--pop,0s) both,m-float var(--dur,6s) ease-in-out var(--delay,0s) infinite}.h-tilt{transition:rotate .4s var(--ease-spring)}.arrow-r{flex:none;transition:translate .3s var(--ease-spring)}.btn--nudge .arrow-r{animation:m-nudge 2.2s ease-in-out infinite}@media (hover:hover){.h-tilt:hover{rotate:var(--tilt,6deg)}a:hover .arrow-r,button:hover:not(:disabled) .arrow-r{translate:4px 0}}.underline>svg path{stroke-dasharray:1;animation:m-draw 1s var(--ease-out) .35s both}html.motion .reveal-stagger:not(.is-in)>*,html.motion .reveal:not(.is-in){opacity:0}html.motion .reveal.is-in{animation:m-rise .8s var(--ease-out) backwards}html.motion .reveal-stagger.is-in>*{animation:m-rise .7s var(--ease-out) calc(var(--i, 0) * 80ms) backwards}html.motion .reveal:not(.is-in) .underline>svg path{animation-play-state:paused}.reveal-stagger>:nth-child(2){--i:1}.reveal-stagger>:nth-child(3){--i:2}.reveal-stagger>:nth-child(4){--i:3}.reveal-stagger>:nth-child(5){--i:4}.reveal-stagger>:nth-child(6){--i:5}.reveal-stagger>:nth-child(n+7){--i:6}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}}