@charset "UTF-8";
/* ----------------------------------------------------------------------------------------------------
*	 メインビジュアル
* --------------------------------------------------------------------------------------------------*/
.p-mv {
  background-color: #f4f7ff;
}

.p-mv__ttl-box {
  width: 100%;
  max-width: 77.5rem;
  margin: 0 auto;
  padding: 12.5rem 1.25rem 6.25rem;
}

.p-mv__ttl-en {
  font-size: 4.1875rem;
  line-height: 1.4;
  font-weight: 600;
  font-family: "Zalando Sans Expanded", sans-serif;
  color: #2f3659;
}

.p-mv__ttl-ja {
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: 900;
  color: #674cdc;
}

.p-mv__bg {
  height: 23.75rem;
  background-image: url("../../images/business/bg_mv_pc.webp");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: cover;
}

@media screen and (max-width: 767px) {
  .p-mv__ttl-box {
    max-width: initial;
    padding: 26.7vw 4vw 10.7vw;
  }
  .p-mv__ttl-en {
    font-size: 10.1vw;
  }
  .p-mv__ttl-ja {
    font-size: 4.8vw;
  }
  .p-mv__bg {
    height: 32vw;
    background-image: url("../../images/business/bg_mv_sp.webp");
  }
}
/* ----------------------------------------------------------------------------------------------------
*	 事業概要
* --------------------------------------------------------------------------------------------------*/
.p-business {
  padding: 6.25rem 0 7.5rem;
  background-color: #f4f7ff;
}

.p-business__list-item {
  margin: 0 0 6.25rem;
}
.p-business__list-item:last-of-type {
  margin: 0;
}

.p-business__ttl {
  font-size: 2.375rem;
  line-height: 1.5;
  font-weight: 900;
  margin: 0 0 4.375rem;
  color: #2f3659;
}

.p-business__txt {
  font-size: 1rem;
  line-height: 1.7;
  font-weight: 400;
  margin: 0 0 2.5rem;
}

.p-business__pic-list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 1.875rem;
}

.p-business__pic-list-item {
  width: 23.8%;
  margin: 0 1.5% 0.938rem 0;
}
.p-business__pic-list-item:nth-of-type(4n) {
  margin: 0 0 0.938rem;
}

.p-business__btn {
  text-align: right;
}

.p-business__btn-link {
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 700;
  position: relative;
  display: inline-block;
  width: 16.875rem;
  padding: 1.375rem 2.5rem 1.375rem 1.875rem;
  text-align: left;
  color: #fff;
  background-color: #2f3659;
  border: 0.125rem solid #2f3659;
  border-radius: 9999px;
  -webkit-transition: 0.3s ease-in-out background-color, 0.3s ease-in-out color;
  transition: 0.3s ease-in-out background-color, 0.3s ease-in-out color;
}
.p-business__btn-link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 0.125rem solid #fff;
  border-right: 0.125rem solid #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (any-hover: hover) {
  .p-business__btn-link:hover {
    color: #2f3659;
    background-color: #fff;
  }
  .p-business__btn-link:hover:after {
    right: 1.125rem;
    border-top: 0.125rem solid #2f3659;
    border-right: 0.125rem solid #2f3659;
  }
}

@media screen and (max-width: 767px) {
  .p-business {
    padding: 16vw 0 26.7vw;
  }
  .p-business__list-item {
    margin: 0 0 21.3vw;
  }
  .p-business__ttl {
    font-size: 6.4vw;
    margin: 0 0 10.7vw;
  }
  .p-business__txt {
    font-size: 3.7vw;
    margin: 0 0 8vw;
  }
  .p-business__pic-list {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
            justify-content: flex-start;
    -ms-flex-align: start;
    -webkit-box-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 1.875rem;
  }
  .p-business__pic-list-item {
    width: 48%;
    margin: 0 4% 0.938rem 0;
  }
  .p-business__pic-list-item:nth-of-type(2n) {
    margin: 0 0 0.938rem;
  }
  .p-business__btn {
    text-align: left;
  }
  .p-business__btn-link {
    width: 49.3vw;
    padding: 4vw 8vw;
    font-size: 3.7vw;
  }
  .p-business__btn-link:after {
    right: 4vw;
    width: 1.6vw;
    height: 1.6vw;
  }
}