*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;color:#3b2a20;background:#fffaf2;line-height:1.8}
a{color:#8a3b20}
img,svg{max-width:100%;height:auto;display:block}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:#fff;padding:.5em;z-index:10}
.notice{margin:0;padding:.5em 1em;background:#3b2a20;color:#fff;text-align:center;font-size:.85rem}
.site-header{padding:1em;display:flex;flex-wrap:wrap;gap:.5em 1.5em;align-items:center;justify-content:space-between;max-width:1080px;margin:0 auto}
.logo{margin:0;font-weight:700;font-size:1.25rem;color:#8a3b20}
.site-header ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25em 1em;font-size:.9rem}
.site-header a{text-decoration:none}
.site-header a:hover{text-decoration:underline}
.hero{max-width:1080px;margin:0 auto;padding:0 1em}
.hero h1{margin:.3em 0 0;font-size:2rem;line-height:1.3}
.fict{font-size:.55em;font-weight:400;margin-left:.2em}
.tagline{margin:.3em 0 1em;font-size:1.05rem}
.hero img{border-radius:12px;width:100%}
.block{max-width:1080px;margin:0 auto;padding:2.5em 1em 0}
h2{font-size:1.4rem;border-bottom:3px solid #e2b77a;padding-bottom:.2em;margin:0 0 .8em}
.small{font-size:.9rem;margin-top:-.4em}
.menu{list-style:none;margin:0;padding:0;display:grid;gap:1em}
.menu li{background:#fff;border:1px solid #ecdcc4;border-radius:10px;padding:1em}
.menu h3{margin:0;font-size:1.05rem}
.menu p{margin:.2em 0 0}
.price{font-weight:700;color:#8a3b20}
.info{display:grid;grid-template-columns:6em 1fr;gap:.4em 1em;margin:0}
.info dt{font-weight:700}
.info dd{margin:0}
.map{margin:1.5em 0 0}
.map svg{border-radius:10px;border:1px solid #ecdcc4;width:100%;max-width:560px}
.map figcaption{font-size:.85rem;margin-top:.3em}
.site-footer{margin-top:3em;padding:2em 1em;background:#3b2a20;color:#fff;text-align:center;font-size:.9rem}
.site-footer p{margin:.3em 0}
.site-footer a{color:#ffd9a0}
.notice-foot{font-weight:700}
@media (min-width:700px){
  .menu{grid-template-columns:repeat(2,1fr)}
  .hero{display:grid;grid-template-columns:1fr 1.6fr;gap:2em;align-items:center}
  .hero h1{font-size:2.6rem}
}
@media (min-width:1000px){.menu{grid-template-columns:repeat(3,1fr)}}
