:root{--ink:#090c10;--paper:#f7f6f0;--red:#922e25;--thin:rgba(255,255,255,.27)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:'Noto Serif JP','Yu Mincho',serif;letter-spacing:.7px;line-height:2;font-size:16px}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:5px}p,h1,h2,h3,figure{margin:0}a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.wrap{width:100%;margin:auto}.sample-bar{position:relative;z-index:5;background:#090c10;text-align:center;padding:7px 12px;font:12px/1.5 'Montserrat',sans-serif;letter-spacing:.03em}.sample-bar a{margin-left:8px}.site-header{position:absolute;z-index:4;top:82px;left:50px;right:50px}.header-row{display:flex;align-items:flex-start;justify-content:space-between}.kanban{display:flex;flex-direction:column;line-height:1.3;text-shadow:0 1px 6px #0008}.kanban small{font-family:'Montserrat',sans-serif;letter-spacing:.1em;font-size:12px}.kanban strong{font-size:24px;font-weight:400;margin-top:7px}.header-note{writing-mode:vertical-rl;max-height:178px;line-height:2.25;font-size:15px;text-shadow:0 1px 8px #000}.hero{position:relative;height:calc(100svh + 136px)}.hero-stage{position:relative;height:100%;isolation:isolate}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#0005,#0002),url('img/01.jpg') 50% 50%/cover;clip-path:polygon(0 0,100% 0,100% calc(100% - 274px),0 100%);transform-origin:center;z-index:-1}.hero-panel{position:absolute;left:100px;top:25svh;width:460px;padding-top:178px;color:var(--ink)}.hero-panel:before{content:'';position:absolute;top:178px;bottom:0;left:0;right:0;background:var(--paper);z-index:-1}.hero h1{position:absolute;left:0;top:0;color:#fff;font-size:32px;font-weight:400;line-height:64px;letter-spacing:.7px;white-space:nowrap;text-shadow:0 1px 8px #0005}.hero-copy-top{padding:25px 30px 0;line-height:1.4}.label{font:12px/1.5 'Montserrat',sans-serif;letter-spacing:.5px}.seal{position:absolute;right:25px;top:203px;width:110px;height:110px;display:grid;align-content:center;text-align:center;line-height:1.8;font-size:16px;color:white;background:linear-gradient(#0008,#0008),url('img/02.jpg') center/cover}.hero-catch{font-size:14px;line-height:25px;margin:10px 155px 0 30px;padding-bottom:25px;min-height:147px}.photo-cues{display:flex;gap:30px;position:absolute;left:100px;top:calc(100svh - 72px)}.photo-cues i{width:9px;height:9px;border:1px solid #fff;transform:rotate(45deg)}
#commitment{position:relative;isolation:isolate;margin-top:-274px;min-height:1154px;padding:334px 0 200px;background:transparent}#commitment:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#090c10a6,#090c10e6),url('img/03.jpg') center/cover;clip-path:polygon(0 274px,100% 0,100% 100%,0 100%)}#commitment>.wrap{width:700px;position:relative}.hero-sub{font-size:18px;line-height:45px;margin:0 0 56px}.band{font-weight:400;line-height:1.4}.band .en{font:12px/1.5 'Montserrat',sans-serif;letter-spacing:1.2px;display:block;margin-bottom:15px}.band .jp{font-weight:400;font-size:36px;line-height:1.3;display:block;letter-spacing:4px}#commitment .band{position:absolute;left:-185px;top:0;writing-mode:vertical-rl}#commitment .band .en{font-size:12px;margin:0 12px 0 0}.intro-grid{display:grid;gap:38px}.intro-card p{font-size:18px;line-height:45px}
#menu{padding-top:126px;position:relative;background:var(--ink)}#menu .band{position:absolute;z-index:2;left:100px;top:30px;writing-mode:vertical-rl}#menu .band .en{margin:0 12px 0 0}.menu-grid{display:grid}.menu-card{position:relative;min-height:690px;padding:230px 0 60px 9.8125%;isolation:isolate}.menu-card:before{content:'';position:absolute;right:0;top:0;width:64%;height:637px;background:linear-gradient(90deg,#090c1080,#090c1020),url('img/02.jpg') center/cover;z-index:-1}.menu-card:nth-child(2){padding-left:48%;}.menu-card:nth-child(2):before{right:auto;left:0;background-image:linear-gradient(270deg,#090c1080,#090c1020),url('img/01.jpg')}.menu-card:nth-child(3):before{background-image:linear-gradient(90deg,#090c1080,#090c1020),url('img/04.jpg')}.menu-head,.menu-desc{width:min(540px,90%)}.menu-head{padding:22px 28px 20px;background:#090c10cf}.menu-type{font:12px/1.5 'Montserrat',sans-serif;letter-spacing:1px;margin-bottom:18px}.menu-name{font-size:32px;font-weight:400;line-height:48px}.menu-price{font-size:20px;line-height:1.8;margin-top:20px}.menu-desc{font-size:16px;line-height:32px;padding:0 28px 25px;background:#090c10cf}.menu-note{font-size:15px;line-height:30px;width:700px;margin:0 auto;padding:30px 0 130px;color:#ddd}
#gallery{padding:100px 0 140px;position:relative}#gallery>.wrap{width:1000px;position:relative}#gallery .band{position:absolute;left:-100px;top:0;writing-mode:vertical-rl}#gallery .band .en{margin:0 12px 0 0}.photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:start}.photo-card{margin:100px 0 0;transition:transform .5s}.photo-card:nth-child(2){margin-top:50px}.photo-card:nth-child(3){margin-top:0}.photo-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.photo-meta{padding:14px 8px 0 0}.photo-meta strong{display:block;font-size:17px;font-weight:400;line-height:1.7;margin-bottom:10px}.photo-meta span{display:block;font-size:15px;line-height:2;color:#dedbd4}.photo-card:hover{transform:translateY(-8px)}
#information{padding:80px 0 170px}#information>.wrap{width:1000px;position:relative}#information .band{position:absolute;left:-100px;top:0;writing-mode:vertical-rl}#information .band .en{margin:0 12px 0 0}.info-grid{display:grid;gap:60px}.info-box h3{font-size:20px;font-weight:400;margin-bottom:24px}.row{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid var(--thin);padding:18px 0;font-size:15px;line-height:2}.key{font-weight:400}.small{font-size:15px;color:#bcbcb6}.value{min-width:0}
#noren-direct-reception{position:relative;background:var(--paper);padding:70px 0;--noren-accent:#922e25!important;--noren-accent2:#922e25!important;--noren-font:'Noto Serif JP',serif!important;--noren-on-accent:#fff!important}footer{padding:80px 40px 45px;background:linear-gradient(#090c10b5,#090c10df),url('img/04.jpg') center/cover;text-align:center}.footer-box{max-width:1000px;margin:auto;font-size:14px;line-height:2.2}.arrival{opacity:1}.js-motion .arrival{opacity:0;transform:translateY(20px);transition:opacity 1.1s ease,transform 1.1s ease}.js-motion .arrival.seen{opacity:1;transform:none}.hero-stage.arrival,.masthead.arrival{transform:none!important}.hero-photo{animation:opening 1.4s ease-out both}@keyframes opening{from{opacity:.3;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@media(max-width:1100px) and (min-width:701px){#commitment>.wrap{width:60%}#commitment .band{left:-130px}#gallery>.wrap,#information>.wrap{width:78%}#gallery .band,#information .band{left:-80px}.hero-panel{left:7.8%}.menu-card:nth-child(2){padding-left:42%}.menu-note{width:70%}.menu-name{font-size:29px}}
@media(max-width:700px){body{font-size:16px}.sample-bar{font-size:10px;line-height:1.5;padding:8px}.sample-bar a{display:block;margin:2px 0 0}.site-header{top:83px;left:23px;right:23px}.kanban small{font-size:10px}.kanban strong{font-size:22px}.header-note{font-size:13px;max-height:152px;line-height:1.8;max-width:65px}.hero{height:calc(100svh + 84px);min-height:845px}.hero-photo{background-position:58% center;clip-path:polygon(0 0,100% 0,100% calc(100% - 84px),0 100%)}.hero-panel{left:23px;top:245px;width:calc(100% - 46px);padding-top:128px}.hero h1{font-size:25px;line-height:48px;letter-spacing:.3px}.hero-panel:before{top:128px}.hero-copy-top{padding:20px 20px 0}.label{font-size:12px}.seal{width:78px;height:100px;right:16px;top:148px;font-size:15px}.hero-catch{margin:12px 20px 0;font-size:15px;line-height:28px;padding:0 0 24px;min-height:0;padding-right:0}.hero-copy-top{min-height:130px;padding-right:100px}.photo-cues{left:24px;top:auto;bottom:115px;gap:24px}#commitment{margin-top:-84px;min-height:0;padding:170px 25px 140px}#commitment:before{clip-path:polygon(0 84px,100% 0,100% 100%,0 100%)}#commitment>.wrap{width:100%}.hero-sub{font-size:16px;line-height:36px;margin-bottom:65px}#commitment .band,#menu .band,#gallery .band,#information .band{position:static;writing-mode:horizontal-tb;margin-bottom:45px}.band .jp{font-size:30px;letter-spacing:3px}.band .en,#commitment .band .en,#menu .band .en,#gallery .band .en,#information .band .en{font-size:12px;margin:0 0 12px}.intro-grid{gap:35px}.intro-card p{font-size:16px;line-height:36px}#menu{padding-top:30px}#menu .band{padding:0 25px}.menu-card,.menu-card:nth-child(2){min-height:660px;padding:235px 25px 90px}.menu-card:before{width:88%;height:380px}.menu-card:nth-child(2):before{width:88%}.menu-head,.menu-desc{width:100%;background:#090c10ec}.menu-head{padding:25px 20px 15px}.menu-name{font-size:27px;line-height:1.6}.menu-type{font-size:12px;margin-bottom:10px}.menu-price{font-size:19px;margin-top:14px}.menu-desc{font-size:16px;line-height:32px;padding:0 20px 25px}.menu-note{font-size:15px;line-height:30px;width:auto;margin:0 25px;padding:0 0 100px}#gallery{padding:0 25px 110px}#gallery>.wrap,#information>.wrap{width:100%}.photo-strip{grid-template-columns:1fr;gap:50px}.photo-card,.photo-card:nth-child(2),.photo-card:nth-child(3){margin:0}.photo-card:nth-child(2){padding-left:35px}.photo-card:nth-child(3){padding-right:35px}.photo-meta{padding-top:15px}.photo-meta strong{font-size:18px}.photo-meta span{font-size:15px}#information{padding:0 25px 100px}#information .band .jp{font-size:27px;letter-spacing:1px}.row{grid-template-columns:85px 1fr;gap:10px;font-size:15px;padding:20px 0}.small{font-size:15px}#noren-direct-reception{padding:30px 0}footer{padding:70px 25px 35px}.footer-box{font-size:15px;line-height:2}.info-box h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo{animation:none}.js-motion .arrival{opacity:1;transform:none;transition:none}.photo-card{transition:none}.photo-card:hover{transform:none}}

.kanban small,.label,.band .en,.menu-type{text-transform:uppercase}
.hero>.wrap{height:100%}
.hero-stage{overflow:hidden}
#commitment:before{clip-path:polygon(0 274px,100% 0,100% 100%,0 calc(100% - 180px))}
.photo-cues i{background:transparent}.photo-cues i.active{background:white}
@media(max-width:700px){#commitment:before{clip-path:polygon(0 84px,100% 0,100% 100%,0 calc(100% - 84px))}}
.header-note{height:178px;width:70px;max-height:none;max-width:none;flex:none;line-height:2.25}
.hero-photo{background-image:linear-gradient(90deg,#0007,#0003),url('img/01.jpg')}
@media(max-width:700px){.header-note{height:170px;width:60px;font-size:15px;line-height:2}}
/* Full Japanese font metrics keep vertical glyph advances stable. */
.header-note,.band .jp{font-family:'Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',serif}
