@charset "UTF-8";
.bg-primary {
  background-color: var(--color-primary);
}

.text-primary {
  color: var(--color-primary);
}

.bg-primary-lighter {
  background-color: var(--color-primary-lighter);
}

.text-primary-lighter {
  color: var(--color-primary-lighter);
}

.bg-lightblue-1 {
  background-color: var(--color-lightblue-1);
}

.text-lightblue-1 {
  color: var(--color-lightblue-1);
}

.bg-lightblue-2 {
  background-color: var(--color-lightblue-2);
}

.text-lightblue-2 {
  color: var(--color-lightblue-2);
}

.bg-gray-1 {
  background-color: var(--color-gray-1);
}

.text-gray-1 {
  color: var(--color-gray-1);
}

.bg-gray-2 {
  background-color: var(--color-gray-2);
}

.text-gray-2 {
  color: var(--color-gray-2);
}

@media (min-width: 560px) {
  .sm\:bg-primary {
    background-color: var(--color-primary);
  }
  .sm\:text-primary {
    color: var(--color-primary);
  }
  .sm\:bg-primary-lighter {
    background-color: var(--color-primary-lighter);
  }
  .sm\:text-primary-lighter {
    color: var(--color-primary-lighter);
  }
  .sm\:bg-lightblue-1 {
    background-color: var(--color-lightblue-1);
  }
  .sm\:text-lightblue-1 {
    color: var(--color-lightblue-1);
  }
  .sm\:bg-lightblue-2 {
    background-color: var(--color-lightblue-2);
  }
  .sm\:text-lightblue-2 {
    color: var(--color-lightblue-2);
  }
  .sm\:bg-gray-1 {
    background-color: var(--color-gray-1);
  }
  .sm\:text-gray-1 {
    color: var(--color-gray-1);
  }
  .sm\:bg-gray-2 {
    background-color: var(--color-gray-2);
  }
  .sm\:text-gray-2 {
    color: var(--color-gray-2);
  }
}
@media (min-width: 768px) {
  .md\:bg-primary {
    background-color: var(--color-primary);
  }
  .md\:text-primary {
    color: var(--color-primary);
  }
  .md\:bg-primary-lighter {
    background-color: var(--color-primary-lighter);
  }
  .md\:text-primary-lighter {
    color: var(--color-primary-lighter);
  }
  .md\:bg-lightblue-1 {
    background-color: var(--color-lightblue-1);
  }
  .md\:text-lightblue-1 {
    color: var(--color-lightblue-1);
  }
  .md\:bg-lightblue-2 {
    background-color: var(--color-lightblue-2);
  }
  .md\:text-lightblue-2 {
    color: var(--color-lightblue-2);
  }
  .md\:bg-gray-1 {
    background-color: var(--color-gray-1);
  }
  .md\:text-gray-1 {
    color: var(--color-gray-1);
  }
  .md\:bg-gray-2 {
    background-color: var(--color-gray-2);
  }
  .md\:text-gray-2 {
    color: var(--color-gray-2);
  }
}
@media (min-width: 1024px) {
  .lg\:bg-primary {
    background-color: var(--color-primary);
  }
  .lg\:text-primary {
    color: var(--color-primary);
  }
  .lg\:bg-primary-lighter {
    background-color: var(--color-primary-lighter);
  }
  .lg\:text-primary-lighter {
    color: var(--color-primary-lighter);
  }
  .lg\:bg-lightblue-1 {
    background-color: var(--color-lightblue-1);
  }
  .lg\:text-lightblue-1 {
    color: var(--color-lightblue-1);
  }
  .lg\:bg-lightblue-2 {
    background-color: var(--color-lightblue-2);
  }
  .lg\:text-lightblue-2 {
    color: var(--color-lightblue-2);
  }
  .lg\:bg-gray-1 {
    background-color: var(--color-gray-1);
  }
  .lg\:text-gray-1 {
    color: var(--color-gray-1);
  }
  .lg\:bg-gray-2 {
    background-color: var(--color-gray-2);
  }
  .lg\:text-gray-2 {
    color: var(--color-gray-2);
  }
}
@media (min-width: 1728px) {
  .xl\:bg-primary {
    background-color: var(--color-primary);
  }
  .xl\:text-primary {
    color: var(--color-primary);
  }
  .xl\:bg-primary-lighter {
    background-color: var(--color-primary-lighter);
  }
  .xl\:text-primary-lighter {
    color: var(--color-primary-lighter);
  }
  .xl\:bg-lightblue-1 {
    background-color: var(--color-lightblue-1);
  }
  .xl\:text-lightblue-1 {
    color: var(--color-lightblue-1);
  }
  .xl\:bg-lightblue-2 {
    background-color: var(--color-lightblue-2);
  }
  .xl\:text-lightblue-2 {
    color: var(--color-lightblue-2);
  }
  .xl\:bg-gray-1 {
    background-color: var(--color-gray-1);
  }
  .xl\:text-gray-1 {
    color: var(--color-gray-1);
  }
  .xl\:bg-gray-2 {
    background-color: var(--color-gray-2);
  }
  .xl\:text-gray-2 {
    color: var(--color-gray-2);
  }
}
body {
  --color-base: #000;
  --color-error: #CF1E1E;
  --header-height: 92px;
  --container-size-sm: 1160px;
  --container-size-md: 1554px;
  --font-base: var(--font-noto);
  --font-poppins: "Poppins", sans-serif;
  --leading-relaxed: 1.75;
  --color-primary: #2B5188;
  --color-primary-rgb: 43 81 136;
  --color-primary-lighter: #3E74C1;
  --color-primary-lighter-rgb: 62 116 193;
  --color-lightblue-1: #EDF1F5;
  --color-lightblue-1-rgb: 237 241 245;
  --color-lightblue-2: #F8FBFE;
  --color-lightblue-2-rgb: 248 251 254;
  --color-gray-1: #888888;
  --color-gray-1-rgb: 136 136 136;
  --color-gray-2: #AAAAAA;
  --color-gray-2-rgb: 170 170 170;
}
@media (max-width: 767.98px) {
  body {
    --header-height: 80px;
  }
}

