/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:var(--font-jetbrains-mono),"Hiragino Sans","Yu Gothic","Noto Sans JP",ui-monospace,SFMono-Regular,Menlo,monospace;--spacing:.25rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-paper:#f7f4ec;--color-paper-2:#efeadf;--color-paper-3:#e6e0d1;--color-ink:#211f1a;--color-ink-2:#5c574c;--color-ink-3:#8d8778;--color-line:#211f1a29;--color-line-2:#211f1a12;--color-loop:#c96a12;--color-job:#3a8848;--color-tool:#6a51bb;--color-edu:#c93f62;--color-loop-soft:#c96a1221;--color-job-soft:#3a884821;--color-tool-soft:#6a51bb21;--color-edu-soft:#c93f6221;--color-smore:#2f5d7a;--radius-card:5px;--radius-pill:99px;--font-family-sans:"Hiragino Sans","Yu Gothic","Noto Sans JP",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}a{color:inherit;text-decoration:none}h1,h2{font-family:var(--font-family-sans);font-weight:800;font-size:var(--fs-h2);letter-spacing:.01em;color:var(--color-ink);text-wrap:balance;word-break:auto-phrase;margin:0;line-height:1.45}}@layer components{.wrap{max-width:1080px;margin:0 auto;padding:0 22px}.section{padding:var(--space-section-top) 0 var(--space-section-bottom)}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.06em;color:var(--color-ink-3);font-weight:700}.eyebrow+:is(h1,h2){margin-top:20px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lead{max-width:38em;color:var(--color-ink-2);font-size:var(--fs-lg);margin:0;line-height:1.9}:is(h1,h2,h3)+.lead{margin-top:16px}.card{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper-2)}.legal a,.text-link{border-bottom:1px solid var(--color-line);transition:color .15s,border-color .15s}.text-link{font-size:var(--fs-lg);color:var(--color-ink-2);padding-bottom:3px;display:inline-block}.text-link-strong{font-size:var(--fs-md);font-weight:700}.legal a,.text-link-strong{color:var(--color-ink)}.legal a:hover,.text-link:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}:is(.text-link,.legal a,.works-toc a):focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}:is(.text-link,.legal a):focus-visible{border-radius:2px}:is(.blk,.works-group) h3{font-weight:800;font-size:var(--fs-h3);letter-spacing:.01em;text-wrap:balance;max-width:24em;margin:0;line-height:1.6}}@layer utilities{.static{position:static}.sticky{position:sticky}.mt-7{margin-top:calc(var(--spacing) * 7)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}:root{--shadow:0 18px 44px #211f1a21;--space-section-top:96px;--space-section-bottom:104px;--fs-2xs:9px;--fs-xs:10px;--fs-sm:11px;--fs-base:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:15px;--fs-card-title:17px;--fs-card-body:var(--fs-lg);--fs-h2:clamp(21px,3vw,28px);--fs-h2-wide:clamp(21px,3vw,30px);--fs-h3:clamp(18px,2.4vw,22px);--fs-h1:clamp(26px,3.9vw,40px)}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body,html{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-family-sans);-webkit-font-smoothing:antialiased;line-height:1.85;overflow-x:clip}.c-loop{color:var(--color-loop);--w:var(--color-loop-soft)}.c-job{color:var(--color-job);--w:var(--color-job-soft)}.c-tool{color:var(--color-tool);--w:var(--color-tool-soft)}.c-edu{color:var(--color-edu);--w:var(--color-edu-soft)}.nav{z-index:40;background:var(--color-paper);border-bottom:1px solid var(--color-line);position:sticky;top:0}.nav-in{gap:16px;max-width:1080px;min-height:52px;margin:0 auto;padding:0 22px;position:relative}.nav-in,.nav-logo{align-items:center;display:flex}.nav-logo{flex:none}.nav-logo img{width:auto;height:32px;display:block}@media (max-width:720px){.nav-logo img{height:28px}}.nav-logo:focus-visible{outline:2px solid var(--color-ink);outline-offset:4px}.nav-menu{align-items:center;gap:24px;margin-left:auto;display:flex}.nav-menu a{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.08em;color:var(--color-ink-2);border-bottom:1px solid #0000;padding:4px 0;text-decoration:none;transition:color .15s,border-color .15s}.nav-menu a:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}.nav-menu a:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.nav-burger{appearance:none;cursor:pointer;border:1px solid var(--color-line);color:var(--color-ink);font-size:var(--fs-lg);background:0 0;border-radius:4px;margin-left:auto;padding:7px 11px;line-height:1;display:none}.nav-burger:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.hero{--hero-viz-w:min(1240px,calc(100vw - 44px));padding:58px 0 20px}.hero-copy{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:20px 56px;display:grid}.hero h1{font-family:var(--font-family-sans);letter-spacing:.004em;text-wrap:wrap;margin:0;font-size:clamp(28px,4.4vw,52px);font-weight:800;line-height:1.3}.hero-sub{color:var(--color-ink-2);font-size:var(--fs-lg);max-width:26em;margin:0;line-height:1.9}.hero-sub span{display:inline-block}.hero-mail{font-family:var(--font-mono);font-size:var(--fs-base);color:var(--color-ink-2);border-bottom:1px solid var(--color-line);align-items:center;gap:9px;margin-top:18px;padding-bottom:3px;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.hero-mail .mk{font-size:var(--fs-2xs);letter-spacing:.18em;color:var(--color-ink-3)}.hero-mail:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}.hero-mail:focus-visible{outline:2px solid var(--color-ink);outline-offset:4px;border-radius:2px}.hero-viz{margin-top:36px;margin-left:calc((100% - var(--hero-viz-w)) / 2);margin-right:calc((100% - var(--hero-viz-w)) / 2)}.const-host{display:block;position:relative}.const{width:100%;height:auto;color:var(--color-ink);display:block;overflow:visible}.const text{font-family:var(--font-mono);fill:var(--color-ink-2)}.cl-label{font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.cl-count{font-size:var(--fs-2xs);fill:var(--color-ink-3)}.n-label{font-size:var(--fs-xs);letter-spacing:.01em}.lab{opacity:0;transition:opacity .26s}.const.labels-on .lab{opacity:1;transition-delay:.25s}.node{cursor:pointer;transition:opacity .18s}.node .hit{fill:#0000}.node circle.dot{transition:r .18s}.nicon{fill:none;stroke:var(--color-ink-3);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;transition:stroke .15s}.nicon-s{transition:transform .26s}@media (hover:hover){.node:hover .nicon{stroke:var(--color-ink)}.node:hover circle.dot{r:9.5}}.node:focus-visible .nicon{stroke:var(--color-ink)}.node .ring{fill:none;stroke-width:1.2px;opacity:.45}.node:focus{outline:none}.node:focus-visible circle.dot{r:9.5;stroke:var(--color-ink);stroke-width:2px}.link{fill:none;stroke-dasharray:3 5;stroke-width:1.15px;opacity:.4}.linkg{transition:opacity .18s}.flow{opacity:.5}.hero-works{padding:8px 0 18px}.hero-all{margin-top:22px}.badge{border:1px solid var(--color-line);border-radius:var(--radius-pill);font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--color-ink-3);margin-left:9px;padding:1px 8px;display:inline-block}.vision h2{font-size:var(--fs-h2-wide);letter-spacing:.02em;max-width:19em;line-height:1.65}.vision p{max-width:33em;color:var(--color-ink-2);font-size:var(--fs-xl);margin:26px 0 0;line-height:2.15}.business{padding-top:0}.business h2{max-width:18em}.blk{grid-template-columns:minmax(0,4fr) minmax(0,6fr);align-items:center;column-gap:48px;margin:72px 0 0;display:grid}.blk h3{max-width:22em}.blk .say,.blk h3{word-break:auto-phrase}.blk .say{max-width:30em;color:var(--color-ink-2);font-size:var(--fs-xl);text-wrap:pretty;margin:12px 0 0;line-height:2.05}.blk-more{margin-top:10px}.fig-slot{margin:0}@media (max-width:960px){.blk{display:block}.fig-slot{margin:30px 0 0}}.bf{color:var(--color-ink);position:relative}.bf svg{width:100%;height:auto;display:block;overflow:visible}.bf-link{fill:none;stroke:currentColor;stroke-width:1.15px;stroke-dasharray:3 5;opacity:.4;vector-effect:non-scaling-stroke}.bf-link.strong{stroke-width:1.4px;opacity:.6}.bf-dot,.bf-flow{fill:currentColor}.bf-flow.bf-ink{fill:var(--color-ink-2)}.bf-pulse,.bf-ring{fill:none;stroke:currentColor;stroke-width:1.2px;vector-effect:non-scaling-stroke}.bf-ring{opacity:.45}.bf-joint{fill:var(--color-paper);stroke:var(--color-ink-3);stroke-width:1.2px;vector-effect:non-scaling-stroke}.bf-icon{fill:none;stroke:var(--color-ink-3);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.bf-icon *{vector-effect:non-scaling-stroke}.bf-me{color:var(--color-ink)}.bf-base{color:var(--color-ink-2)}.bf-base .bf-icon{stroke:var(--color-ink-2)}.bf-ground{fill:var(--color-paper-2)}.bf-person{stroke:var(--color-ink-2);stroke-width:1.4px}.bf-event{color:var(--color-smore)}.bf-trail{fill:none;stroke:var(--color-smore);stroke-width:1.15px;stroke-dasharray:2 5;vector-effect:non-scaling-stroke}.bf-gather .bf-lab:not(.quiet){color:var(--color-smore);font-weight:700}.bf-labs{pointer-events:none;inset:0}.bf-lab,.bf-labs{position:absolute}.bf-lab{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.02em;white-space:nowrap;color:var(--color-ink-2);line-height:1;transform:translate(-50%,-50%)}.bf-lab.head{color:var(--color-ink);font-weight:700}.bf-lab.quiet{color:var(--color-ink-3)}.bf-say{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper);font-family:var(--font-mono);font-size:var(--fs-sm);white-space:nowrap;color:var(--color-ink);align-items:center;gap:5px;padding:2px 8px;line-height:1.5;transition:opacity .3s;display:inline-flex;position:absolute}.bf-say.ask{transform:translate(-100%,-50%)}.bf-say.reply{border-color:var(--color-loop);transform:translateY(-50%)}.bf-say i{background:var(--color-loop);border-radius:50%;width:6px;height:6px}.bf-say.dim{opacity:.55}@media (max-width:640px){.bf-lab,.bf-say{font-size:var(--fs-xs)}.bf-say{gap:4px;padding:1px 6px}.bf-say i{width:5px;height:5px}.bf-handoff g:not(.bf-me)>.bf-icon{display:none}}.svc-form,.svc-sec{max-width:38em;margin-top:48px}.svc-form h2,.svc-sec h2{font-size:var(--fs-h3)}.svc-list,.svc-steps{font-size:var(--fs-xl);margin:14px 0 0;padding:0;line-height:1.9;list-style:none}.svc-list li,.svc-steps li{border-top:1px solid var(--color-line-2);padding:9px 0 9px 22px;position:relative}.svc-list li:last-child,.svc-steps li:last-child{border-bottom:1px solid var(--color-line-2)}.svc-list li:before{content:"";background:var(--color-ink-3);border-radius:50%;width:6px;height:6px;position:absolute;top:calc(6px + .95em);left:3px}.svc-steps{counter-reset:step}.svc-steps li{counter-increment:step;padding-left:34px}.svc-steps li:before{content:counter(step);border:1px solid var(--color-ink-3);width:22px;height:22px;font-family:var(--font-mono);font-size:var(--fs-sm);text-align:center;color:var(--color-ink-2);border-radius:50%;line-height:20px;position:absolute;top:calc(.95em - 2px);left:0}.svc-more{margin:28px 0 0}.svc-fig{margin:40px 0 0}.svc-note{margin:14px 0 0}.svc-intro,.svc-note{font-size:var(--fs-xl);color:var(--color-ink-2)}.svc-intro{margin:12px 0 0}.svc-back{margin:56px 0 0}.svc-logo{margin:0 0 14px;display:block}.inq{gap:16px;margin-top:20px;display:grid}.inq-field{gap:6px;display:grid}.inq-field label{font-size:var(--fs-md);color:var(--color-ink);font-weight:700}.inq-opt{color:var(--color-ink-3);margin-left:8px;font-weight:400}.inq-field input,.inq-field textarea{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper);width:100%;color:var(--color-ink);font:inherit;padding:10px 12px;font-size:16px;line-height:1.6}.inq-field textarea{resize:vertical}.inq-field input:focus-visible,.inq-field textarea:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.inq-actions{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:4px;display:flex}.inq-submit{appearance:none;cursor:pointer;border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-paper);font:inherit;font-size:var(--fs-lg);border:0;padding:11px 22px;font-weight:700;transition:background .15s}.inq-submit:hover{background:var(--color-ink-2)}.inq-submit:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.inq-note{font-size:var(--fs-md);color:var(--color-ink-3);margin:0}.inq-done{border-radius:var(--radius-card);background:var(--color-paper-2);font-size:var(--fs-lg);color:var(--color-ink);overflow-wrap:anywhere;margin:0;padding:12px 14px}.inq-copy{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.inq-copy-btn{appearance:none;cursor:pointer;border:1px solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper);color:var(--color-ink);font:inherit;font-size:var(--fs-md);padding:8px 16px;font-weight:700}.inq-copy-btn:hover{background:var(--color-paper-2)}.inq-copy-btn:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.inq-done:empty{padding:0}.works .ph{display:inline-block}.works-toc{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.works-toc a{border:1px solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-paper-2);font-size:var(--fs-md);color:var(--color-ink-2);padding:6px 14px}.works-toc a:hover{background:var(--color-paper-3);color:var(--color-ink)}.works-group{margin-top:88px}.works-group h3{margin-top:14px}.works-cluster{border-top:1px solid var(--color-line);margin-top:40px;padding-top:12px}.wcase-list{flex-direction:column;gap:14px;margin-top:14px;display:flex}.wcase{background:var(--color-paper)}.wcard-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0 0;padding:0;list-style:none;display:grid}.wcard{flex-direction:column;padding:18px 20px 20px;display:flex}.wcard-t{font-size:var(--fs-card-title);color:var(--color-ink);margin:0;font-weight:800;line-height:1.6}.wcard-meta{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-ink-3);flex-wrap:wrap;gap:2px 14px;margin-top:6px;display:flex}.wcard-client{font-weight:700}.wcard-client,.wcard-s{color:var(--color-ink-2)}.wcard-s{font-size:var(--fs-card-body);margin:10px 0 0;line-height:1.85}.wcard-tech{flex-wrap:wrap;gap:5px;margin:auto 0 0;padding:14px 0 0;list-style:none;display:flex}.wcard-tech li{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-ink-3);border:1px solid var(--color-line);border-radius:var(--radius-pill);padding:1px 8px}.legal h3{font-size:var(--fs-xl);color:var(--color-ink);margin:40px 0 0;font-weight:800;line-height:1.6}.legal li,.legal p{max-width:38em;font-size:var(--fs-lg);color:var(--color-ink-2);line-height:1.9}.legal p,.legal ul{margin:10px 0 0}.legal ul{padding-left:1.4em;list-style:outside}.legal p.legal-date{color:var(--color-ink-3);margin-top:48px}.team{padding-top:0}.members{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.member{align-items:flex-start;gap:18px;padding:22px 22px 20px;display:flex}.avatar{background:var(--color-paper-3);border:1px solid var(--color-line);border-radius:50%;flex:none;width:120px;height:120px;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.member-body{min-width:0}.member-name{font-family:var(--font-mono);font-size:var(--fs-xl);letter-spacing:.04em;margin:0;font-weight:700;line-height:1.5}.member-kanji{font-family:var(--font-family-sans);letter-spacing:.04em;white-space:nowrap;margin-left:.8em;font-weight:500;display:inline-block}.member-kanji,.member-role{font-size:var(--fs-base);color:var(--color-ink-3)}.member-role{margin-top:2px}.member-bio{font-size:var(--fs-card-body);color:var(--color-ink-2);margin:10px 0 0;line-height:1.9}.team-more{font-size:var(--fs-md);color:var(--color-ink-3);margin:16px 0 0}@media (max-width:720px){.members{grid-template-columns:1fr}}@media (max-width:900px){.member{flex-direction:column;gap:16px}}.site-footer{border-top:1px solid var(--color-line);color:var(--color-ink-2);padding-bottom:48px}.f-name,.site-footer{font-size:var(--fs-lg)}.f-name{color:var(--color-ink);font-weight:700}.f-grid{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:32px;display:grid}.f-list,.f-row{margin-top:8px}.f-list{flex-direction:column;gap:4px;display:flex}.f-copy{font-size:var(--fs-base);color:var(--color-ink-3);margin-top:48px}.stack{flex-direction:column;gap:14px;margin-top:20px;display:none}.stack-group{border-top:1px solid var(--color-line);padding-top:10px}.stack-h{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;align-items:center;gap:7px;font-weight:700;display:flex}.stack-h i{background:currentColor;border-radius:50%;width:8px;height:8px;display:inline-block}.stack-h .cnt{color:var(--color-ink-3);font-weight:400}.chips{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.chip{appearance:none;cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-sm);border-radius:var(--radius-card);color:inherit;background:0 0;border:1px solid;padding:5px 10px}.chip .ct{color:var(--color-ink)}.chip.has-loop:after{content:" ↻";font-weight:700}.tip{pointer-events:none;opacity:0;background:var(--color-ink);color:var(--color-paper);border-radius:var(--radius-card);font-size:var(--fs-sm);z-index:20;max-width:250px;box-shadow:var(--shadow);padding:8px 11px;line-height:1.6;transition:opacity .12s;position:absolute;transform:translate(-50%,-100%)}.tip.on{opacity:1}.tip b{font-family:var(--font-mono);font-weight:700;display:block}.tip b,.tip span{font-size:var(--fs-sm)}.tip span{color:var(--color-paper-3)}.back{border-top:1px solid var(--color-line);padding-top:14px}.back-h{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--color-ink-3)}.rows{flex-direction:column;gap:5px;margin-top:10px}.row,.rows{display:flex}.row{border-radius:var(--radius-card);background:var(--w);border-left:3px solid;align-items:center;gap:12px;padding:9px 13px}.row .rl{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.06em;flex:none;width:104px;font-weight:700}.row .rt{color:var(--color-ink);font-size:var(--fs-md);flex:auto;min-width:0;line-height:1.6}.row .tag{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;border-radius:var(--radius-pill);border:1px solid;flex:none;padding:2px 9px}.scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;background:#14120c80;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal{background:var(--color-paper);border:1px solid var(--color-line);box-shadow:var(--shadow);border-radius:8px;width:min(880px,100%);max-height:92vh;overflow:auto}.m-top{align-items:flex-start;gap:14px;padding:18px 20px 0;display:flex}.m-kind{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.06em;border-radius:var(--radius-pill);border:1px solid;flex:none;margin-top:5px;padding:2px 9px;font-weight:700}.m-title{font-family:var(--font-family-sans);font-weight:800;font-size:var(--fs-card-title);color:var(--color-ink);margin:0;line-height:1.45}.m-who{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-ink-3);margin-top:3px}.m-x{appearance:none;border:1px solid var(--color-line);background:var(--color-paper-2);color:var(--color-ink-2);cursor:pointer;border-radius:var(--radius-card);width:30px;height:30px;font-size:var(--fs-xl);flex:none;margin-left:auto;line-height:1}.m-x:hover{background:var(--color-paper-3)}.m-note{color:var(--color-ink-2);font-size:var(--fs-md);max-width:62ch;padding:12px 20px 0;line-height:1.85}.m-metric{font-family:var(--font-mono);font-size:var(--fs-base);border-radius:var(--radius-card);background:var(--w);color:var(--color-ink);border-left:3px solid;margin:14px 20px 0;padding:6px 12px;font-weight:700;display:inline-block}.m-body{padding:16px 20px 20px}.loopwrap{grid-template-columns:390px 1fr;align-items:start;gap:22px;display:grid}.ring-box{position:relative}.ring-svg{width:100%;height:auto;display:block}.ring-svg text{font-family:var(--font-mono);fill:var(--color-ink-2)}.ls-num{font-size:var(--fs-sm);font-weight:700}.ls-label{font-size:var(--fs-2xs)}.lnode circle{fill:var(--color-paper-2);stroke:currentColor;stroke-width:1.4px;opacity:.5;transition:opacity .25s}.lnode.on circle{opacity:1;fill:var(--w)}.lnode text.ls-num{opacity:.45;transition:opacity .25s}.lnode.on text.ls-num{opacity:1;fill:var(--color-ink)}.larrow{fill:none;stroke:currentColor;stroke-dasharray:3 4;stroke-width:1.2px;opacity:.4}.ctr-lab{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;fill:var(--color-ink-3)}.ctr-step{font-size:var(--fs-base);fill:var(--color-ink);font-weight:700;font-family:var(--font-family-sans)!important}.play{justify-content:center;align-items:center;gap:8px;margin-top:10px;display:flex}.play button{appearance:none;cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-sm);border:1px solid var(--color-line);background:var(--color-paper-2);color:var(--color-ink-2);border-radius:var(--radius-card);padding:6px 14px}.play button:hover{background:var(--color-paper-3)}.play .cyc{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-ink-3)}.lrows{flex-direction:column;gap:5px;min-height:210px;display:flex}.lrow{border-radius:var(--radius-card);background:var(--w);border-left:3px solid;align-items:center;gap:11px;padding:8px 12px;animation:slidein .38s both;display:flex}.lrow .ln{font-family:var(--font-mono);font-size:var(--fs-xs);width:16px;color:var(--color-ink-2);flex:none;font-weight:700}.lrow .lt{min-width:0;color:var(--color-ink);font-size:var(--fs-base);flex:auto;line-height:1.6}.lrow .tag{font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:var(--radius-pill);border:1px solid;flex:none;padding:1px 8px}@keyframes slidein{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.tools{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-ink-3);letter-spacing:.02em;margin-top:14px}.io{grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:8px;margin-top:4px;display:grid}.io-cell{padding:11px 12px}.io-cell .k{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;color:var(--color-ink-3)}.io-cell .v{font-size:var(--fs-base);color:var(--color-ink);margin-top:5px;line-height:1.65}.io-arw{font-family:var(--font-mono);color:currentColor;font-size:var(--fs-md);align-items:center;display:flex}#ai,#client,#own,#smore,#top,#vision,#works{scroll-margin-top:62px}#business,#team{scroll-margin-top:94px}@media (max-width:860px){:root{--space-section-top:70px;--space-section-bottom:76px}.loopwrap{grid-template-columns:1fr}.wcase .lrows{min-height:calc(var(--rows) * 43.5px - 5px)}.ring-box{max-width:390px;margin:0 auto}.io{grid-template-columns:1fr}.io-arw{justify-content:center;height:14px;transform:rotate(90deg)}.hero{padding:40px 0 16px}.hero-sub{max-width:44ch}}@media (max-width:720px){.hero-copy{grid-template-columns:1fr;gap:15px}.hero h1{font-size:var(--fs-h1)}.hero-viz{margin:26px 0 0}.stack{display:flex}.const.labels-on .lab{opacity:0;transition:none}.nicon-s{transform:scale(.7)translate(-12px,-12px)}.back{margin-top:26px}.row{flex-wrap:wrap;gap:6px 10px}.row .rl{width:auto}.wcard-list{grid-template-columns:1fr}.row .rt{flex:100%;order:3}.hero{padding:30px 0 14px}}@media (max-width:640px){:root{--space-section-top:56px;--space-section-bottom:62px}.nav-burger{display:block}.nav-menu{background:var(--color-paper);border-bottom:1px solid var(--color-line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0;margin-left:0;padding:2px 22px 12px;display:none;position:absolute;top:100%;left:0;right:0}.nav-menu.open{display:flex}.nav-menu a{border-bottom:1px solid var(--color-line-2);font-size:var(--fs-base);padding:11px 0}.nav-menu a:hover{border-bottom-color:var(--color-line-2)}.vision h2{line-height:1.6}.hero-works{padding-bottom:10px}.f-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bf-flow,.bf-pulse,.flow{display:none}.bf-say{transition:none}.lrow{animation:none}.lnode circle,.node circle.dot{transition:none}.const,.lab,.nicon-s{transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_a74ce6{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_a74ce6{--font-jetbrains-mono:"JetBrains Mono","JetBrains Mono Fallback"}