html,body{width:100%;margin:0;padding:0;overflow-x:hidden}.sp_br{display:none}@media screen and (width<=450px){.pc_br{display:none}.sp_br{display:block}}.top-section{color:#fff;width:100%;height:100vh;min-height:800px;font-family:Noto Serif JP,serif;position:relative;overflow:hidden}.top-bg{filter:blur(8px);z-index:-1;background-image:url(/assets/top-B3VQb-EY.webp);background-position:50%;background-size:cover;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(1.1)}.menu-nav{z-index:100;justify-content:space-between;align-items:center;padding:40px 60px;display:flex;position:relative}@media (width<=768px){.menu-nav{padding:40px 20px}}.menu-right{margin-left:auto}@media (width<=768px){.menu-right{-webkit-backdrop-filter:blur(20px);z-index:999;background-color:#fff6;justify-content:center;align-items:center;width:50%;height:100vh;transition:right .5s cubic-bezier(.2,1,.3,1);display:flex;position:fixed;top:0;right:-55%;box-shadow:-10px 0 30px #0000000d}.menu-right.is-active{right:0}}.menu-right ul{gap:40px;margin:0;padding:0;list-style:none;display:flex}@media (width<=768px){.menu-right ul{text-align:left;flex-direction:column;gap:40px;width:100%;padding-left:30px;font-weight:700}}.menu-right a{color:#fff;letter-spacing:.1em;font-size:.9rem;text-decoration:none;transition:opacity .3s}@media (width<=768px){.menu-right a{color:#333;letter-spacing:.1em;font-size:1.1rem;font-weight:700}}.menu-right a:hover{opacity:.6}.menu-trigger{cursor:pointer;z-index:1000;width:30px;height:12px;margin-left:auto;display:none;position:fixed;top:30px;right:30px}@media (width<=768px){.menu-trigger{display:block}}.menu-trigger span{transform-origin:50%;background-color:#000;width:100%;height:1px;transition:all .4s;position:absolute}.menu-trigger span:first-child{top:0}.menu-trigger span:nth-child(2){bottom:0}@media (width<=768px){.menu-trigger.active span:first-child{transform:translateY(6px)rotate(45deg)}.menu-trigger.active span:nth-child(2){transform:translateY(-6px)rotate(-45deg)}}.top-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:calc(100vh - 120px);display:flex}.top-logo-area h1{letter-spacing:.1em;margin:0;font-size:5rem;font-weight:400}@media (width<=768px){.top-logo-area h1{font-size:3rem}}.subtitle{letter-spacing:.5em;opacity:.9;margin:10px 0 40px;font-size:1.1rem}.top-center-img{width:600px;height:400px;overflow:hidden;box-shadow:0 20px 50px #0003}@media (width<=768px){.top-center-img{width:80%;height:400px}}.top-center-img img{object-fit:cover;width:100%;height:100%}.news-section{color:#333;background-color:#fff;padding:100px 40px}@media (width<=768px){.news-section{padding:60px 20px}}.section-header{text-align:center;margin-bottom:60px}.section-title{color:#333;letter-spacing:.15em;margin:0;font-size:2rem;font-weight:400}.section-subtitle{color:#999;letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:15px;margin-top:10px;font-size:.75rem;font-weight:400;display:flex}.section-subtitle:before,.section-subtitle:after{content:"";background-color:#ddd;width:40px;height:1px}.news-container{max-width:1000px;margin:0 auto}.news-title{text-align:center;letter-spacing:.1em;margin-bottom:60px;font-size:2.5rem;font-weight:400}.news-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}@media (width<=768px){.news-grid{grid-template-columns:1fr}}.news-item{color:inherit;text-decoration:none;transition:transform .3s}@media (width<=768px){.news-item{gap:15px;display:flex}}.news-item:hover{transform:translateY(-5px)}.news-img{aspect-ratio:16/10;width:100%;margin-bottom:15px;overflow:hidden}@media (width<=768px){.news-img{flex:0 0 100px}}.news-img img{object-fit:cover;width:100%;height:100%}.news-date{color:#888;margin-bottom:8px;font-size:.8rem;display:block}.news-headline{font-size:1rem;font-weight:400;line-height:1.6}.news-more{text-align:center;margin-top:60px}.btn-more{color:#333;border:1px solid #333;padding:15px 50px;font-size:.9rem;text-decoration:none;transition:all .3s;display:inline-block}.btn-more:hover{color:#fff;background-color:#333}.concept-section{z-index:1;background-image:url(/assets/top-B3VQb-EY.webp);background-position:50%;background-size:cover;background-attachment:fixed;padding:120px 0;position:relative}@media (width<=768px){.concept-section{background-attachment:scroll;padding:100px 20px}}.concept-overlay{-webkit-backdrop-filter:blur(8px);z-index:2;background-color:#64646499;width:100%;height:100%;position:absolute;top:0;left:0}.concept-container{z-index:3;color:#fff;text-align:center;max-width:800px;margin:0 auto;position:relative}.concept-title{color:#fff;letter-spacing:.15em;margin:0;font-size:2rem;font-weight:400}@media (width<=768px){.concept-title{font-size:2.4rem}}.concept-subtitle{color:#fff;letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:15px;margin-top:10px;font-size:.75rem;font-weight:400;display:flex}@media (width<=768px){.concept-subtitle{margin-bottom:50px}}.concept-subtitle:before,.concept-subtitle:after{content:"";background-color:#fff;width:40px;height:1px}.concept-lead{letter-spacing:.2em;margin-bottom:60px;font-size:2rem;font-weight:400}@media (width<=768px){.concept-lead{margin-bottom:40px;font-size:1.4rem}}.concept-text p{margin-bottom:50px;font-size:1.1rem;font-weight:300;line-height:2.5}@media (width<=768px){.concept-text p{margin-bottom:30px;font-size:.95rem;line-height:2.2}.concept-text p br{display:none}}.concept-decor{z-index:5;width:200px;position:absolute;box-shadow:0 20px 40px #0000004d}.decor-left{top:100px;left:8%}.decor-right{bottom:100px;right:8%}@media (width<=768px){.concept-decor{display:none}}.catmenu-section{color:#333;text-align:center;background-color:#f9f8f6;padding:100px 20px}.catmenu-container{max-width:1000px;margin:0 auto}.catmenu-title{color:#333;letter-spacing:.15em;margin:0;font-size:2rem;font-weight:400}.catmenu-subtitle{color:#999;letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:15px;margin-top:10px;margin-bottom:60px;font-size:.75rem;font-weight:400;display:flex}.catmenu-subtitle:before,.catmenu-subtitle:after{content:"";background-color:#ddd;width:40px;height:1px}.catmenu-lead{color:#666;margin-bottom:60px;font-size:.95rem}.menu-grid{grid-template-columns:1fr 1fr;gap:30px 40px;margin-bottom:60px;display:grid}@media (width<=768px){.menu-grid{grid-template-columns:1fr;gap:20px}}.menu-item{text-align:left;border-bottom:1px solid #e0e0e0;align-items:flex-start;gap:20px;padding-bottom:15px;display:flex}.menu-thumb{background-color:#eee;border-radius:8px;flex-shrink:0;width:240px;height:240px;overflow:hidden}@media (width<=768px){.menu-thumb{width:150px;height:150px}}.menu-thumb img{object-fit:cover;width:100%;height:100%}.menu-detail{flex-grow:1}.menu-text{justify-content:space-between;align-items:baseline;display:flex}.menu-name{color:#333;font-size:1rem;font-weight:500}.menu-price{color:#888;font-family:"serif";font-size:.9rem}.menu-desc{color:#666;margin:10px 0 0;font-size:.85rem;line-height:1.5}.shop_button_wrapper{margin:40px}.shop_button{letter-spacing:.1em;color:var(--black-color,#000);border:1px solid var(--black-color,#000);box-sizing:border-box;text-align:center;margin:24px;cursor:pointer;justify-content:center;align-items:center;gap:8px;max-width:400px;margin-inline:auto;padding:16px 32px;font-weight:400;text-decoration:none;transition:all .3s;display:flex;position:relative}@media screen and (width<=450px){.shop_button{max-width:320px}}.shop_button:after{content:"";background:var(--black-color,#000);width:60px;height:1px;transition:all .3s;position:absolute;top:50%;right:-30px}@media screen and (width<=450px){.shop_button:after{width:40px;right:-15px}}.shop_button:hover:after{transition:all .3s;animation:.7s OutIn-Line}.shop_button_icon{width:30px;height:30px}@media screen and (width<=450px){.shop_button_icon{width:24px;height:24px}}@keyframes OutIn-Line{0%{transform-origin:100% 0;transform:scale(1)}50%{transform-origin:100% 0;transform:scaleX(0)}50.1%{transform-origin:0 0;transform:scaleX(0)}to{transform-origin:0 0;transform:scale(1)}}.calendar-section{z-index:1;background-image:url(/assets/top-B3VQb-EY.webp);background-position:50%;background-size:cover;background-attachment:fixed;padding:100px 0;position:relative}@media (width<=768px){.calendar-section{background-attachment:scroll;padding:60px 20px}}.cal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2;background-color:#64646499;width:100%;height:100%;position:absolute;top:0;left:0}.cal-container{z-index:3;text-align:center;max-width:1000px;margin:0 auto;position:relative}.calendar-title{color:#fff;letter-spacing:.15em;margin:0;font-size:2rem;font-weight:400}.calendar-subtitle{color:#fff;letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:15px;margin-top:10px;font-size:.75rem;font-weight:400;display:flex}.calendar-subtitle:before,.calendar-subtitle:after{content:"";background-color:#ddd;width:40px;height:1px}.cal-controls{justify-content:flex-start;align-items:center;gap:15px;max-width:450px;margin-bottom:25px;display:flex}.ctrl-group{background:#0000004d;border-radius:4px;display:flex;overflow:hidden}.cal-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;padding:8px 15px;font-size:.8rem;transition:all .3s}.cal-btn:hover{background:#fff3}.today-btn{background:#ffffff26;border-radius:4px}.is-today .d-num{width:28px;height:28px;text-shadow:none;background-color:#5d5648;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex;color:#fff!important}.is-today{vertical-align:middle}.cal-main-content{justify-content:center;align-items:flex-start;gap:50px;width:100%;display:flex}@media (width<=768px){.cal-main-content{flex-direction:column;align-items:center;gap:40px}.cal-controls{justify-content:center;max-width:100%}}.cal-flex-container{flex:0 0 450px}@media (width<=900px){.cal-flex-container{flex:none;width:100%}}.cal-unit{color:#333;background:#fff;border-radius:8px;padding:30px;box-shadow:0 10px 30px #0003}.cal-unit h4{color:#333;text-align:center;margin-bottom:25px;font-size:1.1rem;font-weight:700}.cal-table{border-collapse:collapse;width:100%}.cal-table th{color:#888;border-bottom:1px solid #eee;padding-bottom:15px;font-size:.8rem}.cal-table td{text-align:center;padding:12px 0;font-size:.95rem}.is-closed{color:#bbb;background:#f9f9f9;border-radius:4px}.closed-label{margin-top:2px;font-size:.6rem;display:block}.cal-guide-text{text-align:center;color:#fff;flex-direction:column;flex:1;align-items:center;display:flex}@media (width<=768px){.cal-guide-text{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}}.guide-lead{margin-bottom:30px;font-size:1.5rem;font-weight:400;line-height:1.5}.guide-body{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}@media (width<=768px){.guide-body{text-align:center}}.guide-body p{opacity:.9;margin-bottom:25px;font-size:15px;line-height:1.8}.btn-reservation-form{color:#333;letter-spacing:.1em;box-sizing:border-box;background:#fff;border:1px solid #fff;border-radius:4px;justify-content:center;align-items:center;width:90%;max-width:340px;min-height:64px;margin:0 auto;font-size:19px;font-weight:800;text-decoration:none;transition:all .3s;display:flex}.btn-reservation-form:hover{color:#fff;background:0 0;border:1px solid #fff}@media (width<=768px){.btn-reservation-form{letter-spacing:.1em;max-width:280px;min-height:54px;font-size:16px}}.cal-info-bottom{text-align:center;margin-top:50px}.cal-tel-link{color:#fff;text-decoration:underline}.about-section{color:#333;background-color:#f9f8f6;padding:100px 20px}.about-container{max-width:1100px;margin:0 auto}.about-section .section-header{text-align:center;margin-bottom:60px}.about-section .section-title{letter-spacing:.15em;margin-bottom:10px;font-family:"serif";font-size:2.5rem}.about-section .section-subtitle{color:#888;letter-spacing:.3em;font-size:.8rem}.about-flex{align-items:stretch;gap:60px;display:flex}@media (width<=900px){.about-flex{flex-direction:column;gap:40px}}.about-map{flex:1;min-height:400px}.about-map iframe{filter:grayscale(20%);border-radius:8px;width:100%;height:100%;min-height:400px}.about-info{flex:1}.info-list{border-top:1px solid #ddd}.info-item{border-bottom:1px solid #eee;padding:20px 0;font-size:.95rem;line-height:1.6;display:flex}.info-item dt{color:#5d5648;flex-shrink:0;width:120px;font-weight:700}.info-item dd{flex-grow:1;margin:0}.info-tel{color:#333;font-weight:500;text-decoration:none}.info-tel:hover{text-decoration:underline}@media (width<=600px){.info-item{flex-direction:column;gap:5px}.info-item dt{color:#999;width:100%;font-size:.8rem}}.co2-list{margin:0;padding:0;list-style:none}.co2-list li{margin-bottom:5px;font-size:.95rem}.co2-mini-note{color:#999;margin-top:8px;font-size:.7rem;line-height:1.4}.co2-info-item dd{margin-top:10px}@media (width<=768px){.co2-info-item dd{margin-top:-15px}.co2-info-item dt{margin-bottom:0}}.co2-card-wrapper{justify-content:space-between;gap:10px;margin-bottom:15px;display:flex}@media (width<=768px){.co2-card-wrapper{gap:5px;display:flex}}.co2-mini-card{text-align:center;background:#fff;border-radius:8px;flex:1;padding:15px 10px;box-shadow:0 5px 15px #0000000d}@media (width<=450px){.co2-mini-card{padding:10px 4px}}.co2-mini-label{color:#666;margin-bottom:8px;font-size:.75rem}@media (width<=450px){.co2-mini-label{font-size:.6rem;transform:scale(.9)}}.co2-mini-value{color:#004b93;font-size:.9rem;font-weight:700}@media (width<=450px){.co2-mini-value{font-size:.7rem}}.co2-mini-value span{margin:0 2px;font-size:1.4rem}@media (width<=450px){.co2-mini-value span{font-size:1.1rem}}.co2-mini-value.tree{color:#2d8c3c}.co2-mini-value small{font-size:.7rem;font-weight:400}@media (width<=450px){.co2-mini-value small{margin-top:-2px;font-size:.55rem}}.co2-mini-note{color:#999;text-align:left;margin-top:8px;font-size:.7rem;line-height:1.4}.chat-popup{z-index:400;-webkit-backdrop-filter:none;background:#fff;border:1px solid #00000026;border-radius:15px;width:350px;height:500px;animation:.4s modalOpen;display:none;position:fixed;bottom:90px;right:20px;overflow:hidden;box-shadow:0 8px 32px #0000004d}#chat-container{flex-direction:column;width:100%;height:100%;display:flex}#chat-header{color:#fff;background:#383838d9;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 15px;display:flex}.header-left{align-items:center;gap:10px;display:flex}.avatar-container{align-items:center;display:flex}.header-avatar{object-fit:contain;background:#fff;border-radius:50%;width:35px;height:35px;padding:2px}.header-info{flex-direction:column;align-items:flex-start;display:flex}.header-info .name{font-size:13px;font-weight:700;line-height:1.2}.header-info .status-tag{color:#4caf50;text-transform:uppercase;margin-top:2px;font-size:10px}.chat-close-btn{color:#ffffffb3;cursor:pointer;z-index:500;background:0 0;border:none;font-size:24px;line-height:1}#chat-messages{-webkit-overflow-scrolling:touch;flex:1;padding:20px 0;display:block;overflow:hidden auto}.bot-message{flex-shrink:0;justify-content:flex-start;align-items:flex-end;margin-bottom:20px;padding:0 15px;display:flex}.bot-avatar{background:#fff;border-radius:50%;flex-shrink:0;width:30px;height:30px;margin-bottom:2px;margin-right:10px}.bot-message .bubble{color:#333;white-space:pre-wrap;word-wrap:break-word;background:#fff;border-radius:15px 15px 15px 3px;max-width:80%;padding:12px 15px;font-size:14px;line-height:1.6;box-shadow:0 2px 5px #0000001a}.chat-trigger{z-index:350;cursor:pointer;background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 15px #0000004d}@media (width<=450px){.chat-trigger{width:60px;height:60px;bottom:15px;right:15px}}.chat-trigger img{width:40px;height:auto}@media (width<=450px){.chat-popup{width:90%;height:60dvh;max-height:60dvh;bottom:80px;right:5%}}.chat-btn{color:#fff;text-align:center;background-color:#357afc;border-radius:4px;margin-top:15px;padding:10px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:opacity .2s;display:inline-block}.chat-btn:hover{opacity:.8}
