@charset "UTF-8";
/* Scss Document */
/* -------------------------------------------------- */
/* file   : top.css                                  */
/* update : 2023                                      */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* pc向け */
/* --------------------------------------------------- */
.top-inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
}

.top-ttl {
  font-size: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 16px;
}

.top-ttl_en {
  font-weight: 700;
  letter-spacing: 0;
  color: #231815;
}

.top-ttl_ja {
  font-size: 23px;
  letter-spacing: 0.1em;
}

.mv .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 14px;
  position: absolute;
  left: 50%;
  bottom: 30px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 3;
}
.mv .slick-dots li {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  overflow: hidden;
}
.mv .slick-dots li.slick-active button {
  background: #4aa499;
}
.mv .slick-dots button {
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 50%;
  text-indent: -9999px;
  display: block;
  background: #FFF;
}

.mv_img img {
  width: 100%;
  height: auto;
}

.about {
  padding: 40px 0;
}

.about-text {
  margin-top: 24px;
  padding: 0 25px;
}

.about_btn {
  margin: 35px auto 0;
  position: relative;
}
.about_btn::after {
  content: "";
  width: 75px;
  height: 82px;
  display: block;
  background: url(../../img/about.svg) no-repeat center/100% auto;
  position: absolute;
  bottom: -31px;
  right: calc(50% + 130px);
}

.business {
  padding: 40px 0 70px;
  background: #f3f7f9;
}

.service {
  margin-top: 45px;
}
.service:first-of-type {
  margin-top: 38px;
}
.service.service--mt {
  margin-top: 62px;
}

.service-ttl {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-align: center;
  color: #000;
}

.service-list {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 4%;
}

.service-item {
  width: 16.99%;
  text-align: center;
}
.service-item a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.service-item a:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.service-item img {
  opacity: 1;
  -webkit-transition: 0s;
  transition: 0s;
}
.service-item img:hover {
  opacity: 1;
}

.service-item_img {
  -webkit-filter: drop-shadow(0px 5px 10px rgba(0, 82, 179, 0.2));
          filter: drop-shadow(0px 5px 10px rgba(0, 82, 179, 0.2));
}

.service-item_text {
  margin-top: 10px;
  line-height: 1.18;
}

/* -------------------pc END------------------------------- */
/* -------------------------------------------------- */
/* tablet向け */
/* --------------------------------------------------- */
/* ---------------------tablet END----------------------------- */
/* -------------------------------------------------- */
/* sp向け */
/* --------------------------------------------------- */
@media screen and (max-width: 750px) {
  .top-inner {
    max-width: 100%;
    margin: 0;
    padding: 0 20px;
  }
  .top-ttl {
    font-size: 25px;
    gap: 0 12px;
  }
  .top-ttl_en {
    font-weight: 700;
  }
  .top-ttl_ja {
    font-size: 18px;
  }
  .mv .slick-dots {
    bottom: 15px;
  }
  .about {
    padding: 18px 0 30px;
  }
  .about-text {
    margin-top: 12px;
    padding: 0 20px;
  }
  .about_btn {
    margin: 22px auto 0;
  }
  .about_btn::after {
    width: 53px;
    height: 58px;
    bottom: -24px;
    right: calc(50% + 103px);
  }
  .business {
    padding: 17px 0 35px;
  }
  .service {
    margin-top: 30px;
  }
  .service:first-of-type {
    margin-top: 13px;
  }
  .service.service--mt {
    margin-top: 30px;
  }
  .service-ttl {
    font-size: 15px;
  }
  .service-list {
    width: 90.63%;
    margin: 10px auto 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 4.72vw 0;
  }
  .service-item {
    width: 44.83%;
  }
  .service-item a {
    -webkit-transition: 0s;
    transition: 0s;
  }
  .service-item a:hover {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .service-item_img {
    -webkit-filter: drop-shadow(0px 5px 10px rgba(0, 82, 179, 0.2));
            filter: drop-shadow(0px 5px 10px rgba(0, 82, 179, 0.2));
  }
  .service-item_text {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.18;
  }
}
/* -------------------sp END------------------------------- */