/* Migration pages only; pixel sizing avoids rem/vw surprises. PC remains unchanged. */
@media screen and (max-width: 959px) {
  html:has(.tm-child-page) { font-size: 16px !important; }
  .tm-child-page .post_content .takemon-section .takemon-section__body p,
  .tm-child-page .post_content .takemon-philosophy__closing,
  .tm-child-page .post_content .takemon-information__item dd,
  .tm-child-page .post_content .takemon-course__item dd,
  .tm-child-page .post_content .takemon-final-cta__message,
  .tm-child-page .post_content .tm-course-plan ol li { font-size: 16px !important; line-height: 1.9 !important; }
  .tm-child-page .post_content .takemon-section .takemon-section__title { font-size: 24px !important; line-height: 1.65 !important; }
  .tm-child-page .post_content .takemon-philosophy__closing span { font-size: 19px !important; }
  .tm-child-page .post_content .takemon-opening__title { font-size: 22px !important; line-height: 1.65 !important; }
  .tm-child-page .post_content .takemon-opening__offer { font-size: 15px !important; line-height: 1.9; }
  .tm-child-page .post_content .takemon-final-cta__title { font-size: 24px !important; }
  .tm-child-page .post_content .takemon-final-cta__button span,
  .tm-child-page .post_content .takemon-fv__copy { font-size: 16px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__hero-title { font-size: clamp(26px, 7.65vw, 36px) !important; line-height: 1.4; letter-spacing: .06em; }
  .tm-child-page .post_content .tm-opening .tm-opening__title,
  .tm-child-page .post_content .tm-opening .tm-opening__final-title { font-size: 22px !important; line-height: 1.6; }
  .tm-child-page .post_content .tm-opening .tm-opening__hero-copy,
  .tm-child-page .post_content .tm-opening .tm-opening__lead p,
  .tm-child-page .post_content .tm-opening .tm-opening__lead ol li,
  .tm-child-page .post_content .tm-opening .tm-opening__course-details dd,
  .tm-child-page .post_content .tm-opening .tm-opening__course-note,
  .tm-child-page .post_content .tm-opening .tm-opening__experience-item p,
  .tm-child-page .post_content .tm-opening .tm-opening__benefits p,
  .tm-child-page .post_content .tm-opening .tm-opening__flow p,
  .tm-child-page .post_content .tm-opening .tm-opening__notice li,
  .tm-child-page .post_content .tm-opening .tm-opening__final-copy { font-size: 16px !important; line-height: 1.9 !important; letter-spacing: .035em; }
  .tm-child-page .post_content .tm-opening .tm-opening__experience-item h3,
  .tm-child-page .post_content .tm-opening .tm-opening__benefits h3,
  .tm-child-page .post_content .tm-opening .tm-opening__flow h3 { font-size: 18px !important; line-height: 1.6; }
  .tm-child-page .post_content .tm-opening .tm-opening__flow li:first-child h3 { white-space: nowrap; font-size: 14px !important; letter-spacing: .01em; }
  .tm-child-page .post_content .takemon-opening__location-line { white-space: nowrap; font-size: .74em !important; letter-spacing: .025em; }
  .tm-child-page .post_content .takemon-course-title-line { display: block; white-space: nowrap; font-size: .7em !important; letter-spacing: .02em; }
  .tm-child-page .post_content .takemon-philosophy__closing span { display: block; white-space: nowrap; font-size: clamp(13px, 3.8vw, 17px) !important; letter-spacing: .015em; }
  .tm-child-page .post_content .takemon-course .tm-course-plan + .tm-course-plan {
    margin-top: 80px !important;
    padding-top: 70px !important;
    border-top: 1px solid rgba(39, 41, 37, .2);
  }
  .tm-child-page .post_content .takemon-final-cta__telephone > a {
    font-family: Arial, "Helvetica Neue", sans-serif !important;
    font-weight: 400 !important;
    font-variant-numeric: tabular-nums;
    letter-spacing: .12em !important;
  }
  .tm-child-page .post_content .tm-opening .tm-opening__standard-name { font-size: 22px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__standard-theme { font-size: 16px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__price-number { font-size: 36px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__price-number > span { font-size: 16px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__price-tax { font-size: 14px !important; }
  .tm-child-page .post_content .tm-opening .tm-opening__button--line { font-size: 16px !important; min-height: 56px; }
}
