/* 到着日の案内だけに適用。既存のkk部品を読みやすい文字サイズと余白で使う。 */
.flight-page h1,.flight-page h2,.flight-page h3{ text-wrap:balance; }
.flight-page .kk-hero{ min-height:0; }
.flight-page .kk-hero__content{ min-height:620px; padding:110px 24px 64px; }
.flight-page .kk-hero__inner{ gap:22px; min-width:0; width:100%; }
.flight-page .kk-hero__h1{ font-size:clamp(30px,5vw,52px); letter-spacing:.08em; }
.flight-page .kk-hero__subtitle,.flight-page .kk-hero__hours{ font-family:var(--sans); font-size:15px; letter-spacing:.04em; line-height:1.9; text-transform:none; color:#d8cebc; }
.flight-page .kk-hero__kicker{ letter-spacing:.12em; }
.flight-page .kk-hero__cta{ max-width:100%; }
.flight-page .kk-btn-tel{ max-width:100%; }
.flight-page .kk-btn-tel__label{ font-size:14px; letter-spacing:.06em; }
.flight-page .kk-btn-tel__num{ font-size:26px; letter-spacing:.04em; }
.flight-page .flight-mail{ color:#e1c776; font-size:16px; }
.flight-page a:not(.btn-gold):not(.kk-breadcrumb__link){ text-decoration:underline; text-underline-offset:4px; }
.flight-page .kk-lead,.flight-page .kk-flow,.flight-page .kk-pricing,.flight-page .kk-faq,.flight-page .kk-cta{ padding:88px 0; }
.flight-page .kk-flow__head,.flight-page .kk-pricing__head{ margin-bottom:40px; }
.flight-page .kk-lead__inner{ gap:28px; }
.flight-page .kk-lead__heading,.flight-page .kk-flow__heading,.flight-page .kk-pricing__heading,.flight-page .kk-faq__heading,.flight-page .kk-cta__heading{ font-size:clamp(24px,3vw,34px); letter-spacing:.06em; text-wrap:balance; }
.flight-page .kk-lead__lede{ font-size:20px; letter-spacing:.04em; }
.flight-page .kk-lead__text{ margin-top:28px; }
.flight-page .kk-flow__steps{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.flight-page .kk-flow__step{ padding:32px; min-width:0; }
.flight-page .kk-flow__step-title{ font-size:21px; line-height:1.6; letter-spacing:.04em; margin-bottom:16px; }
.flight-page .kk-lead__text,.flight-page .kk-flow__step-desc,.flight-page .kk-faq__a,.flight-page .flight-health,.flight-page .flight-related{ font-size:16px; line-height:2; letter-spacing:.03em; }
.flight-page .kk-pricing__table{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.flight-page .kk-pricing__row{ min-width:0; padding:32px 24px; gap:20px; }
.flight-page .kk-pricing__duration{ text-wrap:nowrap; }
.flight-page .kk-pricing__note,.flight-page .flight-course-note,.flight-page .flight-pricing-note{ font-size:16px; line-height:1.9; letter-spacing:.02em; color:#d8cebc; }
.flight-page .flight-pricing-note{ max-width:760px; margin:32px auto 0; }
.flight-page .flight-pricing-note a{ color:#e1c776; }
.flight-page .flight-health{ max-width:760px; margin:48px auto 0; color:var(--ink-soft); }
.flight-page .flight-health h3{ font-family:var(--serif); font-size:22px; font-weight:400; }
.flight-page .flight-health p{ margin-top:20px; }
.flight-page .kk-faq__q{ font-size:18px; letter-spacing:.03em; }
.flight-page .flight-related{ max-width:760px; margin:40px auto 0; }
.flight-page .kk-cta{ background:var(--black); }
.flight-page .kk-cta__sub,.flight-page .kk-cta__hours{ color:#d8cebc; font-size:16px; line-height:1.9; letter-spacing:.03em; }
.flight-page .kk-cta__tel{ font-size:clamp(25px,3.5vw,40px); letter-spacing:.02em; }
.flight-page .kk-cta__buttons{ margin-bottom:24px; }
.flight-page .flight-language{ margin-top:24px; }
.flight-page[lang="en"] h1,.flight-page[lang="en"] h2,.flight-page[lang="en"] h3{ letter-spacing:.015em; word-break:normal; }
@media(max-width:900px){
  .flight-page .kk-flow__steps{ grid-template-columns:minmax(0,1fr); }
  .flight-page .kk-pricing__table{ grid-template-columns:minmax(0,1fr); }
  .flight-page .kk-pricing__row{ border-right:0; border-bottom:1px solid rgba(201,168,76,.18); }
  .flight-page .kk-pricing__row:last-child{ border-bottom:0; }
}
@media(max-width:600px){
  .flight-page .wrap{ padding-left:16px; padding-right:16px; }
  .flight-page .kk-hero__content{ min-height:560px; padding:64px 16px 48px; }
  .flight-page .kk-lead,.flight-page .kk-flow,.flight-page .kk-pricing,.flight-page .kk-faq,.flight-page .kk-cta{ padding:64px 0; }
  .flight-page .kk-flow__steps{ grid-template-columns:minmax(0,1fr); }
  .flight-page .kk-flow__step{ padding:28px 20px; }
  .flight-page .kk-faq__a{ padding-right:8px; }
  .flight-page .kk-faq__q{ padding-right:28px; }
}
