/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}html,body,main{width:100%;min-width:0;overflow-x:hidden}:root{--ink:#18231d;--cream:#f3f0e8;--gold:#b69357;--line:#d9d4c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Noto Sans JP,sans-serif}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;height:100%;display:block}.nav{z-index:10;color:#fff;border-bottom:1px solid #fff5;justify-content:space-between;align-items:center;height:74px;padding:0 5vw;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.13em;font-size:17px;font-weight:700}.brand span{font-weight:400}.nav nav{align-items:center;gap:28px;font-size:13px;display:flex}.navCta{border:1px solid #fff;padding:11px 20px}.hero{color:#fff;height:min(920px,100vh);min-height:720px;position:relative}.hero>img{position:absolute}.shade{background:linear-gradient(90deg,#0d1911b8,#0d19111f 68%),linear-gradient(#0000 55%,#080f0a73);position:absolute;inset:0}.heroCopy{position:absolute;top:50%;left:7vw;transform:translateY(-48%)}.eyebrow{letter-spacing:.24em;margin:0 0 22px;font-size:11px;font-weight:700}.eyebrow.dark{color:#718075}.hero h1{letter-spacing:.03em;margin:0 0 24px;font-family:Georgia,Yu Mincho,serif;font-size:clamp(48px,6vw,86px);font-weight:400;line-height:1.25}.lead{margin-bottom:34px;font-family:Georgia,Yu Mincho,serif;font-size:16px;line-height:2}.button{letter-spacing:.05em;justify-content:space-between;align-items:center;min-width:235px;padding:17px 24px;font-size:13px;transition:all .25s;display:inline-flex}.button.light{border:1px solid #fff}.button:hover{opacity:.88;transform:translateY(-2px)}.heroFacts{color:var(--ink);background:#f3f0e8;display:flex;position:absolute;bottom:0;right:5vw}.heroFacts div{border-right:1px solid var(--line);min-width:165px;padding:22px 30px}.heroFacts b{font-family:Georgia,serif;font-size:19px;font-weight:400;display:block}.heroFacts small{letter-spacing:.15em;color:#788279;font-size:9px}.intro{padding:120px 8vw 90px}.introGrid{grid-template-columns:1fr 1fr;gap:8vw;display:grid}.intro h2,.price h2,.equipment h2{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:clamp(36px,4vw,56px);font-weight:400;line-height:1.45}.introGrid>p{max-width:540px;margin:8px 0;font-size:15px;line-height:2.2}.gallery{grid-template-rows:400px 400px;grid-template-columns:1.5fr 1fr;gap:12px;padding:0 3vw;display:grid}.gallery .wide{grid-row:1/3}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery img{transition:all .6s}.gallery figure:hover img{transform:scale(1.025)}figcaption{color:#fff;letter-spacing:.13em;background:linear-gradient(#0000,#0008);padding:20px;font-size:11px;position:absolute;bottom:0;left:0;right:0}figcaption span{color:#ddd;margin-right:14px}.features{grid-template-columns:repeat(4,1fr);padding:110px 6vw;display:grid}.features article{border-left:1px solid var(--line);padding:0 28px}.features article>span{color:var(--gold);font-family:Georgia,serif;font-size:13px}.features h3{margin:32px 0 16px;font-family:Georgia,Yu Mincho,serif;font-size:20px;font-weight:400}.features p{color:#647067;font-size:13px;line-height:1.9}.price{background:#e8e3d8;grid-template-columns:1.2fr 1fr;display:grid}.priceImage{min-height:760px}.priceCard{padding:85px clamp(38px,6vw,95px)}.priceCard h2{font-size:42px}.amount{align-items:baseline;gap:14px;margin-top:45px;display:flex}.amount span{font-size:13px}.amount strong{font-family:Georgia,serif;font-size:52px;font-weight:400}.amount small{font-size:11px}.included{color:#657067;border-bottom:1px solid #bbb5a8;margin:0;padding-bottom:30px;font-size:13px}.add{border-bottom:1px solid #bbb5a8;justify-content:space-between;padding:25px 0;font-size:14px;display:flex}.add b{font-weight:500}.price dl{margin:18px 0 30px}.price dl div{padding:9px 0;font-size:13px;display:flex}.price dt{color:#768078;width:110px}.price dd{margin:0}.darkButton{background:var(--ink);color:#fff;width:100%}.note{color:#727970;font-size:10px;line-height:1.7}.reservation{background:#f7f5ef;padding:110px 8vw}.reservationHead{grid-template-columns:1fr 1.35fr;align-items:start;column-gap:8vw;display:grid}.reservationHead .eyebrow{grid-column:1/-1}.reservation h2{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:clamp(36px,4vw,54px);font-weight:400;line-height:1.4}.reservationHead>p:last-child{color:#5f6b63;margin:8px 0;font-size:14px;line-height:2}.steps{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:70px 0 45px;padding:0;list-style:none;display:grid}.steps li{border-bottom:1px solid var(--line);grid-template-columns:58px 1fr;gap:8px;padding:30px 28px 30px 0;display:grid}.steps li:nth-child(odd){border-right:1px solid var(--line)}.steps li:nth-child(2n){padding-left:32px}.steps li>span{color:var(--gold);font-family:Georgia,serif;font-size:15px}.steps h3{margin:0 0 12px;font-family:Georgia,Yu Mincho,serif;font-size:21px;font-weight:400}.steps p{color:#657068;margin:0;font-size:13px;line-height:1.9}.changePolicy{grid-template-columns:1fr 1fr;gap:14px;display:grid}.changePolicy>div{border-left:3px solid var(--gold);background:#e9e4d9;padding:26px 30px}.changePolicy b{font-family:Georgia,Yu Mincho,serif;font-size:16px}.changePolicy p{color:#5f695f;margin:10px 0 0;font-size:12px;line-height:1.8}.reservationAction{justify-content:space-between;align-items:center;gap:30px;margin-top:35px;display:flex}.reservationAction p{color:#647067;max-width:520px;font-size:12px;line-height:1.8}.reserveButton{width:auto;min-width:320px}.equipment{background:#faf9f5;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:110px 8vw;display:grid}.equipment h2{font-size:40px}.equipment ul{grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.equipment li{border-bottom:1px solid var(--line);padding:17px;font-size:14px}.equipment li span{color:var(--gold);margin-right:13px}.closing{color:#fff;height:600px;position:relative}.closing:after{content:"";background:#10201999;position:absolute;inset:0}.closing>div{z-index:2;position:absolute;top:50%;left:8vw;transform:translateY(-50%)}.closing h2{margin:0 0 18px;font-family:Georgia,Yu Mincho,serif;font-size:60px;font-weight:400;line-height:1.35}.closing p:not(.eyebrow){margin-bottom:28px}footer{color:#fff;background:#111a15;grid-template-columns:1fr 1fr auto;align-items:end;padding:60px 6vw;display:grid}footer p,footer small{color:#9da59f;font-size:11px}footer small{text-align:right}@media (width<=800px){.nav{height:64px;padding:0 4vw}.nav nav{gap:7px}.nav nav>a:not(.navCta):not(.availabilityNav){display:none}.availabilityNav{padding:9px 8px;font-size:11px}.navCta{padding:9px 10px}.hero{min-height:720px}.heroCopy{top:44%;left:7vw;right:7vw}.hero h1{font-size:44px}.lead br{display:none}.heroFacts{grid-template-columns:repeat(3,1fr);display:grid;left:0;right:0}.heroFacts div{text-align:center;min-width:0;padding:17px 10px}.heroFacts b{font-size:14px}.intro{padding:90px 7vw 60px}.introGrid{grid-template-columns:1fr;gap:28px}.gallery{padding:0;display:block}.gallery figure{height:330px;margin-bottom:8px}.gallery .wide{height:480px}.features{grid-template-columns:1fr 1fr;gap:45px 0;padding:70px 5vw}.features article{padding:0 18px}.price{grid-template-columns:1fr}.priceImage{min-height:430px}.priceCard{padding:65px 7vw}.amount strong{font-size:44px}.reservation{padding:80px 7vw}.reservationHead{grid-template-columns:1fr;gap:24px}.steps{grid-template-columns:1fr;margin-top:50px}.steps li,.steps li:nth-child(2n){padding:26px 0}.steps li:nth-child(odd){border-right:0}.changePolicy{grid-template-columns:1fr}.reservationAction{display:block}.reserveButton{width:100%;min-width:0;margin-top:12px}.equipment{grid-template-columns:1fr;padding:80px 7vw}.equipment ul{grid-template-columns:1fr}.closing{height:540px}.closing h2{font-size:44px}footer{grid-template-columns:1fr;gap:14px}footer small{text-align:left}}.heroButtons{align-items:center;gap:24px;display:flex}.textLink{letter-spacing:.08em;border-bottom:1px solid #fff8;padding:10px 0;font-size:12px}.sectionHead{grid-template-columns:1fr 1fr;align-items:end;gap:8vw;display:grid}.sectionHead h2,.facilityGallery h3,.options h2{font-family:Georgia,Yu Mincho,serif;font-weight:400}.sectionHead h2{margin:0;font-size:clamp(38px,4vw,58px)}.sectionHead>p{color:#637067;margin:0;font-size:14px;line-height:2}.facilityGallery{background:#faf9f5;padding:120px 5vw;scroll-margin-top:24px}.photoGrid{grid-template-rows:280px 280px;grid-template-columns:1.4fr 1fr 1fr;gap:12px;margin-top:60px;display:grid}.photoGrid figure{margin:0;position:relative;overflow:hidden}.photoGrid .photoLarge{grid-row:1/3}.photoGrid img{transition:all .5s}.photoGrid figure:hover img{transform:scale(1.025)}.photoPlaceholder{color:#667169;text-align:center;background:#eee9df;border:1px solid #cfc9bc;flex-direction:column;justify-content:center;align-items:center;display:flex}.photoPlaceholder span{color:var(--gold);font-family:Georgia,serif;font-size:36px;font-weight:300}.photoPlaceholder b{margin:8px;font-family:Georgia,Yu Mincho,serif;font-size:17px;font-weight:400}.photoPlaceholder small{letter-spacing:.13em;font-size:8px}.floorPlanBlock{grid-template-columns:.75fr 1.25fr;align-items:center;gap:7vw;margin-top:100px;display:grid}.floorPlanCopy h3{margin:0 0 24px;font-size:36px}.floorPlanCopy>p:not(.eyebrow){color:#637067;font-size:14px;line-height:2}.floorPlanCopy small{color:#7b817c;margin-top:20px;font-size:10px;line-height:1.7;display:block}.floorPlan{border:2px solid var(--ink);background:#fff;grid-template-rows:1fr .7fr;grid-template-columns:1.25fr .8fr .65fr;min-height:390px;display:grid;box-shadow:16px 16px #e6e0d5}.floorPlan>div{text-align:center;border:1px solid #aeb5af;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex}.floorPlan b{letter-spacing:.1em;font-family:Georgia,serif;font-size:15px}.floorPlan span{color:#657068;margin-top:8px;font-size:11px}.planGarden{background:#dfe6d8;grid-row:1/3}.planLiving{background:#f5f1e8;grid-row:1/3}.planKitchen{background:#e8e2d6}.planBath{background:#e2e8e8}.planToilet{background:#ede9e2}.optionSummary{border-bottom:1px solid #bbb5a8;justify-content:space-between;padding:20px 0;font-size:13px;display:flex}.optionSummary b{font-weight:500}.options{background:#e9e4d9;padding:110px 8vw}.optionGrid{border-top:1px solid #c6c0b4;grid-template-columns:1fr 1fr;margin-top:55px;display:grid}.optionGrid article{border-bottom:1px solid #c6c0b4;justify-content:space-between;align-items:center;padding:28px;display:flex}.optionGrid article:nth-child(odd){border-right:1px solid #c6c0b4}.optionGrid h3{margin:0 0 7px;font-family:Georgia,Yu Mincho,serif;font-size:18px;font-weight:400}.optionGrid p{color:#6a736c;margin:0;font-size:11px}.optionGrid strong{white-space:nowrap;margin-left:20px;font-family:Georgia,serif;font-size:22px;font-weight:400}.optionNote{color:#727970;margin-top:18px;font-size:10px;line-height:1.8}@media (width<=800px){.heroButtons{display:block}.heroButtons .textLink{margin-top:14px;display:inline-block}.facilityGallery{padding:80px 0}.facilityGallery .sectionHead,.options .sectionHead{padding:0 7vw;display:block}.sectionHead>p{margin-top:24px}.photoGrid{grid-template-rows:360px repeat(2,220px);grid-template-columns:1fr 1fr;gap:7px;margin-top:42px;display:grid}.photoGrid .photoLarge{grid-area:auto/1/auto/3}.floorPlanBlock{grid-template-columns:1fr;margin-top:70px;padding:0 7vw}.floorPlan{grid-template-rows:170px 120px 100px;grid-template-columns:1fr 1fr;min-height:0;box-shadow:8px 8px #e6e0d5}.planGarden,.planLiving{grid-area:auto/1/auto/3}.planKitchen,.planBath,.planToilet{grid-row:auto}.options{padding:80px 0}.optionGrid{grid-template-columns:1fr;margin:42px 7vw 0}.optionGrid article,.optionGrid article:nth-child(odd){border-right:0;padding:22px 4px}.optionNote{margin:18px 7vw 0}}.photoPlaceholder{color:#fff;display:block;position:relative}.photoPlaceholder:after{content:"";background:#17231c88;position:absolute;inset:0}.photoPlaceholder>div{z-index:2;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.photoPlaceholder span{color:#e1c48f}.floorPlanImage{background:#fff;border:1px solid #cfc9bc;padding:16px;display:block;position:relative;box-shadow:16px 16px #e6e0d5}.floorPlanImage img{object-fit:contain;height:auto}.floorPlanImage span{color:#fff;letter-spacing:.08em;background:#18231de6;padding:10px 14px;font-size:11px;position:absolute;bottom:24px;right:24px}.floorPlanImage:hover{opacity:.94}.optionGrid article{align-items:flex-start;gap:24px}.optionGrid article>div{min-width:0}.optionGrid h3{line-height:1.45}.optionGrid p{line-height:1.75}.optionGrid ul{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.optionGrid li{color:#58635b;background:#f5f2ea;padding:6px 9px;font-size:10px}.optionGrid strong{text-align:right;line-height:1.35}.heroButtons{flex-wrap:wrap;gap:12px 16px}.heroReserve{color:#172119;background:#d2a54f;border:1px solid #e7c77f;font-weight:700;box-shadow:0 8px 24px #00000024}.heroReserve:hover{opacity:1;background:#e0b762}.heroButtons .textLink{margin-left:8px}.heroReserve{min-width:350px}.buttonCopy{flex-direction:column;align-items:flex-start;line-height:1.35;display:flex}.buttonCopy b{font-size:13px}.buttonCopy small{letter-spacing:0;opacity:.72;margin-top:4px;font-size:9px;font-weight:400}.inquiryButton{padding-top:13px;padding-bottom:13px}.officialBadges{align-items:center;gap:8px;margin-bottom:18px;display:flex}.officialBadges span,.officialBadges b{letter-spacing:.06em;padding:7px 11px;font-size:10px}.officialBadges span{border:1px solid #fffa}.officialBadges b{color:#fff;background:#b69357;font-weight:600}.bestRate{color:#fff;background:#18231d;flex-direction:column;gap:5px;margin:18px 0 4px;padding:16px 18px;display:flex}.bestRate b{font-family:Georgia,Yu Mincho,serif;font-size:15px;font-weight:400}.bestRate span{color:#d5ddd7;font-size:10px}@media (width<=800px){.floorPlanImage{padding:7px;box-shadow:8px 8px #e6e0d5}.floorPlanImage span{padding:8px 10px;bottom:14px;right:14px}.heroButtons .button{width:100%;min-width:0}.heroButtons .textLink{margin-left:0}.buttonCopy b{font-size:12px}.buttonCopy small{font-size:8px}.officialBadges{flex-direction:column;align-items:flex-start;gap:5px;margin-bottom:14px}.officialBadges span,.officialBadges b{padding:6px 9px;font-size:9px}.hero{--hero-image-height:clamp(360px,50vh,520px);height:auto;min-height:0;padding-top:var(--hero-image-height);background:#15231b}.hero>img{height:var(--hero-image-height);object-position:center 55%;top:0}.hero .shade{height:var(--hero-image-height);background:linear-gradient(#080f0a47,#0000 38%,#080f0a14);bottom:auto}.heroCopy{background:#15231b;padding:38px 7vw 42px;position:relative;top:auto;left:auto;right:auto;transform:none}.hero h1{font-size:40px;line-height:1.35}.hero .lead{margin-bottom:28px;font-size:14px}.heroFacts{position:relative;bottom:auto;left:auto;right:auto}.heroFacts div{background:var(--cream)}.officialBadges{margin-top:0}.nav{background:linear-gradient(#0b130dcc,#0000)}}.heroMedia{touch-action:pan-y;background:#17231d;position:absolute;inset:0;overflow:hidden}.heroSlide{opacity:0;pointer-events:none;transition:opacity 1s;position:absolute;inset:0;transform:scale(1)}.heroSlide.active{opacity:1;animation:6s ease-out both heroDrift}.hero .shade{z-index:1}.heroCopy,.heroFacts{z-index:2}.heroCarouselControls{z-index:3;color:#fff;align-items:center;gap:13px;display:flex;position:absolute;top:50%;right:5vw}.heroCarouselControls>button{color:#fff;cursor:pointer;background:#14201988;border:1px solid #fff9;border-radius:50%;width:42px;height:42px;font:28px/1 Georgia,serif}.heroDots{align-items:center;gap:7px;display:flex}.heroDots button{cursor:pointer;background:#ffffff70;border:0;border-radius:50%;width:7px;height:7px;padding:0}.heroDots button.active{background:#fff;border-radius:5px;width:22px}@keyframes heroDrift{0%{transform:scale(1)}to{transform:scale(1.045)}}@media (width<=800px){.heroMedia{height:var(--hero-image-height);inset:0 0 auto}.heroSlide{object-position:center 55%}.heroCarouselControls{gap:9px;top:auto;bottom:18px;right:18px}.heroCarouselControls>button{background:#142019aa;width:38px;height:38px}.heroDots{gap:5px}.heroDots button{width:6px;height:6px}.heroDots button.active{width:18px}}@media (prefers-reduced-motion:reduce){.heroSlide,.heroSlide.active{transition:none;animation:none}}.facilityCarousel{touch-action:pan-y;margin-top:60px}.facilitySlideStage{background:#17231d;height:min(62vw,720px);min-height:520px;position:relative;overflow:hidden}.facilitySlide{opacity:0;pointer-events:none;margin:0;transition:opacity .65s,transform .65s;position:absolute;inset:0;transform:translate(3%)}.facilitySlide.active{opacity:1;pointer-events:auto;transform:translate(0)}.facilitySlide img{object-fit:cover;width:100%;height:100%}.facilitySlide figcaption{padding:48px 34px 28px;font-size:12px}.facilityArrow{z-index:3;color:#fff;cursor:pointer;background:#142019aa;border:1px solid #fffa;border-radius:50%;width:52px;height:52px;font:34px/1 Georgia,serif;position:absolute;top:50%;transform:translateY(-50%)}.facilityArrow.prev{left:24px}.facilityArrow.next{right:24px}.facilityDots{justify-content:center;gap:8px;margin-top:22px;display:flex}.facilityDots button{cursor:pointer;background:#a9afa9;border:0;border-radius:50%;width:8px;height:8px;padding:0}.facilityDots button.active{background:var(--ink);border-radius:5px;width:30px}.swipeHint{text-align:center;color:#737d75;letter-spacing:.06em;margin:12px 0 0;font-size:10px}@media (width<=800px){.facilityCarousel{margin-top:42px}.facilitySlideStage{height:68vw;min-height:280px}.facilitySlide figcaption{padding:38px 20px 18px}.facilityArrow{width:42px;height:42px;font-size:28px}.facilityArrow.prev{left:12px}.facilityArrow.next{right:12px}.facilityDots{margin-top:16px}}@media (prefers-reduced-motion:reduce){.facilitySlide{transition:none}}.hero>img{transform-origin:50% 55%;will-change:transform;animation:14s ease-in-out infinite alternate heroPhotoMotion}@keyframes heroPhotoMotion{0%{transform:scale(1.01)translate(0)}to{transform:scale(1.055)translate(-.6%,-.4%)}}@media (width<=800px){.hero>img{transform-origin:50% 55%;animation-duration:12s}@keyframes heroPhotoMotion{0%{transform:scale(1.01)translate(0)}to{transform:scale(1.05)translate(-.8%,-.3%)}}}@media (prefers-reduced-motion:reduce){.hero>img{animation:none}}.availability{background:#f7f5ef;padding:110px 8vw;scroll-margin-top:24px}.availabilityIntro{grid-template-columns:1fr 1fr;align-items:end;gap:8vw;display:grid}.availability h2{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:clamp(38px,4vw,58px);font-weight:400}.availabilityGuide{color:#5f6b63}.availabilityGuide p{margin:0 0 10px;font-size:15px}.availabilityGuide small{font-size:11px;line-height:1.8}.guideOpen{color:#2f7652;font-size:22px}.guideClosed{color:#a14d45;margin-left:16px;font-size:22px}.calendarCard{background:#fff;border:1px solid #d7d1c5;max-width:900px;margin:55px auto 0;padding:30px;box-shadow:16px 16px #e6e0d5}.calendarToolbar{grid-template-columns:48px 1fr 48px;align-items:center;margin-bottom:24px;display:grid}.calendarToolbar h3{text-align:center;margin:0;font-family:Georgia,Yu Mincho,serif;font-size:26px;font-weight:400}.calendarToolbar button{width:42px;height:42px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #cbc5b9;border-radius:50%;font:30px/1 Georgia,serif}.calendarToolbar button:last-child{justify-self:end}.calendarWeekdays,.calendarGrid{grid-template-columns:repeat(7,1fr);display:grid}.calendarWeekdays span{text-align:center;color:#6c756e;padding:10px 0;font-size:11px}.calendarWeekdays span:first-child{color:#a14d45}.calendarWeekdays span:last-child{color:#47709a}.calendarDay,.calendarBlank{border-top:1px solid #e2ddd3;border-right:1px solid #e2ddd3;flex-direction:column;justify-content:space-between;align-items:center;min-height:88px;padding:9px;display:flex}.calendarGrid>:nth-child(7n+1){border-left:1px solid #e2ddd3}.calendarGrid>:nth-last-child(-n+7){border-bottom:1px solid #e2ddd3}.calendarDay>span{color:#5d675f;align-self:flex-start;font-size:12px}.calendarDay b{font-family:Arial,sans-serif;font-size:30px;line-height:1}.calendarDay.open{background:#f6fbf7}.calendarDay.open b{color:#2f7652}.calendarDay.closed{background:#f8f5f3}.calendarDay.closed b{color:#a14d45}.calendarDay.closed>span{color:#939a95}.calendarBlank{background:#faf9f6}.calendarFoot{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.syncBadge{color:#68736b;font-size:10px}.syncBadge.synced{color:#2f7652}.syncBadge.loading{color:#a17b3d}.calendarFoot button{color:#526057;cursor:pointer;background:0 0;border:0;font-size:11px;text-decoration:underline}.availabilityCta{justify-content:space-between;align-items:center;gap:30px;max-width:900px;margin:35px auto 0;display:flex}.availabilityCta p{color:#68736b;max-width:560px;font-size:11px;line-height:1.8}.availabilityCta .button{white-space:nowrap;width:auto}.calendarDay.open{appearance:none;font:inherit;cursor:pointer;border-bottom:0;border-left:0;border-radius:0;transition:all .2s}.calendarDay.open:hover,.calendarDay.open:focus-visible{background:#e4f2e8;outline:0;box-shadow:inset 0 0 0 2px #2f7652}.calendarDay.open small{color:#2f7652;letter-spacing:.04em;font-size:8px}.requestModalBackdrop{z-index:100;background:#0a120db8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.requestModal{background:#f7f5ef;width:min(680px,100%);max-height:calc(100vh - 40px);padding:42px 46px;position:relative;overflow-y:auto;box-shadow:0 30px 80px #0006}.requestModalClose{width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #cbc5b9;border-radius:50%;font-size:22px;position:absolute;top:18px;right:18px}.requestModal h3{margin:0 0 25px;font-family:Georgia,Yu Mincho,serif;font-size:34px;font-weight:400}.selectedDate{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;margin-bottom:26px;padding:17px 20px;display:flex}.selectedDate span{color:#c7d0ca;font-size:11px}.selectedDate b{font-family:Georgia,Yu Mincho,serif;font-size:20px;font-weight:400}.requestModal form{gap:18px;display:grid}.requestModal label{gap:8px;display:grid}.requestModal label>span{font-size:12px;font-weight:700}.requestModal em{color:#fff;background:#a14d45;margin-left:5px;padding:3px 5px;font-size:9px;font-style:normal}.requestModal input,.requestModal textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cfc9bc;border-radius:0;padding:13px 14px;font:14px/1.6 Arial,Noto Sans JP,sans-serif}.requestModal input:focus,.requestModal textarea:focus{outline-offset:1px;outline:2px solid #789181}.requestFormRow{grid-template-columns:1fr 1fr;gap:14px;display:grid}.guestInput{position:relative}.guestInput b{font-size:12px;font-weight:400;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.guestInput input{padding-right:42px}.requestNotice{color:#68736b;margin:0;font-size:10px;line-height:1.8}.requestSubmit{background:var(--ink);color:#fff;cursor:pointer;border:0;justify-content:space-between;padding:17px 20px;font-size:13px;font-weight:700;display:flex}.requestSubmit:hover{background:#2b3b32}.cancellation{background:#e9e4d9;padding:110px 8vw;scroll-margin-top:24px}.cancellationIntro{grid-template-columns:1fr 1fr;align-items:end;gap:8vw;display:grid}.cancellation h2{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:clamp(38px,4vw,58px);font-weight:400}.cancellationIntro>p{color:#59645c;margin:0;font-size:14px;line-height:2}.cancellationCard{background:#f8f6f1;border-top:1px solid #aaa396;max-width:900px;margin:55px auto 0}.policyRow{border:1px solid #c6c0b4;border-top:0;grid-template-columns:1fr 1fr;align-items:center;padding:22px 28px;display:grid}.policyRow span{font-size:13px}.policyRow b{text-align:right;font-family:Georgia,Yu Mincho,serif;font-size:18px;font-weight:400}.policyHead{background:var(--ink);color:#fff}.policyHead span,.policyHead b{letter-spacing:.08em;font-size:11px}.policyFull{background:#f3e5e1}.policyFull b{color:#984c43}.policyNotes{border-left:3px solid var(--gold);background:#f5f1e8;max-width:900px;margin:25px auto 0;padding:24px 28px}.policyNotes p{color:#606961;margin:0;font-size:11px;line-height:1.9}.policyNotes p+p{margin-top:10px}.policyNotes b{color:var(--ink)}@media (width<=800px){html,body,main{width:100%;max-width:100%;overflow-x:hidden}.availability{width:100%;padding:80px 5vw}.availabilityIntro{grid-template-columns:1fr;gap:24px;padding:0 2vw}.calendarCard{width:100%;max-width:100%;margin-top:38px;padding:16px 8px;box-shadow:0 8px #e6e0d5}.calendarToolbar{grid-template-columns:42px 1fr 42px;margin-bottom:14px}.calendarToolbar h3{font-size:22px}.calendarToolbar button{width:36px;height:36px;font-size:25px}.calendarDay,.calendarBlank{min-height:72px;padding:6px 4px}.calendarDay b{font-size:25px}.calendarDay>span{font-size:10px}.calendarDay.open small{font-size:7px}.calendarWeekdays span{padding:8px 0;font-size:10px}.calendarFoot{padding:0 4px}.availabilityCta{padding:0 2vw;display:block}.availabilityCta .button{width:100%;margin-top:10px}.availabilityGuide small{font-size:10px}.requestModalBackdrop{align-items:flex-end;padding:0}.requestModal{border-radius:18px 18px 0 0;width:100%;max-height:92vh;padding:35px 20px 28px}.requestModal h3{font-size:28px}.requestModalClose{top:14px;right:14px}.selectedDate{margin-bottom:22px;padding:14px}.selectedDate b{font-size:17px}.requestFormRow{grid-template-columns:1fr;gap:18px}.cancellation{padding:80px 5vw}.cancellationIntro{grid-template-columns:1fr;gap:24px}.cancellationCard{margin-top:38px}.policyRow{grid-template-columns:1.35fr .9fr;gap:10px;padding:18px 15px}.policyRow span{font-size:11px;line-height:1.6}.policyRow b{font-size:14px}.policyNotes{padding:20px 17px}.policyNotes p{font-size:10px}}.requestImportant{background:#fff8e9;border:1px solid #c49b55;border-left:4px solid #b69357;margin:-8px 0 22px;padding:16px 18px}.requestImportant b{color:#7d4f17;margin-bottom:8px;font-size:14px;display:block}.requestImportant p{color:#605746;margin:0;font-size:11px;line-height:1.8}.requestHoneypot{opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.requestSubmit:disabled{opacity:.65;cursor:wait}.requestError{color:#8f3d35;background:#f9e8e5;margin:0;padding:12px 14px;font-size:11px;line-height:1.6}.requestSuccess{text-align:center;padding:15px 5px 5px}.requestSuccess>span{color:#fff;background:#2f7652;border-radius:50%;place-items:center;width:58px;height:58px;font-size:28px;display:inline-grid}.requestSuccess h4{margin:20px 0 12px;font-family:Georgia,Yu Mincho,serif;font-size:25px;font-weight:400}.requestSuccess p{color:#5d685f;max-width:480px;margin:12px auto;font-size:12px;line-height:1.9}.requestSuccess p b{color:#8a4b26}.requestSuccess button{background:var(--ink);color:#fff;cursor:pointer;border:0;width:100%;margin-top:18px;padding:15px}.adminPage{background:#f3f0e8;min-height:100vh;padding:45px 6vw 80px}.adminHeader{border-bottom:1px solid #cfc9bc;justify-content:space-between;align-items:flex-end;padding-bottom:25px;display:flex}.adminHeader p{letter-spacing:.2em;color:#738078;margin:0 0 8px;font-size:10px}.adminHeader h1{margin:0;font-family:Georgia,Yu Mincho,serif;font-size:38px;font-weight:400}.adminHeader>div:last-child{align-items:center;gap:16px;font-size:11px;display:flex}.adminHeader a{text-decoration:underline}.adminSummary{align-items:baseline;gap:8px;padding:28px 0;display:flex}.adminSummary b{font:36px Georgia,serif}.adminSummary span{color:#68736b;font-size:12px}.adminSummary a{margin-left:auto;font-size:11px;text-decoration:underline}.requestList{gap:18px;display:grid}.requestList article{background:#fff;border:1px solid #d8d2c7;padding:28px}.requestListHead{border-bottom:1px solid #ded9cf;justify-content:space-between;align-items:flex-start;padding-bottom:18px;display:flex}.requestListHead div{align-items:baseline;gap:16px;display:flex}.requestListHead span{color:#68736b;font-size:10px}.requestListHead b{font-family:Georgia,Yu Mincho,serif;font-size:22px;font-weight:400}.requestListHead small{color:#7a837c;font-size:9px}.requestList dl{grid-template-columns:1fr 1fr;gap:0 30px;margin:18px 0 0;display:grid}.requestList dl>div{border-bottom:1px solid #eeeae2;grid-template-columns:90px 1fr;padding:10px 0;display:grid}.requestList dl>.full{grid-column:1/-1}.requestList dt{color:#758078;font-size:10px}.requestList dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px}.requestList dd a{text-decoration:underline}.adminEmpty,.adminDenied{text-align:center;background:#fff;padding:70px}.adminDenied{min-height:100vh}.adminDenied h1{font-family:Georgia,Yu Mincho,serif;font-weight:400}.requestRemove{justify-content:flex-end;align-items:center;gap:14px;margin-top:20px;display:flex}.requestRemove button{color:#8f392f;font:inherit;cursor:pointer;background:#fff;border:1px solid #a54d42;border-radius:4px;padding:10px 16px;font-size:13px}.requestRemove button:hover{background:#fff3f1}.requestRemove button:disabled{cursor:wait;opacity:.55}.requestRemove p{color:#a22f26;margin:0;font-size:12px}.appInstall{color:#fff;background:#18231d;justify-content:space-between;align-items:center;gap:20px;margin:24px 0 0;padding:20px 22px;display:flex}.appInstall div{flex-direction:column;gap:5px;display:flex}.appInstall b{font-size:14px}.appInstall span{color:#cbd4ce;font-size:11px;line-height:1.6}.appInstall button{color:#172119;cursor:pointer;white-space:nowrap;background:#d2a54f;border:1px solid #d6b878;padding:13px 18px;font-size:12px;font-weight:700}.appInstall button:disabled{color:#dce2de;cursor:default;background:0 0;border-color:#738078}@media (width<=800px){.adminPage{padding:28px 5vw 60px}.adminHeader{display:block}.adminHeader h1{font-size:30px}.adminHeader>div:last-child{margin-top:15px}.requestList article{padding:20px 16px}.requestListHead,.requestListHead div,.requestListHead span,.requestListHead b{display:block}.requestListHead small{margin-top:8px;display:block}.requestList dl{grid-template-columns:1fr}.requestList dl>.full{grid-column:auto}.requestList dl>div{grid-template-columns:78px 1fr}.appInstall{padding:18px;display:block}.appInstall button{white-space:normal;width:100%;margin-top:15px}.optionGrid article,.optionGrid article:nth-child(odd){padding:24px 4px;display:block}.optionGrid strong{text-align:left;white-space:normal;overflow-wrap:anywhere;width:100%;margin:16px 0 0;font-size:20px;display:block}.optionGrid article>div{width:100%}}
