:root{--bg:#160f12;--ink:#f2e8d9;--gold:#c5a473;--muted:#bcafa4;--red:#6c2032;--line:rgba(197,164,115,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;line-height:2;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:active,.button:active{transform:translateY(2px)}:focus-visible{outline:2px solid #edc58a;outline-offset:5px}img{display:block;width:100%;height:auto}button{border:0}header{height:76px;position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:linear-gradient(#140d10d9,transparent)}.brand{font-size:22px;letter-spacing:.16em;white-space:nowrap}.brand span{font-family:Georgia,serif;font-size:11px;color:var(--gold);margin-left:10px;letter-spacing:.18em}nav{display:flex;gap:28px;font-size:14px}nav a{border-bottom:1px solid transparent}nav a:hover{border-color:var(--gold)}#menu-toggle{display:none;background:none;padding:10px}.skip{position:absolute;top:-100px;z-index:40;background:var(--bg);padding:10px}.skip:focus{top:0}.hero{min-height:830px;height:100svh;max-height:1080px;position:relative;display:grid;grid-template-columns:1fr min(54vh,610px) 8%;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}.hero-atmosphere{position:absolute;inset:0;background:linear-gradient(90deg,#160f12e6,#160f12b3 45%,#160f1280),url('assets/street.jpg') center/cover;opacity:.65}.poster{grid-column:2;margin:30px 0 0;position:relative;align-self:center;box-shadow:0 0 90px 30px #140c11;animation:appear 1.3s ease both}.poster img{max-height:calc(100svh - 115px);width:auto;max-width:100%;margin:auto;object-fit:contain}.hero-aside{position:relative;padding:0 12% 120px 15%;animation:appear 1.5s ease both}.eyebrow{font:12px/1.6 Georgia,serif;letter-spacing:.23em;color:var(--gold);display:block}.hero-aside p{font-size:clamp(24px,2.7vw,42px);line-height:1.9;letter-spacing:.15em}.hero-seal{display:inline-block;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 26px;color:var(--gold);letter-spacing:.25em}.hero-invite{position:absolute;left:6%;bottom:12%;width:36%;text-align:center}.hero-invite>span{font-size:14px;display:block;margin-bottom:18px;letter-spacing:.13em}.button{display:flex;align-items:center;justify-content:center;gap:20px;background:linear-gradient(110deg,#702537,#431822);border:1px solid #be9761;padding:18px 22px;font-size:16px;letter-spacing:.06em;transition:background .25s,transform .2s}.button:hover{background:#7a2b40}.button b{font-weight:400;color:var(--gold)}.hero-side-label{position:absolute;right:25px;writing-mode:vertical-rl;font:12px Georgia;letter-spacing:.22em;color:var(--gold)}.section{padding:112px max(7%,calc((100% - 1160px)/2));scroll-margin-top:10px}.section-heading{margin-bottom:48px}.section-heading h2{font-weight:400;font-size:clamp(28px,3.6vw,44px);letter-spacing:.13em;line-height:1.8;margin:18px 0}.section-heading p{color:var(--muted);font-size:16px}.intro{display:grid;grid-template-columns:1.15fr 1fr;column-gap:9%;background:radial-gradient(ellipse at left,#38212c70,transparent 65%)}.intro .section-heading{grid-column:1}.intro-scene{grid-column:1;align-self:start}.intro-scene img{aspect-ratio:4/5;object-fit:cover;object-position:43% center}.intro-scene span{display:block;font-size:14px;color:var(--gold);margin-top:18px;letter-spacing:.1em}.intro-copy{grid-column:2;grid-row:1/3;padding-top:60px}.intro-copy p{margin:0 0 28px;line-height:2.6;letter-spacing:.07em}.intro-copy .highlight{font-size:25px;color:var(--gold);margin:38px 0}.character{background:#e9dfcf;color:#302027;position:relative}.character .eyebrow{color:#775735}.character-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:7%;align-items:center}.character figure{margin:0}.character figure img{aspect-ratio:1/1.05;object-fit:cover;object-position:61% center}.character figcaption{font-size:14px;margin-top:18px;letter-spacing:.1em}.profile h3{font-size:38px;font-weight:400;letter-spacing:.12em;margin:12px 0 0}.profile h3 span{white-space:nowrap}.reading{font-size:14px;margin-top:0;letter-spacing:.14em}.profile dl{font-size:14px;border-top:1px solid #ad977f;margin:26px 0}.profile dl div{display:flex;gap:24px;padding:9px 0;border-bottom:1px solid #c9bbaa}.profile dt{width:44px;flex-shrink:0}.profile dd{margin:0}.profile p{line-height:2.1}.profile-question{color:#792a40;border-left:2px solid #792a40;padding-left:17px}.experience{background:linear-gradient(160deg,#27171e,#160f12)}.experience-image{margin-bottom:36px}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}details{border:1px solid var(--line);background:#23181d}summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:20px;padding:24px 20px;font-size:22px}summary::-webkit-details-marker{display:none}summary small{display:block;font:10px Georgia;letter-spacing:.14em;color:var(--gold);margin-bottom:6px}summary b{font-size:20px;font-weight:400;margin-left:auto;color:var(--gold)}.card-no{font-size:25px;color:var(--gold)}details[open] summary b{transform:rotate(45deg)}details p{font-size:16px;padding:0 22px 22px;margin:0;color:#dbcec5;line-height:2}.gallery{background:#120e11}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 26px}.gallery-item{padding:0;background:none;text-align:left;align-self:start}.gallery-item img{transition:filter .3s}.gallery-item:hover img{filter:brightness(1.12)}.gallery-item.large{grid-column:1/-1}.gallery-item>span{display:flex;gap:18px;color:var(--gold);padding:15px 0;border-bottom:1px solid var(--line);font:12px/1.8 Georgia,serif}.gallery-item em{font-family:"Yu Mincho",serif;font-style:normal;font-size:14px;color:var(--ink)}.gallery-item b{margin-left:auto;white-space:nowrap;font-size:12px;font-weight:400}.poster-gallery{max-width:330px;justify-self:center;grid-column:1/-1;margin-top:16px}.message{position:relative;min-height:610px;display:flex;align-items:center;overflow:hidden}.message>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}.message:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#160f12fa 5%,#160f12d9 35%,#160f1200 85%)}.message-copy{z-index:1;position:relative;padding:80px 7%}.message h2{font-size:17px;letter-spacing:.3em;font-weight:400}.message blockquote{margin:35px 0;font-size:clamp(24px,3vw,39px);line-height:2.2;letter-spacing:.04em}.message-copy>p{color:var(--gold);letter-spacing:.2em}.play{text-align:center;background:radial-gradient(ellipse at bottom,#51223280,transparent 75%);padding-top:125px;padding-bottom:125px}.play h2{font-size:clamp(23px,3vw,36px);font-weight:400;line-height:2;letter-spacing:.08em;margin:30px 0 40px}.play-button{margin:auto;min-width:320px;max-width:100%;font-size:19px}.play-button:disabled{cursor:default;opacity:.65}.link-status{font-size:14px;color:var(--muted);margin:16px 0 0}footer{border-top:1px solid var(--line);text-align:center;padding:45px 20px 30px}footer p{font-size:20px;margin:0 0 3px}footer span{display:block;color:var(--muted);font-size:13px}footer a{font-size:14px;display:inline-block;margin-top:25px;color:var(--gold)}dialog{padding:65px 24px 24px;background:#160f12;color:var(--ink);border:1px solid var(--line);max-width:96vw;max-height:94svh;width:1200px}dialog::backdrop{background:#090609ed}dialog img{max-height:72svh;object-fit:contain;width:100%}dialog p{text-align:center;margin:12px 0 0;font-size:16px}.close{position:absolute;top:9px;right:15px;padding:10px 18px;background:#38232d;min-height:44px}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero-invite{left:10%;width:29%}}
@media(max-width:1000px){nav{gap:15px}.brand span{display:none}.hero{grid-template-columns:1fr 50% 4%}.hero-aside{padding-left:10%;padding-right:5%}.hero-invite{left:4%;width:40%}.experience-grid{grid-template-columns:1fr 1fr}.character-layout{gap:5%}.section{padding-left:6%;padding-right:6%}}
@media(max-width:700px){html{scroll-padding-top:20px}header{height:54px;padding:0 18px;background:#160f12}.brand{font-size:18px}.brand span{display:inline;font-size:10px}#menu-toggle{display:block;font-size:14px}#menu-toggle span{margin-left:10px}nav{display:none;position:absolute;top:54px;left:0;right:0;background:#20151cf5;padding:20px 28px;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--gold)}nav.open{display:grid}nav a{padding:13px;font-size:16px}.hero{display:flex;flex-direction:column;min-height:0;height:auto;max-height:none;padding:54px 0 22px;background:#160f12}.hero-atmosphere{opacity:.35}.hero-aside,.hero-side-label{display:none}.poster{margin:0;align-self:center;width:min(100%,calc((100svh - 165px)*.666667));min-width:225px;box-shadow:0 0 35px #160f12}.poster img{width:100%;max-height:none}.hero-invite{position:relative;left:auto;bottom:auto;width:calc(100% - 32px);margin-top:14px}.hero-invite>span{display:none}.button{padding:14px 10px;font-size:14px;gap:14px;min-height:52px}.section{padding:72px 24px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:29px;line-height:1.8;letter-spacing:.09em}.eyebrow{font-size:11px;letter-spacing:.18em}.intro{display:block}.intro-scene img{aspect-ratio:4/3;object-position:center}.intro-copy{padding-top:40px}.intro-copy p{font-size:16px;letter-spacing:.02em;line-height:2.4}.intro-copy .highlight{font-size:22px;margin:30px 0}.character-layout{display:block}.character figure img{aspect-ratio:1.12;object-position:64% center}.profile{margin-top:35px}.profile h3{font-size:35px}.experience-grid{gap:12px;grid-template-columns:1fr}.experience-image{margin-left:-24px;margin-right:-24px}.experience-image img{aspect-ratio:1.2;object-fit:cover;object-position:63% center}summary{padding:19px 20px;font-size:22px;gap:25px}summary small{font-size:11px}.gallery-grid{grid-template-columns:1fr;gap:26px}.gallery-item.large{grid-column:auto}.gallery-item>span{gap:12px}.gallery-item em{font-size:13px}.poster-gallery{max-width:260px}.message{min-height:640px;align-items:flex-end}.message>img{height:68%;object-position:65% top}.message:after{background:linear-gradient(0deg,#160f12 8%,#160f12f2 29%,#160f1244 66%,#160f1200)}.message-copy{padding:40px 24px 30px}.message blockquote{font-size:23px;line-height:2.1;letter-spacing:0;margin:24px 0}.play h2{font-size:23px;letter-spacing:0}.play-button{min-width:0;width:100%;font-size:18px}.play{padding:80px 24px}.play h2{margin-top:24px}footer p{font-size:17px}dialog{padding:65px 12px 20px;max-width:96vw}dialog img{max-height:70svh}dialog p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
