/* Owner correction, 2026-10-27 11:06 UTC: six English section accents use
 * a straight sans-serif family. Version28 sizes/weights/leading/spacing stay.
 * Japanese titles remain smaller at every width; body rhythm is unchanged.
 * Typography only; approved colors, media, layout and copy remain intact.
 * No handwriting font dependency or copied font binary is required. */
.corp-section-label {
  font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;
  font-size:44px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:normal;
}
@media(max-width:760px){
  .corp-section-label {font-size:32px;}
}

/* SHE reference: size/leading rhythm only, adapted to EIGHT's existing widths.
 * Direct semantic prose rules avoid changing inherited form/nav/button/price
 * metrics. No new family, color, padding, grid, width or section spacing. */
:where(main,article,.rn-body) p:not(:where(
  header p,nav p,footer p,form p,button p,a p,[role=button] p,
  .eyebrow,.brand-category,.brand-benefit,.solution-en,.flow-label,.flow-note,
  .hero-conditions,.service-terms,.diagnosis-note,.quality-inline,.time-prompt,
  .price,.fee,.total,.amount,[class*=price] p,[class*=fee] p,[class*=total] p,
  .news-list p,.rn-list p,.rn-row p,.news-card p,.article-meta p
)) {font-size:14px !important;line-height:2 !important;}
:where(main,article) h1:not(:where(header h1,nav h1,footer h1,form h1,button h1,a h1,[class*=price] h1,[class*=fee] h1,[class*=total] h1,.news-list h1,.rn-list h1,.rn-row h1)) {
  font-size:clamp(30px,3.3vw,44px) !important;line-height:1.7 !important;
}
:where(main,article) h2:not(:where(header h2,nav h2,footer h2,form h2,button h2,a h2,[class*=price] h2,[class*=fee] h2,[class*=total] h2,.news-list h2,.rn-list h2,.rn-row h2)) {
  font-size:clamp(24px,2.4vw,32px) !important;line-height:1.7 !important;
}
:where(main,article) h3:not(:where(header h3,nav h3,footer h3,form h3,button h3,a h3,[class*=price] h3,[class*=fee] h3,[class*=total] h3,.news-list h3,.rn-list h3,.rn-row h3)) {
  font-size:18px !important;line-height:1.75 !important;
}
:where(main,article) p:is(.lead,.solution-intro):not(:where(form p,nav p,header p,footer p,a p,button p)) {
  font-size:15px !important;line-height:2.2 !important;
}
.rn-body :is(p,li),.article-body :is(p,li) {
  font-size:16px !important;line-height:2 !important;
}
@media(max-width:640px){
  :where(main,article) h1:not(:where(header h1,nav h1,footer h1,form h1,button h1,a h1,[class*=price] h1,[class*=fee] h1,[class*=total] h1,.news-list h1,.rn-list h1,.rn-row h1)) {
    font-size:clamp(27px,7vw,32px) !important;line-height:1.7 !important;
  }
  :where(main,article) h2:not(:where(header h2,nav h2,footer h2,form h2,button h2,a h2,[class*=price] h2,[class*=fee] h2,[class*=total] h2,.news-list h2,.rn-list h2,.rn-row h2)) {
    font-size:24px !important;line-height:1.7 !important;
  }
  :where(main,article) h3:not(:where(header h3,nav h3,footer h3,form h3,button h3,a h3,[class*=price] h3,[class*=fee] h3,[class*=total] h3,.news-list h3,.rn-list h3,.rn-row h3)) {
    font-size:17px !important;line-height:1.75 !important;
  }
  :where(main,article) p:is(.lead,.solution-intro):not(:where(form p,nav p,header p,footer p,a p,button p)) {
    font-size:14px !important;line-height:2.15 !important;
  }
  .rn-body :is(p,li),.article-body :is(p,li) {
    font-size:15px !important;line-height:2 !important;
  }
}

/* Keep the approved hero scale at its existing two-column width. */
body .hero-copy h1 {font-size:clamp(27px,2.7vw,37px) !important;line-height:1.75 !important;}
@media(max-width:950px){body .hero-copy h1 {font-size:29px !important;}}
@media(max-width:640px){body .hero-copy h1 {font-size:clamp(24px,6.5vw,30px) !important;}}

/* Exactly six primary homepage Japanese titles: deliberately smaller than
 * their English accents. Not cards, FAQ, navigation, forms or page titles.
 * ABOUT's original copy and forced line break stay, without the oversized scale. */
body :is(#about-heading,#why-share-heading,.concept-how .how-heading>h2,#service-heading,#company-heading,#news-heading) {
  font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;
  font-size:30px !important;
  font-weight:600;
  line-height:1.7 !important;
  letter-spacing:.015em;
}
@media(max-width:950px){
  body :is(#about-heading,#why-share-heading,.concept-how .how-heading>h2,#service-heading,#company-heading,#news-heading) {
    font-size:28px !important;
  }
}
@media(max-width:760px){
  body :is(#about-heading,#why-share-heading,.concept-how .how-heading>h2,#service-heading,#company-heading,#news-heading) {
    font-size:24px !important;
  }
}
