:root {
  --point: #FF5B5B;
  --main-text-color: #121212;
  --color_blue: #3DA2FF;
  --border-radius: 8px;
}
ul, li { list-style: none;}
.affiliate_contact {
  color: var(--main-text-color);
  background: linear-gradient(180deg, #FFCD4E -1.6%, #FFF6CC 125.41%);
}
.affiliate_contact .inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: var(--padding-y) var(--padding-x);
  display: flex;
}
.affiliate_contact .contact_header {
  letter-spacing: 0;
}
.affiliate_contact .title_h1 {
  font-weight: 700;
  line-height: 140%;
  color: inherit;
  letter-spacing: -1px;
}
.affiliate_contact .text_p1 {
  font-weight: 400;
  line-height: 1.7;
}
.affiliate_contact .text_box {
  width: fit-content;
  font-weight: 600;
  line-height: 1.7;
  background: rgba(255, 255, 255, 0.4);
  border-radius: calc(var(--border-radius) * 2);
}
.affiliate_contact .text_box a {
  color: var(--color_blue);
  text-decoration: underline;
}
.affiliate_contact .img_area {
  --opacity: 0;
  --scale: 0.5;
  --translateY: 50%;
  position: relative;
  width: 100%;
}
.affiliate_contact .img_area::before,
.affiliate_contact .img_area::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  transform: translateY(var(--translateY));
  opacity: var(--opacity);
  display: block;
  content: '';
}
.affiliate_contact .img_area::before {
  animation: ani_open_img 0.55s 0.3s ease-in-out forwards, ani_translateY 1.2s 0.85s ease-in-out forwards infinite alternate;
}
.affiliate_contact .img_area::after {
  animation: ani_open_img 0.55s 0.3s ease-in-out forwards, ani_translateY 1.3s 1.05s ease-in-out forwards infinite alternate;
}
/* leadform */
.affiliate_contact .contact-box {
  width: 100%;
}
.affiliate_contact .form-box {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: calc(var(--border-radius) * 2);
}
.affiliate_contact .leadforms_box {
  position: relative;
  width: 100%;
}
.affiliate_contact .leadforms_box .wpforms-container {
  margin: 0 auto !important;
}
.affiliate_contact .leadforms_box .wpforms-submit-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top: 0 !important;
}
.affiliate_contact .wpforms-field .wpforms-field-label {
  font-size: 18px;
}
.affiliate_contact .check_small input:checked + label::after,
.affiliate_contact .check_round input:checked + label::after {
  background-color: var(--main-text-color);
}
.affiliate_contact .check_round input:checked + label::after {
  border-color: var(--main-text-color);
}
.affiliate_contact div.wpforms-container-full .wpforms-form button[type=submit] {
  height: 56px !important;
  font-weight: 600;
  font-size: 18px !important;
  /* line-height: 1.7; */
  letter-spacing: 0;
  background: #D9D9D9 !important;
  border-radius: var(--border-radius);
}
.affiliate_contact div.wpforms-container-full .wpforms-form button[type=submit]:not(:disabled),
.affiliate_contact div.wpforms-container-full .wpforms-form button[type=submit]:not(:disabled):hover {
  background: var(--main-text-color) !important;
}
.affiliate_contact .name-or-company-hidden { 
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}
.affiliate_contact .lead_agree_form {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  pointer-events: none;
}
.affiliate_contact .caution_text {
  font-size: 14px;
  color: var(--point);
  line-height: 140%;
  letter-spacing: 0;
  position: absolute;
  left: 50%;
  width: 100%;
  transform: translate(-50%, 50%);
  text-align: center;
}

