.service main {
  background: url("/assets/69923533143dca587b076966.svg") no-repeat left bottom;
}
@media (max-width: 767px) {
  .service main {
    background-size: auto 376px;
  }
}
.service h1 {
  margin-bottom: 0;
}
.service__keyvisual {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  overflow: visible;
  z-index: -1;
  transition: all 0.5s 0s;
}
@media (max-width: 767px) {
  .service__keyvisual {
    display: block;
    margin: 41px 0 0px;
    height: 136.67vw;
    width: 100%;
  }
  .service__keyvisual img {
    position: absolute;
    max-width: none;
    object-fit: cover;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .service__keyvisual {
    margin: -40px auto -24%;
  }
  .service__keyvisual img {
    width: 120vw;
    display: block;
    max-width: 1310px;
  }
}
@media screen and (min-width: 1100px) {
  .service__keyvisual {
    margin: -40px auto -264px;
  }
}
.service .has-bg_01 {
  position: relative;
  overflow: visible;
}
.service .has-bg_01::after {
  content: "";
  position: absolute;
  top: -135px;
  left: -1rem;
  right: -1rem;
  height: 441px;
  background: url("/assets/8e4fa9c3132cbf7520f888b8.svg") no-repeat left top;
  background-size: contain;
  z-index: -1;
}
@media (max-width: 767px) {
  .service .has-bg_01::after {
    top: -100px;
  }
}
@media (min-width: 768px) {
  .service .has-bg_01::after {
    height: 708px;
  }
}
.service .has-bg_02 {
  position: relative;
  overflow: visible;
}
.service .has-bg_02::after {
  content: "";
  position: absolute;
  top: -120px;
  left: -1rem;
  right: -1rem;
  height: 467px;
  background: url("/assets/a21f303f2504094eb4833e82.svg") no-repeat right top;
  background-size: contain;
  z-index: -1;
}
@media (max-width: 767px) {
  .service .has-bg_02::after {
    top: 150vw;
  }
}
@media (min-width: 768px) {
  .service .has-bg_02::after {
    height: 708px;
  }
}
