*{box-sizing:border-box}.bsgc-page{margin:0!important;background:#fff;color:#18322d}.gc{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.75}.gc a{text-decoration:none}.shell{width:min(1200px,92vw);margin:auto}.pr{text-align:center;padding:7px;background:#f6f6f3;color:#666;font-size:12px}header{height:76px;padding:0 4vw;display:flex;align-items:center;gap:30px;border-bottom:1px solid #e8ebe7;background:#fffc;backdrop-filter:blur(10px);position:sticky;top:32px;z-index:30}.brand{margin-right:auto;font:27px Georgia,serif;color:#126c59}.brand small{display:block;font:8px sans-serif;letter-spacing:.2em;color:#b78b35}nav{display:flex;gap:20px}nav a{font-size:14px;color:#23443c}.hcta,.maincta,.midcta a,.final a,.sticky a{background:linear-gradient(135deg,#ed586b,#ff7a83);color:white;border-radius:10px}.hcta{padding:12px 18px;font-weight:800}.hero{padding:65px 0 48px;background:linear-gradient(135deg,#fff,#f5fbf8)}.heroGrid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}.eyebrow,.sk{color:#137662;font-weight:900;font-size:12px;letter-spacing:.18em}.hero h1,.section h2,.signal h2,.final h2{font-family:Georgia,"Noto Serif JP",serif;font-weight:500;line-height:1.3}.hero h1{font-size:clamp(42px,5.2vw,70px);margin:10px 0 20px}.hero h1 em{font-style:normal;color:#08725c}.lead{font-size:17px}.facts{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.facts span{border:1px solid #dceae5;background:#fff;border-radius:999px;padding:8px 13px;font-size:12px}.facts b{color:#08725c;margin-right:4px}.maincta{display:inline-flex;flex-direction:column;min-width:340px;padding:16px 25px;text-align:center;box-shadow:0 12px 28px #ed586b33}.maincta b{font-size:18px}.note{font-size:11px;color:#777}.heroimg{position:relative}.heroimg img{width:100%;height:510px;object-fit:cover;border-radius:26px;box-shadow:0 20px 55px #0002}.heroimg div{position:absolute;right:18px;bottom:18px;width:130px;height:130px;border-radius:50%;background:#0b6d5ddd;color:#fff;display:flex;flex-direction:column;justify-content:center;text-align:center;font:18px Georgia,serif;letter-spacing:.12em}.heroimg small{font:8px sans-serif}.signal{padding:38px 0;background:#0d6959;color:#fff;text-align:center}.signal h2{font-size:30px}.signalGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.signalGrid article{padding:20px;background:#ffffff14;border:1px solid #ffffff33;border-radius:16px}.signalGrid b{font-size:38px;color:#f5d27d}.signalGrid span,.signalGrid em{display:block}.signalGrid em{font-style:normal;font-size:12px;opacity:.8}.section{padding:80px 0}.section h2{font-size:clamp(32px,4vw,50px);margin:6px 0 32px}.soft{background:#f5faf8}.reviewIntro{display:grid;grid-template-columns:270px 1fr;gap:38px;align-items:center}.grade{background:linear-gradient(145deg,#08725c,#0d9b7c);color:#fff;padding:32px;border-radius:22px;text-align:center}.grade b{display:block;font:100px/1 Georgia,serif}.grade small,.grade span{display:block}.reviewIntro h3{font-size:26px}.wideimg{width:100%;max-height:260px;object-fit:cover;border-radius:20px;margin-bottom:24px}.treatGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.treatGrid article,.priceGrid article{border:1px solid #dce8e3;background:#fff;border-radius:17px;padding:24px}.treatGrid h3{color:#08725c}.treatGrid p,.priceGrid p{font-size:13px;color:#5e6965}.priceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.priceGrid small{color:#a67d2c;font-weight:800}.priceGrid b{display:block;font-size:28px;color:#08725c}.warning{margin-top:22px;padding:22px 26px;border-left:5px solid #c69a42;background:#fff8e8}.dark{background:#143c34;color:#fff}.dark .sk{color:#9ce5d4}.clinicGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.clinicGrid article{background:#ffffff0d;border:1px solid #ffffff2c;border-radius:15px;padding:20px}.clinicGrid .focus{background:#fff;color:#18322d;border:2px solid #e3bb62}.clinicGrid small{color:#b48425;font-weight:900}.clinicGrid p{font-size:13px}.checkGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.checkGrid span{padding:18px;border:1px solid #dce8e3;border-radius:14px;background:#fff}.midcta{margin-top:28px;padding:28px 30px;background:linear-gradient(135deg,#e8f8f3,#fff3e3);border-radius:20px;display:flex;align-items:center;justify-content:space-between}.midcta h3{margin:2px 0;font-size:28px}.midcta a{padding:15px 22px;font-weight:800}.faq details{padding:18px 2px;border-bottom:1px solid #d9e2df}.faq summary{font-weight:800;cursor:pointer}.final{text-align:center;padding:75px 0;background:linear-gradient(135deg,#076754,#0c9276);color:#fff}.final h2{font-size:clamp(36px,5vw,58px)}.final a{display:inline-flex;gap:28px;background:#fff;color:#18322d;padding:18px 28px}.final a span{color:#e94f64;font-weight:800}.final small{display:block;margin-top:10px}footer{padding:36px 0 90px;background:#17211f;color:#ddd}footer b{font:26px Georgia,serif}footer p{font-size:12px}footer a{color:#8be1cc}.sticky{display:none}@media(max-width:900px){header{top:0;height:64px;padding:0 12px}nav{display:none}.brand{font-size:21px}.hcta{font-size:11px;padding:9px}.heroGrid{grid-template-columns:1fr}.heroimg{order:-1}.heroimg img{height:320px}.signalGrid{grid-template-columns:1fr}.reviewIntro{grid-template-columns:1fr}.treatGrid,.clinicGrid{grid-template-columns:1fr 1fr}.priceGrid{grid-template-columns:1fr}.checkGrid{grid-template-columns:1fr 1fr}.midcta{flex-direction:column;text-align:center;gap:16px}.sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:1px solid #ddd;padding:8px 10px;align-items:center;justify-content:space-between}.sticky a{padding:10px 18px;font-weight:800}}@media(max-width:560px){.hero h1{font-size:40px}.maincta{min-width:0;width:100%}.treatGrid,.clinicGrid{grid-template-columns:1fr}.section{padding:58px 0}}
/* v1.0.1 visual fixes */
.hero h1{font-size:clamp(38px,4.15vw,58px);letter-spacing:-.03em;word-break:keep-all;overflow-wrap:normal}
.hero h1 .hero-line1,.hero h1 .hero-line2{display:block;white-space:nowrap}
.clinic-wideimg{height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;background:#fff}
@media(max-width:1100px){
  .hero h1{font-size:clamp(34px,4vw,48px)}
}
@media(max-width:900px){
  .hero h1 .hero-line1,.hero h1 .hero-line2{white-space:normal}
  .clinic-wideimg{width:100%;height:auto!important}
}
@media(max-width:560px){
  .hero h1{font-size:36px}
}

/* v1.0.2 hero responsive fix */
.hero{overflow:hidden}
.heroGrid{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
  gap:28px!important;
}
.heroGrid>div{min-width:0}
.hero h1{
  font-size:clamp(32px,3.65vw,54px)!important;
  line-height:1.22!important;
  letter-spacing:-.045em!important;
  max-width:100%!important;
  overflow:visible!important;
}
.hero h1 .hero-line1,
.hero h1 .hero-line2{
  display:block!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:anywhere!important;
}
.heroimg{
  min-width:0!important;
  overflow:hidden!important;
  border-radius:24px;
}
.heroimg img{
  width:100%!important;
  height:auto!important;
  min-height:420px;
  max-height:500px;
  object-fit:cover!important;
  object-position:center!important;
}
@media (max-width:1180px){
  .shell{width:min(1160px,94vw)!important}
  .heroGrid{
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
    gap:22px!important;
  }
  .hero h1{font-size:clamp(30px,3.4vw,46px)!important}
  .lead{font-size:15px!important}
  .facts{gap:7px!important}
  .facts span{font-size:11px!important;padding:7px 10px!important}
}
@media (max-width:1024px){
  .hero{padding-top:42px!important}
  .heroGrid{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;
    gap:18px!important;
  }
  .hero h1{font-size:clamp(28px,3.25vw,40px)!important}
  .heroimg img{min-height:360px;max-height:430px}
  .maincta{min-width:0!important;width:100%!important}
}
@media (max-width:900px){
  .heroGrid{grid-template-columns:1fr!important}
  .heroimg{order:-1}
  .heroimg img{min-height:0;height:auto!important;max-height:none!important}
  .hero h1{font-size:clamp(34px,8vw,48px)!important}
  .hero h1 .hero-line1,.hero h1 .hero-line2{
    white-space:normal!important;
  }
}

/* v1.0.3 final fit polish */
.hero .shell{
  padding-left:18px!important;
  padding-right:18px!important;
}
.heroGrid{
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)!important;
  gap:22px!important;
}
.hero h1{
  font-size:clamp(28px,3.15vw,44px)!important;
  line-height:1.2!important;
  letter-spacing:-.04em!important;
  padding-left:2px!important;
}
.hero .lead{
  max-width:96%!important;
}
.heroimg img{
  width:100%!important;
  max-width:100%!important;
  display:block!important;
}
#clinic .shell{
  overflow:hidden!important;
}
#clinic .clinic-wideimg{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1100px){
  .hero .shell{
    width:96vw!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .heroGrid{
    grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;
    gap:18px!important;
  }
  .hero h1{
    font-size:clamp(27px,3vw,39px)!important;
  }
}
@media(max-width:980px){
  .hero .shell{
    padding-left:24px!important;
    padding-right:24px!important;
  }
  .heroGrid{
    grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)!important;
    gap:16px!important;
  }
  .hero h1{
    font-size:clamp(25px,2.9vw,35px)!important;
  }
}
@media(max-width:900px){
  .hero .shell{
    width:min(92vw,720px)!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .heroGrid{grid-template-columns:1fr!important}
  .hero h1{font-size:clamp(34px,8vw,46px)!important}
}

/* v1.0.4 final container centering fix */
.gc .shell{
  width:min(1180px, calc(100vw - 48px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.hero .shell{
  width:min(1180px, calc(100vw - 64px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.heroGrid{
  width:100%!important;
  margin:0!important;
}
.heroGrid>div{
  min-width:0!important;
}
#clinic .shell{
  width:min(1180px, calc(100vw - 64px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:visible!important;
}
#clinic .clinic-wideimg{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  display:block!important;
  margin:0 auto 24px!important;
  object-fit:contain!important;
}
@media(max-width:1100px){
  .gc .shell,
  .hero .shell,
  #clinic .shell{
    width:calc(100vw - 56px)!important;
  }
}
@media(max-width:980px){
  .gc .shell,
  .hero .shell,
  #clinic .shell{
    width:calc(100vw - 48px)!important;
  }
}
@media(max-width:900px){
  .gc .shell,
  .hero .shell,
  #clinic .shell{
    width:min(92vw,720px)!important;
  }
}
