/* mixin
========================================================================== */
/* common
--------------------------------------------- */
.l_inner {
  max-width: 1020px;
}

.contact_header {
  padding: 45px 0 86px 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact_header {
    padding: 0 0 62px 0;
  }
}
.contact_header h1 {
  font-size: 3.6rem;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .contact_header h1 {
    font-size: 3.0rem;
  }
}
.contact_header_logo {
  margin-top: 68px;
}
@media screen and (max-width: 767px) {
  .contact_header_logo {
    margin-top: 42px;
    padding: 0 20px;
  }
}
.contact_header_logo img {
  height: 56px;
}
@media screen and (max-width: 767px) {
  .contact_header_logo img {
    height: auto;
    max-width: 100%;
  }
}
.contact_header ul {
  display: flex;
  justify-content: center;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .contact_header ul {
    margin-top: 32px;
  }
}
.contact_header ul li {
  line-height: 1;
  color: #cccccc;
}
@media screen and (max-width: 767px) {
  .contact_header ul li {
    font-size: 1.4rem;
  }
}
.contact_header ul li + li {
  margin-left: 60px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .contact_header ul li + li {
    margin-left: 48px;
  }
}
.contact_header ul li + li:before {
  content: '';
  display: block;
  width: 13px;
  height: 11px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23000000" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
  position: absolute;
  left: -35px;
  top: 25px;
}
@media screen and (max-width: 767px) {
  .contact_header ul li + li:before {
    left: -27px;
    top: 20px;
  }
}
.contact_header ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  margin-bottom: 12px;
  padding-bottom: 6px;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
  color: #2A6AB2;
  border: 3px solid #2A6AB2;
  border-radius: 60px;
}
@media screen and (max-width: 767px) {
  .contact_header ul li span {
    margin-bottom: 10px;
    padding-bottom: 5px;
    width: 50px;
    height: 50px;
    font-size: 3.3rem;
  }
}
.contact_header ul li.is_active {
  color: #000000;
}
.contact_header ul li.is_active span {
  background: #2A6AB2;
  border-color: #2A6AB2;
  color: #ffffff;
}
.contact_header_txt {
  margin-top: 62px;
  font-size: 1.6rem;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .contact_header_txt {
    margin-top: 28px;
  }
}
.contact_header_tel {
  margin-top: 40px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .contact_header_tel {
    margin-top: 28px;
  }
}
.contact_header_tel p {
  font-size: 4rem;
  font-weight: 900;
}
.contact_header_tel span {
  display: inline-block;
  margin-top: 6px;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .contact_header_tel span {
    margin-top: 5px;
  }
}
.contact_header.contact_header_thanks {
  padding-bottom: 40px;
}
.contact_header.contact_header_thanks .contact_header_ttl {
  margin-top: 58px;
  font-size: 2.6rem;
  font-weight: 900;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .contact_header.contact_header_thanks .contact_header_ttl {
    margin-top: 50px;
  }
}
.contact_header.contact_header_thanks .contact_header_txt {
  margin-top: 12px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact_header.contact_header_thanks .contact_header_txt {
    text-align: left;
  }
}
.contact_header.contact_header_thanks .btn {
  width: 286px;
  margin-top: 68px;
}
@media screen and (max-width: 767px) {
  .contact_header.contact_header_thanks .btn {
    width: calc(100% - 40px);
    margin: 58px 20px 0 20px;
  }
}

.contact_form {
  padding: 86px 0 80px 0;
  background: #F4F4F4;
}
@media screen and (max-width: 767px) {
  .contact_form {
    padding: 70px 0 64px 0;
  }
}
.contact_form dl dt {
  margin-bottom: 14px;
  font-weight: 700;
  line-height: 1.44;
}
@media screen and (max-width: 767px) {
  .contact_form dl dt {
    font-size: 1.8rem;
  }
}
.contact_form dl dt.icon_must {
  position: relative;
}
.contact_form dl dt.icon_must:after {
  display: inline-block;
  content: "*";
  margin-left: 5px;
  font-size: 2.6rem;
  font-weight: 900;
  color: #FF0000;
  vertical-align: middle;
}
.contact_form dl dd {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  position: relative;
}
.contact_form dl dd + dt {
  margin-top: 38px;
}
.contact_form dl dd .error {
  width: 100%;
  margin-top: 5px;
}
.contact_form_lead {
  margin-top: 60px;
  margin-bottom: 30px;
  font-size: 1.9rem;
}

