html[lang="ja"] body {
  font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.75;
}

html[lang="ja"] h1,
html[lang="ja"] h2,
html[lang="ja"] h3,
html[lang="ja"] .brand,
html[lang="ja"] .button,
html[lang="ja"] .credential-grid strong,
html[lang="ja"] .facts strong,
html[lang="ja"] .trust-gallery-caption strong,
html[lang="ja"] .package-name strong,
html[lang="ja"] .hourly-price,
html[lang="ja"] .package-price,
html[lang="ja"] .booking-summary-price {
  font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  letter-spacing: 0;
}

html[lang="ja"] h1,
html[lang="ja"] h2 { letter-spacing: -.035em; }
html[lang="ja"] .eyebrow,
html[lang="ja"] .section-label,
html[lang="ja"] .credentials-eyebrow,
html[lang="ja"] .proof-kicker,
html[lang="ja"] .booking-summary-label,
html[lang="ja"] .trial-card span { letter-spacing: .08em; }
html[lang="ja"] .form-field input,
html[lang="ja"] .form-field select,
html[lang="ja"] .form-field textarea { font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif; }

@media (max-width: 620px) {
  html[lang="ja"] .trial-card { grid-template-columns: auto minmax(0, 1fr); gap: 10px; padding: 16px; }
  html[lang="ja"] .trial-card .button { min-width: 0; padding-inline: 8px; }
}

@media (max-width: 380px) {
  html[lang="ja"] .package-price { font-size: 1.05rem; }
}

html[lang="ja"] .audience-card > strong,
html[lang="ja"] .faq-item summary,
html[lang="ja"] .student-story-person strong,
html[lang="ja"] .mobile-trial-cta a {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  letter-spacing: 0;
}
