@import url('assets/fonts/noto-sans-jp.css');
:root{--orange:#fa4d18;--ink:#191919;--paper:#f7f7f3;--line:#d1d1cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Noto Sans JP',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #275dd9;outline-offset:6px}.skip{position:absolute;top:-80px;padding:16px;background:white;z-index:10}.skip:focus{top:0}header{padding:24px 4%;display:flex;align-items:center;justify-content:space-between;background:var(--paper)}.wordmark{font-family:Arial,sans-serif;font-size:25px;line-height:.88;font-weight:900;letter-spacing:-1.2px;position:relative}.wordmark span{font-size:12px;position:absolute;top:1px;right:-15px}nav{display:flex;gap:36px;align-items:center;font-size:14px;font-weight:700}.nav-contact{background:var(--ink);color:white;padding:15px 24px}.nav-contact span{margin-left:34px}.hero{background:var(--orange);padding:28px 5% 0;overflow:hidden}.hero-top,.eyebrow{display:flex;justify-content:space-between;gap:20px;font-size:13px;font-weight:700;letter-spacing:.055em}.hero-top{border-top:1px solid #19191970;padding-top:19px}.hero h1{font-size:clamp(64px,8.1vw,132px);font-weight:900;line-height:1.25;letter-spacing:-.075em;margin:58px 0 30px}.period{color:var(--paper)}.hero-bottom{display:flex;justify-content:space-between;align-items:end}.hero-bottom p{font-size:18px;line-height:1.95;font-weight:700}.round-link{width:66px;height:66px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:29px;transition:background .2s}.round-link:hover{background:var(--paper)}.hero-type{font-family:Arial,sans-serif;font-weight:900;font-size:clamp(62px,13.2vw,220px);letter-spacing:-.075em;line-height:.88;white-space:nowrap;margin-top:64px;transform:translateY(.11em)}.section{padding:92px 6%}.eyebrow{padding-bottom:28px;border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;margin-top:68px}h2{font-size:clamp(32px,3.8vw,59px);line-height:1.6;letter-spacing:-.055em;margin:0;font-weight:900}.intro-copy{max-width:490px;padding-top:8px}.intro-copy p{font-size:17px;line-height:2.1;margin:0 0 26px}.strong{font-weight:700}.visual{height:580px;position:relative;background:#34342f;overflow:hidden}.visual img{width:100%;height:100%;object-fit:cover;filter:brightness(.58)}.visual-overlay{position:absolute;inset:0;padding:60px 6%;display:flex;justify-content:space-between;align-items:end;color:white}.visual-overlay>span{font-family:Arial,sans-serif;font-size:clamp(44px,6.8vw,108px);font-weight:900;letter-spacing:-.055em;line-height:.98}.visual-overlay p{font-size:22px;line-height:1.8;font-weight:700}.image-note{position:absolute;top:25px;right:6%;font-size:12px;color:white;letter-spacing:.06em}.section-title{display:flex;justify-content:space-between;align-items:end;margin:54px 0}.section-title p{font-size:16px;line-height:2}.service{border-top:1px solid var(--line);padding:35px 0;display:grid;grid-template-columns:90px 1fr 60px;gap:20px}.service:last-child{border-bottom:1px solid var(--line)}.service-index{font-family:Arial;font-size:17px;padding-top:8px}.service h3{font-family:Arial,'Noto Sans JP',sans-serif;font-size:42px;letter-spacing:-.04em;margin:0;display:flex;align-items:center;gap:35px}.service h3 span{font-size:18px;letter-spacing:0}.service p{max-width:690px;font-size:16px;line-height:1.9;margin:16px 0}.tags{font-size:13px;color:#595954}.service-symbol{font-size:40px;color:var(--orange)}.brands{background:var(--ink);color:var(--paper)}.brands .eyebrow{border-color:#555}.brand-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:55px;gap:7%}.brand-grid article+article{border-left:1px solid #555;padding-left:13%}.brand-category{font:13px Arial;letter-spacing:.1em;color:#fc784f}.brand-grid h3{font-size:clamp(28px,3.2vw,48px);letter-spacing:-.035em;margin:24px 0}.brand-grid p{font-size:16px;line-height:2;color:#cececa}.process h2{margin:52px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5%}.steps article{border-top:2px solid var(--ink);padding-top:25px}.steps article>span{font-family:Arial;font-size:13px;letter-spacing:.06em}.steps h3{font-size:24px;margin:22px 0 15px}.steps p{font-size:16px;line-height:1.9}.contact{background:var(--orange)}.contact .eyebrow{border-color:#19191966}.contact h2{font-size:clamp(39px,5.9vw,88px);line-height:1.45;margin:50px 0 20px}.contact>p{font-size:17px;line-height:1.9}.contact-actions{display:flex;align-items:center;gap:35px;margin-top:38px}.contact button{background:var(--ink);color:white;padding:23px 28px;border:0;text-align:left;cursor:pointer;font-size:16px;font-weight:700}.contact button span{margin-left:50px}.contact button:hover{background:#333}.contact-actions>a{font-size:15px;border-bottom:1px solid;padding:12px 0}.copy-status{min-height:24px;font-size:14px!important}.contact details{max-width:660px}.contact summary{font-size:14px;cursor:pointer}.contact pre{font-family:inherit;white-space:pre-wrap;background:#ffffff33;padding:20px;font-size:14px;line-height:1.9}footer{display:flex;align-items:center;gap:7%;padding:44px 5%;}footer>div{font-size:14px;line-height:1.9}footer>div span{font-size:12px;color:#64645f}footer small{margin-left:auto;font-size:12px}.back-top{font-size:26px} @media(min-width:1600px){.section{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}@media(max-width:760px){header{padding:23px 6%}.wordmark{font-size:20px}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{padding:12px 16px;font-size:13px}.nav-contact span{margin-left:14px}.hero{padding:23px 6% 0}.hero-top{font-size:10px;letter-spacing:0;gap:12px}.hero h1{font-size:clamp(50px,12vw,88px);margin:58px 0 34px;line-height:1.4}.hero-bottom p{font-size:14px}.round-link{width:48px;height:48px;font-size:23px;flex-shrink:0}.hero-type{font-size:13.3vw;margin-top:64px}.section{padding:62px 6%}.eyebrow{font-size:11px;gap:12px;padding-bottom:22px}.intro-grid{grid-template-columns:1fr;gap:28px;margin-top:36px}.intro-copy p{font-size:16px;line-height:2}.visual{height:420px}.visual-overlay{padding:40px 6%;display:block;align-content:end}.visual-overlay>span{font-size:13vw}.visual-overlay p{font-size:16px;margin-top:26px}.section-title{display:block;margin:34px 0}.section-title p{margin-top:25px}.service{grid-template-columns:26px 1fr 20px;gap:10px;padding:27px 0}.service-index{font-size:13px}.service h3{font-size:32px;display:block}.service h3 span{display:block;font-family:'Noto Sans JP',sans-serif;font-size:16px;margin-top:8px}.service-symbol{font-size:24px}.service p{font-size:15px}.tags{font-size:12px;line-height:1.8}.brand-grid{grid-template-columns:1fr;margin-top:35px;gap:26px}.brand-grid article+article{padding:32px 0 0;border-left:0;border-top:1px solid #555}.brand-grid h3{font-size:32px}.steps{grid-template-columns:1fr;gap:28px}.steps h3{margin:15px 0}.process h2{margin:35px 0}.contact-actions{display:block}.contact button{width:100%;padding:22px 18px;font-size:14px;display:flex;justify-content:space-between;gap:12px}.contact button span{margin:0}.contact-actions>a{display:inline-block;margin-top:20px}footer{flex-wrap:wrap;gap:26px;justify-content:space-between}footer>div{font-size:12px}footer small{margin:0}.contact h2{font-size:10vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.visual{background:#20201e;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:72px 72px}.visual-overlay>span{color:#fa4d18}
.hero{perspective:1100px;position:relative}.hero h1{transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transform-origin:30% 60%;text-shadow:1px 1px #be3510,2px 3px #be3510,4px 6px #be3510,6px 9px #be3510,9px 16px 25px #70200b38;transition:transform .18s ease-out}.hero-gallery{display:inline-flex;align-items:center;gap:48px;padding:16px 0 9px;border-bottom:1px solid;margin-top:14px;font-size:15px;font-weight:700}.hero-type{will-change:transform}.depth-photo{transform:scale(1.12) translateY(var(--photo-y,0px));will-change:transform}.visual-overlay>span{color:white}.image-note{font-size:14px;border-bottom:1px solid #ffffff88;padding-bottom:6px}.works-entry{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;overflow:hidden}.works-entry h2{margin-top:22px}.works-entry p{font-size:16px;line-height:1.8}.outline-link{display:inline-block;border-bottom:1px solid;padding:16px 0;font-size:16px}.stack-preview{height:370px;display:block;position:relative;perspective:1000px}.stack-preview img{position:absolute;object-fit:cover;width:78%;height:82%;box-shadow:20px 25px 45px #0003;transition:transform .7s ease}.stack-preview img:first-child{left:0;top:0;transform:rotateY(18deg) rotateZ(-9deg)}.stack-preview img:last-child{right:0;bottom:0;transform:rotateY(-16deg) rotateZ(6deg)}.stack-preview:hover img:first-child{transform:translateX(-14px) rotateY(24deg) rotateZ(-12deg)}.stack-preview:hover img:last-child{transform:translateX(12px) rotateY(-8deg) rotateZ(3deg)}.brand-link{display:inline-block;font-size:14px;color:#ff835d;padding:12px 0;border-bottom:1px solid #ff835d80}.reveal-ready{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}@media(max-width:760px){nav .gallery-nav{display:block!important;font-size:12px;margin-right:15px}.hero-gallery{font-size:14px}.works-entry{grid-template-columns:1fr;gap:40px}.stack-preview{height:320px}.hero h1{text-shadow:1px 2px #be3510,3px 5px #be3510,5px 10px 15px #70200b38}}@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.hero h1,.hero-type,.depth-photo{transform:none!important}.stack-preview img{transition:none}}
