*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--gold:#b9975b;--gold-deep:#94753d;--gold-light:#d9c08a;--charcoal:#26221d;--soft:#6e675e;--ivory:#faf8f4;--marble:#f6f2ea;--line:#ded3c2;--dark:#17130f;--white:#fff}
html{scroll-behavior:smooth}
body{font-family:'Noto Sans JP',sans-serif;color:var(--charcoal);background:var(--ivory);line-height:1.9;letter-spacing:.04em}
a{color:inherit}
.marble{background:linear-gradient(135deg,#fff 0%,#f4efe7 42%,#fff 68%,#ebe3d4 100%)}
.black{background:radial-gradient(circle at 20% 10%,rgba(185,151,91,.2),transparent 28%),linear-gradient(135deg,#17130f,#2a241f 58%,#111)}
header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:22px 42px;background:rgba(250,248,244,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(185,151,91,.22)}
.logo{font-family:'Cormorant Garamond',serif;font-size:1.42rem;letter-spacing:.1em;text-decoration:none}.logo span{display:block;font-family:'Jost',sans-serif;font-size:.55rem;color:var(--gold-deep);letter-spacing:.24em;margin-top:-4px}
nav{display:flex;gap:24px;align-items:center}nav a{font-family:'Jost',sans-serif;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--charcoal)}.nav-cta{padding:10px 18px;border:1px solid var(--gold);color:var(--gold-deep)}
.page-hero{min-height:62vh;padding:150px 24px 86px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:9%;border:1px solid rgba(185,151,91,.25)}.hero-inner{position:relative;z-index:1;max-width:880px}.eyebrow{font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.46em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:22px}.page-hero h1{font-family:'Noto Serif JP',serif;font-size:clamp(2rem,5vw,4.1rem);font-weight:300;letter-spacing:.12em;line-height:1.55}.lead{max-width:760px;margin:28px auto 0;font-size:.92rem;font-weight:300;color:var(--soft);line-height:2.35}
section{padding:92px 24px}.wrap{max-width:1040px;margin:0 auto}.narrow{max-width:820px;margin:0 auto}.sec-head{text-align:center;margin-bottom:56px}.sec-en{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.1rem);font-style:italic;font-weight:300}.sec-jp{font-family:'Jost',sans-serif;font-size:.64rem;letter-spacing:.36em;text-transform:uppercase;color:var(--gold-deep)}.sec-line{width:1px;height:42px;background:var(--gold);margin:22px auto 0}
.body{font-size:.9rem;font-weight:300;color:var(--soft);line-height:2.25;margin-bottom:18px}.body strong{color:var(--charcoal);font-weight:500}
.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.figure{min-height:360px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--gold);position:relative;overflow:hidden}.figure::before{content:'';position:absolute;inset:16px;border:1px solid rgba(185,151,91,.35);z-index:2}.figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.ph{font-family:'Jost',sans-serif;font-size:.68rem;letter-spacing:.16em;text-align:center;line-height:1.8;opacity:.7;padding:20px}
.sub{font-family:'Noto Serif JP',serif;font-size:1.24rem;font-weight:400;letter-spacing:.08em;margin:34px 0 16px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--white);border:1px solid var(--line);padding:28px}.card .num{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--gold-deep);font-style:italic}.card h3{font-family:'Noto Serif JP',serif;font-weight:400;font-size:1rem;letter-spacing:.08em;margin:8px 0 10px}.card p,.card li{font-size:.8rem;font-weight:300;color:var(--soft);line-height:2}
.points{list-style:none;margin:14px 0}.points li{position:relative;padding-left:22px;font-size:.86rem;font-weight:300;color:var(--soft);line-height:2.15;margin-bottom:8px}.points li::before{content:'';position:absolute;left:0;top:.92em;width:8px;height:8px;border:1px solid var(--gold);transform:rotate(45deg)}
.flow{display:grid;gap:14px}.flow-step{display:grid;grid-template-columns:92px 1fr;gap:24px;background:var(--white);border:1px solid var(--line);padding:24px}.step-no{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--gold-deep);font-style:italic}.flow-step h3{font-family:'Noto Serif JP',serif;font-size:1rem;font-weight:400;margin-bottom:8px}.flow-step p{font-size:.82rem;font-weight:300;color:var(--soft);line-height:2}
.notice{background:rgba(255,255,255,.82);border:1px solid var(--line);border-left:3px solid var(--gold);padding:28px;margin-top:28px}.notice p,.notice li{font-size:.8rem;font-weight:300;color:var(--soft);line-height:2}.notice ul{padding-left:1.2em}.notice strong{color:var(--charcoal)}
.legal{background:var(--white);border:1px solid var(--line);padding:34px}.legal h3{font-family:'Noto Serif JP',serif;font-size:1.08rem;font-weight:400;margin-bottom:14px}.legal table{width:100%;border-collapse:collapse;margin:20px 0}.legal th{background:var(--dark);color:var(--ivory);font-size:.72rem;font-weight:400;padding:12px}.legal td{border-bottom:1px solid var(--line);font-size:.8rem;color:var(--soft);padding:12px}
.faq{display:grid;gap:12px}.faq-item{background:var(--white);border:1px solid var(--line);padding:22px}.q{font-family:'Noto Serif JP',serif;font-size:.95rem;color:var(--charcoal);margin-bottom:8px}.a{font-size:.8rem;font-weight:300;color:var(--soft);line-height:2}
.cta{padding:86px 24px;text-align:center;color:var(--ivory)}.cta h2{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-style:italic;font-weight:300}.cta p{font-size:.82rem;font-weight:300;opacity:.8;margin:10px 0 28px}.btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;min-width:220px;padding:15px 30px;border:1px solid var(--gold-light);font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none}.btn.fill{background:var(--gold);color:var(--dark)}
footer{background:#12100e;color:var(--ivory);text-align:center;padding:44px 24px}.f-logo{font-family:'Cormorant Garamond',serif;font-size:1.25rem;letter-spacing:.1em}.f-links{margin-top:24px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.f-links a{font-size:.72rem;color:rgba(250,248,244,.68);text-decoration:none}
.fade{opacity:1}
@media(max-width:860px){header{padding:16px 20px}nav{display:none}.page-hero{min-height:auto;padding-top:128px}.two-col,.cards{grid-template-columns:1fr}.flow-step{grid-template-columns:1fr;gap:8px}section{padding:72px 20px}.figure{min-height:260px}.btn{width:100%;max-width:320px}.legal{padding:24px;overflow-x:auto}}
