/*--------------------------------------------------------------
>>> new FV
-----------------------------------------------------------------*/

.is_fvsp {
  display: none !important;
}

section#fv .fv_anime {
  position: relative;
  width: 100%;
  height: 100vh;
  background: #3a5f6b;
}

section#fv .fv_anime>img {
  position: absolute;
  top: 0;
}

section#fv .fv_anime>img.pc-penguin_hidari {
  animation: pc-penguin_hidari 10s infinite linear;
  width: 5.5vw;
  top: 1vw;
  left: 37.8vw;
  transform: rotate(-22deg);
}

@keyframes pc-penguin_hidari {

  79.2% {
    transform: translate(-28.5vw, 22.8vw) rotate(-19deg);
  }

  86.6% {
    transform: translate(-32.8vw, 25vw) rotate(-1deg);
  }

  93.2% {
    transform: translate(-37.5vw, 25vw) rotate(20deg);
  }

  100% {
    transform: translate(-43.5vw, 24vw) rotate(38deg);
  }

}

section#fv .fv_anime>img.pc-penguin_migi {
  width: 5.5vw;
  top: 20vw;
  left: -3.5vw;
  transform: rotate(44deg);
  animation: pc-penguin_migi 10s infinite linear;
}

@keyframes pc-penguin_migi {

  2% {
    transform: translate(3.5vw, 3vw) rotate(21deg);
  }

  4% {
    transform: translate(8.8vw, 5vw) rotate(7deg);
  }

  6% {
    transform: translate(14.5vw, 5.4vw) rotate(-2deg);
  }

  8% {
    transform: translate(20vw, 4.8vw) rotate(-20deg);
  }

  10% {
    transform: translate(25.3vw, 2.5vw) rotate(-34deg);
  }

  12% {
    transform: translate(29.7vw, -0.8vw) rotate(-62deg);
  }

  14% {
    transform: translate(31.7vw, -6.2vw) rotate(-95deg);
  }

  16% {
    transform: translate(28.7vw, -10.2vw) rotate(-183deg);
  }

  18% {
    transform: translate(23.7vw, -8.2vw) rotate(-216deg);
  }

  20% {
    transform: translate(20vw, -3.5vw) rotate(-271deg);
  }

  22% {
    transform: translate(22.5vw, 0.5vw) rotate(-358deg);
  }

  24% {
    transform: translate(28.5vw, -0.2vw) rotate(-386deg);
  }

  28% {
    transform: translate(33.5vw, -2.8vw) rotate(-406deg);
  }

  30% {
    transform: translate(38vw, -6.2vw) rotate(-411deg);
  }

  32% {
    transform: translate(45vw, -11.2vw) rotate(-422deg);
  }

  100% {
    transform: translate(45vw, -11.2vw) rotate(-422deg);
  }

}


section#fv .fv_anime>img.pc-kame {
  animation: pc-kame 5s infinite alternate linear;
}

@keyframes pc-kame {
  50% {
    transform: translate(1vw, 0.5vw);
  }

  100% {
    transform: translate(2vw, -0.5vw);
  }

}

section#fv .fv_anime>img.pc-center_awa {
  transform: translate(0vw, 12vw);
  animation: pc-center_awa 8s infinite linear;
}


@keyframes pc-center_awa {

  70% {
    opacity: 1;
  }

  100% {
    transform: translate(0vw, -3vw);
    opacity: 0;
  }

}


section#fv .fv_anime>img.pc-azarashi_down {
  transform: translate(0, -6vw);
  animation: pc-azarashi_down 25s infinite alternate linear;
}

@keyframes pc-azarashi_down {
  100% {
    transform: translate(0, 20vw);
  }
}

section#fv .fv_anime>img.pc-azarashi_up {
  transform: translate(0, 12vw);
  animation: pc-azarashi_up 30s infinite alternate linear;
}


@keyframes pc-azarashi_up {
  100% {
    transform: translate(0, -13vw);
  }
}

section#fv .fv_anime>img.pc-azarashi_awa {
  transform: translate(0, 23vw);
  animation: pc-azarashi_awa 6s infinite linear;

}

