@charset "utf-8";
html {
    font-family:”ヒラギノ角ゴ Pro W3″,”ＭＳ Ｐゴシック”,sans-serif;
}
*{
  margin: 0 auto;
}
@keyframes infinity-scroll-left {
    from {
      transform: translateX(0);
    }
      to {
      transform: translateX(-100%);
    }
    }
@keyframes infinity-scroll-right {
        from {
          transform: translateX(-100%);
        }
          to {
          transform: translateX(0);
        }
        }
@keyframes shake-up {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(25px);
    }
}
    .scroll-infinity__wrap {
      display: flex;
      overflow: hidden;
    }
    .scroll-infinity__list {
      display: flex;
      list-style: none;
      padding: 0
    }
    .scroll-infinity__list--left {
      animation: infinity-scroll-left 80s infinite linear 0.5s both;
    }
    .scroll-infinity__list--right {
        animation: infinity-scroll-right 80s infinite linear 0.5s both;
      }
    .scroll-infinity__item {
      width: calc(100vw / 2);
    }
    .scroll-infinity__item>img {
      width: 100%;
    }
    body{
      background-image: url(images/tenji_bg.png);
      background-size: 100%;
    }
    nav{
      padding-top: 30px;
      width: 75%;
      display: flex;
      justify-content:space-between ;
    }
    nav img{
      width: 100%;
      max-width: 300px;
    }
    nav ul{
      width: 70%;
      list-style: none;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    nav ul li a{
      text-decoration: none;
      white-space: nowrap;
      color: #fff;
      padding: 1em;
      background-color: #65a5ff;
      border-radius: 10px;
      font-size: 1.5vw;
    }
    nav ul li a:hover{
      background-color: #fb4a4a;
      transition: background-color 0.3s ease;
    }
    .mv img{
      display: block;
      max-width: 100%;
      height: auto;
    }
    .mv{
      position: relative;
      width: 35%;
      padding: 5% 0 5% 0;
      text-align: center;
    }
    .fuki02{
      position: absolute;
      width: 60%;
      top: 30%;
      right: 110%;
      animation: shake-up 5s infinite ease-in-out;
    }
    .fuki01{
      position: absolute;
      width: 50%;
      top: 5%;
      right: 100%;
    animation: shake-up 3s infinite ease-in-out;
    }
    .fuki04{
      position: absolute;
      width: 50%;
      top: 30%;
      left: 120%;
    animation: shake-up 3s infinite ease-in-out;
    }
    .fuki03{
      position: absolute;
      width: 60%;
      top: 5%;
      left: 100%;
      animation: shake-up 5s infinite ease-in-out;
    }
    .scroll-infinity__list--left{
      padding-top: 10%;
      padding-bottom: 10%;
    }
    .banner{
      text-align: center;
      font-weight: bold;
      font-size: 1.5vw;
    }
    .scroll-infinity__list--right{
      padding-top: 10%;
      padding-bottom: 10%;
    }
    h1{
      margin-top: 8%;
      margin-bottom: 3%;
      color: #fff;
      -webkit-text-stroke: 0.7vw #fb4a4a;
      paint-order: stroke;
      text-align: center;
      width: 20%;
      font-size: 2.5vw;
      border-bottom: 3px solid #65a5ff;
    }
    #howto iframe{
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
    }
     .iframe-container {
    position: relative;
    width: 50%;
    /* 16:9のアスペクト比 (9 / 16 * 100 = 56.25%) */
    padding-bottom: 28.1225%;
    height: 0;
    overflow: hidden;
  }
  #howto p{
    text-align: center;
    font-size: 1.2vw;
    padding-top: 3%;
    padding-bottom: 3%;
  }
  #howto a{
    display: block;
    width: 20%;
    font-size: 1.5vw;
    text-align: center;
    text-decoration: none;
    color: #fff;
    padding: 1%;
    background-color: #65a5ff;
    border-radius: 10px;
    font-weight: bold;
  }
  #howto a:hover{
      background-color: #fb4a4a;
      transition: background-color 0.3s ease;
    }
  #download img{
    display: block;
    width: 35%;
    margin: 0 auto;
  }
  #download p{
    text-align: center;
    font-size: 1.2vw;
    padding-top: 3%;
    padding-bottom: 3%;
  }
  #download a{
    display: block;
    width: 20%;
    font-size: 1.5vw;
    text-align: center;
    text-decoration: none;
    color: #fff;
    padding: 1%;
    background-color: #65a5ff;
    border-radius: 10px;
    font-weight: bold;
  }
  #download a:hover{
      background-color: #fb4a4a;
      transition: background-color 0.3s ease;
    }
  #chara img{
    display: block;
    width: 35%;
    margin: 0 auto;
  }
  #chara p{
    text-align: center;
    font-size: 1.2vw;
    padding-top: 3%;
    padding-bottom: 3%;
  }
  #chara a{
    display: block;
    width: 20%;
    font-size: 1.5vw;
    text-align: center;
    text-decoration: none;
    color: #fff;
    padding: 1%;
    background-color: #65a5ff;
    border-radius: 10px;
    font-weight: bold;
  }
  #chara a:hover{
      background-color: #fb4a4a;
      transition: background-color 0.3s ease;
    }
    html {
    scroll-behavior: smooth;
}
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
}
  footer{
    margin-top: 10%;
    padding: 2% 0 2% 0;
    width: 100%;
    text-align: center;
    color: #fff;
    background-color: #65a5ff;
  }
  footer p{
    font-size: 1vw;
  }