/* Readability adjustments: load after top.css. */
main, .top_bar { width: 100%; max-width: 1040px; }
.top_bar img, .fv img { display: block; width: 100%; }
p { font-size: 18px; }
.sec02__inner { width: calc(100% - 32px); max-width: 760px; }
.sec02__inner p { font-size: 20px; }
.sec03__card { width: 88%; }
.ofer_sec { width: 88%; }
.sec03__title { font-size: 36px; }
.sec03__cta { font-size: 28px; text-align: center; }
.sec03__chev { flex-shrink: 0; }
.cta_wrap { width: 90%; max-width: 680px; }
.profile_sec_txt, .sec04__inner { width: calc(100% - 48px); max-width: 800px; }
.profile { width: 100%; }
.profile_sec_txt p { font-size: 16px; line-height: 1.9; }
.profile_sec_txt .profile { font-size: 20px; }
.sec04__inner { padding: 32px; }
.sec04__inner p, .sec05__desc, .sec07__desc { font-size: 18px; line-height: 1.9; }
.sec05__content { max-width: 780px; padding: 50px 36px 36px; }
.sec05__badge { left: -24px; }
.sec05__title { font-size: 30px; }
.sec05__lead { font-size: 20px; }
.product_sub { font-size: 16px; }
.sec06__img, .sec08__presentImg { width: 100%; max-width: 820px; }
.sec07__inner { width: 100%; max-width: 800px; }
.sec07__head { font-size: 24px; }
.faq__title, .faq-card { max-width: 840px; margin-left: auto; margin-right: auto; }
.faq__title { font-size: 28px; }
.faq__text, .faq__answer p { font-size: 17px; padding-right: 52px; overflow-wrap: anywhere; }
.small_txt, .sec03__chev_sub { font-size: 15px; line-height: 1.8; }
.notice { width: min(800px, 100%); }
.notice__body, .notice__list, .notice__list li, .notice__subtitle { font-size: 16px; }
.notice__blockTitle { font-size: 18px; }
.notice__telNote { font-size: 14px; }
@media (max-width: 768px) {
  p { font-size: 16px; }
  .sec02__inner p { font-size: 17px; }
  .sec03__card, .ofer_sec { width: 100%; }
  .sec03__title { font-size: 22px; }
  .sec03__cta { font-size: clamp(18px, 4.8vw, 22px); padding: 16px 12px; }
  .cta_wrap { width: 100%; }
  .profile_sec_txt, .sec04__inner { width: calc(100% - 32px); }
  .profile_sec_txt p { font-size: 15px; }
  .sec04__inner { padding: 28px 20px; }
  .sec04__inner p, .sec05__desc, .sec07__desc { font-size: 16px; }
  .sec05__content { max-width: 620px; padding: 50px 20px 28px; }
  .sec05__badge { left: -10px; }
  .sec05__title { font-size: 24px; }
  .sec05__lead { font-size: 17px; }
  .sec07__head { font-size: 20px; }
  .faq__title { font-size: 25px; }
  .faq__text, .faq__answer p { font-size: 16px; padding-right: 40px; }
  .small_txt, .sec03__chev_sub { font-size: 14px; line-height: 1.8; }
  .notice__head { margin: 16px 12px; }
}
