@font-face{font-family:Hiyori;src:url('assets/text-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Hiyori;src:url('assets/text-500.woff2') format('woff2');font-weight:500;font-display:swap}
:root{--ink:#282925;--soft:#62655f;--line:#d8d9d4;--red:#aa3e2c;--gutter:clamp(24px,4.8vw,80px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font:400 16px/1.9 Hiyori,'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,dl,dd{margin:0}h1,h2,h3{font-weight:400}h2{font-size:clamp(25px,2.4vw,36px);line-height:1.65;letter-spacing:.025em}h3{font-size:22px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:transparent;border:0;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}img{display:block;width:100%;height:auto}a:hover{text-decoration-color:var(--red)}.skip{position:fixed;top:0;left:20px;transform:translateY(-110%);background:#fff;z-index:10;padding:10px}.skip:focus{transform:none}.header{height:126px;display:flex;align-items:center;justify-content:space-between;margin:0 var(--gutter)}.brand{display:inline-flex;align-items:center;gap:13px}.brand span{font-size:12px;writing-mode:vertical-rl;letter-spacing:.12em;line-height:1.2}.brand img{width:101px;height:auto}.desktop-nav{display:flex;gap:34px;font-size:14px}.desktop-nav a,.text-link,.footer a{position:relative}.desktop-nav a:after,.text-link:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after,.text-link:hover:after{transform:scaleX(1)}.menu-toggle,.mobile-nav{display:none}[hidden]{display:none!important}.hero{display:grid;grid-template-columns:26% 74%;align-items:center;margin-left:var(--gutter)}.hero-words{padding:0 28px 65px 0}.hero h1{font-size:clamp(24px,2.25vw,35px);line-height:1.85;letter-spacing:.02em}.hero-words p{font-size:14px;line-height:2.1;margin:28px 0 46px}.text-link{font-size:14px;display:inline-flex;gap:34px}.hero-photo img{height:clamp(450px,49vw,690px);object-fit:cover;object-position:51% 53%}.hero-photo figcaption{display:flex;justify-content:space-between;align-items:baseline;margin-right:var(--gutter);padding:14px 0;font-size:14px;gap:15px}.price{white-space:nowrap;font-size:25px;font-variant-numeric:tabular-nums;letter-spacing:-.035em;line-height:1.5}.price span{font-size:14px;margin-left:5px;letter-spacing:0}.price small{font-size:12px;margin-left:12px;letter-spacing:0}.today-strip{margin:22px var(--gutter) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;display:flex;align-items:center;gap:28px;font-size:15px}.today-strip>span:last-child{margin-left:auto}.today-label{font-size:13px;color:var(--soft)}#today-status:before{content:'';display:inline-block;width:6px;height:6px;background:var(--red);border-radius:50%;margin:0 12px 2px 0}.section{margin-left:auto;margin-right:auto;width:calc(100% - 2 * var(--gutter));max-width:1320px}.menu{padding-top:120px}.menu-intro{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:48px}.menu-intro p{max-width:440px;font-size:16px}.dishes{display:grid;grid-template-columns:1fr 1fr;gap:6.5%}.dish.chicken{padding-top:100px}.dish figure{background:#f6f6f4}.dish img{aspect-ratio:3/2;object-fit:cover}.dish-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:24px 0 12px}.dish>p{font-size:16px;line-height:2}.dish-title .price{font-size:27px}.set-note{border-top:1px solid var(--line);margin-top:42px;padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:14px;color:var(--soft)}.room{margin:140px 0 0}.room>figure{margin:0 0 0 12%;overflow:hidden}.room>figure img{max-height:790px;object-fit:cover;object-position:50% 50%}.room-copy{width:calc(100% - 2 * var(--gutter));max-width:1320px;margin:46px auto 0;display:grid;grid-template-columns:1fr 1.35fr;gap:8%}.room-copy p{padding-top:8px;line-height:2.1}.quiet{font-size:14px;color:var(--soft);line-height:1.9}.room-copy .quiet{margin-top:18px}.sides{display:grid;grid-template-columns:43% 1fr;gap:10%;align-items:center;padding-top:130px}.sides figure{padding:0 0 0 6%}.sides img{aspect-ratio:1/1;object-fit:cover}.sides h2{font-size:28px}.sides-copy>p{margin-top:22px}.extra-list{margin-top:24px;max-width:420px}.extra-list>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0}.extra-list dd{font-variant-numeric:tabular-nums}.extra-list dd span{font-size:13px;margin-left:7px}.sides-copy>.quiet{font-size:13px}.calendar-section{display:grid;grid-template-columns:36% 1fr;gap:10%;padding-top:140px;padding-bottom:100px}.calendar-intro>p{margin-top:25px}.regular-hours{margin-top:34px}.regular-hours>div{display:flex;gap:22px;margin-top:20px}.regular-hours dd{font-size:22px;font-variant-numeric:tabular-nums;line-height:1.5}.regular-hours small{display:block;font-size:13px;color:var(--soft);margin-top:5px}.calendar-intro .calendar-help{font-size:14px;color:var(--soft);max-width:300px;margin-top:45px}.month-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:13px}.month-bar button{width:48px;height:48px;font-size:25px}.month-bar button:hover{background:#f1f2ef}.month-bar h3{font-size:26px;font-variant-numeric:tabular-nums}.calendar-tools{display:flex;justify-content:space-between;font-size:12px;color:var(--soft);padding:7px 0}.calendar-tools button{font-size:14px;min-height:40px;text-decoration:underline;text-underline-offset:4px}.calendar-tools>span{align-self:center}#calendar-grid>[role=row]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}[role=columnheader]{text-align:center;font-size:13px;color:var(--soft);padding:7px 0}.date-cell{border-top:1px solid var(--line);padding:3px;min-width:0}.date-cell button{width:100%;height:75px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;font-variant-numeric:tabular-nums;line-height:1.3}.date-cell button:hover{background:#f1f2ef}.date-cell button[aria-pressed=true]{background:var(--ink);color:#fff}.date-cell button[aria-current=date] .day-number{text-decoration:underline;text-underline-offset:4px}.day-number{font-size:21px}.service-marks{display:flex;gap:4px;align-items:center}.service-marks i,.legend i{font-style:normal;font-size:12px;line-height:18px;min-width:18px;text-align:center}.day-symbol{background:#ebeee7;color:#394831}.night-symbol{background:#e9ebef;color:#414c61}.closed-symbol{color:#70736b}.change-symbol{color:var(--red);font-weight:500}.date-cell button[aria-pressed=true] .change-symbol{color:#ffc0b0}.exception-marker{position:absolute;top:5px;right:5px;font-style:normal;color:var(--red);font-size:13px}.date-cell button[aria-pressed=true] .exception-marker{color:#ffc0b0}.date-cell.closed .day-number{color:#777b73}.date-cell.closed button[aria-pressed=true] .day-number{color:#fff}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:17px;font-size:12px}.legend>span{display:flex;align-items:center;gap:5px}.date-detail{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:22px 0;margin-top:25px;min-height:170px}.date-detail h4{font-size:18px;font-weight:500;margin:0 0 12px;line-height:1.6}.detail-hours{display:flex;gap:24px;flex-wrap:wrap;font-size:16px;font-variant-numeric:tabular-nums}.date-detail p{font-size:14px;margin-top:9px}.keyboard-help{font-size:12px;color:var(--soft);margin-top:12px;line-height:1.8}.visit{border-top:1px solid var(--line);padding:70px 0 80px;display:grid;grid-template-columns:1fr 1.35fr;gap:8%}.footer-brand{margin-bottom:30px}.visit h2{font-size:22px;margin-bottom:18px}.visit p{font-size:15px;line-height:2}.visit-list>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:22px 0;font-size:15px}.visit-list>div:first-child{padding-top:0}.visit-list dt{color:var(--soft);font-size:13px}.visit-list dd span{font-size:13px;margin-left:5px}.visit-list a{text-decoration:underline;text-underline-offset:5px}.footer{margin:0 var(--gutter);border-top:1px solid var(--line);padding:25px 0 35px;display:flex;justify-content:space-between;font-size:12px;color:var(--soft)}
@media(min-width:1800px){.hero{max-width:1640px;margin:auto}.hero-photo figcaption{margin-right:0}}
@media(max-width:800px){body{font-size:16px}.header{height:92px}.brand{gap:10px}.brand img{width:87px}.brand span{font-size:10px}.desktop-nav{display:none}.menu-toggle{display:flex;gap:15px;align-items:center;min-height:44px;font-size:13px;padding:0}.menu-toggle span{font-size:21px}.mobile-nav:not([hidden]){display:grid;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px var(--gutter) 18px}.mobile-nav a{padding:11px 0;font-size:16px}.hero{display:flex;flex-direction:column;margin:0;align-items:stretch}.hero-words{padding:12px var(--gutter) 24px;display:flex;justify-content:space-between;align-items:end;gap:15px}.hero h1{font-size:23px;line-height:1.7}.hero-words p{display:none}.hero-words>.text-link{font-size:12px;gap:10px;white-space:nowrap;margin-bottom:4px}.hero-photo img{height:53svh;min-height:365px;max-height:520px;object-position:51% 53%}.hero-photo figcaption{margin:0 var(--gutter);padding:17px 0 15px;font-size:14px}.price{font-size:25px}.price small{font-size:11px;margin-left:9px}.today-strip{margin-top:0;padding:16px 0;gap:13px;flex-wrap:wrap;line-height:1.6}.today-label{font-size:12px}#today-status{font-size:14px}#today-status:before{margin-right:7px;width:5px;height:5px}.today-strip>span:last-child{font-size:15px}.menu{padding-top:74px}.menu-intro{display:block;padding-bottom:30px}.menu-intro p{margin-top:20px;font-size:15px;line-height:2}.dishes{display:block}.dish.chicken{padding-top:42px}.dish-title{margin:20px 0 12px;flex-wrap:wrap;column-gap:8px;row-gap:4px}.dish-title h3{font-size:20px}.dish-title .price{font-size:25px}.dish-title .price small{font-size:11px;margin-left:7px}.dish>p{font-size:16px;line-height:1.95}.set-note{display:block;margin-top:29px;padding-top:19px;font-size:13px}.set-note p+p{margin-top:9px}.room{margin-top:78px}.room>figure{margin:0 0 0 24px}.room>figure img{height:440px;object-position:42% 50%;object-fit:cover}.room-copy{display:block;margin-top:26px}.room-copy h2{font-size:26px;line-height:1.7}.room-copy>div{margin-top:18px}.room-copy p{font-size:16px;line-height:2;padding:0}.room-copy .quiet{font-size:14px;margin-top:15px}.desktop-only{display:none}.sides{padding-top:75px;display:block}.sides figure{padding:0;margin-right:23%;margin-bottom:28px}.sides img{aspect-ratio:1/1}.sides h2{font-size:24px}.sides-copy>p{font-size:15px;margin-top:17px;line-height:2}.sides-copy>.quiet{font-size:13px}.extra-list{font-size:16px}.extra-list>div{padding:11px 0}.calendar-section{display:block;padding-top:75px;padding-bottom:65px}.calendar-intro>p{font-size:15px;margin-top:18px;line-height:2}.regular-hours{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}.regular-hours>div{display:block;margin:0}.regular-hours dt{font-size:14px;margin-bottom:7px}.regular-hours dd{font-size:19px;letter-spacing:-.02em}.regular-hours small{font-size:12px;letter-spacing:0}.calendar-intro .calendar-help{font-size:14px;margin-top:28px;max-width:none}.calendar-widget{margin-top:27px}.month-bar h3{font-size:24px}.month-bar{padding-bottom:7px}.month-bar button{width:44px;height:44px}.date-cell{padding:2px}.date-cell button{height:64px;gap:6px}.day-number{font-size:19px}.service-marks{gap:2px}.service-marks i{min-width:17px;font-size:12px;line-height:17px}.exception-marker{top:2px;right:2px;font-size:12px}.legend{gap:9px 12px;font-size:12px;margin-top:14px}.legend i{min-width:16px;font-size:12px}.date-detail{padding:19px 0;margin-top:20px;min-height:166px}.date-detail h4{font-size:17px}.detail-hours{font-size:16px;gap:5px 18px}.date-detail p{font-size:14px;line-height:1.9}.keyboard-help{font-size:12px;margin-top:13px}.visit{display:block;padding-top:45px;padding-bottom:45px}.footer-brand{margin-bottom:25px}.visit>div>p{font-size:15px}.visit-list{margin-top:32px}.visit-list>div{grid-template-columns:76px 1fr;gap:16px;font-size:14px;padding:20px 0}.visit-list>div:last-child{display:block}.visit-list>div:last-child dd{margin-top:10px;font-size:13px;line-height:2}.visit-list dt{font-size:13px}.visit-list dd span{font-size:12px;margin-left:0;display:inline-block}.footer{display:block;font-size:11px;line-height:1.9}.footer a{display:block;margin-top:14px;font-size:13px;min-height:44px}.calendar-tools span{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.mobile-only{display:none}@media(max-width:800px){.mobile-only{display:initial}}
.text-link{min-height:44px;align-items:center}@media(max-width:800px){.hero-words>.text-link{font-size:13px}}
@media(max-width:800px){.date-cell{padding:2px 0}}
