/* Pearl light, spacious typography and restrained champagne details. */
:root{--ink:#3e4654;--gold:#a29576;--muted:#667080;--line:#e3e0e7;--paper:#fffefe}
body{background:#fffefe;color:var(--ink)}h1,h2{font-weight:400;letter-spacing:.12em}h2{font-size:clamp(30px,3.4vw,48px)}.eyebrow{color:#8d7c73;font-size:10px;letter-spacing:.28em}.demo-bar{background:#f4f1f4;color:#766d79;font-size:9px;padding:3px 12px}.site-header{background:#fffefbd9;border:0;backdrop-filter:blur(20px)}.header-inner{height:106px;width:92%}.brand-mark{border-color:#c9bea7;background:linear-gradient(145deg,#f9fcff,#fff7f9);color:#a49776}.brand-text strong{font-weight:400;letter-spacing:.1em}.brand-text small{color:#948772;letter-spacing:.22em}.site-header nav{background:#ffffffba;border:1px solid #fff;padding:15px 22px;border-radius:40px;gap:20px}.btn{background:linear-gradient(110deg,#b5708d,#c38c82);border:1px solid #ffffff8c;border-radius:60px;box-shadow:0 7px 22px #be9caa18;font-weight:500;letter-spacing:.06em;min-height:56px}.btn:hover{background:linear-gradient(110deg,#a55f7d,#b37970);box-shadow:0 9px 26px #be9caa35}.btn span{color:white;font-size:19px}.header-book{font-size:11px;min-height:49px;padding:12px 20px}
.hero{height:760px;min-height:620px;background:#f8f8fc}.hero-image{left:26%;width:74%;height:110%;object-position:65% center;opacity:.86;mask-image:linear-gradient(90deg,transparent,#000 35%)}.hero-shade{background:radial-gradient(ellipse at 23% 72%,#efc7e77a,transparent 45%),radial-gradient(ellipse at 6% 20%,#d2eef8cc,transparent 40%),linear-gradient(90deg,#fffdfef2 3%,#fffdfec4 35%,#ffffff05 75%);z-index:1}.hero:after{content:'';position:absolute;inset:-20%;background:conic-gradient(from 30deg at 50% 50%,transparent 0 18%,#ffdef350 22%,transparent 29% 45%,#cfefff60 50%,transparent 58% 80%,#fff2d835 85%,transparent 92%);filter:blur(35px);pointer-events:none;z-index:1;animation:pearl-drift 22s ease-in-out infinite alternate}.hero-content{padding-top:118px;z-index:3}.hero h1{font-size:clamp(40px,4.6vw,66px);line-height:1.85;margin-bottom:26px;color:#434351}.hero .eyebrow{letter-spacing:.26em;color:#8f7c87}.hero-lead{font-size:14px;line-height:2.3;letter-spacing:.11em;color:#60616e}.hero .btn{padding:17px 30px;min-width:275px}.hero-small{font-size:10px;color:#777181;letter-spacing:.08em}.hero-bottom{z-index:4;bottom:22px;color:#777280;font-size:9px}.hero-bottom span:last-child{background:#ffffffbd;border-radius:20px;padding:4px 12px}.hero-number{display:none}.hero-english{position:absolute;left:4%;bottom:35px;z-index:2;white-space:nowrap;font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(70px,12.2vw,180px);line-height:1;color:#ffffffc9;letter-spacing:-.04em;pointer-events:none;text-shadow:0 1px 20px #c1b5cc14}.hero-seal{position:absolute;right:6%;bottom:145px;z-index:3;display:grid;place-content:center;gap:6px;text-align:center;width:140px;height:140px;border:1px solid #ffffffdd;border-radius:50%;background:#ffffff7d;backdrop-filter:blur(12px);color:#8e7b86;box-shadow:0 15px 50px #6257770b}.hero-seal strong{font-family:Georgia,serif;font-size:32px;font-weight:400;font-style:italic}.hero-seal small{font-size:8px;letter-spacing:.18em}
.values-strip{background:#fff;max-width:1200px;width:88%;padding:34px 0;color:#78717c;border-bottom:1px solid #ece7eb;letter-spacing:.07em}.values-strip span:before{color:#b5a282}.about{position:relative;background:radial-gradient(ellipse at 85% 30%,#f9e5f0a3,transparent 48%),radial-gradient(ellipse at 6% 85%,#dfeffa85,transparent 38%),#fff;padding-top:140px!important;padding-bottom:140px!important}.about-grid{gap:12%;grid-template-columns:1fr 1fr}.about .photo-card img{border-radius:180px 180px 8px 8px;height:530px;box-shadow:0 25px 65px #6e6f9012;object-position:53% center}.photo-tag{border-radius:40px;background:#fffffff2;color:#968177;border:1px solid #eee4e5}.text-link{border-color:#cbbbaf;font-size:12px}.about-copy p:not(.eyebrow){font-size:13px;line-height:2.65;letter-spacing:.035em;color:#6f6c78}.section-head{margin-bottom:65px}.section-head .muted{letter-spacing:.08em}.section-head h2{line-height:1.85}.treatment{position:relative;background:radial-gradient(ellipse at 5% 15%,#ddecfac7,transparent 50%),radial-gradient(ellipse at 95% 75%,#f7dcebbd,transparent 55%),#fcfbfe;border-radius:100px 100px 0 0}.model-panel{border:1px solid #fff;border-radius:220px 220px 26px 26px;box-shadow:0 25px 80px #a9a3bb1c}.model-label button{border-color:#e3d3df;font-size:10px}.treatment-item{border-color:#dfdbe6}.treatment-item summary{padding:25px 0}.treatment-item strong{font-family:'Noto Serif JP',serif;font-weight:400;letter-spacing:.05em}.treatment-item small{font-size:8px;color:#938b9d;letter-spacing:.16em}.treat-no{color:#ae9785;font-size:20px}.treatment-item p{font-size:12px;line-height:2.2}.space{background:radial-gradient(ellipse at 10% 70%,#f8dfeb8c,transparent 55%),#fff;padding-top:125px!important;padding-bottom:120px!important}.space-photo{width:88%;max-width:1350px}.space-photo img{border-radius:10px 100px 10px 10px;height:500px}.space-title{margin-bottom:50px}.space-title p:last-child{font-size:12px;line-height:2.5}.price{background:linear-gradient(115deg,#edf5fc,#f5f1fa 55%,#fbedf5)}.price-table{border-radius:18px;border:1px solid #fff;background:#ffffff91;box-shadow:0 18px 50px #8290ad0a}th{background:#ffffff90;color:#756e7d;font-size:12px}td,th{padding:24px 28px;border-color:#e6e2eb}td:last-child{font-family:Georgia,serif;font-size:18px;color:#9d7389}.price-note{text-align:center}.doctor{background:radial-gradient(ellipse at 90% 65%,#e1f2fc80,transparent 55%),#fff}.doctor-card{border-radius:120px 120px 15px 15px;padding:55px 30px 35px;text-align:center;background:linear-gradient(150deg,#fff5fa,#f2f8fe);border:1px solid #f0e7ed}.doctor-photo{font-family:Georgia,serif;font-style:italic;font-size:40px;color:#b29a8b;margin:0 auto 30px;display:grid;place-items:center;width:80px;height:80px;border:1px solid #d5c4b3;border-radius:50%}.doctor-card h3{font-family:'Noto Serif JP',serif;font-size:18px}.doctor-card p{font-size:12px;line-height:2.3}.role{font-size:8px!important;color:#9a817d!important}.access{background:linear-gradient(120deg,#f4f8fe,#fdf2f8)}.access-map{border-radius:140px 140px 12px 12px;background:repeating-linear-gradient(35deg,#eaf2f8,#eaf2f8 40px,#f8eef5 41px,#f8eef5 70px);border:1px solid #fff}.faq{background:#fff}.faq-q{font-family:'Noto Serif JP',serif;font-size:15px;padding-top:28px;padding-bottom:28px}.faq-q:after{color:#b692a7}.reserve{position:relative;overflow:hidden;background:radial-gradient(ellipse at 10% 20%,#c4e5f5a3,transparent 55%),radial-gradient(ellipse at 85% 90%,#f0c5dfc7,transparent 55%),#f7f3fa;padding:110px 0!important}.reserve:before{content:'Your smile, our care.';position:absolute;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(60px,10vw,140px);color:#ffffffb0;bottom:-20px;left:5%;white-space:nowrap;pointer-events:none}.reserve-inner{position:relative;z-index:1}.reserve .eyebrow{color:#a18294}.demo-reservation{border-radius:60px;border-color:#ffffffc9;background:#ffffff9c;font-size:12px!important}.reserve .btn-on-accent{border-radius:60px;border-color:#fff;background:#ffffff9c;box-shadow:none;font-size:12px}.site-footer{background:#fffdfd;padding-top:70px}.mobile-book{background:#f1f8fd}.mobile-book a:last-child{background:linear-gradient(110deg,#b5708d,#c38c82)}
@keyframes pearl-drift{from{transform:translate(-2%,-2%) rotate(-7deg)}to{transform:translate(3%,3%) rotate(8deg)}}
@media(max-width:1100px){.header-inner{height:88px}.site-header nav{padding:12px 15px;gap:13px}.hero-content{padding-top:100px}.hero-seal{right:5%;width:115px;height:115px;bottom:135px}.about-grid{gap:7%}.about .photo-card img{height:470px}}
@media(max-width:760px){.header-inner{height:76px;width:90%}.brand-text strong{font-size:12px}.brand-text small{font-size:6px}.menu-toggle{border-color:#d9c5d2;border-radius:50%;background:#ffffffa8;font-size:18px}.site-header nav{top:76px;padding:20px 6%;border-radius:0 0 25px 25px;background:#fffafd}.site-header nav a{padding:12px}.hero{height:740px;min-height:0;max-height:none}.hero-image{left:5%;width:95%;object-position:64% center;opacity:.63;mask-image:linear-gradient(90deg,transparent,#000 45%)}.hero-shade{background:radial-gradient(ellipse at 0% 50%,#cdeafa99,transparent 65%),radial-gradient(ellipse at 85% 65%,#f9d4e966,transparent 50%),linear-gradient(90deg,#fffdfef0,#fffdfeb3 60%,#ffffff22)}.hero-content{padding-top:85px}.hero h1{font-size:36px;line-height:1.95;letter-spacing:.08em}.hero .eyebrow{font-size:8px;letter-spacing:.15em}.hero-lead{font-size:12px;line-height:2.4}.hero .btn{min-width:250px;font-size:11px;padding:16px 24px}.hero-small{font-size:9px}.hero-english{left:-6%;font-size:76px;bottom:73px}.hero-seal{width:85px;height:85px;bottom:145px;right:7%;gap:2px}.hero-seal strong{font-size:22px}.hero-seal small{font-size:6px}.hero-bottom{font-size:7px;left:5%;right:5%;bottom:23px}.values-strip{width:90%;font-size:8px;gap:10px;padding:25px 0}.about{padding:75px 0!important}.about-grid{grid-template-columns:1fr;gap:45px}.about .photo-card{width:90%;margin:auto}.about .photo-card img{height:auto;aspect-ratio:1/1.12;border-radius:150px 150px 8px 8px}.about-copy{padding:0 4%}.about-copy p:not(.eyebrow){font-size:13px}h2{font-size:29px}.treatment{border-radius:48px 48px 0 0}.section-head{margin-bottom:36px}.treatment-item summary{padding:21px 0}.treatment-item strong{font-size:16px}.space{padding:75px 0!important}.space-photo img{height:330px;border-radius:8px 60px 8px 8px}.space-title{margin-bottom:30px}.price-table td,.price-table th{padding:17px 16px}.price-table td:last-child{font-size:16px}.doctor-card{border-radius:80px 80px 15px 15px;padding-top:35px}.doctor-photo{float:none;width:60px;height:60px;font-size:30px;margin-bottom:22px}.access-map{border-radius:90px 90px 12px 12px}.faq-q{font-size:13px}.reserve{padding:75px 0!important}.reserve h2{font-size:25px}.reserve:before{font-size:65px;bottom:10px}.reserve p{font-size:12px}.demo-reservation{padding:17px 20px;font-size:10px!important}.site-footer{padding-bottom:100px}.mobile-book a{font-size:11px}.hero-actions{gap:15px}}
@media(prefers-reduced-motion:reduce){.hero:after{animation:none}}
.clinic-logo{width:78px;height:78px;object-fit:contain;flex-shrink:0;border-radius:5px}.site-footer .brand{flex-direction:column}.site-footer .clinic-logo{width:230px;height:230px}.site-footer .brand-text{display:none}@media(max-width:760px){.clinic-logo{width:54px;height:54px}.site-header .brand{gap:8px}.site-header .brand-text strong{font-size:12px}.site-footer .clinic-logo{width:210px;height:210px}}

.doctor-card h3{margin-bottom:6px}.doctor-card .doctor-name-en{font-size:12px;letter-spacing:.16em;color:var(--muted);margin:0 0 12px}
.clinic-news{padding:clamp(40px,5vw,80px) 0;background:linear-gradient(115deg,#fcf5f8,#f2f9fc)}.clinic-news .wrap{max-width:940px}.clinic-news h2{margin-bottom:20px}.clinic-news article{padding:16px 0;border-top:1px solid #d9dce0;overflow-wrap:anywhere}.clinic-news article small{color:#79566b}.clinic-news article h3{margin:4px 0}.clinic-news article p{white-space:pre-line;margin:0}
