:root{--red:#e60012;--blue:#006bb6;--ink:#263b4a;--cream:#fffbe9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'Noto Sans JP','Yu Gothic','Meiryo',sans-serif;font-size:14px;line-height:1.95}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}header{height:100px;padding:16px 5%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eee}header img{width:245px}nav{display:flex;gap:27px;align-items:center;font-size:12px;font-weight:800}#toggle{display:none}.button{display:inline-block;border-radius:50px;padding:15px 27px;font-size:13px;font-weight:800;transition:transform .2s}.button:hover{transform:translateY(-3px)}.red,.badge{background:var(--red);color:white}.blue{background:var(--blue);color:#fff}.hero{background:var(--cream);overflow:hidden}.awning{height:28px;background:repeating-linear-gradient(90deg,var(--red) 0,var(--red) 65px,var(--blue) 65px,var(--blue) 130px);border-radius:0 0 12px 12px}.hero-inner{max-width:1180px;margin:auto;padding:62px 35px 40px;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--blue);margin:0 0 15px}.badge{display:inline-block;border-radius:4px;padding:5px 17px;font-size:13px;font-weight:800;letter-spacing:.08em;margin:0 0 20px}h1{color:var(--red);font-size:clamp(42px,4.6vw,66px);line-height:1.35;letter-spacing:.02em;margin:0 0 20px;font-weight:900}h1 span{color:var(--blue)}p{margin:0 0 20px}.intro{font-size:14px;font-weight:700}.hero-art{position:relative}.disc{padding:30px;background:#fff;border:10px solid #f7e89f;border-radius:48% 48% 44% 46%;transform:rotate(3deg)}.disc img{border-radius:50%;transform:rotate(-3deg)}.bubble{position:absolute;right:-10px;top:-40px;border:5px solid white;border-radius:50%;background:var(--blue);color:#fff;text-align:center;width:133px;height:133px;display:flex;flex-direction:column;justify-content:center;line-height:1.5;font-size:13px;transform:rotate(10deg)}.bubble b{font-size:25px}.credit{text-align:right;font-size:10px;color:#76828a;margin:6px 0}.hero-foot{display:flex;justify-content:space-between;max-width:1110px;margin:auto;border-top:1px solid #e8dfbd;padding:16px 0;font-size:12px;letter-spacing:.08em}.quick{max-width:1110px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #dae3ea}.quick a{padding:25px;position:relative;border-right:1px solid #dae3ea}.quick a:last-child{border:0}.quick small{display:block;font-size:10px;letter-spacing:.1em;color:var(--blue);font-weight:800}.quick b{font-size:15px}.quick span{position:absolute;right:20px;bottom:27px;color:var(--red)}.section{max-width:1180px;margin:auto;padding:85px 35px}.title{text-align:center;margin-bottom:40px}.title>p{color:var(--red);font-size:11px;letter-spacing:.17em;font-weight:800;margin:0 0 10px}h2{font-size:34px;line-height:1.65;letter-spacing:.04em;margin:0 0 15px}h3{line-height:1.7}.two{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.photos{display:grid;grid-template-columns:1fr 1fr;gap:15px}.photos img{width:100%;height:340px;object-fit:cover;border-radius:120px 120px 12px 12px}.photos img:last-child{margin-top:50px}.lead{font-size:22px;color:var(--blue);margin-top:0}.text-link{color:var(--blue);font-weight:800;border-bottom:1px solid;padding-bottom:6px}.guide{background:#edf8fc}.guide-box{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;background:#fff;border:2px solid var(--blue);border-radius:20px;padding:35px 50px;max-width:1040px;margin:auto}.date{color:var(--red);font-size:85px;line-height:1;letter-spacing:-.07em;font-weight:900;border-right:1px solid #d4e5ed}.date span{font-size:43px;color:var(--blue);margin:0 8px}.date small{display:block;font-size:12px;letter-spacing:.12em;margin-top:18px}.pill{display:inline-block;border-radius:30px;padding:5px 17px;background:#fff3bc;color:var(--ink);font-size:12px;font-weight:800}.guide-box h3{font-size:27px;margin:14px 0}.guide-box p{margin:0}.note{font-size:11px!important;color:#647580;line-height:1.9;margin:15px 0 0!important}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;text-align:center;padding-top:35px}.steps b{font-size:28px;letter-spacing:.1em;color:var(--blue)}.steps h3{font-size:17px;margin:5px}.steps p{font-size:13px;margin:0}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.menu-grid img{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:15px}.menu-grid small{display:block;font-size:10px;color:var(--red);font-weight:800;letter-spacing:.15em;margin-top:18px}.menu-grid h3{font-size:18px;margin:8px 0 12px}.menu-grid p{font-size:12px}.center{text-align:center}.menu-foot{text-align:center;border-top:1px solid #dde4e8;padding-top:25px;margin-top:25px;font-weight:700}.campaign{background:var(--red);color:#fff}.campaign .section{padding-top:55px;padding-bottom:55px}.campaign-top{padding-bottom:20px;border-bottom:1px solid #fff5;margin-bottom:35px;font-size:12px;letter-spacing:.08em}.campaign-top .pill{background:white;color:var(--red)}.campaign .eyebrow{color:#ffe79d}.campaign h2{font-size:29px}.price{display:flex;gap:7px;align-items:center;margin:12px 0}.price strong{font-size:72px;line-height:1.2;letter-spacing:-.03em}.price span{display:flex;align-items:center;font-size:22px;font-weight:800}.price small{font-size:12px;line-height:1.5;padding-left:5px}.campaign h3{font-size:20px}.campaign-details{padding:25px 30px;border:1px solid #fff7;border-radius:15px}.campaign-details h3{font-size:17px;margin-top:0}.campaign .note{color:#fff}.campaign dl{grid-template-columns:40px 1fr}.goods-img{border-radius:25px}.goods h2{font-size:38px;color:var(--blue)}.goods .pill{margin-bottom:20px}.goods small{font-size:10px}.light-blue{background:#e5f5fc;color:var(--blue)}.news{padding-top:20px}.left{text-align:left;margin-bottom:15px}.news>a{display:flex;align-items:center;gap:20px;border-top:1px solid #dde4e8;padding:23px 0;font-size:12px}.news>a:last-child{border-bottom:1px solid #dde4e8}.news time{font-size:11px;color:#687c8c}.news>a>span{border:1px solid #bbd6e8;color:var(--blue);font-size:10px;min-width:85px;border-radius:4px;padding:2px 9px;text-align:center;white-space:nowrap}.news i{margin-left:auto;color:var(--red);font-style:normal}.access{background:var(--cream)}.access h3{font-size:21px;margin-top:0}dl{display:grid;grid-template-columns:80px 1fr;gap:20px 15px;margin:25px 0 30px;font-size:12px}dt{font-weight:800}dd{margin:0}.hours{font-size:25px;color:var(--blue);letter-spacing:.05em}.map{border-radius:16px;width:100%;background:#fff}.faq{max-width:980px}.faq details{border-bottom:1px solid #d9e1e7;padding:22px 5px}.faq summary{cursor:pointer;list-style:none;font-weight:700;position:relative;padding-left:35px;padding-right:25px}.faq summary:before{content:'Q';position:absolute;left:0;color:var(--blue);font-size:20px}.faq summary:after{content:'+';position:absolute;right:5px;color:var(--red)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;margin:0;padding:18px 25px 0 35px}.social{text-align:center;padding-top:15px}.social h2{font-size:25px}.social p{font-size:13px}.social>div{display:flex;justify-content:center;gap:15px}.social a{min-width:160px;padding:10px;border:1px solid #b8cbd7;border-radius:30px}footer{padding:40px 20px 130px;text-align:center;border-top:1px solid #e2e6ea;font-size:12px}footer img{width:250px;margin:0 auto 25px}footer p:last-child{font-size:10px;margin-top:25px}.sticky{position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--red);color:white;display:flex;justify-content:space-between;align-items:center;padding:12px max(5%,calc((100vw - 1110px)/2));box-shadow:0 -4px 20px #0001}.sticky small{display:block;font-size:10px}.sticky a{background:#fff;color:var(--red);font-size:13px;font-weight:800;border-radius:50px;padding:12px 26px}.mobile{display:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ff9f00;outline-offset:5px}@media(max-width:1000px){nav{gap:15px;font-size:11px}header img{width:205px}.two{gap:30px}.photos img{height:290px}.campaign h2{font-size:25px}.price strong{font-size:58px}.campaign-details{padding:20px}.hero-foot{margin:0 30px}.quick b{font-size:13px}.quick a{padding:22px 15px}.section{padding:70px 30px}}@media(max-width:700px){html{scroll-padding-top:90px}header{height:76px;padding:12px 20px}header img{width:190px}#toggle{display:block;border:0;background:white;color:var(--blue);font-size:12px;font-weight:800}nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;padding:20px;box-shadow:0 12px 16px #0001}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:14px}nav a{padding:12px}nav .button{text-align:center;margin-top:10px}.awning{height:22px}.hero-inner{display:flex;flex-direction:column;padding:32px 25px 20px;gap:30px;align-items:stretch}.eyebrow{font-size:10px;margin-bottom:12px}.badge{font-size:11px;margin-bottom:15px}h1{font-size:44px;line-height:1.32}.intro{font-size:13px;line-height:1.9}.button{font-size:12px;padding:14px 23px}.hero-art{max-width:330px;width:85%;align-self:center}.disc{padding:17px;border-width:7px}.bubble{top:-15px;right:-22px;width:105px;height:105px;font-size:11px}.bubble b{font-size:20px}.hero-foot{margin:0 20px;display:block;text-align:center;font-size:10px;padding:14px 0}.hero-foot>*{display:block}.quick{display:block;margin:0 20px}.quick a{display:block;padding:14px 10px;border-right:0;border-bottom:1px solid #dae3ea}.quick small{display:inline-block;width:130px;font-size:9px}.quick b{font-size:12px}.quick span{right:6px;bottom:14px}.section{padding:55px 22px}h2{font-size:27px}.title{margin-bottom:30px}.title>p{font-size:10px}.two{grid-template-columns:1fr;gap:30px}.photos img{height:245px}.photos img:last-child{margin-top:25px}.lead{font-size:21px}.about p{font-size:13px}.guide-box{grid-template-columns:1fr;padding:24px 20px;gap:20px;text-align:center}.date{font-size:65px;border-right:0;border-bottom:1px solid #d4e5ed;padding-bottom:20px}.date small{display:inline-block;font-size:11px;margin-left:20px}.guide-box h3{font-size:23px}.guide-box p{font-size:12px}.mobile{display:block}.steps{gap:10px;padding-top:25px}.steps b{font-size:22px}.steps h3{font-size:12px}.steps p{font-size:10px}.menu-grid{grid-template-columns:1fr;gap:30px}.menu-grid article{display:grid;grid-template-columns:135px 1fr;gap:18px}.menu-grid img{aspect-ratio:1}.menu-grid small{margin-top:2px;font-size:9px}.menu-grid h3{font-size:14px;margin:5px 0 8px}.menu-grid p{font-size:11px;margin:0}.menu-foot{font-size:12px;line-height:2.5}.campaign .section{padding:40px 22px}.campaign h2{font-size:27px}.price strong{font-size:68px}.campaign h3{font-size:17px}.campaign-details h3{font-size:16px}.goods h2{font-size:32px}.goods p{font-size:13px}.goods .button{width:100%;text-align:center}.news{padding-top:15px}.news h2{font-size:23px}.news>a{display:grid;grid-template-columns:90px 1fr 20px;gap:8px;padding:20px 0}.news>a b{grid-column:1/3;grid-row:2;font-size:12px}.news i{grid-column:3;grid-row:2}.news>a>span{justify-self:start}.access h3{font-size:18px}dl{grid-template-columns:65px 1fr;gap:18px 12px}.access .button{width:100%;text-align:center}.hours{font-size:23px}.faq summary{font-size:13px}.social{padding-top:10px}.social h2{font-size:19px}.social a{min-width:130px;font-size:12px}.sticky{padding:10px 14px;gap:10px}.sticky b{font-size:12px}.sticky small{font-size:9px}.sticky a{font-size:11px;padding:11px 17px;white-space:nowrap}footer{padding-bottom:115px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* イートインスペースの曜日別ご利用条件 */
.eat-in-guide{max-width:1040px;margin:28px auto 0;padding:28px 30px;background:#fff;border-radius:20px}.eat-in-guide>h3{margin:0 0 8px;color:var(--blue);font-size:22px}.eat-in-guide>p{margin:0;font-size:13px}.eat-in-conditions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 0}.eat-in-conditions>div{padding:20px;border:1px solid #bbd6e8;border-radius:12px;background:#f6fbfe}.eat-in-conditions dt{display:inline-block;padding:2px 18px;border-radius:30px;background:var(--blue);color:#fff;font-size:14px}.eat-in-conditions dd{margin-top:12px;font-size:16px;font-weight:700;line-height:1.8}@media(max-width:700px){.eat-in-guide{padding:24px 20px}.eat-in-guide>h3{font-size:19px}.eat-in-conditions{grid-template-columns:1fr;gap:12px}.eat-in-conditions>div{padding:18px}.eat-in-conditions dd{font-size:15px}}
/* 提供されたメニュー表を原寸比率で掲載 */
.menu-sheets{display:grid;gap:48px}.menu-sheets article{min-width:0}.menu-sheets h3{margin:0 0 10px;color:var(--blue);font-size:24px}.menu-sheets article>p{margin-bottom:18px}.menu-sheet-link{display:block;border:1px solid #d9e1e7;border-radius:16px;overflow:hidden;background:#fff}.menu-sheet-link img{width:100%;height:auto;object-fit:contain}.menu-sheets #menu-weekend-holiday .menu-sheet-link{max-width:842px;margin-inline:auto}.menu-sheet-link span{display:block;padding:13px 18px;text-align:center;color:var(--blue);font-weight:800;background:#edf8fc}.menu-sheet-link:hover span{text-decoration:underline}@media(max-width:700px){.menu-sheets{gap:32px}.menu-sheets h3{font-size:21px}.menu-sheets article>p{font-size:13px}.menu-sheet-link{border-radius:10px}.menu-sheet-link span{font-size:13px}}
/* 曜日別メニューへのアンカー */
nav.menu-anchor-nav{display:flex;position:static;gap:14px;justify-content:center;align-items:stretch;margin:0 0 36px;padding:0;background:transparent;box-shadow:none;font-size:14px}nav.menu-anchor-nav a{display:block;padding:14px 24px;border:2px solid var(--blue);border-radius:40px;background:#fff;color:var(--blue);font-weight:800;text-align:center}nav.menu-anchor-nav a:hover{background:#edf8fc}@media(max-width:700px){nav.menu-anchor-nav{flex-direction:column;gap:10px;font-size:13px}nav.menu-anchor-nav a{padding:12px 16px}}

/* テイクアウトメニューも縦横比を保って表示 */
.menu-sheets #menu-takeout .menu-sheet-link{max-width:843px;margin-inline:auto}

/* 提供された高解像度のトップ画像を元の縦横比で表示 */
.disc img{width:100%;height:auto;border-radius:0}
