:root{--ink:#233b38;--muted:#576660;--paper:#faf8f2;--wash:#efeee5;--line:#d5d9cd;--accent:#a35135;--bar-height:100px;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-padding-block:24px calc(var(--bar-height) + 28px);font-family:system-ui,-apple-system,BlinkMacSystemFont,Noto Sans JP,sans-serif;line-height:1.8}*{box-sizing:border-box}body{padding-bottom:calc(var(--bar-height) + 28px);margin:0}[hidden]{display:none!important}h1,h2,h3,p,ul,fieldset{margin:0 0 1rem}h1,h2{letter-spacing:.04em;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(1.8rem,3.2vw,3rem);font-weight:500;line-height:1.5}h3{font-size:1.2rem;line-height:1.6}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button{cursor:pointer}button[aria-disabled=true]{cursor:default}button,a,input,summary{touch-action:manipulation}a,button,input,summary,[tabindex]{scroll-margin-block:24px calc(var(--bar-height) + 28px)}:focus-visible{outline-offset:5px;outline:3px solid #a35135}section[id]{scroll-margin-top:24px}p,dd,h1,h2,h3,a{overflow-wrap:anywhere}small,.meta{color:var(--muted);font-size:.85rem}.eyebrow{letter-spacing:.17em;align-items:center;gap:1rem;font-size:.75rem;font-weight:650;display:flex}.skip{z-index:100;background:#fff;padding:12px;position:fixed;top:-120px;left:12px}.skip:focus{top:12px}.prototype-note{background:var(--ink);color:#fff;letter-spacing:.1em;flex-wrap:wrap;justify-content:center;gap:16px;padding:7px 5%;font-size:.7rem;display:flex}.hero{grid-template-columns:.9fr 1.1fr;gap:5%;max-width:1280px;margin:auto;padding:64px 5% 48px;display:grid}.hero-copy{align-self:center}.hero-copy>p{margin-block:24px}.primary{background:var(--ink);color:#fff;border:0;align-items:center;gap:24px;min-height:54px;padding:17px 28px;display:flex}.primary span{border-left:1px solid #a7b7b0;padding-left:20px;font-size:.75rem}.hero-controls,.filters{border:0;flex-wrap:wrap;gap:12px;padding:0;display:flex}.hero-controls legend,.filters legend{margin-bottom:8px;font-size:.8rem}.hero-controls label,.filters label{border:1px solid var(--line);cursor:pointer;background:#fff;align-items:center;gap:8px;min-height:44px;padding:8px 14px;display:flex}.hero-controls label:has(:checked),.filters label:has(:checked){border-color:var(--ink);background:#e7eae1}.hero-placeholder{text-align:center;background:#dce2d9;border:1px solid #bac5b8;flex-direction:column;justify-content:center;align-items:center;min-height:355px;padding:26px;display:flex;position:relative}.hero-placeholder:before{content:"";pointer-events:none;border:1px solid #bac5b8;position:absolute;inset:14px}.frame-corner{letter-spacing:.16em;align-self:flex-start;margin-bottom:36px;font-size:.65rem}.placeholder-symbol{margin:12px;font-size:3rem;line-height:1}.hero-placeholder p{margin-bottom:8px;font-family:serif;font-size:1.4rem}.hero-placeholder small{font-size:.78rem}.video-placeholder{background:#d4dfdb}.video-placeholder button{background:var(--paper);border:1px solid var(--muted);z-index:1;margin:16px 0;padding:10px}.study-note{margin-top:10px;font-size:.72rem}.toc{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);max-width:1152px;margin:0 auto 50px;display:grid}.toc a{text-align:center;border-right:1px solid var(--line);padding:20px 12px;text-decoration:none}.toc a:last-child{border:0}.toc span{color:var(--accent);margin-right:14px;font-size:.65rem}.section{padding:75px max(5%,50vw - 576px)}.section-heading{max-width:750px;margin-bottom:36px}.section-heading>p:last-child{color:var(--muted)}.tinted{background:var(--wash)}.two-column{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}.media-placeholder{background:#e5e5d9;border:1px solid #c9cdbc;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:270px;font-family:serif;font-size:1.3rem;display:flex}.map-placeholder{background:#dde1d8}.facts{margin:0}.facts>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:18px;padding:14px 0;display:grid}.facts dt{color:var(--muted);font-size:.9rem}.facts dd{margin:0}.compact{grid-template-columns:repeat(2,1fr);gap:0 36px;display:grid}.cards{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.cards.cards-two{grid-template-columns:repeat(2,minmax(0,1fr))}.cards.cards-one{grid-template-columns:minmax(0,1fr);max-width:720px}@media (width<=760px){.cards.cards-two{grid-template-columns:minmax(0,1fr)}}.info-card,.update-card{background:var(--paper);border:1px solid var(--line);min-width:0;padding:28px}.card-number{color:var(--accent);font-size:.75rem}.info-card h3{margin:12px 0 22px;font-family:serif;font-size:1.6rem}.update-card h3 a{min-height:44px;display:block}.update-card p:last-child{color:var(--muted);margin:0;font-size:.9rem}.state{letter-spacing:normal;white-space:nowrap;background:#e3e6dc;border:1px solid #c3cbbd;padding:3px 9px}.related{gap:12px;margin:24px 0;display:grid}.related a{min-height:44px;padding:10px 0;display:block}.text-link{min-height:44px;margin-block:24px 0;padding:10px 0;display:inline-block}.faq-list{max-width:850px;margin-bottom:32px}.faq-list details{border-bottom:1px solid #c9cfc1}.faq-list summary{cursor:pointer;min-height:60px;padding:14px 12px;font-weight:600}.faq-list .prose{padding:0 16px 20px}.prose p{white-space:pre-wrap;line-height:2}.prose h2{margin-top:40px;font-size:1.8rem}.site-footer{background:#e1e5db;padding:48px max(5%,50vw - 576px)}.footer-brand{font-family:Georgia,serif;font-size:1.6rem}.footer-brand span{margin-left:16px;font-family:system-ui;font-size:.6rem}.footer-links{flex-wrap:wrap;gap:12px 24px;margin:28px 0;font-size:.85rem;display:flex}.footer-links a{align-items:center;min-height:44px;display:inline-flex}.footer-links span{color:var(--muted);align-items:center;display:inline-flex}.bottom-bar{z-index:20;background:var(--paper);padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border-top:1px solid #aebcaf;justify-content:center;align-items:stretch;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #233b380a}.bottom-bar>a,.bottom-bar>button{text-align:center;flex:1;justify-content:center;align-items:center;max-width:240px;min-height:58px;padding:8px;font-size:.9rem;text-decoration:none;display:flex}.bottom-bar>a+a{border-left:1px solid var(--line)}.booking{color:#fff;background:#1f717a;border:0;flex-direction:column;line-height:1.5}.booking small{color:#e5ebe5;font-size:.7rem}.news-page{padding-top:30px}.news-page>.eyebrow{margin-top:40px}.filters{margin:36px 0 20px}.article-page{max-width:850px;margin:auto;padding:30px 5% 70px}.article-page>.eyebrow{margin-top:45px}.article-page h1{font-size:clamp(1.8rem,3.2vw,3rem)}.article-page .lead{margin:32px 0;font-size:1.15rem}.event-notice{border-left:4px solid var(--accent);background:var(--wash);margin:28px 0;padding:20px}.event-notice strong{font-size:1.25rem}.event-notice p:last-child{margin:0}.article-placeholder{background:var(--wash);text-align:center;color:var(--muted);margin-bottom:32px;padding:32px;font-size:.85rem}@media (width<=760px){.hero{grid-template-columns:1fr;gap:35px;padding-top:36px}.hero-copy h1{font-size:2.6rem}.hero-placeholder{min-height:290px}.hero-controls{font-size:.85rem}.toc{grid-template-columns:repeat(2,1fr);margin-bottom:10px}.toc a{padding:15px 8px;font-size:.9rem}.toc a:nth-child(2){border-right:0}.toc a:nth-child(-n+2){border-bottom:1px solid var(--line)}.section{padding:48px 5%}.two-column{grid-template-columns:1fr;gap:24px}.cards,.compact{grid-template-columns:1fr}.info-card,.update-card{padding:22px}.section-heading{margin-bottom:26px}.media-placeholder{min-height:220px}.bottom-bar>a,.bottom-bar>button{min-width:0;font-size:.8rem}.article-page{padding-top:20px}.filters{gap:8px}.filters label{padding:8px 10px;font-size:.9rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.breakfast-photo{margin-bottom:24px}.equipment-heading{margin-top:32px}.meal-callout{background:var(--ink);color:#fff;margin-top:32px;padding:28px}.meal-statement{font-family:serif;font-size:1.4rem}.meal-callout small{color:inherit}.meal-links>a,.meal-links>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:12px 0;display:flex}.meal-links small{display:block}.guide-tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:28px;display:grid}.guide-tabs button{border:1px solid var(--line);background:var(--paper);min-height:52px;color:var(--ink);padding:10px 4px}.guide-tabs button[aria-pressed=true]{background:var(--ink);color:#fff}.guide-group{margin-bottom:28px}.guide-card{border:1px solid var(--line);background:var(--paper);margin:16px 0;padding:24px}.guide-card h3,.guide-card h4{overflow-wrap:anywhere;margin:0;font-size:1.1rem}.guide-card-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.guide-card-top p{margin:0}.guide-card p{overflow-wrap:anywhere}.guide-links{flex-wrap:wrap;gap:16px;display:flex}.guide-links a{min-height:44px;padding:10px 0}.stay-pending{border-top:1px solid var(--line);padding-top:24px}.meal-callout a:focus-visible{outline-color:#fff}.secondary-links{flex-wrap:wrap;gap:12px 24px;margin:28px 0;font-size:.85rem;display:flex}.secondary-links a,.secondary-links span{align-items:center;min-height:44px;display:inline-flex}.secondary-links span{color:var(--muted)}.bottom-bar>#menu-toggle{color:var(--ink);border:0;border-left:1px solid var(--line);background:0 0}.bottom-bar>a,.bottom-bar>button{white-space:normal;overflow-wrap:anywhere;padding-inline:4px;line-height:1.4}.menu-sheet{z-index:21;bottom:var(--bar-height);right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));max-width:560px;max-height:calc(100dvh - var(--bar-height) - 24px);overscroll-behavior:contain;background:var(--paper);border:1px solid var(--line);margin-inline:auto;padding:24px;position:fixed;overflow:auto;box-shadow:0 -4px 16px #233b380a}.menu-sheet h2{font-size:1.5rem}.menu-sheet .secondary-links{flex-direction:column;gap:4px;margin:12px 0;display:flex}.menu-sheet button{border:1px solid var(--line);background:var(--wash);min-height:44px;color:var(--ink);padding:8px 20px}.stay-page{max-width:950px;margin:auto;padding:40px 5% 64px}.stay-heading{margin-bottom:32px}.stay-toc{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:48px;display:grid}.stay-toc a{border-right:1px solid var(--line);flex-direction:column;align-items:center;min-height:44px;padding:14px 4px;text-decoration:none;display:flex}.stay-toc a:last-child{border:0}.stay-toc span{color:var(--accent);font-size:.8rem}.stay-steps{counter-reset:step;margin:0 0 32px;padding:0;list-style:none}.stay-steps>li{counter-increment:step;border-left:1px solid var(--line);margin-left:18px;padding:0 0 44px 52px;position:relative}.stay-steps>li:before{content:counter(step);border:1px solid var(--line);background:var(--paper);width:36px;height:36px;color:var(--accent);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:-19px}.stay-steps>li:last-child{border-color:#0000}.stay-step h2{font-size:clamp(1.5rem,3vw,2.4rem)}.stay-step .guide-card{padding:18px}.stay-step .eyebrow{margin-bottom:8px}@media (width<=760px){.stay-steps>li{padding-left:30px}.stay-toc{font-size:.85rem}.menu-sheet{padding:20px}.bottom-bar>a,.bottom-bar>button{font-size:.75rem}}.language-switch{flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.language-switch a{align-items:center;min-height:44px;display:inline-flex}.language-switch [aria-current]{font-weight:700;text-decoration-thickness:2px}.translation-note{text-align:center;background:var(--wash);margin:0;padding:8px 5%;font-size:.85rem}.bottom-bar{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.bottom-bar>a,.bottom-bar>button{min-width:0;max-width:none}.booking-language{text-align:center;overflow-wrap:anywhere;grid-column:1/-1;margin:4px 0 0;font-size:.7rem}.menu-sheet .language-switch{margin-bottom:16px}.site-header{background:#faf8f2;justify-content:space-between;align-items:center;max-width:1280px;height:56px;margin:auto;padding:0 8px 0 20px;line-height:1.7;display:flex}.site-header .brand{align-items:center;min-height:44px;display:flex}.site-header .brand img{width:auto;height:36px;display:block}.site-header .language-switch{flex-wrap:nowrap;align-items:center;gap:0;font-size:13px;display:flex}.site-header .language-switch a{color:#576660;justify-content:center;align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:flex}.site-header .language-switch a[aria-current=page]{color:#233b38;text-underline-offset:6px;font-weight:700;text-decoration:underline}.site-header .language-switch span{color:#576660}.site-header-overlay{z-index:3;background:0 0;position:relative}.site-header-overlay .brand img{filter:drop-shadow(0 1px 6px #00000059)}.site-header-overlay .language-switch a,.site-header-overlay .language-switch span{color:#dfe6e1}.site-header-overlay .language-switch a[aria-current=page]{color:#faf8f2}.notice-btn{color:#233b38;min-height:44px;font:inherit;cursor:pointer;z-index:3;background:#faf8f2;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 12px;font-size:13px;font-weight:700;text-decoration:none;display:flex;position:absolute;top:64px;left:16px;box-shadow:0 2px 10px #0000002e}.notice-btn .dot{background:#a35135;border-radius:50%;flex-shrink:0;width:8px;height:8px}.notice-btn .chev{font-weight:400}.notice-sheet{color:#233b38;background:#faf8f2;border:0;border-top:3px solid #a35135;width:100%;max-width:390px;max-height:100dvh;margin:0 auto;padding:20px 20px 28px;font-family:Noto Sans JP,system-ui,sans-serif;line-height:1.7;position:fixed;inset:auto 0 0;overflow:auto}.notice-sheet::backdrop{background:#14222066}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head h2{font:inherit;letter-spacing:normal;margin:0;font-weight:700}.sheet-head button{color:#233b38;min-height:44px;font:inherit;background:0 0;border:1px solid #d5d9cd;flex-shrink:0;padding:0 12px;font-size:13px}.notice-sheet a.item{color:#233b38;border-bottom:1px solid #d5d9cd;justify-content:space-between;align-items:center;gap:12px;min-height:52px;text-decoration:none;display:flex}.notice-sheet a.all{color:#576660;align-items:center;min-height:44px;font-size:13px;display:flex}.plain-body p{white-space:pre-wrap;overflow-wrap:anywhere}.article-image{width:100%;height:auto;margin:2rem 0}.status-banner{color:#fff;background:#a35135;border-radius:8px;margin:1.5rem 0;padding:1.2rem 1.5rem}.status-banner strong{font-size:1.25rem}.status-banner p{overflow-wrap:anywhere;margin:.4rem 0 0}.event-ended{color:#78351f;border:1px solid #a35135;padding:1rem;font-weight:700}.phone-button{color:#fff;background:#1f717a;border-radius:6px;justify-content:center;align-items:center;min-height:52px;margin:.75rem 0;padding:.75rem 1rem;font-weight:700;display:inline-flex}.guide-facts dd{overflow-wrap:anywhere}.filters a{padding:.7rem 1rem}.filters a[aria-current=page]{font-weight:700;text-decoration:underline}.season-heading{margin-bottom:20px}.season-heading h3{margin-bottom:8px}.season-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:36px;display:grid}.season-card{border:1px solid var(--line);background:var(--paper);min-width:0;padding:24px}.season-card[data-current=true]{border-color:var(--ink);box-shadow:inset 0 3px var(--ink);background:var(--wash)}.season-card-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.season-card h4{overflow-wrap:anywhere;margin:0;font-family:serif;font-size:1.25rem}.season-card h4 .meta{font-family:system-ui;font-weight:400}.season-current{color:var(--ink);margin:0;font-size:.8rem;font-weight:650}.season-guide-links{margin:0;padding:0;list-style:none}.season-tabs{margin-bottom:36px}.season-tablist{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.season-tablist button{appearance:none;min-height:44px;font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;padding:8px 20px;font-family:serif;font-size:1.15rem}.season-tablist button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--sun)}.season-tablist button:focus-visible,.season-card[role=tabpanel]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.season-tabs.is-tabbed .season-cards{margin:0;display:block}.season-tabs.is-tabbed .season-card{box-shadow:none;background:0 0;border:0;padding:0}.season-tabs.is-tabbed .season-card h4{font-size:1rem}.season-spots{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.season-spots a{color:inherit;gap:8px;text-decoration:none;display:grid}.season-spots img,.season-spot-noimage{aspect-ratio:4/3;object-fit:cover;background:var(--wash);width:100%;height:auto;max-height:none;display:block}.season-spot-name{overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;font-size:.95rem;line-height:1.5}.season-spots a:hover .season-spot-name{text-decoration-color:currentColor}@media (width<=480px){.season-spots{gap:10px}.season-spot-name{font-size:.85rem}}.season-guide-links a{border-top:1px solid var(--line);overflow-wrap:anywhere;min-height:44px;padding:10px 0;display:block}.season-card>p:last-child{margin:0}@media (width<=760px){.season-cards{grid-template-columns:minmax(0,1fr);gap:16px}.season-card{padding:22px}}.hotel-facts>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hotel-facts dt,.hotel-facts dd,.hotel-access>div{overflow-wrap:anywhere;min-width:0}.hotel-access{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}@media (width<=760px){.hotel-access{grid-template-columns:minmax(0,1fr)}}.room-note{color:var(--muted);font-size:.9rem}.room-total{font-weight:650}.room-scroll{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:auto;border-radius:2px;min-width:0;max-width:100%;scroll-padding-inline:0;overflow-x:auto}.room-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.room-cards{grid-template-rows:repeat(6,auto);grid-auto-rows:auto;grid-auto-columns:calc(100% - clamp(50px,15%,60px) - 4px);grid-auto-flow:column;gap:4px;margin:0;padding:8px 0 20px;list-style:none;display:grid}.room-card{grid-template-rows:subgrid;border:1px solid var(--line);background:var(--paper);scroll-snap-align:start;scroll-snap-stop:always;grid-row:span 6;row-gap:0;min-width:0;padding:10px;display:grid}.room-card .card-number{margin-bottom:8px}.room-photo{aspect-ratio:3/2;min-width:0;min-height:0;margin-bottom:10px;display:block}.room-photo-image{aspect-ratio:3/2;object-fit:cover;width:100%;height:100%;display:block}.room-photo.media-placeholder{text-align:center;gap:7px;padding:6px;font-size:1.1rem;display:flex}.room-card h3{margin:0 0 4px;font-family:serif;font-size:1.3rem}.room-use-case{margin:0 0 8px;font-size:.85rem;line-height:1.6}.room-use-case>div{background:var(--wash);flex-wrap:wrap;align-items:baseline;gap:2px 6px;padding:4px 6px;display:flex}.room-use-case dt{color:var(--muted);font-size:.8rem}.room-use-case dd{overflow-wrap:anywhere;margin:0}.room-facts{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0 8px;margin:0;display:grid}.room-facts>div{border-bottom:1px solid var(--line);min-width:0;padding:5px 0}.room-facts>div[data-room-field=beds]{border-bottom:0;grid-column:1/-1}[data-room-field=beds] dd,[data-room-detail-field=beds] dd{white-space:pre-line}.room-facts dt{color:var(--muted);font-size:.8rem}.room-facts dd{overflow-wrap:anywhere;margin:2px 0 0}.room-common{margin-top:32px}.room-scroll-hint{color:var(--muted);font-size:.85rem}@media (width>=761px){.room-scroll{scroll-snap-type:none;overflow-x:auto}.room-cards{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:12px;padding-inline:8px}.room-scroll-hint{display:none}}@media (width>=1200px){.room-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.room-scroll{scroll-behavior:auto;scroll-snap-type:none}}.room-photo-button{width:100%;min-width:0;color:inherit;background:0 0;border:0;margin:0 0 10px;padding:0;display:block}.room-photo-button .room-photo{margin:0}html.room-dialog-open,html.room-dialog-open body{overscroll-behavior:none;overflow:hidden}.room-dialog:not([open]){display:none}.room-dialog{border:1px solid var(--line);background:var(--paper);width:min(960px,100% - 48px);max-width:none;max-height:calc(100dvh - 48px);color:var(--ink);overscroll-behavior:contain;padding:0}.room-dialog::backdrop{background:#142b28b8}.room-dialog-close{float:right;z-index:1;border:1px solid var(--line);background:var(--paper);width:44px;height:44px;color:var(--ink);border-radius:50%;margin:12px 12px -56px 0;position:sticky;top:12px}.room-detail{grid-template-columns:1fr 1fr;align-items:start;display:grid}.room-detail-media{background:var(--wash);min-width:0;position:sticky;top:0}.room-detail-photo,.room-detail-image{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.room-detail-photos{touch-action:pan-y}.room-gallery-controls{justify-content:center;align-items:center;gap:24px;padding:12px;display:flex}.room-gallery-controls button{border:1px solid var(--line);background:var(--paper);width:44px;height:44px;color:var(--ink)}.room-gallery-controls button:disabled{opacity:.4;cursor:default}.room-photo-count{font-variant-numeric:tabular-nums;margin:0;font-size:.85rem}.room-detail-copy{min-width:0;padding:64px 28px 28px}.room-detail-copy h2{margin-bottom:20px;font-size:1.8rem}.room-detail-copy h3{margin-bottom:8px;font-size:1rem}.room-intro{margin:24px 0}.room-intro p{margin-bottom:8px}.room-intro-draft{font-size:.75rem;display:block}.room-detail-copy .room-facts{grid-template-columns:1fr 1fr;margin:24px 0}.room-detail-copy .room-facts>div[data-room-detail-field=beds]{grid-column:1/-1}.room-amenities{margin:24px 0}.room-amenities ul{padding-left:1.25rem}.room-detail-booking{text-align:center;width:100%;min-height:54px;padding:12px;text-decoration:none;display:block}@media (width<=1000px){.room-detail{grid-template-columns:1fr}.room-detail-media{position:static}.room-detail-copy{padding-top:28px}}@media (width<=760px){.room-dialog{border:0;width:100%;height:100dvh;max-height:100dvh;margin:0}.room-detail-copy{padding:24px 20px calc(28px + env(safe-area-inset-bottom))}.room-detail-copy h2{font-size:1.65rem}}.room-page{padding-top:30px;max-width:1152px;margin:auto;padding-inline:max(16px,5%)}.room-breadcrumb{margin-bottom:32px;font-size:.9rem}.room-page .room-detail-copy{padding-top:0}.room-page h1{margin-bottom:20px;font-size:clamp(1.65rem,3vw,2.3rem)}.room-page-link{margin:0 28px 28px}@media (width<=1000px){.room-page .room-detail-copy{padding-top:28px}}.home-faq .section-heading .text-link{margin:0 0 1rem}.home-faq .faq-list{min-width:0;max-width:none}@media (width>=768px){.home-faq{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start;gap:3rem;display:grid}}.hotel-access .hotel-facts>div{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}.hotel-access .hotel-facts{min-width:0;max-width:100%}.hotel-access .hotel-facts dt,.hotel-access .hotel-facts dd{white-space:normal;word-break:normal;overflow-wrap:anywhere}.copyright{margin:20px 0 0;font-size:.85rem}:root{--sun:#e9a23b;--sea:#2a7fa8;--sea-text:#23708f}p.eyebrow{color:var(--sea-text)}.section-heading h2:after{content:"";background:var(--sun);border-radius:2px;width:44px;height:3px;margin-top:14px;display:block}.guide-tabs button{justify-content:center;align-items:center;gap:8px;display:flex}.guide-tabs .tab-icon{fill:none;stroke:var(--sun);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none}.guide-tabs button[aria-pressed=true]{background:var(--sea-text);border-color:var(--sea-text);color:#fff;box-shadow:inset 0 -4px var(--sun)}.guide-tabs button[aria-pressed=true] .tab-icon{stroke:#fff}.stay-steps>li:before{background:var(--sun);border-color:var(--sun);color:var(--ink);font-weight:700}main>.section+.section{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='8' viewBox='0 0 48 8'%3E%3Cpath d='M0 4q6-4 12 0t12 0 12 0 12 0' fill='none' stroke='%232A7FA8' stroke-width='1.2' stroke-opacity='.45'/%3E%3C/svg%3E");background-position:top;background-repeat:repeat-x;background-size:48px 8px}.update-card.has-thumb{grid-template-columns:80px minmax(0,1fr);align-items:start;gap:18px;display:grid}.update-thumb{object-fit:cover;border:1px solid var(--line);background:var(--wash);border-radius:6px;width:80px;height:110px;display:block}.update-body{min-width:0}.room-photo-zoom{cursor:zoom-in;background:0 0;border:0;width:100%;margin:0;padding:0;display:block}.room-photo-zoom:focus-visible{outline:3px solid var(--sea-text);outline-offset:-3px}@media (width>=761px){.room-dialog{width:min(1100px,100% - 48px)}.room-dialog .room-detail{grid-template-columns:3fr 2fr}}.room-detail.is-photo-only{grid-template-columns:1fr}.room-detail.is-photo-only .room-detail-copy{display:none}.room-detail.is-photo-only .room-detail-media{background:#111;position:static}.room-detail.is-photo-only .room-photo-zoom{cursor:zoom-out}.room-detail.is-photo-only .room-detail-photo,.room-detail.is-photo-only .room-detail-image{aspect-ratio:auto;object-fit:contain;background:#111;max-height:calc(100dvh - 140px)}.room-detail.is-photo-only .room-detail-photos{touch-action:auto}.room-detail.is-photo-only .room-gallery-controls{background:var(--wash)}.faq-search{max-width:850px;margin:0 0 24px}.faq-search label{margin-bottom:8px;font-size:.9rem;font-weight:650;display:block}.faq-search input{border:1px solid var(--muted);width:100%;min-height:52px;color:var(--ink);background:#fff;border-radius:0;padding:12px 14px;font-size:1rem}.faq-search input:focus-visible{outline:3px solid var(--sea-text);outline-offset:2px}.faq-search-count{color:var(--muted);min-height:1.5em;margin:8px 0 0;font-size:.85rem}.faq-list mark{color:inherit;background:#f6dfb6;padding:0 1px}.faq-search-empty{border-left:4px solid var(--sun);background:var(--wash);max-width:850px;margin-bottom:32px;padding:20px}.faq-search-empty ul{margin:0;padding-left:1.2em}.faq-search-empty li a{min-height:44px;padding:10px 0;display:inline-block}.faq-search-popular{margin:16px 0 4px;font-weight:650}.line-friend{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--sun);grid-template-columns:1fr auto;align-items:center;gap:32px;margin-top:40px;padding:28px;display:grid}.line-friend h3,.line-friend .meta{margin-bottom:12px}.line-friend-button{color:#fff;background:#06c755;border-radius:4px;justify-content:center;align-items:center;min-height:52px;padding:12px 28px;font-weight:700;text-decoration:none;display:inline-flex}.line-friend-button:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.line-friend-qr{text-align:center;margin:0}.line-friend-qr svg{width:132px;height:132px;margin:0 auto 8px;display:block}.line-friend-qr figcaption{color:var(--muted);font-size:.75rem}@media (width<=760px){.line-friend{grid-template-columns:1fr;padding:22px}.line-friend-qr{display:none}.line-friend-button{width:100%}}.footer-line{margin:16px 0 0;font-size:.85rem}.footer-line a{align-items:center;min-height:44px;font-weight:650;display:inline-flex}.footer-line span{color:var(--muted)}.guide-card-compact{background:var(--paper);border:1px solid var(--line);grid-template-columns:112px minmax(0,1fr);align-items:start;gap:16px;margin:12px 0;padding:16px;display:grid}.guide-card-compact.no-image{grid-template-columns:minmax(0,1fr)}.guide-card-compact .cms-image{aspect-ratio:1;object-fit:cover;background:var(--wash);width:112px;height:112px;margin:0;display:block}.guide-compact-body h4{margin:0 0 6px;font-size:1.05rem;line-height:1.5}.guide-compact-body h4 a{text-decoration:none}.guide-compact-body p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.guide-compact-more{align-items:center;min-height:44px;font-size:.88rem;display:inline-flex}.guide-card-stay .guide-compact-body h3{margin:0 0 6px;font-size:1.1rem;line-height:1.5}.guide-card-stay .guide-compact-body h3 a{text-decoration:none}.guide-stay-facts{color:var(--ink)!important;margin:8px 0 0!important;font-size:.88rem!important}.guide-stay-facts span{display:inline}.guide-stay-facts span+span:before{content:"／";color:var(--muted);margin:0 .35em}.guide-stay-button:first-child{background:var(--ink);color:#fff;border-color:var(--ink)}.guide-stay-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.guide-stay-button{border:1px solid var(--line);background:var(--paper);align-items:center;min-height:44px;padding:0 14px;font-size:.88rem;text-decoration:none;display:inline-flex}@media (width>=761px){#around .guide-group{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 16px;display:grid}#around .guide-group>h3,#around .guide-group>p{grid-column:1/-1}}main p>a:only-child:not(.line-friend-button),main dd>a,.site-footer p>a,.guide-card-top a,.room-breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.room-page-next{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.room-page-book{justify-content:center;max-width:360px;margin-bottom:32px;text-decoration:none}.room-page-next h2{margin-bottom:8px;font-size:1.3rem}.room-page-others{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 24px;margin:0;padding:0;list-style:none;display:grid}.room-page-others a{border-bottom:1px solid var(--line);align-items:center;min-height:48px;display:flex}.breakfast-facts dd{white-space:pre-line}.season-badge{letter-spacing:.06em;white-space:nowrap;color:#233b38;border:1px solid;border-radius:999px;align-items:center;gap:3px;padding:0 9px 0 4px;font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;font-size:.74rem;font-weight:700;line-height:22px;display:inline-flex}.season-badge-art{display:inline-flex}.season-badge svg{flex:none;width:30px;height:21px}.season-badge-spring{background:#fce8ee;border-color:#e9a3b8}.season-badge-summer{background:#e0f2f8;border-color:#62b6d6}.season-badge-autumn{background:#fbe7d6;border-color:#e08a4a}.season-badge-winter{background:#e8eef5;border-color:#8fa9c6}.update-card .eyebrow .season-badge{letter-spacing:.06em;margin-left:10px}.season-spots a{position:relative}.season-spots .season-badge{position:absolute;top:8px;left:8px;box-shadow:0 1px 3px #0000001f}.state-alert{color:#8e2418;background:#fbe3df;border-color:#c0392b}.event-organizer-note{margin-top:-4px}.bottom-bar>#food-toggle{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0}.bottom-bar>#food-toggle+a{border-left:1px solid var(--line)}.food-choices{gap:8px;margin:12px 0 16px;padding:0;list-style:none;display:grid}.food-choices a{border:1px solid var(--line);background:var(--wash);justify-content:space-between;align-items:center;min-height:52px;padding:10px 16px;font-weight:600;text-decoration:none;display:flex}.booking-sheet{overscroll-behavior:contain;width:100%;max-width:390px;max-height:100dvh;padding:20px 20px calc(28px + env(safe-area-inset-bottom));color:#233b38;background:#faf8f2;border:0;border-top:3px solid #1f717a;margin:0 auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,Noto Sans JP,sans-serif;line-height:1.7;position:fixed;inset:auto 0 0;overflow:auto}.booking-sheet::backdrop{background:#14222066}.booking-sheet .sheet-head{gap:12px;margin-bottom:20px}.booking-sheet label{min-width:0;font-size:14px;font-weight:600;display:block}.booking-sheet input,.booking-sheet select{color:#233b38;width:100%;min-width:0;max-width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #d5d9cd;border-radius:0;margin-top:6px;padding:10px 12px;font-size:16px;display:block}.booking-selects{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 20px;display:grid}.booking-submit{color:#fff;width:100%;min-height:52px;font:inherit;background:#1f717a;border:0;padding:12px;font-size:16px;font-weight:700}.booking-help{color:#576660;margin:14px 0 8px;font-size:13px}.booking-plans{color:#233b38;min-height:44px;font:inherit;text-align:left;text-underline-offset:5px;background:0 0;border:0;align-items:center;padding:8px 0;font-size:13px;text-decoration:underline;display:flex}.booking-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#efeee5;border-left:3px solid #1f717a;margin:12px 0 0;padding:12px;font-size:13px}.booking-fallback-note{margin:0;font-size:12px}.bottom-bar>.booking-fallback-note{text-align:center;grid-column:1/-1;margin:4px 0 0;font-size:.7rem}.hero-book{text-align:center;justify-content:center;align-items:center;text-decoration:none;display:flex}.visually-hidden{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.booking-sheet select{scroll-margin-block:24px}
