@charset "UTF-8";
body {
  font-family: 'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
  font-weight: normal;
}

.swiper {
  width: 100%;
}

.swiper img {
  width: 100%;
}

.swiper-slide {
  position: relative;
}

.swiper-slide span {
  position: absolute;
  right: 10%;
  top: 16%;
  font-size: 40px;
  font-weight: bold;
  text-shadow: 0px 0px 3px rgba(255, 255, 255, 0.9);
}

.swiper-slide span.center {
  left: 0;
  top: 15%;
  width: 100%;
  text-align: center;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after,
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  color: #fff;
}

.lpjp-logo img {
  width: 180px;
}

.lpjp-sec {
  margin: 100px auto;
}

.lpjp-sec.p1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1100px;
  margin: 100px auto;
}

.lpjp-sec.p1 .lpjp-sec-left {
  width: 50%;
}

.lpjp-sec.p1 .lpjp-sec-right {
  width: 50%;
}

.lpjp-sec.p1 .lpjp-sec-ttl {
  text-align: left;
}

.lpjp-sec.p1 .lpjp-sec-cnt {
  margin-top: 60px;
  max-width: 100%;
}

.lpjp-sec-ttl {
  font-size: 40px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

.lpjp-sec-cnt {
  font-size: 16px;
  font-weight: bold;
  line-height: 2;
  max-width: 500px;
  margin: auto;
}

.lpjp-sec-img {
  margin: 50px auto;
  max-width: 600px;
}

.lpjp-sec-img.v2 {
  max-width: 300px;
}

.lpjp-sec-img img {
  width: 100%;
}

.lpjp-step {
  text-align: center;
  display: flex;
  justify-content: space-between;
  max-width: 1100px;
  margin: auto;
}

.lpjp-step > div {
  width: calc(25% - 10px);
}

.lpjp-step-no {
  font-size: 190px;
  font-weight: bold;
}

.lpjp-step-ttl {
  font-size: 24px;
  font-weight: bold;
  margin: -45px auto 40px;
}

.lpjp-step-cnt {
  font-size: 15px;
}

footer {
  color: #000;
  border-top: 1px solid #979797;
  padding: 20px;
}

@media only screen and (max-width: 735px) {
  .swiper-slide span {
    font-size: 5vw;
  }
  .swiper-slide span.center {
    font-size: 4.5vw;
  }
  .lpjp-logo img {
    width: 30%;
  }
  .lpjp-sec {
    margin: 50px auto;
    padding: 0 5%;
  }
  .lpjp-sec.p1 {
    display: block;
    margin: 50px auto 80px;
  }
  .lpjp-sec.p1 .lpjp-sec-left {
    width: 100%;
  }
  .lpjp-sec.p1 .lpjp-sec-right {
    width: 100%;
    margin-top: 30px;
  }
  .lpjp-sec.p1 .lpjp-sec-cnt {
    margin-top: 30px;
  }
  .lpjp-sec-ttl {
    font-size: 24px;
  }
  .lpjp-sec-cnt {
    font-size: 15px;
  }
  .lpjp-sec-img {
    margin: 30px auto;
  }
  .lpjp-step {
    flex-wrap: wrap;
  }
  .lpjp-step > div {
    width: 100%;
    margin-top: 20px;
  }
  .lpjp-step > div:nth-of-type(1) {
    margin-top: 40px;
  }
  .lpjp-step-no {
    font-size: 100px;
    line-height: 1;
  }
  .lpjp-step-ttl {
    font-size: 22px;
    margin: 10px auto;
  }
}
