/*--------------------------------------------------

	Form │ 各種フォーム共通

--------------------------------------------------*/
#form_page {overflow: hidden;}
#form_page .title_common {margin-bottom: 10%;}
#form_page .form_intro {margin-bottom: var(--size100);}
#form_page .form_intro .wrap {width: 40%;}
#form_page .form_intro .wrap .content p {color: var(--navy);}
#form_page .form_intro figure {width: 55%;}
#form_page .container {position: relative;padding: var(--size20-100);background: #DFE8F1;}
#form_page .container::before {content: '';position: absolute;top: -3%;left: calc(50% - 50vw);z-index: -1;width: 99.4vw;height: 100vw;background: url(../img/page/form/bg.webp) no-repeat top right / 100%;}
#form_page .container .form_inner {max-width: 1180px;margin: 0 auto;}
#form_page .container ul.form_steps {display: flex;margin-bottom: var(--size50);}
#form_page .container ul.form_steps li {
  flex: 1;
  margin-left: -2%;
  padding: var(--size30) 0;
  background: #fff;
  clip-path: polygon(0% 0%, 92% 0%, 100% 50%, 92% 100%, 0% 100%, 8% 50%);
  color: #8D9FAA;
  font-weight: 600;
  font-size: var(--font24);
  letter-spacing: .057em;
  text-align: center;
}
#form_page .container ul.form_steps li:first-child {margin-left: 0;clip-path: polygon(0% 0%, 92% 0%, 100% 50%, 92% 100%, 0% 100%, 0% 0%);}
#form_page .container ul.form_steps li.is-active {background: #000;color: #fff;}
#form_page .container p.form_notice {margin-bottom: var(--size50);letter-spacing: .042em;}
#form_page .container p.form_notice a {color: var(--blue);text-decoration: underline;}
/*----- 入力欄 -----*/
#form_page .container table {margin-bottom: var(--size60);}
#form_page .container table tr {display: block;margin-bottom: calc(var(--size20-60) / 2);}
#form_page .container table tr:last-child {margin-bottom: 0;}
#form_page .container table tr th {min-width: clamp(250px, calc(250px + 50 * ((100vw - 375px) / 1545)), 300px);padding-top: .5em;color: var(--navy);font-weight: 600;letter-spacing: .057em;vertical-align: top;}
#form_page .container table tr th .required {color: var(--blue);}
#form_page .container table tr td {width: 100%;}
#form_page .container table tr td input[type="text"],
#form_page .container table tr td input[type="tel"],
#form_page .container table tr td input[type="email"],
#form_page .container table tr td select,
#form_page .container table tr td textarea {width: 100%;padding: calc(var(--size30) / 3) var(--size30);border: none;border-radius: 0;background: #fff;font-size: var(--font-base);}
#form_page .container table tr td select {cursor: pointer;}
#form_page .container table tr td textarea {min-height: 20em;resize: vertical;}
#form_page .container table tr td input::placeholder,
#form_page .container table tr td textarea::placeholder {color: #A9AFB8;}
#form_page .container table tr td .form_other {margin-top: 15px;}
#form_page .container table tr td .form_group_field select {margin-bottom: 12px;}
#form_page .container table tr td .form_address {display: flex;flex-direction: column;gap: 15px;}
#form_page .container table tr td .form_address .form_address_item span {display: block;margin-bottom: 10px;color: var(--navy);letter-spacing: .057em;}
#form_page .container .submit {
  display: block;
  width: 100%;
  max-width: 296px;
  margin: 0 auto;
  padding: 20px 10px;
  border: none;
  border-radius: 0;
  background: #BF1A20;
  color: #fff;
  font-weight: 500;
  font-size: var(--font15);
  letter-spacing: .06em;
  text-align: center;
  transition: .3s;
}
#form_page .container .submit:hover {opacity: .8;}
.error {color: #B70000 !important;}
/*----- 確認画面 -----*/
#form_page.confirm .container table tr {margin-bottom: 0;padding: var(--size30) 0;border-bottom: 1px solid #8D9FAA;}
#form_page.confirm .container table tr:first-child {padding-top: 0;}
#form_page.confirm .container table tr:last-child {padding-bottom: 0;border-bottom: none;}
#form_page.confirm .container table tr th {padding-top: 0;}
#form_page.confirm .container table tr th .required {display: none;}
#form_page.confirm .container table tr td .form_address {gap: 30px;}
#form_page.confirm .container .confrim_button {display: flex;justify-content: center;gap: var(--size20);max-width: 660px;margin: 0 auto;}
#form_page.confirm .container .confrim_button .submit {max-width: 100%;margin: 0;}
#form_page.confirm .container .confrim_button .submit:nth-child(1) {background: #838A8E;}
/*----- 完了画面 -----*/
#form_page.complete .watermark {z-index: 0;margin-bottom: -2.2%;}
#form_page.complete .container .wrap figure {max-width: 212px;margin: 0 auto var(--size40);}
#form_page.complete .container .wrap h2 {margin-bottom: var(--size30);font-weight: 700;font-size: var(--font29);letter-spacing: .035em;text-align: center;}
#form_page.complete .container .wrap .content {margin-bottom: var(--size80);}
#form_page.complete .container .wrap .content p {margin-bottom: var(--size30);line-height: 2;text-align: center;}
#form_page.complete .container .wrap .content p:last-child {margin-bottom: 0;}
#form_page.complete .container .wrap ul li {width: 49%;}
#form_page.complete .container .wrap ul li a {display: block;padding: var(--size20) var(--size20) var(--size30);border-radius: 0;background: #fff;letter-spacing: .042em;text-align: center;}
#form_page.complete .container .wrap ul li a span {display: block;margin-bottom: 10px;color: var(--blue);font-weight: 600;font-size: 1.5em;line-height: 1.4;letter-spacing: .06em;text-align: center;}
@media only screen and ( max-width : 1024px ) {
  #form_page .form_intro {flex-direction: column;}
  #form_page .form_intro .wrap {width: 100%;margin-bottom: 20px;}
  #form_page .form_intro figure {width: 100%;}
}
@media only screen and ( max-width : 767px ) {
  #form_page {padding-top: 100px;}
  #form_page .container ul.form_steps {gap: 4px;}
  #form_page .container ul.form_steps li {padding: 1em 8px;font-size: var(--font15);}
  #form_page .container .form_group {flex-direction: column;}
  #form_page .container table tr th {display: block;width: 100%;margin-bottom: 10px;padding: 0;}
  #form_page .container table tr td {display: block;}
  #form_page.complete .container .wrap ul {flex-direction: column;}
  #form_page.complete .container .wrap ul li {width: 100%;}
}