:root{--brown:#4d3326;--coral:#e77f70;--beige:#fbf6f1;--sage:#91a080;--text:#4a3a32;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#fff;font-family:"Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN",serif;line-height:1.9}a{color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #f2ebe5}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.3}.brand-copy{font-size:11px}.brand strong{font-size:22px;font-weight:500}.brand small{font-size:12px;color:#7a6c64}.global-nav{display:flex;align-items:center;gap:24px}.global-nav a{text-decoration:none;font-size:14px}.global-nav .active{color:var(--coral)}.nav-cta,.button{background:var(--coral);color:#fff!important;border-radius:999px;padding:13px 24px;text-decoration:none!important;display:inline-block}.menu-toggle{display:none;border:0;background:none;font-size:26px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:linear-gradient(90deg,#fff,#ffffaf7)}.hero-photo{background:url('../images/HP①.jpg') center/cover no-repeat;position:relative;overflow:hidden}.hero-photo:before{content:"";position:absolute;inset:0;display:grid;place-items:center;color:#7b6d65;font-family:"Noto Sans JP",sans-serif;font-size:18px;letter-spacing:.12em}.hero-copy{padding:80px 9%;display:flex;flex-direction:column;justify-content:center}.eyebrow,.section-en{color:#c89b88;font-style:italic;letter-spacing:.1em}.hero h1{font-size:clamp(34px, 4vw, 56px);line-height:1.55;font-weight:500;margin:8px 0 28px}.hero h1 span{color:var(--coral)}.hero p{font-size:17px}.section{padding:90px 0}.section-en{text-align:center;margin:0}.section h2{font-size:30px;text-align:center;font-weight:500;margin:4px 0 50px}.cards{display:grid;grid-template-columns:repeat(3, 1fr);gap:32px}.card{background:#fff;border-radius:12px;box-shadow:0 8px 28px rgba(90, 65, 48, .09);overflow:hidden}.card-visual{height:210px;background:#f1e6dc;position:relative}.visual-consult{background:linear-gradient(135deg, #f6ede5, #e9f0e3)}.visual-online{background:linear-gradient(135deg, #efe5d8, #f6f2ed)}.visual-company{background:linear-gradient(135deg, #d8d5cf, #eef0ec)}.card-visual:after{content:"";position:absolute;inset:0;display:grid;place-items:center;letter-spacing:.18em;color:#81736b}.card-body{padding:28px;text-align:center}.card-body h3{font-size:20px;margin:0 0 16px}.card-body small{font-size:14px}.card-body a{color:var(--coral);text-decoration:none}.contact-strip{padding:62px 0;background:#fff7f2}.contact-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:48px}.contact-strip h2{font-size:26px;margin:0 0 8px}.site-footer{background:#765a49;color:#fff;padding:34px 0}.footer-inner{text-align:center}.footer-inner nav{display:flex;justify-content:center;flex-wrap:wrap;gap:20px}.footer-inner a{text-decoration:none;font-size:13px}.footer-inner p{font-size:12px;opacity:.8}.simple-header{padding:22px 0;border-bottom:1px solid #eee}.simple-header a{text-decoration:none}.subpage{padding:80px 0}.narrow{max-width:900px}.subpage h1{text-align:center;font-size:38px;font-weight:500}.profile-grid{display:grid;grid-template-columns:320px 1fr;gap:50px;margin-top:50px}.profile-photo{min-height:440px;border-radius:180px 180px 30px 30px;position:relative}.service-detail{padding:36px 0;border-bottom:1px solid #eee}.images-grid-3{display:grid;grid-template-columns:repeat(3, 1fr);gap:20px;margin-top:40px}.images-grid-3 img{width:100%;height:auto;max-height:300px;object-fit:cover;border-radius:8px}
@media(max-width:900px){.global-nav{display:none;position:absolute;left:20px;right:20px;top:85px;background:#fff;padding:24px;box-shadow:0 10px 30px rgba(0,0,0,.08);flex-direction:column;align-items:flex-start}.global-nav.open{display:flex}.menu-toggle{display:block}.hero{grid-template-columns:1fr}.hero-photo{min-height:390px}.hero-copy{padding:55px 7%}.cards{grid-template-columns:1fr;max-width:620px;margin:auto}.contact-strip-inner{flex-direction:column;align-items:flex-start}.profile-grid{grid-template-columns:1fr}.profile-photo{max-width:360px;width:100%;margin:auto}}
