section:nth-child(2) {
  padding-top: 5%;
}
form {
  width: 60%;
  margin: 0 auto 8vw;
}
label {
  width: 100%;
}
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
input.wpcf7-form-control.wpcf7-text.inquiry__yourCompany,
textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
  width: 100%;
  border: 1px solid #ccc;
}
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
input.wpcf7-form-control.wpcf7-text.inquiry__yourCompany {
  height: 2.5vw;
}
textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
  height: 10vw;
}

.inquiry__confirmBtnArea {
  display: flex;
  justify-content: space-evenly;
  margin-top: 10%;
}

/* 共通ボタン設定（confirm, send, back） */
.inquiry__confirmBtn,
.inquiry__sendBtn,
.inquiry__backBtn {
  text-align: center;
  text-decoration: none;
  line-height: 3vw;
  outline: none;
  position: relative;
  transition: color 0.5s ease;
  display: block;
  width: 17vw;
}
.inquiry__confirmBtn {
  margin: 2vw auto;
}
.inquiry__confirmBtn,
.inquiry__sendBtn {
  color: var(--e4n-font-white);
  background-color: var(--e4n-accent-red);
  border: 1px solid var(--e4n-accent-red);
}
.inquiry__backBtn {
  color: var(--e4n-accent-red);
  background-color: var(--e4n-font-white);
  border: 1px solid var(--e4n-accent-red);
}
.inquiry__confirmBtn::before,
.inquiry__sendBtn::before,
.inquiry__backBtn::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: right;
  transition: all 0.5s ease;
  transition-property: transform;
}
.inquiry__confirmBtn::before,
.inquiry__sendBtn::before {
  background-color: var(--e4n-font-white);
}
.inquiry__backBtn::before {
  background-color: var(--e4n-accent-red);
}
.inquiry__confirmBtn:hover,
.inquiry__sendBtn:hover {
  color: var(--e4n-accent-red);
}
.inquiry__backBtn:hover {
  color: var(--e4n-font-white);
}
.inquiry__confirmBtn:hover::before,
.inquiry__sendBtn:hover::before,
.inquiry__backBtn:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.inquiry__confirmBtn span,
.inquiry__sendBtn span,
.inquiry__backBtn span {
  position: relative;
  font-family: var(--e4n-font-eng);
}

/* ----- 送信ボタン用ラッパーのスタイル（.inquiry__sendBtnWrapper） ----- */
.inquiry__sendBtnWrapper {
  position: relative;
  display: inline-block;
  width: 17vw;
  height: 3vw; /* 高さは固定済み */
  overflow: hidden;
  box-sizing: border-box;
  /* ラッパーに border と背景色を設定 */
  border: 1px solid var(--e4n-accent-red);
  background-color: var(--e4n-accent-red);
}

/* input 要素は border や背景を持たず、クリック専用とする */
.inquiry__sendBtnWrapper input.inquiry__sendBtn {
  width: 100%;
  height: 100%;
  line-height: 3vw;
  color: transparent; /* 内部のテキストは非表示 */
  background: transparent; /* ラッパーの背景を利用 */
  border: none;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  z-index: 0;
}

/* ラッパーの ::before 疑似要素で背景スライド効果 */
/* inset と background-clip を使い、border を覆わないように調整 */
.inquiry__sendBtnWrapper::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--e4n-font-white);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.5s ease;
  z-index: 1;
  pointer-events: none;
  background-clip: padding-box;
}

/* オーバーレイとして表示するテキスト */
.inquiry__sendBtnWrapper .inquiry__sendBtn-text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  line-height: 3vw;
  text-align: center;
  color: var(--e4n-font-white);
  font-family: var(--e4n-font-eng);
  z-index: 2;
  transition: color 0.5s ease;
  pointer-events: none;
}

/* ホバー時の効果 */
.inquiry__sendBtnWrapper:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.inquiry__sendBtnWrapper:hover .inquiry__sendBtn-text {
  color: var(--e4n-accent-red);
}

.inquiry__finishTxt {
  width: 80%;
  margin: auto;
  text-align: center;
}
.inquiry__finishTxt p:first-child {
  font-size: 1.8rem;
}
.inquiry__finishTxt p:last-child {
  font-size: 1.2rem;
}
.inquiry__finishTxt img {
  width: 40%;
  margin: auto;
  display: block;
  opacity: 0.7;
}

/* スマホ縦表示 (最大 575px) */
@media (max-width: 575px) {
  form {
    width: 90%;
    margin: 0px auto 12vw;
  }
  input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required,
  input.wpcf7-form-control.wpcf7-text.inquiry__yourCompany {
    height: 7.5vw;
  }
  textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    height: 30vw;
  }
  .inquiry__confirmBtn, .inquiry__sendBtn, .inquiry__backBtn {
    width: 60vw;
    line-height: 8vw;
  }
  .inquiry__confirmBtnArea {
    flex-direction: column;
    align-items: center;
  }
  .inquiry__sendBtnWrapper {
    width: 60vw;
    height: 8vw;
  }
  .inquiry__sendBtnWrapper .inquiry__sendBtn-text {
    line-height: 8vw;
  }
  .inquiry__finishTxt img {
    width: 90%;
  }
  .inquiry__finishTxt {
    width: 95%;
  }
  .inquiry__finishTxt p:first-child {
    font-size: 1rem;
  }
  .inquiry__finishTxt p:nth-of-type(2) {
    font-size: .9rem;
  }
}

/* スマホ横表示 (576px 以上かつ最大 767px) */
@media (min-width: 576px) and (max-width: 767px) {
  input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, input.wpcf7-form-control.wpcf7-text.inquiry__yourCompany {
    height: 5vw;
  }
  textarea.wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
    height: 15vw;
  }
  .inquiry__confirmBtn, .inquiry__sendBtn, .inquiry__backBtn {
    line-height: 5vw;
    width: 30vw;
  }
  .inquiry__confirmBtnArea {
    flex-direction: column;
    align-items: center;
  }
  .inquiry__sendBtnWrapper {
    width: 30vw;
    height: 5vw;
  }
  .inquiry__sendBtnWrapper .inquiry__sendBtn-text {
    line-height: 5vw;
  }
}

/* タブレット縦表示 (768px 以上かつ最大 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, input.wpcf7-form-control.wpcf7-text.inquiry__yourCompany {
    height: 3.5vw;
  }
  .inquiry__confirmBtnArea {
    flex-direction: column;
    align-items: center;
  }
  .inquiry__confirmBtn, .inquiry__sendBtn, .inquiry__backBtn {
    line-height: 4vw;
    width: 30vw;
  }
  .inquiry__sendBtnWrapper {
    width: 30vw;
    height: 4vw;
  }
  .inquiry__sendBtnWrapper .inquiry__sendBtn-text {
    line-height: 4vw;
  }
}

/* タブレット横表示 (992px 以上かつ最大 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
}
/* PC表示 (1200px 以上) */
@media (min-width: 1200px) {
}
