:root {
  --point: #FF1E3E;
  --bg-dark: #110101;
  --color-white: #fff;
  --color-gray-4: #444;
  --bg-pink-light: #FFF2F5;
}
body {background-color: var(--bg-dark);}
.color_primary {
  color: var(--point);
}
.event_rentfree_contact {
  position: relative;
  overflow: hidden;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.20) 0%, #000 35%, #000 65%, rgba(0, 0, 0, 0.20) 100%);
}
.event_rentfree_contact::before,
.event_rentfree_contact::after {
  position: absolute;
  top: 0;
  z-index: -1;
  background-repeat: no-repeat; 
  background-size: cover;
  opacity: .5;
  display: block;
  content: '';
}
.event_rentfree_contact::before {
  left: 0;
  background-position: left center; 
  animation: translateLeft 1s cubic-bezier(0.6, 0, 1, 1) .5s;
}
.event_rentfree_contact::after {
  right: 0;
  background-position: right center; 
  animation: translateRight 1s cubic-bezier(0.6, 0, 1, 1) .5s;
}
.rentfree_contact {
  width: 100%;
  margin: 0 auto;
  color: var(--color-white);
  display: flex;
}
.rentfree_contact header {
  letter-spacing: 0;
  display: flex;
  flex-direction: column;
}
.rentfree_contact header h2 {
  font-weight: 700;
  line-height: 140%;
  color: inherit;
  letter-spacing: -1px;
}
.rentfree_contact header ._rentfree_text {
  font-weight: 400;
  line-height: 170%;
}
.rentfree_contact ._rentfree_bubble {
  position: relative;
  width: fit-content;
  font-weight: 700;
  line-height: 170%;
  color: var(--color-white);
  text-align: center;
  background-color: var(--point);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  order: -1;
}
.rentfree_contact ._rentfree_bubble::after {
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100% auto !important;
  display: block;
  content: '';
}
.rentfree_contact ._cautions_list {
  font-size: 12px;
  line-height: 170%;
  color: var(--color-white);
  opacity: .5;
}
/* leadform */
.rentfree_contact .contact-box {
  overflow: hidden;
  width: 100%;
}
.rentfree_contact .form-box {
  width: 100%;
  background-color: var(--color-white);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.rentfree_contact .leadforms_box {
  width: 100%;
}
.rentfree_contact .leadforms_box .wpforms-container {
  margin: 0 auto !important;
}
.rentfree_contact .leadforms_box .wpforms-submit-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top: 0 !important;
}
.rentfree_contact .wpforms-field .wpforms-field-label {
  font-size: 18px;
  color: var(--color-gray-4) !important;
}
.rentfree_contact .check_small input:checked + label::after,
.rentfree_contact .check_round input:checked + label::after {
  background-color: var(--point);
}
.rentfree_contact .check_round input:checked + label::after {
  border-color: var(--point);
}
.rentfree_contact div.wpforms-container-full .wpforms-form button[type=submit] {
  height: 56px;
  font-weight: 600;
  font-size: 18px !important;
  letter-spacing: 0;
  border-radius: 8px;
}
.rentfree_contact div.wpforms-container-full .wpforms-form button[type=submit]:not(:disabled),
.rentfree_contact div.wpforms-container-full .wpforms-form button[type=submit]:not(:disabled):hover {
  background: var(--point) !important;
}
.rentfree_contact ._cautions_box,
.rentfree_contact ._cautions_text {
  line-height: 170%;
  color: var(--point);
  letter-spacing: 0;
}
.rentfree_contact ._cautions_box {
  position: relative;
  width: fit-content;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  background-color: var(--bg-pink-light);
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.rentfree_contact ._cautions_box::after {
  position: absolute;
  bottom: -8px;
  left: 50%;
  width: 13px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='8' viewBox='0 0 13 8' fill='none'%3E%3Cpath d='M5.7 6.93333C6.1 7.46667 6.9 7.46667 7.3 6.93333L12.5 0H0.5L5.7 6.93333Z' fill='%23FFF2F5'/%3E%3C/svg%3E");
  transform: translateX(-50%);
  display: block;
  content: '';
}
.rentfree_contact ._cautions_text {
  font-size: 12px;
  line-height: 170%;
}
.rentfree_contact input[type="text"],
.rentfree_contact input[type="number"],
.rentfree_contact input[type="email"] {
  border-radius: 0 !important;
}
.rentfree_contact div.wpforms-container-full .wpforms-form label.wpforms-error, 
.rentfree_contact div.wpforms-container-full .wpforms-form em.wpforms-error {
  margin-top: 0 !important;
}
.rentfree_contact .check_small input:checked + label::after {
  top: 2px;
}

@media (min-width: 961px) {
  .hidden_pc {display: none;}
  .hidden_mo {display: block;}

  .event_rentfree_contact {padding: 100px var(--menu_padding);}
  .event_rentfree_contact::before,
  .event_rentfree_contact::after {width: 50%;height: 100%;}
  .event_rentfree_contact::before {background-image: url('/wp-content/themes/fastfive/assets/images/contact/bg_curtain_left.png');}
  .event_rentfree_contact::after {background-image: url('/wp-content/themes/fastfive/assets/images/contact/bg_curtain_right.png');}
  .rentfree_contact {max-width: 1240px; align-items: flex-start;}
  .rentfree_contact header {width: 49.52%;padding-right: 30px; flex: 0 0 auto;}
  .rentfree_contact header h2 {margin-top: 20px;font-size: 52px;}
  .rentfree_contact header ._rentfree_text {margin-top: 16px; font-size: 20px;}
  .rentfree_contact ._rentfree_bubble {height: 40px;padding: 0 14px;font-size: 18px;border-radius: 40px;}
  .rentfree_contact ._rentfree_bubble::after {bottom: -12px;left: 32px;width: 14px;height: 12px;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='12' viewBox='0 0 14 12' fill='none'%3E%3Cpath d='M7.86378 10.5192C7.4779 11.1807 6.5221 11.1807 6.13622 10.5192L9.53988e-08 6.8343e-07L14 9.53674e-07L7.86378 10.5192Z' fill='%23FF1E3E'/%3E%3C/svg%3E");}
  .rentfree_contact ._cautions_list {margin-top: 56px;}
  .rentfree_contact .check_round input + label,
  .rentfree_contact .check_round input:checked + label {
    font-size: 16px !important;
  }
  .rentfree_contact .check_small input + label,
  .rentfree_contact .check_small input:checked + label {
    font-size: 14px !important;
  }

  .rentfree_contact .contact-box {max-width: 626px;border-radius: 10px;}
  .rentfree_contact .form-box {padding-bottom: 56px;}
  .rentfree_contact ._cautions_box {height: 31px; margin-top: 18px; padding: 0 10px; border-radius: 20px;}
  .rentfree_contact ._cautions_text {margin-top: 9px;}
}

/* mobile */
@media (max-width: 960px) {
  .hidden_pc {display: block;}
  .hidden_mo {display: none;}

  .event_rentfree_contact::before,
  .event_rentfree_contact::after {
    width: 37.3vw;
    aspect-ratio: 140 / 598;
  }
  .event_rentfree_contact::before {background-image: url('/wp-content/themes/fastfive/assets/images/contact/bg_curtain_left_m.png');}
  .event_rentfree_contact::after {background-image: url('/wp-content/themes/fastfive/assets/images/contact/bg_curtain_right_m.png');}
  .rentfree_contact {max-width: 375px;padding: 44px var(--menu_padding);flex-direction: column;}
  .rentfree_contact header {text-align: center;align-items: center;}
  .rentfree_contact header h2 {margin-top: 14px;font-size: 34px;order: 1;}
  .rentfree_contact header ._rentfree_text {margin-top: 10px;font-size: 18px;order: 2;}
  .rentfree_contact ._rentfree_bubble {height: 34px;padding: 0 12px;font-size: 16px;border-radius: 34px;}
  .rentfree_contact ._rentfree_bubble::after {bottom: -7px; left: 50%; width: 10px; height: 8px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='11' viewBox='0 0 14 11' fill='none'%3E%3Cpath d='M7 11L13.0622 0.5H0.937822L7 11Z' fill='%23FF003C'/%3E%3C/svg%3E"); transform: translateX(-50%);}
  .rentfree_contact ._cautions_list {margin-top: 25px; order: 3;}

  .rentfree_contact .contact-box {margin-top: 40px;border-radius: 8px;}
  .rentfree_contact .wpforms-container .wpforms-field-container {padding: 30px 30px 52px !important;}
  .rentfree_contact .has_error:not(.check_round), form .wpforms-error:not(input) { top: 16px;}
  .rentfree_contact .form-box {padding-bottom: 38px;}
  .rentfree_contact div.wpforms-container-full .wpforms-form .wpforms-field-label {font-size: 16px !important;}
  .rentfree_contact div.wpforms-container-full .wpforms-form button[type=submit] {font-size: 16px !important; line-height: 1 !important;}
  .rentfree_contact ._cautions_box {min-width: 202px; margin-top: 20px; padding: 6px 10px; border-radius: 30px;}
  .rentfree_contact ._cautions_text {margin-top: 13px; text-align: center;}

  .rentfree_contact .check_small label { font-size: 14px !important;}
  .rentfree_contact .check_small input + label,
  .rentfree_contact .check_small input:checked + label {
    padding-left: 24px !important;
  }
}
@keyframes translateLeft {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes translateRight {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}