:root{
  --clear-blue:#48a6ba;
  --clear-blue-deep:#247f93;
  --clear-ink:#19363d;
  --clear-muted:#738286;
  --clear-line:rgba(25,54,61,.12);
  --clear-mist:#f2fafc;
}
/* Shared navigation: keep index identical to the blog listing, even when legacy home styles exist. */
body.ysl-shared-nav-enabled .ysl-global-actions>a.ysl-shop,
body.ysl-shared-nav-enabled .ysl-global-actions>a.ysl-rental{
  background:#48a6ba!important;
  border-color:rgba(255,255,255,.82)!important;
  color:#fff!important;
}
body.ysl-shared-nav-enabled .ysl-global-actions>a.ysl-shop:hover,
body.ysl-shared-nav-enabled .ysl-global-actions>a.ysl-rental:hover{background:#247f93!important}
body.ysl-shared-nav-enabled .ysl-global-actions svg.ysl-orbit{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.ysl-shared-nav-enabled .ysl-global-menu-button span,
body.ysl-shared-nav-enabled .ysl-global-menu-button::before,
body.ysl-shared-nav-enabled .ysl-global-menu-button::after{background:#236d7d!important}
html{scroll-behavior:smooth}
body{background:#fff;color:var(--clear-ink);font-family:"Noto Serif JP","Yu Mincho",serif}
body>header{display:none!important}
.pain-strip,#voice,#start,#story,#merit,#flow{display:none!important}
.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.sec-eyebrow{color:var(--clear-blue-deep)!important;font:500 10px/1.4 Arial,sans-serif!important;letter-spacing:.34em!important}
.sec-title{color:var(--clear-ink)!important;font-weight:400!important;line-height:1.65!important;letter-spacing:.09em!important}
.bar{width:32px!important;height:1px!important;background:var(--clear-blue)!important;opacity:.75}

#hero{min-height:820px;display:grid;grid-template-columns:minmax(440px,48%) 1fr;background:#fff}
.hero-text{padding:clamp(120px,13vw,190px) clamp(42px,7vw,110px) 110px!important;background:linear-gradient(132deg,#fff 0%,#f6fbfc 72%,rgba(72,166,186,.09) 100%)}
.hero-eyebrow{color:var(--clear-blue-deep)!important;font:500 10px/1.4 Arial,sans-serif!important;letter-spacing:.34em!important}
.hero-h1{margin-top:32px!important;color:var(--clear-ink)!important;font-size:clamp(36px,4.4vw,68px)!important;font-weight:400!important;line-height:1.55!important;letter-spacing:.08em!important}
.hero-h1 em{color:var(--clear-blue-deep)!important;font-style:normal!important}
.hero-sub{max-width:520px;margin-top:36px!important;color:var(--clear-muted)!important;font-size:13px!important;line-height:2.2!important}
.hero-sub strong{color:var(--clear-ink)!important;font-weight:400!important}
.hero-price-badge,.hero-tags,.hero-image-label{display:none!important}
.hero-image{min-height:820px;overflow:hidden;background:var(--clear-mist)}
.hero-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(.91) brightness(1.09)}
.hero-image-overlay{background:linear-gradient(90deg,rgba(255,255,255,.13),rgba(72,166,186,.06))!important}
.btn-wrap{margin-top:50px!important;gap:14px!important}
.btn{border-radius:0!important;box-shadow:none!important;font-size:12px!important;font-weight:400!important;letter-spacing:.08em!important}
.btn-primary{background:var(--clear-blue)!important;border-color:var(--clear-blue)!important;color:#fff!important}
.hero-line-secondary{background:transparent!important;border:1px solid var(--clear-blue-deep)!important;color:var(--clear-blue-deep)!important}
.hero-scroll{color:var(--clear-blue-deep)!important;opacity:.65}

#why-ysl,#about,#plans,#blog-teaser{display:block!important;padding:clamp(120px,14vw,190px) 0!important}
#why-ysl{background:#fff!important}
.why-grid{gap:0!important;border-top:1px solid var(--clear-line);border-bottom:1px solid var(--clear-line)}
.why-card{border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;padding:54px clamp(28px,4vw,58px)!important}
.why-card+.why-card{border-left:1px solid var(--clear-line)!important}
.why-num,.why-icon{color:var(--clear-blue-deep)!important}

#about{background:linear-gradient(135deg,#f5fbfc 0%,#fff 72%)!important}
#about .wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(54px,9vw,130px);align-items:start}
#about .sec-eyebrow,#about .sec-title,#about .bar{grid-column:1}
#about .about-box{grid-column:2;grid-row:1/5;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.about-text{color:var(--clear-muted)!important;font-size:14px!important;line-height:2.35!important;text-align:left!important}
.about-text strong{color:inherit!important;font-weight:400!important}
.about-story-link{display:inline-block;margin-top:34px;padding-bottom:8px;border-bottom:1px solid var(--clear-blue-deep);color:var(--clear-blue-deep);font:11px/1.5 Arial,sans-serif;letter-spacing:.12em;text-decoration:none}
.about-title-lock span,.cta-title-lock span,.cta-copy-lock span{display:block;white-space:nowrap}

#plans{background:#fff!important}
.plan-grid{gap:1px!important;background:var(--clear-line)!important;border:1px solid var(--clear-line)}
.plan-card{border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;padding:clamp(34px,4vw,56px)!important}
.plan-card.featured{transform:none!important;background:var(--clear-mist)!important}
.plan-ribbon{background:var(--clear-blue)!important;color:#fff!important;border-radius:0!important}
.plan-btn,.way-btn{border-radius:0!important;background:var(--clear-blue)!important;border-color:var(--clear-blue)!important;color:#fff!important;box-shadow:none!important}

#blog-teaser{background:var(--clear-mist)!important}
.blog-teaser-head h2{font-weight:400!important;color:var(--clear-ink)!important;letter-spacing:.08em!important}
.blog-teaser-grid{gap:34px!important}
.blog-teaser-card{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.blog-teaser-card img{aspect-ratio:4/3!important;object-fit:cover;filter:saturate(.68) contrast(.91) brightness(1.1)}
.blog-card-copy{padding:24px 0 0!important}

.ysl-disclosure{margin:0!important;border:0!important;border-top:1px solid var(--clear-line)!important;background:#fff!important}
.ysl-disclosure>summary{max-width:1180px;margin:auto;padding:34px 24px!important;color:var(--clear-ink)!important}
.ysl-disclosure-en{color:var(--clear-blue-deep)!important}
#faq,#contact-form-section{background:#f8fcfd!important;padding:70px 0!important}
.faq-item{border-color:var(--clear-line)!important;background:transparent!important}
.faq-icon,.contact-form-label{color:var(--clear-blue-deep)!important}
.contact-form-submit{border-radius:0!important;background:var(--clear-blue)!important}

#cta-final{padding:clamp(110px,13vw,170px) 24px!important;background:linear-gradient(140deg,var(--clear-blue-deep),#3ea5ba 70%,#72bfd0)!important}
.cta-h{font-weight:400!important;letter-spacing:.1em!important}
.cta-btns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px!important;margin-inline:auto!important}
.cta-btns .btn{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.55)!important;color:#fff!important}
.cta-btns .btn-white{background:#fff!important;color:var(--clear-blue-deep)!important}

footer{padding:0!important;background:linear-gradient(180deg,#fff,#f6fbfc)!important;color:var(--clear-ink)!important}
.foot-in{max-width:1180px!important;padding:88px 24px 34px!important;text-align:left!important}
.foot-logo{font:500 13px/1.5 Arial,sans-serif!important;letter-spacing:.25em!important}
.foot-tag{color:var(--clear-muted)!important;font-size:12px!important}
.sns-follow{margin:30px 0 56px!important;text-align:left!important}
.sns-icon-row{justify-content:flex-start!important}
.sns-icon-link{border-color:var(--clear-line)!important;background:#fff!important;color:var(--clear-blue-deep)!important}
footer .foot-columns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px!important;align-items:start!important;margin:0!important;padding:58px 0!important;border-top:1px solid var(--clear-line);border-bottom:1px solid var(--clear-line)}
.foot-columns nav{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.foot-columns strong{margin-bottom:9px;color:var(--clear-ink);font:500 10px/1.4 Arial,sans-serif;letter-spacing:.22em}
.foot-columns a{margin:0!important;color:var(--clear-muted)!important;font-size:12px!important;text-decoration:none!important}
.foot-columns a:hover{color:var(--clear-blue-deep)!important}
.foot-in>.ysl-disclosure{display:none;margin:0!important;border-top:1px solid var(--clear-line)!important;background:transparent!important}
.foot-in>.ysl-disclosure.is-active{display:block}
.foot-in>.ysl-disclosure>summary{max-width:none;padding:27px 0!important}
.foot-in>.ysl-disclosure #faq,.foot-in>.ysl-disclosure #contact-form-section{margin:0 -24px;background:#f7fbfc!important}
.foot-hr{display:none!important}
.foot-legal{max-width:850px;margin:38px 0!important;color:var(--clear-muted)!important;font-size:10px!important;line-height:2!important}
.foot-copy{color:var(--clear-muted)!important;text-align:center!important;font:10px/1.4 Arial,sans-serif!important;letter-spacing:.1em!important}

@media(max-width:900px){
  #hero{grid-template-columns:1fr;min-height:0}
  .hero-image{order:1;min-height:54vh}.hero-text{order:2;padding:86px 32px 100px!important}
  #about .wrap{grid-template-columns:1fr;gap:28px}
  #about .sec-eyebrow,#about .sec-title,#about .bar,#about .about-box{grid-column:1;grid-row:auto}
  .why-card+.why-card{border-left:0!important;border-top:1px solid var(--clear-line)!important}
  footer .foot-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .wrap{width:calc(100% - 36px)}
  .hero-image{min-height:390px}.hero-text{padding:72px 22px 88px!important}
  .hero-h1{font-size:clamp(30px,10vw,42px)!important}.hero-sub br{display:none}
  .about-title-lock,.cta-title-lock{font-size:clamp(25px,8vw,36px)!important;letter-spacing:.04em!important}
  .cta-copy-lock{font-size:clamp(12px,3.5vw,15px)!important;letter-spacing:.02em!important}
  .btn-wrap{display:grid!important}.btn-wrap .btn{width:100%!important}
  #why-ysl,#about,#plans,#blog-teaser{padding:94px 0!important}
  .cta-btns{grid-template-columns:1fr!important}
  .foot-in{padding:68px 22px 28px!important}footer .foot-columns{grid-template-columns:1fr;gap:44px!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
