@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Yuji+Syuku&display=swap');
:root{--red:#921e19;--deep:#5f1712;--gold:#e4b248;--cream:#fff4d9;--ink:#362114;--brush:'Yuji Syuku','Noto Serif JP',serif;--sans:'Noto Sans JP',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#e5b44e;color:var(--ink);font:15px/2 var(--sans);background-image:repeating-conic-gradient(from -5deg at 50% 5%,#f2cb6b2e 0deg 12deg,#b7792117 12deg 24deg);background-attachment:fixed}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #283f39;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--brush);font-weight:400;line-height:1.55}p{margin-bottom:24px}h3{font-size:26px}h2{font-size:clamp(28px,3.7vw,45px)}.wrap{width:min(1040px,calc(100% - 80px));margin-inline:auto}.section{padding:65px 50px;margin-top:55px;margin-bottom:55px}.paper{background:var(--cream);border:1px solid #a76f2b;box-shadow:7px 8px 0 #8d4b2225;position:relative}.paper:before{content:'';position:absolute;inset:8px;border:1px solid #c69958;pointer-events:none}.paper>*{position:relative}.masthead{position:relative;display:flex;align-items:center;justify-content:center;min-height:166px;border-top:11px solid var(--red)}.masthead>.brand{background:var(--red);color:#fff4d9;min-width:440px;min-height:155px;text-align:center;padding:12px 65px 18px;clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)}.brand small{display:block;font:11px var(--sans);letter-spacing:.09em}.brand strong{display:block;font:76px/1.3 var(--brush);letter-spacing:.1em}.brand>span{display:block;font:9px Georgia;letter-spacing:.18em}.phone-head{position:absolute;left:max(25px,calc((100% - 1180px)/2));top:55px;text-align:center;z-index:2}.phone-head small{display:block;font-size:11px;background:var(--red);color:#fff4d9;line-height:2}.phone-head a{font:bold 25px Georgia;white-space:nowrap;color:var(--deep);text-shadow:1px 1px #fff3bf}.tools{position:absolute;right:45px;display:flex;gap:16px;align-items:center}.language{background:none;border:1px solid var(--red);padding:7px 12px;color:var(--red);font-size:12px}.menu-toggle{display:none;border:0;color:var(--red);background:none;font-size:27px}header nav{display:flex;justify-content:center;gap:30px;align-items:center;padding:23px 25px 27px}header nav a{font-family:var(--brush);font-size:19px;line-height:1.6;position:relative;text-align:center}header nav a:hover{color:var(--red)}header nav a[aria-current]:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:3px;background:var(--red);transform:rotate(-2deg)}.hero{position:relative;height:540px;border:8px solid #f8e6ba;box-shadow:0 0 0 2px var(--deep)}.hero-photos{display:grid;grid-template-columns:65% 35%;height:100%;overflow:hidden}.hero-photos img{width:100%;height:100%;object-fit:cover}.hero-food{object-position:50% 42%}.hero-shop{object-position:55% center;border-left:5px solid #f8e6ba}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#160d08d9,transparent 72%);pointer-events:none}.hero-copy{position:absolute;bottom:30px;left:45px;z-index:2;color:#fff6dd;text-shadow:0 2px 5px #0007}.hero-copy>p{letter-spacing:.15em;font-size:12px;margin-bottom:12px}.hero h1{font-size:clamp(34px,4vw,55px);line-height:1.5;margin:0}.hero-stamp{z-index:3;position:absolute;right:35px;top:25px;width:112px;height:112px;border:4px double #f8e9bd;border-radius:50%;background:var(--red);color:var(--cream);display:flex;align-items:center;justify-content:center;text-align:center;font:26px/1.5 var(--brush);transform:rotate(8deg);box-shadow:0 3px 7px #0005}.quickbar{background:var(--red);color:var(--cream);display:flex;align-items:center;justify-content:center;gap:35px;padding:17px 25px;font-size:13px;margin-top:15px}.quickbar>span+span{border-left:1px solid #e8cf9d7d;padding-left:35px}.intro{text-align:center;padding:80px 0 55px}.intro .brush{font-size:clamp(36px,4.5vw,56px);color:var(--red)}.intro>p:not(.eyebrow){line-height:2.5;font-size:15px}.eyebrow{font:10px Georgia;letter-spacing:.18em;color:var(--red);margin-bottom:16px}.button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;max-width:100%;min-height:50px;padding:12px 26px;background:var(--red);border:2px solid var(--red);color:var(--cream);font-weight:500;font-size:14px;box-shadow:3px 3px 0 #5f171240}.button:hover{background:var(--deep);border-color:var(--deep);color:white}.button>b{font:23px Georgia}.section-head{text-align:center;margin-bottom:40px}.section-head h2{color:var(--red)}.dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:35px 0}.dish-card img{width:100%;aspect-ratio:1.35;object-fit:cover;border:5px solid #fff9e9;outline:1px solid #b88e4e;box-shadow:3px 5px 7px #4b2b1918}.dish-card h3{font-size:27px;margin:23px 0 10px}.dish-card p{font-size:13px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.feature-grid>img,.feature-grid>div>img{width:100%;height:auto;aspect-ratio:1.2;object-fit:cover;border:5px solid #fcecc9;outline:1px solid #b88e4e}.feature-grid h2,.feature-grid h3{color:var(--red)}.feature-grid p{font-size:14px}.scene-heading{text-align:center}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.scene-grid>a{background:var(--red);color:var(--cream);text-align:center;padding:28px 15px;border:5px double #ecc87b;box-shadow:3px 4px #8a4a2c33}.scene-grid b{font:italic 30px Georgia;color:#f6ce74}.scene-grid h3{font-size:24px;margin:15px 0 0}.news-row{display:grid;grid-template-columns:110px 1fr 130px;align-items:center;gap:22px;border-top:1px solid #d4ba87;padding:23px 0}.news-row>span:first-child{font:11px Georgia;color:var(--red)}.news-row>.button{font-size:12px;padding:8px 14px}.news-row+ .button{margin-top:20px}.reservation{background:var(--red);color:var(--cream);display:flex;justify-content:space-between;align-items:center;gap:30px;padding:38px 45px;margin-block:65px;border:7px double #e9c271}.reservation h2{font-size:34px;margin-bottom:12px}.reservation p{font-size:13px;margin-bottom:0}.reservation>div:last-child{text-align:center}.big-tel{font:bold 38px/1.6 Georgia,serif;white-space:nowrap}.page-title{padding:45px 0 40px;border-bottom:3px double #ab682e;text-align:center}.page-title h1{font-size:clamp(32px,4vw,48px);color:var(--red);margin:0}.facts{margin:35px 0}.facts>div{display:grid;grid-template-columns:180px 1fr;gap:25px;border-bottom:1px solid #bb8848;padding:20px 0}dt{font-weight:700;font-size:13px}dd{margin:0}.note{font-size:12px;color:#715233}.map{display:block;width:100%;height:350px;border:1px solid #b49156;margin:25px 0}.occasion{display:grid;grid-template-columns:80px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid #d4ba87;scroll-margin-top:30px}.occasion:last-child{border-bottom:0}.occasion h2{font-size:29px;color:var(--red)}.ordinal{font:italic 45px Georgia;color:var(--red)}.buttons{display:flex;flex-wrap:wrap;gap:20px}.faq details{border-bottom:1px solid #d4ba87;padding:22px 0}.faq summary{cursor:pointer;font-weight:500;padding-right:20px}.faq p{font-size:14px;margin-top:18px;margin-bottom:0}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.social-grid h2{font-size:30px}.social-grid .button{font-size:12px;gap:15px;overflow-wrap:anywhere}.notice{border-top:3px double #bc904f;margin-top:40px;padding-top:35px}.notice h3{font-size:24px}.notice p{font-size:13px}.contact-lead{text-align:center}.contact-lead h2{margin-bottom:15px}.contact-lead p{margin-top:20px}.preview-form{max-width:800px;margin:auto}.fields{display:grid;grid-template-columns:1fr 1fr;gap:25px}.fields label{display:block;font-size:13px}.fields input,.fields textarea{display:block;width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid #b7945c;background:#fffdf4;border-radius:0;margin-top:10px;font-size:16px;min-height:48px}.fields .wide{grid-column:1/-1}.consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;margin:25px 0 15px}.consent input{margin-top:9px}.form-result{font-size:13px;margin-top:20px;color:var(--red)}.recruit-detail{border-top:1px solid #c6a467;padding-top:20px;margin-top:30px}.recruit-detail summary{cursor:pointer}.recruit-detail form{margin-top:30px}.legal{font-size:13px}.legal h2{font-size:29px}.legal h3{font-size:24px;margin-top:30px}footer{background:#55231b;color:#fae9bd;padding:45px 0 25px;border-top:7px solid var(--red)}.footer-grid{display:grid;grid-template-columns:210px 1fr 200px;gap:40px;align-items:start}.footer-grid .brand{display:block;text-align:center}.footer-grid .brand strong{font-size:57px}.footer-grid .brand small{font-size:9px}.footer-grid p{font-size:12px}.footer-phone{font:23px Georgia;white-space:nowrap}.footer-link{display:flex;font-size:12px;justify-content:space-between;border-bottom:1px solid #a77b5c;padding:7px 0}.copyright{text-align:center;font-size:10px;margin:35px 0 0}.fixed-call{position:fixed;right:0;top:40%;writing-mode:vertical-rl;background:var(--red);color:var(--cream);padding:23px 14px;z-index:30;border:3px double #f6dc9c;letter-spacing:.12em;font-size:16px;box-shadow:0 3px 10px #0003}.fixed-call b{display:none}html[lang=en] h1,html[lang=en] h2,html[lang=en] h3{font-family:Georgia,serif;line-height:1.35}html[lang=en] header nav a{font:14px Georgia;max-width:150px}html[lang=en] .hero-stamp{font:20px Georgia;line-height:1.5}html[lang=en] .hero h1{font-size:clamp(31px,3.8vw,52px)}
@media(max-width:1100px){.phone-head{left:25px}.phone-head a{font-size:21px}.masthead>.brand{min-width:360px}.phone-head small{font-size:10px}.tools{right:25px}header nav{gap:20px}header nav a{font-size:17px}.wrap{width:calc(100% - 64px)}.hero{height:480px}.fixed-call{top:auto;bottom:20px;right:20px;writing-mode:horizontal-tb;font-size:12px;padding:13px 20px}.section{padding:50px 35px}.reservation{padding:30px}.big-tel{font-size:33px}.reservation h2{font-size:29px}.footer-grid{grid-template-columns:170px 1fr;gap:30px}.footer-grid>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}}
@media(max-width:800px){.phone-head{display:none}.masthead{min-height:145px}.masthead>.brand{min-width:340px;min-height:135px}.brand strong{font-size:62px}.tools{right:20px;gap:10px}.menu-toggle{display:block}.language{padding:6px 9px}header nav{display:none;background:var(--red);color:var(--cream);padding:20px;gap:0}header nav.open{display:grid;grid-template-columns:1fr 1fr}header nav a{font:16px var(--sans);border-bottom:1px solid #d1985f;padding:15px 5px}header nav a:hover{color:white}header nav a[aria-current]:after{display:none}.hero{margin-top:20px;height:440px}.hero h1{font-size:38px}.hero-copy{left:25px;bottom:25px}.hero-stamp{width:90px;height:90px;font-size:22px;right:18px;top:18px}.quickbar{gap:15px;font-size:11px;padding:15px}.quickbar>span+span{padding-left:15px}.section{margin-block:35px}.feature-grid{gap:30px}.dish-grid{gap:25px}.dish-card h3{font-size:23px}.scene-grid{gap:15px}.scene-grid h3{font-size:21px}.reservation{flex-direction:column;text-align:center;gap:20px}.reservation h2{font-size:31px}.social-grid{gap:30px}.social-grid h2{font-size:27px}}
@media(max-width:560px){body{font-size:14px;padding-bottom:66px;background-size:auto;background-attachment:scroll}.wrap{width:calc(100% - 32px)}.masthead{min-height:125px;justify-content:flex-start;padding-left:12px;border-top-width:7px}.masthead>.brand{min-width:0;width:225px;padding:10px 20px 15px;min-height:118px}.brand strong{font-size:52px}.brand small{font-size:8px;letter-spacing:0}.brand>span{font-size:8px}.tools{right:13px;gap:6px}.menu-toggle{font-size:25px;padding:0;width:30px}.language{font-size:10px;padding:5px 6px}.hero{height:430px;border-width:5px;margin-top:18px}.hero-photos{grid-template-columns:1fr}.hero-shop{display:none}.hero-food{object-position:center}.hero-copy{left:20px;bottom:24px;right:16px}.hero-copy>p{font-size:10px}.hero h1{font-size:clamp(31px,8.2vw,42px);line-height:1.55}.hero-stamp{width:78px;height:78px;font-size:20px;border-width:3px}.quickbar{gap:10px;flex-wrap:wrap;padding:13px 10px;line-height:1.8}.quickbar>span:first-child{width:100%;text-align:center}.quickbar>span:nth-child(2){border:0;padding:0}.quickbar>span+span{padding-left:10px}.intro{padding:55px 5px 30px}.intro .brush{font-size:37px}.intro>p:not(.eyebrow){font-size:13px;line-height:2.3}.eyebrow{font-size:9px}.section{padding:38px 23px;margin-block:28px}.paper:before{inset:6px}.brush{font-size:29px}.dish-grid{grid-template-columns:1fr;gap:26px;margin-block:25px}.dish-card img{aspect-ratio:1.35}.dish-card h3{font-size:26px;margin-top:18px}.dish-card p{margin-bottom:5px}.feature-grid{grid-template-columns:1fr;gap:28px}.feature-grid h3{font-size:25px}.scene-grid{grid-template-columns:1fr;gap:13px}.scene-grid>a{padding:17px 15px;display:flex;align-items:center;gap:20px;text-align:left}.scene-grid h3{margin:0;font-size:24px}.news-row{grid-template-columns:1fr;gap:10px;padding:22px 0}.news-row .button{justify-self:start}.reservation{padding:28px 15px;margin-block:40px;border-width:5px}.reservation h2{font-size:28px}.big-tel{font-size:clamp(25px,7.6vw,35px)}.page-title{padding:32px 0 25px}.page-title h1{font-size:32px}.facts>div{grid-template-columns:1fr;gap:6px;padding:17px 0}.map{height:270px}.occasion{grid-template-columns:36px 1fr;gap:15px;padding-block:25px}.ordinal{font-size:29px}.occasion h2{font-size:26px}.occasion p{font-size:13px}.buttons{flex-direction:column;align-items:flex-start}.faq summary{font-size:14px}.faq p{font-size:13px}.social-grid{grid-template-columns:1fr;gap:35px}.social-grid article+article{padding-top:28px;border-top:1px solid #d4ba87}.contact-lead h2{font-size:28px}.contact-lead p{font-size:13px}.fields{grid-template-columns:1fr;gap:20px}.fields .wide{grid-column:auto}.preview-form h3{font-size:24px}.note{font-size:11px}.legal h2{font-size:26px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-grid .brand{text-align:left}.footer-grid>div:last-child{grid-column:auto;grid-template-columns:1fr 1fr;gap:0 20px}.fixed-call{bottom:0;right:0;left:0;height:66px;display:flex;align-items:center;justify-content:center;gap:16px;writing-mode:horizontal-tb;font-size:11px;padding:10px;border:0;border-top:3px double #f6dc9c;letter-spacing:0}.fixed-call b{display:block;font:bold 23px Georgia;white-space:nowrap}html[lang=en] .hero h1{font-size:clamp(26px,7vw,37px)}html[lang=en] header nav a{font-size:13px;max-width:none}html[lang=en] .fixed-call{gap:12px;font-size:10px}html[lang=en] .fixed-call b{font-size:21px}.button{padding:11px 20px;font-size:13px;gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
