
/*
 * Chobitt Direct | brand alignment v2
 * Derived from current Chobitt Marketing: hotel-story.css / editorial-refine.css.
 * Design-only override. No simulator, form, pricing or contract behaviour changed.
 */
body.studio-v651.sns-direct-comp {
  --studio-ink:#493529; --studio-navy:#493529; --studio-navy-deep:#34271f;
  --studio-coral:#d87c64; --studio-coral-dark:#ba5c47;
  --studio-paper:#fffaf2; --studio-sand:#f4eddf;
  --studio-blue-soft:#f6f0e7; --studio-line:#e3d5c4;
  --studio-line-dark:#c7b5a2; --studio-muted:#74665a;
  --comp-navy:#493529; --comp-deep:#493529;
  --comp-coral:#d87c64; --comp-coral-dark:#ba5c47;
  --comp-cream:#fffaf2; --comp-sand:#f4eddf;
  --comp-blue:#f6f0e7; --comp-line:#e3d5c4; --comp-muted:#74665a;
  color:#493529; background:#fffaf2;
  font-family:"Noto Sans JP","Zen Kaku Gothic New",sans-serif;
}
body.sns-direct-comp .sns-comp-main { overflow:clip; }
body.sns-direct-comp .sns-comp-shell { width:min(1120px,calc(100% - 80px)); }
body.studio-v651.sns-direct-comp .dm-nav { background:#fffaf2; border-bottom:1px solid #e3d5c4; box-shadow:none; }
body.studio-v651.sns-direct-comp .dm-brand-tagline { display:none; }
body.studio-v651.sns-direct-comp .dm-brand img { width:146px; height:auto; }
body.studio-v651.sns-direct-comp .dm-nav-cta { background:#ba5c47; border-color:#ba5c47; color:#fff; }
body.studio-v651.sns-direct-comp .dm-nav-cta:hover { background:#974834; }
body.sns-direct-comp .sns-comp-section { padding:52px 0; }
body.sns-direct-comp .sns-comp-eyebrow { font-size:.72rem; letter-spacing:.12em; }
body.sns-direct-comp .sns-comp-eyebrow::before { display:none; }
body.sns-direct-comp .sns-comp-title {
  max-width:none; font-size:clamp(1.65rem,2.6vw,2.15rem);
  font-weight:700; line-height:1.48; letter-spacing:.008em;
}
body.sns-direct-comp .sns-comp-title em { color:#ba5c47; }
body.sns-direct-comp .sns-comp-hero {
  min-height:0; padding:48px 0 40px; background:#fffaf2; border-bottom:1px solid #e3d5c4;
}
body.sns-direct-comp .sns-comp-hero__grid {
  grid-template-columns:minmax(0,1.05fr) minmax(290px,.95fr); gap:46px;
}
body.sns-direct-comp .sns-comp-hero__badges { gap:16px; margin-bottom:23px; }
body.sns-direct-comp .sns-comp-hero__badges span {
  background:transparent!important; border:none; border-radius:0; padding:0; min-height:0;
  color:#ba5c47; font-size:.72rem; letter-spacing:.12em;
}
body.sns-direct-comp .sns-comp-hero__badges span + span {
  border-left:1px solid #d8c7b7; padding-left:16px; color:#74665a; letter-spacing:.03em;
}
body.sns-direct-comp .sns-comp-hero h1 {
  max-width:15em; margin-bottom:23px; font-size:clamp(1.9rem,3vw,2.72rem);
  line-height:1.58; letter-spacing:.005em; font-weight:700;
}
body.sns-direct-comp .sns-comp-hero h1 em { color:#ba5c47; }
body.sns-direct-comp .sns-comp-hero__lead {
  max-width:39em; font-size:.96rem; line-height:2; color:#74665a;
}
body.sns-direct-comp .sns-comp-btn-primary,
body.sns-direct-comp .sns-comp-btn-secondary,
body.sns-direct-comp .sns-comp-cta__button {
  border-radius:999px; min-height:50px; font-size:.85rem; letter-spacing:0;
}
body.sns-direct-comp .sns-comp-btn-primary,
body.sns-direct-comp .sns-comp-cta__button { background:#ba5c47; color:white; }
body.sns-direct-comp .sns-comp-btn-secondary { border-color:#bca994; color:#493529!important; }
body.sns-direct-comp .sns-comp-btn-primary:hover,
body.sns-direct-comp .sns-comp-cta__button:hover { background:#974834; }
body.sns-direct-comp .sns-comp-hero__visual { min-height:0; gap:6px; }
body.sns-direct-comp .sns-comp-hero__visual img { width:min(100%,350px); max-height:290px; object-fit:contain; }
body.sns-direct-comp .sns-comp-hero__note,
body.sns-direct-comp .sns-comp-hero__route { font-size:.78rem; color:#74665a; text-align:center; }
body.sns-direct-comp .sns-comp-hero__note b { color:#ba5c47; font-size:.95rem; }
body.sns-direct-comp .sns-comp-hero__route { border-left:0; padding-left:0; font-weight:600; }
body.sns-direct-comp .sns-comp-fit { background:#fffaf2; }
body.sns-direct-comp .sns-comp-fit__grid { grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr); gap:60px; }
body.sns-direct-comp .sns-comp-checks p { color:#493529; font-weight:600; }
body.sns-direct-comp .sns-comp-experience__mark { background:#f4eddf; color:#ba5c47; }
body.sns-direct-comp .sns-comp-model { background:#f4eddf; color:#493529; }
body.sns-direct-comp .sns-comp-model__head { margin-bottom:34px; }
body.sns-direct-comp .sns-comp-route { border-color:#dccbb9; }
body.sns-direct-comp .sns-comp-route article { border-color:#dccbb9; }
body.sns-direct-comp .sns-comp-route h3 { color:#493529; }
body.sns-direct-comp .sns-comp-route span { color:#ba5c47; }
body.sns-direct-comp .sns-comp-route p { color:#74665a; }
body.sns-direct-comp .sns-comp-fee-intro {
  margin-top:51px; padding-bottom:19px; border-color:#cdbca9;
}
body.sns-direct-comp .sns-comp-fee-intro h3 { font-size:1.22rem; line-height:1.6; }
body.sns-direct-comp .sns-comp-fee-intro > span { color:#ba5c47; white-space:nowrap; }
body.sns-direct-comp .sns-comp-fee-models { grid-template-columns:repeat(2,minmax(0,1fr)); }
body.sns-direct-comp .sns-comp-fee-models article,
body.sns-direct-comp .sns-comp-fee-models article.is-primary {
  padding:28px 30px 24px; border-bottom:1px solid #cdbca9; background:transparent;
}
body.sns-direct-comp .sns-comp-fee-models article.is-primary { border-top:2px solid #ba5c47; }
body.sns-direct-comp .sns-comp-fee-models article + article { border-left:1px solid #d8c7b7; border-top:2px solid transparent; }
body.sns-direct-comp .sns-comp-fee-models h3 { min-height:3.5em; font-size:1rem; line-height:1.75; }
body.sns-direct-comp .sns-comp-fee-models__badge { margin-bottom:11px; color:#ba5c47; }
body.sns-direct-comp .sns-comp-fee-rates { gap:18px; margin:18px 0; }
body.sns-direct-comp .sns-comp-fee-rates > div {
  min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:5px; padding:13px 0 6px;
  border-top:1px solid #d8c7b7; background:transparent;
}
body.sns-direct-comp .sns-comp-fee-rates span { font-size:.75rem; color:#74665a; }
body.sns-direct-comp .sns-comp-fee-rates strong { font-size:1.53rem; color:#493529; }
body.sns-direct-comp .sns-comp-period-explainer {
  margin:18px 0 0; padding:0 4px; max-width:100%; font-size:.77rem; color:#74665a; line-height:1.95;
}
body.sns-direct-comp .sns-comp-fee-examples { margin:10px 0 0; padding:18px 0 0; }
body.sns-direct-comp .sns-comp-simulator {
  margin-top:6px; padding:29px 34px; background:#fffaf2; border:1px solid #d8c7b7; border-radius:4px;
}
body.sns-direct-comp .sns-comp-simulator__head h4 { font-size:1.2rem; color:#493529; }
body.sns-direct-comp .sns-comp-simulator__controls { gap:17px 24px; }
body.sns-direct-comp .sns-comp-simulator__field { font-size:.82rem; color:#493529; }
body.sns-direct-comp .sns-comp-simulator__field select,
body.sns-direct-comp .sns-comp-simulator__field input {
  min-width:0; max-width:100%; border:1px solid #cdbca9; border-radius:4px; background:white;
  color:#493529; font-size:16px;
}
body.sns-direct-comp .sns-comp-simulator__field select:focus-visible,
body.sns-direct-comp .sns-comp-simulator__field input:focus-visible { outline-color:#e0b3a2; border-color:#ba5c47; }
body.sns-direct-comp .sns-comp-simulator__result { background:#f4eddf; border-radius:3px; }
body.sns-direct-comp .sns-comp-simulator__result strong { color:#ba5c47; }
body.sns-direct-comp .sns-comp-simulator__rate b { color:#493529; }
body.sns-direct-comp .sns-comp-scope { background:#fffaf2; }
body.sns-direct-comp .sns-comp-scope__head { max-width:750px; }
body.sns-direct-comp .sns-comp-included,
body.sns-direct-comp .sns-comp-option { border-top-width:1px; border-top-color:#d8c7b7; }
body.sns-direct-comp .sns-comp-option { border-top-color:#ba5c47; }
body.sns-direct-comp .sns-comp-included li,
body.sns-direct-comp .sns-comp-option li { color:#493529; }
body.sns-direct-comp .sns-comp-cooperation { background:#f7f0e5; }
body.sns-direct-comp .sns-comp-cooperation article { border-color:#e3d5c4; }
body.sns-direct-comp .sns-comp-timeline { background:#fffaf2; }
body.sns-direct-comp .sns-comp-timeline__track::before { border-color:#ddc4b1; }
body.sns-direct-comp .sns-comp-timeline article::before { background:#d87c64; border-color:#fffaf2; }
body.sns-direct-comp .sns-comp-terms { background:#f7f0e5; }
body.sns-direct-comp .sns-comp-bridge { background:#f4eddf; }
body.sns-direct-comp .sns-comp-bridge h2 { font-size:1.65rem; letter-spacing:0; }
body.sns-direct-comp .sns-comp-bridge a { border-color:#ba5c47; color:#ba5c47!important; border-radius:999px; }
body.sns-direct-comp .sns-comp-faq { background:#fffaf2; }
body.sns-direct-comp .sns-comp-cta { background:#f7f0e5; color:#493529; }
body.sns-direct-comp .sns-comp-cta h2 { color:#493529; font-size:clamp(1.55rem,2.7vw,2rem); letter-spacing:0; }
body.sns-direct-comp .sns-comp-cta p { color:#74665a; }
body.sns-direct-comp .sns-comp-nextsteps { gap:8px; }
body.sns-direct-comp .sns-comp-nextsteps article { border-color:#d8c7b7; }
body.sns-direct-comp .sns-comp-nextsteps article span { color:#ba5c47; }
body.sns-direct-comp .sns-comp-nextsteps article b { color:#493529; }
body.sns-direct-comp .sns-comp-nextsteps > i { color:#a47d63; }
body.sns-direct-comp footer { background:#fffaf2; color:#74665a; }
@media(max-width:980px){
  body.sns-direct-comp .sns-comp-shell { width:calc(100% - 48px); }
  body.sns-direct-comp .sns-comp-hero__grid { grid-template-columns:minmax(0,1fr) minmax(250px,.85fr); gap:25px; }
  body.sns-direct-comp .sns-comp-fit__grid { gap:35px; }
  body.sns-direct-comp .sns-comp-fee-models article,
  body.sns-direct-comp .sns-comp-fee-models article.is-primary { padding-inline:20px; }
}
@media(max-width:720px){
  body.sns-direct-comp .sns-comp-shell { width:calc(100% - 36px); }
  body.sns-direct-comp .sns-comp-section { padding:40px 0; }
  body.sns-direct-comp .sns-comp-title { font-size:clamp(1.5rem,6vw,1.82rem); line-height:1.5; }
  body.sns-direct-comp .sns-comp-hero { padding:42px 0 35px; }
  body.sns-direct-comp .sns-comp-hero__grid { grid-template-columns:minmax(0,1fr); gap:21px; }
  body.sns-direct-comp .sns-comp-hero h1 { font-size:clamp(1.75rem,7vw,2.2rem); line-height:1.53; }
  body.sns-direct-comp .sns-comp-hero__lead { font-size:.89rem; line-height:1.9; }
  body.sns-direct-comp .sns-comp-hero__visual img { width:min(100%,300px); }
  body.sns-direct-comp .sns-comp-hero__note,
  body.sns-direct-comp .sns-comp-hero__route { max-width:100%; overflow-wrap:anywhere; }
  body.sns-direct-comp .sns-comp-fit__grid,
  body.sns-direct-comp .sns-comp-model__head,
  body.sns-direct-comp .sns-comp-scope__grid { grid-template-columns:minmax(0,1fr); gap:22px; }
  body.sns-direct-comp .sns-comp-checks { grid-template-columns:minmax(0,1fr); }
  body.sns-direct-comp .sns-comp-route { grid-template-columns:minmax(0,1fr); }
  body.sns-direct-comp .sns-comp-fee-intro { margin-top:28px; }
  body.sns-direct-comp .sns-comp-fee-models { grid-template-columns:minmax(0,1fr); }
  body.sns-direct-comp .sns-comp-fee-models article,
  body.sns-direct-comp .sns-comp-fee-models article.is-primary { padding:22px 1px; }
  body.sns-direct-comp .sns-comp-fee-models article + article { border-left:0; border-top:0; }
  body.sns-direct-comp .sns-comp-fee-models article h3 { min-height:0; }
  body.sns-direct-comp .sns-comp-fee-rates { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  body.sns-direct-comp .sns-comp-fee-rates > div { flex-direction:column; align-items:flex-start; min-width:0; gap:8px; }
  body.sns-direct-comp .sns-comp-fee-rates span { font-size:.7rem; }
  body.sns-direct-comp .sns-comp-fee-rates strong { font-size:1.4rem; }
  body.sns-direct-comp .sns-comp-fee-examples { padding-top:16px; }
  body.sns-direct-comp .sns-comp-simulator { padding:21px 17px; }
  body.sns-direct-comp .sns-comp-simulator__controls,
  body.sns-direct-comp .sns-comp-simulator__inputs { grid-template-columns:minmax(0,1fr); }
  body.sns-direct-comp .sns-comp-simulator__result { min-width:0; padding:17px 15px; }
  body.sns-direct-comp .sns-comp-simulator__result strong { overflow-wrap:anywhere; }
  body.sns-direct-comp .sns-comp-scope__grid,
  body.sns-direct-comp .sns-comp-cooperation__grid,
  body.sns-direct-comp .sns-comp-terms__grid { grid-template-columns:minmax(0,1fr); }
  body.sns-direct-comp .sns-comp-bridge a { width:100%; justify-content:space-between; white-space:normal; }
  body.sns-direct-comp .sns-comp-cta h2 { font-size:1.58rem; }
}
@media(max-width:360px){
  body.sns-direct-comp .sns-comp-hero__badges { gap:9px; }
  body.sns-direct-comp .sns-comp-hero__badges span + span { padding-left:9px; }
  body.sns-direct-comp .sns-comp-fee-rates { gap:12px; }
  body.sns-direct-comp .sns-comp-fee-rates strong { font-size:1.3rem; }
}

/* Approved visual rough: finishing refinements (2026-10-27).
   Quiet warm surfaces + editorial rhythm; official logo/beaver unchanged. */

/* Paper-like rhythm: make the problems a warm band, the workflow an open area. */
body.sns-direct-comp .sns-comp-fit {
  background:#f7efe4;
}
body.sns-direct-comp .sns-comp-fit__intro .sns-comp-title {
  max-width:14em;
}
body.sns-direct-comp .sns-comp-checks {
  border-top:1px solid #d5c2ad;
}
body.sns-direct-comp .sns-comp-checks p {
  min-height:64px;
  border-bottom-color:#d5c2ad;
}
body.sns-direct-comp .sns-comp-experience {
  border-top-color:#d5c2ad;
}
body.sns-direct-comp .sns-comp-model {
  background:#fffaf2;
  border-top:1px solid #e7d8c8;
  border-bottom:1px solid #e7d8c8;
}
body.sns-direct-comp .sns-comp-model__head {
  align-items:center;
  margin-bottom:28px;
}
body.sns-direct-comp .sns-comp-route {
  background:transparent;
  border-top:1px solid #d8c7b7;
  border-bottom:1px solid #d8c7b7;
}
body.sns-direct-comp .sns-comp-route article {
  padding-top:23px;
  padding-bottom:24px;
}
body.sns-direct-comp .sns-comp-route article + article {
  border-left:1px solid #d8c7b7;
}
body.sns-direct-comp .sns-comp-fee-intro {
  margin-top:36px;
  padding:0 0 20px;
  border-bottom:1px solid #ccae9a;
}
body.sns-direct-comp .sns-comp-fee-models {
  gap:20px;
  margin-top:22px;
}
body.sns-direct-comp .sns-comp-fee-models article,
body.sns-direct-comp .sns-comp-fee-models article.is-primary {
  padding:28px 28px 24px;
  background:#fffdf8;
  border:1px solid #decdbb;
  border-top:2px solid #bf806b;
  border-radius:5px;
}
body.sns-direct-comp .sns-comp-fee-models article.is-primary {
  border-top-color:#ba5c47;
}
body.sns-direct-comp .sns-comp-fee-models article + article {
  border:1px solid #decdbb;
  border-top:2px solid #bf806b;
}
body.sns-direct-comp .sns-comp-fee-models__badge {
  font-size:.72rem;
}
body.sns-direct-comp .sns-comp-fee-rates {
  gap:14px;
}
body.sns-direct-comp .sns-comp-fee-rates > div {
  background:#f6f0e7;
  border:1px solid #e6d8c6;
  border-radius:3px;
  padding:12px 13px;
}
body.sns-direct-comp .sns-comp-fee-rates strong {
  color:#ad513c;
  font-size:1.72rem;
  font-weight:700;
}
body.sns-direct-comp .sns-comp-period-explainer {
  max-width:900px;
  margin:19px 0 22px;
}
body.sns-direct-comp .sns-comp-fee-examples {
  padding-top:8px;
}
body.sns-direct-comp .sns-comp-simulator {
  margin-top:0;
  padding:31px 34px;
  background:#f4eddf;
  border:1px solid #e4d5c3;
  border-radius:8px;
}
body.sns-direct-comp .sns-comp-simulator__head {
  max-width:650px;
  margin-bottom:24px;
}
body.sns-direct-comp .sns-comp-simulator__head h4 {
  font-size:1.29rem;
  line-height:1.55;
}
body.sns-direct-comp .sns-comp-simulator__field select,
body.sns-direct-comp .sns-comp-simulator__field input {
  border-color:#c9b8a5;
  background:#fffdfa;
}
body.sns-direct-comp .sns-comp-simulator__result {
  background:#fffaf2;
  border:1px solid #e3d3bf;
  border-radius:4px;
}
body.sns-direct-comp .sns-comp-simulator__result strong {
  color:#ad513c;
}
body.sns-direct-comp .sns-comp-scope {
  background:#fffaf2;
}
body.sns-direct-comp .sns-comp-scope__grid {
  column-gap:56px;
}
body.sns-direct-comp .sns-comp-option {
  border-top-color:#b88f7c;
}
body.sns-direct-comp .sns-comp-cooperation {
  background:#f7efe4;
}
body.sns-direct-comp .sns-comp-cooperation__grid {
  gap:0 50px;
}
body.sns-direct-comp .sns-comp-cooperation article {
  padding:19px 4px 23px;
}
body.sns-direct-comp .sns-comp-cooperation article > span,
body.sns-direct-comp .sns-comp-terms__grid span {
  font-size:.75rem;
}
body.sns-direct-comp .sns-comp-timeline {
  background:#fffaf2;
}
body.sns-direct-comp .sns-comp-timeline__track::before {
  border-color:#cba492;
}
body.sns-direct-comp .sns-comp-after-six {
  background:transparent;
}
body.sns-direct-comp .sns-comp-terms {
  background:#f7efe4;
}
body.sns-direct-comp .sns-comp-bridge {
  background:#fffaf2;
  border-top:1px solid #e3d5c4;
  border-bottom:1px solid #e3d5c4;
}
body.sns-direct-comp .sns-comp-bridge a {
  flex:0 1 auto;
}
body.sns-direct-comp .sns-comp-faq {
  background:#fffaf2;
}
body.sns-direct-comp .sns-comp-cta {
  background:#f4eddf;
  border-top:1px solid #e3d5c4;
}
body.sns-direct-comp .sns-comp-cta__inner {
  max-width:840px;
}
body.sns-direct-comp .sns-comp-nextsteps article {
  background:transparent;
}
body.sns-direct-comp .sns-comp-cta__button {
  text-decoration:none;
  border-radius:999px;
}
body.sns-direct-comp .sns-comp-fee-models article,
body.sns-direct-comp .sns-comp-simulator,
body.sns-direct-comp .sns-comp-checks,
body.sns-direct-comp .sns-comp-simulator__result {
  min-width:0;
}
@media (max-width:980px) {
  body.sns-direct-comp .sns-comp-fit__grid { gap:35px; }
  body.sns-direct-comp .sns-comp-model__head { grid-template-columns:1fr; }
  body.sns-direct-comp .sns-comp-scope__grid { gap:28px; }
  body.sns-direct-comp .sns-comp-fee-models { gap:14px; }
  body.sns-direct-comp .sns-comp-fee-models article,
  body.sns-direct-comp .sns-comp-fee-models article.is-primary { padding:22px 19px; }
}
@media (max-width:720px) {
  body.sns-direct-comp .sns-comp-model { padding-top:40px; padding-bottom:44px; }
  body.sns-direct-comp .sns-comp-route article+article {
    border-left:0;
    border-top:1px solid #dccbb9;
  }
  body.sns-direct-comp .sns-comp-fee-intro { margin-top:28px; }
  body.sns-direct-comp .sns-comp-fee-models {
    grid-template-columns:minmax(0,1fr);
    gap:13px;
    margin-top:16px;
  }
  body.sns-direct-comp .sns-comp-fee-models article,
  body.sns-direct-comp .sns-comp-fee-models article.is-primary,
  body.sns-direct-comp .sns-comp-fee-models article+article {
    padding:19px 16px;
    border-radius:4px;
  }
  body.sns-direct-comp .sns-comp-fee-rates {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  body.sns-direct-comp .sns-comp-fee-rates > div {
    padding:10px 8px;
  }
  body.sns-direct-comp .sns-comp-fee-rates strong { font-size:1.43rem; }
  body.sns-direct-comp .sns-comp-period-explainer {
    margin-bottom:18px;
    font-size:.75rem;
  }
  body.sns-direct-comp .sns-comp-simulator {
    padding:21px 15px;
    border-radius:5px;
  }
  body.sns-direct-comp .sns-comp-simulator__controls,
  body.sns-direct-comp .sns-comp-simulator__inputs {
    grid-template-columns:minmax(0,1fr);
  }
  body.sns-direct-comp .sns-comp-simulator__result {
    flex-direction:column;
    align-items:flex-start;
  }
  body.sns-direct-comp .sns-comp-nextsteps article { min-width:0; }
  body.sns-direct-comp .sns-comp-cta__button {
    max-width:100%;
    width:100%;
  }
}
@media(max-width:380px) {
  body.sns-direct-comp .sns-comp-fee-rates span {
    font-size:.66rem;
    overflow-wrap:anywhere;
  }
  body.sns-direct-comp .sns-comp-simulator__result strong { font-size:1.3rem; }
}

/* Compact reading rhythm: keep related copy together without shrinking body text. */
body.sns-direct-comp .sns-comp-fit__grid {
  align-items:start;
  row-gap:20px;
}
body.sns-direct-comp .sns-comp-fit__intro .sns-comp-title { max-width:none; }
body.sns-direct-comp .sns-comp-experience {
  grid-column:1 / -1;
  margin-top:0;
  padding:14px 0 0;
  gap:14px;
}
body.sns-direct-comp .sns-comp-title + p { margin-top:12px; }
body.sns-direct-comp .sns-comp-eyebrow { margin-bottom:9px; }
body.sns-direct-comp .sns-comp-model__head,
body.sns-direct-comp .sns-comp-scope__head,
body.sns-direct-comp .sns-comp-cooperation__head,
body.sns-direct-comp .sns-comp-timeline__head,
body.sns-direct-comp .sns-comp-terms__head { margin-bottom:24px; }
body.sns-direct-comp .sns-comp-fee-models h3 { min-height:0; }
body.sns-direct-comp .sns-comp-fee-rates { margin:14px 0; }
body.sns-direct-comp .sns-comp-simulator { padding:24px; }
body.sns-direct-comp .sns-comp-simulator__head { margin-bottom:18px; }
body.sns-direct-comp .sns-comp-after-six { margin-top:22px; }
body.sns-direct-comp .sns-comp-terms__notes { margin-top:20px; padding:14px 0; }
body.sns-direct-comp .sns-comp-bridge { padding:40px 0; }
body.sns-direct-comp .sns-comp-faq__grid { gap:32px; }
body.sns-direct-comp .sns-comp-faq summary { padding-top:18px; padding-bottom:18px; }
body.sns-direct-comp .sns-comp-faq summary::after { top:16px; }
body.sns-direct-comp .sns-comp-cta { padding:48px 0; }
body.sns-direct-comp .sns-comp-cta p { margin-bottom:22px; }
@media(max-width:720px) {
  body.sns-direct-comp .sns-comp-fit__grid { row-gap:18px; }
  body.sns-direct-comp .sns-comp-experience { grid-column:1; }
  body.sns-direct-comp .sns-comp-hero { padding:32px 0 28px; }
  body.sns-direct-comp .sns-comp-hero__visual img { width:min(100%,250px); max-height:230px; }
  body.sns-direct-comp .sns-comp-checks p { min-height:0; }
  body.sns-direct-comp .sns-comp-model__head,
  body.sns-direct-comp .sns-comp-scope__head,
  body.sns-direct-comp .sns-comp-cooperation__head,
  body.sns-direct-comp .sns-comp-timeline__head,
  body.sns-direct-comp .sns-comp-terms__head { margin-bottom:20px; }
  body.sns-direct-comp .sns-comp-simulator { padding:20px 15px; }
  body.sns-direct-comp .sns-comp-timeline article { padding-bottom:26px; }
  body.sns-direct-comp .sns-comp-bridge { padding:32px 0; }
  body.sns-direct-comp .sns-comp-faq__grid { gap:20px; }
  body.sns-direct-comp .sns-comp-cta { padding:40px 0; }
}
