@font-face{font-family:Inter;src:url('./vendor/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#ffffff;--ink:#000000;--muted:#6b6b6b;--line:#d6d6d6;--accent:#000000;--dark:#080808;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#000000;color:#ffffff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #888888;outline-offset:5px}p{line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.065em;line-height:1.04}h2{font-size:clamp(35px,4vw,57px);margin-bottom:28px}em{font-style:normal;color:var(--accent)}.wrap{max-width:1440px;width:90%;margin-inline:auto}.section{padding-block:110px}.eyebrow{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.13em;font-weight:600;line-height:1.6;margin-bottom:30px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:15px;z-index:100}.skip-link:focus{top:10px}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font-size:26px;font-weight:750;letter-spacing:-1.3px;line-height:1}.brand-icon{font-size:44px;font-weight:500;line-height:1;color:var(--accent)}.brand-ai{font-weight:400;margin-left:4px}.brand small{display:block;font-size:7px;letter-spacing:1.5px;margin-top:8px;font-weight:550}.site-header nav{display:flex;gap:29px;font-size:12px}.site-header nav a{position:relative;padding:10px 0}.site-header nav a:after{content:'';position:absolute;bottom:3px;left:0;width:0;height:1px;background:currentColor;transition:width .25s}.site-header nav a:hover:after{width:100%}.header-right{display:flex;gap:24px;align-items:center}.languages{display:flex;gap:7px;font-size:10px}.languages a{opacity:.5;padding-block:10px}.languages a[aria-current]{opacity:1;font-weight:700}.languages span{color:#999}.header-cta{font-size:11px;background:var(--ink);color:var(--paper);padding:15px 18px;border-radius:5px;display:flex;gap:25px;align-items:center}.header-cta:hover{background:#3e3e3e}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;padding-block:48px 60px;align-items:center}.hero-copy{padding-block:10px}.hero .eyebrow{font-size:9px;display:flex;align-items:center;gap:9px;margin-bottom:28px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent)}h1{font-size:clamp(58px,6.9vw,102px);margin-bottom:30px}.hero-intro{font-size:15px;color:var(--muted);max-width:410px;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--accent);color:#ffffff;font-size:12px;font-weight:600;border:0;border-radius:5px;padding:19px 22px;transition:background .2s,transform .2s}.button:hover{background:#333333;transform:translateY(-2px)}.text-link{font-size:11px;display:inline-flex;align-items:center;gap:14px;border-bottom:1px solid transparent;padding-block:7px}.text-link:hover{border-color:currentColor}.byline{font-size:9px;letter-spacing:.03em;color:var(--muted);margin:32px 0 0}.hero-art{--accent:#ffffff;position:relative;min-height:575px;align-self:stretch;overflow:hidden;border-radius:var(--radius);background:radial-gradient(ellipse at 50% 35%,#474747,#1c1c1c 70%);isolation:isolate}.art-grid{position:absolute;inset:0;opacity:.17;background-image:linear-gradient(#8b8b8b33 1px,transparent 1px),linear-gradient(90deg,#8b8b8b33 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(black,transparent)}#scene{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:0;transition:opacity 1s}.scene-ready #scene{opacity:1}.art-top,.art-bottom{position:absolute;left:26px;right:26px;display:flex;justify-content:space-between;align-items:center;color:#bcbcbc;z-index:3}.art-top{top:27px;font-family:monospace;font-size:9px;letter-spacing:.07em}.art-top i{display:inline-block;background:#c2c2c2;width:5px;height:5px;border-radius:50%;margin-right:7px}.art-bottom{bottom:24px;font-size:8px;letter-spacing:.12em}.art-bottom small{display:block;font-size:9px;letter-spacing:0;margin-top:9px;opacity:.65}.art-bottom button{background:transparent;border:1px solid #6d6d6d;color:#d7d7d7;border-radius:50%;height:36px;width:36px;font-size:14px}.art-bottom button:hover{background:#ffffff15}.art-label{position:absolute;background:#40404070;border:1px solid #86868655;backdrop-filter:blur(8px);padding:11px 13px;border-radius:5px;font-size:8px;letter-spacing:.11em;color:#e5e5e5;z-index:2}.label-one{left:28px;top:35%}.label-two{right:26px;bottom:28%}.mini-dot{display:inline-block;border:1px solid #cfcfcf;width:7px;height:7px;border-radius:50%;margin-right:7px}.mini-dot.orange{border:0;background:var(--accent)}.scene-fallback{position:absolute;inset:20%;display:grid;place-items:center;transition:opacity .5s;transform:rotate(-24deg)}.scene-fallback div{position:absolute;border:14px solid #c0c0c0;border-radius:50%;height:100%;width:60%;box-shadow:inset 3px 2px 15px #fff8,8px 8px 15px #0008}.scene-fallback div:nth-child(2){transform:rotate(60deg);border-color:#7f7f7f}.scene-fallback div:nth-child(3){transform:rotate(120deg)}.scene-ready .scene-fallback{opacity:0}.promise-strip{background:#f2f2f2;border-block:1px solid #d2d2d2;padding-block:24px}.promise-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.promise-strip p{font-size:12px;margin:0;color:#696969}.promise-strip strong{color:var(--ink);font-weight:600}.promise-strip .wrap>span{font-family:monospace;font-size:10px;letter-spacing:.07em;display:flex;align-items:center;gap:18px}.promise-strip i{font-style:normal;color:#8f8f8f;font-size:19px}.expertise{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.section-intro>p:not(.eyebrow){max-width:350px;color:var(--muted);font-size:14px}.circle-link{display:inline-grid;place-items:center;width:60px;height:60px;border:1px solid var(--line);border-radius:50%;font-size:25px;margin-top:12px;transition:background .3s}.circle-link:hover{background:#000000;color:#ffffff}.service{display:grid;grid-template-columns:30px 1fr 20px;gap:15px;padding:27px 0;border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service-no{font-size:10px;color:var(--muted);padding-top:5px}.service h3{font-size:22px;letter-spacing:-.035em;margin-bottom:12px}.service p{font-size:13px;line-height:1.65;color:var(--muted);margin-bottom:20px;max-width:440px}.service small{font-size:8px;letter-spacing:.08em;color:#828282}.service-arrow{font-size:20px;color:#6d6d6d}.possibilities{--accent:#ffffff;background:var(--dark);color:var(--paper)}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:240px;color:#afafaf;font-size:13px}.possibilities .eyebrow{color:#b5b5b5}.examples{display:grid;grid-template-columns:1fr 2.3fr;gap:42px}.example-tabs{display:flex;flex-direction:column}.example-tab{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:20px;padding:22px 0;background:none;color:#ababab;border:0;border-bottom:1px solid #3e3e3e;font-size:15px}.example-tab span{font-size:21px;opacity:0}.example-tab:hover{color:white}.example-tab.active{color:#ffffff;border-color:#ffffff}.example-tab.active span{opacity:1}.example-panel{padding:30px 35px;background:#292929;border:1px solid #4d4d4d;border-radius:10px;min-height:365px}.example-top{display:flex;justify-content:space-between;gap:20px;font-family:monospace;font-size:9px;color:#bebebe;letter-spacing:.07em}.example-ask{font-size:24px;letter-spacing:-.03em;line-height:1.35;margin-block:30px}.flow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-block:30px}.flow>span{padding:16px 13px;border:1px solid #505050;border-radius:7px;font-size:10px;flex:1;text-align:center;line-height:1.5}.flow i{font-style:normal;color:#959595}.flow .flow-core{background:#eeeeee;color:#000000;border-color:#ffffff;box-shadow:0 0 25px #ffffff10}.example-result{display:flex;gap:18px;align-items:start;margin-top:30px}.result-icon{font-size:24px;color:var(--accent)}.example-result small{font-size:8px;letter-spacing:.1em;color:#a5a5a5}.example-result h3{font-size:19px;letter-spacing:-.035em;margin:8px 0}.example-result p{font-size:12px;color:#b8b8b8;max-width:570px;margin-bottom:0}.approach h2{max-width:820px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:60px}.steps article{border-top:1px solid var(--line);padding-top:22px}.step-no{font-size:12px;color:var(--accent)}.steps h3{font-size:25px;letter-spacing:-.04em;margin:32px 0 14px}.steps p{font-size:13px;color:var(--muted);max-width:310px}.studio{margin-top:85px;padding:38px;background:#f2f2f2;border-radius:10px;display:grid;grid-template-columns:90px 1fr 1.5fr;align-items:center;gap:35px}.studio-symbol{font-size:100px;line-height:1;color:#6f6f6f}.studio h3{font-size:29px;letter-spacing:-.045em;line-height:1.2;margin:0}.studio p{font-size:12px;color:#5d5d5d;margin:0 0 10px}.faq{padding-top:0;display:grid;grid-template-columns:1fr 1.25fr;gap:75px}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.faq summary{display:flex;justify-content:space-between;gap:20px;font-size:14px;line-height:1.5}.faq summary span{font-size:20px;line-height:1;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;color:var(--muted);margin:18px 30px 0 0}.contact{background:#f2f2f2;border-block:1px solid #cccccc}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.contact h2{font-size:clamp(42px,4.7vw,68px)}.contact-intro{font-size:14px;max-width:370px;color:#646464}.direct-contact{margin-top:35px}.direct-contact small{display:block;font-size:10px;color:var(--muted);margin-bottom:9px}.direct-contact>a{font-size:16px;letter-spacing:-.03em;display:block}.direct-contact button{display:block;background:none;border:0;border-bottom:1px solid #848484;color:#5d5d5d;font-size:10px;padding:4px 0;margin-top:12px}.direct-contact #copy-status{display:block;min-height:20px;font-size:10px;padding-top:8px;color:#5d5d5d}form label{display:block;font-size:11px;font-weight:550}input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #a9a9a9;background:#ffffff26;border-radius:3px 3px 0 0;padding:14px 10px;margin:10px 0 28px;color:var(--ink);font-size:14px;outline:none}input:focus,textarea:focus{border-bottom:2px solid #626262;background:#ffffff50}textarea{resize:vertical;min-height:132px}textarea::placeholder{color:#888888;font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}form .button{width:100%;padding-block:20px}.form-note{font-size:10px;color:#6f6f6f;margin-top:15px;max-width:400px}footer{padding:40px 0 22px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-top .brand{font-size:23px}.footer-top .brand-icon{font-size:32px}.footer-top p{font-size:11px;color:var(--muted);margin:0}.footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:25px;font-size:9px;color:var(--muted);padding-top:25px}.footer-bottom details{max-width:530px;text-align:center}.footer-bottom details p{font-size:11px;line-height:1.7;margin:15px 0 0}.footer-bottom summary{text-decoration:underline;text-underline-offset:3px}[hidden]{display:none!important}
@media(min-width:1600px){.hero-art{min-height:680px}}
@media(max-width:1100px){.site-header nav{gap:17px}.header-cta{gap:12px}.header-right{gap:15px}.hero{gap:28px}.hero-art{min-height:550px}.hero-actions{gap:14px}.expertise{gap:45px}.contact-grid{gap:55px}.promise-strip .wrap>span{gap:10px;font-size:8px}.studio{grid-template-columns:70px 1fr 1.4fr;gap:25px;padding:30px}.studio-symbol{font-size:85px}.studio h3{font-size:25px}.example-panel{padding:25px}.examples{gap:25px}}
@media(max-width:800px){.site-header{height:88px}.site-header nav{display:none}.hero{grid-template-columns:1fr 1fr;gap:20px}.hero h1{font-size:60px}.hero .eyebrow{font-size:8px}.hero-art{min-height:535px}.hero-intro{font-size:13px}.hero-actions .text-link{font-size:10px}.art-label{font-size:6px;padding:9px}.label-one{left:15px;top:32%}.label-two{right:15px;bottom:29%}.art-top,.art-bottom{left:17px;right:17px}.art-top{font-size:7px}.art-bottom small{font-size:8px}.section{padding-block:80px}.expertise{grid-template-columns:1fr;gap:30px}.section-intro{max-width:560px}.section-intro>p:not(.eyebrow){max-width:500px}.circle-link{display:none}.promise-strip .wrap{flex-direction:column;gap:12px;align-items:start}.promise-strip .wrap>span{font-size:9px;gap:15px}.examples{grid-template-columns:1fr}.example-tabs{flex-direction:row;gap:20px}.example-tab{flex:1;font-size:12px;padding:15px 0}.example-tab span{display:none}.steps{gap:26px}.studio{grid-template-columns:65px 1fr}.studio>div:last-child{grid-column:1/-1}.faq{padding-top:0;grid-template-columns:1fr;gap:20px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-intro{max-width:550px}.contact h2 br{display:none}.footer-top p{max-width:150px}.footer-bottom{gap:16px}.footer-bottom details{max-width:50%}}
@media(max-width:580px){.wrap{width:88%}.site-header{height:83px;gap:10px}.brand{font-size:23px}.brand-icon{font-size:36px}.brand small{font-size:6px;letter-spacing:1px}.header-right{gap:14px}.header-cta{font-size:0;padding:12px 14px}.header-cta span{font-size:18px}.languages{font-size:10px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:35px;gap:30px;padding-bottom:35px}.hero h1{font-size:clamp(57px,14vw,80px);margin-bottom:22px}.hero .eyebrow{font-size:8px;margin-bottom:23px}.hero-intro{font-size:14px;max-width:370px;margin-bottom:23px}.hero-actions{gap:18px}.button{font-size:11px;gap:22px;padding:17px 18px}.hero-actions .text-link{font-size:10px}.byline{margin-top:22px}.hero-art{min-height:430px}.art-top{font-size:8px}.art-label{font-size:7px}.label-one{top:35%;left:20px}.label-two{right:20px;bottom:28%}.art-bottom{font-size:8px}.promise-strip p{font-size:10px}.promise-strip .wrap>span{font-size:7px;gap:9px}.promise-strip i{font-size:15px}.section{padding-block:65px}.eyebrow{font-size:9px;margin-bottom:22px}h2{font-size:37px}.service{grid-template-columns:22px 1fr 15px;gap:10px}.service h3{font-size:21px}.service p{font-size:13px}.service small{font-size:7px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{max-width:330px;margin-top:20px}.example-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.example-tab{font-size:12px}.example-tab span{display:block}.example-panel{padding:20px;min-height:430px}.example-top{font-size:7px;gap:10px}.example-ask{font-size:24px;min-height:85px;margin-block:24px}.flow{gap:5px;margin-block:25px}.flow>span{padding:13px 6px;font-size:8px}.flow i{font-size:12px}.example-result{gap:12px}.example-result h3{font-size:20px}.example-result p{font-size:12px}.steps{grid-template-columns:1fr;gap:28px;margin-top:36px}.steps h3{margin-top:17px;font-size:25px}.steps p{max-width:100%;margin-bottom:0}.studio{margin-top:45px;padding:25px;gap:23px}.studio h3{font-size:25px}.studio-symbol{font-size:72px}.faq{padding-top:0}.faq summary{font-size:13px}.contact-grid{gap:30px}.contact h2{font-size:45px}.contact h2 br{display:block}.contact-intro{font-size:13px}.form-row{grid-template-columns:1fr;gap:0}.direct-contact>a{font-size:15px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top p{order:3;max-width:100%;width:100%}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:20px}.footer-bottom details{order:3;max-width:100%;width:100%;text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
html[lang=ja] body{font-family:Inter,"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3{letter-spacing:-.025em;line-height:1.4;font-weight:600;word-break:normal;overflow-wrap:anywhere}
html[lang=ja] h1{font-size:clamp(44px,4.7vw,70px);line-height:1.45}
html[lang=ja] h2{font-size:clamp(30px,3.2vw,46px)}
html[lang=ja] .hero-intro{line-height:1.95;max-width:470px}
html[lang=ja] .eyebrow{letter-spacing:.07em}
html[lang=ja] .contact h2{font-size:clamp(30px,3.2vw,46px)}
html[lang=ja] .studio h3{font-size:26px}
html[lang=ja] .example-tab{font-size:14px}
html[lang=ja] .example-ask{font-size:23px;line-height:1.7}
html[lang=ja] .example-result p,html[lang=ja] .service p{line-height:1.9}
@media(max-width:800px){html[lang=ja] .hero{grid-template-columns:1fr}html[lang=ja] .hero-art{min-height:460px}html[lang=ja] .example-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0 20px}}
@media(max-width:580px){html[lang=ja] h1{font-size:clamp(35px,10.2vw,52px)}html[lang=ja] h2{font-size:29px}html[lang=ja] .contact h2{font-size:29px}html[lang=ja] .example-tabs{grid-template-columns:1fr 1fr}html[lang=ja] .example-tab{font-size:12px}html[lang=ja] .hero-art{min-height:420px}html[lang=ja] .example-ask{font-size:21px}html[lang=ja] .header-right{gap:9px}html[lang=ja] .languages{gap:5px}html[lang=ja] .promise-strip .wrap>span{font-size:8px;gap:8px}}
