@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--bg:#0b101a;--panel:#111925;--ink:#eeeae2;--muted:#a6abb5;--gold:#c6ae80;--line:#ffffff26;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--ink);font:14px/2 'Noto Sans JP',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{background:none;border:0}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:'Noto Serif JP',serif;font-weight:400}h2{font-size:clamp(28px,3.2vw,48px);line-height:1.7;letter-spacing:.08em}.skip{position:fixed;top:-100px;z-index:100;padding:12px;background:var(--bg)}.skip:focus{top:0}.header{display:flex;justify-content:space-between;align-items:center;padding:30px 5%;position:relative;z-index:10;border-bottom:1px solid var(--line)}.hero-header{position:absolute;top:0;width:100%}.wordmark{font:500 39px/.95 'Cormorant Garamond',serif;letter-spacing:-2px;display:inline-block}.wordmark span{color:var(--gold)}.wordmark small{display:block;font:8px/1.5 'Noto Sans JP',sans-serif;letter-spacing:2.8px;margin-top:9px}.header nav{display:flex;gap:35px;font-size:10px;letter-spacing:2px}.header nav a{padding:10px 0}.header nav a:hover{color:var(--gold)}.menu-toggle{display:none}.hero{height:100svh;min-height:720px;max-height:1100px;position:relative;isolation:isolate;overflow:hidden}.hero-poster,.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.hero-video{opacity:0;transition:opacity 1s}.hero-video.ready{opacity:1}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(4,9,17,.7),rgba(4,9,17,.08) 85%),linear-gradient(0deg,#0b101a 0%,#0b101a25 70%,#0b101a90 100%)}.hero-content{position:absolute;left:8%;bottom:135px}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);line-height:1.8}.hero h1{font-size:clamp(40px,4.8vw,74px);line-height:1.55;letter-spacing:.1em;margin:22px 0}.hero-sub{color:#e3ded6;letter-spacing:.13em;font-size:13px}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:15px 25px;font-size:12px;letter-spacing:.08em;border:1px solid var(--gold)}.gold{background:var(--gold);color:#111925}.button:hover{background:#e0c99f}.film-link{font-size:10px;letter-spacing:2px;padding:0;display:flex;align-items:center;gap:12px}.film-link i{font-style:normal;font-size:20px}.film-link span{color:#b8b7b7;font-size:9px}.hero-foot{position:absolute;bottom:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:2px;color:#d2d0cd}.hero-foot button{font-size:10px;letter-spacing:.1em}.section{padding:110px 8%;max-width:1800px;margin:auto}.section-label{display:flex;align-items:center;gap:25px;color:var(--gold);font-size:10px;letter-spacing:2px;margin-bottom:60px}.section-label i{height:1px;background:var(--line);flex:1}.vision-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.vision-layout h2{font-size:clamp(32px,3.5vw,52px)}.body-copy{font-size:13px;line-height:2.5;color:#c1c5cd}.body-copy p+p{margin-top:24px}.vision-sign{font:italic 54px/1.1 'Cormorant Garamond',serif;color:#c6ae804d;text-align:right;margin-top:40px}.projects{padding-top:40px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-heading h2{margin-top:12px}.section-heading>p{font-size:12px;color:var(--muted)}.line-tag{font-size:9px;letter-spacing:2px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:9px 14px;color:var(--gold);white-space:nowrap}.project-cover{display:block;position:relative;aspect-ratio:1.95;overflow:hidden}.project-cover img{height:100%;transition:transform 1s}.project-cover:hover img{transform:scale(1.025)}.project-cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,#080e1bed,transparent 90%),linear-gradient(90deg,#0b101a55,transparent)}.project-title{position:absolute;left:5%;bottom:7%}.project-title p{font-size:9px;letter-spacing:3px;color:#e1cfa7}.project-title h3{font:500 clamp(48px,6vw,100px)/.85 'Cormorant Garamond',serif;letter-spacing:2px;margin-top:20px}.project-title em{font-style:normal;color:#d8c096}.round-arrow{position:absolute;right:5%;bottom:8%;border:1px solid #ffffff88;border-radius:50%;width:58px;height:58px;display:grid;place-items:center;font-size:25px}.project-description{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:34px}.project-description h3{font:400 24px/1.7 'Noto Serif JP',serif;letter-spacing:.06em}.project-caption{color:var(--muted);font-size:12px;margin-top:8px}.project-description>div>p:not(.project-caption){font-size:12px;color:#b5bbc6}.text-link{display:inline-block;font-size:12px;letter-spacing:.06em;border-bottom:1px solid var(--gold);padding:8px 0;margin:12px 0}.project-description small{display:block;font-size:10px;color:var(--muted)}.film-section{position:relative;height:520px;display:grid;place-items:center;isolation:isolate}.film-section>img,.film-overlay{position:absolute;inset:0;height:100%;z-index:-2}.film-overlay{z-index:-1;background:#07101f85}.film-content{text-align:center}.film-content h2{margin-top:18px}.play-film{width:76px;height:76px;border:1px solid #dfd4bb;border-radius:50%;font-size:30px;margin:28px auto;display:block;padding-left:9px}.play-film:hover{background:#c6ae8033}.film-content>p:last-child{font-size:9px;letter-spacing:2px}.business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.business-image{position:relative;aspect-ratio:4/3;overflow:hidden;margin-bottom:25px}.business-image img{height:100%}.business-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#07101f77,transparent)}.business-image span{position:absolute;z-index:1;bottom:5px;left:17px;font:40px/1.5 'Cormorant Garamond',serif;color:#f1dfb9}.business-grid h3{font:400 23px/1.6 'Noto Serif JP',serif;margin:10px 0 15px}.business-grid article>p:last-child{color:var(--muted);font-size:12px;line-height:2.2}.image-note{font-size:9px;color:#7f8794;text-align:right;margin-top:28px}.company{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:8%}.company h2{margin-top:15px}.company-symbol{font:120px/1 'Cormorant Garamond',serif;color:#c6ae8026;margin-top:45px;letter-spacing:-30px}.company-symbol span{color:#c6ae804d}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:125px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);font-size:12px}.company dt{color:var(--muted)}.company dd{margin:0}.contact{background:#141d2a;max-width:none}.contact-main{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;margin-top:30px;align-items:center}.contact h2{font-size:46px}.contact-main p{color:var(--muted);font-size:12px}.contact-email{font:32px/1.5 'Cormorant Garamond',serif;display:block;border-bottom:1px solid #c6ae8077;padding:18px 0;margin-bottom:15px}.contact-email span{float:right;color:var(--gold)}.copy-email{font-size:10px;padding:0;color:var(--gold)}#copy-status{display:block;font-size:10px}footer{display:flex;padding:50px 5%;gap:40px;align-items:center}footer>div{display:flex;flex:1;justify-content:end;gap:25px;font-size:8px;letter-spacing:1px;color:var(--muted)}.back-top{font-size:24px;border:1px solid var(--line);width:45px;height:45px;text-align:center}.mobile-only{display:none}dialog{border:1px solid #c6ae8066;background:#0b101a;color:var(--ink);width:min(1100px,94vw);padding:20px;max-height:94svh}dialog::backdrop{background:#000d;backdrop-filter:blur(10px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.dialog-heading h2{font:22px 'Cormorant Garamond',serif;letter-spacing:1px}.dialog-heading h2 span{font:9px 'Noto Sans JP',sans-serif;margin-left:18px}.dialog-heading button{font-size:11px}dialog video{display:block;width:100%;max-height:75svh}dialog>p{font-size:10px;color:var(--muted);margin-top:12px}.project-hero{position:relative;height:90svh;min-height:620px;display:flex;align-items:end;isolation:isolate;text-align:center;justify-content:center;padding:100px 20px 75px}.project-hero>img{position:absolute;inset:0;height:100%;z-index:-2}.project-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0b101a 0%,#0b101a33 85%,#0b101a99)}.project-hero h1{font:500 clamp(65px,10vw,145px)/.8 'Cormorant Garamond',serif;letter-spacing:.03em;margin:30px 0;color:#eee7da}.project-hero h1 em{font-style:normal;color:#ddc69b}.project-hero .jp-title{font-size:14px;letter-spacing:.3em;margin:30px 0}.project-intro{text-align:center;max-width:1000px}.project-intro>p{color:var(--muted);font-size:13px;margin:28px 0;line-height:2.5}.gallery{padding-top:0}.gallery figure{margin:0 0 65px}.gallery figure>img{aspect-ratio:16/9}.gallery figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.gallery figcaption h3{font:400 20px 'Noto Serif JP',serif}.gallery figcaption span{font-size:9px;letter-spacing:2px;color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.release{text-align:center;border-top:1px solid var(--line)}.release p{color:var(--muted);margin:20px 0 30px;font-size:13px}.legal{max-width:1000px;min-height:70vh}.legal h1{font-size:38px;margin-bottom:40px}.legal h2{font-size:20px;margin:35px 0 10px}.legal p,.legal li{color:var(--muted);font-size:13px}
@media(min-width:1800px){.contact{padding-left:calc((100% - 1512px)/2);padding-right:calc((100% - 1512px)/2)}}
@media(max-width:760px){.header{padding:22px 6%}.wordmark{font-size:34px}.wordmark small{font-size:7px;letter-spacing:2.3px}.menu-toggle{display:block;font-size:10px;letter-spacing:2px;padding:8px 0}.menu-toggle span{margin-left:12px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0b101af7;padding:25px 6%;flex-direction:column;gap:10px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.hero{min-height:730px;max-height:1000px}.hero-poster{object-position:60%}.hero-shade{background:linear-gradient(0deg,#0b101a 0%,#0b101a44 80%,#0b101a88),linear-gradient(90deg,#0b101a55,transparent)}.hero-content{left:7%;right:7%;bottom:115px}.eyebrow{font-size:8px;letter-spacing:2px}.hero h1{font-size:36px;letter-spacing:.07em;margin:20px 0}.hero-sub{font-size:10px;letter-spacing:.08em}.hero-actions{flex-direction:column;align-items:start;gap:22px;margin-top:28px}.button{font-size:11px;padding:13px 20px}.hero-foot{bottom:25px;left:7%;right:7%;letter-spacing:1px;font-size:7px}.hero-foot>span{display:none}.hero-foot button{font-size:9px}.section{padding:70px 7%}.section-label{font-size:8px;gap:14px;margin-bottom:35px;letter-spacing:1px}.vision-layout{grid-template-columns:1fr;gap:28px}.vision-layout h2{font-size:32px}.body-copy{font-size:12px}.vision-sign{font-size:38px;margin-top:35px}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:30px}.section-heading h2{font-size:28px}.line-tag{font-size:8px}.projects{padding-top:15px}.project-cover{aspect-ratio:.95}.project-cover img{object-position:54%}.project-title{left:7%;bottom:8%}.project-title h3{font-size:54px}.project-title p{font-size:7px;letter-spacing:1px}.round-arrow{width:40px;height:40px;font-size:20px;right:7%;bottom:8%}.project-description{grid-template-columns:1fr;gap:22px;padding-top:25px}.project-description h3{font-size:22px}.project-description small{font-size:9px}.film-section{height:440px}.film-content h2{font-size:28px}.film-content>p:last-child{font-size:7px;letter-spacing:1px}.business-grid{grid-template-columns:1fr;gap:45px}.business-image{aspect-ratio:1.5;margin-bottom:20px}.business-grid h3{font-size:22px;margin:8px 0 12px}.company{grid-template-columns:1fr;gap:30px}.company-symbol{display:none}.company dl>div{grid-template-columns:85px 1fr;gap:10px;font-size:11px;padding:20px 0}.contact-main{grid-template-columns:1fr;gap:25px;margin-top:20px}.contact h2{font-size:36px}.contact-main p{font-size:10px}.contact-email{font-size:25px;white-space:nowrap}footer{padding:35px 7%;gap:25px;flex-wrap:wrap}footer>div{flex-basis:100%;order:3;justify-content:start;gap:15px;flex-wrap:wrap;font-size:7px}.back-top{margin-left:auto}.mobile-only{display:block}.dialog-heading h2{font-size:17px}.dialog-heading h2 span{display:none}dialog{padding:12px}dialog>p{font-size:9px}.project-hero{min-height:630px;padding-bottom:60px;height:85svh}.project-hero h1{font-size:65px}.project-hero .jp-title{font-size:12px;letter-spacing:.16em}.project-intro h2{font-size:27px}.project-intro>p{font-size:12px}.gallery{padding-top:0}.gallery figure{margin-bottom:35px}.gallery-grid{grid-template-columns:1fr;gap:0}.gallery figcaption{display:block;padding:14px 0}.gallery figcaption h3{font-size:17px;margin-bottom:5px}.gallery figcaption span{font-size:8px}.release h2{font-size:25px}.legal h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
