
/* 周辺案内専用。共通スタイルには変更を加えません。 */
.areaPage{--area-ink:#263f37;--area-muted:#62716a;--area-paper:#f7f6f1;--area-line:#d7ddd5;background:var(--area-paper);color:var(--area-ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.9}
.areaPage a{color:inherit}.areaPage p{line-height:1.95}.areaPage h1,.areaPage h2,.areaPage h3{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-weight:500;line-height:1.55}.areaPage h2{font-size:clamp(24px,2.6vw,34px)}.areaPage h3{font-size:23px}.areaPage .siteHeader{position:relative;z-index:10;background:#fff}.areaPage .reserveButton{white-space:nowrap}.areaPage :focus-visible{outline:3px solid #b17e30;outline-offset:5px}.areaPage section[id]{scroll-margin-top:24px}
.areaSkip{position:absolute;left:16px;top:-100px;z-index:100;background:white;padding:12px}.areaSkip:focus{top:12px}.areaWidth,.areaBreadcrumb,.areaHero,.areaFacts,.areaJump{width:min(1120px,calc(100% - 80px));margin-left:auto;margin-right:auto}
.areaIdentity{background:#edf0e5;border-bottom:1px solid #d5ddc8;padding:15px 40px}.areaIdentity>div{max-width:1120px;margin:auto}.areaIdentity strong{font-size:15px;letter-spacing:.06em}.areaIdentity p{font-size:13px;margin-top:3px;color:#42533d}.areaBreadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--area-muted);padding:24px 0}.areaBreadcrumb a{text-decoration:underline;text-underline-offset:4px}
.areaHero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:24px 0 38px}.areaEyebrow{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.18em;font-weight:600;color:#62756c;margin-bottom:14px}.areaHero h1{font-size:clamp(27px,3.1vw,40px);letter-spacing:.02em;margin-bottom:14px;overflow-wrap:anywhere}.areaHeroLead{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:24px;margin-bottom:20px}.areaIntro{font-size:14px}.areaHero figure{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.areaHero figure img{width:100%;height:385px;object-fit:cover}.areaHero figcaption{font-size:10px;color:var(--area-muted);margin-top:7px}.areaTags{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.areaTags span{font-size:11px;padding:4px 11px;border:1px solid #ccd6ce;border-radius:20px;background:#fff}.areaTextLink{display:inline-flex;gap:12px;font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
.areaFacts{display:grid;grid-template-columns:.8fr 1fr 1.5fr;background:#fff;border-top:1px solid var(--area-line);border-bottom:1px solid var(--area-line);padding:24px 0}.areaFacts>div{padding:0 27px;border-right:1px solid var(--area-line);display:flex;flex-direction:column;gap:5px}.areaFacts>div:last-child{border-right:0}.areaFacts small{font-size:11px;color:var(--area-muted)}.areaFacts strong{font-size:18px;font-weight:500}.areaFacts span{font-size:11px;color:var(--area-muted)}.areaJump{display:flex;gap:32px;justify-content:center;padding:22px 0;border-bottom:1px solid var(--area-line);font-size:12px}.areaJump a{padding:5px 0;text-decoration:underline;text-underline-offset:5px}
.areaRecommendation{padding:65px 0 60px;max-width:780px}.areaRecommendation h2{margin-bottom:20px}.areaRecommendation>p:last-child{font-size:16px}.areaSectionTitle{margin-bottom:30px}.areaHighlights{padding-top:12px}.areaFeature{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;margin-bottom:52px}.areaFeature:nth-of-type(2){direction:rtl}.areaFeature:nth-of-type(2)>*{direction:ltr}.areaFeature img{width:100%;height:310px;object-fit:cover}.areaFeature h3{margin:6px 0 16px}.areaFeature p{font-size:14px}.areaNumber{font-family:Georgia,serif;font-size:23px;color:#849487}.areaExtra{padding:27px 32px;border-left:3px solid #819580;background:#eaf0e8;margin:20px 0 60px}.areaExtra h3{font-size:21px;margin-bottom:10px}.areaExtra p{font-size:14px;margin-bottom:10px}.areaExtra a{font-size:13px;text-decoration:underline;text-underline-offset:5px}
.areaWeather{display:grid;grid-template-columns:1fr 1.5fr;gap:65px;padding:46px 0;margin-top:20px;margin-bottom:58px;border-top:1px solid var(--area-line);border-bottom:1px solid var(--area-line)}.areaWeather p{font-size:14px}.areaWeather .areaEyebrow{font-size:11px}.areaFine{font-size:12px!important;color:var(--area-muted);margin-top:16px}.areaAccess{display:grid;grid-template-columns:1.35fr 1fr;gap:50px;padding:30px;background:#fff;border:1px solid var(--area-line)}.areaLabel{font-size:11px;color:var(--area-muted)}.areaAccess h3{font-size:20px;margin:7px 0 15px}.areaAccess p{font-size:14px}.areaButton{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;background:#2e4a3d;color:#fff!important;font-size:13px;border:1px solid #2e4a3d;line-height:1.7;min-height:52px}.areaButton:hover{background:#20392d}.areaOutline{background:transparent;color:var(--area-ink)!important}.areaOutline:hover{background:#e8eee7}.areaMapActions{display:flex;flex-direction:column;gap:13px;justify-content:center}.areaMapActions p{font-size:11px;color:var(--area-muted)}
.areaContact{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-top:64px;margin-bottom:64px}.areaContactNotice{font-size:14px;margin-top:22px}.areaContactNotice strong{font-weight:500}.areaContactBox{border:1px solid #cbd4c6;background:#edf1e9;padding:28px}.areaContactBox dt{font-size:11px;color:var(--area-muted);margin-top:12px}.areaContactBox dt:first-child{margin-top:0}.areaContactBox dd{font-size:14px}.areaFacilityPhone{font-family:Arial,sans-serif;font-size:26px;letter-spacing:.04em;text-decoration:underline;text-underline-offset:6px}.areaContactBox dl{margin-bottom:22px}.areaContactBox .areaTextLink{margin-top:8px}.areaFaq{margin-bottom:64px}.areaFaq details{border-top:1px solid var(--area-line);padding:0 4px}.areaFaq details:last-child{border-bottom:1px solid var(--area-line)}.areaFaq summary{cursor:pointer;padding:21px 4px;font-size:15px}.areaFaq details p{font-size:14px;padding:0 24px 24px;color:#4c6056}
.areaRelated{margin-bottom:64px}.areaRelatedGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.areaRelatedCard{display:grid;grid-template-columns:150px 1fr;background:#fff;border:1px solid var(--area-line)}.areaRelatedCard:hover{background:#edf1e9}.areaRelatedCard img{width:150px;height:100%;min-height:155px;object-fit:cover}.areaRelatedCard>div{padding:18px 20px}.areaRelatedCard small{font-size:11px;color:var(--area-muted)}.areaRelatedCard h3{font-size:20px;margin:6px 0}.areaRelatedCard span{font-size:12px}.areaStay{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;background:#e4eadd;padding:46px;margin-bottom:32px}.areaStay p{font-size:14px;margin-top:18px}.areaStay .areaEyebrow{font-size:11px;margin-top:0}.areaStay>div:last-child{display:flex;flex-direction:column;gap:14px;justify-content:center}.areaSources{padding:8px 0 45px;font-size:11px;color:var(--area-muted)}.areaSources summary{cursor:pointer;padding:10px 0}.areaSources ul{list-style:disc;padding-left:22px}.areaSources a{text-decoration:underline;text-underline-offset:3px}.areaFooter{background:#20382f;color:#f5f7ef;padding:42px max(40px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:1fr 1fr;gap:28px}.areaFooter b{font-family:"Yu Mincho",serif;font-size:24px}.areaFooter p{font-size:12px;margin:10px 0;color:#c9d4cd}.areaFooter strong{font-size:12px;font-weight:500;display:block}.areaFooter a{font-size:14px;text-decoration:underline;text-underline-offset:5px;display:block;padding:5px 0}.areaFooter small{grid-column:1/-1;font-size:10px;color:#c9d4cd}.areaMobileBar{display:none}
@media(max-width:1000px){.areaWidth,.areaBreadcrumb,.areaHero,.areaFacts,.areaJump{width:calc(100% - 48px)}.areaHero{gap:26px}.areaHero figure img{height:390px}.areaHeroLead{font-size:22px}.areaFacts strong{font-size:15px}.areaFeature{gap:30px}.areaRelatedCard{grid-template-columns:105px 1fr}.areaRelatedCard img{width:105px}.areaRelatedCard h3{font-size:18px}.areaRelatedCard>div{padding:15px}.areaStay{gap:30px;padding:30px}}
@media(max-width:700px){.areaPage{padding-bottom:64px}.areaWidth,.areaBreadcrumb,.areaHero,.areaFacts,.areaJump{width:calc(100% - 36px)}.areaIdentity{padding:13px 18px}.areaIdentity strong{font-size:13px}.areaIdentity p{font-size:11px}.areaBreadcrumb{font-size:10px;gap:8px;padding:17px 0}.areaHero{grid-template-columns:1fr;padding-top:12px;gap:25px}.areaHero h1{font-size:29px}.areaHeroLead{font-size:23px}.areaHero figure img{height:250px}.areaIntro{font-size:14px}.areaFacts{grid-template-columns:1fr;padding:0 17px}.areaFacts>div{border-right:0;border-bottom:1px solid var(--area-line);padding:16px 0;display:grid;grid-template-columns:110px 1fr;gap:3px 8px}.areaFacts>div:last-child{border-bottom:0}.areaFacts span{grid-column:2}.areaFacts strong{font-size:15px}.areaJump{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;justify-items:start;padding:17px 0;font-size:11px}.areaRecommendation{padding:42px 0}.areaRecommendation>p:last-child{font-size:14px}.areaSectionTitle{margin-bottom:22px}.areaFeature,.areaFeature:nth-of-type(2){grid-template-columns:1fr;direction:ltr;gap:19px;margin-bottom:35px}.areaFeature img{height:240px}.areaFeature h3{font-size:22px}.areaExtra{padding:22px;margin-bottom:40px}.areaWeather{grid-template-columns:1fr;gap:20px;padding:32px 0;margin-bottom:38px}.areaAccess{grid-template-columns:1fr;gap:25px;padding:22px}.areaContact{grid-template-columns:1fr;gap:24px;padding-top:40px;margin-bottom:40px}.areaContactBox{padding:23px}.areaFaq,.areaRelated{margin-bottom:40px}.areaFaq summary{font-size:14px;padding:20px 2px}.areaRelatedGrid{grid-template-columns:1fr;gap:15px}.areaRelatedCard{grid-template-columns:110px 1fr}.areaRelatedCard img{width:110px;min-height:140px}.areaStay{grid-template-columns:1fr;gap:25px;padding:27px 23px}.areaStay h2{font-size:24px}.areaFooter{grid-template-columns:1fr;padding:32px 23px;gap:22px}.areaFooter b{font-size:22px}.areaMobileBar{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 -2px 12px #263f3717;padding-bottom:env(safe-area-inset-bottom)}.areaMobileBar a{padding:17px 8px;text-align:center;font-size:12px;min-height:56px;display:block}.areaMobileBar a:last-child{background:#2e4a3d;color:#fff}}
/* 既存ヘッダーは写真上の白文字を前提としているため、案内ページでは濃色背景に。 */
.areaPage .siteHeader{background:#20382f;color:#fff;border-bottom:1px solid #ffffff30}
@media(max-width:1250px){
.areaPage .siteHeader{height:66px;padding:0 20px}
.areaPage .siteHeader nav,.areaPage .siteHeader .reserveButton{display:none}
.areaPage .mobileNav{display:block;margin-left:auto}
.areaPage .mobileNav summary{cursor:pointer;letter-spacing:.14em;color:#fff;border:1px solid #ffffffb8;display:flex;align-items:center;gap:10px;min-height:42px;padding:0 13px;font:500 12px Arial,sans-serif;list-style:none}
.areaPage .mobileNav summary::-webkit-details-marker{display:none}
.areaPage .mobileNav summary i{display:block;width:19px;height:12px;border-top:1.5px solid;border-bottom:1.5px solid;position:relative}
.areaPage .mobileNav summary i:after{content:"";border-top:1.5px solid;position:absolute;top:4px;left:0;right:0}
.areaPage .mobileNav[open] summary i{border:0;height:18px;transform:rotate(45deg)}
.areaPage .mobileNav[open] summary i:before,.areaPage .mobileNav[open] summary i:after{content:"";background:currentColor;border:0;width:1.5px;height:18px;position:absolute;top:0;left:9px}
.areaPage .mobileNav[open] summary i:after{transform:rotate(90deg)}
.areaPage .mobileNavPanel{position:absolute;z-index:30;top:66px;left:0;right:0;max-height:calc(100dvh - 130px);overflow:auto;background:#f7f3eb;color:#263f37;padding:8px 22px 22px;box-shadow:0 18px 30px #0004}
.areaPage .mobileNavPanel a{display:flex;justify-content:space-between;align-items:center;min-height:50px;padding:0 4px;font-size:16px;border-bottom:1px solid #d7cebe}
.areaPage .mobileNavPanel a b{font-size:14px;font-weight:400}
}
.areaSeasonGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:50px}
.areaSeasonCard{background:#fff;border:1px solid var(--area-line);display:flex;flex-direction:column}
.areaSeasonCard>img{width:100%;height:240px;object-fit:cover}
.areaSeasonCard>div{padding:26px 30px;flex:1}
.areaSeasonCard h3{margin:8px 0 16px;font-size:23px}
.areaSeasonCard p{font-size:14px}
.areaSeasonCard:not(:has(img)){background:#e9eee4;justify-content:center}
@media(max-width:1250px){
.areaPage:has(.mobileNav[open]){overflow:hidden}
.areaPage .mobileNavPanel{position:fixed;top:66px;max-height:calc(100vh - 146px);max-height:calc(100dvh - 146px - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding:12px 22px 24px}
.areaPage .mobileNavPanel a{min-height:48px;font-size:14px;line-height:1.55;padding:12px 4px;gap:8px}
}
@media(max-width:700px){.areaSeasonGrid{grid-template-columns:1fr;gap:18px}.areaSeasonCard>img{height:220px}.areaSeasonCard>div{padding:24px}.areaSeasonCard h3{font-size:21px}}
@media(max-width:1250px){.areaPage .mobileNav[open] summary span{font-size:0}.areaPage .mobileNav[open] summary span:after{content:"閉じる";font-size:12px;letter-spacing:.05em}}

/* 提供写真は縦横比を保ち、花や木道を切らずに表示。 */
.areaHero figure img.areaNewPhoto{height:auto;max-height:580px;object-fit:contain;background:#edf0e5}
.areaSeasonCard>img.areaNewPhoto{height:360px;object-fit:contain;background:#edf0e5}
.areaFeature img.areaNewPhoto{object-fit:contain;background:#edf0e5}
.areaPhotoSection{margin:10px auto 55px}
.areaPhotoGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.areaPhotoGrid figure{margin:0;background:#fff;border:1px solid var(--area-line)}
.areaPhotoGrid img{width:100%;height:350px;object-fit:contain;background:#edf0e5}
.areaPhotoGrid figcaption{padding:12px 16px;font-size:13px}
@media(max-width:700px){.areaHero figure img.areaNewPhoto{max-height:none}.areaSeasonCard>img.areaNewPhoto{height:auto}.areaPhotoGrid{grid-template-columns:1fr;gap:20px}.areaPhotoGrid img{height:auto}.areaPhotoSection{margin-bottom:40px}}

.areaCloudDawn{margin:24px 0 0}.areaCloudDawn img{width:100%;height:auto;display:block}.areaCloudDawn figcaption{font-size:11px;color:var(--area-muted);margin-top:7px}

.areaCloudVideo{margin:24px 0 0}.areaCloudVideo video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#17261e}.areaCloudVideo figcaption{font-size:12px;color:var(--area-muted);margin-top:10px;line-height:1.8}

.areaVideoSection{margin-top:24px;margin-bottom:55px}.areaVideoSection .areaCloudVideo{margin:0}.areaVideoSection video{width:100%;height:auto;display:block}
/* 写真の表示枠を統一。元画像を保ち、端末ごとに見せる範囲を調整。 */
.areaHero figure img,.areaHero figure img.areaNewPhoto{width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-fit:cover;object-position:center}
.areaSeasonCard>img,.areaSeasonCard>img.areaNewPhoto{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.areaFeature img,.areaFeature img.areaNewPhoto{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.areaPhotoGrid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.areaRelatedCard img,.areaRelatedCard img.areaNewPhoto{height:100%;aspect-ratio:auto;object-fit:cover}
.areaHero img[src*="panorama-yatsugatake"],.areaPhotoGrid img[src*="panorama-yatsugatake"]{object-position:50% 60%}
img.areaNewPhoto[src*="panorama-suzuran"]{object-position:50% 66%}
img.areaNewPhoto[src*="panorama-hoteiatsumorisou"]{object-position:50% 58%}
.areaHero img[src*="panorama-nyukasa-wetland"],.areaFeature img[src*="panorama-nyukasa-wetland"],.areaPhotoGrid img[src*="panorama-nyukasa-wetland"]{object-position:50% 70%}
.areaPhotoGrid img[src*="panorama-gondola-view"]{object-position:50% 65%}
.areaSeasonCard>img[src*="panorama-winter-ski-view"]{object-position:50% 64%}
.areaPhotoGrid img[src*="panorama-winter-yatsugatake"]{object-position:50% 48%}
.areaPhotoGrid img[src*="panorama-winter-fuji-slope"]{object-position:50% 43%}
.areaPhotoGrid img[src*="panorama-winter-cloud-slope"]{object-position:50% 60%}
@media(max-width:700px){
.areaHero figure img,.areaHero figure img.areaNewPhoto{aspect-ratio:4/3}
.areaSeasonCard>img,.areaSeasonCard>img.areaNewPhoto,.areaFeature img,.areaFeature img.areaNewPhoto,.areaPhotoGrid img{aspect-ratio:4/3;height:auto;object-fit:cover}
}

.areaSummitGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.areaFeature img[src*="nyukasa-summit-yatsugatake"],.areaPhotoGrid img[src*="nyukasa-summit-yatsugatake"]{object-position:50% 48%}
.areaPhotoGrid img[src*="nyukasa-summit-mountains"]{object-position:50% 42%}
.areaPhotoGrid img[src*="nyukasa-summit-lake"]{object-position:50% 46%}
.areaPhotoGrid img[src*="nyukasa-summit-fuji"]{object-position:50% 48%}
@media(max-width:700px){.areaSummitGrid{grid-template-columns:1fr}}

.areaHero img[src*="kogen-observation-deck"],.areaRelatedCard img[src*="kogen-observation-deck"]{object-position:50% 64%}
.areaFeature img[src*="kogen-sculpture-view"]{object-position:50% 62%}
.areaPhotoGrid img[src*="kogen-forest-view"]{object-position:50% 58%}
.areaPhotoGrid img[src*="kogen-green-mountains"]{object-position:50% 48%}
.areaFeature img[src*="kogen-skycart-landscape"],.areaPhotoGrid img[src*="kogen-skycart-sculpture"]{object-position:50% 65%}

.areaSceneryLinks{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:16px}.areaSceneryLinks a{font-size:13px;text-decoration:underline;text-underline-offset:5px}

.areaSummitIntro{font-size:14px;margin:0 0 26px;max-width:850px}.areaFeature p+p{margin-top:16px}

.areaProvidedPhoto{margin:0}
.areaProvidedPhoto img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.areaProvidedPhoto figcaption{padding:8px 14px;font-size:11px;line-height:1.6;color:var(--area-muted);background:#f1f3ed}
.areaSeasonCard .areaProvidedPhoto img[src*="provided-mtb"]{object-position:45% 60%}
.areaProvidedPhoto img[src*="provided-fuji-cloudsea"]{object-position:70% 60%}
@media(max-width:700px){.areaProvidedPhoto img{aspect-ratio:4/3}.areaSeasonCard .areaProvidedPhoto img[src*="provided-mtb"]{object-position:43% 60%}.areaProvidedPhoto img[src*="provided-fuji-cloudsea"]{object-position:80% 60%}}
/* 本文幅の薄緑パネルは左右を中央揃えにする。 */
.areaExtra.areaWidth{margin-left:auto;margin-right:auto}
