/* PCは文字の存在感を一段上げる。スマホの既存サイズには適用しない。 */
@media screen and (min-width: 1024px) {
  :root { --body-size:18px;--note-size:16px; }
  body { font-size:18px; }
  .display-heading,#gallery .display-heading { font-size:clamp(44px,3.4vw,50px);line-height:1.55; }
  .micro,.section-index .micro,.contact-option .micro,.benefit-card .micro,
  .hero-topline .micro,.edition,.pill { font-size:16px;line-height:1.8; }
  .section-intro>p,.section-intro>div,.section-intro>div>p,
  .concept-text p:nth-child(2),.hero-description,
  .benefit-card p,.benefit-lead,.benefit-conditions p,.participation-explanation p,
  #detail-description,.course-description,.faculty-bio,
  .flyer-copy>p:not(.micro),.referral-copy,.cashback-method,
  .referral-card>p:not(.referral-role),.referral-card dd,
  .application-heading>p,.contact-option>p,.faq-intro,.faq-answer,.faq-answer p {
    font-size:18px;line-height:1.95;
  }
  .benefit-lead { font-size:18px!important;line-height:1.95!important; }
  .section-intro>p,.section-intro>div { max-width:500px; }
  .button,.contact-option .button,.hero-actions .button,
  .estimate-result .button,.flyer-copy .button,
  .flyer-copy .flyer-actions>.button,
  .text-link,.hero-actions .text-link,.copy-button,
  .flyer-copy .flyer-actions>.text-link { font-size:18px;line-height:1.7;min-height:60px; }
  .button { padding:18px 24px; }
  .flyer-actions { max-width:500px;gap:20px; }
  .flyer-copy h3 { font-size:40px; }
  .flyer-tabs button { font-size:18px; }
  .flyer-caption,.flyer-tabs>span,.schedule-tools-note,
  .course-change-note,.detail-month,.detail-guidance,.course-select time,
  .faculty-copy .faculty-role,.affiliation,
  .price-sub,.tax,.pricing-staff-note,.campaign-note,
  .referral-card dt,.referral-price small,.faq-topics a span,
  .form-slot-note,.contact-option .form-slot-note,.contact-preview-note,
  .gallery-caption,.gallery-status,.gallery-count,
  .footer-main>div p,.footer-main .text-link,.footer-bottom,
  .footer-bottom small,.footer-bottom>a,.motion-toggle { font-size:16px;line-height:1.85; }
  .course-name { font-size:18px;line-height:1.85; }
  .course-select { min-height:96px;padding-block:22px; }
  .course-detail h3 { font-size:30px; }
  .detail-date { font-size:18px; }
  .benefit-card h3 { font-size:26px; }
  .faculty-copy h3 { font-size:34px; }
  .faculty-bio { max-width:65ch; }
  .price-label { font-size:26px; }
  .price-amount { font-size:42px; }
  .price-amount small { font-size:18px; }
  .price-card { padding:32px 28px; }
  .referral-campaign-heading h3 { font-size:36px; }
  .referral-campaign-heading .campaign-note { font-size:18px; }
  .referral-role,.referral-outcome { font-size:22px; }
  .referral-card { padding:32px; }
  .referral-card h4 strong { font-size:60px; }
  .referral-card dl { min-height:178px; }
  .referral-card .referral-price { font-size:36px; }
  .referral-price>span { font-size:18px; }
  .participation-explanation h3,.benefit-conditions h3 { font-size:24px; }
  .participation-explanation,.benefit-conditions { padding:32px;max-width:1000px; }
  legend { font-size:22px;line-height:1.7; }
  .radio-option { grid-template-columns:24px minmax(0,1fr) auto;gap:18px;min-height:112px;padding:24px; }
  .radio-option strong,.radio-option b { font-size:22px;line-height:1.65; }
  .radio-option small { font-size:16px;line-height:1.85; }
  .radio-option b { white-space:nowrap; }
  .staff-control p { font-size:20px; }
  .staff-control small,.estimate-assumption,
  .estimate-benefit,.estimate-fineprint,.copy-status { font-size:16px;line-height:1.95; }
  .stepper { height:60px; }
  .stepper button { width:56px;height:58px; }
  .stepper select { height:58px;width:70px;min-width:70px;font-size:22px; }
  .estimate-result { padding:34px; }
  .estimate-label,.estimate-total>span { font-size:16px; }
  .estimate-breakdown { font-size:18px;line-height:1.9; }
  .estimate-breakdown>div { flex-wrap:wrap;gap:8px 20px; }
  .estimate-total strong { font-size:56px;line-height:1.5; }
  .estimate-total small { font-size:20px; }
  .information-caption { font-size:26px;line-height:1.9; }
  .information-list>div { grid-template-columns:120px minmax(0,1fr);gap:30px;padding:28px 0; }
  .information-list dt { font-size:18px;line-height:1.9; }
  .information-list dd { font-size:20px;line-height:1.71; }
  .contact-option h3 { font-size:32px; }
  .faq-list summary { font-size:22px;line-height:1.75;padding:26px 0;grid-template-columns:30px minmax(0,1fr) 26px; }
  .faq-question-number { font-size:16px;line-height:2.4; }
  .faq-topics a { font-size:18px;line-height:1.8;min-height:52px; }
  .faq-answer { padding-left:46px;padding-bottom:36px; }
  .faq-answer p { max-width:60ch; }
}
@media screen and (min-width:1024px) and (max-width:1599px) {
  .price-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .price-card:nth-child(2) { border-right:0; }
  .price-card:nth-child(-n+2) { border-bottom:1px solid var(--line); }
}
@media screen and (min-width:1024px) and (max-width:1279px) {
  .course-select { grid-template-columns:38px minmax(0,1fr) 20px;row-gap:6px; }
  .course-number { grid-column:1;grid-row:1/3; }
  .course-name { grid-column:2;grid-row:1; }
  .course-select time { grid-column:2;grid-row:2; }
  .course-arrow { grid-column:3;grid-row:1/3; }
}
