.wpcf7 .screen-reader-response {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.contact-form__screen-name {
  display: none;
  margin: 0 0 1.5rem;
  text-align: center;
  font-weight: bold;
}

.wpcf7-form.--confirm .contact-form__screen-name {
  display: block;
}

.contact-form .wpcf7-form-control-wrap {
  display: block;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="date"] {
  width: 100%;
  max-width: 32em;
}

.contact-form input[type="number"] {
  width: 6em;
}

.contact-form .wpcf7-radio,
.contact-form .wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1.2rem;
}

.contact-form .u-center .wpcf7-checkbox {
  justify-content: center;
}

.contact-form .wpcf7-list-item {
  margin: 0;
}

.contact-form .js-date-error {
  color: #972426;
}

.contact-form .wpcf7-not-valid-tip {
  display: inline-block;
  margin-top: 6px;
  background-color: #F7CCE6;
  border: #ee4d89 solid 1px;
  border-radius: 3px;
  color: #EE4D89;
  font-size: 85%;
  padding: 5px 6px;
  line-height: 1.4;
}

.contact-form__btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
}

.contact-form__btn button,
.contact-form__btn input {
  background-color: #f5f5f5;
  border: #dddddd solid 1px;
  border-radius: 3px;
  color: #000;
  cursor: pointer;
  font-weight: normal;
  padding: 15px 20px;
  line-height: 1;
}

.contact-form__btn button:hover,
.contact-form__btn input:hover,
.contact-form__btn button:active,
.contact-form__btn input:active {
  background-color: #eee;
}

.wpcf7-form.--confirm .contact-form__item-note {
  display: none;
}

.wpcf7-form.--confirm .auto-confirm-value {
  padding: 5px 0;
  font-weight: bold;
  white-space: pre-wrap;
}

.wpcf7-form.--confirm span.select_label,
.wpcf7-form.--confirm span.select_label:before {
  background: none;
  border: none;
}

.wpcf7-form.--confirm span.select_label:before {
  display: none;
}

.wpcf7-form.--confirm .wpcf7-radio > span,
.wpcf7-form.--confirm .wpcf7-checkbox > span {
  display: none;
}

.wpcf7-form.--confirm .p-price .auto-confirm-value {
  display: none;
}

.wpcf7-form .thanks-message {
  display: none;
  text-align: center;
  padding: 2rem 0 3rem;
}

.wpcf7-form .thanks-message a {
  display: inline-block;
  margin-top: 1.5rem;
}

.wpcf7-form.sent .contact-form__screen-name,
.wpcf7-form.sent .contact-form__item,
.wpcf7-form.sent .cancel-policy,
.wpcf7-form.sent .u-center,
.wpcf7-form.sent .contact-form__btn,
.wpcf7-form.sent .wpcf7-response-output {
  display: none;
}

.wpcf7-form.sent .thanks-message {
  display: block;
}

.wpcf7-form .wpcf7-response-output {
  display: none;
}

.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.aborted .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output {
  display: block;
  margin: 1.5rem 0 0;
  padding: 0.8rem 1rem;
  border: 1px solid #ee4d89;
  color: #972426;
}
