@media (max-width: 768px) {

.formy--wrap {
  padding: 10px;
}
}
.form_contact {
	--clr-text-primary: #333;
  --clr-error: red;
  --clr-primary-default: #fd7e00;
  --transit-default: .4s ease-out;
  --clr-text-placeholder: #ddd;
  --clr-wht: #fff;
}

.form_contact a {
  color: var(--clr-primary-default);
  text-decoration: underline
}

.form_contact input[type=text],
.form_contact input[type=email],
.form_contact input[type=tel],
.form_contact input[type=date],
.form_contact input[type=password],
.form_contact textarea {
  width: 100%
}

.form_contact input[type=number],
.form_contact input[type=text],
.form_contact input[type=email],
.form_contact input[type=tel],
.form_contact input[type=date],
.form_contact input[type=password],
.form_contact select,
.form_contact textarea {
  min-height: 50px;
  margin: 0;
  padding: 0.3125rem 0.9375rem;
  border: 1px solid #ccc;
  font-size: 16px;
  vertical-align: bottom;
  border-radius: 0.1875rem;
  transition: var(--transit-default)
}

@media screen and (max-width: 47.9375em) {

  .form_contact input[type=number],
  .form_contact input[type=text],
  .form_contact input[type=email],
  .form_contact input[type=tel],
  .form_contact input[type=date],
  .form_contact input[type=password],
  .form_contact select,
  .form_contact textarea {
    min-height: 40px
  }
}

.form_contact textarea {
  height: 6.25rem
}

.form_contact select {
  height: 2.5rem
}

.form_contact ul {
  list-style: none;
  margin: 0;
  padding: 0
}

.form_contact input:focus {
  outline: none
}

.form_contact .parsley-validated {
  background-color: #eee
}

.form_contact .parsley-error {
  background-color: #fee
}

.form_contact .parsley-success {
  background-color: var(--clr-wht)
}

@media(hover: hover) {
  .form_contact input:hover {
    opacity: .7
  }

  .form_contact textarea:hover {
    opacity: .7
  }
}

.form_contact .field {
  padding-block: 1rem;
  border-bottom: solid 1px #eee
}

.form_contact .field_ttl,
.form_contact .field_cont {
  vertical-align: middle
}

@media screen and (max-width: 47.9375em) {

  .form_contact .field_ttl,
  .form_contact .field_cont {
    display: block;
    width: auto !important;
    padding-left: 0;
    padding-right: 0
  }
}

@media screen and (max-width: 47.9375em) {
  .form_contact .field_cont {
    padding-top: 0
  }
}

.form_contact .field_ttl {
  font-size: max(16px, 1.125rem);
  font-weight: 500;
  white-space: nowrap;
  text-align: left;
  margin-bottom: .5em
}

@media screen and (max-width: 47.9375em) {
  .form_contact .field_ttl {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
    white-space: normal;
    font-size: 1.1428571429rem;
    font-weight: bold
  }
}

/*.form_contact .help_text {
  display: block;
  margin-top: .5em;
  color: var(--clr-text-placeholder);
  font-size: max(12px, 0.875rem);
  line-height: 1.3
}*/

/*.form_contact .requiredIcon {
  background-color: var(--clr-error);
  color: var(--clr-wht);
  margin: 0 0 0 1em;
  font-size: max(10px, 0.75rem);
  border-radius: 0.1875rem;
  padding: 0.125rem 0.375rem;
  display: inline-block;
  vertical-align: middle;
  line-height: 1
}*/

.form_contact .wpcf7-list-item {
  display: block;
  margin: 0;
  line-height: 1.6;
  font-size: max(16px, 1.125rem)
}

@media screen and (max-width: 47.9375em) {
  .form_contact .wpcf7-list-item {
    font-size: 1.0714285714rem
  }
}

.form_contact .wpcf7-list-item :is(input[type=radio], input[type=checkbox]) {
  position: absolute;
  opacity: 0
}

.form_contact .wpcf7-list-item label {
  position: relative;
  display: block;
  padding: 0.25rem 0.25rem 0.25rem 1.5rem;
  vertical-align: top;
  cursor: pointer;
  margin: 0;
  transition: var(--transit-default)
}

