.subpage{background:#f8f6f1}.subhead{height:72px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;background:#faf8f3;border-bottom:1px solid #ddd9d0}.subhead>a:last-child{color:#26342f;text-decoration:none;font-size:12px}.page-title{padding:70px 8vw 50px;background:#ece9e1}.page-title p,.en{font-size:10px;letter-spacing:.2em;color:#78857e}.page-title h1{font:400 clamp(34px,4vw,54px) var(--serif);letter-spacing:.08em;margin:22px 0}.page-title span{color:#68746e}.catalog{display:grid;grid-template-columns:260px 1fr;gap:50px;padding:55px 8vw 100px}.filters{background:white;border:1px solid var(--line);padding:25px;align-self:start;position:sticky;top:20px}.filters h2{font:500 17px var(--serif)}.filters h2 button{float:right;border:0;background:none;color:#819087}.filters fieldset{border:0;border-top:1px solid var(--line);padding:20px 0 10px}.filters legend{padding-top:20px;font-weight:600;font-size:11px}.filters label{display:block;margin:12px 0;font-size:12px;color:#5f6d65}.filters input{accent-color:var(--ink)}.apply{width:100%;padding:14px;border:0;background:var(--ink);color:#fff}.mock{padding:12px 16px;background:#efede6;border-left:3px solid #839189;font-size:11px;color:#66736c}.results>h2{font:400 23px var(--serif)}.hotel{display:grid;grid-template-columns:40% 1fr;background:#fff;margin:22px 0;min-height:320px}.hotel-img{background:url('../images/hero-onsen.png') center/cover;position:relative}.hotel-img span{position:absolute;top:17px;left:17px;padding:8px 12px;background:#faf8f3;font-size:10px}.pos2{background-position:left;filter:saturate(.75)}.pos3{background-position:right;filter:sepia(.15)}.hotel-copy{padding:25px 28px}.hotel-copy>small{color:#758179}.hotel h3{font:500 22px var(--serif);margin:7px 0}.rec{font:500 13px var(--serif)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips i{font-style:normal;font-size:9px;padding:7px 9px;background:#e9eee9;color:#536159}.hotel dl{font-size:10px;color:#69766f}.hotel dl div{display:flex;gap:15px}.hotel dt{width:35px}.hotel dd{margin:0}.hotel footer{margin-top:15px;padding:14px 0 0;background:none;border-top:1px solid #ebe8e1;display:flex;flex-direction:row;align-items:end}.hotel footer p{margin:0 auto 0 0}.hotel footer small,.hotel footer b{display:block}.hotel footer a{background:var(--ink);color:#fff;text-decoration:none;padding:11px 17px}.detail-cover{height:570px;background:linear-gradient(0deg,rgba(17,27,23,.7),transparent 60%),url('../images/hero-onsen.png') center/cover;color:#fff;padding:55px 8vw;display:flex;align-items:end}.detail-cover h1{font:400 clamp(40px,5vw,65px) var(--serif);letter-spacing:.1em;margin:10px 0}.anchor{position:sticky;top:0;z-index:5;background:white;border-bottom:1px solid var(--line);padding:20px;display:flex;justify-content:center;gap:40px}.anchor a{color:var(--ink);text-decoration:none;font-size:11px}.detail-body{max-width:1100px;margin:auto;padding:60px 30px}.lead{text-align:center;max-width:750px;margin:75px auto}.lead small{letter-spacing:.2em}.lead h2{font:400 clamp(28px,3vw,42px)/1.6 var(--serif)}.lead p,.info>p{line-height:2;color:#66736c}.points,.scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.points article{background:#eceae3;padding:35px;min-height:230px}.points h3,.scenes h3{font:500 18px/1.6 var(--serif)}.points p,.scenes p{font-size:11px;line-height:1.9;color:#68746d}.info{padding:90px 0;border-bottom:1px solid var(--line)}.info>h2{font:400 31px var(--serif)}.scenes{gap:15px;margin-top:35px}.scenes article{border:1px solid var(--line);padding:25px}.scenes article>b{font-size:23px}.spec{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:35px}.spec div{display:grid;grid-template-columns:110px 1fr;padding:18px;border-bottom:1px solid var(--line);font-size:12px}.room{display:grid;grid-template-columns:1.1fr 1fr;background:#fff;margin-top:35px}.room>div{min-height:360px;background:url('../images/hero-onsen.png') right/cover}.room article{padding:40px}.room h3{font:500 23px var(--serif)}.room p{line-height:2;color:#68746d}.reserve{margin-top:75px;padding:40px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between}.reserve h2{font:400 25px var(--serif)}.reserve button{padding:16px 28px;border:0;background:white;color:var(--ink)}
@media(max-width:800px){.catalog{grid-template-columns:1fr;padding:30px 20px}.filters{position:relative}.hotel{grid-template-columns:1fr}.hotel-img{height:240px}.detail-cover{height:480px;padding:35px 25px}.anchor{justify-content:flex-start;overflow:auto}.detail-body{padding:40px 20px}.points,.scenes,.spec,.room{grid-template-columns:1fr}.reserve{display:block}.reserve button{width:100%;margin-top:20px}}
