:root {
  --point: #F32F40;
  --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(180deg, #FFD2D2 0%, #FFE7A9 101.81%);}
.rentfree_contact { position: relative; z-index: 1; 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: 130%; color: #680004; letter-spacing: -1px;}
.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: '';}
.event_rentfree_contact .bg_area { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none;}
.event_rentfree_contact .bg_box { position: absolute; top: 0; left: 0; width: 100%; height: 100%; mix-blend-mode: color-burn;}
.event_rentfree_contact .bg_box > span {position: absolute;background-repeat: no-repeat; background-position: center center; background-size: 100% auto;}
.event_rentfree_contact .bg_area .cloud { opacity: 0; will-change: transform, opacity;}
.event_rentfree_contact .bg_area .cloud.cloud_1 {background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_cloud_01.png'); animation: cloudMove01 7s 0.2s linear infinite;}
.event_rentfree_contact .bg_area .cloud.cloud_2 {background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_cloud_02.png'); animation: cloudMove02 8s 0.4s linear infinite;}
.event_rentfree_contact .bg_area .cloud.cloud_3 {background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_cloud_03.png'); animation: cloudMove02 6s 0.6s linear infinite;}

/* leadform */
.rentfree_contact .contact-box { position: relative; width: 100%; background-color: var(--color-white);}
.rentfree_contact .form-box { width: 100%; 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: #444; letter-spacing: 0;}
.rentfree_contact ._cautions_text b { font-weight: 700;}
.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;}
  .rentfree_contact .wpforms-container .wpforms-field-container {padding: 30px 30px 77px !important;}
  .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;justify-content: space-between; align-items: flex-start;gap: 60px;}
  .rentfree_contact header {width: 49.52%;max-width: 480px;flex: 0 0 auto;}
  .rentfree_contact header h2 {margin-top: 20px; margin-bottom: 60px; 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");}
  .event_rentfree_contact .bg_area .mountain {top: 0;left: 0;width: 100%; height: 100%; background: url('/wp-content/themes/fastfive/assets/images/contact/bg_2026rentfree.png') no-repeat center 100% / 100% auto;}
  .event_rentfree_contact .bg_area .cloud.cloud_1 {top: 52.4%;left: 130px;width: 114px;height: 62px;}
  .event_rentfree_contact .bg_area .cloud.cloud_2 {top: 23.6%;right: 164px;width: 114px;height: 64px;}
  .event_rentfree_contact .bg_area .cloud.cloud_3 {top: 35%;right: 123px;width: 58px;height: 32px;}
  .event_rentfree_contact .patterns { position: absolute; top: 0; left: 50%; width: 100%; min-width: 1500px; height: 100%; padding: 32px var(--menu_padding) 0; transform: translateX(-50%);display: flex;}
  .event_rentfree_contact .pattern {background-repeat: no-repeat; background-position: center top; background-size: 100% auto;}
  .event_rentfree_contact .pattern:nth-of-type(2n-1) {position: relative; width: 83px; aspect-ratio: 1 / 1;}
  .event_rentfree_contact .pattern.pattern_left { background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_rentfree_pattern_left.png');}
  .event_rentfree_contact .pattern.pattern_center { width: 100%;height: 12px;background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_rentfree_pattern_center.png'); background-size: cover;}
  .event_rentfree_contact .pattern.pattern_right { background-image: url('/wp-content/themes/fastfive/assets/images/contact/img_rentfree_pattern_right.png');}
  .event_rentfree_contact .pattern:nth-of-type(2n-1)::before { position: absolute; top: 83px; width: 12px; height: 100%; background: linear-gradient(180deg, rgba(250, 250, 250, 0.2) 0%, rgba(255, 231, 175, 0.8) 100%); opacity: 0.8; display: block; content: '';}
  .event_rentfree_contact .pattern.pattern_left::before { left: 0;}
  .event_rentfree_contact .pattern.pattern_right::before { right: 0;}

  .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 .contact-box::before { position: absolute; right: -50px; bottom: -12px; width: 116px; background: url('/wp-content/themes/fastfive/assets/images/contact/img_luckybag.png') no-repeat center center / 100% auto; will-change: transform; transform: translateY(-10%); display: block; content: ''; aspect-ratio: 116 / 142; will-change: transform; animation: translateY 2.5s ease-in-out forwards infinite;}
  .rentfree_contact .form-box {padding-bottom: 56px;}
  .rentfree_contact ._cautions_text {margin-top: 18px; text-align: center;}
}

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

  .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 ._cautions_content {width: 100%;height: 100%;margin-top: 35px; order:2;aspect-ratio: 334 / 148;}
  .rentfree_contact ._cautions_content img { width: 100%; object-fit: cover;}
  .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%);}
  .event_rentfree_contact .bg_box { left: 50%; transform: translateX(-50%);}
  .event_rentfree_contact .bg_area .mountain {top: 0;left: 0;width: 100%; height: 100%; background: url('/wp-content/themes/fastfive/assets/images/contact/bg_2026rentfree.png') no-repeat center 100% / 1950px auto;}
  .event_rentfree_contact .bg_area .cloud.cloud_1 {top: 200px;left: 20px;width: 58px;height: 32px;}
  .event_rentfree_contact .bg_area .cloud.cloud_2 {top: 34px;right: 20px;width: 58px;height: 34px;}
  .event_rentfree_contact .bg_area .cloud.cloud_3 {top: 84px;right: -4px;width: 30px;height: 17px;}

  .rentfree_contact .contact-box {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_text {margin-top: 20px; 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 cloudMove01 {
  0% {
    transform: translateX(-50%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    transform: translateX(40%);
    opacity: 1;
  }
  100% {
    transform: translateX(50%);
    opacity: 0;
  }
}
@keyframes cloudMove02 {
  0% {
    transform: translateX(50%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    transform: translateX(-40%);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%);
    opacity: 0;
  }
}
@keyframes translateY {
  0% {
    transform: translateY(-8%);
  }
  50% {
    transform: translateY(8%);
  }
  100% {
    transform: translateY(-8%);
  }
}