body{
  background:none;
}

.main {
  padding-top:50px;
  overflow: visible;
  padding-bottom:60px;
  line-height: 1.8;
    font-family: -apple-system,BlinkMacSystemFont,Helvetica Neue,游ゴシック Medium,YuGothic,YuGothicM,Hiragino Kaku Gothic ProN,メイリ
}
.main img{
  max-width: 100%;
}

.main .inner{
  max-width:1044px;
  margin:0 auto;
}
.main a{
  transition-duration: 0.3s;
}
.main a:hover{
  opacity:0.7;
}
.main .-observe{
  position:relative;
  top:30px;
  transition-duration:1s;
  opacity:0;
}
.main .-observe.-show{
  top:0;
  opacity:1;
}

.mv__wave {
  bottom: -21%;
    transform: scaleY(-0.5);
}
.mvLower .mvLower__copy {
    color: #00aeeb;
  padding-bottom:0.5em;
}

.main .movie{
  text-align: center;
  margin-top:10rem;
}

.main h2{
  font-size:38px;
  text-align: center;
  color:#00aeeb;
  margin-top:2.5em;
  letter-spacing: -0.2em;
}
.main h2 span{
  letter-spacing: 0;
  font-size:38px;
  transition-property: opacity,transform;
    transition-duration: 2s;
    transition-timing-function: cubic-bezier(.15,.46,.08,.95);
}
.main h2 + p{
  font-size:16px;
  margin-bottom:2em;
  line-height: 2.3;
  text-align: center;
}
.-observe[data-observe-type=y] {
    transition-property: opacity,transform;
    transition-duration: 2s;
    transition-timing-function: cubic-bezier(.15,.46,.08,.95)
}

.-observe[data-observe-type=y]:not(.-show) {
    opacity: 0;
    transform: translateY(40px)
}

.main h2.-observe[data-observe-type=title] span {
    transition-property: opacity,transform;
    transition-duration: 2s;
    transition-timing-function: cubic-bezier(.15,.46,.08,.95)
}

