* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.tal {
  text-align: left;
}

.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

.pc{display: block;}
.sp{display: none;}

h2 {
  margin: 0;
  padding: 0;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

body {
  background: url("https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/pc_bg.jpg") no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  background-color: #fff;
  color: #333;
}

.lp-main,
.lp-header,
.lp-footer {
  max-width: 500px;
  margin: 0 auto;
}

.cta {
  text-align: center;
  background: url("https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/cta_bg.png") repeat-y;
  background-size: 100%;
  position: relative;
  padding-bottom: 25px;
}
.cta::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/cta_bottom.png") no-repeat center;
  background-size: 100% 100%;
  pointer-events: none;
  width: 100%;
  height: 24px;
}
.cta p {
  font-size: 1rem;
  padding: 10px 6%;
}
.cta .atte-text {
  display: block;
  font-size: 80%;
  text-align: left;
  margin-top: 10px;
  line-height: 140%;
}

.section01 {
  background: #FFF;
  padding: 40px;
  text-align: center;
}
.section01 p {
  font-family: serif;
  line-height: 170%;
}
.section01 h2 {
  margin-bottom: 10%;
  text-align: center;
}
.section01 .tit01 {
  width: 80%;
  height: auto;
  margin: 0 auto;
}
.section01 .tit02 {
  width: 90%;
  height: auto;
  margin: 0 auto;
}
.section01 .txt01, .section01 .txt02 {
  color: #e75d69;
  font-size: 20px;
  font-weight: 600;
  text-shadow: 0 0 5px #FFF;
}
.section01 .txt01 {
  background: url(https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/sec01_bg01.png) no-repeat right top;
  background-size: 35%;
  padding: 20% 0 5%;
}
.section01 .txt02 {
  background: url(https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/sec01_bg02.png) no-repeat left top;
  background-size: 35%;
  padding: 20% 0 10%;
}
.section01 .txt03 {
  font-size: 24px;
  color: #e75d69;
  font-weight: 600;
  padding-bottom: 10%;
}
.section01 .txt04 {
  font-size: 18px;
  padding-bottom: 20%;
  font-weight: 600;
  line-height: 200%;
}
.section01 .txt05, .section01 .txt06, .section01 .txt07 {
  font-weight: 600;
  line-height: 180%;
}
.section01 .txt05 {
  font-size: 24px;
  padding-bottom: 10%;
}
.section01 .txt06 {
  font-size: 18px;
  padding-bottom: 10%;
}
.section01 .txt07 {
  font-size: 17px;
  padding-bottom: 10%;
  letter-spacing: -0.05em;
}

@-webkit-keyframes fluffy {
  0% {
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
}

@keyframes fluffy {
  0% {
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
}
.section02 {
  position: relative;
  font-size: 0;
  background: #455c9a;
}
.section02 .bg-wrap {
  position: relative;
  display: inline-block;
}
.section02 .bg-wrap .sec02_bg-img {
  width: 100%;
  height: auto;
  display: block;
}
.section02 .bg-wrap .sec02_img01,
.section02 .bg-wrap .sec02_img02,
.section02 .bg-wrap .sec02_img03 {
  position: absolute;
  width: 50%;
  height: auto;
  max-width: 250px;
  opacity: 0;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
  -webkit-transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease, -webkit-transform 1.5s ease;
}
.section02 .bg-wrap .is-visible {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.section02 .bg-wrap .is-visible.sec02_img01 {
  -webkit-animation: fluffy 3s ease-in-out infinite;
          animation: fluffy 3s ease-in-out infinite;
}
.section02 .bg-wrap .is-visible.sec02_img02 {
  -webkit-animation: fluffy 4s ease-in-out infinite;
          animation: fluffy 4s ease-in-out infinite;
}
.section02 .bg-wrap .is-visible.sec02_img03 {
  -webkit-animation: fluffy 5s ease-in-out infinite;
          animation: fluffy 5s ease-in-out infinite;
}
.section02 .bg-wrap .sec02_img01 {
  left: 5%;
  top: 0;
}
.section02 .bg-wrap .sec02_img02 {
  left: 5%;
  top: 32%;
}
.section02 .bg-wrap .sec02_img03 {
  left: 5%;
  top: 65%;
}

.section05 {
  background: #FFF;
  padding-bottom: 40px;
}
.section05 h2 {
  margin-bottom: 10%;
}
.section05 h3 {
  font-size: 27px;
  font-family: serif;
  text-align: center;
  margin-bottom: 10px;
}
.section05 .txt01 {
  font-weight: 600;
  text-align: center;
  padding: 0 20px;
  margin-bottom: 40px;
}
.section05 .sec05_img {
  width: 80%;
  height: auto;
  margin: 0 auto 40px;
}
.section05 .txt02 {
  font-family: serif;
  line-height: 200%;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  padding: 0 20px;
}

.section06 {
  background: #FFF;
  padding-bottom: 40px;
}
.section06 h2 {
  margin-bottom: 10%;
}
.section06 .txt01 {
  font-weight: 600;
  text-align: center;
  padding: 0 20px;
  margin-bottom: 40px;
}

.faq {
  background: #dae9f8;
  padding: 10px;
}
.faq h2 {
  text-align: center;
  color: #566bb2;
  font-size: 40px;
  font-weight: 700;
  margin: 50px 0;
}
.faq dl {
  background: #FFF;
  padding: 20px;
  margin-bottom: 30px;
}
.faq dl dt {
  border-bottom: solid 1px #666666;
  padding: 10px;
  margin-bottom: 10px;
}
.faq dl dt h3 {
  color: #566bb2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 22px;
  position: relative;
  padding-left: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.faq dl dt h3::after {
  content: "";
  display: block;
  background: url(https://d2w53g1q050m78.cloudfront.net/bishohcom/uploads/images001/faq_icon01.png) no-repeat left center;
  background-size: contain;
  width: 1.5em;
  height: 1.5em;
  min-width: 30px;
  min-height: 32px;
  position: absolute;
  left: 0;
}
.faq dl dd {
  font-weight: 500;
}
.faq dl dd .atte-text {
  display: block;
  font-size: 80%;
  text-align: left;
  margin-top: 10px;
  line-height: 140%;
}

.lp-footer {
  text-align: center;
  font-size: 0.875rem;
  padding: 10px 0;
}

@media (max-width: 768px) {
  .pc{display: none;}
  .sp{display: block;}
  .section01{padding: 40px 10px;}
  .section01 .txt01, .section01 .txt02 {
    font-size: 17px;
  }
  .section01 .txt03 {
    font-size: 20px;
    letter-spacing: -0.1px;
  }
  .section01 .txt04 {
    font-size: 15px;
    letter-spacing: -0.1px;
  }
  .section01 .txt05 {
    font-size: 22px;
  }
  .section01 .txt06 {
    font-size: 15px;
    letter-spacing: -0.1px;
  }
  .section01 .txt07 {
    font-size: 15px;
    letter-spacing: -0.2px;
  }
  .section05 h3 {
    font-size: 22px;
  }
  .section05 .txt01 {
    letter-spacing: -0.2px;
    font-size: 17px;
  }
  .section05 .txt02 {
    font-size: 17px;
   letter-spacing: -0.3px;
  }
  .section06 .txt01 {
    font-size: 17px;
  }
}