@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

body{
  width: 100%;
  margin: 0;
  line-height: 1.75;
  letter-spacing: 0.04em;
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
  color:white;
  position: relative;
}

.pop{
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.yu{
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

header{
  /* position: fixed;
  top: 0;
  left: 0; */
  width: 100%;
  height: 84px;
  box-sizing: border-box;
  padding:25px 0;
  background: white;
  z-index: 100;
}

.inview1{
  opacity: 0;
  transform: translateY(30px);
  transition: 0.7s;
  transition-delay: 0.1s;
}

.inview1.show1{
  opacity: 1;
  transform: translateY(0);
}

.inview2{
  opacity: 0;
  transform: translateY(30px);
  transition: 0.7s;
  transition-delay: 0.3s;
}

.inview2.show2{
  opacity: 1;
  transform: translateY(0);
}


.wrap1{
  width: 1380px;
  max-width: 100%;
  margin: 0 auto;
  padding:0 30px;
  box-sizing: border-box;
}

.wrap2{
  width: 1260px;
  max-width: 100%;
  margin: 0 auto;
  padding:0 30px;
  box-sizing: border-box;
}

.wrap3{
  width: 1030px;
  max-width: 100%;
  margin: 0 auto;
  padding:0 30px;
  box-sizing: border-box;
}

header h1{
  margin: 0;
  width: 280px;

}

header h1 img{
  width: 100%;
}

.section__1{
  width: 100%;
  background: #28B9C8;
  padding:80px 0 190px;
  /* margin-top: 84px; */
  position: relative;
}

.section__1 .wrap2{
  position: relative;
  z-index: 2;
}

.main-deco{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.copy{
  margin: 0;
  text-align: center;
}

.copy img{
  width: 548px;
  max-width: 100%;
}

.copy__flex{
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}

.copy__flex .cf__col1{
  width: 32%;
}

.copy__flex .cf__col1 img{
  max-width: 100%;
  width: 376px;
  margin-top: 25px;
}

.copy__flex .cf__col2{
  width: 32%;
}

.copy__flex .cf__col2 img{
  width: 340px;
  max-width: 100%;
  display: block;
  margin:0 auto;
}

.copy__flex .cf__col3{
  width: 32%;
}

.copy__flex .cf__col3 img{
  max-width: 100%;
  width: 375px;
  display: block;
  margin-left: auto;

}

.copy__text1{
  margin:220px 0 0;
  text-align: center;
  font-size: 22px;
  line-height: 3;
}

.why__box{
  width: 967px;
  max-width: 100%;
  background: white;
  position: relative;
  padding:150px 140px 90px;
  margin:200px auto 150px;
  box-sizing: border-box;
  border-radius: 270px;
  overflow: hidden;
}

.why__text{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 388px;
  max-width: 100%;
}

.why__text2{
  color:#DC5564;
  font-size: 25px;
  text-align: center;
  margin:0 0 40px;
  font-weight: bold;
}

.why__text3{
  width: 436px;
  max-width: 70%;
  font-size: 16px;
  line-height: 1.9;
  margin: 0;
  color: #343434;
}

.why__illust3{
  width: 334px;
  position: absolute;
  right: 85px;
  bottom: -50px;
}

.button__flex{
  position: fixed;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  width: 940px;
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
  z-index: 20;
}

.button__flex.active{
  opacity: 1;
  pointer-events: auto;
}

.button__flex a{
  width: 440px;
  max-width: 48%;
  display: block;
  transition: 0.4s;
}

.button__flex a:hover{
  opacity: 0.6;
}

.button__flex a img{
  width: 100%;
}

.text1{
  display: block;
  margin:160px auto 0;
  width: 744px;
  max-width: 100%;
  text-align: center;
}

.section__2#sec2{
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  margin-top: -40px;
  z-index: 3;
  position: relative;
}

.section__2{
  width: 100%;
  position: relative;
  background: #F8797D;
  padding:80px 0 160px;
  border-bottom-left-radius: 40px;
  border-bottom-right-radius: 40px;
}

.section__2#sec3{
  background: #28B9C8;
  margin-top: -40px;
}

.sec-title{
  position: absolute;
  top: -70px;
  left: 50%;
  transform: translateX(-50%);
  width: 684px;
  max-width: 100%;
}

.sec-title2{
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 520px;
  max-width: 100%;
  z-index: 10;
}

.illust4{
  width: 967px;
  display: block;
  margin:80px auto 0;
  max-width: 100%;
}

.section__2 h3{
  font-size: 29px;
  text-align: center;
  margin:40px 0 50px;
}

.section__2 h3 span{
  display: inline-block;
  padding-bottom: 5px;
  border-bottom: 1px solid white;
}

.sec__text1{
  font-size: 20px;
  text-align: center;
  margin: 0;
  line-height: 1.9;
}

.point__flex{
  display: flex;
  align-items: center;
  margin-top: 110px;
}

.point__left{
  width: 50%;
  box-sizing: border-box;
  padding-right: 40px;
}

.point__right{
  width: 50%;
  box-sizing: border-box;
}

.point__right img{
  max-width: 120%;
  width: 516px;
  position: relative;
  margin-top: 0px;
  right: 20px;
}

.point__left h4{
  margin: 0;
  text-align: center;
  width: 200px;
  padding:5px 0;
  background: white;
  font-weight: 600;
  font-size: 24px;
  color: #F8797D;
  border-radius: 31px;
}

.point__title{
  font-size: 24px;
  margin:25px 0 28px;
}

.point__title span{
  display: inline-block;
  min-width: 306px;
  border-bottom: 1px solid white;
  padding-bottom: 8px;
}

.point__text{
  font-size: 16px;
  line-height: 1.9;
  margin: 0;
}

.sec__text2{
  font-size: 20px;
  text-align: center;
  line-height: 2.2;
  margin: 110px 0 0;
}

.illust__bg{
  width: 100%;
  display: block;
  margin: 110px auto 55px;
}

.mt__half.sec__text2{
  margin-top: 40px;
}

.sec__text2 span{
  display: inline-block;
  margin-top: 3px;
  font-size: 14px;
}

.bar__text{
  font-size: 34px;
  text-align: center;
  margin: 110px auto 0;
}

.bar__text span{
  position: relative;
  padding: 0 70px;
}

.bar__text span::before{
  content: "";
  position: absolute;
  top: 62%;
  transform: translateY(-50%);
  left: 0;
  background-image: url('../img/bar1.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 35px;
  height: 47px;
  z-index: 2;
}

.bar__text span::after{
  content: "";
  position: absolute;
  top: 62%;
  transform: translateY(-50%);
  right: 0;
  background-image: url('../img/bar2.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 35px;
  height: 47px;
  z-index: 2;
}

.point__title.type2{
  margin-top: 50px;
}

.point__left h4.color{
  color: #28B9C8;
}

.point__flex.type2{
  align-items: start;
}

.type2 .point__right img{
  margin-top: 70px;
}

.type2 .point__right p{
  font-size: 13px;
  text-align: center;
  margin:-65px 0 0;
}

.section__3{
  width: 100%;
  margin-top: -40px;
  padding:180px 0;
  background-image: url('../img/sec4-bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.section__3 h3{
  font-size: 50px;
  font-weight: bold;
  text-align: center;
  margin:0 0 60px;
  line-height: 2;
  color:#FA555A;
}

.sec3__text2{
  font-size: 22px;
  text-align: center;
  line-height: 3;
  margin:0 0 120px;
  color:#343434;
}

.illust17{
  width: 884px;
  display: block;
  margin:0 auto;
  max-width: 100%;
  display: block;
}

.line__box{
  width: 740px;
  max-width: 100%;
  margin:130px auto;
  display: flex;
  align-items: center;
  text-decoration: none;
  color:white;
  background: #00B900;
  padding:40px 45px;
  box-sizing: border-box;
  border-radius: 20px;
  transition: 0.4s;
}

.line__box:hover{
  opacity: 0.7;
}

.line__box .lb__left{
  width: 75%;
}

.line__box .lb__right{
  width: 25%;
}

.line__box .lb__right img{
  width: 115px;
  max-width: 100%;
  display: block;
  margin-left: auto;
}

.line__box .lb__left .lbl__1{
  font-size: 26px;
  margin:0 0 10px;
  font-weight: bold;
}

.line__box .lb__left .lbl__2{
  font-size: 15px;
  margin: 0;
  font-weight: bold;
}

.footer-logo{
  width: 411px;
  max-width: 100%;
  display: block;
  margin:0 auto;
}

body{
  overflow-x: hidden;
}

.en__img{
  position: absolute;
  right: 0;
  top: 60px;
  width: 98px;
  z-index: 1;
}

.point__left ul{
  margin: 0;
  font-size: 16px;
  padding-left: 18px;
}

.point__left ul li{
  margin-bottom: 25px;
  letter-spacing: 0;
}

ul li span.small{
  font-size: 13px;
  position: relative;
  display: inline-block;
  top: -5px;
}

.text__type2{
  font-size: 14px;
  margin:-25px 0 30px;
  text-align: right;
}


@media screen and (max-width: 1024px) {

  .why__illust3{
    width: 33%;
  }

}


@media screen and (max-width: 767px) {

  .wrap1, .wrap2, .wrap3 {
    padding:0 15px;
  }

  .copy__flex{
    margin-top: 15px;
  }

  .copy__text1{
    margin-top: 100px;
    font-size: 17px;
  }

  .why__box{
    border-radius: 160px;
    padding:120px 30px 70px;
    margin-top: 120px;
    margin-bottom: 120px;
  }

  .why__illust3{
    width: 35%;
    right: 0;
    bottom: -35px;
  }

  .why__text3{
    font-size: 15px;
  }

  .why__text{
    width: 300px;
  }

  .text1{
    margin-top: 120px;
  }

  .sec-title{
    width: 400px;
    top: -40px;
  }

  .sec-title2{
    width: 440px;
    top: -45px;
  }

  .illust4{
    margin-top: 30px;
  }

  .section__2 h3{
    font-size: 22px;
  }

  .sec__text1{
    font-size: 18px;
  }

  .point__flex{
    display: block;
    margin-top: 80px;
  }

  .point__left{
    width: 100%;
  }

  .point__right{
    width: 100%;
  }

  .point__right img{
    max-width: 100%;
    width: 100%;
    right: 0;
  }

  .sec__text2{
    font-size: 18px;
    margin-top: 20px;
  }

  .point__title span{
    min-width: auto;
  }

  .bar__text{
    font-size: 24px;
  }

  .bar__text span{
    padding:0 50px;
  }

  .type2 .point__right p{
    margin-top: -14vw;
  }

  .type2 .point__right img{
    margin-top: 0;
  }

  .section__3 h3{
    font-size: 35px;
  }

  .sec3__text2{
    font-size: 18px;
  }

  .point__left{
    padding-right: 0px;
  }

  .button__flex{
    box-sizing: border-box;
    padding: 0 15px;
  }

  .button__flex a{
    width: 49%;
    max-width: 49%;
  }


}

.sp{
  display: none;
}

@media screen and (max-width: 500px){

  .sp{
    display: block;
  }

  .copy img{
    width: 320px;
  }

  .copy__flex .cf__col2{
    width: 36%;
  }

  .copy__flex .cf__col1{
    width: 30%;
  }

  .copy__flex .cf__col3{
    width: 30%;
  }

  .copy__flex .cf__col3 img{
    margin-top: 20px;
  }

  .copy__text1 {
    font-size: 16px;
    margin-top: 70px;
  }

  .why__box{
    border-radius: 60px;
    margin-top: 70px;
    padding:100px 20px 100px;
  }

  .why__text{
    width: 270px;

  }

  .why__text3{
    max-width: 100%;
  }

  .why__illust3{
    width: 130px;
  }

  .section__1{
    padding-bottom: 110px;
  }

  .sec-title{
    width: 360px;
    max-width: 95%;
    top: -36px;
  }

  /* .illust4{
    margin-top: 0;
  } */

  .sec__text1{
    font-size: 16px;
  }

  .point__left h4{
    width: 160px;
    padding:3px 0;
    font-size: 20px;
  }

  .point__title{
    font-size: 20px;
  }

  .point__title span{
    padding-bottom: 3px;
  }

  .point__left{
    padding-right: 0;
  }

  .sec__text2{
    font-size: 17px;
  }

  .illust__bg{
    margin:90px 0 40px;
  }

  .point__title{
    margin:20px 0 24px;
  }

  .bar__text{
    font-size: 20px;
  }

  .bar__text span{
    display: inline-block;
  }

  .bar__text{
    margin-top: 30px;
  }

  .section__2{
    padding-bottom: 110px;
  }

  .sec-title2{
    max-width: 95%;
    width: 350px;
  }

  .type2 .point__right p{
    margin-top: -12vw;
    font-size: 12px;
  }

  .section__3{
    margin-top: -20px;
    padding:120px 0;
  }

  .section__3 h3{
    font-size: 28px;
    margin-bottom: 35px;
  }

  .sec3__text2{
    font-size: 15px;
    margin-bottom: 70px;
    line-height: 2.5;
  }

  .line__box{
    margin:80px 0 50px;
    padding:40px 20px;
    display: block;
  }

  .line__box .lb__left{
    width: 100%;
  }

  .line__box .lb__right{
    width: 100%;
  }

  .line__box .lb__right img{
    /* width: 100%; */
    margin: 30px auto 0;
  }

  .line__box .lb__left .lbl__1{
    font-size: 24px;
    margin-bottom: 15px;
  }

  .line__box .lb__left .lbl__2{
    font-size: 14px;
  }

  .footer-logo{
    width: 280px;
  }

  .section__2#sec3{
    padding-bottom: 50px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
  }

  header{
    padding:20px 0;
    height: 70px;
  }

  header h1{
    width: 220px;
  }

  .section__1{
    /* margin-top: 70px; */
    padding-top: 60px;
  }

  .why__text2{
    font-size: 20px;
    margin-bottom: 25px;
  }

  .section__2#sec2{
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
  }

  .en__img{
    width: 49px;
    top: 80px;
  }

  .section__2 h3{
    font-size: 20px;
  }

  .sec-title2{
    width: 330px;
    top: 0;
  }

  .section__2#sec2{
    border-radius: 0;
  }

  .inview2{
    transition-delay: 0.1s;
  }


  .section__2 h3{
    margin-bottom: 30px;
  }









}









