.top{color:#fff;font-family:var(--serif-jp);background:#1e2930;position:fixed;inset:0;overflow:hidden}.top-head{z-index:10;pointer-events:none;position:absolute;inset:0 0 auto}.top-brand{text-align:center;text-shadow:0 1px 18px #00000080;opacity:1;transition:opacity 1.4s .25s;position:absolute;top:clamp(26px,5vh,52px);left:50%;transform:translate(-50%)}.top-brand-name{font-family:var(--serif-en);text-transform:uppercase;letter-spacing:.42em;white-space:nowrap;font-size:clamp(13px,1.4vw,16px);line-height:1;display:block}.top-brand-sub{letter-spacing:.5em;opacity:.78;margin-top:9px;font-size:10px;display:block}.top-lang{pointer-events:auto;font-family:var(--serif-en);letter-spacing:.18em;text-shadow:0 1px 12px #00000080;opacity:1;align-items:center;gap:7px;font-size:12px;transition:opacity 1.4s .25s;display:inline-flex;position:absolute;top:clamp(28px,5vh,54px);right:clamp(20px,4vw,46px)}.top-lang a{cursor:pointer}.top-lang a.on{text-underline-offset:4px;text-decoration:underline}.top-lang a:not(.on){opacity:.55}.top-lang i{opacity:.5;font-style:normal}.split{z-index:1;display:flex;position:absolute;inset:0}.seam{z-index:3;background:#ffffff2e;flex:0 0 1px;position:relative}.half{color:#fff;cursor:pointer;flex:1;justify-content:center;align-items:flex-end;text-decoration:none;transition:flex 2s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.half-media{z-index:0;position:absolute;inset:0;overflow:hidden}.half-img{object-fit:cover;width:100%;height:100%;transform:scale(calc(var(--z,1) * 1.06));transition:transform 2s cubic-bezier(.16,1,.3,1),filter 1s;display:block}.half-scrim{z-index:1;pointer-events:none;background:linear-gradient(#0e131775 0%,#0e13171a 42%,#0e1317bd 100%);transition:background .8s;position:absolute;inset:0}.half-body{z-index:2;text-align:center;opacity:1;flex-direction:column;align-items:center;gap:12px;margin-bottom:clamp(54px,10vh,110px);padding:0 8%;transition:opacity 1.2s cubic-bezier(.2,.7,.2,1) .5s,transform .8s cubic-bezier(.2,.7,.2,1);display:flex;position:relative;transform:none}.half-index{font-family:var(--serif-en);letter-spacing:.4em;opacity:.72;font-size:13px}.half-name{font-family:var(--serif-en);text-transform:lowercase;letter-spacing:.16em;font-size:clamp(34px,4.6vw,66px);line-height:1}.half-tagline{font-family:var(--serif-jp);letter-spacing:.34em;font-size:clamp(12px,1.35vw,15px)}.top.is-en .half-tagline{font-family:var(--serif-en)}.half-desc{letter-spacing:.12em;opacity:.84;white-space:nowrap;font-size:12.5px}.half-cue{font-family:var(--serif-en);text-transform:uppercase;letter-spacing:.26em;flex-direction:column;align-items:center;gap:8px;margin-top:6px;font-size:11.5px;display:inline-flex;position:relative}.half-cue-ln{background:#fff;width:30px;height:1px;transition:width .45s cubic-bezier(.6,0,.2,1);display:block}.preload .top-brand,.preload .top-lang{opacity:0}.preload .half-body{opacity:0;transform:translateY(24px)}.preload .half-img{transform:scale(calc(var(--z,1) * 1.12))}@media (hover:hover){.split:hover .half:not(:hover){flex:.9}.split:hover .half:hover{flex:1.5}.half:hover .half-img{transform:scale(calc(var(--z,1) * 1.12))}.half:hover .half-scrim{background:linear-gradient(#0e13174d 0%,#0e131700 46%,#0e1317b3 100%)}.split:hover .half:not(:hover) .half-img{transform:scale(calc(var(--z,1) * 1.06));filter:saturate(.55)brightness(.5)}.split:hover .half:not(:hover) .half-scrim{background:linear-gradient(#0e131799 0%,#0e131773 50%,#0e1317cc 100%)}.half:hover .half-cue-ln{width:56px}}@media (prefers-reduced-motion:reduce){.top-brand,.top-lang,.half,.half-img,.half-body,.half-scrim,.half-cue-ln{transition:none}.preload .top-brand,.preload .top-lang{opacity:1}.preload .half-body{opacity:1;transform:none}.preload .half-img{transform:scale(calc(var(--z,1) * 1.06))}}@media print{.top{position:static}.preload .top-brand,.preload .top-lang{opacity:1}.preload .half-body{opacity:1;transform:none}.preload .half-img{transform:scale(calc(var(--z,1) * 1.06))}}@media (max-width:760px){.split{flex-direction:column}.half{flex:50svh;min-height:0}.seam{flex:0 0 1px;width:auto;height:1px}.half-name{font-size:clamp(30px,9vw,46px)}.half-desc{white-space:normal}.half-body{margin-bottom:clamp(28px,4.5vh,48px)}.split:hover .half:not(:hover),.split:hover .half:hover,.half:hover{flex:50svh}}
