:root{--ink:#172c2b;--muted:#596966;--cream:#f6f4ed;--white:#fff;--green:#204e45;--lime:#e6edb5;--line:#d5dcd3;--serif:'Noto Serif JP','Yu Mincho','Hiragino Mincho ProN',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;line-height:1.85;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit}img{display:block;max-width:100%;height:auto}figure{margin:0}figcaption,.small{font-size:12px;color:var(--muted);line-height:1.85}figcaption{margin-top:8px}h1,h2,h3,p{margin-top:0}h2{font:500 clamp(28px,3.3vw,44px)/1.65 var(--serif);letter-spacing:.04em;margin-bottom:24px}h3{font-weight:500}header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:16px 5%;background:#f6f4edf5;border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.brand{font-family:Georgia,serif;letter-spacing:.1em;font-size:25px;text-decoration:none;line-height:1.2}.brand span{display:block;font-family:sans-serif;font-size:9px;letter-spacing:.08em;margin-top:6px}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav a{text-decoration:none}.nav-contact{background:var(--green);color:white;padding:10px 18px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;z-index:99;background:white}.hero{display:grid;grid-template-columns:49% 51%;min-height:660px;max-width:1600px;margin:auto}.hero-copy{padding:66px 9% 58px 10%}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:700;color:var(--green);margin-bottom:20px}.hero h1{font:500 clamp(30px,3.5vw,49px)/1.6 var(--serif);letter-spacing:.025em;margin-bottom:24px}.hero h1 em{font-style:normal}.hero-sub{font-size:13px}.hero-price{padding:18px 0 24px}.hero-price>span{font-size:12px}.hero-price p{display:flex;align-items:baseline;gap:8px;line-height:1.1;margin:12px 0}.hero-price strong{font:500 clamp(55px,5.6vw,82px)/1 Georgia,serif;letter-spacing:-.04em}.hero-price small{font-size:11px;color:var(--muted);display:block}.hero-picture{position:relative;min-height:660px;overflow:hidden;background:#d4d0c1}.hero-picture>img{width:100%;height:100%;object-fit:cover}.hero-picture>figcaption{position:absolute;bottom:12px;left:20px;color:white;background:#18352bbd;padding:4px 10px;font-size:10px}.hero-stamp{position:absolute;right:24px;top:24px;padding:18px 24px;background:var(--lime);border-radius:50%;width:155px;height:155px;display:flex;flex-direction:column;justify-content:center;text-align:center;font:15px/1.5 Georgia,serif;transform:rotate(7deg)}.hero-stamp small{font-size:9px;margin-top:10px;font-family:sans-serif}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 24px;background:var(--green);border:1px solid var(--green);color:white;text-decoration:none;font-size:14px;cursor:pointer;transition:background .2s}.button:hover{background:#34675a}.button.secondary{background:transparent;color:var(--green)}.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #d17a31;outline-offset:4px}.section{max-width:1180px;margin:auto;padding:88px 34px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:0 75px;border-bottom:1px solid var(--line)}.intro>.eyebrow{grid-column:1/-1}.intro>div{padding-top:10px}.section-heading{margin-bottom:36px}.section-heading h2{margin-bottom:18px}.section-heading>p:last-child{font-size:14px}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.room-card{display:block;text-decoration:none;background:white;transition:transform .2s}.room-card:hover{transform:translateY(-4px)}.card-photo{height:280px;position:relative;overflow:hidden}.card-photo img{width:100%;height:100%;object-fit:cover}.room-pill{position:absolute;left:18px;top:18px;background:var(--cream);padding:5px 14px;font-size:12px}.card-body{padding:25px 28px}.card-top{display:flex;justify-content:space-between;align-items:center}.card-top h3{font:52px/1 Georgia,serif;margin-bottom:0}.card-top h3 span{font:9px/1 sans-serif;letter-spacing:.15em;display:block;margin-top:10px}.card-top p{text-align:right;line-height:1.5;margin-bottom:0}.card-top small{font-size:11px;color:var(--muted)}.card-rent{font-size:13px;margin:25px 0}.card-rent strong{font:30px Georgia,serif}.card-rent span{display:block;color:var(--muted);font-size:11px}.card-link{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;font-size:13px}.room-note{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 28px;margin:24px 0;background:#e9ece3}.room-note p{font-size:12px;margin:5px 0 0}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid;padding-bottom:4px}.cost-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#e9ece3;padding:36px}.cost-large>p:first-child{font-size:12px}.large-number{font:50px/1.3 Georgia,serif;margin:26px 0}.large-number span{display:block;font:12px sans-serif;margin-top:10px}.data{margin:0}.data>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #bbc8bb;font-size:13px}.data dd{margin:0;text-align:right}.location{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.location figure img{width:100%}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:15px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'＋';font-weight:400}.faq details[open] summary:after{content:'−'}.faq p{margin:20px 0 0;max-width:780px;font-size:14px}.source-note{max-width:1180px;margin:auto;padding:0 34px 40px;font-size:11px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:65px;background:var(--green);max-width:none;color:white;padding-left:max(34px,calc((100vw - 1112px)/2));padding-right:max(34px,calc((100vw - 1112px)/2))}.contact .eyebrow,.contact .small{color:#d0dfd1}.mail-address{font:24px Georgia,serif;text-decoration:none;display:block;margin:30px 0 16px}.contact label{font-size:12px;display:block;margin-bottom:18px}.contact select,.contact textarea{display:block;width:100%;margin-top:7px;padding:12px;color:var(--ink);border:1px solid transparent;background:#f7f7f0;border-radius:0}.contact button{background:var(--lime);border:0;color:var(--ink);width:100%;margin-bottom:12px}.contact button:hover{background:white}footer{padding:50px 6%;font-size:12px}.footer-brand{font:22px Georgia,serif;letter-spacing:.12em}.breadcrumbs{max-width:1180px;margin:24px auto 0;padding:0 34px;font-size:12px}.detail-head{max-width:1180px;margin:auto;padding:40px 34px;display:flex;justify-content:space-between;align-items:center;gap:30px}.detail-head h1{font:105px/1 Georgia,serif;letter-spacing:-.04em;margin:0 0 20px}.detail-head h1 span{font:17px sans-serif;margin-left:12px}.detail-head>div>p:last-child{font-size:14px}.detail-price{padding:24px 30px;border-left:1px solid var(--line)}.detail-price p{font-size:12px;margin:0 0 10px}.detail-price strong{font:42px Georgia,serif}.detail-price strong span{font:12px sans-serif}.detail-hero{max-width:1180px;margin:auto;padding:0 34px}.detail-hero img{width:100%;height:500px;object-fit:cover}.plan-section{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}.plan-image{background:white;padding:32px}.plan-image img{max-height:450px;width:auto;margin:auto;image-rendering:auto}.plan-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.plan-tags span{background:#e3e8dc;padding:5px 12px;font-size:12px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin:30px 0}.gallery figure:first-child{grid-column:1/-1}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery figure:first-child img{aspect-ratio:16/9}dialog{padding:40px 20px 20px;border:0;max-width:min(94vw,1150px);max-height:94vh;background:var(--cream);color:var(--ink)}dialog::backdrop{background:#061b18da}dialog img{max-height:75vh;margin:auto}dialog button{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:13px;cursor:pointer}dialog p{font-size:12px;margin:15px 0 0}.mobile-cta{display:none}.campaign-strip{background:var(--green);color:white;display:flex;justify-content:center;gap:44px;padding:18px 20px;font-size:14px}.campaign-strip span:before{content:'✓ ';color:var(--lime)}.campaign-banner{background:var(--lime);padding:25px 30px;margin:0 0 30px}.campaign-banner h3{font:30px var(--serif);margin:0 0 10px}.campaign-banner p{margin:0;font-size:13px}.pet-section{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center}.pet-visual{position:relative}.pet-visual img{aspect-ratio:3/2;object-fit:cover;width:100%}.motion-control{position:absolute;right:12px;top:12px;background:white;border:0;padding:8px 12px;font-size:11px;cursor:pointer}.motion-control[hidden]{display:none}.campaign-note{font-size:12px;color:var(--muted)}@media(max-width:800px){header{padding:13px 5%}.brand{font-size:21px}nav{gap:15px}nav>a:first-child{display:none}.nav-contact{font-size:11px;padding:8px 12px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:36px 7% 34px}.hero h1{font-size:32px}.hero-picture{min-height:0;height:370px}.hero-price strong{font-size:64px}.hero-stamp{width:125px;height:125px;font-size:12px;right:15px;top:15px}.hero-stamp small{font-size:8px}.section{padding:58px 6%}.intro,.location,.cost-layout,.contact,.plan-section,.pet-section{grid-template-columns:1fr;gap:25px}.intro>div{padding:0}.intro h2{margin-bottom:0}.room-grid{gap:20px;grid-template-columns:1fr}.card-photo{height:240px}.room-note{display:block;padding:22px}.room-note .text-link{display:inline-block;margin-top:14px}.cost-layout{padding:26px;gap:15px}.large-number{margin:15px 0}.contact{padding:55px 6%}.source-note{padding:0 6% 30px}.detail-head{padding:30px 6%;align-items:flex-start;gap:15px}.detail-head h1{font-size:80px}.detail-head>div>p:last-child{font-size:12px;max-width:180px}.detail-price{padding:15px 0 15px 18px}.detail-price strong{font-size:28px}.detail-price strong span{display:block;font-size:10px}.detail-hero{padding:0 6%}.detail-hero img{height:300px}.breadcrumbs{padding:0 6%}.plan-image{padding:25px}.gallery{gap:18px;grid-template-columns:1fr}.gallery figure:first-child{grid-column:auto}.gallery figure:first-child img{aspect-ratio:4/3}footer{padding-bottom:100px}.mobile-cta{display:block;position:fixed;z-index:25;bottom:0;left:0;width:100%;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:var(--green);color:white;text-align:center;text-decoration:none;font-size:13px;box-shadow:0 -2px 8px #0001}.campaign-strip{flex-wrap:wrap;gap:6px 24px;font-size:12px;padding:15px}.campaign-banner h3{font-size:24px}.pet-section{gap:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
