@font-face {
  font-family: "NotoSansJP-SemiBold";
  src: url("../fonts/NotoSansJP-SemiBold.ttf");
}
@font-face {
  font-family: "NotoSansJP-Medium";
  src: url("../fonts/NotoSansJP-Medium.ttf");
}
@font-face {
  font-family: "NotoSansJP-Regular";
  src: url("../fonts/NotoSansJP-Regular.ttf");
}
@font-face {
  font-family: "Montserrat-SemiBold";
  src: url("../fonts/Montserrat-SemiBold.ttf");
}
@font-face {
  font-family: "Montserrat-Medium";
  src: url("../fonts/Montserrat-Medium.ttf");
}
/* ----------------------------------------------------------------------
 SERVICE
---------------------------------------------------------------------- */
.title_page {
  overflow: hidden;
  position: relative;
}

/* --------------------
 SEC_LEAD
-------------------- */
#sec_lead {
  position: relative;
}
#sec_lead p {
  color: #fff;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.04em;
}
#sec_lead:before {
  content: "";
  display: block;
  width: 50%;
  bottom: 0;
  left: 0;
  position: absolute;
}
@media screen and (min-width: 768px) {
  #sec_lead {
    padding: 130px 0 170px;
  }
  #sec_lead:before {
    height: 40px;
    background: url(../img/common/frame_b_bottom_pc.svg) no-repeat bottom right;
  }
  #sec_lead p {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  #sec_lead {
    padding: 68px 0 100px;
  }
  #sec_lead:before {
    height: 20px;
    background: url(../img/common/frame_b_bottom_sp.svg) no-repeat bottom right;
  }
  #sec_lead p {
    font-size: 16px;
  }
}

/* --------------------
 SEC_POINT
-------------------- */
#sec_point {
  background: rgba(0, 69, 255, 0.2);
}
@media screen and (min-width: 768px) {
  #sec_point {
    padding: 130px 0 160px;
  }
}
@media screen and (max-width: 767px) {
  #sec_point {
    padding: 68px 0 100px;
    background: rgba(0, 69, 255, 0.2);
  }
}

@media screen and (max-width: 767px) {
  .sec_point_detail + .sec_point_detail {
    margin-top: 70px;
  }
}

@media screen and (min-width: 768px) {
  .point_01 {
    margin-top: 70px;
  }
}
@media screen and (max-width: 767px) {
  .point_01 {
    margin-top: 45px;
  }
}

@media screen and (min-width: 1240px) {
  .point_02 .detail {
    width: calc((100% - 160px) / 3);
  }
}
@media screen and (min-width: 768px) and (max-width: 1239px) {
  .point_02 .detail {
    width: calc((100% - 80px) / 3);
  }
}
@media screen and (min-width: 768px) {
  .point_02 .detail_02 {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .point_02 .detail_03 {
    margin-top: 80px;
  }
}
@media screen and (min-width: 768px) {
  .point_02 {
    margin-top: 130px;
  }
  .point_02 .l_flex {
    margin-top: 50px;
  }
  .point_02 .txt {
    margin-top: 10px;
  }
  .point_02 p {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .point_02 .l_flex {
    margin-top: 34px;
  }
  .point_02 .detail + .detail {
    margin-top: 37px;
  }
  .point_02 p {
    margin-top: 12px;
    font-size: 14px;
  }
}

@media screen and (min-width: 768px) {
  .point_03 {
    margin-top: 130px;
  }
}
.point_01,
.point_03 {
  justify-content: space-between;
}
.point_01 .l_flex,
.point_03 .l_flex {
  align-items: center;
}
@media screen and (min-width: 768px) {
  .point_01 .img,
  .point_03 .img {
    width: 37.5%;
  }
  .point_01 .txt,
  .point_03 .txt {
    width: 60%;
    padding: 0 5% 0 10%;
  }
  .point_01 .title_m,
  .point_03 .title_m {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .point_01 .title_m + p,
  .point_03 .title_m + p {
    margin-top: 27px;
    font-size: 14px;
  }
  .point_01 .img,
  .point_03 .img {
    margin-top: 23px;
  }
}

/* --------------------
 SEC_OTHERS
-------------------- */
#sec_others {
  position: relative;
}
#sec_others:before {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  content: "";
}
@media screen and (min-width: 768px) {
  #sec_others:before {
    width: 50%;
    height: 40px;
    background: url(../img/common/frame_b_top_pc_02.svg) no-repeat top left;
  }
}
@media screen and (max-width: 767px) {
  #sec_others:before {
    width: 50%;
    height: 20px;
    background: url(../img/common/frame_b_top_sp_02.svg) no-repeat top left;
  }
}
#sec_others .l_flex {
  align-items: center;
}
#sec_others .txt > .title_l {
  background: #0045FF;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
}
@media screen and (min-width: 768px) {
  #sec_others {
    padding: 180px 0 80px;
  }
  #sec_others .img {
    width: 44%;
  }
  #sec_others .txt {
    width: 52%;
  }
  #sec_others .txt > .title_l {
    margin: 20px 0 30px;
  }
}
@media screen and (max-width: 767px) {
  #sec_others {
    padding: 73px 0 0;
  }
  #sec_others .img {
    margin-top: 54px;
  }
  #sec_others .txt > .title_l {
    margin: 43px auto 23px;
  }
  #sec_others .txt p {
    font-size: 14px;
  }
}/*# sourceMappingURL=service.css.map */