
:root{--navy:#10273d;--ink:#1c2d3d;--muted:#718092;--paper:#fbfaf7;--line:#e8e5df;--rose:#a96f6b;--blue:#668496;--gold:#a98a5d;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.8}
a{color:inherit}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.header{position:sticky;top:0;z-index:100;background:rgba(251,250,247,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,39,61,.08)}
.header-in{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--navy)}.logo-jp{font-family:serif;font-size:29px;letter-spacing:.1em}.logo-en{font-family:serif;font-size:14px;letter-spacing:.3em;color:#7d8997}
.nav{display:flex;gap:24px;align-items:center}.nav a{text-decoration:none;font-size:13px;letter-spacing:.08em}.nav .contact-btn{padding:10px 17px;border-radius:999px;background:var(--navy);color:#fff}
.hero{min-height:690px;display:grid;place-items:center;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(169,138,93,.16);border-radius:50%}.hero:before{width:430px;height:430px;right:-160px;top:70px}.hero:after{width:220px;height:220px;left:-90px;bottom:60px}
.hero-in{text-align:center;position:relative;z-index:1}.kicker{font-size:12px;letter-spacing:.42em;color:#71849a;margin-bottom:28px}.hero h1{font-family:serif;color:var(--navy);font-size:clamp(43px,7vw,78px);line-height:1.35;font-weight:500;letter-spacing:.03em;margin:0 0 26px}.hero p{color:var(--muted);font-size:16px;line-height:2.15;margin:auto;max-width:710px}.hero-actions{margin-top:36px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:13px 24px;border-radius:999px;text-decoration:none;font-weight:700;font-size:14px}.btn-primary{background:var(--navy);color:white}.btn-secondary{border:1px solid #cfd5d8;background:#fff}
.brand-split{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:100px}.brand-card{border:1px solid var(--line);border-radius:32px;padding:48px;background:rgba(255,255,255,.75);position:relative;overflow:hidden}.brand-card:after{position:absolute;right:-8px;bottom:-35px;font-size:100px;font-family:serif;opacity:.035}.brand-card.letter:after{content:"LETTER"}.brand-card.tech:after{content:"TECH"}.label{font-size:11px;letter-spacing:.3em;margin-bottom:15px}.letter .label{color:var(--rose)}.tech .label{color:var(--blue)}.brand-card h2,.section-head h2{font-family:serif;color:var(--navy);font-weight:500;font-size:36px;margin:0 0 16px}.brand-card p{color:var(--muted);margin:0 0 24px}.text-link{text-decoration:none;font-weight:700;border-bottom:1px solid}
.section{padding:105px 0}.section.alt{background:#f4f2ed}.section-head{text-align:center;margin-bottom:46px}.section-head p{max-width:650px;margin:0 auto;color:var(--muted)}.section-tag{font-size:11px;letter-spacing:.32em;color:#8c7960;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:white;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 18px 50px rgba(25,37,50,.04);transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:0 24px 65px rgba(25,37,50,.09)}.card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.card-body{padding:25px}.card h3{font-family:serif;color:var(--navy);font-size:22px;margin:0 0 10px}.card p{color:var(--muted);font-size:14px;margin:0 0 15px}.price{font-weight:800;color:var(--ink)!important;font-size:17px!important}.subprice{font-size:12px!important}
.future{grid-column:span 2}.wax{grid-column:span 1}.note{margin-top:28px;padding:24px 27px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.72);color:var(--muted);font-size:13px}.note strong{color:var(--ink)}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{padding:25px;background:white;border:1px solid var(--line);border-radius:22px}.step b{display:block;font-family:serif;color:#a98a5d;font-size:26px;margin-bottom:8px}.step strong{display:block;color:var(--navy);margin-bottom:7px}.step span{font-size:13px;color:var(--muted)}
.contact-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start}.contact-copy h2{font-family:serif;font-size:38px;color:var(--navy);font-weight:500;margin:0 0 15px}.contact-copy p{color:var(--muted)}form{background:white;border:1px solid var(--line);border-radius:28px;padding:30px}.tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}.tab{border:1px solid #d9dddf;background:#fff;border-radius:999px;padding:9px 16px;cursor:pointer}.tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}label{display:block;font-size:12px;font-weight:700;margin:15px 0 6px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #d9dddf;border-radius:12px;background:#fff;font:inherit}textarea{min-height:150px;resize:vertical}.submit{width:100%;border:0;border-radius:999px;padding:14px;background:var(--navy);color:white;font-weight:800;margin-top:18px;cursor:pointer}
footer{padding:40px 0;border-top:1px solid var(--line);font-size:12px;color:#85909a}.footer-in{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-links{display:flex;gap:18px}.footer-links a{text-decoration:none}
.reveal{opacity:0;transform:translateY(16px);transition:.6s}.reveal.show{opacity:1;transform:none}
@media(max-width:800px){.nav a:not(.contact-btn){display:none}.hero{min-height:610px}.brand-split,.contact-wrap{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.future,.wax{grid-column:auto}.flow{grid-template-columns:1fr 1fr}.brand-card{padding:32px}.section{padding:78px 0}}
@media(max-width:520px){.wrap{width:min(100% - 28px,1120px)}.header-in{height:68px}.logo-jp{font-size:24px}.logo-en{font-size:11px}.hero h1{font-size:45px}.hero p{font-size:14px}.flow{grid-template-columns:1fr}.section-head h2{font-size:31px}form{padding:22px}}
