
@charset "utf-8";
.locMainvisual__sp {display: none;}
.is-tab .locMainvisual__sp {display: block;}
.is-tab .locMainvisual__pc {display: none;}
.locMainvisual__pc {
  position: relative;
  overflow: hidden;
}
.locMainvisual__pc::before {
  content:"";
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 1;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/box/img/logo_gl.png);
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: 120px auto;
  background-size: 120px auto;
}
.locMainvisual__pc::after {
  content:"";
  width: 140%;
  height: 100%;
  background-color: #0F378D;
  z-index: 2;
  display: block;
  top: 0;
  left: -220%;
  -webkit-transform: skewX(-30deg);
  transform: skewX(-30deg);
  position: absolute;
}
#loc__video.is-end {
  position: relative;
}
#loc__video.is-end::after {
  content:"";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;

}
.locMainvisual__pc__logo {
  opacity: 0;
  position: absolute;
  width: 120px;
  top: 50%;
  left: 50%;
  z-index: 3;
  transform:translate(-50%,-50%);
  
}
.locMainvisual__pc__video {
	width: 100%;
  position: relative;
  vertical-align: bottom;
}
  .locMainvisual__pc__play {
    display: none;
    /*text-align: left;*/
    text-align: center;
    margin: 0 auto;
    /*width: 204px;*/
    width: 38px;
    /*padding: 10px 0 10px 10px;*/
    /*border-top:1px solid #fff;*/
    /*border-bottom:1px solid #fff;*/
    /*background-image: url(/box/img/ico_replay.png);*/
    -webkit-background-size: 28px auto;
    background-size: 28px auto;
    background-repeat: no-repeat;
    background-position: right 10px center;
/*    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;*/
    color: #fff;
    position: absolute;
    bottom: 100px;
    left: 50%;
    transform:translateX(-50%);
    z-index: 2;
    cursor:pointer;
  }
  .locMainvisual__pc__play {}
  .locMainvisual__pc__play.is-end {
    display: block;
  }
  .locMainvisual__pc__play img {
    width: 100%;
    /*margin-bottom: 10px;*/
  }
.locMainvisual__pc__video__wrap {
  position: relative;
    max-width: 960px;
    width: 100%;
  display: block;
  margin: 0 auto;
}
.locMainvisual__pc__video__wrap::after {
  opacity: 0;
  transition:1s;
    content:"";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
    background-image: url(/box/movie/poster.png);
  -webkit-background-size: cover;
  background-size: cover;
  z-index: 1;
}
.locMainvisual__pc__video__wrap.is-end::after {

  opacity: 1;
}

.locMainvisual__pc .locMainvisual__pc__btn:after {
content:"";
position: absolute;
width: 12px;
height: 15px;
left: 10px;
top: 50%;
  transform:translateY(-50%);
  background-image: url(/box/img/ico_arrow.png);
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  background-size: contain;

}
.locMainvisual__pc .locMainvisual__pc__btn {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform:translateX(-50%);
  transition:.3s;
  z-index: 2;
  display: none;
  width: 180px;
  border:2px solid #fff;
  color: #fff;
  text-align: center;
  padding: 10px;
  background-color: rgba(0,0,0,.3);
}
.locMainvisual__pc .locMainvisual__pc__btn:hover:after {
background-image: url(/box/img/ico_arrow_bl.png);
  
}
.locMainvisual__pc .locMainvisual__pc__btn img{
  width: 100%;
}
.locMainvisual__pc .locMainvisual__pc__btn:hover {
  background-color: #fff;
  text-decoration: none;
  color: #000;
}
.locMainvisual__pc.is-load .locMainvisual__pc__logo {
  opacity: 1;
  -webkit-animation: logo_op 2.5s ease-out 0s 1 normal forwards;
  animation: logo_op 2.5s ease-out 0s 1 normal forwards;
}
.locMainvisual__pc.is-load::before {
  left: 150%;
  -webkit-animation: musk_w 2s cubic-bezier(0.86, 0, 0.07, 1) 0s 1 normal forwards;
  animation: musk_w 2s cubic-bezier(0.86, 0, 0.07, 1) 0s 1 normal forwards;
}
.locMainvisual__pc.is-load::after {
  left: 350%;
  -webkit-animation: musk_r 2.2s cubic-bezier(0, 0, 0.07, 1) .5s 1 normal forwards;
  animation: musk_r 2.2s cubic-bezier(0, 0, 0.07, 1) .5s 1 normal forwards;
}



@keyframes logo_op {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}


@keyframes musk_w {
  0% {
    left: 0%;
  }
  50% {
    left: 0%;
  }
  100% {
    left: 150%;
  }
}
@keyframes musk_r {
  0% {
    left: -140%;
  }
  50% {
    left: -20%;
  }
  100% {
    left: 140%;
  }

}

/* sp style */
.locMainvisual__sp__logo {
  width: 300px;
  display: block;
  margin: 0 auto 20px;
}
.locMainvisual__sp__video {
  width: 100%;
  display: none;
}
.locMainvisual__sp.is-active .locMainvisual__sp__video {
  display: block;
}
  .locMainvisual__sp__play {
    text-align: left;
    margin: 0 auto;
    width: 230px;
    padding: 10px 0 10px 50px;
    border-top:1px solid #fff;
    border-bottom:1px solid #fff;
    background-image: url(../../../box/img/ico_play.png);
    -webkit-background-size: 28px auto;
    background-size: 28px auto;
    background-repeat: no-repeat;
    background-position: right 25px center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .locMainvisual__sp__play img {
    width: 70px;
    margin-bottom: 10px;
  }
  .locMainvisual__sp__play figcaption {
    color: #fff;
    font-weight: bold;
  }
  .locMainvisual__sp__poster {
    width: 100%;
    object-fit:cover;
  }
  .locMainvisual__sp__txt {
    color: #fff;
    text-align: center;
    width: calc(100% - 40px);
    margin: 0 auto;
    padding: 40px 0;
    /*border-top:1px solid #fff;*/
    /*border-bottom:1px solid #fff;*/
    
  }
.locMainvisual__sp .locMainvisual__sp__btn:after {
  content:"";
position: absolute;
width: 12px;
height: 15px;
left: 10px;
top: 50%;
  transform:translateY(-50%);
  background-image: url(/box/img/ico_arrow.png);
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
  }
.locMainvisual__sp .locMainvisual__sp__btn {
  color: #fff;
  text-align: center;
  font-size: 14px;
  position: relative;
  padding: 10px 0;
  width: 100%;
  border:2px solid #fff;
  transition:.3s;
  display: inline-block;
  margin-top: 20px;
  margin: 50px 0 20px;
  max-width:200px;
  background-color: rgba(0,0,0,0.3);
}
  .locMainvisual__sp.is-active {
    padding: 0;
  }
  .locMainvisual__sp.is-active .locMainvisual__sp__txt {
    display: none;
  }
  .locMainvisual__sp.is-active .locMainvisual__sp__logo {
    display: none;
  }

  .locMainvisual__sp {
    padding: 80px 0 0;
    position: relative;
    object-fit:cover;
    background-image: url(/box/img/thumb_mv_tab2.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
  }

@media only screen and (max-width: 640px){
  .locMainvisual__pc {display: none;}
  .locMainvisual__sp {
    display: block;
    background-image: url(/box/img/thumb_mv_tab2.jpg);
    -webkit-background-size: auto 100%;
        background-position: left -200px center;
    background-size: auto 100%;
  }

}