@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";:root{--font-display:"Inter", "Noto Sans JP", sans-serif;--font-body:"Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--color-primary:#1e3a8a;--color-primary-deep:#13285f;--color-sub:#d6deef;--color-text:#1f2937;--color-text-light:#4b5563;--color-bg:#f7f9fc;--color-bg-alt:#eef3fa;--shadow-sm:0 4px 14px #0f172a0f;--shadow-md:0 10px 26px #0f172a17}*{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);letter-spacing:.01em;font-size:16px;line-height:1.7}img{max-width:100%;display:block}a{color:inherit}.lp-root{background:linear-gradient(180deg, #fff 0%, var(--color-bg-alt) 100%);color:var(--color-text)}.container{width:min(760px,100% - 40px);margin:0 auto}#section-header{z-index:30;background:color-mix(in srgb, var(--color-primary) 92%, black 8%);color:#fff;border-bottom:1px solid #ffffff3d;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:16px;min-height:70px;display:flex}.shop-logo{background:#fff;border-radius:8px;width:auto;height:42px;padding:6px}.shop-name{letter-spacing:.05em;margin:0}#section-hero{padding:56px 0 20px;position:relative;overflow:hidden}.hero-overlay{pointer-events:none;background:radial-gradient(circle,#2563eb24,#2563eb00);border-radius:999px;width:70vw;max-width:560px;height:70vw;max-height:560px;position:absolute;inset:-20% auto auto 50%;translate:-50%}.hero-inner{grid-template-columns:1fr;align-items:start;gap:24px;display:grid;position:relative}.hero-copy{text-align:left}.hero-copy h1{margin:0 0 12px;font-size:clamp(2rem,8vw,2.9rem);line-height:1.12}.hero-copy p{color:var(--color-text-light);margin:0;line-height:1.85}.hero-image{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--color-sub);width:100%;box-shadow:var(--shadow-md);border-radius:18px}#section-about,#section-menu,#section-access,#section-contact{padding:52px 0}#section-about .container,#section-menu .container,#section-access .container,#section-contact .container{border-top:1px solid color-mix(in srgb, var(--color-sub) 80%, #fff 20%);padding-top:40px}h2{margin:0 0 18px;font-size:clamp(1.35rem,5.5vw,1.8rem);line-height:1.25}.shop-description,.access-address,.contact-links{color:var(--color-text-light)}.shop-description{line-height:1.9}.about-inner{grid-template-columns:1fr;align-items:start;gap:22px;display:grid}.about-gallery{width:100%;max-width:100%}.about-gallery-item{border:1px solid var(--color-sub);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;margin:0;overflow:hidden}.about-gallery-item img{aspect-ratio:4/3;object-fit:cover;width:100%}.menu-list{grid-template-columns:1fr;gap:16px;display:grid}.menu-category-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.menu-category-button{border:1px solid var(--color-sub);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;padding:16px}.menu-category-name{margin-bottom:6px;font-weight:700;display:block}.menu-category-count{color:var(--color-text-light);font-size:.9rem;display:block}.menu-category-current{color:var(--color-primary);margin:0;font-weight:700}.menu-category-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.menu-category-close-button{border:1px solid var(--color-sub);color:var(--color-text);cursor:pointer;background:#fff;border-radius:10px;padding:8px 12px}.menu-item{border:1px solid var(--color-sub);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;overflow:hidden}.menu-item-image{aspect-ratio:16/9;object-fit:cover;width:100%}.menu-item-trigger{cursor:pointer;text-align:left;background:0 0;border:0;width:100%;padding:0;display:block}.menu-image-modal-backdrop{z-index:40;background:#0f172a9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.menu-image-modal{border:1px solid var(--color-sub);width:min(560px,100%);max-height:min(90vh,780px);box-shadow:var(--shadow-md);background:#fff;border-radius:14px;position:relative;overflow:auto}.menu-image-modal-close{color:#fff;cursor:pointer;background:#0f172ab8;border:0;border-radius:999px;width:36px;height:36px;font-size:1.4rem;line-height:1;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{margin:0 0 6px;font-size:1rem}.menu-image-modal-price{color:var(--color-primary);margin:0 0 8px;font-weight:700}.menu-image-modal-desc{color:var(--color-text-light);margin:0;font-size:.92rem;line-height:1.6}.menu-item-body{padding:14px}.menu-item-head{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.menu-item-name{margin:0;font-size:1rem}.menu-item-price{color:var(--color-primary);margin:0;font-size:.95rem;font-weight:700}.menu-item-desc{color:var(--color-text-light);margin:8px 0 0;font-size:.9rem;line-height:1.7}.access-inner{grid-template-columns:1fr;align-items:start;gap:16px;display:grid}.access-map{border:1px solid var(--color-sub);background:#fff;border-radius:14px;min-height:320px;overflow:hidden}.access-map iframe{border:0;width:100%;height:100%;min-height:320px}.contact-links{gap:8px;display:grid}.contact-phone,.contact-email{text-decoration:none}.contact-phone:hover,.contact-email:hover{color:var(--color-primary)}#section-footer{background:var(--color-primary);color:#fff;text-align:center;margin-top:20px;padding:18px 0}.copyright{margin:0;font-size:.88rem}@media (width<=767px){.container{width:min(100%,100% - 24px)}.header-inner{min-height:62px}.shop-logo{height:36px}#section-hero{padding-top:44px}#section-about,#section-menu,#section-access,#section-contact{padding:42px 0}#section-about .container,#section-menu .container,#section-access .container,#section-contact .container{padding-top:32px}.access-map,.access-map iframe{min-height:240px}.menu-category-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.menu-category-button{text-align:left;padding:12px}.menu-category-toolbar{flex-direction:row;justify-content:space-between;align-items:center}.menu-category-name,.menu-category-count,.menu-category-current{text-align:left}.menu-image-modal{width:min(440px,100%)}}.lp-root{background:radial-gradient(circle at 10% -16%, color-mix(in srgb, var(--color-primary) 16%, transparent) 0%, transparent 46%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-alt) 100%)}#section-header{background:color-mix(in srgb, var(--color-primary-deep) 90%, black 10%);border-color:color-mix(in srgb, var(--color-sub) 44%, transparent)}#section-hero{background:radial-gradient(circle at 86% 22%, color-mix(in srgb, var(--color-primary) 22%, transparent) 0%, transparent 44%), linear-gradient(130deg, color-mix(in srgb, var(--color-primary-deep) 92%, #1a2b49 8%) 0%, color-mix(in srgb, var(--color-primary) 64%, #3c5e9e 36%) 100%)}.hero-copy .shop-name,h2,.menu-category-name,.menu-item-name{color:var(--color-primary-deep)}.menu-item-price,.menu-category-current{color:var(--color-primary)}.menu-category-button.is-active{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 20%, transparent), var(--shadow-sm)}h1,h2,.shop-name{letter-spacing:.03em}.cta-button,.menu-category-close-button{border:1px solid color-mix(in srgb, var(--color-sub) 68%, transparent);background:linear-gradient(135deg, #fff, color-mix(in srgb, var(--color-sub) 42%, #fff 58%));color:var(--color-primary-deep);border-radius:10px}.cta-button:hover,.menu-category-close-button:hover{box-shadow:0 10px 20px color-mix(in srgb, var(--color-primary) 22%, transparent);transform:translateY(-1px)}.menu-category-button:hover,.menu-item:hover,.card:hover{border-color:color-mix(in srgb, var(--color-primary) 62%, var(--color-sub) 38%);box-shadow:0 10px 22px color-mix(in srgb, var(--color-primary) 16%, transparent)}#section-hero .shop-name,#section-hero h1,#section-hero .hero-copy h1,#section-hero .hero-copy .shop-name{color:#fff;text-shadow:0 6px 22px #00000057}#section-hero .hero-copy p,#section-hero .hero-lead,#section-hero .hero-description{color:#f4f7ff}#section-about h2,#section-menu h2,#section-access h2,#section-contact h2{color:var(--color-primary-deep)}#section-about .shop-description,#section-menu .menu-item-desc,#section-access .access-address,#section-contact .contact-links{color:var(--color-text-light)}.menu-category-button,.menu-item,.about-gallery-item,.menu-category-inline-preview,.menu-preview-card{background:#fff}