.contact_form_lead_under {
  background: linear-gradient(transparent 70%, #FFFF00 0%);
}

.contact_form textarea,
.contact_form input[type=email],
.contact_form input[type=text] {
  width: 100%;
  padding: 12px 20px;
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .contact_form textarea,
  .contact_form input[type=email],
  .contact_form input[type=text] {
    padding: 12px 10px;
  }
}
.contact_form select {
  width: 100%;
  padding: 12px 40px 12px 20px;
  background: #ffffff;
}
@media screen and (max-width: 767px) {
  .contact_form select {
    padding: 12px 40px 12px 10px;
  }
}
.contact_form textarea {
  height: 240px;
}
.contact_form_select {
  position: relative;
  overflow: hidden;
}
.contact_form_select:after {
  content: '';
  display: block;
  width: 12px;
  height: 7px;
  position: absolute;
  right: 20px;
  top: 28px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12px 7px"><path fill="%23000000" d="M37.386,83.091a1,1,0,0,0-1.414,0l-4.045,4.045-4.045-4.045A1,1,0,0,0,26.468,84.5l4.752,4.752a1,1,0,0,0,1.414,0L37.386,84.5A1,1,0,0,0,37.386,83.091Z" transform="translate(-26.175 -82.798)" /></svg>');
  pointer-events: none;
}
.contact_form_date {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .contact_form_date {
    align-items: flex-start;
  }
}
.contact_form_date_ttl {
  display: block;
  width: 160px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .contact_form_date_ttl {
    display: flex;
    align-items: center;
    height: 60px;
    width: 100px;
  }
}
.contact_form_date_inner {
  flex: 1;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .contact_form_date_inner {
    flex-wrap: wrap;
    width: calc(100% - 100px);
  }
}
.contact_form_date_inner p {
  display: none;
}
.contact_form_date_inner input[type=text] {
  padding-left: 56px;
  background: #ffffff url(/img/icon_calendar.svg) no-repeat 20px 50%;
}
@media screen and (max-width: 767px) {
  .contact_form_date_inner input[type=text] {
    width: 100%;
    margin-bottom: 20px;
  }
}
.contact_form_date_inner .contact_form_select {
  margin-left: 40px;
}
@media screen and (max-width: 767px) {
  .contact_form_date_inner .contact_form_select {
    margin-left: 0;
  }
}
.contact_form_date_inner .contact_form_select select {
  width: 120px;
}
@media screen and (max-width: 767px) {
  .contact_form_date_inner .contact_form_select select {
    width: 110px;
  }
}
.contact_form_date_inner .contact_form_date_time {
  width: 40px;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .contact_form_date_inner .contact_form_date_time {
    width: 30px;
  }
}
.contact_form_date + .contact_form_date {
  margin-top: 30px;
}

.mw_wp_form_confirm .contact_form .contact_form_lead {
  display: none;
}
.mw_wp_form_confirm .contact_form .contact_form_lead + dl {
  margin-top: 66px;
}
@media screen and (max-width: 767px) {
  .mw_wp_form_confirm .contact_form .contact_form_lead + dl {
    margin-top: 46px;
  }
}
.mw_wp_form_confirm .contact_form dl dt {
  margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
  .mw_wp_form_confirm .contact_form dl dt {
    margin-top: 12px;
  }
}
.mw_wp_form_confirm .contact_form dl dd {
  display: block;
  line-height: 1.44;
}
.mw_wp_form_confirm .contact_form dl dd.contact_form_select:after {
  display: none;
}
.mw_wp_form_confirm .contact_form dl dd + dt {
  margin-top: 66px;
}
@media screen and (max-width: 767px) {
  .mw_wp_form_confirm .contact_form dl dd + dt {
    margin-top: 46px;
  }
}
.mw_wp_form_confirm .contact_form dl dd.contact_form_date + .contact_form_date {
  margin-top: 40px;
}
.mw_wp_form_confirm .contact_form dl dd .contact_form_date_ttl {
  height: auto;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .mw_wp_form_confirm .contact_form dl dd .contact_form_date_ttl {
    width: 100px;
  }
}
.mw_wp_form_confirm .contact_form dl dd .contact_form_date_inner .contact_form_select {
  white-space: nowrap;
  margin-left: 10px;
}
.mw_wp_form_confirm .contact_form dl dd .contact_form_date_inner .contact_form_select:after {
  display: none;
}
@media screen and (max-width: 767px) {
  .mw_wp_form_confirm .contact_form_btn .l_center {
    padding: 0 20px;
    flex-direction: column;
  }
  .mw_wp_form_confirm .contact_form_btn .l_center .btn {
    width: 100%;
    order: 2;
    margin-top: 20px;
  }
  .mw_wp_form_confirm .contact_form_btn .l_center .btn + .btn {
    order: 1;
    margin-top: 0;
    margin-left: 0;
  }
}

.contact_form_btn {
  padding: 57px 0 0 0;
}
.contact_form_btn p {
  font-size: 1.6rem;
  text-align: center;
}
.contact_form_btn p a {
  color: #2A6AB2;
  font-weight: 700;
  text-decoration: underline;
}
.contact_form_btn .l_center {
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .contact_form_btn .l_center {
    padding: 0 25px;
  }
}
.contact_form_btn .l_center .btn {
  width: 286px;
}
@media screen and (max-width: 767px) {
  .contact_form_btn .l_center .btn {
    width: 100%;
  }
}
.contact_form_btn .l_center .btn + .btn {
  margin-left: 30px;
}

.mw_wp_form_confirm .contact_form_agree {
  display: none;
}

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