/* 潮騒 — typography, paper, and tide */
:root{
 --serif:'Shiosai Mincho','Yu Mincho','Hiragino Mincho ProN',serif;
 --brush:'Shiosai Brush','Shiosai Mincho',serif;
 --indigo:#102b38;--paper:#f5f0e5;--paper-2:#eae4d7;--ink:#243638;
 --gold:#b49665;--shu:#9a4b36;--brown:#876a45;--rule:#d4cbb9;
 --grain:url('assets/paper-grain.svg');--tides:url('assets/tide-lines.svg');
}
body{background-color:var(--paper);background-image:var(--grain);font-feature-settings:'palt';}
.mobile-only{display:none}
h1,h2,h3{font-feature-settings:'palt';text-wrap:balance}
.brand b,.footer-brand{font-family:var(--brush);font-weight:400}
.brand b{font-size:43px;letter-spacing:.06em;line-height:1.13}
.brand small{font-size:9px;letter-spacing:.26em;line-height:1.7}
.brand em{font-size:10px;letter-spacing:.2em}
.brand-symbol{border-radius:0;border-color:var(--shu);border-width:1px 2px;color:var(--shu);font-family:var(--brush);font-weight:400;transform:rotate(-4deg);box-shadow:inset 0 0 0 2px var(--paper);background-image:var(--grain)}
.site-header{background-color:#f5f0e5f5;background-image:var(--grain);backdrop-filter:blur(12px);border-color:#bda67a70;box-shadow:0 3px 0 #f5f0e5,0 4px 0 #bda67a45}
.site-header>.wrap{min-height:102px}
.nav a{letter-spacing:.06em;font-weight:500}
.nav a small{font-style:italic;letter-spacing:.1em;margin-top:2px}
.nav a[aria-current='page']:after{width:22px;background:var(--shu);height:1px}
.booking-link{border:1px solid var(--gold);background-image:var(--grain);padding:14px 20px;position:relative}
.booking-link:before{content:'';position:absolute;inset:3px;border:1px solid #b4966538;pointer-events:none}
.home .eyebrow{display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.23em}
.chapter{display:inline-grid;place-items:center;min-width:32px;height:38px;border:1px solid #9a4b3680;color:var(--shu);font:500 18px/1 var(--en);letter-spacing:0;position:relative}
.chapter:after{content:'';position:absolute;inset:2px;border:1px solid #9a4b3620}
.accent-word{color:var(--brown)}
.home h2{font-weight:500;font-size:clamp(36px,3.55vw,49px);line-height:1.7;letter-spacing:.1em}
.serif-en{font-size:30px;font-weight:400;letter-spacing:.025em}
.outline-link,.solid-link{position:relative;font-family:var(--serif);font-size:14px;letter-spacing:.12em;min-height:56px;padding:15px 25px}
.outline-link:before,.solid-link:before{content:'';position:absolute;inset:3px;border:1px solid #b496653a;pointer-events:none}
.text-link{letter-spacing:.09em;font-family:var(--serif);font-size:14px;border-bottom-color:#b49665a0;gap:50px}
.home-story,.home-specials,.home-space,.home-sake,.home-menu,.home-access{background-image:var(--grain);position:relative;isolation:isolate}
.home-story,.home-specials,.home-sake,.home-menu,.home-access{overflow:clip}
.home-story>.wrap,.home-specials>.wrap,.home-sake>.wrap,.home-menu>.wrap,.home-access>.wrap{position:relative;z-index:1}
/* The opening reads like two lines on a hanging scroll. */
.home-hero{height:790px;background:#0b2230;overflow:hidden}
.home-hero:before{content:'';position:absolute;left:-5%;bottom:-80px;width:60%;height:580px;background:var(--tides) center/cover no-repeat;opacity:.32;z-index:-1;pointer-events:none}
.hero-photo{inset:25px 25px 25px auto;width:65%;height:calc(100% - 50px);object-position:67% 50%;border:1px solid #cfb28060}
.hero-shade{background:linear-gradient(90deg,#0b2230 0%,#0b2230 29%,#0b2230e6 36%,#0b223045 52%,#0b223000 70%),linear-gradient(0deg,#0b22308a,transparent 24%);z-index:-2}
.hero-frame{position:absolute;inset:13px;border:1px solid #b4966533;pointer-events:none;z-index:-1}
.hero-content{padding-top:58px;padding-bottom:75px;max-width:1320px}
.hero-kicker{font:400 11px var(--en);letter-spacing:.27em;color:#d8bd8a;margin-bottom:29px}
.hero-calligraphy{display:flex;align-items:center;gap:32px;max-width:480px}
.home-hero h1{display:flex;flex-direction:row-reverse;gap:8px;font:500 clamp(48px,4.1vw,59px)/1.5 var(--serif);letter-spacing:.14em;line-height:1.6;flex-shrink:0;text-shadow:0 2px 20px #0003}
.home-hero h1>span{writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap;display:block}
.hero-side-note{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding-top:8px}
.hero-desc{writing-mode:vertical-rl;height:290px;margin:0;font-family:var(--serif);font-size:13px;letter-spacing:.17em;line-height:2.2;color:#d7dacc}
.hero-english{font:italic 21px/1.35 var(--en);letter-spacing:.02em;margin:0;color:#d5bd91}
.hero-menu{margin-top:33px;min-height:56px;padding:14px 23px;border-color:#bd9f6e;color:#f4eddd;letter-spacing:.12em;font-family:var(--serif);font-size:14px;position:relative;background:#0b223075}
.hero-menu:before{content:'';position:absolute;inset:3px;border:1px solid #bd9f6e35;pointer-events:none}
.hero-menu span{font-family:var(--en);letter-spacing:0;font-size:16px;color:#d9c4a2}
.hero-menu:hover>span{color:var(--brown)}
.hero-foot{left:38px;right:38px;bottom:28px;font-size:10px}
.hero-foot>a{letter-spacing:.22em}
.welcome-strip{background-color:#153643;background-image:var(--grain);border-bottom:3px double #b4966580}
.welcome-strip>.wrap{min-height:79px}
.welcome-strip p{font-family:var(--en);font-size:18px;letter-spacing:.04em}
.welcome-strip p>span:first-child{font-size:17px;color:#d6bf97}
.welcome-strip small,.welcome-strip .strip-note,.welcome-strip a{font-family:var(--sans);font-size:11px;letter-spacing:.03em}
/* Paper, the harbor, and a restrained engraved wave. */
.home-story{padding:115px 0 108px;background-color:#f4f0e6}
.home-story:after{content:'';position:absolute;right:-4%;bottom:0;width:55%;height:380px;background:var(--tides) center/cover no-repeat;opacity:.24;pointer-events:none}
.story-layout{grid-template-columns:.9fr 1.1fr;gap:95px}
.story-layout>div:first-child{padding-left:65px;position:relative}
.story-layout>div:first-child>.eyebrow{position:absolute;left:0;top:2px;writing-mode:vertical-rl;margin:0;gap:17px;align-items:center}
.story-layout .chapter{writing-mode:horizontal-tb}
.home-story h2{writing-mode:vertical-rl;text-orientation:mixed;font-size:49px;letter-spacing:.15em;line-height:1.8;min-height:350px;white-space:nowrap}
.story-layout .serif-en{margin-top:28px;font-size:27px}
.story-copy{font-size:15px;line-height:2.35;padding-top:8px;max-width:540px}
.story-copy>p:first-child{font-family:var(--serif);font-size:19px;line-height:2.1;letter-spacing:.065em}
.story-copy>p:nth-child(2){margin-top:26px}
.story-copy .translation{font-size:12px;line-height:2;max-width:470px;margin-top:24px}
.story-facts{border-top:3px double #b7a887;margin-top:33px;gap:20px}
.story-facts>div{padding:22px 0 18px;border-bottom:1px solid #c6b99d}
.story-facts strong{font-size:63px;line-height:.95;color:var(--indigo)}
.story-facts strong small{font:400 15px var(--serif);margin-left:7px}
.story-facts span{font-family:var(--serif);font-size:12px;letter-spacing:.14em}
.home-specials{background-color:#e8e1d3;padding:96px 0 75px;border-top:1px solid #c6b99d;border-bottom:1px solid #c6b99d}
.home-specials:before{content:'';position:absolute;right:0;bottom:0;width:65%;height:480px;background:var(--tides) right bottom/cover no-repeat;opacity:.19;pointer-events:none}
.editorial-heading{margin-bottom:52px}
.editorial-heading>p{font-family:var(--serif);font-size:14px;letter-spacing:.075em;color:#665f51}
.editorial-heading>p small{letter-spacing:0;font-size:19px}
.signature-grid{gap:55px}
.signature.second{margin-top:90px}
.signature-image{box-shadow:0 12px 25px #4b3c2510;outline:1px solid #a58b6238;outline-offset:6px}
.signature-image:after{content:'';position:absolute;inset:9px;border:1px solid #eee4d33d;pointer-events:none}
.signature-image>span{top:19px;left:19px;writing-mode:vertical-rl;font-family:var(--serif);font-size:12px;letter-spacing:.2em;padding:12px 7px;background:#f4ecdc;color:var(--indigo);border-top:3px solid var(--shu);z-index:1}
.signature-title{margin-top:28px;align-items:center}
.signature-title h3{font-size:29px;letter-spacing:.085em;font-weight:500}
.signature-title p{font-size:34px;color:#81603e;line-height:1.2}
.signature-title p small{font-family:var(--serif);font-size:13px}
.signature-en{font-size:19px;margin-top:8px;color:#896e4c}
.signature-desc{font-family:var(--serif);font-size:15px;line-height:2;letter-spacing:.04em;margin-top:18px;color:#414b46}
.signature .text-link{margin-top:16px}
.specials-bottom{border-top:3px double #b8a88b;margin-top:48px;padding-top:29px}
.specials-bottom p{font-size:20px;letter-spacing:.06em}
.specials-bottom p>span{font-size:11px;letter-spacing:0}
/* Indigo dye, with gold lines following the tide. */
.home-seasons{padding:105px 0 95px;position:relative;isolation:isolate;background-color:#102b38;background-image:var(--grain),radial-gradient(ellipse at 20% 20%,#244d5b,#102b38 65%);overflow:hidden;border-top:5px solid #102b38}
.home-seasons:before{content:'';position:absolute;right:-15%;bottom:-190px;width:85%;height:610px;background:var(--tides) center/cover no-repeat;opacity:.38;z-index:-1;pointer-events:none}
.home-seasons .chapter{color:#d0af76;border-color:#c9ad7560}
.home-seasons .chapter:after{border-color:#c9ad7520}
.home-seasons .eyebrow{color:#d1bb94}
.home-seasons h2{font-size:44px;line-height:1.8}
.home-seasons .translation{font-family:var(--en);font-style:italic;font-size:22px;color:#d0c5b0}
.season-buttons{gap:10px;border-bottom-color:#a48b6155;padding-bottom:17px}
.season-buttons button{position:relative;padding:6px 5px 15px;min-height:118px;border-bottom:0;color:#9aaca8}
.season-buttons button b{display:grid;place-items:center;width:80px;height:80px;margin:0 auto 8px;font-family:var(--brush);font-size:57px;font-weight:400;border:1px solid transparent;line-height:1;border-radius:50%}
.season-buttons small{font-size:11px;letter-spacing:.14em;color:#c9c3b3}
.season-buttons button.active{color:#e8cf9c}
.season-buttons button.active b{border-color:#bda271b3;background:#b4966508;box-shadow:inset 0 0 0 5px #b4966508}
.season-buttons button.active:after{content:'';position:absolute;right:14px;top:5px;width:8px;height:8px;background:#ae573e;border-radius:50%}
.season-panel{padding-top:30px}
.season-month{letter-spacing:.18em;font-size:10px;color:#cbb284}
.season-panel h3{font-size:31px;letter-spacing:.12em;line-height:1.7;margin-top:13px}
.season-description{font-family:var(--serif);font-size:15px;letter-spacing:.045em;line-height:2;color:#d4dbcf}
.season-english{font-size:19px;line-height:1.5;margin-top:14px}
.light-text-link{font-family:var(--serif);font-size:14px;border-color:#b49b6970}
/* A vertical title beside the room, like a handwritten guest book. */
.home-space{background-color:#f2ecdf}
.space-photo{min-height:670px;border-bottom:1px solid #b9a785}
.space-photo:after{content:'';position:absolute;inset:18px;border:1px solid #e8d4b75e;pointer-events:none}
.space-copy{padding:70px 40px;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;align-content:center;position:relative}
.space-copy h2{grid-column:2;grid-row:1/7;writing-mode:vertical-rl;font-size:42px;line-height:1.8;letter-spacing:.16em;white-space:nowrap;align-self:start;margin-top:18px}
.space-copy>.eyebrow,.space-copy>p,.space-copy>.text-link{grid-column:1}
.space-copy>.eyebrow{font-size:9px;gap:9px;align-self:start;line-height:1.7;white-space:nowrap}
.space-copy>p:not(.eyebrow){font-family:var(--serif);font-size:14px;letter-spacing:.035em;line-height:2.2;margin-top:22px}
.space-copy>.translation{font-family:var(--sans)!important;letter-spacing:0!important;font-size:11px!important;line-height:1.9!important}
.space-copy>.text-link{font-size:13px;gap:30px;margin-top:24px;min-height:48px}
.home-sake{padding:115px 0;background-color:#f4f0e6}
.home-sake:after{content:'';position:absolute;left:-12%;bottom:-30px;width:65%;height:400px;background:var(--tides) center/cover no-repeat;opacity:.23;pointer-events:none}
.sake-copy>p:not(.eyebrow){font-family:var(--serif);font-size:15px;line-height:2.15;letter-spacing:.04em}
.sake-price{border-top:3px double #bbaa8d;border-bottom-color:#c7b99d;padding:22px 0}
.sake-price>span{font-family:var(--serif);font-size:15px;letter-spacing:.06em}
.sake-price>span>small{font-size:18px;letter-spacing:0}
.sake-price strong{font-size:38px;color:#80623f}
.sake-layout figure{position:relative;padding:10px;border:1px solid #b29b7566}
.sake-layout figure:before{content:'';position:absolute;inset:4px;border:1px solid #b29b752b;pointer-events:none}
.sake-layout figure>img{aspect-ratio:1.25}
.sake-layout figcaption{position:absolute;left:12px;bottom:-30px;font-family:var(--serif);letter-spacing:.03em;font-size:11px;color:#796b54}
/* Menu paper with a rule and an inset border. */
.home-menu{background-color:#e6dece;padding:95px 0 90px;border-top:1px solid #c7b99d;border-bottom:1px solid #c7b99d}
.home-menu-grid>div:first-child{padding:30px 28px 24px;background-color:#f6f0e3;background-image:var(--grain);border:1px solid #c8b89b;box-shadow:4px 5px 0 #f0e8d8,5px 6px 0 #bda77e5c;position:relative}
.home-menu-grid>div>h3{font-size:24px;letter-spacing:.1em;border-bottom:3px double #a6926d;padding-bottom:17px;margin-bottom:10px}
.home-menu-grid>div>h3>small{font-size:17px;letter-spacing:0}
.home-menu .row{font-family:var(--serif);font-size:15px;padding:13px 0;border-color:#d8ccb7}
.home-menu .row .n small{font-family:var(--en);font-style:italic;font-size:15px;color:#8b7a5c;margin-top:3px}
.home-menu .row .p{font-size:16px;font-weight:500;color:#745c3d}
.omakase{background-color:#102d3a;background-image:var(--grain),radial-gradient(ellipse at 0 0,#274c59,#102b38 80%);border:1px solid #aa8d5d;padding:42px 37px;position:relative}
.omakase:before{content:'';position:absolute;inset:7px;border:1px solid #b49b6959;pointer-events:none}
.omakase:after{content:'献立';position:absolute;right:28px;top:75px;writing-mode:vertical-rl;font-family:var(--serif);font-size:105px;line-height:1;letter-spacing:.1em;color:#bd9c6910;pointer-events:none}
.omakase>*{position:relative;z-index:1}
.omakase h3{font-size:30px;letter-spacing:.12em;line-height:1.7}
.omakase>.serif-en{font-size:22px;letter-spacing:0;line-height:1.3}
.omakase>p:not(.eyebrow):not(.serif-en):not(.fine-print){font-family:var(--serif);font-size:15px;letter-spacing:.07em;margin-top:32px}
.omakase-price{font-size:56px;color:#e2c695;padding-top:25px}
.omakase-price small{color:#e6decd;font-family:var(--serif);font-size:13px}
.omakase .fine-print{font-size:11px;color:#c6c9b9;margin-top:12px}
.home-access{background-color:#f4f0e6;padding:110px 0 100px}
.home-access:before{content:'';position:absolute;left:-12%;bottom:-10px;width:58%;height:490px;background:var(--tides) center/cover no-repeat;opacity:.27;pointer-events:none}
.access-copy>h3{font-size:24px;letter-spacing:.08em}
.access-copy>p{font-size:14px;line-height:2.1}
.access-copy dl{border-top:3px double #b5a381;border-bottom-color:#c6b99f;padding:25px 0;font-size:13px;gap:13px}
.access-copy dt{font-family:var(--serif);letter-spacing:.15em;color:#82653f}
.access-copy>.fine-print,.access-copy>.demo-address{font-size:11px}
.site-footer{position:relative;isolation:isolate;overflow:hidden;background-color:#0c2532;background-image:var(--grain),radial-gradient(ellipse at 20% 0,#244a57,#0c2532 75%);border-top:5px double #b396656e;padding-top:60px}
.site-footer:before{content:'';position:absolute;inset:0;background:var(--tides) right center/900px no-repeat;opacity:.2;z-index:-1;pointer-events:none}
.footer-brand{font-size:64px;line-height:1.15;letter-spacing:.06em}
.footer-brand small{margin-top:15px;font-size:10px;letter-spacing:.2em}
.site-footer nav a{font-family:var(--serif);font-size:13px;letter-spacing:.06em}
.footer-bottom{border-color:#aa8e5b40;margin-top:35px;padding-top:25px;color:#acbdb8;font-size:10px}
.to-top{border-color:#b4966569;color:#d8bd8b}
/* The same craft extends to every detail page. */
.subpage section:not(.page-hero){background-image:var(--grain)}
.subpage .season-bg{background-color:#eae3d5}
.subpage .on-dark{background-color:#122f3c;background-image:var(--grain),radial-gradient(ellipse at 10% 0,#254b58,#122f3c 75%)!important}
.subpage .page-hero{border-bottom:5px double #b4966560;min-height:440px}
.page-hero h1{font-size:clamp(36px,4.6vw,62px);font-weight:500;letter-spacing:.17em;line-height:1.6}
.page-hero .h1-en{font-size:32px;letter-spacing:.06em;color:#d2b887;margin:8px 0 20px}
.page-hero p.lead{font-family:var(--serif);font-size:16px;line-height:2;letter-spacing:.04em}
.page-hero .lead>span{font-family:var(--sans);font-size:12px;letter-spacing:0;line-height:1.9}
.toc a{font-family:var(--serif);font-size:13px;letter-spacing:.04em;border-color:#b59b6e60;background:#102b3844}
.subpage .eyebrow{letter-spacing:.18em;color:#89673e;font-size:11px}
.subpage .h2{font-size:clamp(28px,3vw,39px);font-weight:500;line-height:1.8;letter-spacing:.08em}
.subpage .sec-head{border-left:2px solid #ac8c56;padding-left:23px}
.subpage .menu-grid h3{letter-spacing:.12em;font-size:25px;border-bottom:3px double #ac9672;padding-bottom:16px}
.subpage .menu-grid h3 span{letter-spacing:0;font-size:20px}
.subpage .row{font-family:var(--serif);font-size:16px;padding:15px 0;border-color:#d6cbb8}
.subpage .row .n small{font-family:var(--en);font-style:italic;font-size:16px;margin-top:5px;letter-spacing:0;color:#7b705e}
.subpage .row .p{color:#735d3d;font-size:16px}
.subpage .feature h3{font-size:34px;line-height:1.6;letter-spacing:.1em}
.feature .story{font-family:var(--serif);font-size:16px!important;line-height:2.1!important;letter-spacing:.035em}
.feature-photo{padding:8px;border:1px solid #bba68066}
.feature .mark-box{background-image:var(--grain);background-color:#e8dfce;border:1px solid #c5b08b}
.feature .mark-box .k{font-family:var(--brush);font-weight:400}
.feature .price{font-family:var(--en);font-size:35px!important;color:#8e6d43}
.subpage .note-box{background-color:#eae2d3;background-image:var(--grain);border-left:2px solid #a98a56}
.subpage .course-steps .num{font-family:var(--serif);font-size:28px;color:#cbb184}
.subpage .course-steps .t{font-size:20px;letter-spacing:.13em}
.subpage .course-steps li{background-image:var(--grain)}
.subpage .sake h3{font-size:26px;letter-spacing:.1em}
.subpage .sake .p{color:#87663c;font-weight:500}
.subpage .sake .brew{letter-spacing:.12em}
.subpage .season-menu>div,.subpage .info-card,.subpage .day,.subpage .manner,.subpage .phrase,.subpage .fish{background-image:var(--grain)}
.subpage .day{border-color:#c9bda6}
.subpage .faq summary{font-family:var(--serif);letter-spacing:.04em;font-size:18px}
.subpage .faq summary small{font-size:19px;letter-spacing:0}
.subpage .back-top{background-image:var(--grain);border-top:1px solid #c2b193}
.booking-dialog{background-image:var(--grain);border:1px solid #a78a58;outline:4px solid #f5f0e5}
.dialog-info{background-image:var(--grain);border-top:3px double #bbab8c;border-bottom:1px solid #bbab8c}
@media(min-width:1450px){.home-hero{height:820px}.hero-content{padding-top:70px}.home-hero h1{font-size:62px}}
@media(max-width:1200px){.home-hero{height:770px}.hero-calligraphy{gap:25px;max-width:400px}.home-hero h1{font-size:53px}.hero-desc{font-size:12px}.hero-english{font-size:18px}.hero-photo{width:65%;object-position:66% center}.story-layout{gap:60px}.home-story h2{font-size:43px;min-height:325px}.home h2{font-size:39px}.signature-grid{gap:40px}.signature-title h3{font-size:26px}.signature-title p{font-size:31px}.home-seasons h2{font-size:38px}.season-buttons button b{width:70px;height:70px;font-size:52px}.space-copy{padding:60px 32px;column-gap:18px}.space-copy h2{font-size:36px}.space-copy>p:not(.eyebrow){font-size:13px}.space-copy>.eyebrow{letter-spacing:.12em}.omakase h3{font-size:27px}.home-menu-grid>div:first-child{padding:28px 22px}}
@media(max-width:1000px){.site-header>.wrap{min-height:84px}.site-header .nav{top:84px;background-image:var(--grain)}.brand b{font-size:38px}.brand small{font-size:8px}.booking-link{padding:12px 17px}.hero-content{padding-top:65px}.home-hero{height:750px}.home-hero h1{font-size:49px}.hero-calligraphy{gap:24px}.hero-desc{font-size:12px;line-height:2}.hero-english{font-size:17px}.hero-photo{width:68%;object-position:65% center}.hero-shade{background:linear-gradient(90deg,#0b2230 0%,#0b2230f0 27%,#0b223099 45%,#0b223014 70%),linear-gradient(0deg,#0b223099,transparent 25%)}.hero-menu{font-size:13px;padding:13px 20px;gap:20px}.story-layout{gap:45px}.story-layout>div:first-child{padding-left:48px}.home-story h2{font-size:39px;min-height:310px}.story-copy{font-size:14px}.story-copy>p:first-child{font-size:18px}.story-facts{gap:12px}.story-facts strong{font-size:53px}.story-facts span{font-size:11px}.signature-title{gap:10px}.signature-title h3{font-size:23px}.signature-title p{font-size:29px}.signature-desc{font-size:14px}.home-seasons h2{font-size:34px}.season-buttons{gap:2px}.season-buttons button b{width:63px;height:63px;font-size:47px}.season-buttons button.active:after{right:5px}.season-panel h3{font-size:27px}.season-description{font-size:14px}.home-space{grid-template-columns:1.1fr 1fr}.space-copy{padding:55px 27px;column-gap:16px}.space-copy h2{font-size:32px;line-height:1.65}.space-copy>.eyebrow{grid-column:1/3;grid-row:1;white-space:normal;margin-bottom:20px}.space-copy h2{grid-row:2/7}.space-copy>p:not(.eyebrow){font-size:12px}.space-copy>.translation{font-size:10px!important}.space-photo{min-height:650px}.sake-price{gap:15px}.sake-price>span{font-size:14px}.sake-price strong{font-size:33px}.omakase{padding:35px 26px}.omakase h3{font-size:24px;letter-spacing:.09em}.omakase-price{font-size:46px}.home-menu-grid{gap:30px}.home-menu .row{font-size:13px}.home-menu-grid>div>h3{font-size:21px}.home-menu-grid>div>h3>small{display:block;margin:8px 0 0;font-size:17px}.subpage .feature h3{font-size:29px}.footer-brand{font-size:57px}.site-footer nav a{font-size:12px}}
@media(max-width:760px){
 .mobile-only{display:initial}
 .site-header>.wrap{min-height:78px;padding:0 18px;gap:11px}.site-header .nav{top:78px}
 .brand b{font-size:35px}.brand small{font-size:7px;letter-spacing:.18em}.brand em{font-size:9px}
 .brand-symbol{width:28px;height:36px;font-size:21px}.brand{gap:9px}.booking-link{font-size:9px;padding:11px 12px;gap:7px}
 .home h2{font-size:34px;letter-spacing:.1em;line-height:1.7}.home .eyebrow{font-size:9px;gap:12px;margin-bottom:22px}.chapter{min-width:27px;height:33px;font-size:16px}
 .home-hero{height:720px;min-height:0}.hero-photo{inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);object-position:63% center;border-color:#bda67a55}
 .hero-frame{inset:6px;border-color:#bda67a45}.hero-shade{background:linear-gradient(90deg,#0b2230e8 0%,#0b2230bf 30%,#0b223077 75%,#0b223055),linear-gradient(0deg,#0b2230d9,transparent 35%)}
 .home-hero:before{left:-20%;width:115%;height:370px;bottom:-50px;opacity:.27}
 .hero-content{padding-top:47px;padding-bottom:80px;padding-left:33px;padding-right:26px}
 .hero-kicker{font-size:9px;letter-spacing:.21em;margin-bottom:32px}
 .home-hero h1{font-size:41px;gap:5px;line-height:1.6;letter-spacing:.15em}
 .hero-calligraphy{gap:26px;align-items:center;max-width:100%}
 .hero-side-note{padding-top:4px;gap:23px;max-width:125px}
 .hero-desc{font-size:11px;height:242px;line-height:2.05;letter-spacing:.13em;color:#dce0d1}
 .hero-english{font-size:17px;line-height:1.3;color:#d7bc8b;width:150px}
 .hero-menu{font-size:12px;min-height:53px;margin-top:37px;padding:13px 18px;gap:24px;letter-spacing:.09em;background:#0b223088}
 .hero-menu span{font-size:15px}.hero-foot{left:26px;right:26px;bottom:27px}.hero-foot>span{font-size:8px;letter-spacing:.14em}.hero-foot>small{font-size:8px}
 .welcome-strip>.wrap{padding:15px 24px 10px;min-height:91px;gap:5px 10px}.welcome-strip p{font-size:16px;letter-spacing:.02em}.welcome-strip p>span:first-child{font-size:15px;margin-right:8px}.welcome-strip small{font-size:9px;margin-left:8px}.welcome-strip a{font-size:9px;min-height:30px}
 .home-story{padding:65px 0 68px}.home-story:after{width:100%;height:300px;right:-25%;bottom:-20px;opacity:.24}
 .story-layout{grid-template-columns:1fr;gap:35px}.story-layout>div:first-child{padding-left:54px;min-height:350px;display:flex;align-items:flex-start;gap:27px}
 .story-layout>div:first-child>.eyebrow{top:0;gap:15px;font-size:9px}
 .home-story h2{font-size:37px;line-height:1.75;min-height:290px;letter-spacing:.13em}
 .story-layout .serif-en{font-size:20px;line-height:1.35;margin:47px 0 0;max-width:115px;writing-mode:vertical-rl;text-orientation:mixed;max-height:265px}
 .story-copy{font-size:14px;line-height:2.3;padding-top:0}.story-copy>p:first-child{font-size:18px;line-height:2}.story-copy>p:nth-child(2){margin-top:20px}.story-copy .translation{font-size:11px;line-height:2;margin-top:23px}
 .story-facts{margin-top:28px;gap:15px}.story-facts strong{font-size:52px}.story-facts strong small{font-size:13px;margin-left:4px}.story-facts span{font-size:10px;letter-spacing:.1em;margin-top:12px}
 .home-specials{padding:65px 0 48px}.home-specials:before{width:150%;right:-50%;height:430px;opacity:.23}.editorial-heading{margin-bottom:35px}.editorial-heading>p{font-size:13px;line-height:1.9;margin-top:20px}.editorial-heading>p small{font-size:17px;margin-top:8px}
 .signature-grid{gap:45px;grid-template-columns:1fr}.signature.second{margin-top:0}.signature-image{outline-offset:4px}.signature-image>span{top:15px;left:15px;font-size:11px;padding:10px 6px}.signature-image:after{inset:7px}
 .signature-title{margin-top:24px;align-items:center;gap:8px}.signature-title h3{font-size:24px;letter-spacing:.04em}.signature-title p{font-size:30px}.signature-title p small{font-size:11px}.signature-en{font-size:17px;margin-top:8px}.signature-desc{font-size:14px;line-height:2.1;margin-top:17px}.signature .text-link{font-size:13px;margin-top:13px}
 .specials-bottom{margin-top:35px;padding-top:25px;gap:23px}.specials-bottom p{font-size:18px}.specials-bottom p>span{font-size:10px;line-height:1.9;margin-top:12px}.outline-link,.solid-link{font-size:13px;min-height:52px;padding:13px 23px}
 .home-seasons{padding:65px 0 58px}.home-seasons:before{width:180%;right:-70%;bottom:-260px;opacity:.45}.home-seasons h2{font-size:33px;line-height:1.8}.home-seasons h2 br{display:initial}.home-seasons .translation{font-size:22px;margin-top:18px}.light-text-link{font-size:13px;margin-top:18px}
 .seasons-layout{gap:32px}.season-buttons{gap:4px;padding-bottom:16px}.season-buttons button{min-height:103px;padding:5px 2px 7px}.season-buttons button b{width:66px;height:66px;font-size:49px;margin-bottom:10px}.season-buttons small{font-size:9px}.season-buttons button.active:after{right:5px;top:3px;width:7px;height:7px}
 .season-panel{padding-top:25px;min-height:205px}.season-month{font-size:9px;letter-spacing:.09em}.season-panel h3{font-size:27px;letter-spacing:.08em;margin:14px 0}.season-description{font-size:14px;line-height:2.1}.season-english{font-size:18px;margin-top:13px}
 .home-space{grid-template-columns:1fr}.space-photo{min-height:0;aspect-ratio:1.15}.space-photo:after{inset:12px}.space-photo>span{font-size:8px;left:20px;bottom:19px}
 .space-copy{padding:52px 24px 57px;grid-template-columns:minmax(0,1fr) auto;column-gap:21px}.space-copy>.eyebrow{grid-column:1/3;grid-row:1;font-size:9px;gap:12px;margin-bottom:16px}.space-copy h2{grid-row:2/7;grid-column:2;font-size:34px;line-height:1.7;margin-top:10px;letter-spacing:.15em}.space-copy>p:not(.eyebrow){font-size:13px;line-height:2.2;margin-top:18px;letter-spacing:.02em}.space-copy>.translation{font-size:10px!important;line-height:1.85!important}.space-copy>.text-link{font-size:12px;gap:18px;margin-top:19px}
 .home-sake{padding:70px 0 65px}.home-sake:after{width:130%;left:-50%;bottom:0;height:350px}.sake-layout{gap:56px}.sake-layout figure{padding:7px;margin:0 4px}.sake-layout figure>img{aspect-ratio:1.3}.sake-layout figcaption{font-size:9px;bottom:-27px;left:5px}
 .sake-copy>p:not(.eyebrow){font-size:14px;line-height:2.2;margin-top:23px}.sake-price{padding:20px 0;gap:18px}.sake-price>span{font-size:15px}.sake-price strong{font-size:36px}.sake-price>span>small{font-size:17px}.sake-copy .text-link{font-size:13px;margin-top:20px}
 .home-menu{padding:65px 0 63px}.home-menu h2{font-size:34px}.home-menu .editorial-heading>.outline-link{margin-top:25px}.home-menu-grid{gap:35px}.home-menu-grid>div:first-child{padding:27px 22px 22px;margin-right:4px}.home-menu-grid>div>h3{font-size:23px;line-height:1.5}.home-menu-grid>div>h3>small{display:inline;font-size:17px;margin-left:10px}.home-menu .row{font-size:14px;padding:13px 0}.home-menu .row .n small{font-size:15px}.home-menu .row .p{font-size:16px}
 .omakase{padding:35px 28px}.omakase h3{font-size:26px;letter-spacing:.09em}.omakase>.serif-en{font-size:22px;margin-top:12px}.omakase>p:not(.eyebrow):not(.serif-en):not(.fine-print){font-size:15px;line-height:2.1;margin-top:30px}.omakase-price{font-size:53px;margin-top:10px;padding-top:20px;gap:10px}.omakase-price>small{font-size:12px}.omakase .fine-print{font-size:10px;margin-top:15px}.menu-note{font-size:10px;line-height:1.9;margin-top:27px}
 .home-access{padding:65px 0}.home-access:before{width:130%;left:-50%;height:400px;top:30px;bottom:auto}.access-layout{gap:35px}.access-layout .serif-en{font-size:25px;line-height:1.3;margin-top:23px}.access-layout .outline-link{margin-top:28px}.access-copy{padding-top:30px}.access-copy>h3{font-size:22px;line-height:1.7}.access-copy>p{font-size:13px}.access-copy dl{font-size:12px;gap:13px 10px;padding:22px 0}.access-copy>.fine-print,.access-copy>.demo-address{font-size:10px}.access-booking{gap:17px}.access-booking>small{font-size:9px}
 .site-footer{padding:42px 0 25px}.footer-brand{font-size:56px}.footer-brand small{font-size:9px}.site-footer nav a{font-size:12px}.footer-bottom{font-size:9px;line-height:2.1;gap:13px;margin-top:28px;padding-top:23px}
 .subpage .page-hero{min-height:0;border-bottom-width:4px;padding:45px 0}.page-hero h1{font-size:36px;letter-spacing:.12em;line-height:1.7}.page-hero .h1-en{font-size:27px;margin:10px 0 20px}.page-hero p.lead{font-size:14px;line-height:2.1;letter-spacing:.03em}.page-hero .lead>span{font-size:11px;line-height:1.9}.toc a{font-size:12px;letter-spacing:.02em;padding:9px 10px}.subpage .h2{font-size:28px;line-height:1.8;letter-spacing:.06em}.subpage .sec-head{padding-left:17px}.subpage .eyebrow{font-size:10px}
 .subpage .menu-grid h3{font-size:24px;letter-spacing:.08em}.subpage .menu-grid h3 span{font-size:19px}.subpage .row{font-size:14px;gap:12px;padding:14px 0}.subpage .row .n small{font-size:15px;line-height:1.35;margin-top:5px}.subpage .row .p{font-size:15px}.subpage .feature h3{font-size:27px;letter-spacing:.07em}.feature .story{font-size:15px!important;line-height:2.1!important}.feature-photo{padding:6px}.feature .price{font-size:32px!important}.subpage .faq summary{font-size:16px;line-height:1.9}.subpage .faq summary small{font-size:17px;margin-top:5px}.subpage .course-steps .t{font-size:18px}.subpage .sake h3{font-size:25px}
}
@media(max-width:370px){.site-header>.wrap{padding:0 12px;gap:7px}.brand b{font-size:32px}.brand em{display:none}.brand-symbol{width:26px;height:33px;font-size:20px}.booking-link{font-size:9px;padding:10px}.hero-content{padding-left:26px;padding-right:22px}.home-hero h1{font-size:36px}.hero-calligraphy{gap:21px}.hero-desc{font-size:10px;line-height:2.1;height:235px}.hero-side-note{gap:18px}.hero-english{font-size:15px}.hero-menu{font-size:11px;gap:20px;padding:13px 16px;margin-top:35px}.hero-menu span{font-size:14px}.home-hero{height:675px}.hero-foot{left:22px;right:22px}.hero-foot>span,.hero-foot>small{font-size:7px}.welcome-strip p{font-size:14px}.welcome-strip small{font-size:8px;margin-left:5px}.story-layout>div:first-child{padding-left:44px;gap:18px}.home-story h2{font-size:33px;min-height:270px}.story-layout .serif-en{font-size:18px;max-height:250px}.home h2{font-size:30px}.home-seasons h2{font-size:30px}.signature-title h3{font-size:21px}.signature-title p{font-size:27px}.season-buttons button b{width:56px;height:56px;font-size:43px}.season-panel h3{font-size:25px}.space-copy{column-gap:15px}.space-copy h2{font-size:29px}.space-copy>p:not(.eyebrow){font-size:12px}.sake-price>span{font-size:13px}.sake-price strong{font-size:32px}.home-menu-grid>div:first-child{padding:24px 17px}.home-menu-grid>div>h3{font-size:21px}.home-menu-grid>div>h3>small{display:block;margin:7px 0 0}.home-menu .row{font-size:13px}.omakase{padding:32px 24px}.omakase h3{font-size:23px}.omakase-price{font-size:47px}.page-hero h1{font-size:30px}.subpage .row{font-size:13px}.subpage .row .p{font-size:14px}.subpage .row .n small{font-size:14px}.footer-bottom p>span{margin-left:10px}}
@media(max-width:370px){.hero-english{width:133px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
