/* TERMS専用：色・余白の変更はこのファイルだけでOK */
.terms-page{--terms-rose:#d8a0ad;--terms-rule:#e8cbd3;--terms-muted:#8d7d81;background:#fdfaf7}.terms-hero{position:relative;text-align:center;overflow:hidden;padding:174px 22px 90px;background:linear-gradient(180deg,#f9e2e6,#fdf3f3 44%,#fdfaf7)}.terms-eyebrow{font-size:11px;letter-spacing:.3em;color:#a98c92}.terms-hero h1{font-size:clamp(64px,8vw,110px);font-weight:400;letter-spacing:.18em;margin:15px 0 0}.terms-ja{font-family:var(--jp);font-size:14px;letter-spacing:.24em;color:#9c7d86;margin:10px 0 28px}.terms-lead{font-family:var(--jp);font-size:12px;line-height:2.5;color:#77696e}.terms-blossom{position:absolute;right:13%;top:145px;font-size:90px;color:#eecbd2;opacity:.45}.terms-shell{width:min(1170px,calc(100% - 60px));margin:0 auto;padding:55px 0 140px;display:grid;grid-template-columns:255px minmax(0,1fr);gap:95px;align-items:start}.terms-sidebar{position:sticky;top:110px;border-top:1px solid var(--terms-rule);padding-top:26px}.terms-index-label{font-size:20px;letter-spacing:.15em;margin:0 0 20px}.terms-index-label span{font-family:var(--jp);font-size:11px;color:var(--terms-muted);letter-spacing:.06em}.terms-sidebar nav{display:flex;flex-direction:column}.terms-sidebar nav a{font-family:var(--jp);font-size:11px;color:#887a7e;padding:10px 12px;border-left:2px solid transparent;line-height:1.6;transition:background .2s,color .2s}.terms-sidebar nav a:hover,.terms-sidebar nav a.active{background:#fff1f4;border-left-color:#d8a0ad;color:#684d56}.terms-side-note{font-family:var(--jp);font-size:10px;line-height:2;color:#a58c94;margin-top:27px}.terms-preface{background:#fff6f7;border:1px solid #f0dce1;padding:28px 32px;margin-bottom:55px}.terms-preface span{font-size:13px;letter-spacing:.22em;color:#bc8b9a}.terms-preface p{font-family:var(--jp);font-size:12px;line-height:2.2;color:#756a6d}.terms-section{scroll-margin-top:100px;padding:42px 0 46px;border-bottom:1px solid var(--terms-rule)}.terms-section:first-child{padding-top:0}.terms-number{font-size:14px;color:var(--terms-rose)}.terms-en{font-size:11px!important;letter-spacing:.18em!important;color:#b58f9a!important;margin:13px 0 6px!important;font-family:var(--serif)!important}.terms-section h2{font-family:var(--jp);font-weight:500;font-size:23px;letter-spacing:.11em;margin:0 0 27px}.terms-section>p:not(.terms-en){font-family:var(--jp);font-size:12px;line-height:2.4;letter-spacing:.045em;color:#655e61;margin:0 0 18px}.terms-bottom{text-align:center;padding-top:75px}.terms-bottom p{font-family:var(--jp);font-size:12px;color:#8d7d81}.terms-bottom a{display:inline-block;border-bottom:1px solid #d8a0ad;padding:15px 5px;margin-top:20px;font-size:16px;letter-spacing:.16em}.terms-page .site-footer{background:#fdfaf7}@media(max-width:850px){.terms-shell{grid-template-columns:1fr;gap:40px}.terms-sidebar{position:static}.terms-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.terms-side-note{margin-top:18px}}@media(max-width:560px){.terms-hero{padding:145px 18px 65px}.terms-hero h1{font-size:62px}.terms-blossom{right:3%;top:115px;font-size:48px}.terms-lead br{display:none}.terms-shell{width:calc(100% - 32px);padding:35px 0 80px}.terms-sidebar nav a{font-size:10px;padding:9px 5px}.terms-preface{padding:20px}.terms-section h2{font-size:20px}}



/* =====================================================
  TERMS / PC幅と見出しの調整
  ★ 見出しの高さ：padding の数値
  ★ 本文全体の幅：terms-shell の max-width
  ★ 左目次の幅：grid-template-columns の 1つ目
===================================================== */
.terms-page .terms-hero {
  padding: 128px 24px 22px;
  text-align: center;
  overflow: hidden;
  background: linear-gradient(180deg,#f9e3e7 0%,#fdf3f3 52%,#fdfaf7 100%);
}
.terms-page .terms-hero-bar {background:none;padding:0;}
.terms-page .terms-hero h1 {
  margin:0;
  font-size:clamp(53px,6vw,78px);
  font-weight:400;
  line-height:1.15;
  letter-spacing:.16em;
  color:#292427;
}
.terms-page .terms-ja {color:#9c7d86;font-size:13px;letter-spacing:.22em;margin:10px 0 0;}
.terms-page .terms-lead {max-width:800px;margin:22px auto 0;font-size:12px;line-height:2.1;}
.terms-page .terms-blossom {top:120px;right:7%;font-size:clamp(42px,5vw,75px);line-height:1;opacity:.4;pointer-events:none;}
.terms-page .terms-shell {
  width:min(1500px,calc(100% - 8vw));
  grid-template-columns:clamp(205px,20vw,275px) minmax(0,1fr);
  gap:clamp(36px,5vw,85px);
  padding-top:34px;
}
@media(max-width:850px){
 .terms-page .terms-shell{grid-template-columns:1fr;gap:35px;width:calc(100% - 48px)}
 .terms-page .terms-hero{padding-top:112px}
}
@media(max-width:560px){
 .terms-page .terms-hero{padding:108px 20px 14px}
 .terms-page .terms-hero h1{font-size:52px}
 .terms-page .terms-ja{font-size:11px}
 .terms-page .terms-lead{font-size:11px;margin-top:18px}
 .terms-page .terms-blossom{top:105px;right:3%;font-size:39px}
 .terms-page .terms-shell{width:calc(100% - 32px);padding-top:22px}
}