@media(hover: hover) {

  .form_contact .wpcf7-radio .wpcf7-list-item:hover,
  .form_contact .wpcf7-checkbox .wpcf7-list-item:hover {
    opacity: .7
  }
}

.form_contact .wpcf7-radio .wpcf7-list-item-label::before,
.form_contact .wpcf7-checkbox .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 0.75rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  border: 2px solid #788b93
}

.form_contact .wpcf7-radio input[type=radio]:checked+.wpcf7-list-item-label,
.form_contact .wpcf7-checkbox input[type=checkbox]:checked+.wpcf7-list-item-label {
  color: var(--clr-error);
  font-weight: bold
}

.form_contact .wpcf7-radio input[type=radio]:checked+.wpcf7-list-item-label::before,
.form_contact .wpcf7-checkbox input[type=checkbox]:checked+.wpcf7-list-item-label::before {
  border-color: var(--clr-error)
}

.form_contact .wpcf7-radio input[type=radio]:checked+.wpcf7-list-item-label::after,
.form_contact .wpcf7-checkbox input[type=checkbox]:checked+.wpcf7-list-item-label::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 10
}

.form_contact .wpcf7-radio input[type=radio]+.wpcf7-list-item-label::before {
  border-radius: 0.625rem
}

.form_contact .wpcf7-radio input[type=radio]:checked+.wpcf7-list-item-label::after {
  top: 0.9375rem;
  left: 0.1875rem;
  width: 0.625rem;
  aspect-ratio: 1;
  background-color: var(--clr-error);
  border-radius: 50%
}

.form_contact .wpcf7-checkbox input[type=checkbox]:checked+.wpcf7-list-item-label::after {
  top: 0.25rem;
  left: 0.375rem;
  width: 0.625rem;
  height: 1.125rem;
  border-right: 2px solid var(--clr-error);
  border-bottom: 2px solid var(--clr-error);
  transform: rotate(45deg)
}

.form_contact .wpcf7-submit {
  display: block;
  margin-inline: auto;
  font-size: inherit;
  border: none;
  cursor: pointer;
  color: var(--clr-wht);
  border-radius: 0.1875rem;
  background-color: var(--clr-primary-default);
  padding: 1rem 2rem;
  -webkit-appearance: none;
  appearance: none;
  font-family: var(--font-primary);
  transition: var(--transit-default)
}

@media screen and (max-width: 47.9375em) {
  .form_contact .wpcf7-submit {
    width: 100%
  }
}

.form_contact .wpcf7-not-valid-tip {
  color: var(--clr-error)
}

@media print,
screen and (min-width: 48em) {
  .form_contact .confirm-message {
    text-align: center
  }
}

.form_contact span.wpcf7-not-valid-tip {
  display: inline
}

.form_contact .wpcf7c-conf {
  background-color: rgba(0, 0, 0, 0);
  border: 0 !important
}

.form_contact .wpcf7c-conf[type=checkbox]:checked+input[type=hidden]+label,
.form_contact .wpcf7c-conf[type=radio]:checked+input[type=hidden]+label {
  padding-left: 15px !important;
  color: var(--clr-text-primary) !important
}

.form_contact .wpcf7c-conf[type=checkbox]:checked+input[type=hidden]+label::before,
.form_contact .wpcf7c-conf[type=checkbox]:checked+input[type=hidden]+label::after,
.form_contact .wpcf7c-conf[type=checkbox]+label,
.form_contact .wpcf7c-conf[type=radio]:checked+input[type=hidden]+label::before,
.form_contact .wpcf7c-conf[type=radio]:checked+input[type=hidden]+label::after,
.form_contact .wpcf7c-conf[type=radio]+label {
  display: none !important
}

.form_contact .wpcf7-spinner {
  display: block;
  margin: 16px auto
}

.grecaptcha-badge {
  visibility: hidden
}

.recaptcha_policy {
  padding: 0;
  margin-top: 2rem;
  color: var(--clr-text-primary);
}