@charset "UTF-8";
body.contact {
  background: #F4F4F4;
}

.page_wrapper {
  background: transparent;
}

.contact_conts {
  padding: 7.2802197802vw 7.0054945055vw;
}
@media screen and (max-width: 767px) {
  .contact_conts {
    padding: 18.6666666667vw 0 35.7333333333vw;
  }
}
.contact_conts__ttl {
  position: relative;
  margin-bottom: 2.3351648352vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__ttl {
    margin-bottom: 9.0666666667vw;
  }
}
.contact_conts__ttl h1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  font-weight: 700;
  font-size: 2.4725274725vw;
  letter-spacing: 0.05em;
  color: #333;
}
.contact_conts__ttl h1 span {
  color: #009BD9;
  font-weight: 600;
  font-size: 1.6483516484vw;
  line-height: 2.5;
  margin-bottom: 0.1em;
}
.contact_conts__ttl h1:after {
  display: block;
  width: 7.2802197802vw;
  height: 0.2747252747vw;
  content: "";
  background: #009BD9;
  position: relative;
}
@media screen and (max-width: 767px) {
  .contact_conts__ttl h1 {
    font-size: 6.4vw;
    margin-bottom: 8.5333333333vw;
    align-items: flex-start;
    margin-left: 4.2666666667vw;
  }
  .contact_conts__ttl h1 span {
    font-size: 5.3333333333vw;
  }
  .contact_conts__ttl h1:after {
    width: 17.0666666667vw;
    height: 0.8vw;
  }
}
.contact_conts__body {
  padding: 7.8983516484vw 7.967032967vw;
  border-radius: 1.4423076923vw;
  border: solid #E2DDCD 0.0686813187vw;
  background: #fff;
  /**
  サンクスページ用
  */
}
@media screen and (max-width: 767px) {
  .contact_conts__body {
    padding: 8vw 4.2666666667vw 24vw 6.6666666667vw;
    margin-left: 4.2666666667vw;
    border-radius: 5.6vw 0 0 5.6vw;
    border: none;
  }
}
.contact_conts__body .contact_lead {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  line-height: 1.7;
  margin-bottom: 2.4725274725vw;
  font-size: 1.6483516484vw;
}
.contact_conts__body .contact_lead .lead_msg {
  flex: 1;
}
.contact_conts__body .contact_lead .lead_hissu {
  color: #EB4867;
  font-size: 1.2362637363vw;
}
.contact_conts__body .contact_lead.input-hide {
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .contact_lead {
    display: block;
    margin-bottom: 6.4vw;
    font-size: 4vw;
    line-height: 1.5;
  }
  .contact_conts__body .contact_lead .lead_msg {
    margin-bottom: 0.4em;
  }
  .contact_conts__body .contact_lead .lead_hissu {
    font-size: 3.7333333333vw;
  }
}
.contact_conts__body dl.form_elem {
  display: flex;
  align-items: flex-start;
}
.contact_conts__body dl.form_elem:not(:first-of-type) {
  margin-top: 1.7857142857vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem {
    display: block;
  }
  .contact_conts__body dl.form_elem:not(:first-of-type) {
    margin-top: 7.4666666667vw;
  }
}
.contact_conts__body dl.form_elem dt {
  width: 16.4835164835vw;
  padding-top: 1.0302197802vw;
  font-size: 1.2362637363vw;
  line-height: 1.6;
  color: #009BD9;
}
.contact_conts__body dl.form_elem dt span {
  color: #EB4867;
  padding-left: 0.5em;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dt {
    width: 100%;
    padding-top: 0;
    font-size: 4.2666666667vw;
    padding-bottom: 0.5em;
  }
  .contact_conts__body dl.form_elem dt .pc-hide__inline {
    display: inline;
  }
}
.contact_conts__body dl.form_elem dd {
  width: 53.2967032967vw;
  font-size: 1.0989010989vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dd {
    width: 100%;
    font-size: 4vw;
  }
}
.contact_conts__body dl.form_elem dd input[type=text], .contact_conts__body dl.form_elem dd textarea {
  width: 100%;
  height: 4.1208791209vw;
  border-radius: 0.5494505495vw;
  background: #F4F4F4;
  border: solid #D6CACA 0.0686813187vw;
  padding-left: 1.6em;
  color: #555;
  outline: none;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dd input[type=text], .contact_conts__body dl.form_elem dd textarea {
    height: 11.2vw;
    border-radius: 2.1333333333vw;
    border: solid #D6CACA 0.2666666667vw;
    padding-left: 4vw;
  }
}
.contact_conts__body dl.form_elem dd.flex {
  display: flex;
  justify-content: space-between;
}
.contact_conts__body dl.form_elem dd.flex > div {
  width: 49%;
}
.contact_conts__body dl.form_elem dd.flex > div input[type=text] {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dd.flex {
    display: block;
  }
  .contact_conts__body dl.form_elem dd.flex > div {
    width: 100%;
  }
  .contact_conts__body dl.form_elem dd.flex > div:first-of-type {
    margin-bottom: 3.2vw;
  }
}
.contact_conts__body dl.form_elem dd.cb_wrapper {
  display: flex;
  flex-direction: column;
}
.contact_conts__body dl.form_elem dd.cb_wrapper span:not(:first-of-type) {
  margin-top: 1.0989010989vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dd.cb_wrapper span:not(:first-of-type) {
    margin-top: 4.2666666667vw;
    font-size: 3.4666666667vw;
  }
}
.contact_conts__body dl.form_elem dd.cb_wrapper input + span {
  display: inline-block;
  padding: 0.2747252747vw 0 0.206043956vw 2.0604395604vw;
  background: url(../img/common/ico_cb.svg) no-repeat left center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem dd.cb_wrapper input + span {
    padding: 2.1333333333vw 0 1.6vw 10.1333333333vw;
  }
}
.contact_conts__body dl.form_elem dd.cb_wrapper input:checked + span {
  background-image: url(../img/common/ico_cb_chk.svg);
}
.contact_conts__body dl.form_elem dd .error {
  padding-top: 0.5em;
  font-size: 0.8928571429vw;
  display: block;
  color: #EB4867;
}
.contact_conts__body dl.form_elem.txtarea {
  flex-direction: column;
}
.contact_conts__body dl.form_elem.txtarea dt, .contact_conts__body dl.form_elem.txtarea dd {
  width: 100%;
}
.contact_conts__body dl.form_elem.txtarea dt {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem.txtarea dt {
    padding-bottom: 0.5em;
  }
}
.contact_conts__body dl.form_elem.txtarea dd {
  padding-top: 1.3736263736vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem.txtarea dd {
    padding: 0;
  }
}
.contact_conts__body dl.form_elem.txtarea dd textarea {
  height: 17.8571428571vw;
  padding: 2.0604395604vw 1.7857142857vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body dl.form_elem.txtarea dd textarea {
    height: 84.8vw;
    padding: 4vw 4vw;
  }
}
.contact_conts__body .endmsg {
  text-align: center;
  font-size: 0.9615384615vw;
  padding-top: 2.7472527473vw;
  margin-bottom: 1.6483516484vw;
}
.contact_conts__body .endmsg.input-hide {
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .endmsg {
    font-size: 3.3333333333vw;
    padding-top: 6.9333333333vw;
    margin-bottom: 4.2666666667vw;
    line-height: 1.7;
  }
}
.contact_conts__body .btn_wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.contact_conts__body .btn_wrapper button[type=submit], .contact_conts__body .btn_wrapper .b_check {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 1.9230769231vw;
  font-size: 1.2362637363vw;
  width: 16.7582417582vw;
  height: 3.7087912088vw;
  padding-left: 1.5796703297vw;
  border-radius: 3.7087912088vw;
  border: solid #fff 0.0686813187vw;
  background: linear-gradient(to right, #57AEE2, #009BD9);
  color: #fff;
  text-align: left;
  letter-spacing: 0.08em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .btn_wrapper button[type=submit], .contact_conts__body .btn_wrapper .b_check {
    margin-bottom: 7.4666666667vw;
    font-size: 4.8vw;
    width: 65.0666666667vw;
    height: 14.4vw;
    padding-left: 6.1333333333vw;
    border-radius: 14.4vw;
    border: solid #fff 0.2666666667vw;
  }
}
.contact_conts__body .btn_wrapper button[type=submit] i, .contact_conts__body .btn_wrapper .b_check i {
  display: block;
  width: 1.7857142857vw;
  height: 1.7857142857vw;
  position: absolute;
  right: 0.8928571429vw;
  aspect-ratio: 1/1;
  background: url(../img/common/arrow_maru_white_right.svg) no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .btn_wrapper button[type=submit] i, .contact_conts__body .btn_wrapper .b_check i {
    width: 6.9333333333vw;
    height: 6.9333333333vw;
    right: 3.4666666667vw;
  }
}
.contact_conts__body .btn_wrapper.input-hide button[type=submit] {
  text-align: center;
  padding: 0;
  justify-content: center;
}
.contact_conts__body .btn_wrapper button[type=reset],
.contact_conts__body .btn_wrapper button[type=button]:not(.b_check) {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 0.9615384615vw;
  width: 14.010989011vw;
  height: 3.7087912088vw;
  border-radius: 3.7087912088vw;
  border: solid #9D9D9C 0.0686813187vw;
  background: #9D9D9C;
  color: #fff;
  letter-spacing: 0.08em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .btn_wrapper button[type=reset],
  .contact_conts__body .btn_wrapper button[type=button]:not(.b_check) {
    font-size: 3.7333333333vw;
    width: 54.4vw;
    height: 14.4vw;
    border-radius: 14.4vw;
    border: solid #9D9D9C 0.2666666667vw;
  }
}
.contact_conts__body .btn_wrapper button[type=button]:not(.b_check) {
  background: #fff;
  color: #9D9D9C;
}
.contact_conts__body .btn_wrapper button {
  transition-duration: 0.2s;
}
.contact_conts__body .btn_wrapper button:hover {
  opacity: 0.7;
}
.contact_conts__body .input-hide {
  display: none;
}
body.confirm .confirm-hide {
  display: none;
}
body.confirm .input-hide {
  display: flex;
}

.contact_conts__body .thanks_msg {
  text-align: center;
}
.contact_conts__body .thanks_msg h2 {
  font-size: 2.4725274725vw;
  line-height: 1.8;
  margin-bottom: 1em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .thanks_msg h2 {
    font-size: 6.4vw;
  }
}
.contact_conts__body .thanks_msg p {
  line-height: 2;
  font-size: 1.0989010989vw;
  margin-bottom: 4.1208791209vw;
}
@media screen and (max-width: 767px) {
  .contact_conts__body .thanks_msg p {
    font-size: 4vw;
    margin-bottom: 10.6666666667vw;
  }
}
.contact_conts__body .btn_wrapper .b_thanks {
  padding: 0;
  justify-content: center;
  text-decoration: none;
  transition-duration: 0.2s;
}
.contact_conts__body .btn_wrapper .b_thanks:hover {
  opacity: 0.7;
}/*# sourceMappingURL=contact.css.map */