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:845px;
  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:4em;
  line-height: 2.3;
  text-align: center;
}
.main h3{
  text-align: center;
  font-size:28px;
  color:#00aeeb;
  margin-bottom:1.5em;
}
.main .text{
  font-size:16px;
  margin-bottom:2em;
  line-height: 2;
}
.main .text1{
  margin-bottom:280px;
}

.-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: .5s;
}
.main h2.title1.-observe[data-observe-type=title] .section__titleWave {
      transition-delay: 1s;
}
.main h2.title3.-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 .box > ul{
  display:flex;
  justify-content: space-between;
  width:100%;
  
}
.main .box > ul > li{
  width:32%;
  background-color:#FFF;
  border-radius:4em;
  padding:3em 2%;
  box-sizing: border-box;
  position:relative;
}
.main .box > ul > li .icon{
  position:absolute;
  top:-2%;
  left:-2%;
  width:20%;
}
.main .box > ul > li .text{
  font-size:15px;
  margin-top:1em;
  padding: 0 0.5rem;
}
.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 .box > ul > li h3{
  text-align: center;
  color:#00aeeb;
  font-size:38px;
  margin-bottom:0.2em;
}
.main .box > ul > li h4{
  text-align: center;
  font-size:22px;
  margin-bottom:1em;
  line-height: 1.3;
}
.main .box > ul > li ul{
  
}
.main .box > ul > li ul li{
  font-size:15px;
  padding-left:1em;
  text-indent: -1em;
  margin-top:1em;
}
.main .box > ul > li ul li span{
  color:#00b0e8;
}

.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:80px;
}
#point h2{
  padding-top:1.5em;
  margin-top:0px;
}
#point .img01{
  top:-350px;
  position:relative;
  z-index:0;
  margin-bottom:-300px;
}
#point .img02{
  padding-top:30px;
}
.main .text5{
  margin-top:-154px;
}
.main .listening{
  text-align: center;
  border-top:1px solid #666464;
  border-bottom:1px solid #666464;
  margin-top:100px;
  padding:40px 0;
}

.main .listening h4{
  font-size:18px;
  color:#00aeeb;
}
.main .listening dt{
  color:#00aeeb;
  font-size:18px;
  margin-top:2em;
  font-weight: bold;
}
.main .listening dd{
  font-size:16px;
}
.main .program{
  border-bottom:1px solid #666464;
  padding:40px 0;

}
.main .program h4{
  font-size:18px;
  color:#00aeeb;
  margin-bottom:1em;
}
.main .program table{
  margin-bottom:40px;
}
.main .program table td{
  font-size:16px;
  padding-right:2em;
}
.main .program .link a{
  font-size:16px;
  display:inline-block;
  padding:0.5em 0 0.5em 3em;
  background:url(/images/radio/arrow.png) 0 center/1.875em no-repeat;
}

.main .campaign h3{
  text-align: center;
  color:#00aeeb;
  font-size:24px;
  margin-top:3em;
  margin-bottom:1.5em;
}
.main .campaign h3 img{
  margin-bottom:0.5em;
}
.main .campaign .bg{
  background-color:#e9f4fb;
  padding:50px 7%;
  text-align: center;
}
.main .campaign .bg h4{
  color:#de2020;
  font-size:24px;
}
.main .campaign .bg h4 + p{
  font-size:24px;
  font-weight: bold;
  margin-top:0.7em;
  margin-bottom:1.5em;
}
.main .campaign .bg .kikan{
  color:#de2020;
  font-size:24px;
  font-weight: bold;
  line-height: 2.2;
  margin:1.5em 0 3em;
}
.main .campaign .bg .kikan a{
  display:inline-block;
  background-color:#de2020;
  color:#FFF;
  padding:0.7em 4em;
  border-radius: 3em;
  text-decoration: none;
  margin-top:1em;
  position:relative;
}
.main .campaign .bg .kikan a:after{
    content: "";
    vertical-align: middle;
    position: absolute;
    top: 50%;
    margin-top: -0.2em;
    right: 2em;
    width: 0.4em;
    height: 0.4em;
    border-top: 0.1em solid #FFF;
    border-right: 0.1em solid #FFF;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.main .campaign .bg .caption{
  font-size:16px;
  text-align: left;
}


@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 5%;
  }
.mv__wave {
  bottom: 0;
    transform: scaleY(-1);
}
  .mvLower .mvLower__copy{
    font-size:5vw;
    padding-left:0px;
    padding-right:0px;
  }
  .main h2{
    font-size:5.5vw;
    white-space: nowrap;
  }
  .main h2 span{
    font-size:5.5vw;
  }
  .main h3 {
    font-size: 4vw;
    margin-bottom: 1.5em;
}
  .main .text {
    font-size: 3.8vw;
}
  .main .text1 {
    margin-bottom: 31vw;
}
  .main .text5 {
    margin-top: -24vw;
}
  #point .img01 {
    top: -35vw;
    margin-bottom: -30vw;
}
  #point .img02 {
    padding-top: 0px;
}
  .main .listening {
    margin-top: 10vw;
    padding: 10vw 0;
}
  .main .listening h4 {
    font-size: 4vw;
}
  .main .listening dt {
    font-size: 4vw;
}
  .main .listening dd {
    font-size: 3.8vw;
}
  .main .program h4 {
    font-size: 4vw;
}
  .main .program table {
    margin-bottom: 5vw;
}
  .main .program table tr{
    display:block;
    margin-bottom:1em;
    font-size: 3.8vw;
  }
  .main .program table td {
    font-size: 3.8vw;
    padding-right: 0em;
    display:block;
}
  .main .program .link a {
    font-size: 3.8vw;
}
  
  .main .campaign h3 {
    font-size: 5vw;
}
  .main .campaign h3 img{
    width:1.2em;
  }
  .main .campaign .bg h4 {
    font-size: 5vw;
}
  .main .campaign .bg h4 + p {
    font-size: 4vw;
}
  .main .campaign .bg .kikan {
    font-size: 5vw;
}
  .main .campaign .bg .kikan a {
    padding: 0.7em 3em;
}
  .main .campaign .bg .caption {
    font-size: 3.8vw;
}
  
  
  
  
}

