@charset "utf-8";
* {
  margin:0;
  padding:0;
  box-sizing: border-box;
}
body {
  font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color:#000;
  line-height: 1.5em;
}
ul,ol {
  list-style-type:none;
}
a:hover {
  opacity:1.0;
}
a:focus {
  outline: none;
}
.content_wrap {
  max-width: 750px;
  margin:0 auto;
  overflow: hidden;
}
.content_wrap img {
  display: block;
  height: auto;
  border: 0;
  max-width: 100%;
}
.content_wrap video {
  width: 100%;
  display: block;
  height: auto;
  border: 0;
  outline: none;
}
.content_wrap a {
  display: block;
}
.content_wrap .rl {
  position: relative;
}
.content_wrap .video01 {
  position:absolute;
  width: 100%;
  left: 0;
  top:0;
  z-index: -1;
}
.content_wrap .circle01 {
  position:absolute;
  width: 27.73%;
  top:60.25%;
  left:5.33%;
}
@keyframes ani_spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.content_wrap .ani_circle {
  animation: ani_spin 7.7s linear 0.2s infinite; 
}
.content_wrap .btn01 {
  position:absolute;
  width: 88.13%;
  top:68.43%;
  left:6.1%;
}
.content_wrap .video02 {
  position:absolute;
  width: 100%;
  left:0;
  top:-1px;
  z-index: -1;
}
.content_wrap .ovf {
  overflow: hidden;
}
.content_wrap .pt01 {
  position:absolute;
  width: 51.6%;
  top:38.74%;
  left:61.86%;
}
.content_wrap .pt01 img {
  transition: 0.9s;
  transform: rotate(90deg);
  transform-origin: center bottom;
}
.content_wrap .pt01.inview_active img {
  transform: rotate(0deg);
}
.content_wrap .swiper01 .swiper-wrapper {
  transition-timing-function: linear;
}
.content_wrap .swiper01 .swiper-slide img {
  height: auto;
  width: 100%;
}
.content_wrap .swiper01 {
  position: absolute;
  z-index: 3;
  width: 100%;
  left:0;
  bottom:0;
}
.content_wrap .circle02 {
  position:absolute;
  width: 29.2%;
  top:54.2%;
  left:5.6%;
}
.content_wrap .btn02 {
  position:absolute;
  width: 88.13%;
  top:60.6%;
  left:6.1%;
}
.content_wrap .video03 {
  position:absolute;
  width: 100%;
  bottom:0;
  left:0;
  z-index: -1;
  background: transparent url('../images/2-1.jpg') 50% 50% / cover no-repeat;
}
.content_wrap .video04 {
  position:absolute;
  width: 100%;
  top:0;
  left:0;
  z-index: -1;
}
.content_wrap .swiper02 {
  position: absolute;
  width: 97%;
  right:0;
  top:31.3%;
  overflow: hidden;
}
.content_wrap .swiper02 .swiper-slide img {
  margin:0 8px;
}
.content_wrap .swiper03 .swiper-wrapper {
  transition-timing-function: linear;
}
.content_wrap .swiper03 .swiper-slide img {
  height: auto;
  width: 100%;
}
.content_wrap .swiper03 {
  position: absolute;
  z-index: 3;
  width: 100%;
  left:0;
  bottom:0;
}
.content_wrap .video05 {
  position:absolute;
  width: 90.6%;
  left:4.7%;
  bottom:0;
}
.content_wrap .pt05-1 {
  position: absolute;
  z-index: 3;
  width: 84.66%;
  top:47.64%;
  right:5.73%;
}
.content_wrap .pt05-2 {
  position: absolute;
  z-index: 3;
  width: 85.33%;
  top:39.4%;
  left:7%;
}
.content_wrap .pt05-3 {
  position: absolute;
  z-index: 3;
  width: 69.33%;
  top:39%;
  left:13%;
}
.content_wrap .btm-fix {
    position: fixed;
    left: 50%;
    margin-left: -375px;
    bottom: 0;
    width: 750px;
    z-index: 10;
    display: none;
}
.content_wrap .btn_ani {
  animation: btn_ani 3.5s ease-in-out infinite;
}
@keyframes btn_ani {
0% {
  transform: scale(0.95, 0.95);
 }
 50% {
  transform: scale(1, 1);
 }
100% {
  transform: scale(0.95, 0.95);
 }
}
.fnavi {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 65px 0;
  display: flex;
  justify-content: center;
}
.fnavi li {
  padding:0 15px;
  line-height: 1.1em;
}
.fnavi li:not(:nth-of-type(1)) {
  border-left:1px solid #000;
}
.fnavi li a {
  color:#000;
  display: block;
  opacity: 1;
  text-decoration: none;
  font-size:18px;
}
@media(max-width:749px) {
 .content_wrap img {
   width: 100%;
 }
 .content_wrap .swiper02 .swiper-slide img {
  margin:0;
  padding:0;
  width:96%;
 }
 .content_wrap .btm-fix {
    position: fixed;
    left: 0;
    margin-left: 0;
    bottom: 0;
    width: 100%;
    z-index: 10;
    display: none;
}
  .fnavi {
    padding: 0 0 8.6vw 0;
  }
  .fnavi li {
    padding:0 1.6vw;
    line-height: 1.0em;
  }
  .fnavi li a {
    font-size:2.8vw;
  }
}
