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 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;
}
.main h2 + p span{
  font-size:0.8em;
}
.-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.title3.-observe[data-observe-type=title] .section__titleWave {
      transition-delay: 1.5s;
}
.main h2.title4.-observe[data-observe-type=title] .section__titleWave {
      transition-delay: 1.2s;
}

.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 .btn_return{
  text-align: center;
  margin-top:5em;
}
.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);
}


#system{
  background-color:#ddeff9;
  padding-bottom:77px;
}
#system h2{
  padding-top:1.5em;
  margin-top:0px;
}
.slider + p{
  font-size:16px;
  line-height: 2.3;
  margin-top:4em;
  margin-bottom:1em;
}
.slider2{
  margin-top:90px;
}
.slider3 .slick-dots li button
{
    background: #ddeff9;
}
.slider3 .slick-dots li.slick-active button{
	background-color:#00aeeb;
}
#system .caption li{
  color:#808080;
  font-size:11px;
  padding-left:2em;
  text-indent: -2em;
  margin-top:0.5em;
}





@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);
}
  .main h2{
    font-size:5.5vw;
  }
  .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 .box div p {
    font-size: 3.5vw;
    line-height: 2.2;
  }

  .main .btn_return a {
    font-size: 3.5vw;
  }  
  
  
  
  
  
  
  
}