.font-poppins {
  font-family: var(--font-poppins);
}

#section-under-fv .under-page-title {
  font-size: clamp(3.2rem, 0.081321474rem + 4.0660736976vw, 6.4rem);
}

.section-form-description {
  margin-bottom: clamp(5.2rem, 3.4457433291rem + 2.2871664549vw, 7rem);
  font-size: var(--text-lg);
}
@media (max-width: 767.98px) {
  .section-form-description {
    font-size: var(--text-xs);
    line-height: 1.714285714;
  }
}

.site-footer {
  margin-top: clamp(5rem, -1.8221092757rem + 8.8945362135vw, 12rem);
}

@media (max-width: 767.98px) {
  body:is(.page-privacy, .page-contact) #section-under-fv {
    margin-top: 70px;
  }
}

body.page-privacy #section-under-fv {
  margin-top: clamp(6.4rem, 1.527064803rem + 6.3532401525vw, 11.4rem);
}

body.page-privacy #section-under-fv .under-page-title {
  margin-bottom: clamp(3.6rem, -5.5611181703rem + 11.9440914867vw, 13rem);
}

body.page-privacy .site-footer {
  margin-top: clamp(3.5rem, -3.8094027954rem + 9.5298602287vw, 11rem);
}

body.page-contact #section-under-fv {
  margin-top: clamp(6.4rem, 1.527064803rem + 6.3532401525vw, 11.4rem);
}

body.page-contact #section-under-fv .under-page-title {
  margin-bottom: clamp(3.4rem, 2.0355781449rem + 1.7789072427vw, 4.8rem);
}

body.page-thanks .site-footer {
  margin-top: clamp(3.5rem, -3.8094027954rem + 9.5298602287vw, 11rem);
}

.form-items {
  gap: 60px;
}
@media (max-width: 767.98px) {
  .form-items {
    gap: 40px;
  }
}
@media (max-width: 767.98px) {
  .form-items > .form-item:first-child {
    margin-bottom: 16px;
  }
}
.form-items .grid {
  gap: 40px;
}
@media (max-width: 767.98px) {
  .form-items .grid {
    display: contents !important;
  }
}

.form-item:has(input[type=radio]) .form-head {
  margin-bottom: 0;
}

.form-item:has(input[type=radio]) .form-head p::after {
  display: none;
}

.wpcf7-list-item:has([type=radio]) {
  --outer-size: 20px;
  --inner-size: 12px;
}
.wpcf7-list-item:has([type=radio]) label {
  gap: 16px;
}
@media (max-width: 767.98px) {
  .wpcf7-list-item:has([type=radio]) label {
    gap: 10px;
  }
}

.wpcf7-list-item:has([type=radio]) label:has([type=radio])::before {
  border-color: #ddd;
  background-color: transparent;
}

.wpcf7-list-item:has([type=radio]) label:has([type=radio]):has(input[type=radio]:checked)::before {
  border-color: var(--color-black);
}

.form-item {
  gap: 40px;
}

.form-head {
  margin-top: 0;
  margin-bottom: 11px;
  font-size: var(--text-xs);
  font-weight: var(--font-regular);
}
@media (max-width: 767.98px) {
  .form-head {
    margin-bottom: 2px;
    font-size: var(--text-3xs);
  }
}
.form-head p {
  gap: 0;
}

