:root{--paper:#f7f4ed;--white:#fffdf8;--ink:#292c29;--muted:#666a64;--green:#294b3d;--green2:#456657;--line:#d9d3c7;--sand:#e9e2d6;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}.wrap{width:min(calc(100% - 48px),var(--max));margin:auto}.header{position:sticky;top:0;z-index:20;background:rgba(247,244,237,.97);border-bottom:1px solid var(--line)}.header-in{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px}.brand img{width:48px;height:48px;object-fit:contain}.brand b{display:block;font-family:Georgia,serif;letter-spacing:.13em}.brand small{display:block;color:var(--muted);font-size:.62rem}.nav{display:flex;align-items:center;gap:24px;font-size:.84rem;font-weight:700}.nav a:hover{color:var(--green2)}.nav .cta,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:9px 21px;background:var(--green);border:1px solid var(--green);color:white;font-weight:700}.btn.light{background:transparent;color:var(--green)}.btn:hover{background:#1d3b30;color:white}.menu{display:none;border:0;background:none;font-size:1.5rem}.mobile{display:none}.hero{padding:82px 0 68px;background:var(--white)}.crumb{margin:0 0 20px;color:var(--muted);font-size:.78rem}.kicker{margin:0 0 8px;color:var(--green2);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.4}h1{margin:0;font-size:clamp(2.5rem,6vw,4.6rem);letter-spacing:.04em}.lead{max-width:720px;margin:22px 0 0;color:var(--muted);font-size:1.05rem}.section{padding:82px 0}.section.alt{background:var(--white)}.section h2{margin:0 0 30px;font-size:clamp(1.8rem,4vw,2.8rem)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line)}.card-photo{position:relative;aspect-ratio:4/3;overflow:hidden}.card-photo img{height:100%;object-fit:cover}.status{position:absolute;left:13px;top:13px;padding:3px 10px;background:var(--green);color:#fff;font-size:.72rem;font-weight:700}.card-body{display:flex;flex:1;flex-direction:column;padding:22px}.card h3{margin:0 0 8px;font-size:1.3rem}.card p{margin:0 0 14px;color:var(--muted);font-size:.88rem}.meta{display:flex;flex-wrap:wrap;gap:7px;margin:6px 0 20px}.meta span{padding:3px 9px;border:1px solid var(--line);font-size:.72rem}.card .link{margin-top:auto;color:var(--green);font-weight:700}.card .link:after,.arrow:after{content:" →"}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}.filter{padding:9px 15px;border:1px solid var(--line);background:var(--white)}.filter:hover{border-color:var(--green)}.two{display:grid;grid-template-columns:1fr 1fr;gap:55px}.link-list{display:grid;gap:10px}.link-box{display:flex;justify-content:space-between;align-items:center;min-height:66px;padding:12px 18px;background:var(--white);border:1px solid var(--line);font-weight:700}.link-box:after{content:"→";color:var(--green)}.detail-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}.detail-photo{aspect-ratio:4/3;overflow:hidden}.detail-photo img{height:100%;object-fit:cover}.detail-title h1{font-size:clamp(2.2rem,5vw,4rem)}.price{margin:24px 0 5px;font-size:1.35rem;font-weight:700}.specs{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.spec{padding:17px 10px;border-bottom:1px solid var(--line)}.spec dt{color:var(--muted);font-size:.75rem}.spec dd{margin:3px 0 0;font-weight:700}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.gallery div{aspect-ratio:4/3;overflow:hidden}.gallery img{height:100%;object-fit:cover}.note{padding:18px 20px;background:var(--sand);font-size:.84rem}.story{max-width:760px}.story p{margin:0 0 1.3em}.cta-band{padding:58px 0;background:var(--green);color:white}.cta-in{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-in h2{margin:0 0 6px}.cta-in p{margin:0;color:#dbe3de}.cta-band .btn{background:white;color:var(--green);border-color:white}.footer{padding:58px 0 25px;background:#202f29;color:#f7f4ed}.foot-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.foot-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 25px;font-size:.84rem}.copy{margin-top:38px;padding-top:18px;border-top:1px solid #ffffff2b;color:#c1cbc5;font-size:.72rem}a:focus-visible,button:focus-visible{outline:3px solid #b88a68;outline-offset:3px}@media(max-width:900px){.nav{display:none}.menu{display:block}.mobile.open{display:grid;padding:10px 24px 22px;background:var(--paper);border-top:1px solid var(--line)}.mobile a{padding:9px 0;border-bottom:1px solid var(--line)}.grid{grid-template-columns:repeat(2,1fr)}.detail-hero,.two{grid-template-columns:1fr}.detail-photo{order:-1}.gallery{grid-template-columns:1fr 1fr}.gallery div:first-child{grid-column:1/-1}.foot-grid{grid-template-columns:1fr}}@media(max-width:560px){.wrap{width:calc(100% - 28px)}.header-in{height:68px}.brand img{width:42px;height:42px}.brand small{display:none}.hero{padding:55px 0 48px}.section{padding:60px 0}.grid{grid-template-columns:1fr}.specs{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery div:first-child{grid-column:auto}.cta-in{align-items:flex-start;flex-direction:column}.foot-links{grid-template-columns:1fr 1fr}}
