@media (width<=760px){body{zoom:.93}}[data-hero=center] .hero__inner{text-align:center;justify-content:center;align-items:center}[data-hero=center] .hero__sub{margin-inline:auto}[data-hero=center] .hero__media:after{background:radial-gradient(#0000 30%,oklch(18% .02 60/.6) 100%)}[data-hero=split] .hero{background:var(--dark)}[data-hero=split] .hero__media{width:52%;left:auto}[data-hero=split] .hero__media:after{background:linear-gradient(to right, var(--dark) 0%, transparent 22%)}[data-hero=split] .hero__inner{justify-content:center;padding-right:54%}@media (width<=880px){[data-hero=split] .hero__media{width:100%}[data-hero=split] .hero__inner{padding-right:var(--gutter)}}.dishes__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.dishes__links{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.textlink{letter-spacing:.05em;color:var(--ink-2);border-bottom:1px solid var(--line);transition:color .4s var(--ease), border-color .4s var(--ease);align-items:center;gap:10px;padding-bottom:6px;font-size:14px;display:inline-flex}.textlink:hover{color:var(--accent-d);border-color:var(--accent)}.textlink .arw{color:var(--accent)}.carousel{margin-top:clamp(40px,5vw,64px);position:relative}.carousel__track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;gap:clamp(18px,2vw,28px);padding-bottom:10px;display:flex;overflow-x:auto}.carousel__track::-webkit-scrollbar{display:none}.dish-card{scroll-snap-align:start;background:var(--paper);border:1px solid var(--line);color:inherit;transition:border-color .4s var(--ease), box-shadow .4s var(--ease), transform .4s var(--ease);flex:0 0 clamp(280px,34vw,400px);text-decoration:none;display:block}a.dish-card .dish-card__img{transition:opacity .4s var(--ease)}a.dish-card .dish-card__title{transition:color .35s var(--ease)}@media (hover:hover){a.dish-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 22px 44px -28px #281e126b}a.dish-card:hover .dish-card__img{opacity:.92}a.dish-card:hover .dish-card__title{color:var(--accent-d)}}.dish-card__img{aspect-ratio:4/5}@media (width>=768px){#dishes .dish-card__img{aspect-ratio:8/9}}.dish-card__body{padding:24px 26px 30px}.season-badge{font-family:var(--serif);letter-spacing:.16em;color:var(--accent-d);border:1px solid var(--accent);margin-bottom:18px;padding:5px 14px;font-size:12px;display:inline-block}.season-badge--all{color:var(--ink-2);border-color:var(--line)}.dish-card__title{letter-spacing:.05em;font-size:22px}.dish-card__desc{color:var(--ink-2);margin-top:14px;font-size:14px;line-height:2}@media (width<=760px){.dish-card{flex-basis:min(70vw,280px)}.dish-card__img{aspect-ratio:1}.dish-card__desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@keyframes swipe-hint{0%{transform:none}45%{transform:translate(-18px)}to{transform:none}}.carousel__track.is-hinting{animation:swipe-hint 1.2s var(--ease)}}.dish-card__meta{border-top:1px solid var(--line-soft);font-family:var(--latin);color:var(--ink-3);margin-top:20px;padding-top:16px;font-size:15px;font-style:italic}.carousel__nav{gap:12px;margin-top:30px;display:flex}@media (width<=760px){.carousel__nav{display:none}}.carousel__btn{border:1px solid var(--line);width:52px;height:52px;color:var(--ink-2);cursor:pointer;transition:background .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease);background:0 0;justify-content:center;align-items:center;display:flex}.carousel__btn:hover{background:var(--accent);color:var(--paper);border-color:var(--accent)}.carousel__btn:disabled{opacity:.3;cursor:default}.carousel__btn:disabled:hover{color:var(--ink-2);border-color:var(--line);background:0 0}.carousel__nav--overlay{margin-top:0}.carousel__nav--overlay .carousel__btn{z-index:2;background:var(--paper);position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 12px #0000001f}.carousel__nav--overlay .carousel__btn:hover{background:var(--accent)}.carousel__nav--overlay .carousel__btn[data-prev]{left:-26px}.carousel__nav--overlay .carousel__btn[data-next]{right:-26px}@media (width<=1100px){.carousel__nav--overlay .carousel__btn[data-prev]{left:8px}.carousel__nav--overlay .carousel__btn[data-next]{right:8px}}.rooms__carousel .carousel__nav--overlay .carousel__btn{z-index:4}.rooms__carousel .carousel__nav--overlay .carousel__btn[data-prev]{left:clamp(16px,4vw,56px)}.rooms__carousel .carousel__nav--overlay .carousel__btn[data-next]{right:clamp(16px,4vw,56px)}.dishes__cta{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:16px;margin-top:clamp(40px,5vw,60px);display:flex}.dishes__cta-resv{flex-direction:column;align-items:stretch;display:inline-flex}.dishes__cta-note{text-align:center;letter-spacing:.04em;color:var(--ink-3);margin-top:10px;font-size:13.5px;display:block}@media (width>=601px){.dishes__cta .btn,.plans__cta .btn{justify-content:center;min-width:280px}}@media (width<=600px){.dishes__cta{flex-direction:column;align-items:center}.dishes__cta>.btn,.dishes__cta-resv{width:100%;max-width:360px}.dishes__cta .btn,.plans__cta .btn{box-sizing:border-box;justify-content:center;width:100%}.plans__cta .btn{max-width:360px}}.eyebrow--center{justify-content:center}.eyebrow--center:before{content:none}.eyebrow--center:after{content:"";background:var(--accent);width:46px;height:1px}.rooms__head{text-align:center;max-width:760px;margin-inline:auto}.rooms__title{font-size:clamp(26px,3.2vw,42px)}.rooms__intro{color:var(--ink-2);font-family:var(--serif);letter-spacing:.04em;margin-top:26px;font-size:clamp(15px,1.4vw,19px);font-weight:500;line-height:2.2}.rooms__carousel{margin-top:clamp(46px,6vw,74px);position:relative}.rooms__track{padding-inline:max(var(--gutter), calc((100vw - 1180px) / 2));scroll-snap-type:x mandatory;gap:clamp(14px,1.6vw,22px)}.rooms__carousel:before,.rooms__carousel:after{content:"";z-index:3;pointer-events:none;width:clamp(40px,12vw,200px);position:absolute;top:0;bottom:0}.rooms__carousel:before{background:linear-gradient(to right, var(--bg) 8%, color-mix(in srgb, var(--bg) 55%, transparent) 60%, transparent);left:0}.rooms__carousel:after{background:linear-gradient(to left, var(--bg) 8%, color-mix(in srgb, var(--bg) 55%, transparent) 60%, transparent);right:0}.rooms__track .room-card{scroll-snap-align:center;flex:0 0 clamp(320px,60vw,880px)}.rooms__track .room-card__img{aspect-ratio:16/9}.room-card__cap{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;margin-top:18px;padding-top:14px;display:flex}.room-card__cap .r-name{font-family:var(--serif);letter-spacing:.06em;font-size:18px}.room-card__cap .r-meta{font-family:var(--latin);color:var(--ink-3);font-size:15px;font-style:italic}.rooms__dots{justify-content:center;gap:12px;margin-top:30px;display:flex}.rooms__dots button{border:1px solid var(--accent);cursor:pointer;width:9px;height:9px;transition:background .35s var(--ease), transform .35s var(--ease);background:0 0;border-radius:50%;padding:0}.rooms__dots button[aria-current=true]{background:var(--accent)}.rooms__foot{text-align:center;margin-inline:auto;max-width:720px;margin-top:clamp(40px,5vw,60px)}.rooms__desc{color:var(--ink-2);font-size:16px;line-height:2.2}.rooms__cta{margin-top:40px}.plans__grid{grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,34px);margin-top:clamp(20px,2.2vw,30px);display:grid}.plan{background:var(--paper);border:1px solid var(--line);transition:box-shadow .5s var(--ease), transform .5s var(--ease);flex-direction:column;display:flex}@media (hover:hover){.plan:hover{transform:translateY(-4px);box-shadow:0 28px 60px -44px oklch(20% .02 60/.55)}}.plan__img{aspect-ratio:1}.plan__body{flex-direction:column;flex:1;padding:clamp(24px,2.2vw,32px);display:flex}.plan__title{letter-spacing:.05em;font-size:clamp(20px,1.7vw,24px);line-height:1.5}.plan__desc{color:var(--ink-2);flex:1;margin-top:16px;font-size:14px;line-height:2}.plan__foot{border-top:1px solid var(--line-soft);flex-direction:column;gap:18px;margin-top:24px;padding-top:20px;display:flex}.plan__price{font-family:var(--serif);color:var(--ink);letter-spacing:.04em}.plan__price b{font-size:26px;font-weight:600}.plan__price small{color:var(--ink-3);font-size:13px;font-family:var(--sans)}.plan__detail{letter-spacing:.12em;color:var(--accent-d);border:1px solid var(--accent);transition:background .45s var(--ease), color .45s var(--ease);align-self:flex-start;align-items:center;gap:10px;padding:11px 22px;font-size:14px;display:inline-flex}.plan__detail .arw{transition:transform .45s var(--ease)}@media (hover:hover){.plan:hover .plan__detail{background:var(--accent);color:var(--paper)}.plan:hover .plan__detail .arw{transform:translate(4px)}}.plans__cta{justify-content:center;margin-top:clamp(48px,6vw,76px);display:flex}.btn--lg{letter-spacing:.18em;border-width:1px;border-color:var(--ink);color:var(--ink);padding:22px 88px;font-size:15px}.btn--lg:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}@media (width<=860px){.plans__grid{grid-template-columns:1fr;max-width:440px;margin-inline:auto}.btn--lg{padding-inline:56px}}@media (width<=760px){.plan__img{aspect-ratio:4/3}.plan__body{padding:18px 20px 22px}.plan__desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:12px;display:-webkit-box;overflow:hidden}.plan__foot{gap:12px;margin-top:16px;padding-top:14px}}@media (width<=600px){.plans__grid{scroll-snap-type:x mandatory;max-width:none;scroll-padding-left:var(--gutter);scrollbar-width:none;-webkit-overflow-scrolling:touch;grid-template-columns:none;gap:14px;margin-inline:0;padding-bottom:12px;display:flex;overflow-x:auto}.plans__grid::-webkit-scrollbar{display:none}.plan{scroll-snap-align:start;flex:0 0 76%}}.split-section{grid-template-columns:minmax(280px,400px) 1fr;align-items:start;gap:clamp(34px,5vw,80px);display:grid}.onsen__grid{grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:clamp(12px,1.4vw,18px);display:grid}.onsen__grid .g-big{aspect-ratio:21/9;grid-column:1/-1}.onsen__grid .g-half{aspect-ratio:4/3}@media (width>=901px){#onsen .split-section{align-items:stretch}#onsen .split-section>.reveal:first-child{flex-direction:column;justify-content:center;display:flex}#onsen .section-cta{margin-top:clamp(32px,4vw,52px)}}@media (width<=900px){.split-section{grid-template-columns:1fr}}@media (width<=600px){#onsen .split-section{flex-direction:column;align-items:stretch;display:flex}#onsen .split-section>.reveal:first-child{display:contents}#onsen .section-title{order:1}#onsen .onsen__grid{margin:22px calc(-1 * var(--gutter)) 0;order:2;grid-auto-rows:auto;gap:10px}#onsen .onsen__grid .g-big{aspect-ratio:16/11}#onsen .onsen__grid .g-half{aspect-ratio:4/3}#onsen .section-lead{order:3;margin-top:26px}#onsen .section-cta{order:4;margin-top:24px}}.facility__grid{grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.4vw,18px);margin-top:clamp(40px,5vw,64px);display:grid}.facility__grid .f-top{aspect-ratio:24/9;grid-column:1/-1}.facility__grid .f-cell{aspect-ratio:4/3}.news__list{border-top:1px solid var(--line);margin-top:clamp(34px,4vw,52px)}.news__item{border-bottom:1px solid var(--line);transition:background .4s var(--ease), padding-inline .4s var(--ease);grid-template-columns:160px 130px 1fr auto;align-items:center;gap:28px;padding:28px 6px;display:grid}.news__item:hover{background:var(--paper);padding-inline:18px}.news__date{font-family:var(--latin);color:var(--ink-3);font-size:17px;font-style:italic}.news__tag{letter-spacing:.14em;color:var(--accent-d);border:1px solid var(--accent);justify-self:start;padding:4px 12px;font-size:11px}.news__tag--info{color:var(--ink-3);border-color:var(--line)}.news__title{font-family:var(--serif);letter-spacing:.04em;color:var(--ink);font-size:16px}.news__item .arw{color:var(--accent);opacity:0;transition:all .4s var(--ease);transform:translate(-6px)}.news__item:hover .arw{opacity:1;transform:translate(0)}.news__more{font-family:var(--serif);letter-spacing:.08em;color:var(--accent-d);border-bottom:1px solid var(--line);transition:color .4s var(--ease), border-color .4s var(--ease);align-items:center;gap:10px;padding-bottom:6px;font-size:15px;display:inline-flex}.news__more .arw{color:var(--accent);transition:transform .4s var(--ease)}.news__more:hover{color:var(--ink);border-color:var(--accent)}.news__more:hover .arw{transform:translate(5px)}@media (width<=760px){.news__item{grid-template-columns:auto 1fr;gap:6px 16px}.news__title{grid-column:1/-1}.news__item .arw{display:none}}.area{grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,96px);display:grid}.area__title{font-size:clamp(26px,3vw,40px)}.area__lead{color:var(--ink-2);text-wrap:pretty;margin-top:26px;font-size:16px;line-height:2.2}.area__lead+.area__lead{margin-top:20px}@media (width<=760px){.area__lead{text-wrap:wrap}}.area__btns{flex-wrap:wrap;gap:18px;margin-top:44px;display:flex}.area__btns .btn{flex:0 0 calc(50% - 9px);justify-content:space-between}.btn--outline{--b:var(--ink);letter-spacing:.12em;justify-content:space-between;min-width:230px;padding:18px 28px}.btn--outline .arw{color:var(--accent);transition:transform .5s var(--ease), color .5s var(--ease)}.btn--outline:hover .arw{color:var(--paper)}.area__map{justify-content:center;align-items:center;min-height:360px;display:flex;position:relative}.area__mapimg{object-fit:contain;width:100%;height:auto;max-height:560px}.area__diamond{aspect-ratio:1;background:linear-gradient(150deg, var(--accent) 0%, var(--accent-d) 100%);width:clamp(104px,12vw,132px);box-shadow:0 18px 40px -22px color-mix(in oklch, var(--accent-d) 80%, transparent);z-index:4;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:18px;left:18px;transform:rotate(45deg)}.area__diamond-inner{color:var(--paper);text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex;transform:rotate(-45deg)}.area__diamond-inner .d-sub{font-family:var(--sans);letter-spacing:.14em;opacity:.92;font-size:10px}.area__diamond-inner .d-main{font-family:var(--serif);letter-spacing:.08em;font-size:clamp(15px,1.5vw,18px);font-weight:600}@media (width<=900px){.area{flex-direction:column;display:flex}.area__text{display:contents}.area__title{order:1}.area__map{margin-inline:auto;order:2;width:100%;max-width:480px;margin-top:clamp(28px,5vw,40px)}.area__lead{order:3}.area__btns{order:4;justify-content:flex-start}.area__btns .btn{flex:none;justify-content:flex-start;gap:14px}}@media (width<=460px){.btn--outline{flex:1;min-width:0}.area__btns .btn--outline{flex:none}}@media (width<=560px){.news__item{grid-template-columns:1fr}}