@keyframes pc-azarashi_awa {

  60% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translate(0, 1vw);
  }
}


section#fv .fv_anime>img.pc-kurage {
  transform: translate(0, 1vw);
  animation: pc-kurage 10s infinite alternate linear;
}


@keyframes pc-kurage {
  100% {
    transform: translate(0, -0.4vw);
  }
}

section#fv .fv_anime>img.pc-kurage_head {
  animation: pc-kurage_head 10s infinite alternate linear;
}

@keyframes pc-kurage_head {

  100% {
    transform: scale(1.2) translate(1.1vw, -0.2vw);
  }

}

section#fv .fv_anime>img.pc-anago {
  transform: rotate(6deg);
  transform-origin: 45vw 38vw;
  animation: pc-anago 3s infinite alternate linear;
}

@keyframes pc-anago {
  100% {
    transform: rotate(0deg);
  }
}


section#fv .fv_anime>img.pc-kumanomi {
  transform: translate(0, 0.8vw);
  animation: pc-kumanomi 10s infinite alternate linear;
}

@keyframes pc-kumanomi {
  100% {
    transform: translate(0, -0.2vw);
  }
}

section#fv .fv_anime>img.pc-kumanomi_awa {
  transform: translate(0, 1vw);
  animation: pc-kumanomi_awa 8s infinite alternate linear;
}

@keyframes pc-kumanomi_awa {
  49% {
    transform: translate(0, 1vw);
    opacity: 1;
  }

  50% {
    transform: translate(0, 1vw);
    opacity: 0;
  }

  99% {
    transform: translate(0, 0vw);
    opacity: 1;
  }

  100% {
    transform: translate(0, 0vw);
    opacity: 0;
  }
}


section#fv .fv_anime>img.pc-iwashi_minamo {
  transform: translate(25vw, -15vw);
  animation: pc-iwashi_minamo 14s infinite linear;
}

@keyframes pc-iwashi_minamo {

  45% {
    transform: translate(-15vw, 9vw);
  }

  100% {
    transform: translate(-15vw, 9vw);
  }

}

section#fv .fv_anime>img.pc-iwashi_center {
  transform: translate(17vw, -9vw);
  animation: pc-iwashi_center 10s infinite linear;
}

@keyframes pc-iwashi_center {

  50% {
    transform: translate(-28vw, 15vw);
  }

  100% {
    transform: translate(-28vw, 15vw);
  }

}

section#fv .fv_anime>img.pc-iwashi_center2 {
  transform: translate(17vw, -9vw);
  animation: pc-iwashi_center2 15s infinite linear;
}

@keyframes pc-iwashi_center2 {

  40% {
    transform: translate(17vw, -9vw);
  }

  100% {
    transform: translate(-28vw, 15vw);
  }

}

section#fv .fv_anime>img.pc-iwashi_side {
  animation: pc-iwashi_side 10s infinite linear;
}

@keyframes pc-iwashi_side {

  50% {
    transform: translate(-7vw, -3vw);
  }

  100% {
    transform: translate(-7vw, -3vw);
  }

}

section#fv .fv_anime>img.pc-penguin_minamo {
  animation: pc-penguin_minamo 3s infinite alternate linear;
}

@keyframes pc-penguin_minamo {

  100% {
    transform: translate(-0.5vw, 0.5vw);

  }

}


.fv_slide {
  z-index: 9999;
  position: absolute;
  bottom: 2vw;
  right: 3vw;
  width: 95%;
  max-width: 750px;
  margin: auto;
  background: #000000c7;
  color: #fff;
  padding: 1em 2em;
}

.fv_slide .fv_txt_box>h2 {
  font-size: 1.8em;
  margin-bottom: .5em;
  font-family: "DotGothic16", sans-serif;
  letter-spacing: 0.25em;
  font-weight: 400;
}

.fv_slide .fv_txt_box>.catch {
  line-height: 2;
  margin-bottom: 1em;
  font-family: "DotGothic16", sans-serif;
}