@charset "UTF-8";
/*----------------------------
全体
----------------------------*/
.contents {
  margin-bottom: 100px;
}
#kv_img {
  background-image: url("../img/kv.jpg");
  background-position: right center;
}


/*----------------------------
intro
----------------------------*/
#intro h2 {
  font-size: 32px;
  text-align: center;
  }
#intro h2+p {
  margin-top: 24px;
  font-size: 18px;
  letter-spacing: 0.09em;
  line-height: 2;
  text-align: center;
  }
#intro .btn a {
  font-size: 18.5px;
  background-color: #124390;
  text-decoration: none;
  color: #fff;
  width: 390px;
  display: block;
  text-align: center;
  padding: 29px 0;
  position: relative;
  margin: 40px auto 0 auto;
  }
#intro .btn a:before {
  content: '';
  display: inline-block;
  width: 36px;
  height: 1px;
  background-color: #99abc7;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: -18px;
  top: 50%;
  margin-top: -0.5px;
  background-repeat: no-repeat;
  }
#intro .btn a:hover {
  background-color: #1b5cb0;
  }
#intro .contact {
  margin-top: 18px;
  display: flex;
  justify-content: center;
  gap: 30px;
  font-size: 20px;
  letter-spacing: 0.06em;
  }

/*1200px以下*/
@media screen and (max-width: 1200px) {

  #intro .btn a {
    width: 330px;
    padding: 22px 0;
  }

}
/*1024px以下*/
@media screen and (max-width: 1024px) {

  #intro h2+p {
    font-size: 16px;
    }
  #intro .btn a {
    width: 240px;
    font-size: 14px;
    margin-top: 15px;
  }

}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {

  #intro h2 {
    font-size: 22px;
    }
  #intro h2+p {
    font-size: 13px;
    line-height: 1.8;
    }
  #intro .btn a {
    margin: 15px auto 0 auto;
    }
  #intro .contact {
    font-size: 16px;
    }

}


/*----------------------------
in_graph
----------------------------*/
#in_graph {
  margin-top: 75px;
  }
#in_graph h2 {
  padding: 20px 0;
  background-color: #ebeff7;
  color: #124390;
  font-size: 24px;
  letter-spacing: 0.06em;
  text-align: center;
  }
#in_graph .graph_wrap {
  padding: 0 30px;
  margin-top: 36px;
  display: flex;
  justify-content: center;
  gap: 40px;
  }
#in_graph .graph_wrap h3 {
  color: #124390;
  font-size: 22px;
  letter-spacing: 0.06em;
  text-align: center;
  }
#in_graph .graph_wrap figure {
  padding: 12px 30px;
  margin-top: 15px;
  border: 1px solid #cdd8ec;
  }
#in_graph .graph_wrap figure img {
  max-width: 100%;
  }
#in_graph .graph_wrap figure+p {
  padding: 18px 30px 0;
  font-size: 16px;
  }

/*sp（767px以下）*/
@media screen and (max-width: 767px) {

  #in_graph .graph_wrap {
    margin-top: 24px;
    display: block;
    }
  #in_graph .graph_wrap div+div {
    margin-top: 30px;
    }
  #in_graph h2 {
    padding: 15px 0;
    font-size: 19px;
    }
  #in_graph .graph_wrap h3 {
    font-size: 19px;
    }
  #in_graph .graph_wrap figure {
    width: 100%;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
    } 
  #in_graph .graph_wrap figure+p {
    width: 100%;
    max-width: 480px;
    padding: 18px 6% 0;
    margin-left: auto;
    margin-right: auto;
    font-size: 14px;
    }

}


/*----------------------------
outro
----------------------------*/
#recruit p.outro {
  padding: 36px 0;
  margin: 75px auto -30px;
  border: 1px solid #839ac0;
  box-shadow: 9px 9px 0 #ebeff7;
  color: #124390;
  font-size: 23px;
  letter-spacing: 0.09em;
  line-height: 1.6;
  text-align: center;
  }

/*sp（767px以下）*/
@media screen and (max-width: 767px) {

  #recruit p.outro {
    width: 90%;
    padding: 30px 6%;
    margin: 60px auto -40px;
    font-size: 16px;
    }

}


/*----------------------------
photos
----------------------------*/
figure#photos {
  display: flex;
  }
