/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FONT
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	CONTACT
------------------------------------------------------------*/
.contact {
  background: #FAF9F7;
}
.contact_section {
  min-height: 80lvh;
  padding: 50.8905852417vw 2.5445292621vw 25.4452926209vw;
}
@media screen and (min-width: 768px) {
  .contact_section {
    padding: 10.4166666667vw 5.2083333333vw;
  }
}
.contact_section .inner {
  display: flex;
  flex-flow: column;
  gap: 20.3562340967vw;
}
@media screen and (min-width: 768px) {
  .contact_section .inner {
    flex-flow: row;
    gap: 0;
  }
}
.contact_title {
  flex: 1;
  display: flex;
  flex-flow: row-reverse;
  justify-content: flex-end;
  gap: 2.5445292621vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contact_title {
    gap: 0.5208333333vw;
    margin: 0;
  }
}
.contact_title span {
  display: block;
}
.contact_title .-ja {
  font-size: 6.6157760814vw;
  letter-spacing: 1.5267175573vw;
  writing-mode: vertical-lr;
}
@media screen and (min-width: 768px) {
  .contact_title .-ja {
    font-size: 1.3541666667vw;
    letter-spacing: 0.3125vw;
  }
}
.contact_title .-en {
  font-size: 4.5801526718vw;
  writing-mode: vertical-lr;
}
@media screen and (min-width: 768px) {
  .contact_title .-en {
    font-size: 0.9375vw;
  }
}
.contact_form {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact_form {
    width: 81.25vw;
  }
}
.contact_form > p {
  padding-bottom: 15.2671755725vw;
  font-size: 3.5623409669vw;
  line-height: 1.7142857143;
}
@media screen and (min-width: 768px) {
  .contact_form > p {
    padding-bottom: 3.125vw;
    font-size: 1.0416666667vw;
    line-height: 1.6;
  }
}
.contact_form > p a {
  text-decoration: underline;
}
.contact .form_list {
  display: flex;
  flex-flow: column;
  gap: 5.0890585242vw;
}
@media screen and (min-width: 768px) {
  .contact .form_list {
    gap: 1.5625vw;
  }
}
.contact .form_list_item.-double {
  display: flex;
  justify-content: space-between;
}
.contact .form_list_item.-double dl {
  width: 44.7837150127vw;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item.-double dl {
    width: 39.84375vw;
  }
}
.contact .form_list_item dl dt {
  position: relative;
  padding: 0 0 2.5445292621vw;
  font-size: 3.5623409669vw;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item dl dt {
    padding: 0 0 0.5208333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact .form_list_item dl dt .-required {
  position: absolute;
  right: 0;
  top: 0;
  padding: 1.0178117048vw 2.0356234097vw;
  background: #A29485;
  font-size: 3.0534351145vw;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item dl dt .-required {
    padding: 0.2083333333vw 0.4166666667vw;
    font-size: 0.7291666667vw;
  }
}
.contact .form_list_item dl dd {
  position: relative;
}
.contact .form_list_item dl dd input[type=text] {
  width: 100%;
  padding: 0 2.0356234097vw;
  border: 1px solid #808080;
  font-size: 3.5623409669vw;
  line-height: 9.1603053435vw;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item dl dd input[type=text] {
    padding: 0 0.4166666667vw;
    font-size: 1.0416666667vw;
    line-height: 2.2916666667vw;
  }
}
.contact .form_list_item dl dd .select_category_view {
  display: block;
  width: 100%;
  padding: 0 2.0356234097vw;
  border: 1px solid #808080;
  font-size: 3.5623409669vw;
  line-height: 9.1603053435vw;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item dl dd .select_category_view {
    padding: 0 0.4166666667vw;
    font-size: 1.0416666667vw;
    line-height: 2.2916666667vw;
  }
}
.contact .form_list_item dl dd #select_category {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.contact .form_list_item dl dd #input_text {
  padding: 2.0356234097vw;
  border: 1px solid #808080;
  width: 100%;
  min-height: 47.3282442748vw;
  font-size: 3.5623409669vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .contact .form_list_item dl dd #input_text {
    padding: 0.4166666667vw;
    min-height: 16.4583333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact .button_block {
  display: flex;
  gap: 5.2083333333vw;
  padding-top: 2.0833333333vw;
}
.contact .button_submit {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10.1781170483vw 0 0;
  padding: 0 5.0890585242vw;
  min-width: 53.4351145038vw;
  height: 11.1959287532vw;
  border: none;
  background: #A29485;
  color: #fff;
  font-size: 3.5623409669vw;
  white-space: nowrap;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .contact .button_submit {
    margin: 2.0833333333vw 0 0;
    padding: 0;
    min-width: 22.9166666667vw;
    height: 3.6458333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact .button_submit + p {
  padding: 5.0890585242vw 0 0;
  font-size: 3.5623409669vw;
  line-height: 1.7142857143;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contact .button_submit + p {
    padding: 1.0416666667vw 0 0;
    font-size: 1.0416666667vw;
    line-height: 1.6;
  }
}
.contact .button_back {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10.1781170483vw 0 0;
  padding: 0 5.0890585242vw;
  height: 11.1959287532vw;
  border: 1px solid #A29485;
  background: #fff;
  color: #A29485;
  font-size: 3.5623409669vw;
  white-space: nowrap;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .contact .button_back {
    margin: 2.0833333333vw 0 0;
    padding: 0 1.0416666667vw;
    height: 3.6458333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact .button_top {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 15.2671755725vw 0 0;
  padding: 0 5.0890585242vw;
  min-width: 53.4351145038vw;
  height: 11.1959287532vw;
  border: none;
  background: #A29485;
  color: #fff;
  font-size: 3.5623409669vw;
  white-space: nowrap;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .contact .button_top {
    margin: 3.125vw 0 0;
    padding: 0;
    min-width: auto;
    max-width: 22.9166666667vw;
    height: 3.6458333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact .input_list {
  display: flex;
  flex-flow: column;
  gap: 7.6335877863vw;
}
@media screen and (min-width: 768px) {
  .contact .input_list {
    gap: 1.5625vw;
  }
}
.contact .input_list_item dl dt {
  font-size: 3.0534351145vw;
}
@media screen and (min-width: 768px) {
  .contact .input_list_item dl dt {
    font-size: 0.7291666667vw;
  }
}
.contact .input_list_item dl dd {
  padding-top: 2.5445292621vw;
  padding-left: 2.5445292621vw;
  font-size: 3.5623409669vw;
  color: #808080;
}
@media screen and (min-width: 768px) {
  .contact .input_list_item dl dd {
    padding-top: 0.5208333333vw;
    padding-left: 0.5208333333vw;
    font-size: 1.0416666667vw;
  }
}
.contact_complete {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact_complete {
    width: 81.25vw;
  }
}
.contact_complete h2 {
  font-size: 5.0890585242vw;
  line-height: 1.7142857143;
}
@media screen and (min-width: 768px) {
  .contact_complete h2 {
    font-size: 1.3541666667vw;
    line-height: 1.6;
  }
}
.contact_complete p {
  padding-top: 7.6335877863vw;
  font-size: 3.5623409669vw;
  line-height: 1.7142857143;
}
@media screen and (min-width: 768px) {
  .contact_complete p {
    padding-top: 3.125vw;
    font-size: 1.0416666667vw;
    line-height: 1.6;
  }
}

/*# sourceMappingURL=contact.css.map */
