﻿/*!
Theme Name: Ramo
Theme URI: https://ramo.example.com
Author: Italian Cafe Ramo
Author URI: https://ramo.example.com
Description: Italian Cafe Ramoのカスタムテーマ。Figma Makeで作成されたデザインをベースに構築されています。
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ramo
Tags: restaurant, cafe, italian, custom, responsive
*/@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}:root{--font-size: 14px;--background: #ffffff;--foreground: oklch(0.145 0 0);--card: #ffffff;--card-foreground: oklch(0.145 0 0);--popover: oklch(1 0 0);--popover-foreground: oklch(0.145 0 0);--primary: #030213;--primary-foreground: oklch(1 0 0);--secondary: oklch(0.95 0.0058 264.53);--secondary-foreground: #030213;--muted: #ececf0;--muted-foreground: #717182;--accent: #e9ebef;--accent-foreground: #030213;--destructive: #d4183d;--destructive-foreground: #ffffff;--border: rgba(0, 0, 0, 0.1);--input: transparent;--input-background: #f3f3f5;--switch-background: #cbced4;--font-weight-medium: 500;--font-weight-normal: 400;--ring: oklch(0.708 0 0);--chart-1: oklch(0.646 0.222 41.116);--chart-2: oklch(0.6 0.118 184.704);--chart-3: oklch(0.398 0.07 227.392);--chart-4: oklch(0.828 0.189 84.429);--chart-5: oklch(0.769 0.188 70.08);--radius: 0.625rem;--sidebar: oklch(0.985 0 0);--sidebar-foreground: oklch(0.145 0 0);--sidebar-primary: #030213;--sidebar-primary-foreground: oklch(0.985 0 0);--sidebar-accent: oklch(0.97 0 0);--sidebar-accent-foreground: oklch(0.205 0 0);--sidebar-border: oklch(0.922 0 0);--sidebar-ring: oklch(0.708 0 0)}.dark{--background: oklch(0.145 0 0);--foreground: oklch(0.985 0 0);--card: oklch(0.145 0 0);--card-foreground: oklch(0.985 0 0);--popover: oklch(0.145 0 0);--popover-foreground: oklch(0.985 0 0);--primary: oklch(0.985 0 0);--primary-foreground: oklch(0.205 0 0);--secondary: oklch(0.269 0 0);--secondary-foreground: oklch(0.985 0 0);--muted: oklch(0.269 0 0);--muted-foreground: oklch(0.708 0 0);--accent: oklch(0.269 0 0);--accent-foreground: oklch(0.985 0 0);--destructive: oklch(0.396 0.141 25.723);--destructive-foreground: oklch(0.637 0.237 25.331);--border: oklch(0.269 0 0);--input: oklch(0.269 0 0);--ring: oklch(0.439 0 0);--font-weight-medium: 500;--font-weight-normal: 400;--chart-1: oklch(0.488 0.243 264.376);--chart-2: oklch(0.696 0.17 162.48);--chart-3: oklch(0.769 0.188 70.08);--chart-4: oklch(0.627 0.265 303.9);--chart-5: oklch(0.645 0.246 16.439);--sidebar: oklch(0.205 0 0);--sidebar-foreground: oklch(0.985 0 0);--sidebar-primary: oklch(0.488 0.243 264.376);--sidebar-primary-foreground: oklch(0.985 0 0);--sidebar-accent: oklch(0.269 0 0);--sidebar-accent-foreground: oklch(0.985 0 0);--sidebar-border: oklch(0.269 0 0);--sidebar-ring: oklch(0.439 0 0)}*{box-sizing:border-box;border-color:var(--border);outline-color:rgba(var(--ring), 0.5)}html{font-size:var(--font-size);overflow-x:hidden}body{background-color:var(--background);color:var(--foreground);margin:0;padding:0;width:100%;overflow-x:hidden;font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:var(--text-2xl, 1.5rem);font-weight:var(--font-weight-medium);font-family:"Playfair Display","Noto Serif JP",serif;line-height:1.5}h2{font-size:var(--text-xl, 1.25rem);font-weight:var(--font-weight-medium);font-family:"Playfair Display","Noto Serif JP",serif;line-height:1.5}h3{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-weight-medium);font-family:"Playfair Display","Noto Serif JP",serif;line-height:1.5}h4{font-size:var(--text-base, 1rem);font-weight:var(--font-weight-medium);font-family:"Playfair Display","Noto Serif JP",serif;line-height:1.5}p{font-size:var(--text-base, 1rem);font-weight:var(--font-weight-normal);line-height:1.5}label{font-size:var(--text-base, 1rem);font-weight:var(--font-weight-medium);line-height:1.5}button{font-size:var(--text-base, 1rem);font-weight:var(--font-weight-medium);line-height:1.5;cursor:pointer}input,textarea,select{font-size:var(--text-base, 1rem);font-weight:var(--font-weight-normal);line-height:1.5}a{color:inherit;text-decoration:none;transition-property:color,opacity;transition-duration:.3s;transition-timing-function:ease}a:hover{opacity:.8}img{max-width:100%;height:auto;display:block}.site-main,.page{padding-top:4rem}@media(min-width: 1024px){.site-main,.page{padding-top:5rem}}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media(min-width: 768px){.container{padding:0 2rem}}.site-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:50;background-color:hsla(0,0%,100%,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.site-header .header-container{display:flex;align-items:center;justify-content:space-between;height:4rem}@media(min-width: 1024px){.site-header .header-container{height:5rem}}.site-header .site-branding{display:flex;align-items:center;gap:.75rem}.site-header .site-branding .logo{height:2rem;width:auto}@media(min-width: 1024px){.site-header .site-branding .logo{height:2.5rem}}.site-header .site-branding .site-title{font-size:1.125rem;font-style:italic;display:none}@media(min-width: 640px){.site-header .site-branding .site-title{display:block}}@media(min-width: 1024px){.site-header .site-branding .site-title{font-size:1.25rem}}.site-header .main-navigation{display:none}@media(min-width: 1024px){.site-header .main-navigation{display:flex;align-items:center;gap:2rem}}.site-header .main-navigation .menu{display:flex;list-style:none;margin:0;padding:0;gap:2rem}.site-header .main-navigation .menu li{margin:0}.site-header .main-navigation .menu a{font-size:1rem;transition-property:color;transition-duration:.3s;transition-timing-function:ease}.site-header .main-navigation .menu a:hover{color:var(--primary);opacity:1}.site-header .header-contact{display:none}@media(min-width: 1024px){.site-header .header-contact{display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--muted-foreground)}.site-header .header-contact svg{width:1rem;height:1rem}}.site-header .mobile-menu-toggle{display:block;background:none;border:none;padding:.5rem}@media(min-width: 1024px){.site-header .mobile-menu-toggle{display:none}}.site-header .mobile-menu-toggle svg{width:1.25rem;height:1.25rem}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:55}.mobile-menu-overlay.is-active{display:block}.mobile-menu{position:fixed;top:0;right:0;bottom:0;width:280px;max-width:80vw;background-color:#fff;box-shadow:-2px 0 8px rgba(0,0,0,.1);padding:0;transform:translateX(100%);z-index:60;transition-property:transform;transition-duration:.3s;transition-timing-function:ease;display:flex;flex-direction:column}.mobile-menu.is-active{transform:translateX(0)}.mobile-menu .mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.mobile-menu .mobile-menu-header .mobile-branding{flex:1}.mobile-menu .mobile-menu-header .mobile-branding .logo{height:2rem;width:auto;display:block}.mobile-menu .mobile-menu-header .mobile-menu-close{background:none;border:none;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition-property:opacity;transition-duration:.3s;transition-timing-function:ease}.mobile-menu .mobile-menu-header .mobile-menu-close:hover{opacity:.7}.mobile-menu .mobile-menu-header .mobile-menu-close svg{width:1.5rem;height:1.5rem}.mobile-menu .mobile-navigation{flex:1;overflow-y:auto;padding:1rem 0}.mobile-menu .mobile-navigation .menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.mobile-menu .mobile-navigation .menu li{margin:0}.mobile-menu .mobile-navigation .menu a{font-size:1rem;display:block;padding:.875rem 1.5rem;transition-property:background-color,color;transition-duration:.3s;transition-timing-function:ease}.mobile-menu .mobile-navigation .menu a:hover{background-color:var(--accent);color:var(--primary)}.mobile-menu .mobile-contact{margin-top:auto;padding:1.5rem;border-top:1px solid var(--border);flex-shrink:0;background-color:var(--accent)}.mobile-menu .mobile-contact .contact-info{display:flex;flex-direction:column;gap:1rem}.mobile-menu .mobile-contact .contact-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;line-height:1.5}.mobile-menu .mobile-contact .contact-item svg{width:1rem;height:1rem;color:var(--primary);flex-shrink:0;margin-top:.125rem}.mobile-menu .mobile-contact .contact-item a{color:var(--primary);font-weight:var(--font-weight-medium);transition-property:opacity;transition-duration:.3s;transition-timing-function:ease}.mobile-menu .mobile-contact .contact-item a:hover{opacity:.7}.mobile-menu .mobile-contact .contact-item span{color:var(--foreground)}.mobile-menu .mobile-contact .contact-item .hours-info{display:flex;flex-direction:column;gap:.25rem;color:var(--foreground)}.mobile-menu .mobile-contact .contact-item .hours-info .closed-day{font-size:.75rem;color:var(--muted-foreground);margin-top:.25rem}.site-footer{background-color:#1a1a1a;color:#fff}.site-footer .footer-social-section{background-color:#2a2a2a;padding:3rem 0}.site-footer .footer-social-section .section-header{text-align:center;margin-bottom:2rem}.site-footer .footer-social-section .section-header h3{font-size:1.25rem;margin-bottom:1rem}@media(min-width: 1024px){.site-footer .footer-social-section .section-header h3{font-size:1.5rem}}.site-footer .footer-social-section .section-header p{color:#999}.site-footer .footer-social-section .social-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}@media(min-width: 768px){.site-footer .footer-social-section .social-grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.site-footer .footer-social-section .social-grid{grid-template-columns:repeat(4, 1fr)}}.site-footer .footer-social-section .social-card{background-color:#333;border-radius:.5rem;padding:1.5rem;text-align:center}.site-footer .footer-social-section .social-card .icon-wrapper{width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.site-footer .footer-social-section .social-card .icon-wrapper svg{width:1.5rem;height:1.5rem;color:#fff}.site-footer .footer-social-section .social-card .icon-wrapper.line{background-color:#06c755}.site-footer .footer-social-section .social-card .icon-wrapper.google{background-color:#4285f4}.site-footer .footer-social-section .social-card .icon-wrapper.instagram{background:linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%)}.site-footer .footer-social-section .social-card .icon-wrapper.tiktok{background-color:#000}.site-footer .footer-social-section .social-card .icon-wrapper.youtube{background-color:red}.site-footer .footer-social-section .social-card h4{font-size:1rem;margin-bottom:.5rem}.site-footer .footer-social-section .social-card p{font-size:.875rem;color:#999;margin-bottom:1rem}.site-footer .footer-social-section .social-card .social-button{width:100%;padding:.5rem 1rem;border:none;border-radius:.375rem;font-weight:var(--font-weight-medium);cursor:pointer;transition-property:background-color,transform;transition-duration:.3s;transition-timing-function:ease}.site-footer .footer-social-section .social-card .social-button:hover{transform:translateY(-2px)}.site-footer .footer-social-section .social-card .social-button.line-btn{background-color:#06c755;color:#fff}.site-footer .footer-social-section .social-card .social-button.line-btn:hover{background-color:#05b04d}.site-footer .footer-social-section .social-card .social-button.google-btn{background-color:#4285f4;color:#fff}.site-footer .footer-social-section .social-card .social-button.google-btn:hover{background-color:#357ae8}.site-footer .footer-social-section .social-card .social-button.instagram-btn{background:linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);color:#fff}.site-footer .footer-social-section .social-card .social-button.instagram-btn:hover{opacity:.9}.site-footer .footer-social-section .social-card .social-button.tiktok-btn{background-color:#000;color:#fff;border:1px solid #333}.site-footer .footer-social-section .social-card .social-button.tiktok-btn:hover{background-color:#1a1a1a}.site-footer .footer-social-section .social-card .social-button.youtube-btn{background-color:red;color:#fff}.site-footer .footer-social-section .social-card .social-button.youtube-btn:hover{background-color:#c00}.site-footer .footer-main{padding:3rem 0 2rem}.site-footer .footer-main .footer-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2rem}@media(min-width: 768px){.site-footer .footer-main .footer-grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.site-footer .footer-main .footer-grid{grid-template-columns:repeat(4, 1fr)}}.site-footer .footer-main .footer-column h4{font-size:1.125rem;margin-bottom:1rem;font-weight:var(--font-weight-medium)}.site-footer .footer-main .footer-column ul{list-style:none;padding:0;margin:0}.site-footer .footer-main .footer-column ul li{margin-bottom:.5rem}.site-footer .footer-main .footer-column ul a{color:#999;font-size:.875rem;transition-property:color;transition-duration:.3s;transition-timing-function:ease}.site-footer .footer-main .footer-column ul a:hover{color:#fff}.site-footer .footer-main .footer-column .footer-info{color:#999;font-size:.875rem;line-height:1.6}.site-footer .footer-main .footer-column .footer-info p{margin-bottom:.5rem}.site-footer .footer-bottom{border-top:1px solid #333;padding:1.5rem 0;text-align:center}.site-footer .footer-bottom p{color:#666;font-size:.875rem;margin:0}.page-container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.page-section{padding-top:4rem;padding-bottom:4rem}@media(min-width: 1024px){.page-section{padding-top:6rem;padding-bottom:6rem}}.page-section--gray{background-color:#f9fafb}.page-section--white{background-color:var(--background)}.text-center{text-align:center}.section-header{text-align:center;margin-bottom:3rem}@media(min-width: 1024px){.section-header{margin-bottom:5rem}}.section-header__title{font-size:1.5rem;margin-bottom:1rem;font-weight:var(--font-weight-medium)}@media(min-width: 640px){.section-header__title{font-size:1.875rem}}@media(min-width: 1024px){.section-header__title{font-size:2.25rem;margin-bottom:1.5rem}}.section-header__subtitle{font-size:1rem;color:var(--muted-foreground);max-width:42rem;margin-left:auto;margin-right:auto;line-height:1.75}@media(min-width: 1024px){.section-header__subtitle{font-size:1.125rem}}.grid{display:grid;gap:2rem}@media(min-width: 1024px){.grid{gap:4rem}}.grid--2-cols{grid-template-columns:1fr}@media(min-width: 1024px){.grid--2-cols{grid-template-columns:repeat(2, 1fr)}}.grid--3-cols{grid-template-columns:1fr}@media(min-width: 768px){.grid--3-cols{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1280px){.grid--3-cols{grid-template-columns:repeat(3, 1fr)}}.grid--md-3-cols{grid-template-columns:1fr}@media(min-width: 768px){.grid--md-3-cols{grid-template-columns:repeat(3, 1fr)}}.grid--items-center{align-items:center}.flex{display:flex}.flex--start{align-items:flex-start}.flex--center{align-items:center}.flex--between{justify-content:space-between}.flex--gap{gap:1rem}.space-y>*+*{margin-top:1rem}.space-y--lg>*+*{margin-top:1.5rem}@media(min-width: 1024px){.space-y--lg>*+*{margin-top:1.5rem}}.card{background-color:var(--card);border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden;transition:all .3s ease}.card:hover{box-shadow:0 10px 15px rgba(0,0,0,.1);transform:translateY(-0.25rem)}.card__image{width:100%;height:16rem;object-fit:cover}@media(min-width: 640px){.card__image{height:20rem}}@media(min-width: 1024px){.card__image{height:24rem}}@media(min-width: 1280px){.card__image{height:28rem}}.card__content{padding:1.5rem}@media(min-width: 1024px){.card__content{padding:2rem}}.card__title{font-size:1.25rem;margin-bottom:.75rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.card__title{font-size:1.5rem}}.card__text{color:var(--muted-foreground);font-size:.875rem;line-height:1.75}@media(min-width: 1024px){.card__text{font-size:1rem}}.card--hover:hover{box-shadow:0 4px 6px rgba(0,0,0,.1)}.image-rounded{border-radius:var(--radius);box-shadow:0 10px 15px rgba(0,0,0,.1);width:100%;height:16rem;object-fit:cover}@media(min-width: 640px){.image-rounded{height:20rem}}@media(min-width: 1024px){.image-rounded{height:24rem}}@media(min-width: 1280px){.image-rounded{height:28rem}}.icon-box{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;background-color:rgba(3,2,19,.1);border-radius:9999px;flex-shrink:0}.icon-box svg{width:2rem;height:2rem;color:var(--primary)}.info-item{display:flex;align-items:flex-start;gap:1rem}.info-item__icon{width:1.25rem;height:1.25rem;color:var(--primary);margin-top:.25rem;flex-shrink:0}@media(min-width: 1024px){.info-item__icon{width:1.5rem;height:1.5rem}}.info-item__title{font-size:1rem;margin-bottom:.5rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.info-item__title{font-size:1.125rem}}.info-item__content{color:var(--muted-foreground);font-size:.875rem}@media(min-width: 1024px){.info-item__content{font-size:1rem}}.info-item__content p+p{margin-top:.25rem}.hero-title{font-size:1.875rem;margin-bottom:1rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.hero-title{font-size:3rem}}.max-w-2xl{max-width:42rem;margin-left:auto;margin-right:auto}.max-w-4xl{max-width:56rem;margin-left:auto;margin-right:auto}.max-w-6xl{max-width:72rem;margin-left:auto;margin-right:auto}.text-muted{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-destructive{color:var(--destructive)}.font-medium{font-weight:var(--font-weight-medium)}.leading-relaxed{line-height:1.75}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mt-12{margin-top:3rem}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center}.hero-section__background{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-section__background::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4))}.hero-section__content{position:relative;z-index:10;text-align:center;color:#fff;padding:0 1rem;max-width:56rem;margin:0 auto}.hero-section__logo{margin-bottom:1.5rem}@media(min-width: 1024px){.hero-section__logo{margin-bottom:2rem}}.hero-section__logo img{height:4rem;width:auto;margin:0 auto 1rem}@media(min-width: 1024px){.hero-section__logo img{height:5rem}}.hero-section__title{font-size:1.5rem;margin-bottom:1.5rem;font-style:italic}@media(min-width: 640px){.hero-section__title{font-size:1.875rem}}@media(min-width: 1024px){.hero-section__title{font-size:3rem;margin-bottom:2rem}}@media(min-width: 1280px){.hero-section__title{font-size:3.75rem}}.hero-section__tagline{font-size:1.125rem;margin-bottom:1.5rem;letter-spacing:.025em}@media(min-width: 640px){.hero-section__tagline{font-size:1.25rem}}@media(min-width: 1024px){.hero-section__tagline{font-size:1.5rem;margin-bottom:2rem}}@media(min-width: 1280px){.hero-section__tagline{font-size:1.875rem}}.hero-section__description{font-family:"Zen Old Mincho",serif;font-size:1rem;margin-bottom:2rem;max-width:42rem;margin-left:auto;margin-right:auto;line-height:1.75}@media(min-width: 640px){.hero-section__description{font-size:1.125rem}}@media(min-width: 1024px){.hero-section__description{font-size:1.25rem;margin-bottom:3rem}}.hero-section__description br{display:none}@media(min-width: 640px){.hero-section__description br{display:block}}.news-section{padding-top:4rem;padding-bottom:4rem;background-color:var(--background)}@media(min-width: 1024px){.news-section{padding-top:5rem;padding-bottom:5rem}}.news-section__list{max-width:56rem;margin:0 auto 2rem;border:1px solid #e5e7eb;border-radius:var(--radius);overflow:hidden;background-color:var(--card);box-shadow:0 1px 2px rgba(0,0,0,.05)}@media(min-width: 1024px){.news-section__list{margin-bottom:3rem}}.news-section__item{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;transition:background-color .2s ease}@media(min-width: 1024px){.news-section__item{gap:1.5rem;padding:1.25rem 1.5rem}}.news-section__item:not(:last-child){border-bottom:1px solid #f3f4f6}.news-section__item:hover{background-color:#f9fafb}.news-section__item:hover .news-section__item-title{color:var(--primary)}.news-section__item-date{display:flex;align-items:center;font-size:.875rem;color:var(--muted-foreground);white-space:nowrap}@media(min-width: 1024px){.news-section__item-date{font-size:1rem}}.news-section__item-date svg{width:1rem;height:1rem;margin-right:.5rem}.news-section__item-title{flex:1;font-size:1rem;transition:color .2s ease}@media(min-width: 1024px){.news-section__item-title{font-size:1.125rem}}.news-section__item-arrow{width:1rem;height:1rem;color:var(--muted-foreground);flex-shrink:0}@media(min-width: 1024px){.news-section__item-arrow{width:1.25rem;height:1.25rem}}.news-section__button{text-align:center}.news-section__button button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;font-size:1rem;font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(to right, #1f2937, #111827);border-radius:9999px;box-shadow:0 10px 15px rgba(0,0,0,.1);transition:all .3s ease;overflow:hidden;border:none;cursor:pointer}@media(min-width: 1024px){.news-section__button button{padding:1rem 2.5rem;font-size:1.125rem}}.news-section__button button:hover{box-shadow:0 20px 25px rgba(0,0,0,.15);transform:translateY(-2px)}.news-section__button button:hover::before{opacity:1}.news-section__button button:hover svg{transform:translateX(0.25rem)}.news-section__button button::before{content:"";position:absolute;inset:0;background:linear-gradient(to right, #374151, #1f2937);opacity:0;transition:opacity .3s ease}.news-section__button button span{position:relative;z-index:10;display:flex;align-items:center}.news-section__button button svg{margin-left:.5rem;width:1rem;height:1rem;transition:transform .3s ease}@media(min-width: 1024px){.news-section__button button svg{width:1.25rem;height:1.25rem}}.blog-section{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.blog-section{padding-top:6rem;padding-bottom:6rem}}.blog-section__grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}@media(min-width: 768px){.blog-section__grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1280px){.blog-section__grid{grid-template-columns:repeat(3, 1fr)}}@media(min-width: 1024px){.blog-section__grid{gap:2rem;margin-bottom:3rem}}.blog-section__article{background-color:var(--card);border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden;transition:all .3s ease}.blog-section__article:hover{box-shadow:0 10px 15px rgba(0,0,0,.1);transform:translateY(-0.25rem)}.blog-section__article:hover .blog-section__article-image img{transform:scale(1.05)}.blog-section__article-image{position:relative;aspect-ratio:16/10;overflow:hidden}.blog-section__article-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.blog-section__article-category{position:absolute;top:.75rem;left:.75rem;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem}.blog-section__article-category--料理{background-color:#fee2e2;color:#991b1b}.blog-section__article-category--食材{background-color:#dcfce7;color:#166534}.blog-section__article-category--ドリンク{background-color:#f3e8ff;color:#6b21a8}.blog-section__article-category--メニュー{background-color:#dbeafe;color:#1e40af}.blog-section__article-category--店舗{background-color:#fed7aa;color:#9a3412}.blog-section__article-content{padding:1rem}@media(min-width: 1024px){.blog-section__article-content{padding:1.5rem}}.blog-section__article-title{font-size:1.125rem;margin-bottom:.5rem;line-height:1.4;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.blog-section__article-title{font-size:1.25rem;margin-bottom:.75rem}}.blog-section__article-summary{color:var(--muted-foreground);font-size:.875rem;line-height:1.75;margin-bottom:.75rem}@media(min-width: 1024px){.blog-section__article-summary{font-size:1rem;margin-bottom:1rem}}.blog-section__article-meta{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--muted-foreground)}@media(min-width: 1024px){.blog-section__article-meta{font-size:.875rem}}.blog-section__article-meta-info{display:flex;align-items:center;gap:.75rem}.blog-section__article-meta-info>div{display:flex;align-items:center}.blog-section__article-meta-info>div svg{width:.75rem;height:.75rem;margin-right:.25rem}@media(min-width: 1024px){.blog-section__article-meta-info>div svg{width:1rem;height:1rem}}.blog-section__article-meta-arrow{width:1rem;height:1rem}.blog-section__button{text-align:center}.blog-section__button button{padding:.75rem 1.5rem;font-size:1rem;background-color:rgba(0,0,0,0);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s ease}@media(min-width: 1024px){.blog-section__button button{padding:.75rem 2rem;font-size:1.125rem}}.blog-section__button button:hover{background-color:var(--muted)}.concept-section{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.concept-section{padding-top:6rem;padding-bottom:6rem}}.concept-section__intro{text-align:center;margin-bottom:3rem}@media(min-width: 1024px){.concept-section__intro{margin-bottom:5rem}}.concept-section__subtitle{font-size:1rem;line-height:1.75;color:var(--muted-foreground);max-width:42rem;margin:0 auto}@media(min-width: 1024px){.concept-section__subtitle{font-size:1.125rem}}.concept-section__subtitle br{display:none}@media(min-width: 640px){.concept-section__subtitle br{display:block}}.concept-section__content-block{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;margin-bottom:3rem}@media(min-width: 1024px){.concept-section__content-block{grid-template-columns:repeat(2, 1fr);gap:4rem;margin-bottom:5rem}}.concept-section__content-block:last-child{margin-bottom:0}.concept-section__text{display:flex;flex-direction:column;gap:1rem}@media(min-width: 1024px){.concept-section__text{gap:1.5rem}}.concept-section__text--order-2{order:2}@media(min-width: 1024px){.concept-section__text--order-2{order:1}}.concept-section__text--order-1{order:1}@media(min-width: 1024px){.concept-section__text--order-1{order:2}}.concept-section__heading{font-size:1.25rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.concept-section__heading{font-size:1.5rem}}.concept-section__paragraph{color:var(--muted-foreground);line-height:1.75;font-size:.875rem}@media(min-width: 1024px){.concept-section__paragraph{font-size:1rem}}.concept-section__image-wrapper{position:relative}.concept-section__image-wrapper--order-1{order:1}@media(min-width: 1024px){.concept-section__image-wrapper--order-1{order:2}}.concept-section__image-wrapper--order-2{order:2}@media(min-width: 1024px){.concept-section__image-wrapper--order-2{order:1}}.concept-section__image{width:100%;height:16rem;object-fit:cover;border-radius:var(--radius);box-shadow:0 10px 15px rgba(0,0,0,.1)}@media(min-width: 640px){.concept-section__image{height:20rem}}@media(min-width: 1024px){.concept-section__image{height:24rem}}@media(min-width: 1280px){.concept-section__image{height:28rem}}.youtube-section{padding-top:4rem;padding-bottom:4rem;background-color:var(--background)}@media(min-width: 1024px){.youtube-section{padding-top:5rem;padding-bottom:5rem}}.youtube-section__slider-wrapper{position:relative;overflow:hidden;margin:0 -1rem 2rem}@media(min-width: 1024px){.youtube-section__slider-wrapper{margin:0 -2rem 3rem}}.youtube-section__slider-wrapper::before,.youtube-section__slider-wrapper::after{content:"";position:absolute;top:0;bottom:0;width:2rem;z-index:10;pointer-events:none}@media(min-width: 1024px){.youtube-section__slider-wrapper::before,.youtube-section__slider-wrapper::after{width:4rem}}.youtube-section__slider-wrapper::before{left:0;background:linear-gradient(to right, var(--background), transparent)}.youtube-section__slider-wrapper::after{right:0;background:linear-gradient(to left, var(--background), transparent)}.youtube-section__slider{display:flex;gap:1rem;padding:0 1rem;animation:youtube-scroll 30s linear infinite}@media(min-width: 1024px){.youtube-section__slider{gap:1.5rem;padding:0 2rem}}.youtube-section__slider:hover{animation-play-state:paused}.youtube-section__item{flex-shrink:0;width:240px;text-decoration:none;color:inherit;transition:transform .3s ease}@media(min-width: 640px){.youtube-section__item{width:280px}}@media(min-width: 1024px){.youtube-section__item{width:320px}}.youtube-section__item:hover{transform:translateY(-4px)}.youtube-section__item:hover .youtube-section__thumbnail img{transform:scale(1.05)}.youtube-section__item:hover .youtube-section__play-icon{transform:translate(-50%, -50%) scale(1.1)}.youtube-section__thumbnail{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1)}.youtube-section__thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.youtube-section__play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:48px;height:34px;transition:transform .3s ease;opacity:.9}@media(min-width: 1024px){.youtube-section__play-icon{width:56px;height:40px}}.youtube-section__play-icon svg{width:100%;height:100%}.youtube-section__title{margin-top:.75rem;font-size:.875rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(min-width: 1024px){.youtube-section__title{font-size:1rem;margin-top:1rem}}.youtube-section__button{text-align:center}.youtube-section__link-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;font-size:1rem;font-weight:var(--font-weight-medium);color:#fff;background:linear-gradient(to right, #cc0000, #990000);border-radius:9999px;box-shadow:0 10px 15px rgba(204,0,0,.2);transition:all .3s ease;overflow:hidden;text-decoration:none}@media(min-width: 1024px){.youtube-section__link-button{padding:1rem 2.5rem;font-size:1.125rem}}.youtube-section__link-button:hover{box-shadow:0 20px 25px rgba(204,0,0,.25);transform:translateY(-2px);background:linear-gradient(to right, #990000, #660000)}.youtube-section__link-button:hover svg{transform:translateX(0.25rem)}.youtube-section__link-button span{position:relative;z-index:10;display:flex;align-items:center}.youtube-section__link-button svg{margin-left:.5rem;width:1rem;height:1rem;transition:transform .3s ease}@media(min-width: 1024px){.youtube-section__link-button svg{width:1.25rem;height:1.25rem}}@keyframes youtube-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.access-section{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.access-section{padding-top:6rem;padding-bottom:6rem}}.access-section__intro{text-align:center;margin-bottom:3rem}@media(min-width: 1024px){.access-section__intro{margin-bottom:5rem}}.access-section__subtitle{font-size:1rem;color:var(--muted-foreground)}@media(min-width: 1024px){.access-section__subtitle{font-size:1.125rem}}.access-section__grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width: 1024px){.access-section__grid{grid-template-columns:repeat(2, 1fr);gap:4rem}}.access-section__info-list{display:flex;flex-direction:column;gap:1.5rem}@media(min-width: 1024px){.access-section__info-list{gap:2rem}}.access-section__info-item{display:flex;align-items:flex-start;gap:1rem}.access-section__icon{width:1.25rem;height:1.25rem;color:var(--primary);margin-top:.25rem;flex-shrink:0}@media(min-width: 1024px){.access-section__icon{width:1.5rem;height:1.5rem}}.access-section__info-content{flex:1}.access-section__info-title{font-size:1rem;font-weight:var(--font-weight-medium);margin-bottom:.5rem}@media(min-width: 1024px){.access-section__info-title{font-size:1.125rem}}.access-section__info-text{color:var(--muted-foreground);font-size:.875rem}@media(min-width: 1024px){.access-section__info-text{font-size:1rem}}.access-section__info-text--stacked{display:flex;flex-direction:column;gap:.25rem}.access-section__info-text p{margin:0}.access-section__info-text .small-text{font-size:.75rem;margin-top:.5rem}@media(min-width: 1024px){.access-section__info-text .small-text{font-size:.875rem}}.access-section__contact-card{background-color:#fff;border-radius:var(--radius);padding:1.5rem;box-shadow:0 10px 15px rgba(0,0,0,.1)}@media(min-width: 1024px){.access-section__contact-card{padding:2rem}}.access-section__card-title{font-size:1.125rem;font-weight:var(--font-weight-medium);margin-bottom:1rem}@media(min-width: 1024px){.access-section__card-title{font-size:1.25rem;margin-bottom:1.5rem}}.access-section__card-content{display:flex;flex-direction:column;gap:1rem}@media(min-width: 1024px){.access-section__card-content{gap:1.5rem}}.access-section__card-description{color:var(--muted-foreground);font-size:.875rem}@media(min-width: 1024px){.access-section__card-description{font-size:1rem}}.access-section__phone-display{text-align:center;padding:1.5rem 0}@media(min-width: 1024px){.access-section__phone-display{padding:2rem 0}}.access-section__phone-number{font-size:1.25rem;margin-bottom:.5rem}@media(min-width: 1024px){.access-section__phone-number{font-size:1.5rem}}.access-section__phone-hours{font-size:.75rem;color:var(--muted-foreground)}@media(min-width: 1024px){.access-section__phone-hours{font-size:.875rem}}.access-section__card-footer{border-top:1px solid var(--border);padding-top:1rem}.access-section__card-notes{font-size:.75rem;color:var(--muted-foreground)}@media(min-width: 1024px){.access-section__card-notes{font-size:.875rem}}.access-section__card-notes br{display:block}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center}.hero-section .hero-background{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-section .hero-background::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4))}.hero-section .hero-content{position:relative;z-index:10;text-align:center;color:#fff;padding:0 1rem;max-width:64rem;margin:0 auto}.hero-section .hero-content .hero-logo{height:4rem;width:auto;margin:0 auto 1.5rem}@media(min-width: 1024px){.hero-section .hero-content .hero-logo{height:5rem;margin-bottom:2rem}}.hero-section .hero-content h1{font-size:1.5rem;font-style:italic;margin-bottom:1.5rem}@media(min-width: 640px){.hero-section .hero-content h1{font-size:1.875rem}}@media(min-width: 1024px){.hero-section .hero-content h1{font-size:3rem;margin-bottom:2rem}}@media(min-width: 1280px){.hero-section .hero-content h1{font-size:3.75rem}}.hero-section .hero-content p{font-size:1.125rem;letter-spacing:.05em;margin-bottom:1.5rem}@media(min-width: 640px){.hero-section .hero-content p{font-size:1.25rem}}@media(min-width: 1024px){.hero-section .hero-content p{font-size:1.5rem;margin-bottom:2rem}}@media(min-width: 1280px){.hero-section .hero-content p{font-size:1.875rem}}.concept-page{padding:6rem 0 4rem}.concept-page .concept-header{text-align:center;margin-bottom:4rem}.concept-page .concept-header h1{font-size:2rem;margin-bottom:1rem}@media(min-width: 1024px){.concept-page .concept-header h1{font-size:2.5rem}}.concept-page .concept-header .lead{font-size:1.125rem;color:var(--muted-foreground);max-width:42rem;margin:0 auto}.concept-page .concept-content{max-width:48rem;margin:0 auto}.concept-page .concept-content .concept-image{width:100%;height:400px;object-fit:cover;border-radius:.5rem;margin-bottom:2rem}@media(min-width: 1024px){.concept-page .concept-content .concept-image{height:500px}}.concept-page .concept-content .concept-text{font-size:1rem;line-height:1.8;color:var(--foreground)}.concept-page .concept-content .concept-text p{margin-bottom:1.5rem}.menu-page{padding:6rem 0 4rem}.menu-page .menu-header{text-align:center;margin-bottom:4rem}.menu-page .menu-header h1{font-size:2rem;margin-bottom:1rem}@media(min-width: 1024px){.menu-page .menu-header h1{font-size:2.5rem}}.menu-page .menu-categories{display:grid;gap:4rem}.menu-page .menu-category h2{font-size:1.5rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}@media(min-width: 1024px){.menu-page .menu-category h2{font-size:1.875rem}}.menu-page .menu-category .menu-items{display:grid;gap:2rem}@media(min-width: 768px){.menu-page .menu-category .menu-items{grid-template-columns:repeat(2, 1fr)}}.menu-page .menu-item{display:flex;gap:1rem}.menu-page .menu-item .menu-item-image{width:120px;height:120px;object-fit:cover;border-radius:.5rem;flex-shrink:0}.menu-page .menu-item .menu-item-content{flex:1}.menu-page .menu-item .menu-item-content h3{font-size:1.125rem;margin-bottom:.5rem}.menu-page .menu-item .menu-item-content .menu-item-description{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.menu-page .menu-item .menu-item-content .menu-item-price{font-size:1.125rem;font-weight:var(--font-weight-medium);color:var(--primary)}.access-page{padding:6rem 0 4rem}.access-page .access-header{text-align:center;margin-bottom:4rem}.access-page .access-header h1{font-size:2rem;margin-bottom:1rem}@media(min-width: 1024px){.access-page .access-header h1{font-size:2.5rem}}.access-page .access-content{max-width:64rem;margin:0 auto}.access-page .access-content .access-map{width:100%;height:400px;border-radius:.5rem;margin-bottom:3rem}@media(min-width: 1024px){.access-page .access-content .access-map{height:500px}}.access-page .access-content .access-info{display:grid;gap:2rem}@media(min-width: 1024px){.access-page .access-content .access-info{grid-template-columns:repeat(2, 1fr)}}.access-page .access-content .access-info .info-section h2{font-size:1.25rem;margin-bottom:1rem}.access-page .access-content .access-info .info-section .info-item{display:flex;gap:.75rem;margin-bottom:1rem}.access-page .access-content .access-info .info-section .info-item svg{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.25rem}.access-page .access-content .access-info .info-section .info-item .info-content{font-size:.875rem;line-height:1.6}.contact-page{padding:6rem 0 4rem}.contact-page .contact-header{text-align:center;margin-bottom:4rem}.contact-page .contact-header h1{font-size:2rem;margin-bottom:1rem}@media(min-width: 1024px){.contact-page .contact-header h1{font-size:2.5rem}}.contact-page .contact-header p{color:var(--muted-foreground)}.contact-page .contact-content{max-width:42rem;margin:0 auto}.contact-page .contact-content .contact-form .form-group{margin-bottom:1.5rem}.contact-page .contact-content .contact-form .form-group label{display:block;margin-bottom:.5rem}.contact-page .contact-content .contact-form .form-group input,.contact-page .contact-content .contact-form .form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:.375rem;background-color:var(--input-background);font-family:inherit}.contact-page .contact-content .contact-form .form-group input:focus,.contact-page .contact-content .contact-form .form-group textarea:focus{outline:2px solid var(--ring);outline-offset:2px}.contact-page .contact-content .contact-form .form-group textarea{min-height:150px;resize:vertical}.contact-page .contact-content .contact-form .form-submit{display:flex;justify-content:center}.contact-page .contact-content .contact-form .form-submit button{padding:.75rem 2rem;background-color:var(--primary);color:var(--primary-foreground);border:none;border-radius:.375rem;font-weight:var(--font-weight-medium);transition-property:background-color,transform;transition-duration:.3s;transition-timing-function:ease}.contact-page .contact-content .contact-form .form-submit button:hover{background-color:var(--primary);opacity:.9;transform:translateY(-2px)}.blog-page,.news-page{padding:6rem 0 4rem}.blog-page .page-header,.news-page .page-header{text-align:center;margin-bottom:4rem}.blog-page .page-header h1,.news-page .page-header h1{font-size:2rem;margin-bottom:1rem}@media(min-width: 1024px){.blog-page .page-header h1,.news-page .page-header h1{font-size:2.5rem}}.blog-page .page-header p,.news-page .page-header p{color:var(--muted-foreground)}.blog-page .articles-grid,.news-page .articles-grid{display:grid;gap:2rem;max-width:64rem;margin:0 auto}@media(min-width: 768px){.blog-page .articles-grid,.news-page .articles-grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.blog-page .articles-grid,.news-page .articles-grid{grid-template-columns:repeat(3, 1fr)}}.blog-page .article-card,.news-page .article-card{background-color:var(--card);border:1px solid var(--border);border-radius:.5rem;overflow:hidden;transition-property:transform,box-shadow;transition-duration:.3s;transition-timing-function:ease}.blog-page .article-card:hover,.news-page .article-card:hover{transform:translateY(-4px);box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23)}.blog-page .article-card .article-image,.news-page .article-card .article-image{width:100%;height:200px;object-fit:cover}.blog-page .article-card .article-content,.news-page .article-card .article-content{padding:1.5rem}.blog-page .article-card .article-content .article-meta,.news-page .article-card .article-content .article-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.875rem;color:var(--muted-foreground)}.blog-page .article-card .article-content .article-meta svg,.news-page .article-card .article-content .article-meta svg{width:1rem;height:1rem}.blog-page .article-card .article-content h2,.news-page .article-card .article-content h2{font-size:1.125rem;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-page .article-card .article-content .article-excerpt,.news-page .article-card .article-content .article-excerpt{font-size:.875rem;color:var(--muted-foreground);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1rem}.blog-page .article-card .article-content .read-more,.news-page .article-card .article-content .read-more{color:var(--primary);font-weight:var(--font-weight-medium);font-size:.875rem;transition-property:opacity;transition-duration:.3s;transition-timing-function:ease}.blog-page .article-card .article-content .read-more:hover,.news-page .article-card .article-content .read-more:hover{opacity:.7}.blog-page .pagination,.news-page .pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:3rem}.blog-page .pagination button,.blog-page .pagination a,.news-page .pagination button,.news-page .pagination a{padding:.5rem 1rem;border:1px solid var(--border);border-radius:.375rem;background-color:var(--background);color:var(--foreground);transition-property:background-color,border-color;transition-duration:.3s;transition-timing-function:ease}.blog-page .pagination button:hover,.blog-page .pagination a:hover,.news-page .pagination button:hover,.news-page .pagination a:hover{background-color:var(--accent);border-color:var(--primary)}.blog-page .pagination button.active,.blog-page .pagination a.active,.news-page .pagination button.active,.news-page .pagination a.active{background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.blog-page .pagination button:disabled,.blog-page .pagination a:disabled,.news-page .pagination button:disabled,.news-page .pagination a:disabled{opacity:.5;cursor:not-allowed}.single-article{padding:6rem 0 4rem}.single-article .article-header{max-width:48rem;margin:0 auto 3rem;text-align:center}.single-article .article-header h1{font-size:1.875rem;margin-bottom:1rem}@media(min-width: 1024px){.single-article .article-header h1{font-size:2.5rem}}.single-article .article-header .article-meta{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;color:var(--muted-foreground);font-size:.875rem}.single-article .article-header .article-meta svg{width:1rem;height:1rem}.single-article .article-header .article-meta .meta-item{display:flex;align-items:center;gap:.25rem}.single-article .article-featured-image{width:100%;max-width:64rem;height:400px;object-fit:cover;border-radius:.5rem;margin:0 auto 3rem}@media(min-width: 1024px){.single-article .article-featured-image{height:500px}}.single-article .article-content{max-width:48rem;margin:0 auto;font-size:1rem;line-height:1.8;color:var(--foreground)}.single-article .article-content h2{font-size:1.75rem;font-weight:600;margin:3rem 0 1.5rem;padding:1rem 0 1rem 1.25rem;border-left:4px solid #2c5282;background:linear-gradient(90deg, rgba(44, 82, 130, 0.08) 0%, transparent 100%);position:relative}@media(min-width: 1024px){.single-article .article-content h2{font-size:2rem}}.single-article .article-content h2::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg, #2c5282 0%, rgba(44, 82, 130, 0.3) 100%)}.single-article .article-content h3{font-size:1.5rem;font-weight:600;margin:2.5rem 0 1.25rem;padding-bottom:.75rem;border-bottom:2px solid rgba(44,82,130,.2);position:relative}@media(min-width: 1024px){.single-article .article-content h3{font-size:1.625rem}}.single-article .article-content h3::after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:#2c5282}.single-article .article-content h4{font-size:1.25rem;font-weight:600;margin:2rem 0 1rem;padding-left:.75rem;border-left:3px solid rgba(212,24,61,.5)}@media(min-width: 1024px){.single-article .article-content h4{font-size:1.375rem}}.single-article .article-content h5{font-size:1.125rem;font-weight:600;margin:1.75rem 0 .875rem;color:#2c5282}.single-article .article-content h6{font-size:1rem;font-weight:600;margin:1.5rem 0 .75rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.single-article .article-content p{margin-bottom:1.5rem;line-height:1.9}.single-article .article-content p:has(img){margin-bottom:2rem}.single-article .article-content img{width:100%;height:auto;border-radius:.5rem;margin:2rem 0;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}.single-article .article-content img.alignleft{float:left;margin:.5rem 1.5rem 1rem 0;max-width:50%}@media(min-width: 768px){.single-article .article-content img.alignleft{max-width:40%}}.single-article .article-content img.alignright{float:right;margin:.5rem 0 1rem 1.5rem;max-width:50%}@media(min-width: 768px){.single-article .article-content img.alignright{max-width:40%}}.single-article .article-content img.aligncenter{display:block;margin:2rem auto}.single-article .article-content ul,.single-article .article-content ol{margin-bottom:1.5rem;padding-left:1.5rem}.single-article .article-content ul li,.single-article .article-content ol li{margin-bottom:.75rem;line-height:1.8}.single-article .article-content ul li::marker,.single-article .article-content ol li::marker{color:#2c5282}.single-article .article-content ul ul,.single-article .article-content ul ol,.single-article .article-content ol ul,.single-article .article-content ol ol{margin-top:.5rem;margin-bottom:.5rem}.single-article .article-content blockquote{border-left:4px solid #2c5282;padding:1.5rem 1.5rem 1.5rem 2rem;margin:2rem 0;background:rgba(44,82,130,.05);border-radius:0 .5rem .5rem 0;position:relative}.single-article .article-content blockquote::before{content:"“";position:absolute;top:-0.25rem;left:1rem;font-size:4rem;color:rgba(44,82,130,.2);line-height:1}.single-article .article-content blockquote p{margin-bottom:.5rem;font-style:italic;color:var(--foreground)}.single-article .article-content blockquote p:last-child{margin-bottom:0}.single-article .article-content blockquote cite{display:block;margin-top:1rem;font-style:normal;font-size:.875rem;color:var(--muted-foreground)}.single-article .article-content blockquote cite::before{content:"— "}.single-article .article-content code{background-color:rgba(44,82,130,.1);color:#2c5282;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;font-family:"Courier New",monospace}.single-article .article-content pre{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:.5rem;overflow-x:auto;margin:2rem 0;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}.single-article .article-content pre code{background:none;color:inherit;padding:0}.single-article .article-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.875rem;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}@media(min-width: 1024px){.single-article .article-content table{font-size:1rem}}.single-article .article-content table thead{background:#2c5282;color:#fff}.single-article .article-content table thead th{padding:1rem;text-align:left;font-weight:600}.single-article .article-content table tbody tr{border-bottom:1px solid var(--border)}.single-article .article-content table tbody tr:nth-child(even){background:rgba(212,24,61,.03)}.single-article .article-content table tbody tr:hover{background:rgba(44,82,130,.08)}.single-article .article-content table tbody td{padding:.875rem 1rem}.single-article .article-content hr{margin:3rem 0;border:none;height:1px;background:linear-gradient(90deg, transparent 0%, var(--border) 50%, transparent 100%)}.single-article .article-content a{color:#2c5282;text-decoration:underline;text-decoration-color:rgba(44,82,130,.3);text-underline-offset:.2em;transition-property:color,text-decoration-color;transition-duration:.3s;transition-timing-function:ease}.single-article .article-content a:hover{color:rgb(31.1034482759,57.9655172414,91.8965517241);text-decoration-color:#2c5282}.single-article .article-content strong,.single-article .article-content b{font-weight:600;color:var(--foreground)}.single-article .article-content em,.single-article .article-content i{font-style:italic}.single-article .article-content del,.single-article .article-content s{text-decoration:line-through;opacity:.7}.single-article .article-footer{max-width:48rem;margin:3rem auto 0;padding-top:2rem;border-top:1px solid var(--border)}.single-article .article-footer .article-tags{display:flex;flex-wrap:wrap;gap:.5rem}.single-article .article-footer .article-tags .tag{padding:.25rem .75rem;background-color:var(--muted);color:var(--foreground);border-radius:9999px;font-size:.875rem;transition-property:background-color;transition-duration:.3s;transition-timing-function:ease}.single-article .article-footer .article-tags .tag:hover{background-color:var(--accent)}.single-article .post-navigation{max-width:64rem;margin:4rem auto 0;padding-top:3rem;border-top:2px solid rgba(44,82,130,.1)}@media(min-width: 1024px){.single-article .post-navigation{margin:5rem auto 0}}.single-article .post-navigation__container{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width: 768px){.single-article .post-navigation__container{grid-template-columns:repeat(2, 1fr);gap:2rem}}@media(min-width: 768px){.single-article .post-navigation__container:has(.post-navigation__item:only-child){grid-template-columns:1fr;max-width:32rem;margin:0 auto}}.single-article .post-navigation__item{position:relative;border-radius:.5rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);transition-property:transform,box-shadow;transition-duration:.3s;transition-timing-function:ease}.single-article .post-navigation__item:hover{transform:translateY(-4px);box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23)}.single-article .post-navigation__item:hover .post-navigation__thumbnail img{transform:scale(1.05)}.single-article .post-navigation__item:hover .post-navigation__label{color:#2c5282}.single-article .post-navigation__item a{display:flex;flex-direction:column;text-decoration:none;color:var(--foreground);background:var(--card);height:100%}.single-article .post-navigation__thumbnail{width:100%;height:200px;overflow:hidden;position:relative;flex-shrink:0}.single-article .post-navigation__thumbnail img{width:100%;height:100%;object-fit:cover;transition-property:transform;transition-duration:.3s;transition-timing-function:ease}.single-article .post-navigation__thumbnail::after{content:"";position:absolute;inset:0;background:linear-gradient(to top, rgba(3, 2, 19, 0.3) 0%, transparent 100%)}.single-article .post-navigation__content{padding:1.5rem;flex:1;display:flex;flex-direction:column;gap:.5rem}.single-article .post-navigation__label{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:#2c5282;text-transform:uppercase;letter-spacing:.05em;transition-property:color;transition-duration:.3s;transition-timing-function:ease}.single-article .post-navigation__label svg{width:1rem;height:1rem}.single-article .post-navigation__item--prev .single-article .post-navigation__label svg{order:-1}.single-article .post-navigation__item--next .single-article .post-navigation__label{flex-direction:row-reverse;justify-content:flex-start}.single-article .post-navigation__item--next .single-article .post-navigation__label svg{order:1}.single-article .post-navigation__title{font-size:1.125rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;line-height:1.4;color:var(--foreground);margin-bottom:.25rem}@media(min-width: 1024px){.single-article .post-navigation__title{font-size:1.25rem}}.single-article .post-navigation__date{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.single-article .post-navigation__excerpt{font-size:.875rem;line-height:1.6;color:var(--muted-foreground);margin:0}.single-article .related-posts{max-width:64rem;margin:4rem auto 0;padding-top:3rem;border-top:2px solid rgba(44,82,130,.1)}@media(min-width: 1024px){.single-article .related-posts{margin:5rem auto 0}}.single-article .related-posts__header{text-align:center;margin-bottom:2.5rem}.single-article .related-posts__header h2{font-size:1.75rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;color:var(--foreground);margin:0}@media(min-width: 1024px){.single-article .related-posts__header h2{font-size:2rem}}.single-article .related-posts__grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width: 768px){.single-article .related-posts__grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.single-article .related-posts__grid{grid-template-columns:repeat(3, 1fr)}}.single-article .related-posts__item{background-color:var(--card);border:1px solid var(--border);border-radius:.5rem;overflow:hidden;transition-property:transform,box-shadow;transition-duration:.3s;transition-timing-function:ease}.single-article .related-posts__item:hover{transform:translateY(-4px);box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23)}.single-article .related-posts__item:hover .related-posts__image img{transform:scale(1.05)}.single-article .related-posts__item a{display:block;text-decoration:none;color:var(--foreground)}.single-article .related-posts__image{width:100%;height:200px;overflow:hidden;position:relative}.single-article .related-posts__image img{width:100%;height:100%;object-fit:cover;transition-property:transform;transition-duration:.3s;transition-timing-function:ease}.single-article .related-posts__content{padding:1.25rem}.single-article .related-posts__date{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.single-article .related-posts__date svg{width:1rem;height:1rem}.single-article .related-posts__title{font-size:1rem;font-weight:600;line-height:1.5;color:var(--foreground);margin:0 0 .5rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(min-width: 1024px){.single-article .related-posts__title{font-size:1.0625rem}}.single-article .related-posts__excerpt{font-size:.875rem;line-height:1.6;color:var(--muted-foreground);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.menu-section{padding:4rem 0;background-color:var(--background)}.menu-section .section-header{text-align:center;margin-bottom:3rem}.menu-section .section-header h2{font-size:1.875rem;margin-bottom:1rem}@media(min-width: 1024px){.menu-section .section-header h2{font-size:2.25rem}}.menu-section .section-header p{color:var(--muted-foreground);font-size:1rem}.menu-section .menu-grid{display:grid;gap:3rem;max-width:80rem;margin:0 auto}.menu-section .menu-category-section h3{font-size:1.5rem;margin-bottom:2rem;padding-bottom:.75rem;border-bottom:2px solid var(--border);font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.menu-section .menu-category-section h3{font-size:1.875rem}}.menu-section .menu-category-section .menu-items-grid{display:grid;gap:2rem}@media(min-width: 768px){.menu-section .menu-category-section .menu-items-grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.menu-section .menu-category-section .menu-items-grid{grid-template-columns:repeat(3, 1fr)}}.menu-section .menu-item-card{background-color:var(--card);border:1px solid var(--border);border-radius:.5rem;overflow:hidden;transition-property:transform,box-shadow;transition-duration:.3s;transition-timing-function:ease}.menu-section .menu-item-card:hover{transform:translateY(-4px);box-shadow:0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23)}.menu-section .menu-item-card .menu-item-image-wrapper{position:relative;width:100%;padding-top:75%;overflow:hidden}.menu-section .menu-item-card .menu-item-image-wrapper .menu-item-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.menu-section .menu-item-card .menu-item-image-wrapper .menu-badge{position:absolute;top:.75rem;right:.75rem;padding:.25rem .75rem;background-color:var(--primary);color:var(--primary-foreground);border-radius:9999px;font-size:.75rem;font-weight:var(--font-weight-medium)}.menu-section .menu-item-card .menu-item-info{padding:1.25rem}.menu-section .menu-item-card .menu-item-info .menu-item-header{display:flex;justify-content:space-between;align-items:start;gap:.5rem;margin-bottom:.75rem}.menu-section .menu-item-card .menu-item-info .menu-item-header h4{font-size:1.125rem;font-weight:var(--font-weight-medium);flex:1}.menu-section .menu-item-card .menu-item-info .menu-item-header .price{font-size:1.25rem;font-weight:var(--font-weight-medium);color:var(--primary);white-space:nowrap}.menu-section .menu-item-card .menu-item-info .menu-item-description{font-size:.875rem;color:var(--muted-foreground);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.75rem}.menu-section .menu-item-card .menu-item-info .menu-item-tags{display:flex;flex-wrap:wrap;gap:.5rem}.menu-section .menu-item-card .menu-item-info .menu-item-tags .tag{padding:.25rem .5rem;background-color:var(--muted);color:var(--muted-foreground);border-radius:.25rem;font-size:.75rem}.menu-section .featured-menu{background:linear-gradient(135deg, var(--accent) 0%, var(--secondary) 100%);border-radius:.5rem;padding:2rem;margin-bottom:3rem}@media(min-width: 1024px){.menu-section .featured-menu{padding:3rem}}.menu-section .featured-menu .featured-header{text-align:center;margin-bottom:2rem}.menu-section .featured-menu .featured-header h3{font-size:1.5rem;margin-bottom:.5rem}@media(min-width: 1024px){.menu-section .featured-menu .featured-header h3{font-size:2rem}}.menu-section .featured-menu .featured-header p{color:var(--muted-foreground)}.menu-section .featured-menu .featured-items{display:grid;gap:2rem}@media(min-width: 768px){.menu-section .featured-menu .featured-items{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1024px){.menu-section .featured-menu .featured-items{grid-template-columns:repeat(3, 1fr)}}.menu-section .featured-menu .featured-item{background-color:var(--card);border-radius:.5rem;padding:1.5rem;text-align:center;transition-property:transform;transition-duration:.3s;transition-timing-function:ease}.menu-section .featured-menu .featured-item:hover{transform:scale(1.05)}.menu-section .featured-menu .featured-item .featured-image{width:100%;height:150px;object-fit:cover;border-radius:.375rem;margin-bottom:1rem}.menu-section .featured-menu .featured-item h4{font-size:1.125rem;margin-bottom:.5rem}.menu-section .featured-menu .featured-item p{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.75rem}.menu-section .featured-menu .featured-item .price{font-size:1.5rem;font-weight:var(--font-weight-medium);color:var(--primary)}.menu-section .menu-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.menu-section .menu-filters button{padding:.5rem 1.5rem;border:1px solid var(--border);border-radius:9999px;background-color:var(--background);color:var(--foreground);font-size:.875rem;transition-property:background-color,border-color,color;transition-duration:.3s;transition-timing-function:ease}.menu-section .menu-filters button:hover{background-color:var(--accent);border-color:var(--primary)}.menu-section .menu-filters button.active{background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.concept-page .concept-hero{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.concept-page .concept-hero{padding-top:6rem;padding-bottom:6rem}}.concept-page .concept-content{padding-top:4rem;padding-bottom:4rem}@media(min-width: 1024px){.concept-page .concept-content{padding-top:6rem;padding-bottom:6rem}}.concept-page .content-block{display:grid;gap:2rem;align-items:center;margin-bottom:3rem}@media(min-width: 1024px){.concept-page .content-block{grid-template-columns:repeat(2, 1fr);gap:4rem;margin-bottom:5rem}}.concept-page .content-block:last-child{margin-bottom:0}.concept-page .content-block__text>*+*{margin-top:1rem}@media(min-width: 1024px){.concept-page .content-block__text>*+*{margin-top:1.5rem}}.concept-page .content-block__text{order:2}@media(min-width: 1024px){.concept-page .content-block__text{order:1}}.concept-page .content-block__image{order:1}@media(min-width: 1024px){.concept-page .content-block__image{order:2}}.concept-page .content-block--reverse .content-block__text{order:2}@media(min-width: 1024px){.concept-page .content-block--reverse .content-block__text{order:2}}.concept-page .content-block--reverse .content-block__image{order:1}@media(min-width: 1024px){.concept-page .content-block--reverse .content-block__image{order:1}}.concept-page .content-block h3{font-size:1.25rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.concept-page .content-block h3{font-size:1.5rem}}.concept-page .content-block p{color:var(--muted-foreground);line-height:1.75;font-size:.875rem}@media(min-width: 1024px){.concept-page .content-block p{font-size:1rem}}.concept-page .content-block img{width:100%;height:16rem;object-fit:cover;border-radius:var(--radius);box-shadow:0 10px 15px rgba(0,0,0,.1)}@media(min-width: 640px){.concept-page .content-block img{height:20rem}}@media(min-width: 1024px){.concept-page .content-block img{height:24rem}}@media(min-width: 1280px){.concept-page .content-block img{height:28rem}}.menu-page .menu-hero{padding-top:4rem;padding-bottom:4rem;background-color:var(--background)}@media(min-width: 1024px){.menu-page .menu-hero{padding-top:6rem;padding-bottom:6rem}}.menu-page .menu-content{padding-top:4rem;padding-bottom:4rem}@media(min-width: 1024px){.menu-page .menu-content{padding-top:6rem;padding-bottom:6rem}}.menu-page .menu-category{margin-bottom:3rem}@media(min-width: 1024px){.menu-page .menu-category{margin-bottom:5rem}}.menu-page .menu-category:last-child{margin-bottom:0}.menu-page .menu-category__title{text-align:center;font-size:1.25rem;font-weight:var(--font-weight-medium);margin-bottom:1.5rem}@media(min-width: 1024px){.menu-page .menu-category__title{font-size:1.5rem;margin-bottom:2rem}}.menu-page .menu-category__grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width: 768px){.menu-page .menu-category__grid{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 1280px){.menu-page .menu-category__grid{grid-template-columns:repeat(3, 1fr)}}@media(min-width: 1024px){.menu-page .menu-category__grid{gap:2rem}}.menu-page .menu-item{background-color:var(--card);border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden;transition:all .3s ease}.menu-page .menu-item:hover{box-shadow:0 10px 15px rgba(0,0,0,.1);transform:translateY(-0.25rem)}.menu-page .menu-item:hover .menu-item__image img{transform:scale(1.05)}.menu-page .menu-item__image{aspect-ratio:4/3;position:relative;overflow:hidden}.menu-page .menu-item__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.menu-page .menu-item__content{padding:1rem}@media(min-width: 1024px){.menu-page .menu-item__content{padding:1.5rem}}.menu-page .menu-item__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}@media(min-width: 1024px){.menu-page .menu-item__header{margin-bottom:.75rem}}.menu-page .menu-item__name{font-size:1.125rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.menu-page .menu-item__name{font-size:1.25rem}}.menu-page .menu-item__price{font-size:1rem;color:var(--primary);font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.menu-page .menu-item__price{font-size:1.125rem}}.menu-page .menu-item__description{color:var(--muted-foreground);font-size:.875rem;line-height:1.75}@media(min-width: 1024px){.menu-page .menu-item__description{font-size:1rem}}.menu-page .menu-footer{text-align:center;margin-top:3rem}@media(min-width: 1024px){.menu-page .menu-footer{margin-top:4rem}}.menu-page .menu-footer p{color:var(--muted-foreground);font-size:.875rem;margin-bottom:1rem}@media(min-width: 1024px){.menu-page .menu-footer p{font-size:1rem}}.access-page .access-hero{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.access-page .access-hero{padding-top:6rem;padding-bottom:6rem}}.access-page .access-content{padding-top:4rem;padding-bottom:4rem}@media(min-width: 1024px){.access-page .access-content{padding-top:6rem;padding-bottom:6rem}}.access-page .access-grid{display:grid;gap:2rem}@media(min-width: 1024px){.access-page .access-grid{grid-template-columns:repeat(2, 1fr);gap:4rem}}.access-page .info-list>*+*{margin-top:1.5rem}@media(min-width: 1024px){.access-page .info-list>*+*{margin-top:2rem}}.access-page .info-list .info-item{display:flex;align-items:flex-start;gap:1rem}.access-page .info-list .info-item svg{width:1.25rem;height:1.25rem;color:var(--primary);margin-top:.25rem;flex-shrink:0}@media(min-width: 1024px){.access-page .info-list .info-item svg{width:1.5rem;height:1.5rem}}.access-page .info-list .info-item h3{font-size:1rem;font-weight:var(--font-weight-medium);margin-bottom:.5rem}@media(min-width: 1024px){.access-page .info-list .info-item h3{font-size:1.125rem}}.access-page .info-list .info-item p,.access-page .info-list .info-item div{color:var(--muted-foreground);font-size:.875rem;line-height:1.5}@media(min-width: 1024px){.access-page .info-list .info-item p,.access-page .info-list .info-item div{font-size:1rem}}.access-page .info-list .info-item .small{font-size:.75rem;margin-top:.5rem}@media(min-width: 1024px){.access-page .info-list .info-item .small{font-size:.875rem}}.access-page .reservation-card{background-color:var(--card);border-radius:var(--radius);padding:1.5rem;box-shadow:0 10px 15px rgba(0,0,0,.1)}@media(min-width: 1024px){.access-page .reservation-card{padding:2rem}}.access-page .reservation-card h3{font-size:1.125rem;font-weight:var(--font-weight-medium);margin-bottom:1rem}@media(min-width: 1024px){.access-page .reservation-card h3{font-size:1.25rem;margin-bottom:1.5rem}}.access-page .reservation-card>*+*{margin-top:1rem}@media(min-width: 1024px){.access-page .reservation-card>*+*{margin-top:1.5rem}}.access-page .reservation-card__content{color:var(--muted-foreground);font-size:.875rem}@media(min-width: 1024px){.access-page .reservation-card__content{font-size:1rem}}.access-page .reservation-card__phone{text-align:center;padding:1.5rem 0}@media(min-width: 1024px){.access-page .reservation-card__phone{padding:2rem 0}}.access-page .reservation-card__phone p:first-child{font-size:1.25rem;margin-bottom:.5rem}@media(min-width: 1024px){.access-page .reservation-card__phone p:first-child{font-size:1.5rem}}.access-page .reservation-card__phone p:last-child{font-size:.75rem;color:var(--muted-foreground)}@media(min-width: 1024px){.access-page .reservation-card__phone p:last-child{font-size:.875rem}}.access-page .reservation-card__footer{border-top:1px solid var(--border);padding-top:1rem}.access-page .reservation-card__footer p{font-size:.75rem;color:var(--muted-foreground);line-height:1.5}@media(min-width: 1024px){.access-page .reservation-card__footer p{font-size:.875rem}}.contact-page{padding-top:4rem}@media(min-width: 1024px){.contact-page{padding-top:5rem}}.contact-page .contact-hero{padding-top:4rem;padding-bottom:4rem;background-color:#f9fafb}@media(min-width: 1024px){.contact-page .contact-hero{padding-top:5rem;padding-bottom:5rem}}.contact-page .contact-hero h1{font-size:1.875rem;margin-bottom:1rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.contact-page .contact-hero h1{font-size:3rem}}.contact-page .contact-hero p{font-size:1.125rem;color:var(--muted-foreground);max-width:42rem;margin-left:auto;margin-right:auto}.contact-page .contact-methods{padding-top:2rem;padding-bottom:2rem}@media(min-width: 1024px){.contact-page .contact-methods{padding-top:3rem;padding-bottom:3rem}}.contact-page .contact-methods h2{font-size:1.5rem;text-align:center;margin-bottom:2rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.contact-page .contact-methods h2{font-size:1.875rem;margin-bottom:3rem}}.contact-page .contact-methods__grid{display:grid;gap:1.5rem;margin-bottom:3rem}@media(min-width: 768px){.contact-page .contact-methods__grid{grid-template-columns:repeat(3, 1fr)}}@media(min-width: 1024px){.contact-page .contact-methods__grid{gap:2rem;margin-bottom:4rem}}.contact-page .method-card{text-align:center;background-color:var(--card);border-radius:var(--radius);padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);transition:box-shadow .3s ease}.contact-page .method-card:hover{box-shadow:0 4px 6px rgba(0,0,0,.1)}.contact-page .method-card__icon{width:4rem;height:4rem;background-color:rgba(3,2,19,.1);border-radius:9999px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.contact-page .method-card__icon svg{width:2rem;height:2rem;color:var(--primary)}.contact-page .method-card h3{font-size:1.125rem;margin-bottom:.75rem;font-weight:var(--font-weight-medium)}.contact-page .method-card__content{color:var(--primary);font-weight:var(--font-weight-medium);margin-bottom:.5rem}.contact-page .method-card__description{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.contact-page .method-card__hours{font-size:.75rem;color:var(--muted-foreground)}.contact-page .contact-form-section{padding-top:2rem;padding-bottom:2rem;background-color:var(--background)}@media(min-width: 1024px){.contact-page .contact-form-section{padding-top:3rem;padding-bottom:3rem}}.contact-page .contact-form-section__header{text-align:center;margin-bottom:2rem}@media(min-width: 1024px){.contact-page .contact-form-section__header{margin-bottom:3rem}}.contact-page .contact-form-section__header svg{width:4rem;height:4rem;color:var(--primary);margin:0 auto 1rem}.contact-page .contact-form-section__header h2{font-size:1.5rem;margin-bottom:1rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.contact-page .contact-form-section__header h2{font-size:1.875rem}}.contact-page .contact-form-section__header p{color:var(--muted-foreground)}.contact-page .faq-section{padding-top:3rem;padding-bottom:3rem;background-color:#f9fafb}@media(min-width: 1024px){.contact-page .faq-section{padding-top:4rem;padding-bottom:4rem}}.contact-page .faq-section h2{font-size:1.25rem;text-align:center;margin-bottom:2rem;font-weight:var(--font-weight-medium)}@media(min-width: 1024px){.contact-page .faq-section h2{font-size:1.5rem}}.contact-page .faq-section__grid{display:grid;gap:1.5rem}@media(min-width: 768px){.contact-page .faq-section__grid{grid-template-columns:repeat(2, 1fr)}}.contact-page .faq-card{background-color:var(--card);border-radius:var(--radius);padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1)}.contact-page .faq-card h3{font-weight:var(--font-weight-medium);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.contact-page .faq-card h3 svg{width:1.25rem;height:1.25rem;color:var(--primary)}.contact-page .faq-card__content>*+*{margin-top:.5rem}.contact-page .faq-card__content p{font-size:.875rem;color:var(--muted-foreground)}.contact-page .faq-card__content .text-destructive{color:var(--destructive)}.editor-styles-wrapper{font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;line-height:1.8;color:#030213;background:#fff}.editor-styles-wrapper .wp-block{max-width:48rem}.editor-styles-wrapper h2,.editor-styles-wrapper .wp-block-heading h2{font-size:1.75rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;margin:3rem 0 1.5rem;padding:1rem 0 1rem 1.25rem;border-left:4px solid #2c5282;background:linear-gradient(90deg, rgba(44, 82, 130, 0.08) 0%, transparent 100%);position:relative}.editor-styles-wrapper h2::before,.editor-styles-wrapper .wp-block-heading h2::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg, #2c5282 0%, rgba(44, 82, 130, 0.3) 100%)}.editor-styles-wrapper h3,.editor-styles-wrapper .wp-block-heading h3{font-size:1.5rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;margin:2.5rem 0 1.25rem;padding-bottom:.75rem;border-bottom:2px solid rgba(44,82,130,.2);position:relative}.editor-styles-wrapper h3::after,.editor-styles-wrapper .wp-block-heading h3::after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:#2c5282}.editor-styles-wrapper h4,.editor-styles-wrapper .wp-block-heading h4{font-size:1.25rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;margin:2rem 0 1rem;padding-left:.75rem;border-left:3px solid rgba(44,82,130,.5)}.editor-styles-wrapper h5,.editor-styles-wrapper .wp-block-heading h5{font-size:1.125rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;margin:1.75rem 0 .875rem;color:#2c5282}.editor-styles-wrapper h6,.editor-styles-wrapper .wp-block-heading h6{font-size:1rem;font-weight:600;font-family:"Playfair Display","Noto Serif JP",serif;margin:1.5rem 0 .75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.editor-styles-wrapper p,.editor-styles-wrapper .wp-block-paragraph{margin-bottom:1.5rem;line-height:1.9}.editor-styles-wrapper img,.editor-styles-wrapper .wp-block-image img{width:100%;height:auto;border-radius:.5rem;margin:2rem 0;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.editor-styles-wrapper .wp-block-image{margin:2rem 0}.editor-styles-wrapper .wp-block-image.alignleft{float:left;margin:.5rem 1.5rem 1rem 0;max-width:50%}.editor-styles-wrapper .wp-block-image.alignright{float:right;margin:.5rem 0 1rem 1.5rem;max-width:50%}.editor-styles-wrapper .wp-block-image.aligncenter{margin:2rem auto}.editor-styles-wrapper ul,.editor-styles-wrapper ol,.editor-styles-wrapper .wp-block-list{margin-bottom:1.5rem;padding-left:1.5rem}.editor-styles-wrapper ul li,.editor-styles-wrapper ol li,.editor-styles-wrapper .wp-block-list li{margin-bottom:.75rem;line-height:1.8}.editor-styles-wrapper ul li::marker,.editor-styles-wrapper ol li::marker,.editor-styles-wrapper .wp-block-list li::marker{color:#2c5282}.editor-styles-wrapper ul ul,.editor-styles-wrapper ul ol,.editor-styles-wrapper ol ul,.editor-styles-wrapper ol ol,.editor-styles-wrapper .wp-block-list ul,.editor-styles-wrapper .wp-block-list ol{margin-top:.5rem;margin-bottom:.5rem}.editor-styles-wrapper blockquote,.editor-styles-wrapper .wp-block-quote{border-left:4px solid #2c5282;padding:1.5rem 1.5rem 1.5rem 2rem;margin:2rem 0;background:rgba(44,82,130,.05);border-radius:0 .5rem .5rem 0;position:relative}.editor-styles-wrapper blockquote::before,.editor-styles-wrapper .wp-block-quote::before{content:"“";position:absolute;top:-0.25rem;left:1rem;font-size:4rem;color:rgba(44,82,130,.2);line-height:1}.editor-styles-wrapper blockquote p,.editor-styles-wrapper .wp-block-quote p{margin-bottom:.5rem;font-style:italic;color:#030213}.editor-styles-wrapper blockquote p:last-child,.editor-styles-wrapper .wp-block-quote p:last-child{margin-bottom:0}.editor-styles-wrapper blockquote cite,.editor-styles-wrapper .wp-block-quote cite{display:block;margin-top:1rem;font-style:normal;font-size:.875rem;color:#6b7280}.editor-styles-wrapper blockquote cite::before,.editor-styles-wrapper .wp-block-quote cite::before{content:"— "}.editor-styles-wrapper code,.editor-styles-wrapper .wp-block-code code{background-color:rgba(44,82,130,.1);color:#2c5282;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;font-family:"Courier New",monospace}.editor-styles-wrapper pre,.editor-styles-wrapper .wp-block-code{background-color:#1e1e1e;color:#d4d4d4;padding:1.5rem;border-radius:.5rem;overflow-x:auto;margin:2rem 0;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.editor-styles-wrapper pre code,.editor-styles-wrapper .wp-block-code code{background:none;color:inherit;padding:0}.editor-styles-wrapper table,.editor-styles-wrapper .wp-block-table table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.875rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.editor-styles-wrapper table thead,.editor-styles-wrapper .wp-block-table table thead{background:#2c5282;color:#fff}.editor-styles-wrapper table thead th,.editor-styles-wrapper .wp-block-table table thead th{padding:1rem;text-align:left;font-weight:600}.editor-styles-wrapper table tbody tr,.editor-styles-wrapper .wp-block-table table tbody tr{border-bottom:1px solid rgba(0,0,0,.1)}.editor-styles-wrapper table tbody tr:nth-child(even),.editor-styles-wrapper .wp-block-table table tbody tr:nth-child(even){background:rgba(212,24,61,.03)}.editor-styles-wrapper table tbody tr:hover,.editor-styles-wrapper .wp-block-table table tbody tr:hover{background:rgba(44,82,130,.08)}.editor-styles-wrapper table tbody td,.editor-styles-wrapper .wp-block-table table tbody td{padding:.875rem 1rem}.editor-styles-wrapper hr,.editor-styles-wrapper .wp-block-separator{margin:3rem 0;border:none;height:1px;background:linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.1) 50%, transparent 100%)}.editor-styles-wrapper a{color:#2c5282;text-decoration:underline;text-decoration-color:rgba(44,82,130,.3);text-underline-offset:.2em;transition:all .2s ease}.editor-styles-wrapper a:hover{color:#1e3a5f;text-decoration-color:#2c5282}.editor-styles-wrapper strong,.editor-styles-wrapper b{font-weight:600;color:#030213}.editor-styles-wrapper em,.editor-styles-wrapper i{font-style:italic}.editor-styles-wrapper del,.editor-styles-wrapper s{text-decoration:line-through;opacity:.7}.editor-styles-wrapper .wp-block-button{margin:1.5rem 0}.editor-styles-wrapper .wp-block-button .wp-block-button__link{background-color:#2c5282;color:#fff;padding:.75rem 1.5rem;border-radius:.375rem;text-decoration:none;display:inline-block;font-weight:500;transition:all .2s ease}.editor-styles-wrapper .wp-block-button .wp-block-button__link:hover{background-color:#1e3a5f;color:#fff}.editor-styles-wrapper .wp-block-cover{margin:2rem 0;border-radius:.5rem;overflow:hidden}.editor-styles-wrapper .wp-block-group{margin:2rem 0}.editor-styles-wrapper .wp-block-columns{margin:2rem 0}/*# sourceMappingURL=style.css.map */
