@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;
}
img{
	height:auto;
	border:0;
	vertical-align:top;
  max-width: 100%;
	margin:0;
}
video {
  vertical-align: bottom;
  width:100%;
  height:auto;
  outline: none;
}
.content_wrap {
  max-width: 750px;
  margin:0 auto;
  overflow: hidden;
}
.content_wrap img {
  display: block;
  height: auto;
}
.rl {
  position: relative;
}
.video01 {
  position: absolute;
  width: 100%;
  left:0;
  bottom:0;
  z-index: -1;
}
.video02 {
  position: absolute;
  width: 89.3%;
  left:5.35%;
  bottom:7.25%;
}
.video03 {
  position: absolute;
  width: 100%;
  left:0;
  top:0;
  z-index: -1;
}
.video04 {
  position: absolute;
  width: 101%;
  left:0;
  top:0;
  z-index: -1;
}
.sld {
  padding-bottom: 70px;
}
.sld .swiper-wrapper .swiper-slide video {
  position: absolute;
  width: 500px;
  top:30px;
  left:30px;
}
.sld .swiper-wrapper .swiper-slide {
  position: relative;
}
.btn01 {
  position: absolute;
  width: 92.53%;
  top:4.8%;
  left:3.6%;
}
.btn01 a,.btn02 a {
  display: block;
}
.slide02 {
  position: absolute!important;
  top:16.3%;
  left:0;
  width: 100%;
}
.slide02 .slick-slide {
  margin-left:2%;
}
.slide02 .slick-list {
  padding: 0 21% 0 0 !important;
}
.slide02 {
  opacity: 0;
  transition: opacity .3s linear;
}
.slide02.slick-initialized {
  opacity: 1;
}
.ani01 {
  position: absolute;
  z-index: -1;
  width: 53.3%;
  right: 0;
  top: 0;
}
.btm-fix {
  position: fixed;
  left:50%;
  margin-left:-375px;
  bottom:0;
  width: 750px;
  height:230px;
  z-index: 10;
  display: none;
}
.btm-fix a {
  display: block;
}
.btm-fix .btm_btn {
  position: absolute;
  width: 34.8%;
  top:9.5%;
  right:13.5%;
}
.btm_btn img{
  height: 100%;
  max-width: 150%;
}
.footer-flex{
  display: flex;
  justify-content: space-around;
  margin: 20px 5px 30px;
  white-space: nowrap;
  font-size: 15px;
  gap: 20px;
  max-width: 750px;
}

@media(max-width:749px) {
 img {
   width: 100%;
 }
 .sld {
   padding-bottom: 9.3vw;
 }
 .sld .swiper-wrapper .swiper-slide video {
   width: 89.2%;
   top:4vw;
   left:5.4%;
 }
 .btm-fix {
   left:0;
   margin-left:0;
   bottom:0;
   width: 100%;
   height:30.5vw;
 }
 .btm_btn img{
  width: 150%;
}
.footer-flex{
  margin: 10px 0 30px;
  white-space: wrap;
  font-size: 14px;
  margin: 30px 20px;
 }

}
