:root{--char:#1c2327;--steel:#c7cdca;--paper:#edece5;--orange:#c58e5b;--muted:#566065}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--char);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}h1,h2,p{margin:0}h1,h2{line-break:strict;text-wrap:balance}p{line-break:strict;text-wrap:pretty}a,button{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.skip{position:absolute;left:-9999px;top:0;z-index:10;padding:12px;background:#fff}.skip:focus{left:0}.fiction{background:var(--char);color:#fff;text-align:center;padding:8px 17px;font-size:10px;line-height:1.6;letter-spacing:.05em}.top{height:78px;padding:0 clamp(18px,4vw,70px);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;display:block;white-space:nowrap}.brand strong{display:block;font-size:20px;letter-spacing:.12em}.brand small{display:block;font-family:Arial,sans-serif;font-size:8px;font-weight:700;letter-spacing:.18em;margin-top:4px}.top nav{display:flex;gap:clamp(15px,2.5vw,40px);font-size:11px;font-weight:700;white-space:nowrap}.top nav a{text-decoration:none;border-bottom:1px solid transparent;padding-bottom:5px}.top nav a:hover{border-color:var(--char)}.hero{display:grid;grid-template-columns:minmax(340px,.42fr) minmax(0,.58fr);min-height:650px;background:var(--char)}.hero-copy{color:var(--paper);display:flex;flex-direction:column;justify-content:space-between;padding:38px clamp(25px,4vw,70px) 42px;gap:45px}.hero-index,.hero-foot,.eyebrow,.section-label{font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.18em}.hero-foot,.eyebrow{color:#d8a87e}.eyebrow{margin-bottom:20px}.hero h1{font-size:clamp(42px,4.2vw,70px);line-height:1.35;letter-spacing:-.07em;font-weight:700}.hero h1 span{display:block}.hero-message>p:not(.eyebrow){font-size:13px;line-height:2;max-width:30em;margin-top:30px}.hero-message>a{display:inline-flex;justify-content:space-between;gap:35px;border-bottom:1px solid var(--paper);padding-bottom:8px;margin-top:34px;text-decoration:none;font-size:12px;font-weight:700}.hero-photo{position:relative;margin:0;min-width:0}.hero-photo img{display:block;width:100%;height:100%;min-height:650px;max-height:760px;object-fit:cover;object-position:center}.hero-photo figcaption{position:absolute;left:23px;right:23px;bottom:18px;display:flex;justify-content:space-between;gap:20px;color:#fff;text-shadow:0 1px 8px #000c;font-family:Arial,sans-serif;font-size:9px;font-weight:700;letter-spacing:.17em}.work{display:grid;grid-template-columns:.7fr 2fr 1.3fr;gap:40px;padding:110px clamp(18px,4vw,70px);align-items:start;border-bottom:1px solid #c2c7c4}.work .section-label{padding-top:15px}.work h2,.detail h2{font-size:clamp(40px,4.3vw,70px);line-height:1.35;letter-spacing:-.07em}.work>p{font-size:13px;line-height:2.1;max-width:29em;padding-top:15px}.detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(35px,6vw,100px);align-items:center;padding:110px clamp(18px,4vw,70px)}.detail-frame{position:relative;overflow:hidden;background:#777e7b}.detail-frame img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease}.detail-frame.is-close img{transform:scale(1.48);transform-origin:48% 53%}.frame-no{position:absolute;right:16px;bottom:16px;padding:7px 9px;background:var(--char);color:#fff;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.15em}.detail h2{margin:28px 0 23px}.detail-copy>p:not(.zoom-note){font-size:13px;line-height:2;max-width:29em}.detail button{margin-top:38px;width:min(100%,260px);background:transparent;border:1px solid var(--char);padding:15px 17px;display:flex;justify-content:space-between;cursor:pointer;text-align:left;font-size:12px;font-weight:700}.detail button[aria-pressed=true],.detail button:hover{background:var(--char);color:#fff}.zoom-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px}.note{background:#d9dcd7;padding:70px clamp(18px,4vw,70px);display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:start}.note span{font:700 10px Arial,sans-serif;letter-spacing:.2em}.note p{font-size:12px;line-height:2.1;max-width:54em}.note a{text-decoration:none;justify-self:end;border-bottom:1px solid;padding-bottom:6px;font-size:12px;font-weight:700}footer{display:flex;justify-content:space-between;gap:20px;background:var(--char);color:#fff;padding:26px clamp(18px,4vw,70px);font-size:10px}footer a{text-decoration:none}
@media(max-width:1000px){.hero{grid-template-columns:.48fr .52fr}.hero h1{font-size:clamp(40px,4.6vw,58px)}.work{grid-template-columns:1fr 2fr}.work>p{grid-column:2;padding-top:0}.detail{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.top nav a:first-child,.top nav a:nth-child(2){display:none}.hero{display:flex;flex-direction:column}.hero-photo{order:0}.hero-photo img{height:400px;min-height:0;max-height:none}.hero-copy{order:1;min-height:360px;padding:28px 26px 34px;gap:25px}.hero h1{font-size:clamp(43px,7vw,58px)}.work{display:block;padding:75px 22px}.work h2{font-size:49px;margin:22px 0}.work>p{padding:0}.detail{display:block;padding:80px 22px 95px}.detail-copy{margin-top:35px}.detail h2{font-size:49px}.note{grid-template-columns:1fr 2fr}.note a{grid-column:2;justify-self:start}}
@media(max-width:520px){.fiction{font-size:9px}.top{height:66px;padding:0 18px}.brand strong{font-size:17px}.brand small{font-size:7px}.top nav{font-size:11px}.hero-photo img{height:330px;object-position:47% center}.hero-photo figcaption{font-size:8px;left:14px;right:14px}.hero-copy{min-height:0;padding:23px 22px 30px}.hero-index,.hero-foot,.eyebrow{font-size:8px}.eyebrow{margin:24px 0 12px}.hero h1{font-size:clamp(39px,10vw,50px)}.hero-message>p:not(.eyebrow){font-size:11px;line-height:1.9;margin-top:18px}.hero-message>a{font-size:11px;margin-top:19px}.hero-foot{margin-top:25px}.work h2{font-size:40px}.work>p,.detail-copy>p:not(.zoom-note){font-size:12px}.detail h2{font-size:43px}.note{display:block;padding:50px 22px}.note p{margin:20px 0}.note a{display:inline-block}footer{display:block;padding:23px 22px}footer a{display:block;margin-top:8px}}
@media(max-width:380px){.hero h1{font-size:37px}.hero-photo img{height:310px}.work h2{font-size:38px}.detail h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.detail-frame img{transition:none}}
