:root{--ink:#0b1720;--ink2:#142633;--gold:#c7a86b;--paper:#f4f4f1;--white:#fff;--muted:#66717a;--line:#d9dddf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans JP",sans-serif;background:var(--paper);font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}.site-header{height:92px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--ink);color:var(--gold);font-family:"Noto Serif JP",serif;font-size:24px}.brand b{display:block;font-size:16px;letter-spacing:.08em}.brand small{display:block;font-size:9px;letter-spacing:.15em;color:#69757d}.site-header nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.site-header nav a{padding:10px 0}.site-header nav a:not(.nav-contact):hover{color:#9a7c43}.nav-contact{padding:13px 22px!important;background:var(--ink);color:#fff}.menu-button{display:none}.hero{height:calc(100vh - 92px);min-height:650px;max-height:900px;position:relative;color:#fff;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,22,.88) 0%,rgba(5,15,22,.55) 44%,rgba(5,15,22,.08) 75%)}.hero-content{position:absolute;left:8vw;top:50%;transform:translateY(-52%);max-width:730px}.eyebrow,.kicker{font-size:12px;letter-spacing:.28em;font-weight:700;color:var(--gold);margin:0 0 24px}.hero h1{font-family:"Noto Serif JP",serif;font-size:clamp(52px,6.2vw,94px);line-height:1.25;letter-spacing:.04em;margin:0 0 28px;font-weight:500}.hero h1 em{font-style:normal;color:#d8bc83}.hero-copy{font-size:17px;letter-spacing:.05em;line-height:2;margin:0 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:58px;padding:0 25px;display:flex;align-items:center;justify-content:center;font-weight:600;letter-spacing:.04em}.button.gold{background:var(--gold);color:var(--ink)}.button.ghost{border:1px solid rgba(255,255,255,.55)}.button span{font-size:13px;margin-left:15px}.license-strip{position:absolute;right:0;bottom:0;background:#fff;color:var(--ink);padding:18px 4vw 18px 32px;display:flex;align-items:center;gap:22px}.license-strip span{font-size:12px;color:#6e757a}.license-strip b{font-size:15px}.section{max-width:1240px;margin:auto;padding:120px 40px}.intro{display:grid;grid-template-columns:1fr 2.1fr;gap:60px}.section-label{font-size:11px;letter-spacing:.25em;color:#859098}.intro h2,.section-heading h2,.strength-copy h2,.contact h2{font-family:"Noto Serif JP",serif;font-size:clamp(35px,4vw,56px);line-height:1.5;font-weight:500;margin:0}.intro p{max-width:720px;margin:34px 0 0;color:#4f5a61;line-height:2.2}.services{padding-top:40px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:54px}.section-heading .kicker{margin-bottom:8px}.section-heading>p{max-width:500px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{background:#fff;padding:32px 25px 36px;min-height:340px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.25s}.service-grid article:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(12,27,37,.09);z-index:2}.service-grid article>span{position:absolute;right:20px;top:18px;color:#a3aaae;font-size:12px}.icon{width:56px;height:56px;border:1px solid var(--gold);color:#9d7e44;display:grid;place-items:center;font-family:"Noto Serif JP",serif;font-size:20px;margin:34px 0 46px}.service-grid h3{font-size:19px;margin:0 0 18px}.service-grid p{font-size:14px;color:var(--muted);line-height:2;margin:0}.strengths{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff;min-height:680px}.strength-image{background:url('osaka-property.png') center/cover no-repeat;filter:saturate(.6);min-height:500px}.strength-copy{padding:90px clamp(40px,7vw,110px)}.strength-copy h2{font-size:clamp(32px,3.5vw,50px)}.strength-copy ol{list-style:none;margin:50px 0 0;padding:0}.strength-copy li{display:grid;grid-template-columns:45px 1fr;gap:18px;padding:23px 0;border-top:1px solid rgba(255,255,255,.16)}.strength-copy li>b{color:var(--gold);font-size:13px}.strength-copy strong{display:block;font-size:17px;margin-bottom:6px}.strength-copy li span{font-size:14px;color:#bac3c8}.company-wrap{display:grid;grid-template-columns:1fr 320px;gap:70px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--line);padding:19px 0}.company dt{font-size:13px;color:#707c84}.company dd{margin:0;font-size:15px}.company aside{background:var(--ink);color:#fff;padding:40px;min-height:340px;display:flex;flex-direction:column;justify-content:space-between}.company aside span{font-family:serif;font-size:30px;line-height:1.25;color:var(--gold)}.company aside b{font-size:20px}.company aside small{color:#aeb8bd}.contact{padding:100px max(6vw,30px);background:#d2b374;color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact .kicker{color:#604d29}.contact p{margin-top:18px}.contact-links{display:flex;flex-direction:column;justify-content:center}.contact-links a{position:relative;padding:24px 50px 24px 0;border-top:1px solid rgba(11,23,32,.38)}.contact-links a:last-child{border-bottom:1px solid rgba(11,23,32,.38)}.contact-links small{display:block;font-size:12px}.contact-links b{font-size:clamp(17px,2.2vw,29px);letter-spacing:.03em}.contact-links span{position:absolute;right:5px;top:50%;transform:translateY(-50%);font-size:24px}footer{background:#071119;color:#d4dadd;padding:60px 6vw 35px;display:grid;grid-template-columns:1.2fr 1fr auto;align-items:end;gap:35px;font-size:12px}.footer-brand .brand-mark{background:#c7a86b;color:#071119}.footer-brand b{color:#fff}.copyright{color:#7f8a91;text-align:right}@media(max-width:900px){.site-header{height:74px;padding:0 20px}.site-header nav{position:absolute;top:74px;left:0;right:0;background:#fff;padding:18px 24px 28px;display:none;flex-direction:column;align-items:stretch;gap:4px;box-shadow:0 15px 30px rgba(0,0,0,.1)}.site-header.open nav{display:flex}.menu-button{display:block;width:42px;height:42px;border:0;background:transparent}.menu-button span{display:block;width:24px;height:2px;background:var(--ink);margin:7px auto}.hero{height:calc(100svh - 74px);min-height:650px}.hero-content{left:25px;right:25px}.hero-copy br{display:none}.license-strip{left:0;right:0;justify-content:center;padding:14px;gap:10px}.intro,.section-heading,.strengths,.company-wrap,.contact{grid-template-columns:1fr}.section{padding:80px 24px}.intro{gap:20px}.section-heading{align-items:start;margin-bottom:35px}.service-grid{grid-template-columns:1fr 1fr}.strength-copy{padding:70px 28px}.strength-image{min-height:440px}.company-wrap{gap:35px}.company aside{min-height:280px}.contact{gap:35px;padding:70px 25px}footer{grid-template-columns:1fr}.copyright{text-align:left}}@media(max-width:560px){.brand b{font-size:13px}.brand small{font-size:7px}.brand-mark{width:37px;height:37px}.hero h1{font-size:47px}.hero-copy{font-size:15px}.hero-actions{display:grid}.button{width:100%}.license-strip{font-size:12px;flex-direction:column;gap:0}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:280px}.icon{margin:18px 0 28px}.company dl>div{grid-template-columns:1fr;gap:5px}.company dt{font-weight:700}.contact-links b{font-size:17px}}
