:root{--bg:#090909;--ink:#eeede8;--red:#f32342;--muted:#a4a29f;--line:#ffffff26;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #fff;outline-offset:7px}::selection{background:var(--red);color:#fff}.wrap{width:min(1280px,88%);margin:auto}.skip{position:fixed;left:20px;top:-80px;padding:16px;background:var(--red);z-index:100}.skip:focus{top:12px}.progress{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--red);z-index:100}.header{height:106px;position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 5%;z-index:10}.brand{display:flex;align-items:center;gap:13px}.brand img{width:54px;height:54px;object-fit:contain}.brand>span{font:700 27px 'DM Sans',sans-serif;letter-spacing:.08em}.brand small{display:block;font:500 10px 'DM Sans',sans-serif;letter-spacing:.14em;margin-top:3px}.header nav{display:flex;align-items:center;gap:35px;font-size:14px}.header nav a:hover{color:var(--red)}.nav-contact{border:1px solid #ffffff50;padding:12px 20px;display:flex;gap:35px;align-items:center}.nav-contact span{font-size:23px}.hero{min-height:850px;height:100svh;max-height:1200px;position:relative;overflow:hidden;isolation:isolate}.hero-glow{position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 79% 48%,#b30d2880 0,transparent 48%),linear-gradient(125deg,#090909 36%,#210b12 100%)}.hero-glow:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 14%,#f42b4629 14.1% 14.22%,transparent 14.3% 20%);mask-image:linear-gradient(transparent,#000,transparent);transform:translateX(20%)}.hero-grid{position:absolute;z-index:-1;width:170%;height:75%;left:-15%;top:66%;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:70px 70px;transform:perspective(450px) rotateX(60deg);transform-origin:top;mask-image:linear-gradient(#000,transparent)}.hero-copy{position:absolute;left:6%;top:19%;z-index:3;pointer-events:none}.eyebrow{display:flex;align-items:center;gap:13px;font:500 13px 'DM Sans',sans-serif;letter-spacing:.13em}.eyebrow>span{width:24px;height:2px;background:var(--red)}.hero-word{font:700 clamp(140px,15vw,232px)/.79 'Barlow Condensed',sans-serif;letter-spacing:-.025em;margin-top:45px}.hero-word em{font-style:normal;color:var(--red)}.hero-jp{font-size:26px;font-weight:500;line-height:1.65;margin-top:35px;letter-spacing:.02em}.hero-audience{font-size:14px;color:var(--muted);margin-top:21px;max-width:345px;line-height:1.9}.hero-gallery{position:absolute;width:60%;height:69%;left:40%;top:19%;perspective:1200px;z-index:2}.stage{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .35s ease;touch-action:pan-y}.showcase-card{width:min(570px,75%);position:absolute;top:18%;left:50%;padding:0;border:1px solid #ffffff55;border-radius:10px;background:#191919;box-shadow:0 30px 70px #0008;overflow:hidden;transition:transform 1s cubic-bezier(.2,.75,.2,1),opacity .7s,filter .7s;transform-style:preserve-3d;text-align:left}.showcase-card:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#ffffff16,transparent 38%,#00000015);pointer-events:none}.showcase-card img{width:100%;aspect-ratio:1360/830;object-fit:cover}.browser-bar{height:27px;background:#222;display:flex;align-items:center;gap:5px;padding:0 11px;color:#ccc}.browser-bar i{width:4px;height:4px;border-radius:50%;background:#777}.browser-bar b{margin:auto;font:400 8px 'DM Sans',sans-serif;letter-spacing:.07em}.gallery-controls{position:absolute;bottom:7%;left:13%;display:flex;align-items:center;gap:22px;z-index:5}.circle{width:47px;height:47px;border-radius:50%;border:1px solid #ffffff50;background:transparent;font-size:22px;display:grid;place-items:center;transition:background .2s,border-color .2s}.circle:hover{background:var(--red);border-color:var(--red)}#gallery-count{font:500 18px 'DM Sans',sans-serif;letter-spacing:.05em}#gallery-count i{font-style:normal;color:#777;margin:0 7px}.gallery-hint{font:400 12px 'DM Sans',sans-serif;letter-spacing:.12em;color:var(--muted);margin-left:10px}.hero-bottom{position:absolute;bottom:32px;left:6%;right:6%;display:flex;justify-content:space-between;gap:20px;align-items:center;font:400 12px 'DM Sans',sans-serif;letter-spacing:.07em}.hero-bottom>a{display:flex;align-items:center;gap:16px}.scroll-line{height:30px;width:1px;display:block;background:#777;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;width:1px;height:13px;background:var(--red);animation:scroll-mark 1.6s infinite;top:0}.hero-bottom>span{color:#777}.hero-bottom button{border:0;background:none;font-size:12px;color:#b3b1ad;display:flex;gap:12px;align-items:center}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:20px 0;background:var(--red);color:#0b0b0b}.ticker>div{font:600 51px/.95 'Barlow Condensed',sans-serif;white-space:nowrap;animation:ticker 32s linear infinite;width:max-content;letter-spacing:.01em}.ticker span{margin:0 65px;color:#fff}.intro{padding:130px 0 145px;display:grid;grid-template-columns:1fr 1fr;column-gap:9%}.section-index{font:500 13px 'DM Sans','Noto Sans JP',sans-serif;letter-spacing:.08em;color:var(--muted)}.intro .section-index{grid-column:1/-1;margin-bottom:46px}.intro h2{font-size:39px;line-height:1.7;letter-spacing:.035em;font-weight:500}.intro>p{font-size:16px;color:#bab8b3;line-height:2.35;padding-top:7px}.work-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:60px}.work-heading h2{font:600 94px/.9 'Barlow Condensed',sans-serif;letter-spacing:-.02em;margin-top:26px}.work-heading em{font-style:normal;color:var(--red)}.work-heading>p{font-size:17px;line-height:2;padding-bottom:5px}.work-heading>p span{font-size:12px;color:var(--muted)}.work-panel{height:135svh;min-height:940px;position:relative;background:var(--panel-bg);color:var(--panel-ink)}.work-sticky{height:100svh;min-height:690px;position:sticky;top:0;overflow:hidden;isolation:isolate}.work-bg-word{position:absolute;top:-.1em;left:-.02em;font:700 clamp(190px,26vw,430px)/1 'Barlow Condensed',sans-serif;color:var(--panel-ink);opacity:.055;white-space:nowrap;z-index:-1;pointer-events:none}.work-inner{height:100%;width:min(1380px,88%);margin:auto;display:grid;grid-template-columns:32% 68%;align-items:center;gap:4%;position:relative}.work-details{position:relative;z-index:2}.work-number{font:500 14px 'DM Sans',sans-serif;letter-spacing:.08em;opacity:.6}.work-details h3{font:600 clamp(42px,4.5vw,74px)/.98 'Barlow Condensed',sans-serif;letter-spacing:-.025em;margin:25px 0}.work-details p{font-size:17px;line-height:1.9;white-space:pre-line}.work-details .work-kind{font-size:13px;opacity:.6;margin-top:23px}.work-open{border:1px solid currentColor;background:transparent;color:inherit;padding:15px 22px;display:flex;justify-content:space-between;gap:45px;margin-top:36px;font-size:14px;transition:background .2s,color .2s}.work-open:hover{background:var(--panel-ink);color:var(--panel-bg)}.work-art{position:relative;perspective:1100px;transform:translateY(calc(var(--p,0)*-55px))}.work-desktop{transform:rotateY(calc(-12deg + var(--p,0)*18deg)) rotateX(calc(5deg - var(--p,0)*7deg)) scale(calc(.9 + var(--p,0)*.1));transition:transform .12s linear;border-radius:8px;overflow:hidden;border:1px solid #8884;box-shadow:0 35px 60px #0003}.work-desktop img{width:100%;aspect-ratio:1360/830;object-fit:cover}.work-mobile{position:absolute;width:24%;top:36%;right:4%;border:7px solid #1d211e;border-radius:25px;background:#1d211e;overflow:hidden;box-shadow:0 20px 35px #0005;transform:translateY(calc(75px - var(--p,0)*140px)) rotate(calc(5deg - var(--p,0)*6deg));transition:transform .12s linear}.work-mobile img{width:100%;aspect-ratio:430/740;object-fit:cover}.work-label{position:absolute;bottom:42px;left:6%;right:6%;display:flex;justify-content:space-between;font:400 12px 'DM Sans','Noto Sans JP',sans-serif;opacity:.6;gap:20px}.plan{padding:130px 0}.plan-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-top:45px}.plan h2{font-size:36px;line-height:1.65;letter-spacing:.035em;font-weight:500}.plan-lead{color:#aaa8a3;line-height:2;font-size:16px;margin-top:28px}.price{margin:35px 0 26px;border-top:1px solid var(--line);padding-top:28px}.price>span{font-size:14px}.price strong{display:block;font:600 108px/.95 'Barlow Condensed',sans-serif;color:var(--red);margin-top:10px;letter-spacing:-.015em}.price small{font:400 16px 'Noto Sans JP',sans-serif;margin-left:10px}.included{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:14px}.included li:before{content:'＋';color:var(--red);margin-right:8px}.cost-note{font-size:14px;line-height:1.95;color:#9f9d99;margin-top:30px;border-top:1px solid var(--line);padding-top:23px}.cost-note p+p{margin-top:12px}.process{padding-top:12px}.process-heading{font-size:19px;padding-bottom:30px}.process article{display:flex;gap:27px;border-top:1px solid var(--line);padding:35px 0}.process article>span{font:500 35px 'Barlow Condensed',sans-serif;color:var(--red)}.process h3{font-size:19px;font-weight:500;margin:6px 0 12px}.process article p{font-size:16px;color:#9f9d99;line-height:1.9}.contact{background:var(--red);color:#090909;padding:82px 0 95px;position:relative;overflow:hidden}.contact .section-index{color:#440812}.contact h2{font:600 clamp(100px,15.5vw,235px)/.83 'Barlow Condensed',sans-serif;margin:40px 0 60px;letter-spacing:-.025em}.contact em{font-style:normal;color:#fff}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.contact-bottom>p{font-size:17px;line-height:1.9}.contact-link{font:500 42px 'DM Sans',sans-serif;border-bottom:1px solid #090909;display:flex;gap:70px;align-items:center;padding-bottom:12px}.contact-link span{font-size:55px;transition:transform .3s}.contact-link:hover span{transform:translate(5px,-5px)}.footer{padding:35px 0;display:flex;justify-content:space-between;gap:22px;font-size:12px;color:#8c8b85;line-height:1.8}.project-dialog{width:min(1140px,92%);max-height:90svh;padding:30px;background:#151515;color:var(--ink);border:1px solid #555;overscroll-behavior:contain}.project-dialog::backdrop{background:#000c;backdrop-filter:blur(12px)}.dialog-header{display:flex;justify-content:space-between;gap:20px;align-items:center}.dialog-header h2{font:600 42px 'Barlow Condensed',sans-serif;margin-top:5px}.view-tabs{display:flex;gap:20px;margin:24px 0}.view-tabs button{border:0;border-bottom:2px solid transparent;padding:10px 3px;background:none;font-size:14px}.view-tabs [aria-selected=true]{border-color:var(--red);color:#fff}.view-tabs [aria-selected=false]{color:#999}#preview-panel{background:#242424;max-height:58svh;overflow:auto}#dialog-image{margin:auto;width:100%}#preview-panel.mobile #dialog-image{width:min(430px,100%)}.dialog-note{font-size:12px;color:#aaa;line-height:1.8;margin:20px 0 12px}.dialog-cta{display:inline-block;background:var(--red);padding:12px 18px;font-size:14px}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1;transform:none}.motion-off .stage,.motion-off .work-art,.motion-off .work-desktop,.motion-off .work-mobile{transform:none!important}.motion-off .work-panel{height:auto;min-height:800px}.motion-off .work-sticky{position:relative;height:800px}.motion-off html{scroll-behavior:auto}@keyframes ticker{to{transform:translateX(-33.333%)}}@keyframes scroll-mark{to{transform:translateY(35px)}}
@media(min-width:1700px){.hero-copy{left:8%}.hero-gallery{left:40%;width:55%;top:22%}.showcase-card{width:690px}.hero-word{font-size:255px}.hero-jp{font-size:30px}}
@media(max-width:1000px){.hero{min-height:800px}.header{height:90px}.hero-copy{top:19%}.hero-word{font-size:155px}.hero-jp{font-size:24px}.hero-gallery{width:66%;left:37%;top:23%}.showcase-card{width:82%;top:24%}.gallery-controls{left:16%;bottom:14%;gap:14px}.gallery-hint{display:none}.hero-audience{max-width:260px;font-size:13px}.intro{column-gap:6%;padding:95px 0}.intro h2{font-size:32px}.work-heading h2{font-size:78px}.work-inner{grid-template-columns:32% 66%;gap:4%}.work-details p{font-size:16px}.work-details h3{font-size:51px}.plan-layout{gap:7%}.included{grid-template-columns:1fr}.contact-link{font-size:34px;gap:35px}.contact-bottom>p{font-size:16px}.footer{flex-wrap:wrap}}
@media(max-width:700px){html{scroll-padding-top:30px}.wrap{width:88%}.header{height:83px;padding:0 6%}.brand{gap:8px}.brand img{width:43px;height:43px}.brand>span{font-size:22px}.brand small{font-size:8px;letter-spacing:.08em}.header nav{gap:16px;font-size:13px}.header nav>a:nth-child(2){display:none}.nav-contact{padding:8px 11px;gap:10px;font-size:12px}.nav-contact span{font-size:18px}.hero{height:920px;min-height:0;max-height:none}.hero-copy{left:7%;top:122px;width:86%}.eyebrow{font-size:11px;gap:10px}.hero-word{font-size:142px;line-height:.76;margin-top:28px}.hero-word br{display:none}.hero-word em{display:block;position:relative;margin-top:5px}.hero-jp{position:absolute;left:52%;top:111px;font-size:19px;line-height:1.7}.hero-audience{font-size:12px;max-width:none;margin-top:26px}.hero-gallery{top:375px;left:0;width:100%;height:470px}.showcase-card{width:76%;max-width:460px;top:70px}.browser-bar{height:23px}.browser-bar b{font-size:7px}.gallery-controls{left:50%;bottom:13px;transform:translateX(-50%);gap:24px;white-space:nowrap}.circle{width:44px;height:44px}.hero-bottom{bottom:25px;font-size:10px}.hero-bottom>span{display:none}.hero-bottom button{font-size:12px}.hero-glow{background:radial-gradient(ellipse at 50% 62%,#b20b2b88,transparent 65%),#0b090a}.hero-glow:after{transform:translateX(0)}.hero-grid{top:75%}.ticker{padding:16px 0}.ticker>div{font-size:40px}.ticker span{margin:0 35px}.intro{padding:75px 0 85px;grid-template-columns:1fr;gap:26px}.intro .section-index{margin-bottom:0}.intro h2{font-size:29px;line-height:1.7}.intro>p{font-size:16px;line-height:2.1}.section-index{font-size:12px}.work-heading{display:block;padding-bottom:40px}.work-heading h2{font-size:71px;line-height:.88}.work-heading>p{font-size:16px;margin-top:27px}.work-heading>p span{font-size:12px}.work-panel{height:125svh;min-height:920px}.work-sticky{height:100svh;min-height:745px}.work-inner{display:block;width:88%;padding-top:38px}.work-details h3{font-size:44px;margin:15px 0 12px;max-width:70%}.work-details>p{font-size:16px;line-height:1.8}.work-details .work-kind{font-size:12px;margin-top:12px}.work-number{font-size:12px}.work-open{position:absolute;right:0;top:20px;font-size:12px;padding:10px 12px;gap:12px;margin:0}.work-art{margin-top:30px;width:94%;transform:translateY(calc(var(--p,0)*-12px))}.work-desktop{transform:rotateY(calc(-9deg + var(--p,0)*14deg)) rotateX(3deg)}.work-mobile{width:30%;border-width:4px;border-radius:15px;right:-5%;top:41%;transform:translateY(calc(20px - var(--p,0)*30px)) rotate(calc(4deg - var(--p,0)*5deg))}.work-bg-word{font-size:210px;top:20%}.work-label{bottom:24px;font-size:10px;gap:15px}.work-label>span:last-child{display:none}.plan{padding:75px 0}.plan-layout{grid-template-columns:1fr;gap:55px;margin-top:28px}.plan h2{font-size:29px}.plan-lead{font-size:16px;margin-top:22px}.price strong{font-size:100px}.included{grid-template-columns:1fr;font-size:14px;gap:13px}.cost-note{font-size:14px}.process-heading{font-size:18px;padding-bottom:22px}.process article{padding:25px 0;gap:25px}.process h3{font-size:18px}.process article p{font-size:16px}.contact{padding:60px 0 62px}.contact h2{font-size:101px;margin:34px 0 38px}.contact-bottom{display:block}.contact-bottom>p{font-size:16px}.contact-link{font-size:31px;margin-top:32px;justify-content:space-between;gap:20px;max-width:380px}.contact-link span{font-size:43px}.footer{padding:30px 0 35px;gap:13px;font-size:12px}.footer>span:nth-child(2){order:3;width:100%;font-size:12px}.footer>a{margin-left:auto}.project-dialog{padding:20px;width:94%;max-height:92svh}.dialog-header h2{font-size:33px}.dialog-header .section-index{font-size:11px}.dialog-header .circle{width:39px;height:39px;flex-shrink:0}#preview-panel{max-height:55svh}.view-tabs{gap:25px;margin:17px 0}.dialog-note{font-size:12px}.motion-off .work-panel{min-height:780px}.motion-off .work-sticky{height:780px}}
@media(max-width:370px){.brand small{display:none}.header nav{gap:10px}.hero-word{font-size:132px}.hero-jp{font-size:17px;left:54%}.hero-audience{max-width:280px}.hero-gallery{top:391px}.hero{height:890px}.hero-gallery{height:415px}.work-heading h2{font-size:64px}.work-details h3{font-size:38px}.work-open{font-size:11px;gap:6px}.contact h2{font-size:87px}.contact-link{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
/* Keep the Japanese message beside BE and clear of SEEN on phones. */
@media(max-width:700px){.hero-jp{left:53%;top:58px;font-size:16px;line-height:1.85;margin-top:0;letter-spacing:0;width:47%;white-space:nowrap}}
@media(max-width:370px){.hero-jp{left:54%;font-size:14px}}

/* Email and Instagram contact options */
.contact-channels{display:grid;gap:22px;max-width:100%;min-width:0}
.contact-email{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;row-gap:5px;border-bottom:1px solid #090909;padding-bottom:12px}
.contact-email-label{grid-column:1/-1;font:600 11px "DM Sans",sans-serif;letter-spacing:.15em}
.contact-email-address{font:500 clamp(17px,2vw,23px)/1.5 "DM Sans",sans-serif;overflow-wrap:anywhere}
.contact-email-arrow{font-size:27px;align-self:center;transition:transform .3s}
.contact-email:hover .contact-email-arrow{transform:translate(4px,-4px)}
@media(max-width:700px){.contact-channels{margin-top:32px;max-width:380px}.contact-channels .contact-link{margin-top:0}.contact-email{column-gap:12px}}

/* Search-friendly service heading and readable FAQ */
.hero-audience{font-size:17px;font-weight:500;color:var(--ink);max-width:380px}
.faq{padding:0 0 120px}.faq-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-top:40px}.faq h2{font-size:32px;line-height:1.7;font-weight:500}.faq-intro{font-size:16px;line-height:2;color:var(--muted);margin-top:22px}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:24px 0}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:16px;font-weight:500;line-height:1.9}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';flex-shrink:0;color:var(--red);font:400 27px 'DM Sans',sans-serif}.faq details[open] summary::after{content:'−'}.faq details p{font-size:16px;color:#bab8b3;line-height:2;margin-top:18px}.faq summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}
@media(max-width:1000px){.faq-layout{gap:7%}.faq h2{font-size:29px}}
@media(max-width:700px){.hero-audience{font-size:15px;max-width:none}.faq{padding-bottom:75px}.faq-layout{grid-template-columns:1fr;gap:28px;margin-top:25px}.faq h2{font-size:27px}.faq-intro{margin-top:18px}.faq details{padding:21px 0}}
