:root{--font-ja:'Noto Sans JP',sans-serif;--font-en:'DM Sans',sans-serif;--type-display-ja:clamp(2.52rem,5.4vw,4.77rem);--type-display-en:clamp(3.24rem,10.368vw,11.016rem);--type-menu:clamp(1.35rem,2.4vw,2.4rem);--type-section:clamp(1.8rem,3vw,2.7rem);--type-body:1rem;--type-lead:clamp(1rem,1.45vw,1.22rem);--type-note:.85rem}
body{font-family:var(--font-ja);font-size:var(--type-body);line-height:1.8}
.hero h1,.story-title,.rice-content h2,.omai-head h2,.page-hero h1,.section-heading h2,.story-copy h2,.calendar-intro h2{font-family:var(--font-ja);font-size:var(--type-display-ja);letter-spacing:-.075em;line-height:1.25;font-weight:900}
.menu-head h2,.access-head h2{font-family:var(--font-en);font-size:var(--type-display-en);font-weight:900}
.menu-head h2{line-height:.78}.access-head h2{line-height:.8}
.eyebrow{font:800 .82rem/1.2 var(--font-en);letter-spacing:.13em;text-transform:uppercase}
.menu-name,.menu-item h3{font-family:var(--font-ja);font-size:var(--type-menu);font-weight:900;letter-spacing:-.055em;line-height:1.45;word-break:keep-all;overflow-wrap:anywhere}
.access-grid h3,.feature-grid h3,.duo h3,.info-grid h3{font-size:var(--type-section);font-weight:900;letter-spacing:-.04em;line-height:1.4}
.hero-lead,.page-hero p{font-size:var(--type-lead);font-weight:700;line-height:2.1}
.section-heading p,.story-copy p,.feature-grid p,.duo p,.info-grid p,.calendar-intro p{font-size:var(--type-body);line-height:2.1}
.menu-desc,.menu-item p{font-size:.94rem;line-height:1.8}
.menu-item .price{font-family:'DM Sans','Noto Sans JP',sans-serif;font-weight:900;line-height:1.3}
.menu-note{font-size:var(--type-note)}
@media(max-width:900px){:root{--type-display-ja:clamp(2.34rem,5.4vw,4.05rem)}}
@media(max-width:700px){:root{--type-display-ja:clamp(2.16rem,11.7vw,4.23rem);--type-display-en:clamp(3.564rem,15.552vw,6.48rem);--type-menu:1.2rem;--type-lead:.96rem}.menu-desc,.menu-item p{font-size:.87rem}.hero-lead,.page-hero p{line-height:1.9}}