.form-item:has([aria-required=true], .wpcf7-validates-as-required, input[type=radio]) .form-head p::after {
  content: "＊";
  padding: 0;
  font-size: var(--text-xs);
  line-height: 1;
  color: var(--color-error);
  background-color: transparent;
}

.form-wrapper :is(input[type=text], input[type=password], input[type=email], input[type=tel], input[type=url], input[type=number], input[type=date], textarea, select) {
  padding: 0;
  padding-bottom: 3px;
  border: none;
  border-bottom: 1px solid var(--color-base);
  background-color: transparent;
}

.form-wrapper .form-item:has(input[type=text], input[type=password], input[type=email], input[type=tel], input[type=url], input[type=number], input[type=date], textarea, select) {
  gap: 8px;
}
@media (max-width: 767.98px) {
  .form-wrapper .form-item:has(input[type=text], input[type=password], input[type=email], input[type=tel], input[type=url], input[type=number], input[type=date], textarea, select) {
    gap: 25px;
  }
}

.form-wrapper {
  --checkbox-radio-col-gap: 40px;
  font-size: var(--text-lg);
}
@media (max-width: 767.98px) {
  .form-wrapper {
    font-size: var(--text-xs);
  }
}
.form-wrapper textarea {
  height: 182px;
}
@media (max-width: 767.98px) {
  .form-wrapper textarea {
    height: 163px;
  }
}

@media (max-width: 767.98px) {
  .wpcf7-form-control:is(.wpcf7-radio, .wpcf7-checkbox, .wpcf7-acceptance):not(.flex-col) {
    flex-direction: row;
  }
  .wpcf7-form-control:is(.wpcf7-radio, .wpcf7-checkbox, .wpcf7-acceptance):not(.flex-col) {
    gap: 20px 30px;
  }
}
#consent-box a {
  color: currentColor;
}
#consent-box span {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: var(--text-lg);
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  #consent-box span {
    font-size: var(--text-xs);
  }
}

#section-form .btn-wrapper {
  margin-top: 60px;
}
@media (max-width: 767.98px) {
  #section-form .btn-wrapper {
    margin-top: 40px;
  }
}

.wpcf7-form-control.wpcf7-acceptance {
  margin-block: 60px;
}
@media (max-width: 767.98px) {
  .wpcf7-form-control.wpcf7-acceptance {
    margin-block: 40px;
  }
  .wpcf7-form-control.wpcf7-acceptance label {
    gap: 10px;
  }
}

.wpcf7-list-item:has([type=checkbox]) label:has([type=checkbox])::before {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border-color: var(--color-black);
}
@media (max-width: 767.98px) {
  .wpcf7-list-item:has([type=checkbox]) label:has([type=checkbox])::before {
    width: 24px;
    height: 24px;
  }
}

.wpcf7-list-item:has([type=checkbox]) label:has([type=checkbox])::after {
  width: 7px;
  height: 11px;
  rotate: 44deg;
  bottom: 10px;
  left: 11px;
}
@media (max-width: 767.98px) {
  .wpcf7-list-item:has([type=checkbox]) label:has([type=checkbox])::after {
    bottom: 8px;
    left: 9px;
  }
}

#section-form .btn-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}
#section-form .btn-wrapper input {
  width: 445px;
  max-width: 100%;
  height: 100px;
  border-radius: 8px;
  font-size: var(--text-lg);
  color: var(--color-white);
  background-color: var(--color-base);
  transition: 0.3s all ease-in-out;
}
@media (max-width: 767.98px) {
  #section-form .btn-wrapper input {
    width: 100%;
    height: 80px;
    font-size: var(--text-xs);
  }
}
#section-form .btn-wrapper input:not(:disabled):hover {
  opacity: 0.7;
}
#section-form .btn-wrapper input:disabled {
  color: var(--color-gray-400);
  background-color: var(--color-gray-300);
}
#section-form .btn-wrapper input:disabled:hover {
  cursor: not-allowed;
}

.form-error {
  margin-bottom: 12px;
  padding: 8px 20px;
  border-radius: 4px;
  font-size: var(--text-xs);
  line-height: var(--leading-none);
  color: var(--color-white);
  background-color: var(--color-error);
}
@media (max-width: 767.98px) {
  .form-error {
    margin-bottom: 0;
  }
}

.section-thanks-text {
  display: grid;
  gap: 2em;
  font-size: var(--text-lg);
  text-align: center;
}
@media (max-width: 767.98px) {
  .section-thanks-text {
    font-size: var(--text-xs);
    text-align: left;
  }
}

.form-wrapper textarea {
  height: 179px;
  resize: none;
  border-radius: 0;
  border: none;
}
@media (max-width: 767.98px) {
  .form-wrapper textarea {
    height: 152px;
  }
}

body.page-thanks #wrapper {
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: 100%;
  min-height: 100vh;
}