.event_common_cautions .notice_text { flex: 1;}
.event_common_cautions .notice_table { margin: 5px 0; border-collapse: collapse;}
.event_common_cautions .notice_table th,
.event_common_cautions .notice_table td { margin: 0; padding: 5px 10px; border: 1px solid #a9a9a9;}
.event_common_cautions .notice_table th { text-align: center; background: #D9D9D9;}
.event_common_cautions .notice_table td {background: #fff;}
.event_common_cautions .notice_table td ul li { position: relative; padding-left: 6px; text-indent: 0;}
.event_common_cautions .notice_table td ul li::before { position: absolute; top: 8px; left: 0; width: 4px; height: 4px; background: #5d5d5d; display: block; content: ''; border-radius: 50%;}

@keyframes ani_open_img {
  from {
    transform: translateY(10%) scale(0.8);
    opacity: 0;
  }
  to {
    transform: translateY(0%) scale(1);
    opacity: 1;
  }
}
/* leadform */
.affiliate_contact input[type="text"],
.affiliate_contact input[type="number"],
.affiliate_contact input[type="email"] {
  border-radius: 0 !important;
}
.affiliate_contact .div.wpforms-container-full .wpforms-form label.wpforms-error, 
.affiliate_contact div.wpforms-container-full .wpforms-form em.wpforms-error {
  margin-top: 0 !important;
}
.affiliate_contact .check_small input:checked + label::after {
  top: 2px;
}

/* desktop */
@media (min-width: 961px) {
  @keyframes ani_translateY {
    from {
      transform: translateY(0%) scale(1);
    }
    to {
      transform: translateY(2.5%) scale(1);
    }
  }
  :root {
    --max-width: 1340px;
    --padding-x: 50px;
    --padding-y: 80px;
  }
  .hidden_pc {display: none;}
  .hidden_mo {display: block;}
  /* contact header */
  .affiliate_contact .contact_header {width: 49.52%;padding-right: 30px;flex: 0 0 auto;}
  .affiliate_contact .title_h1 {font-size: 52px;}
  .affiliate_contact .text_p1 {margin-top: 16px;font-size: 20px;}
  .affiliate_contact .text_box {margin-top: 50px;padding: 12px 20px;font-size: 16px;}
  .affiliate_contact .img_area {max-width: 438px;margin-top: 5px;aspect-ratio: 438 / 354;}
  .affiliate_contact .img_area::before {background-image: url('/wp-content/themes/fastfive/assets/images/contact/icon_affiliate_01.png');}
  .affiliate_contact .img_area::after {background-image: url('/wp-content/themes/fastfive/assets/images/contact/icon_affiliate_02.png');}
  /* leadform */
  .affiliate_contact .leadforms_box .wpforms-field-container {padding: 40px 40px 100px !important;}
  .affiliate_contact .check_round input + label,
  .affiliate_contact .check_round input:checked + label {font-size: 16px !important;}
  .affiliate_contact .check_small input + label,
  .affiliate_contact .check_small input:checked + label {font-size: 14px !important;}
  .affiliate_contact .contact-box {max-width: 626px;}
  .affiliate_contact .form-box {padding-bottom: 56px;}
  .affiliate_contact .caution_text { bottom: 106px; padding: 0 min(84px, 12%);}
}

/* mobile */
@media (max-width: 960px) {
  @keyframes ani_translateY {
    from {
      transform: translateY(0%) scale(1);
    }
    to {
      transform: translateY(4%) scale(1);
    }
  }
  :root {
    --gap: 40px;
    --max-width: 375px;
    --padding-x: 20px;
    --padding-y: 50px;
  }
  .hidden_pc {display: block;}
  .hidden_mo {display: none;}

  .affiliate_contact .inner {flex-direction: column; gap: var(--gap);}
  .affiliate_contact .contact_header {text-align: center;display: flex;flex-direction: column; align-items: center;}
  .affiliate_contact .title_h1 {margin-top: 20px;font-size: 34px;}
  .affiliate_contact .text_p1 {margin-top: 10px;font-size: 16px;}
  .affiliate_contact .text_box {position: relative;margin: 30px auto 0;padding: 14px 20px;font-size: 14px;}
  .affiliate_contact .text_box::before {
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0;
    height: 0;
    border-width: 12px 7px 0 7px;
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent;
    transform: translateX(-50%);
    display: block;
    content: '';
  }
  .affiliate_contact .img_area {max-width: 158px;transform: translateX(20px);aspect-ratio: 158 / 103;order: -1;}
  .affiliate_contact .img_area::before {background-image: url('/wp-content/themes/fastfive/assets/images/contact/icon_affiliate_01_mo.png');}
  .affiliate_contact .img_area::after {z-index: -1; background-image: url('/wp-content/themes/fastfive/assets/images/contact/icon_affiliate_02_mo.png');}
  /* leadform */
  .affiliate_contact .wpforms-container .wpforms-field-container {padding: 30px 30px 100px !important;}
  .affiliate_contact .has_error:not(.check_round), form .wpforms-error:not(input) { top: 16px !important;}
  .affiliate_contact .form-box {padding-bottom: 40px;}
  .affiliate_contact div.wpforms-container-full .wpforms-form .wpforms-field-label {font-size: 16px !important;}
  .affiliate_contact div.wpforms-container-full .wpforms-form button[type=submit] {font-size: 16px !important; line-height: 1 !important;}
  .affiliate_contact ._cautions_box {min-width: 202px; margin-top: 20px; padding: 6px 10px; border-radius: 30px;}
  .affiliate_contact ._cautions_text {margin-top: 13px; text-align: center;}
  .affiliate_contact .check_small label { font-size: 14px !important;}
  .affiliate_contact .check_small input + label,
  .affiliate_contact .check_small input:checked + label {padding-left: 24px !important;}
  .affiliate_contact .caution_text { bottom: 106px; padding: 0 30px;}

  .event_common_cautions_inner { max-width: 375px; padding: 0 20px;}
}