:root{--void:#f6f6f3;--surface:#fff;--surface-2:#eeeeea;--red:#e15e63;--cyan:#0a9db0;--beam:#3ef2ff;--green:#5cffa1;--text:#15171c;--text-2:#5c6370;--line:#15171c1f;--font-display:"Space Grotesk", "Zen Kaku Gothic New", sans-serif;--font-jp:"Zen Kaku Gothic New", "Noto Sans JP", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--t-micro:.12s;--t-base:.4s;--t-reveal:1s;--ease-base:cubic-bezier(.2, .8, .2, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--gutter:clamp(16px, 4vw, 56px);--mx:50vw;--my:50vh}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--void);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--void);color:var(--text);font-family:var(--font-jp);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.8;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}::selection{background:var(--red);color:#fff}:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:4px}.has-custom-cursor,.has-custom-cursor *{cursor:none!important}.bg-grid{z-index:0;pointer-events:none;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.35;background-size:64px 64px;position:fixed;inset:0}.bg-grid.lit{opacity:1;-webkit-mask-image:radial-gradient(260px circle at var(--mx) var(--my), #000 0%, transparent 70%);-webkit-mask-image:radial-gradient(260px circle at var(--mx) var(--my), #000 0%, transparent 70%);mask-image:radial-gradient(260px circle at var(--mx) var(--my), #000 0%, transparent 70%);background-image:linear-gradient(#3ef2ff59 1px,#0000 1px),linear-gradient(90deg,#3ef2ff59 1px,#0000 1px)}.bg-noise{z-index:1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:1.2s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.scanlines{z-index:2;pointer-events:none;opacity:.07;background:repeating-linear-gradient(#fff 0 1px,#0000 1px 3px);position:fixed;inset:0}main{z-index:3;position:relative}.cursor{z-index:9999;pointer-events:none;mix-blend-mode:screen;position:fixed;top:0;left:0}.cursor__dot{background:var(--cyan);width:6px;height:6px;box-shadow:0 0 12px var(--cyan);border-radius:50%;margin:-3px 0 0 -3px;position:absolute}.cursor__ring{width:36px;height:36px;transition:width var(--t-base) var(--ease-base), height var(--t-base) var(--ease-base), margin var(--t-base) var(--ease-base), border-radius var(--t-base) var(--ease-base), border-color var(--t-base);border:1px solid #3ef2ff99;border-radius:50%;margin:-18px 0 0 -18px;position:absolute}.cursor.is-link .cursor__ring{border-color:var(--red);border-radius:4px;width:56px;height:56px;margin:-28px 0 0 -28px}.cursor.is-link .cursor__ring:before,.cursor.is-link .cursor__ring:after{content:"";background:var(--red);position:absolute}.cursor.is-link .cursor__ring:before{width:1px;top:-6px;bottom:-6px;left:50%}.cursor.is-link .cursor__ring:after{height:1px;top:50%;left:-6px;right:-6px}.cursor__label{white-space:nowrap;font:10px/1 var(--font-mono);color:var(--cyan);letter-spacing:.08em;position:absolute;top:18px;left:22px}.ripple{z-index:9998;pointer-events:none;border:1px solid var(--cyan);width:10px;height:10px;animation:ripple .9s var(--ease-expo) forwards;border-radius:50%;margin:-5px 0 0 -5px;position:fixed}@keyframes ripple{to{opacity:0;transform:scale(18)}}.header{z-index:50;padding:20px var(--gutter);mix-blend-mode:difference;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.logo{font:700 22px/1 var(--font-display);letter-spacing:.14em;align-items:center;gap:10px;display:flex}.logo__mark{background:var(--red);width:14px;height:14px;box-shadow:0 0 14px var(--red);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.nav{font:500 13px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;gap:28px;display:flex}.nav a{padding:6px 0;position:relative}.nav a:after{content:"";background:var(--cyan);height:1px;transition:right var(--t-base) var(--ease-base);position:absolute;bottom:0;left:0;right:100%}.nav a:hover:after{right:0}.menu-btn{font:500 12px/1 var(--font-mono);letter-spacing:.12em;padding:10px 0;display:none}.menu-overlay{z-index:49;padding:0 var(--gutter);clip-path:inset(0 0 100%);transition:clip-path .7s var(--ease-expo);background:#06070af5;flex-direction:column;justify-content:center;gap:12px;display:flex;position:fixed;inset:0}.menu-overlay.open{clip-path:inset(0)}.menu-overlay a{font:700 clamp(40px, 11vw, 72px)/1.1 var(--font-display);letter-spacing:.02em}.menu-overlay a span{font:12px var(--font-mono);color:var(--text-2);vertical-align:middle;margin-right:16px}.hud{left:var(--gutter);z-index:40;pointer-events:none;font:10px/1.7 var(--font-mono);color:var(--text-2);letter-spacing:.1em;position:fixed;bottom:20px}.hud b{color:var(--cyan);font-weight:500}.controls{right:var(--gutter);z-index:40;gap:8px;display:flex;position:fixed;bottom:20px}.ctrl{font:10px/1 var(--font-mono);letter-spacing:.12em;border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-2);transition:border-color var(--t-micro), color var(--t-micro);background:#10131ab3;border-radius:999px;padding:9px 12px}.ctrl:hover{border-color:var(--cyan);color:var(--text)}.ctrl[aria-pressed=true]{color:var(--cyan);border-color:#3ef2ff80}.opening{z-index:10000;background:#000;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.opening__bars{display:flex;position:absolute;inset:0}.opening__bars i{flex:1}.opening__frame{aspect-ratio:16/9;border:1px solid var(--cyan);place-items:center;width:min(72vw,820px);display:grid;position:relative;box-shadow:0 0 40px #3ef2ff40,inset 0 0 60px #3ef2ff14}.opening__frame:before,.opening__frame:after{content:"";background:#3ef2ff66;position:absolute}.opening__frame:before{width:1px;top:0;bottom:0;left:50%}.opening__frame:after{height:1px;top:50%;left:0;right:0}.opening__logo{z-index:1;color:#fff;line-height:0;position:relative}.opening__logo-svg{filter:drop-shadow(0 0 18px #e15e63cc)drop-shadow(0 0 4px #e15e6399);width:clamp(200px,44vw,520px);height:auto;display:block}.opening__meta{font:11px var(--font-mono);color:var(--cyan);letter-spacing:.1em;justify-content:space-between;display:flex;position:absolute;bottom:20px;left:24px;right:24px}.opening__skip{font:11px var(--font-mono);color:var(--text-2);letter-spacing:.1em;position:absolute;top:20px;right:24px}.section{padding:clamp(96px, 16vh, 180px) var(--gutter);position:relative}.sec-head{align-items:baseline;gap:20px;margin-bottom:clamp(40px,7vh,72px);display:flex}.sec-no{font:12px var(--font-mono);color:var(--red);letter-spacing:.14em}.sec-title{font:700 clamp(40px, 7vw, 96px)/1 var(--font-display);letter-spacing:-.01em}.sec-sub{font:12px var(--font-mono);color:var(--text-2);letter-spacing:.14em}.mono{font-family:var(--font-mono)}[data-reveal]{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(24px)}[data-reveal].is-in{opacity:1;clip-path:inset(0);transition:opacity .6s var(--ease-expo), transform var(--t-reveal) var(--ease-expo), clip-path var(--t-reveal) var(--ease-expo);transform:none}.hero{height:100svh;min-height:620px;position:relative;overflow:hidden}.hero__canvas{position:absolute;inset:0}.hero__copy{left:var(--gutter);z-index:2;pointer-events:none;font:700 clamp(22px, 3.2vw, 40px)/1.5 var(--font-jp);white-space:pre-line;letter-spacing:.04em;text-shadow:0 0 24px #06070ae6;position:absolute;bottom:clamp(88px,14vh,140px)}.hero__meta{right:var(--gutter);z-index:2;text-align:right;font:11px/1.9 var(--font-mono);color:var(--text-2);letter-spacing:.12em;pointer-events:none;position:absolute;bottom:clamp(88px,14vh,140px)}.hero__meta b{color:var(--cyan);font-weight:500}.hero__hint{z-index:2;font:11px var(--font-mono);color:var(--text-2);letter-spacing:.2em;pointer-events:none;animation:2.4s ease-in-out infinite blink;position:absolute;top:92px;left:50%;transform:translate(-50%)}@keyframes blink{50%{opacity:.35}}.hero__fallback{color:var(--red);place-items:center;display:grid;position:absolute;inset:0}.hero__fallback-logo{width:min(72vw,820px);height:auto;margin-top:-12vh;display:block}.mission{grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.mission__lead{font:700 clamp(26px, 3.4vw, 44px)/1.45 var(--font-jp);margin-bottom:24px}.mission__body{color:var(--text-2);max-width:36em}.mixer{aspect-ratio:1;border:1px solid var(--line);touch-action:none;background:radial-gradient(circle,#ffffff08,#0000 70%);border-radius:12px;justify-self:center;width:100%;max-width:560px;position:relative;overflow:hidden}.mixer__orb{aspect-ratio:1;mix-blend-mode:screen;-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab;width:46%;font:700 clamp(14px, 1.6vw, 20px)/1 var(--font-display);letter-spacing:.1em;border-radius:50%;place-items:center;display:grid;position:absolute}.mixer__orb:active{cursor:grabbing}.mixer__orb--fun{background:radial-gradient(circle,#e15e63f2,#e15e6340 62%,#0000 72%)}.mixer__orb--tech{background:radial-gradient(circle,#3ef2ffe6,#3ef2ff38 62%,#0000 72%)}.mixer__result{text-align:center;pointer-events:none;font:700 clamp(16px, 2vw, 24px)/1.4 var(--font-jp);letter-spacing:.1em;transition:opacity var(--t-base), filter var(--t-base);position:absolute;bottom:20px;left:0;right:0}.mixer__hint{font:10px var(--font-mono);color:var(--text-2);letter-spacing:.12em;pointer-events:none;position:absolute;top:14px;left:16px}.mixer__meter{font:10px var(--font-mono);color:var(--cyan);letter-spacing:.12em;pointer-events:none;position:absolute;top:14px;right:16px}.services{perspective:1200px;grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.svc{background:var(--surface);border:1px solid var(--line);min-height:380px;transform-style:preserve-3d;transition:transform var(--t-base) var(--ease-base), border-color var(--t-base);--lx:50%;--ly:50%;border-radius:12px;flex-direction:column;padding:28px 24px;display:flex;position:relative;overflow:hidden}.svc:before{content:"";pointer-events:none;opacity:0;transition:opacity var(--t-base);background:radial-gradient(320px circle at var(--lx) var(--ly), #3ef2ff38, transparent 60%), repeating-linear-gradient(90deg, #3ef2ff14 0 1px, transparent 1px 22px), repeating-linear-gradient(0deg, #3ef2ff14 0 1px, transparent 1px 22px);-webkit-mask-image:radial-gradient(260px circle at var(--lx) var(--ly), #000, transparent 75%);-webkit-mask-image:radial-gradient(260px circle at var(--lx) var(--ly), #000, transparent 75%);mask-image:radial-gradient(260px circle at var(--lx) var(--ly), #000, transparent 75%);position:absolute;inset:0}.svc:hover{border-color:#3ef2ff80}.svc:hover:before{opacity:1}.svc__no{font:12px var(--font-mono);color:var(--red);letter-spacing:.14em;transform:translateZ(30px)}.svc__en{font:700 24px/1.15 var(--font-display);margin-top:auto;transform:translateZ(50px)}.svc__title{margin-top:10px;font-size:15px;font-weight:700;transform:translateZ(40px)}.svc__body{color:var(--text-2);margin-top:12px;font-size:13px;line-height:1.8;transform:translateZ(20px)}.svc__icon{opacity:.9;width:64px;height:64px;position:absolute;top:22px;right:20px;transform:translateZ(60px)}.works-head{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.works-track{padding:8px var(--gutter) 40px;margin:0 calc(var(--gutter) * -1);scrollbar-width:none;cursor:grab;perspective:1400px;-webkit-user-select:none;user-select:none;gap:24px;display:flex;overflow-x:auto}.works-track::-webkit-scrollbar{display:none}.works-track.dragging{cursor:grabbing}.work{flex:0 0 clamp(260px,32vw,460px)}.work__thumb{aspect-ratio:16/10;border:1px solid var(--line);transform-origin:0;transition:transform .7s var(--ease-expo), box-shadow .7s var(--ease-expo);border-radius:10px;position:relative;overflow:hidden;transform:rotateY(-14deg)skewY(2deg)scale(.96)}.work:hover .work__thumb{box-shadow:0 30px 80px -20px hsla(var(--h), 90%, 60%, .5);transform:none}.work__thumb .art{position:absolute;inset:0}.work__thumb .scan{pointer-events:none;background:linear-gradient(#0000,#3ef2ff59,#0000);height:30%;position:absolute;top:-30%;left:0;right:0}.work:hover .work__thumb .scan{animation:scan 1.1s var(--ease-base)}@keyframes scan{to{top:100%}}.work__tc{font:10px var(--font-mono);letter-spacing:.1em;color:#ffffffbf;position:absolute;top:10px;left:12px}.work__meta{font:11px var(--font-mono);color:var(--text-2);letter-spacing:.1em;justify-content:space-between;margin-top:16px;display:flex}.work__title{margin-top:6px;font-size:17px;font-weight:700}.link-arrow{font:500 13px var(--font-mono);letter-spacing:.12em;border-bottom:1px solid var(--line);white-space:nowrap;align-items:center;gap:10px;padding-bottom:6px;display:inline-flex}.recruit{border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.recruit__lead{font:700 clamp(24px, 3vw, 40px)/1.5 var(--font-jp);white-space:pre-line;max-width:18em}.recruit__jobs{grid-template-columns:repeat(2,minmax(0,360px));gap:16px;margin-top:48px;display:grid}.job{border:1px solid var(--line);background:#10131a99;border-radius:10px;padding:24px;position:relative;overflow:hidden}.job__label{font-size:18px;font-weight:700}.job__tools{font:12px var(--font-mono);color:var(--text-2);letter-spacing:.06em;transition:color var(--t-base);margin-top:6px}.job:hover .job__tools{color:var(--cyan)}.job__orbit{width:46px;height:46px;transition:transform 1.2s var(--ease-expo);border:1px dashed #3ef2ff66;border-radius:50%;margin-top:-23px;position:absolute;top:50%;right:18px}.job__orbit:after{content:"";background:var(--red);width:7px;height:7px;box-shadow:0 0 10px var(--red);border-radius:50%;margin-left:-3.5px;position:absolute;top:-4px;left:50%}.job:hover .job__orbit{transform:rotate(360deg)}.follow-word{pointer-events:none;z-index:1;font:700 clamp(48px, 9vw, 140px)/1 var(--font-display);letter-spacing:-.02em;white-space:nowrap;color:#0000;-webkit-text-stroke:1px #e9ecf238;position:absolute;top:0;left:0}.recruit__inner{z-index:2;position:relative}.cta{text-align:center;padding-top:clamp(120px,20vh,220px);padding-bottom:clamp(120px,20vh,220px)}.cta__title{font:700 clamp(56px, 11vw, 168px)/.95 var(--font-display);letter-spacing:-.03em}.cta__sub{color:var(--text-2);margin-top:20px}.magnet{aspect-ratio:1;background:var(--red);color:#fff;width:clamp(150px,16vw,200px);font:700 15px/1.3 var(--font-jp);letter-spacing:.08em;transition:box-shadow var(--t-base);border-radius:50%;place-items:center;margin-top:48px;display:inline-grid;position:relative;box-shadow:0 0 #e15e6380,0 0 60px #e15e6359}.magnet:hover{box-shadow:0 0 0 14px #e15e6326,0 0 90px #e15e6399}.magnet__inner{pointer-events:none}.footer{z-index:3;padding:64px var(--gutter) 96px;border-top:1px solid var(--line);color:var(--text-2);grid-template-columns:1.2fr 2fr;gap:40px;font-size:13px;display:grid;position:relative}.footer__offices{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.footer__offices b{font:500 11px var(--font-mono);color:var(--cyan);letter-spacing:.14em;margin-bottom:6px;display:block}.footer__links{font:11px var(--font-mono);letter-spacing:.1em;gap:20px;margin-top:16px;display:flex}.footer__copy{font:11px var(--font-mono);letter-spacing:.1em;margin-top:16px}@media (max-width:1024px){.services{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.nav{display:none}.menu-btn{display:block}.mission,.services{grid-template-columns:1fr}.svc{min-height:300px}.recruit__jobs,.footer,.footer__offices{grid-template-columns:1fr}.hud,.hero__meta{display:none}.works-head{flex-direction:column;align-items:flex-start}.work__thumb{transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation:none!important}[data-reveal]{clip-path:none;transform:none}.bg-noise{display:none}}.services>div{display:flex}.services>div>.svc{flex:1}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.logo__svg{color:#fff;width:auto;height:22px;display:block}.footer__logo{width:auto;height:26px;color:var(--text)}.mission__lead,.recruit__lead{white-space:pre-line}.projected{--px:50%;--py:50%;border-radius:12px;position:relative;overflow:hidden}.projected img{object-fit:cover;filter:brightness(.62)saturate(.85);width:100%;height:100%;transition:filter .6s var(--ease-base);position:absolute;inset:0}.projected__light{pointer-events:none;mix-blend-mode:screen;opacity:0;background:radial-gradient(240px circle at var(--px) var(--py), #ffffff59, #3ef2ff1f 45%, transparent 70%);transition:opacity .4s;position:absolute;inset:0}.projected:hover .projected__light{opacity:1}.projected__frame{pointer-events:none;border:1px solid var(--line);border-radius:inherit;position:absolute;inset:0}.projected.is-in:after{content:"";pointer-events:none;height:40%;animation:scan 1.6s var(--ease-base) .2s;background:linear-gradient(#0000,#3ef2ff66,#0000);position:absolute;top:-40%;left:0;right:0}.projected--cutout{border-radius:0}.projected--cutout img{object-fit:contain}.projected--cutout .projected__frame{display:none}.svc-intro{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,96px);margin-bottom:clamp(56px,9vh,96px);display:grid}.svc{min-height:520px;padding:0}.svc__media{aspect-ratio:656/370;border-bottom:1px solid var(--line);position:relative;overflow:hidden;transform:translateZ(30px)}.svc__media img{object-fit:cover;opacity:0;filter:brightness(.7);clip-path:inset(0 0 100%);width:100%;height:100%;transition:opacity .5s, transform .9s var(--ease-expo), clip-path .7s var(--ease-expo), filter .4s;position:absolute;inset:0;transform:scale(1.06)}.svc__media img.on{opacity:1;clip-path:inset(0);transform:none}.svc:hover .svc__media img.on{filter:brightness()}.svc__body-wrap{flex-direction:column;flex:1;padding:22px 22px 26px;display:flex;transform:translateZ(40px)}.svc__en{margin-top:10px}.svc__tabs{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.svc__tab{font:11px/1 var(--font-mono);letter-spacing:.06em;border:1px solid var(--line);color:var(--text-2);transition:all var(--t-micro);border-radius:999px;padding:7px 10px}.svc__tab[aria-selected=true]{color:var(--void);background:var(--cyan);border-color:var(--cyan)}.svc__body{animation:fadeUp .5s var(--ease-expo)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{font:12px/1 var(--font-mono);letter-spacing:.1em;border:1px solid var(--line);color:var(--text-2);transition:all var(--t-micro);border-radius:999px;padding:10px 16px}.chip:hover{color:var(--text);border-color:var(--cyan)}.chip[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.works-track{margin-top:48px}.work{text-align:left;display:block}.work__thumb img{object-fit:cover;filter:brightness(.75);pointer-events:none;width:100%;height:100%;transition:filter .6s;position:absolute;inset:0}.work:hover .work__thumb img,.work:focus-visible .work__thumb img{filter:brightness()}.work:hover .work__thumb{box-shadow:0 30px 80px -24px #e15e6373}.work--in{animation:workIn .8s var(--ease-expo) both}@keyframes workIn{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(30px)rotateX(20deg)}to{opacity:1;clip-path:inset(0);transform:none}}.works-note{color:var(--text-2);letter-spacing:.04em;font-size:12px}.works-note a{color:var(--cyan);border-bottom:1px solid}.modal{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:var(--gutter);background:#06070ae0;place-items:center;animation:.3s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal__panel{background:var(--surface);width:min(1100px,100%);max-height:90vh;animation:panelIn .7s var(--ease-expo);border:1px solid #3ef2ff59;border-radius:14px;grid-template-columns:1.3fr 1fr;gap:32px;padding:24px;display:grid;position:relative;overflow:auto}@keyframes panelIn{0%{opacity:0;clip-path:inset(50% 0);transform:perspective(900px)rotateX(24deg)scale(.9)}to{opacity:1;clip-path:inset(0);transform:none}}.modal__text{flex-direction:column;gap:16px;padding:16px 8px 8px 0;display:flex}.modal__title{font:700 clamp(26px, 3vw, 40px)/1.15 var(--font-display)}.modal__close{font:11px var(--font-mono);letter-spacing:.12em;color:var(--text-2);padding:6px;position:absolute;top:14px;right:16px}.modal__close:hover{color:var(--cyan)}.recruit__grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,80px);display:grid}.recruit__lead{line-height:1.75}.blank{vertical-align:-.1em;margin:0 .25em;display:inline-block;position:relative}.blank input{width:5.5em;font:inherit;color:#0000;caret-color:var(--cyan);border:0;border-bottom:2px solid var(--cyan);text-align:center;background:0 0;outline:none;padding:0 .1em;box-shadow:0 6px 18px -8px #3ef2ffcc}.blank input::placeholder{color:#0000}.blank input:focus{border-bottom-color:var(--red)}.blank__echo{pointer-events:none;white-space:nowrap;color:#fff;text-shadow:0 0 18px #3ef2ffe6,2px 0 #e15e63b3,-2px 0 #3ef2ffb3;place-items:center;display:grid;position:absolute;inset:0}.blank__hint{color:var(--text-2);letter-spacing:.08em;margin-top:10px;font-size:11px}.skill{min-width:6.5em;color:var(--red);text-shadow:0 0 20px #e15e638c;display:inline-block}.job__count{font:12px var(--font-mono);color:var(--red);margin-left:10px}.flow{counter-reset:s;grid-template-columns:repeat(6,1fr);gap:0;margin-top:56px;list-style:none;display:grid}.flow li{border-top:1px solid var(--line);padding:18px 12px 0 0;font-size:14px;font-weight:700;position:relative}.flow li span{color:var(--cyan);letter-spacing:.14em;margin-bottom:4px;font-size:10px;font-weight:400;display:block}.flow li:before{content:"";z-index:1;background:var(--red);width:9px;height:9px;box-shadow:0 0 12px var(--red);border-radius:50%;position:absolute;top:-5px;left:0}.flow.is-in li:after{content:"";background:var(--cyan);width:0;height:1px;animation:line .9s var(--ease-expo) forwards;animation-delay:inherit;position:absolute;top:-1px;left:0}@keyframes line{to{width:100%}}.flow__note{color:var(--text-2);margin-top:18px;font-size:12px}.detail{border:1px solid var(--line);background:#10131a99;border-radius:10px;margin-top:40px}.detail summary{cursor:pointer;justify-content:space-between;padding:20px 24px;font-weight:700;list-style:none;display:flex}.detail summary::-webkit-details-marker{display:none}.detail summary span{font-family:var(--font-mono);color:var(--cyan);transition:transform var(--t-base)}.detail[open] summary span{transform:rotate(45deg)}.detail dl{padding:0 24px 8px}.detail dl>div{border-top:1px solid var(--line);grid-template-columns:9em 1fr;gap:16px;padding:14px 0;font-size:14px;display:grid}.detail dt{color:var(--text-2)}.detail .link-arrow{margin:8px 24px 24px}.letters{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.letter{text-align:left;border:1px solid var(--line);background:var(--surface);min-height:clamp(160px,20vw,260px);transition:border-color var(--t-base), background var(--t-base), transform var(--t-base) var(--ease-base);border-radius:12px;flex-direction:column;justify-content:flex-end;padding:18px 16px 22px;display:flex;position:relative;overflow:hidden}.letter__l{font:700 clamp(64px, 10vw, 160px)/.85 var(--font-display);color:#0000;-webkit-text-stroke:1.5px #e9ecf28c;transition:color var(--t-base), text-shadow var(--t-base)}.letter__rest{font:500 clamp(13px, 1.3vw, 18px)/1.2 var(--font-display);color:var(--text-2);letter-spacing:.04em;margin-top:10px}.letter.on{border-color:var(--red);background:linear-gradient(180deg, #e15e6324, var(--surface));transform:translateY(-6px)}.letter.on .letter__l{color:var(--red);-webkit-text-stroke-color:var(--red);text-shadow:0 0 40px #e15e6399}.letter.on .letter__rest{color:var(--text)}.letters[data-reveal],.flow[data-reveal]{clip-path:inset(-48px 100% -48px -48px)}.letters[data-reveal].is-in,.flow[data-reveal].is-in{clip-path:inset(-48px)}.about__body{max-width:46em;color:var(--text-2);white-space:pre-line;margin-top:40px}.ceo{grid-template-columns:minmax(0,420px) 1fr;align-items:start;gap:clamp(32px,5vw,80px);margin-top:clamp(72px,12vh,120px);display:grid}.ceo__text p{margin-top:16px}.ceo__text p:first-of-type{margin-top:20px;font-size:18px;font-weight:700}.ceo__name{font-size:18px;font-weight:700;margin-top:28px!important}.ceo__name .mono{color:var(--cyan);letter-spacing:.14em;margin-right:12px;font-size:11px}.ceo__profile{color:var(--text-2);font-size:13px}.company__table>div{border-top:1px solid var(--line);grid-template-columns:10em 1fr;gap:16px;padding:16px 0;display:grid}.company__table dt{color:var(--text-2)}.company__table a{color:var(--cyan)}.offices{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;display:grid}.office{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:24px;font-size:14px;position:relative}.office b{color:var(--cyan);letter-spacing:.14em;margin-bottom:12px;font-size:11px;display:block}.office__tel{color:var(--text-2);margin:12px 0 16px;font-size:12px}.office__ping{background:var(--red);border-radius:50%;width:8px;height:8px;position:absolute;top:24px;right:22px}.office__ping:after{content:"";border:1px solid var(--red);border-radius:50%;animation:2s ease-out infinite ping;position:absolute;inset:0}@keyframes ping{to{opacity:0;transform:scale(4)}}@media (max-width:1024px){.letters{grid-template-columns:repeat(3,1fr)}.flow{grid-template-columns:repeat(3,1fr);row-gap:28px}}@media (max-width:760px){.svc-intro,.recruit__grid,.ceo,.modal__panel{grid-template-columns:1fr}.modal__panel{gap:20px;padding-top:48px}.modal__close{padding:8px;top:10px;right:12px}.offices{grid-template-columns:1fr}.flow{grid-template-columns:repeat(2,1fr)}.detail dl>div,.company__table>div{grid-template-columns:1fr;gap:4px}.letters{grid-template-columns:repeat(3,1fr)}.letter{min-height:130px}}.mission__lead{font-size:clamp(22px,2.4vw,34px)}.svc-intro .mission__lead{font-size:clamp(20px,2.1vw,30px)}.skill{min-width:0}.sec-sub{white-space:nowrap}.sec-head{flex-wrap:wrap;row-gap:8px}@media (max-width:760px){.sec-sub{flex-basis:100%}}.svc__body{pointer-events:none;transform:none}.svc__tabs{z-index:2;position:relative}.svc{transform-style:flat}.svc__media,.svc__body-wrap,.svc__no,.svc__en{transform:none}.mapping{border:1px solid var(--line);background:radial-gradient(at 50% 30%,#0d1118,#050608 70%);border-radius:14px;width:100%;position:relative;overflow:hidden}.mapping__canvas{aspect-ratio:4/3;touch-action:pan-y;cursor:grab;position:relative}.mapping__canvas:active{cursor:grabbing}.mapping__canvas canvas{display:block}.mapping__fallback{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.mapping__hud{letter-spacing:.12em;color:var(--text-2);pointer-events:none;justify-content:space-between;font-size:10px;display:flex;position:absolute;top:12px;left:14px;right:14px}.mapping__hud b{color:var(--cyan);font-weight:500}.mapping__hint{text-align:center;letter-spacing:.14em;color:var(--text-2);pointer-events:none;font-size:10px;position:absolute;top:calc(100% - 92px);left:0;right:0}.mapping__modes{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.mapping__mode{color:var(--text-2);border-right:1px solid var(--line);transition:color var(--t-micro), background var(--t-micro);flex-direction:column;align-items:center;gap:4px;padding:14px 6px 16px;font-size:14px;font-weight:700;display:flex}.mapping__mode:last-child{border-right:0}.mapping__mode .mono{letter-spacing:.14em;font-size:9px;font-weight:400}.mapping__mode:hover{color:var(--text);background:#3ef2ff0d}.mapping__mode[aria-pressed=true]{color:#fff;box-shadow:inset 0 2px 0 var(--red);background:linear-gradient(#e15e6340,#e15e630d)}.mapping__mode[aria-pressed=true] .mono{color:var(--red)}@media (max-width:760px){.mapping__mode{font-size:12px}.mapping__hint{display:none}}.mission .mission__lead{font-size:clamp(20px,2vw,30px)}.blobs{aspect-ratio:886/640;touch-action:pan-y;width:100%;position:relative}.blobs canvas{display:block}.blobs__fallback{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.bg-grid{opacity:.55}.bg-grid.lit{background-image:linear-gradient(#0a9db059 1px,#0000 1px),linear-gradient(90deg,#0a9db059 1px,#0000 1px)}.bg-noise{opacity:.035}.scanlines{opacity:.025;background:repeating-linear-gradient(#000 0 1px,#0000 1px 3px)}.cursor{mix-blend-mode:normal}.cursor__dot{background:var(--red);box-shadow:0 0 10px #e15e6399}.cursor__ring{border-color:#15171c73}.ripple{border-color:var(--red)}.header{mix-blend-mode:normal;background:linear-gradient(#f6f6f3eb,#f6f6f300)}.logo__svg{color:var(--text)}.menu-overlay{background:#f6f6f3f7}.ctrl{background:#fffc}.hero__copy{text-shadow:0 0 24px #f6f6f3f2}.hero__fallback-logo{filter:drop-shadow(0 10px 30px #e15e6340)}.projected img{filter:none}.projected:hover img{filter:saturate(1.05)}.projected__light{mix-blend-mode:soft-light}.projected--cutout img{filter:none}.svc__media img{filter:brightness(.96)}.work__thumb img{filter:none}.work__tc{color:#fff;text-shadow:0 1px 4px #00000080}.svc{box-shadow:0 1px #15171c0a,0 18px 40px -28px #15171c40}.svc__tab[aria-selected=true]{color:#fff}.job,.detail{background:#fff}.office{box-shadow:0 18px 40px -30px #15171c40}.modal{background:#f6f6f3e6}.modal__panel{border-color:var(--line);box-shadow:0 40px 120px -40px #15171c59}.follow-word{-webkit-text-stroke:1px #15171c24}.follow-word:nth-child(2){-webkit-text-stroke-color:#e15e6373}.follow-word:nth-child(3){-webkit-text-stroke-color:#0a9db066}.blank input{box-shadow:0 6px 16px -10px #0a9db0cc}.blank__echo{color:var(--red);text-shadow:2px 0 #0a9db059,-2px 0 #e15e6340}.skill{text-shadow:none}.letter__l{-webkit-text-stroke-color:#15171c73}.letter.on{background:linear-gradient(#e15e631a,#fff)}.letter.on .letter__l{text-shadow:0 10px 30px #e15e6359}.mapping{--text:#e9ecf2;--text-2:#8a93a6;--line:#e9ecf21f;--cyan:#3ef2ff;color:var(--text);background:radial-gradient(at 50% 30%,#0d1118,#050608 70%);border-color:#15171c33;box-shadow:0 30px 80px -40px #15171c8c}.mapping__modes{background:#07080b}.snake{z-index:1;pointer-events:none;opacity:.92;position:fixed;inset:0}.snake__label{z-index:40;pointer-events:none;letter-spacing:.2em;color:var(--text);border:1px solid var(--line);opacity:0;background:#ffffffd9;border-radius:999px;padding:8px 14px;font-size:11px;position:fixed;bottom:64px;left:50%;transform:translate(-50%)}.snake__label.show{animation:snakeLabel 1.6s var(--ease-expo) forwards}@keyframes snakeLabel{0%{opacity:0;transform:translate(-50%,8px)}15%{opacity:1;transform:translate(-50%)}75%{opacity:1}to{opacity:0}}.snake canvas{width:100%;height:100%;display:block}.cform{place-items:start center;overflow:hidden}.cform__panel{width:min(820px,100%);max-height:calc(100svh - var(--gutter) * 2);overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);animation:panelIn .7s var(--ease-expo);border-radius:16px;padding:clamp(28px,5vw,64px) clamp(20px,5vw,64px) clamp(32px,5vw,56px);position:relative;overflow:auto;box-shadow:0 40px 120px -40px #15171c59}.cform__panel:before{content:"";background:linear-gradient(90deg,#2f7dc1,#44bfed,#5fbea6,#c468a4,#e84d8d,#ea5240);height:3px;margin:calc(-1*clamp(28px,5vw,64px)) calc(-1*clamp(20px,5vw,64px)) clamp(24px,4vw,48px);display:block;position:sticky;top:calc(-1*clamp(28px,5vw,64px))}.cform__title{font:700 clamp(40px, 6vw, 72px)/1 var(--font-display);letter-spacing:-.02em;margin:8px 0 28px}.cform__steps{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:36px;list-style:none;display:grid}.cform__steps li{font:700 13px/1.5 var(--font-jp);color:var(--text-2);padding-top:14px;position:relative}.cform__steps li:before{content:"";background:var(--line);height:2px;position:absolute;top:0;left:0;right:0}.cform__steps li:after{content:"";background:var(--red);width:0;height:2px;transition:width .7s var(--ease-expo);position:absolute;top:0;left:0}.cform__steps li.is-current,.cform__steps li.is-done{color:var(--text)}.cform__steps li.is-current:after,.cform__steps li.is-done:after{width:100%}.cform__steps .mono{font:500 10px/1.6 var(--font-mono);letter-spacing:.16em;color:var(--red);display:block}.cform__form{gap:26px;display:grid}.cform__item{border:0;min-width:0;margin:0;padding:0;position:relative}.cform__label{font:700 14px/1.5 var(--font-jp);align-items:center;gap:10px;margin-bottom:10px;padding:0;display:flex}.cform__label em{font:500 10px/1 var(--font-mono);letter-spacing:.1em;color:#fff;background:var(--red);border-radius:3px;padding:4px 6px 3px;font-style:normal}.cform__input{width:100%;font:400 16px/1.6 var(--font-jp);color:var(--text);background:var(--void);border:1px solid var(--line);transition:border-color var(--t-micro), box-shadow var(--t-base), background var(--t-micro);border-radius:8px;outline:none;padding:13px 16px}.cform__input::placeholder{color:#5c637080}.cform__input:hover{border-color:#15171c40}.cform__input:focus{border-color:var(--cyan);background:#fff;box-shadow:0 0 0 4px #0a9db01f}.cform__input--area{resize:vertical;min-height:160px}.has-error .cform__input{border-color:var(--red);background:#e15e630a}.cform__count{font:11px var(--font-mono);color:var(--text-2);position:absolute;top:2px;right:2px}.cform__count.is-over{color:var(--red)}.cform__note{color:var(--text-2);margin-top:8px;font-size:12px}.cform__err{color:var(--red);margin-top:8px;font-size:13px;font-weight:700}.cform__global{white-space:pre-line;color:var(--red);background:#e15e6314;border-radius:8px;margin-bottom:24px;padding:14px 16px;font-size:14px;font-weight:700}.cform__types{flex-wrap:wrap;gap:10px;display:flex}.cform__chip{cursor:pointer;position:relative}.cform__chip input{opacity:0;pointer-events:none;position:absolute;inset:0}.cform__chip span{border:1px solid var(--line);background:var(--void);font:700 14px/1.2 var(--font-jp);transition:background var(--t-micro), color var(--t-micro), border-color var(--t-micro), transform var(--t-base) var(--ease-expo);border-radius:999px;padding:11px 18px;display:inline-block}.cform__chip:hover span{border-color:var(--text);transform:translateY(-2px)}.cform__chip input:focus-visible+span{border-color:var(--cyan);box-shadow:0 0 0 4px #0a9db033}.cform__chip.is-on span{background:var(--text);color:#fff;border-color:var(--text)}.has-error .cform__chip span{border-color:#e15e6399}.cform__privacy{color:var(--text-2);background:var(--void);border-radius:8px;padding:18px 20px;font-size:13px;line-height:1.9}.cform__link{color:var(--cyan);text-underline-offset:3px;padding:0 2px;font-weight:700;text-decoration:underline}.cform__actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:8px;display:flex}.cform__btn{border:1px solid var(--text);min-width:180px;font:700 15px/1.2 var(--font-jp);letter-spacing:.06em;transition:background var(--t-micro), color var(--t-micro), box-shadow var(--t-base), transform var(--t-base) var(--ease-expo);border-radius:999px;padding:16px 28px}.cform__btn:hover{background:var(--text);color:#fff;transform:translateY(-2px)}.cform__btn--main{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 10px 40px -12px #e15e63b3}.cform__btn--main:hover{background:#d44e54;border-color:#d44e54;box-shadow:0 14px 50px -12px #e15e63e6}.cform__btn:disabled{opacity:.5;pointer-events:none}.cform__review{border-top:1px solid var(--line);display:grid}.cform__review>div{border-bottom:1px solid var(--line);grid-template-columns:13em 1fr;gap:16px;padding:16px 4px;display:grid}.cform__review dt{color:var(--text-2);font-size:14px;font-weight:700}.cform__review dd{white-space:pre-wrap;word-break:break-word}.cform__done{text-align:center;gap:16px;padding:24px 0 8px;line-height:1.9;display:grid}.cform__done-mark{font:700 clamp(22px, 3vw, 30px)/1 var(--font-mono);letter-spacing:.2em;color:var(--red)}.cform__policy dl{gap:22px;margin-bottom:36px;display:grid}.cform__policy dt{margin-bottom:6px;font-weight:700}.cform__policy dd{color:var(--text-2);white-space:pre-line;font-size:14px;line-height:1.9}@media (max-width:760px){.cform__steps li{font-size:11px}.cform__review>div{grid-template-columns:1fr;gap:4px}.cform__btn{flex:140px;min-width:0}}.blooms{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bloom{will-change:transform, opacity;border-radius:50%;position:absolute;transform:scale(0)}.blank__go{font:inherit;color:var(--red);letter-spacing:.08em;border-bottom:1px dashed;padding:4px 0;animation:1.6s ease-in-out infinite blink}.blank__go:hover{color:var(--text);animation:none}.recruit__visual{position:relative}.recruit__visual .projected{transition:filter .8s var(--ease-expo), opacity .8s}.recruit__visual.has-idea .projected{filter:blur(3px)saturate(.7);opacity:.55}.idea{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:min(520px,104%);animation:ideaIn .9s var(--ease-expo) both;background:#ffffffe6;border:1px solid #15171c1a;border-radius:14px;padding:22px 24px 20px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 30px 80px -30px #15171c73,inset 0 0 0 1px #fff9}.idea:before{content:"";background:linear-gradient(90deg,#2f7dc1,#44bfed,#5fbea6,#c468a4,#e84d8d,#ea5240);height:3px;position:absolute;top:0;left:0;right:0}@keyframes ideaIn{0%{opacity:0;clip-path:inset(0 0 100%);transform:translate(-50%,-46%)scale(.96)}to{opacity:1;clip-path:inset(0);transform:translate(-50%,-50%)scale(1)}}.idea__beam{pointer-events:none;height:40%;animation:ideaBeam 1.1s var(--ease-base) .12s both;background:linear-gradient(#0000,#3ef2ff47,#0000);position:absolute;top:-40%;left:0;right:0}@keyframes ideaBeam{0%{transform:translateY(0)}to{opacity:0;transform:translateY(360%)}}.idea__head{letter-spacing:.14em;color:var(--text-2);align-items:center;gap:16px;font-size:10px;display:flex}.idea__head span:first-child{color:var(--red)}.idea__x{color:var(--text-2);margin-left:auto;padding:2px 4px;font-size:18px;line-height:1}.idea__x:hover{color:var(--text)}.idea__theme{color:var(--text-2);margin-top:12px;font-size:13px}.idea__theme b{color:var(--text)}.idea__title{font:700 clamp(19px, 1.9vw, 24px)/1.45 var(--font-jp);letter-spacing:.02em;margin-top:6px}.idea__format{font:700 14px/1.4 var(--font-jp);color:var(--red);margin-top:4px}.idea__spec{border-top:1px dashed var(--line);gap:10px;margin-top:16px;padding-top:14px;display:grid}.idea__spec>div{grid-template-columns:52px 1fr;align-items:center;gap:10px;display:grid}.idea__spec dt{letter-spacing:.14em;color:var(--cyan);font-size:10px}.idea__spec dd{flex-wrap:wrap;gap:6px;font-size:13px;display:flex}.idea__tag{background:var(--surface-2);border-radius:999px;padding:3px 9px;font-size:12px}.idea__meters{gap:5px!important;display:grid!important}.idea__meter{grid-template-columns:84px 1fr;align-items:center;gap:8px;display:grid}.idea__meter i{letter-spacing:.1em;color:var(--text-2);font-size:10px;font-style:normal}.idea__meter.is-main i{color:var(--red);font-weight:700}.idea__bar{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.idea__bar>span{height:100%;transition:width 1.2s var(--ease-expo);background:#15171c59;border-radius:3px;display:block}.idea__meter.is-main .idea__bar>span{background:linear-gradient(90deg, #e84d8d, var(--red))}.idea__line{font:700 14px/1.6 var(--font-jp);margin-top:14px}.idea__actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.idea__btn{border:1px solid var(--line);font:700 13px/1.2 var(--font-jp);transition:background var(--t-micro), color var(--t-micro), transform var(--t-base) var(--ease-expo), border-color var(--t-micro);border-radius:999px;padding:11px 16px}.idea__btn:hover{border-color:var(--text);transform:translateY(-2px)}.idea__btn--main{background:var(--red);border-color:var(--red);color:#fff;flex:1;box-shadow:0 10px 30px -12px #e15e63cc}.idea__btn--main:hover{background:#d44e54;border-color:#d44e54}.idea__stamp{border:2px solid var(--red);color:var(--red);letter-spacing:.16em;opacity:.85;border-radius:6px;padding:4px 10px;font-size:13px;font-weight:700;animation:.5s cubic-bezier(.3,1.6,.5,1) .7s both stamp;position:absolute;top:44px;right:22px;transform:rotate(-12deg)}@keyframes stamp{0%{opacity:0;transform:rotate(-12deg)scale(2.2)}to{opacity:.85;transform:rotate(-12deg)scale(1)}}@media (max-width:760px){.idea{width:100%;margin-top:-40%;animation-name:ideaInSp;position:relative;top:auto;left:auto;transform:none}@keyframes ideaInSp{0%{opacity:0;clip-path:inset(0 0 100%)}to{opacity:1;clip-path:inset(0)}}.idea__btn--main{flex-basis:100%}}[data-glitch]{cursor:default}[data-glitch].is-glitch{translate:var(--jx,0) 0;text-shadow:var(--gx,0) 0 0 #ff0048bf, calc(var(--gx,0) * -1) 0 0 #00c4ffbf!important}[data-glitch].is-glitch *{text-shadow:inherit!important}[data-glitch].is-glitch.is-slice{filter:url(#ichigo-glitch)}[data-reveal].is-in[data-glitch].is-glitch{clip-path:none}.hero__copy{pointer-events:auto}
