*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f2ea;color:#171310;font-family:"Noto Serif JP",serif;line-height:1.85}a{text-decoration:none;color:inherit}.header{position:sticky;top:0;z-index:5;background:rgba(18,15,12,.94);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:18px 6vw;border-bottom:1px solid rgba(207,169,76,.35);backdrop-filter:blur(12px)}.logo{font-family:"Cormorant Garamond",serif;font-size:31px;letter-spacing:.1em;font-weight:700}.logo span{font-size:16px}.header nav{display:flex;gap:24px;font-size:14px;letter-spacing:.08em}.hero{min-height:760px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding:86px 8vw;background:linear-gradient(135deg,#16120f 0%,#2b2119 52%,#efe3cf 52%,#f9f4ec 100%);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:34px;border:1px solid rgba(207,169,76,.45)}.hero-inner{position:relative;color:#fff;max-width:780px}.kicker{font-family:"Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.23em;color:#cfa94c;font-weight:700}.hero h1,.intro h2,.business h2,.message h2,.profile h2,.contact h2{font-size:clamp(34px,5vw,68px);line-height:1.25;letter-spacing:.06em;margin:14px 0 26px}.lead{font-size:18px;max-width:650px}.buttons{display:flex;gap:14px;margin-top:36px}.btn{border:1px solid #cfa94c;padding:13px 32px;letter-spacing:.12em}.btn.primary{background:#cfa94c;color:#171310}.name-card{position:relative;background:#fff;color:#171310;padding:58px 44px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.25);border:1px solid rgba(207,169,76,.45)}.name-card .company{font-family:"Cormorant Garamond",serif;text-transform:uppercase;letter-spacing:.22em;font-size:22px}.script{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:68px;line-height:1;margin:32px 0 16px}.name-card span{display:inline-block;margin-top:20px;padding-top:18px;border-top:1px solid #cfa94c;color:#6f5a31}.intro{padding:96px 8vw;text-align:center;max-width:1000px;margin:auto}.intro p:last-child{font-size:17px}.business{background:#fff;padding:96px 8vw}.business-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.business article{background:#171310;color:#fff;padding:42px;border:1px solid rgba(207,169,76,.35);min-height:430px}.business article:nth-child(2){background:#2b2119}.number{font-family:"Cormorant Garamond",serif;color:#cfa94c;font-size:52px}.business h3{font-size:30px;margin:0 0 12px}.business ul{margin-top:24px;padding-left:20px}.business li{margin:8px 0}.message{padding:96px 8vw;background:#f0e3cf;display:grid;grid-template-columns:.8fr 1.2fr;gap:62px}.message-body{font-size:17px}.signature{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:54px;margin:30px 0 0}.role{margin-top:-8px;color:#6f5a31}.profile{padding:96px 8vw;background:#fff}.profile dl{max-width:940px;border-top:1px solid rgba(23,19,16,.18)}.profile dl div{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid rgba(23,19,16,.18);padding:21px 0}.profile dt{color:#7b622d;font-weight:700}.profile dd{margin:0}.contact{padding:96px 8vw;background:#171310;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:54px}.tel{font-family:"Cormorant Garamond",serif;font-size:32px}.contact form{background:#fff;color:#171310;padding:38px}label{display:block;font-weight:700;margin-bottom:18px}input,textarea{width:100%;margin-top:8px;padding:13px;border:1px solid #ddd;background:#fbfaf7;font:inherit}button{width:100%;border:0;background:#cfa94c;color:#171310;padding:15px;font:inherit;font-weight:700;letter-spacing:.16em}small{display:block;margin-top:14px;color:#8a8174}footer{background:#0e0b09;color:#fff;text-align:center;padding:46px 6vw}footer p{font-family:"Cormorant Garamond",serif;font-size:30px;letter-spacing:.18em;margin:0 0 10px}@media(max-width:860px){.header{display:block}.header nav{overflow:auto;white-space:nowrap;margin-top:12px}.hero{grid-template-columns:1fr;background:linear-gradient(160deg,#16120f 0%,#2b2119 62%,#f9f4ec 62%);padding:74px 6vw}.hero:before{inset:18px}.business-grid,.message,.contact{grid-template-columns:1fr}.profile dl div{grid-template-columns:1fr;gap:8px}.buttons{flex-direction:column}.btn{text-align:center}.script{font-size:54px}}
.google-link{padding:86px 8vw;background:#f9f4ec;text-align:center;border-top:1px solid rgba(207,169,76,.35);border-bottom:1px solid rgba(207,169,76,.35)}
.google-link h2{font-size:clamp(34px,5vw,58px);line-height:1.25;letter-spacing:.06em;margin:14px 0 18px}
.google-link p:not(.kicker){font-size:17px;margin-bottom:28px}
.google-link .btn{display:inline-block}
