:root{--ink:#1e3550;--ink-2:#44607f;--muted:#6b819b;--line:#dbe7f1;--paper:#fff;--sky:#eaf7ff;--teal:#1aa39a;--green:#2ab337;--lime:#83c02d;--orange:#fc8912;--red:#f43134;--blue:#029ae8;--pink:#f0587e;--yellow:#f9c80e;--purple:#7b5cd6;--line-green:#06c755;--grad:linear-gradient(100deg, #ffa234 0%, #f6706f 55%, #ef5a8c 100%);--pixels:linear-gradient(90deg, #25a1f2 0 20%, #fd8d09 20% 40%, #72bd37 40% 60%, #f02a48 60% 80%, #f8b108 80% 100%);--panel-bg:#ffffffe6;--shadow:0 22px 60px #143c642e, 0 2px 8px #143c640f;--radius:30px;--header-h:68px;--gutter:clamp(20px, 5.5vw, 88px);--font:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", "BIZ UDPGothic", "Yu Gothic", system-ui, sans-serif;--font-en:"Fredoka", "Zen Maru Gothic", system-ui, sans-serif;--font-hand:"Yusei Magic", "Zen Maru Gothic", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h)}body{font-family:var(--font);letter-spacing:.02em;color:var(--ink);-webkit-font-smoothing:antialiased;background:linear-gradient(#3fa7f5 0%,#9fd9fb 46%,#d9f3ff 70%,#57c9e6 100%) fixed;margin:0;font-size:16px;font-weight:500;line-height:1.85;overflow-x:hidden}html.dialog-open,html.dialog-open body{overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}button{font:inherit;color:inherit}h1,h2,h3{letter-spacing:.03em;margin:0;font-weight:900;line-height:1.32}p{margin:0}svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1em;height:1em}.sprite{width:0;height:0;position:absolute;overflow:hidden}.sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.sp{display:none}.skip{z-index:100;background:var(--ink);color:#fff;border-radius:12px;padding:10px 16px;text-decoration:none;transition:top .2s;position:fixed;top:-60px;left:12px}.skip:focus{top:12px}:focus-visible{outline-offset:3px;outline:3px solid #ffb703}.c-blue{color:var(--blue)}.c-orange{color:var(--orange)}em{font-style:normal}.site-header{z-index:50;height:var(--header-h);align-items:center;gap:24px;padding:0 clamp(16px,3vw,40px);transition:background .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;display:flex;position:fixed;inset:0 0 auto}html.scrolled .site-header{-webkit-backdrop-filter:blur(14px)saturate(1.3);background:#ffffffdb;box-shadow:0 6px 24px #143c641a}.brand{align-items:center;gap:8px;margin-right:auto;text-decoration:none;display:flex}.brand-mark{stroke:none;width:22px;height:44px}.brand-text{line-height:1;display:grid}.brand-text small{letter-spacing:.1em;margin-bottom:3px;font-size:10px;font-weight:700}.wordmark{font-family:var(--font-en);letter-spacing:.02em;white-space:nowrap;font-size:28px;font-weight:700;line-height:1}.wordmark b{font-weight:700}.wordmark .l1{color:#2ab337}.wordmark .l2{color:#fc8912}.wordmark .l3{color:#f43134}.wordmark .l4{color:#029ae8}.wordmark .l5{color:#2ab538}.site-nav{gap:clamp(12px,1.6vw,26px);font-size:14px;font-weight:700;display:flex}.site-nav a{padding:6px 2px;text-decoration:none;position:relative}.site-nav a:after{content:"";background:var(--pixels);transform-origin:0;border-radius:3px;height:3px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a.active:after{transform:scaleX(1)}.menu-button{cursor:pointer;background:#ffffffeb;border:0;border-radius:14px;place-items:center;width:44px;height:44px;font-size:22px;display:none;box-shadow:0 4px 14px #143c6424}.btn{--h:54px;min-height:var(--h);letter-spacing:.05em;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 26px;font-size:16px;font-weight:900;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn svg{font-size:18px}.btn:hover{transform:translateY(-2px)}.btn--primary{color:#fff;background:var(--grad);box-shadow:0 10px 24px #f2626e59,inset 0 -3px #00000014}.btn--primary:hover{box-shadow:0 14px 30px #f2626e73,inset 0 -3px #00000014}.btn--line{color:#fff;background:var(--line-green);box-shadow:0 10px 22px #06c7554d,inset 0 -3px #00000014}.btn--ghost{color:var(--ink);box-shadow:inset 0 0 0 2px var(--line), 0 6px 16px #143c6414;background:#fff}.btn--small{--h:42px;padding:0 18px;font-size:14px}.btn--big{--h:64px;padding:0 34px;font-size:18px}.cta-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.text-link{color:var(--blue);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.icon-button{cursor:pointer;background:#fff;border:0;border-radius:14px;place-items:center;width:44px;height:44px;font-size:22px;display:grid;box-shadow:0 4px 14px #143c6424}.panel{border-radius:var(--radius);background:var(--panel-bg);-webkit-backdrop-filter:blur(16px)saturate(1.25);width:min(580px,44vw);box-shadow:var(--shadow);padding:38px 40px 36px;position:relative}.panel:before{content:"";background:var(--pixels);border-radius:0 0 4px 4px;width:90px;height:7px;position:absolute;top:0;left:40px}.kicker{color:var(--ink-2);letter-spacing:.08em;align-items:center;gap:10px;margin-bottom:10px;font-size:14px;font-weight:700;display:flex}.kicker .num{font-family:var(--font-en);color:#fff;background:var(--ink);letter-spacing:.04em;border-radius:10px;padding:6px 9px 5px;font-size:24px;font-weight:700;line-height:1}.hl{color:var(--pink);display:inline-block;position:relative}.hl:after{content:"";z-index:-1;background:#f9c80e73;border-radius:6px;height:.32em;position:absolute;bottom:.08em;left:-4px;right:-4px}.js .reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(36px)}.js .reveal.visible{opacity:1;transform:none}.site-footer{z-index:3;color:#e6f2ff;background:#0f3557;position:relative}.site-footer:before{content:"";background:var(--pixels);background-size:300px 100%;height:10px;display:block}.footer-inner{gap:18px;max-width:1080px;margin:0 auto;padding:44px 24px 32px;display:grid}.footer-brand{align-items:center;gap:12px;display:flex}.footer-brand p{line-height:1.1;display:grid}.footer-brand small{font-size:12px;font-weight:700}.footer-brand .wordmark{font-size:34px}.footer-brand .brand-mark{width:26px;height:52px}.footer-links{flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:14px;font-weight:700;list-style:none;display:flex}.footer-links a{text-underline-offset:4px}.footer-place{font-size:13px}.footer-note{color:#a9c2dc;font-size:11.5px;line-height:1.8}.copy{color:#a9c2dc;font-size:12px}dialog{color:var(--ink);border:0;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a192db8}.viewer{background:#fff;border-radius:24px;width:min(1180px,94vw);max-height:92vh;overflow:hidden;box-shadow:0 30px 80px #00000059}.viewer[open]{grid-template-rows:auto 1fr auto;display:grid}.viewer-head{align-items:center;gap:14px;padding:14px 16px 10px 24px;display:flex}.viewer-head h2{margin-right:auto;font-size:18px}.viewer-count{font-family:var(--font-en);color:var(--muted);font-weight:600}.viewer-track{scroll-snap-type:x mandatory;scrollbar-width:none;outline:none;display:flex;overflow-x:auto}.viewer-track::-webkit-scrollbar{display:none}.viewer-track figure{scroll-snap-align:center;flex:0 0 100%;align-content:center;justify-items:center;gap:10px;margin:0;padding:0 24px;display:grid}.viewer-track img{background:#f2f6fa;border-radius:12px;width:auto;max-width:100%;max-height:calc(92vh - 170px);box-shadow:0 8px 24px #143c642e}.viewer-track figcaption{color:var(--ink-2);text-align:center;font-size:14px}.viewer-nav{justify-content:center;gap:12px;padding:12px 0 18px;display:flex}.viewer-nav button:disabled{opacity:.35;cursor:default}.menu{background:#fff;width:min(360px,86vw);height:100%;max-height:none;margin:0;padding:72px 24px 28px;position:fixed;inset:0 0 0 auto;box-shadow:-10px 0 40px #0003}.menu[open]{align-content:start;gap:12px;animation:.35s cubic-bezier(.2,.7,.2,1) slide;display:grid}@keyframes slide{0%{opacity:0;transform:translate(40px)}}.menu-close{position:absolute;top:14px;right:14px}.menu nav{margin-bottom:12px;display:grid}.menu nav a{border-bottom:1px solid var(--line);padding:13px 4px;font-weight:700;text-decoration:none}.burst{letter-spacing:.04em;background:linear-gradient(90deg,#2ab337 0 26%,#fc8912 26% 52%,#f43134 52% 76%,#029ae8 76%);color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:14px;font-size:clamp(30px,3vw,42px);font-weight:900;line-height:1.3}.cta-cards{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;display:grid}.cta-card{text-align:center;color:#fff;border-radius:20px;justify-items:center;gap:4px;padding:16px 8px 14px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 10px 22px #143c6429}.cta-card:hover{transform:translateY(-3px)}.cta-card svg{font-size:28px}.cta-card b{font-size:15px;line-height:1.35}.cta-card small{opacity:.95;font-size:11.5px;font-weight:700}.cta-card--web{background:var(--grad)}.cta-card--line{background:var(--line-green)}.cta-card--insta{background:linear-gradient(135deg,#8a5cf6,#e1306c 60%,#f9a23c)}.letters{gap:12px;margin:20px 0;display:grid}.letters-empty{color:var(--muted);background:#f4f9fd;border-radius:16px;padding:14px 16px;font-size:14px}.letter{color:inherit;box-shadow:0 6px 18px #143c6414, inset 0 0 0 2px var(--line);background:#fff;border-radius:20px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.letter:hover{transform:translateY(-3px);box-shadow:0 14px 28px #143c6424,inset 0 0 0 2px #cfe2f1}.letter-cover{aspect-ratio:16/10;background:linear-gradient(135deg,#dff3ff,#fff3d6);display:block;overflow:hidden}.letter-cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.letter:hover .letter-cover img{transform:scale(1.04)}.letter-cover img.letter-cover-mark{object-fit:contain;padding:14% 0}.letter-body{align-content:start;gap:6px;padding:14px 16px 16px;display:grid}.letter-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:12.5px;font-weight:700;display:flex}.letter-meta time{font-family:var(--font-en);letter-spacing:.05em;font-weight:600}.letter-author{align-items:center;gap:6px;display:inline-flex}.letter-author img{object-fit:cover;border-radius:50%;width:22px;height:22px;box-shadow:0 0 0 2px #fff,0 2px 6px #143c6433}.letter-title{font-size:16px;font-weight:900;line-height:1.5}.letter-excerpt{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.7;display:-webkit-box;overflow:hidden}.letters--rows .letter{grid-template-columns:116px 1fr}.letters--rows .letter-cover{aspect-ratio:auto;min-height:92px}.letters--rows .letter-body{gap:3px;padding:10px 14px 12px}.letters--rows .letter-title{font-size:15px}.letters--rows .letter-excerpt{-webkit-line-clamp:1}.letters--grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.more-link{color:var(--blue);align-items:center;gap:4px;margin-top:14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.more-link:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:1100px){.site-nav{display:none}.menu-button{display:grid}}@media (max-width:760px){:root{--header-h:60px;--radius:24px}body{font-size:16px}.sp{display:inline}.site-header{gap:10px}.brand-text small{font-size:9px}.wordmark{font-size:24px}.header-cta{--h:40px;padding:0 14px;font-size:13px}.cta-cards{grid-template-columns:1fr}.cta-card{text-align:left;grid-template-columns:auto 1fr;justify-items:start;column-gap:14px;padding:14px 18px}.cta-card svg{grid-row:span 2;align-self:center}.viewer{border-radius:0;width:100vw;max-width:100vw;height:100%;max-height:100vh}.viewer-track figure{padding:0 12px}.viewer-track img{max-height:calc(100vh - 170px)}}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transition:none;transform:none}}