.main h2.-observe[data-observe-type=title] span:first-of-type {
    transition-delay: 0s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(2) {
    transition-delay: .05s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(3) {
    transition-delay: .1s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(4) {
    transition-delay: .15s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(5) {
    transition-delay: .2s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(6) {
    transition-delay: .25s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(7) {
    transition-delay: .3s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(8) {
    transition-delay: .35s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(9) {
    transition-delay: .4s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(10) {
    transition-delay: .45s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(11) {
    transition-delay: .5s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(12) {
    transition-delay: .55s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(13) {
    transition-delay: .6s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(14) {
    transition-delay: .65s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(15) {
    transition-delay: .7s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(16) {
    transition-delay: .75s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(17) {
    transition-delay: .8s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(18) {
    transition-delay: .85s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(19) {
    transition-delay: .9s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(20) {
    transition-delay: .95s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(21) {
    transition-delay: 1s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(22) {
    transition-delay: 1.05s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(23) {
    transition-delay: 1.1s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(24) {
    transition-delay: 1.15s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(25) {
    transition-delay: 1.2s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(26) {
    transition-delay: 1.25s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(27) {
    transition-delay: 1.3s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(28) {
    transition-delay: 1.35s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(29) {
    transition-delay: 1.4s
}

.main h2.-observe[data-observe-type=title] span:nth-of-type(30) {
    transition-delay: 1.45s
}

.main h2.-observe[data-observe-type=title] .section__titleWave {
    transition-property: -webkit-clip-path;
    transition-property: clip-path;
    transition-property: clip-path,-webkit-clip-path;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.15,.46,.08,.95);
      transition-delay: .7s;
}
.main h2.title1.-observe[data-observe-type=title] .section__titleWave {
      transition-delay: 1.5s;
}

.main h2.-observe[data-observe-type=title]:not(.-show) span {
    opacity: 0;
    transform: translateY(40px)
}

.main h2.-observe[data-observe-type=title]:not(.-show) .section__titleWave {
    -webkit-clip-path: inset(0 50%);
    clip-path: inset(0 50%)
}

.main h2.-observe[data-observe-type=title].-show .section__titleWave {
    -webkit-clip-path: inset(0 0);
    clip-path: inset(0 0);
  position: relative;
    top: -1em;
}

.main h2 .-observe[data-observe-type=wave] {
    transition-property: -webkit-clip-path;
    transition-property: clip-path;
    transition-property: clip-path,-webkit-clip-path;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.15,.46,.08,.95);
}

.main h2 .-observe[data-observe-type=wave]:not(.-show) {
    -webkit-clip-path: inset(0 50%);
    clip-path: inset(0 50%)
}

.main h2 .-observe[data-observe-type=wave].-show {
    -webkit-clip-path: inset(0 0);
    clip-path: inset(0 0)
}

.main .box{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.main .box div{
  width:46.5%;
}
.main .box div img{
  margin-bottom:4em;
}
.main .box div p{
  font-size:16px;
  line-height: 2.2;
}
.main .box .img {
    width: 48%;
    border-radius: 5%;
    overflow: hidden;
}
.main .box > ul > li{
    display:flex;
  justify-content: space-between;
  align-items: center;
  background-color:#FFF;
  border-radius:4em;
  padding:3.5%;
  box-sizing: border-box;
  position:relative;
  margin-bottom:6em;
}
.main .box > ul > li > img{
  width:34%;
}
.main .box > ul > li .icon{
      position: absolute;
    top: -7%;
    left: -4%;
    width: 10%;
}
.main .box > ul > li div{
  width:60%;
}
.main .box > ul > li div h3{
  color:#00aeeb;
  font-size:22px;
  margin-bottom:0.5em;
}

.point__number {
      width: 10.8rem;
    height: 10.8rem;
    background-color: #00aeeb;
    font-size: 1.8rem;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    letter-spacing: .05em;
    position: absolute;
    left: -1.6rem;
    top: -3rem;
    font-family: Figtree,sans-serif;
    animation-duration: 8s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    overflow: hidden;
    animation-name: morphing2;
  line-height: 1.2;
}
.point__number span {
    font-size: 4rem;
    font-weight: 700;
}
@keyframes morphing2 {
    0% {
        border-radius: 50% 50% 48% 52%/52% 53% 47% 48%;
    }

    25% {
        border-radius: 60% 40% 58% 42%/38% 57% 43% 62%;
    }

    50% {
        border-radius: 50% 50% 46% 54%/51% 38% 62% 49%;
    }

    75% {
        border-radius: 39% 61% 42% 58%/45% 48% 52% 55%;
    }

    to {
        border-radius: 50% 50% 48% 52%/52% 53% 47% 48%;
    }
}


.main .btn_return{
  text-align: center;
  margin-top:12em;
}
.main .btn_return a{
  font-size:14px;
  text-decoration: none;
  background-color:#e9f4fb;
  padding:1em 5em;
  border-radius: 3em;
  display:inline-block;
  position:relative;
  font-weight: bold;
}

.main .btn_return a:after {
    content: "";
    vertical-align: middle;
    position: absolute;
    top: 50%;
    margin-top: -0.25em;
    right: 2em;
    width: 0.5em;
    height: 0.5em;
    border-top: 0.15em solid #00aeeb;
    border-right: 0.15em solid #00aeeb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.system__wave {
    position: relative;
    width: 100%;
    transform: scaleY(-1);
  margin-top:5em;
}
.system__wave svg.-front {
    position: absolute;
    top: 0;
    left: 0;
}
.system__wave .system__waveFront {
    fill: url(#systemGradientFront);
}
.system__wave .system__waveBack {
    fill: url(#systemGradientBack);
}

.system_bottom__wave {
    position: relative;
    width: 100%;
}
.system_bottom__wave svg.-front {
    position: absolute;
    top: 0;
    left: 0;
}
.system_bottom__wave .system_bottom__waveFront {
    fill: url(#system_bottomGradientFront);
}
.system_bottom__wave .system_bottom__waveBack {
    fill: url(#system_bottomGradientBack);
}


#point{
  background-color:#ddeff9;
  padding-bottom:77px;
}
#point h2{
  padding-top:1.5em;
  margin-top:0px;
}
#point .icon_plus{
  padding:15em 0 0em 0;
  text-align: center;
}





@media screen and (min-width: 768px) and (max-width: 1044px) {
  .main .inner{
    padding:0 3%;
  }
}


@media screen and (max-width: 767px) {
  .main .inner{
    padding:0 3.2rem;
  }
.mv__wave {
  bottom: 0;
    transform: scaleY(-1);
}
  .mvLower .mvLower__copy{
    font-size:6vw;
    padding-left:0px;
    padding-right:0px;
  }
  .main h2{
    font-size:5.5vw;
    white-space: nowrap;
  }
  .main h2 span{
    font-size:5.5vw;
  }
  .main .box{
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .main .box .img{
    order: 1;
    width:100%;
    margin-bottom:6vw;
  }
  .main .box div{
    order:2;
    width:100%;
  }
  main .box div img {
    width:70%;
    margin:0 auto;
    display:block;
}
  .main .movie {
    margin-top: 5rem;
}
  .main .movie iframe{
    width:100%;
    height: 52vw;
  }

  .main .box div p {
    font-size: 3.5vw;
    line-height: 2.2;
  }
  .main .box > ul{
    display:block;
  }
  .main .box > ul > li{
    width:100%;
    padding: 7vw 8%;
    margin-bottom:10vw;
    font-size:3.5vw;
    border-radius: 1.5em;
    display:block;
  }
  .main .box > ul > li:last-child{
    margin-bottom:0px;
  }
  .main .box > ul > li .icon {
    top: -4%;
    left: -2%;
    width: 19%;
}
  .main .box > ul > li > img {
    width: 100%;
}
.main .box > ul > li div {
    width: 100%;
}
  .main .box > ul > li div h3 {
    font-size: 5vw;
    margin-top:1em;
    margin-bottom: 0.5em;
    text-align: center;
}

  .main .btn_return a {
    font-size: 3.5vw;
  }  
  
  .point__number {
    width: 20vw;
    height: 20vw;
    font-size: 3vw;
    left: -3vw;
    top: -3vw;
}
  .point__number span {
    font-size: 7vw;
}  
  
  
  
  
}