figure#photos img {
  max-width: calc(100% / 3);
  }

/*sp（767px以下）*/
@media screen and (max-width: 767px) {

  figure#photos {
    flex-wrap: wrap;
    }
  figure#photos img {
    max-width: 50%;
    }
  figure#photos img:nth-of-type(3) {
    max-width: 100%;
    }

}


/*----------------------------
inquiry
----------------------------*/
#inquiry {
  background-color: #ebeff7;
  padding-top: 100px;
  padding: 83px 3% 0 3%;
}
#inquiry h2 {
  text-align: center;
  font-size: 39px;
  color: #124390;
  font-weight: 200;
  letter-spacing: .09em;
  margin-bottom: 20px;
}
#inquiry h2 + p {
  text-align: center;
  font-size: 16px;
  line-height: 1.9;
  margin-bottom: 23px;
}
#inquiry_inner {
  max-width: 1142px;
  width: 100%;
  display: flex;
  background-color: #fff;
  padding: 40px;
  margin: 0 auto;
  align-items: center;
  gap: 80px;
  margin-bottom: -30px;
  position: relative;
}
#inquiry_inner figure {
  max-width: 540px;
  }
#inquiry_inner figure img {
  max-width: 100%;
  }
#inquiry_tel {
  line-height: 1.2;
}
#inquiry_tel span {
  color: #124390;
  display: block;
  font-size: 17px;
  letter-spacing: .12em;
}
#inquiry_tel em {
  font-family: "Ibarra Real Nova", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #124390;
  font-size: 54px;
  padding-left: 38px;
  position: relative;
}
#inquiry_tel em:before {
  content: '';
  display: inline-block;
  width: 23px;
  height: 22px;
  background-image: url("../../img/inquiry_icon_tel.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  bottom: 19px;
  background-repeat: no-repeat;
}
#inquiry_time {
  color: #124390;
  font-size: 14px;
  letter-spacing: .12em;
}
#inquiry_mail a {
  font-size: 18.5px;
  background-color: #124390;
  text-decoration: none;
  color: #fff;
  width: 390px;
  display: block;
  text-align: center;
  padding: 29px 0;
  position: relative;
  margin-top: 30px;
}
#inquiry_mail a:before {
  content: '';
  display: inline-block;
  width: 36px;
  height: 1px;
  background-color: #99abc7;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: -18px;
  top: 50%;
  margin-top: -0.5px;
  background-repeat: no-repeat;
}
#inquiry_mail a:hover {
  background-color: #1b5cb0;
}
/*1200px以下*/
@media screen and (max-width: 1200px) {
  #inquiry_inner {
    gap: 50px;
    justify-content: center;
  }
  #inquiry_inner img {
    width: 400px;
  }
  #inquiry_tel span {
    font-size: 14px;
  }
  #inquiry_tel em {
    font-size: 42px;
  }
  #inquiry_time {
    font-size: 12px;
  }
  #inquiry_mail a {
    width: 330px;
    padding: 22px 0;
  }
}
/*1024px以下*/
@media screen and (max-width: 1024px) {
  #inquiry h2 {
    font-size: 26px;
    margin-bottom: 10px;
  }
  #inquiry h2 + p {
    font-size: 14px;
  }
  #inquiry_inner {
    gap: 25px;
    padding: 30px;
  }
  #inquiry_inner img {
    width: 330px;
  }
  #inquiry_mail a {
    width: 240px;
    font-size: 14px;
    margin-top: 15px;
  }
  #inquiry_tel em {
    font-size: 28px;
    padding-left: 24px;
  }
  #inquiry_tel em:before {
    width: 16px;
    height: 15px;
    bottom: 10px;
  }
}
/*sp（767px以下）*/
@media screen and (max-width: 767px) {
  #inquiry {
    padding-bottom: 100px;
  }
  #inquiry_inner {
    display: block;
  }
  #inquiry_inner figure {
    max-width: 100%;
    text-align: center;
    margin-bottom: 30px;
  }
  #inquiry_tel {
    text-align: center;
    line-height: 1.5;
  }
  #inquiry_time {
    text-align: center;
  }
  #inquiry_mail a {
    margin: 15px auto 0 auto;
  }
  #inquiry_inner img {
    width: 100%;
  }
}
