@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
:root{--ink:#322820;--cream:#f3eee4;--coffee:#5d3826;--line:#cab9a6;font-family:'Noto Sans JP',sans-serif;color:var(--ink);background:var(--cream);scroll-behavior:smooth}*{box-sizing:border-box}html,body{margin:0;min-width:320px}body{overflow-x:hidden}a{color:inherit}.skip{position:absolute;left:-9999px;top:3px;background:#fff;padding:8px;z-index:20}.skip:focus{left:8px}.notice{margin:0;background:#33251e;color:#fff;padding:8px 4vw;font-size:10px;line-height:1.7}.mast{min-height:66px;padding:11px 4vw;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em}.mast a{text-decoration:none}.mast a:last-child{border-bottom:1px solid;padding-bottom:5px}.logo{font-size:21px;letter-spacing:-.05em;white-space:nowrap}.logo span{font-size:11px;border:1px solid;border-radius:50%;padding:7px;margin-left:6px;vertical-align:middle;letter-spacing:0}
.hero-title{text-align:center;padding:65px 5vw 62px}.small-label,.section-no,.closer-copy>span,.end span{font:700 11px 'DM Sans',sans-serif;letter-spacing:.2em}.brand{margin:25px 0 10px;font-size:20px;font-weight:700;letter-spacing:.25em}.hero h1{margin:0;font-size:clamp(55px,6.3vw,100px);line-height:1.22;letter-spacing:-.09em;font-weight:900}.hero h1 span{display:block}.hero h1 span:last-child{color:var(--coffee)}.hero-lead{font-size:16px;font-weight:700;line-height:1.8;margin:27px 0 0}.hero-photo{margin:0 4vw;position:relative;height:44vw;max-height:650px;min-height:370px;overflow:hidden}.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo figcaption{position:absolute;right:20px;bottom:18px;background:#f3eee4dd;padding:8px 11px;font:700 10px 'DM Sans',sans-serif;letter-spacing:.14em}
.objects{display:grid;grid-template-columns:27% 1fr;gap:5vw;padding:105px 8vw 120px;border-bottom:1px solid var(--line)}.objects h2{font-size:clamp(45px,5.2vw,72px);line-height:1.4;letter-spacing:-.08em;margin:0}.objects p{font-size:14px;line-height:2;max-width:44em;margin-top:30px}.closer{display:grid;grid-template-columns:60% 40%;background:#e2d5c2}.closer-photo{height:620px;overflow:hidden}.closer-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:37% center;transform:scale(1.38)}.closer-copy{padding:105px 5vw}.closer-copy h2,.end h2{font-size:clamp(46px,4.5vw,68px);line-height:1.35;letter-spacing:-.08em;margin:40px 0 25px}.closer-copy p{font-size:14px;line-height:2}.closer-copy button{font:700 14px 'Noto Sans JP',sans-serif;color:#fff;background:var(--coffee);border:0;padding:17px 23px;margin-top:30px;cursor:pointer}.closer-copy button:focus-visible,.dialog-head button:focus-visible{outline:3px solid #a4633d;outline-offset:3px}.end{display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;padding:110px 7vw;background:#34251c;color:#fff}.end h2{margin-bottom:0}.end p{font-size:13px;line-height:2.1}.end a{display:inline-block;text-decoration:none;border-bottom:1px solid;padding-bottom:8px;margin-top:25px;font-size:13px}footer{background:#241810;color:#fff;padding:22px 7vw;font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em}
dialog{border:0;padding:0;background:#241810;color:#fff;width:min(94vw,1260px);max-height:90vh;box-shadow:0 25px 80px #0008}dialog::backdrop{background:#100b08dd}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;font:700 11px 'DM Sans',sans-serif;letter-spacing:.14em}.dialog-head button{background:none;border:1px solid #fff;color:#fff;padding:9px 14px;cursor:pointer;font:700 12px 'Noto Sans JP',sans-serif}dialog img{display:block;width:100%;height:auto;max-height:calc(90vh - 62px);object-fit:contain}
@media(max-width:950px){.hero-title{padding:55px 5vw}.hero h1{font-size:clamp(55px,9vw,85px)}.hero-photo{height:56vw}.objects{padding:80px 6vw}.closer{grid-template-columns:1fr}.closer-photo{height:55vw}.closer-copy{padding:70px 6vw}.end{padding:85px 6vw}}
@media(max-width:600px){.notice{font-size:9px}.mast{min-height:58px;padding:10px 5vw}.mast>span{display:none}.logo{font-size:19px}.hero-title{padding:34px 5vw 31px}.small-label{font-size:9px}.brand{font-size:15px;margin:15px 0 8px}.hero h1{font-size:clamp(42px,11.8vw,62px)}.hero-lead{font-size:13px;margin:17px 0 0}.hero-photo{margin:0 3vw;height:68vw;min-height:275px}.hero-photo figcaption{font-size:8px;right:8px;bottom:8px}.objects{display:block;padding:65px 6vw}.section-no{display:block;margin-bottom:25px}.objects h2{font-size:clamp(38px,10vw,54px)}.objects p{font-size:13px}.closer-photo{height:75vw;min-height:290px}.closer-copy{padding:65px 6vw}.closer-copy h2{font-size:clamp(42px,10.5vw,56px);margin:25px 0}.closer-copy p{font-size:13px}.end{display:block;padding:75px 6vw}.end h2{font-size:clamp(40px,10vw,55px)}.end>div:last-child{margin-top:40px}.dialog-head{font-size:9px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
