@import "https://fonts.googleapis.com/css2?family=Nunito:wght@600;700;800&family=Noto+Sans+JP:wght@400;500;700&display=swap";:root{--font-display:"Nunito", "Noto Sans JP", sans-serif;--font-body:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--color-primary:#4f7a5d;--color-primary-deep:#2f523d;--color-sub:#87ad92;--color-text:#1f3224;--color-text-light:#4f6e58;--color-bg:#e8f2e8;--color-bg-alt:#dceadf}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.7}img{max-width:100%;display:block}a{color:inherit}.lp-root{background:radial-gradient(circle at 84% -10%, color-mix(in srgb, var(--color-primary) 18%, transparent) 0%, transparent 46%), linear-gradient(180deg, var(--color-bg) 0%, color-mix(in srgb, var(--color-bg) 68%, var(--color-bg-alt) 32%) 52%, var(--color-bg) 100%);color:var(--color-text)}.container{width:min(1120px,100% - 52px);margin:0 auto}#section-header{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb, var(--color-bg) 76%, #fff 24%);border-bottom:1px solid color-mix(in srgb, var(--color-sub) 40%, transparent);position:sticky;top:0}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:20px;min-height:82px;display:grid}.brand-lockup{align-items:center;gap:12px;display:flex}.shop-logo{border:1px solid color-mix(in srgb, var(--color-sub) 50%, #fff 50%);background:color-mix(in srgb, var(--color-bg-alt) 84%, #fff 16%);border-radius:10px;width:auto;height:40px;padding:4px}.shop-name{color:var(--color-primary-deep);font-family:var(--font-display);letter-spacing:.02em;margin:0;font-size:clamp(1.1rem,2.1vw,1.45rem);font-weight:800}.shop-tagline{color:var(--color-text-light);margin:2px 0 0;font-size:.82rem}.header-nav{justify-content:center;gap:clamp(16px,2.8vw,40px);display:flex}.header-nav a{color:var(--color-primary-deep);letter-spacing:.01em;white-space:nowrap;font-weight:700;text-decoration:none}.header-nav a:hover{color:var(--color-primary)}.header-socials{gap:10px;display:flex}.header-socials a{border:1px solid color-mix(in srgb, var(--color-sub) 54%, #fff 46%);width:40px;height:40px;color:var(--color-primary-deep);background:color-mix(in srgb, var(--color-bg-alt) 90%, #fff 10%);border-radius:999px;place-items:center;font-size:.74rem;font-weight:800;text-decoration:none;display:grid}#section-hero{align-items:center;min-height:min(100vh,860px);padding:74px 0 58px;display:grid;position:relative}.hero-overlay{background:radial-gradient(circle at 50% 36%, color-mix(in srgb, var(--color-bg) 18%, #fff 82%) 0%, color-mix(in srgb, var(--color-bg) 46%, #fff 54%) 42%, color-mix(in srgb, var(--color-bg) 72%, transparent) 70%, transparent 100%);pointer-events:none;position:absolute;inset:0}.hero-inner{z-index:1;text-align:center;place-items:center;gap:14px;display:grid;position:relative}.hero-symbol{margin-bottom:6px}.hero-symbol-image{width:min(112px,28vw);filter:drop-shadow(0 10px 22px color-mix(in srgb, var(--color-primary) 26%, transparent))}.hero-copy .shop-name{margin-bottom:12px;font-size:clamp(2.8rem,7.8vw,5.1rem);line-height:1.02}.hero-lead{color:var(--color-primary-deep);font-size:clamp(1.35rem,2.8vw,1.86rem);font-family:var(--font-display);letter-spacing:.01em;margin:0 0 10px;font-weight:700}.hero-description{color:var(--color-text-light);max-width:62ch;margin:0;font-size:clamp(1rem,1.5vw,1.08rem);line-height:1.85}#section-about,#section-menu,#section-access,#section-contact{padding:72px 0}h2{font-size:clamp(1.8rem,2.8vw,2.3rem);font-family:var(--font-display);color:var(--color-primary-deep);letter-spacing:.01em;margin:0 0 22px;font-weight:800}.about-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:36px;display:grid}.shop-description{color:var(--color-text-light);margin:0 0 24px;line-height:1.88}.about-highlights{gap:14px;margin:0;padding:0;list-style:none;display:grid}.about-highlights li{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.about-highlight-index{border:1px solid color-mix(in srgb, var(--color-sub) 74%, #fff 26%);width:28px;height:28px;color:var(--color-primary-deep);background:color-mix(in srgb, var(--color-bg-alt) 86%, #fff 14%);border-radius:999px;place-items:center;font-size:.76rem;font-weight:800;display:grid}.about-highlights h3{color:var(--color-primary-deep);margin:0 0 4px;font-size:1.02rem}.about-highlights p{color:var(--color-text-light);margin:0;line-height:1.74}.about-gallery-item{border:1px solid color-mix(in srgb, var(--color-sub) 44%, #fff 56%);background:color-mix(in srgb, var(--color-bg-alt) 88%, #fff 12%);box-shadow:0 14px 36px color-mix(in srgb, var(--color-primary-deep) 14%, transparent);border-radius:14px;margin:0;overflow:hidden}.about-gallery-item img{aspect-ratio:4/5;object-fit:cover;width:100%}.about-gallery-item figcaption{color:var(--color-primary-deep);padding:10px 12px;font-size:.88rem}.about-gallery-dots{justify-content:center;gap:8px;margin-top:10px;display:flex}.about-gallery-dots span{background:color-mix(in srgb, var(--color-sub) 52%, #fff 48%);border-radius:999px;width:6px;height:6px}.about-gallery-dots span.is-active{background:var(--color-primary);width:18px}#section-menu h2,.menu-intro{text-align:center}.menu-intro{color:var(--color-text-light);margin:0 0 24px}.menu-accordion{gap:12px;display:grid}.menu-accordion-item{border:1px solid color-mix(in srgb, var(--color-sub) 46%, #fff 54%);background:color-mix(in srgb, var(--color-bg-alt) 90%, #fff 10%);border-radius:12px}.menu-accordion-trigger{width:100%;color:var(--color-primary-deep);font-family:var(--font-display);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:14px 18px;font-size:1.03rem;font-weight:700;display:flex}.menu-accordion-title{flex:0 auto}.menu-accordion-count{color:var(--color-text-light);font-size:.84rem}.menu-accordion-icon{margin-left:auto;transition:transform .2s}.menu-accordion-item.is-open .menu-accordion-icon{transform:rotate(180deg)}.menu-accordion-panel{border-top:1px solid color-mix(in srgb, var(--color-sub) 40%, #fff 60%);padding:10px 14px 14px}.menu-drink-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.menu-drink-row{background:color-mix(in srgb, var(--color-bg) 78%, var(--color-bg-alt) 22%);width:100%;color:var(--color-primary-deep);text-align:left;cursor:pointer;border:0;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.menu-drink-row:hover{background:color-mix(in srgb, var(--color-sub) 24%, #fff 76%)}.menu-drink-name{font-weight:600}.menu-drink-price{color:var(--color-primary);font-weight:800}.menu-image-modal-backdrop{z-index:80;background:color-mix(in srgb, var(--color-primary-deep) 42%, #0000006b);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.menu-image-modal{background:color-mix(in srgb, var(--color-bg-alt) 90%, #fff 10%);border:1px solid color-mix(in srgb, var(--color-sub) 44%, #fff 56%);width:min(560px,100%);max-height:min(90vh,780px);box-shadow:0 24px 56px color-mix(in srgb, var(--color-primary-deep) 28%, transparent);border-radius:14px;position:relative;overflow:auto}.menu-image-modal-close{border:1px solid color-mix(in srgb, var(--color-sub) 48%, #fff 52%);background:color-mix(in srgb, var(--color-bg) 88%, #fff 12%);width:36px;height:36px;color:var(--color-primary-deep);cursor:pointer;border-radius:999px;position:absolute;top:8px;right:8px}.menu-image-modal-image{aspect-ratio:4/3;object-fit:cover;width:100%}.menu-image-modal-body{padding:14px 14px 16px}.menu-image-modal-name{color:var(--color-primary-deep);margin:0 0 6px}.menu-image-modal-price{color:var(--color-primary);margin:0 0 8px;font-weight:800}.menu-image-modal-desc{color:var(--color-text-light);margin:0;line-height:1.7}#section-access h2,#section-contact h2{margin-bottom:12px}.access-inner{grid-template-columns:1fr 1.1fr;gap:24px;display:grid}.access-address,.contact-links{color:var(--color-text-light)}.access-map{border:1px solid color-mix(in srgb, var(--color-sub) 44%, #fff 56%);min-height:320px;box-shadow:0 14px 36px color-mix(in srgb, var(--color-primary-deep) 14%, transparent);border-radius:12px;overflow:hidden}.access-map iframe{border:0;width:100%;height:100%;min-height:320px}.contact-links{gap:10px;display:grid}.contact-phone,.contact-email{color:var(--color-primary-deep);font-weight:600;text-decoration:none}.footer-grid{border-top:1px solid color-mix(in srgb, var(--color-sub) 42%, #fff 58%);grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:28px 0;display:grid}.footer-grid h3{color:var(--color-primary-deep);font-family:var(--font-display);margin:0 0 10px;font-weight:700}.footer-grid p{color:var(--color-text-light);margin:0 0 6px}.footer-bottom{border-top:1px solid color-mix(in srgb, var(--color-sub) 34%, #fff 66%);padding:16px 0 28px}.copyright{color:var(--color-text-light);margin:0;font-size:.88rem}@media (width<=1023px){.container{width:min(100%,100% - 36px)}.header-inner{grid-template-columns:1fr;justify-items:center;gap:12px;padding:12px 0}.brand-lockup{justify-content:center}.header-nav{flex-wrap:wrap}#section-hero{min-height:auto;padding-top:56px}.about-grid,.access-inner,.footer-grid{grid-template-columns:1fr}}@media (width<=767px){.container{width:min(100%,100% - 24px)}#section-hero,#section-about,#section-menu,#section-access,#section-contact{padding:56px 0}.hero-copy .shop-name{font-size:clamp(2.3rem,14vw,3.6rem)}.hero-lead{font-size:1.35rem}.header-nav{gap:14px;font-size:.92rem}.header-socials{display:none}.menu-accordion-trigger{padding:12px 14px;font-size:.96rem}.access-map,.access-map iframe{min-height:240px}}
