@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    index_pc.css
*
*
------------------------------------------------------------------------------------------ */

#wrap{
    opacity: 0;
    overflow: hidden;
}

#wrap.on{
    opacity: 1;
    transition: opacity .85s cubic-bezier(0.165, 0.84, 0.44, 1) .25s;
}

@media screen and (min-width : 641px){ 
/*------------------------------------------------------------------------------------------
*
*
    min-width : 641px
*
*
------------------------------------------------------------------------------------------ */


/* --------------------------------------------------
*
    #top_visual
*
-------------------------------------------------- */
#top_visual{
    overflow: hidden;
    position: relative;
    z-index: 1;
}

#top_visual .img_slider{
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
}

#top_visual .img_slider .inner{
    position: relative;
}

#top_visual .img_slider .s{
    border: none !important;
    transition: opacity 0s ease .5s, transform 0s ease 0s !important;
}

#top_visual .img_slider .s.prev{ transform: translateY(-100vh) !important;}
#top_visual .img_slider .s.next{ transform: translateY(100vh) !important;}
#top_visual .img_slider .s.next.side{
    opacity: 0;
    transform: scale(1.1) translateY(0) !important;
}

#top_visual .img_slider .s.up{
    transform: translateY(-100vh) !important;
    transition: opacity 0s ease .5s, transform .5s cubic-bezier(0.77, 0, 0.175, 1) !important;
}

#top_visual .img_slider .s.down{
    transform: translateY(100vh) !important;
    transition: opacity 0s ease .5s, transform .5s cubic-bezier(0.77, 0, 0.175, 1) !important;
}

#top_visual .img_slider .s.slick-current{
    opacity: 1 !important;
    transform: translateY(0) !important;
    transition: opacity 0s ease 0s, transform .5s cubic-bezier(0.77, 0, 0.175, 1) !important;
}

#top_visual .img_slider .s.current.side{
    transform: translateY(0) !important;
    transition: opacity .35s cubic-bezier(0.77, 0, 0.175, 1) 0s, transform .5s cubic-bezier(0.77, 0, 0.175, 1) 0s !important;
}

#top_visual .img_slider .s.down.side{
    opacity: 0 !important;
    transform: scale(1.05) !important;
    transition: opacity .5s cubic-bezier(0.77, 0, 0.175, 1) .0s, transform .5s cubic-bezier(0.77, 0, 0.175, 1) !important;
}

#top_visual .img_slider .s.pos_fix{
    transform: translateY(0) !important;
    transition: opacity 0s ease .0s, transform .0s cubic-bezier(0.77, 0, 0.175, 1) !important;
    z-index: 100 !important;
}


#top_visual .bg{
    width: 100vw;
    height: 100vh;
    line-height: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transform-origin: top left;
    transform-style: preserve-3d;
}

#top_visual .next .bg{ transform: scaleY(1);}
#top_visual .side .bg{ transform: scale(1);}
#top_visual .current .bg{ transform: scale(1) !important; transition: transform .5s cubic-bezier(0.77, 0, 0.175, 1) 0s !important;}

#top_visual .next.i3 .bg{ transform: scaleX(3);}
#top_visual .next.i5 .bg{ transform: scaleY(1.5);}
#top_visual .next.i7 .bg{ transform: scale(.9); transform-origin: center;}
#top_visual .next.i9 .bg{ transform: scaleY(1.5);}
#top_visual .next.i11 .bg{ transform: scaleX(2.5); transform-origin: right;}
#top_visual .next.i13 .bg{ transform: scaleY(1.5);}
#top_visual .next.i15 .bg{ transform: scale(1.3); transform-origin: top center;}
#top_visual .next.i17 .bg{ transform: scaleY(1.5);}
#top_visual .next.i19 .bg{ transform: scaleX(3);}
#top_visual .next.i21 .bg{ transform: scale(1.3); transform-origin: top center;}
#top_visual .next.i23 .bg{ transform: scaleY(1.5);}
#top_visual .next.i25 .bg{ transform: scale(1.3); transform-origin: top center;}
#top_visual .next.i27 .bg{ transform: scaleY(1.5);}
#top_visual .next.i29 .bg{ transform: scaleX(3);}
#top_visual .next.i31 .bg{ transform: scale(3); transform-origin: top center;}


#top_visual .kv .pic.bg{ background-image:url(../images/index/pic_kv.jpg);}
#top_visual .yodogawa .pic.bg{ background-image:url(../images/index/pic_yodogawa.jpg);}


#top_visual .btn_detail{
    width: auto;
    height: calc(300 / 1920 * 100vw);
    min-height: 160px;
    max-height: 204px;
    opacity: 0;
    position: absolute;
    transform: translateY(25px);
    z-index: 10;
    transition: opacity .25s ease-out .5s, transform .25s ease-out .5s;
}

#top_visual .slick-current .btn_detail{
    opacity: 1;
    transform: translateX(0);
}

#top_visual .i4 .btn_detail{ right: 5.2%; bottom: 16.4%;}
#top_visual .i6 .btn_detail{ left: 5.2%; bottom: 16.4%;}
#top_visual .i8 .btn_detail{ left: 5.2%; bottom: 16.4%;}
#top_visual .i10 .btn_detail{ right: 5.2%; bottom: 16.4%;}
#top_visual .i12 .btn_detail{ right: 5.2%; bottom: 16.4%;}
#top_visual .i14 .btn_detail{ left: 5.2%; bottom: 42.18%;}
#top_visual .i16 .btn_detail{ right: 5.2%; bottom: 16.4%;}
#top_visual .i18 .btn_detail{ left: 5.2%; bottom: 16.4%;}
#top_visual .i20 .btn_detail{ left: 5.2%; top: 31.25%;}
#top_visual .i22 .btn_detail{ left: 5.2%; bottom: 16.4%;}
#top_visual .i24 .btn_detail{ right: 5.2%; bottom: 16.4%;}
#top_visual .i26 .btn_detail{ right: 5.2%; top: 15.6%;}
#top_visual .i28 .btn_detail{ right: 4%; bottom: 4.6%;}
#top_visual .i30 .btn_detail{ right: 4%; bottom: 4.6%;}
#top_visual .i32 .btn_detail{ left: 5.2%; bottom: 4.6%;}

#top_visual .btn_detail img{
    width: auto;
    height: calc(300 / 1920 * 100vw);
    min-height: 160px;
    max-height: 204px;
    display: block !important;
}

#top_visual .btn_detail a{
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: left top;
    display: block;
    transition: opacity .15s ease;
}

#top_visual .i4 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_oozu.png);}
#top_visual .i6 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_miura.png);}
#top_visual .i8 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_masuda.png);}
#top_visual .i10 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_tanaka.png);}
#top_visual .i12 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_okamoto.png);}
#top_visual .i14 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_wada.png);}
#top_visual .i16 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_yumura.png);}
#top_visual .i18 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_masuda.png);}
#top_visual .i20 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_okamoto.png);}
#top_visual .i22 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_tanaka.png);}
#top_visual .i24 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_masuda.png);}
#top_visual .i26 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_miura.png);}
#top_visual .i28 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_wada.png);}
#top_visual .i30 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_oozu.png);}
#top_visual .i32 .btn_detail a{ background-image:url(../images/index/btn_pc/btn_masuda.png);}

#top_visual .btn_detail a:after{
    content: '';
    display: block;
    width: calc(346px / 2);
    height: calc(127px / 2);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: -45px;
    left: calc(-30 * ((100vw - 640px) / 1280) + -30px);
    z-index: 2;
}

#top_visual .btn_detail a:hover,
#top_visual .btn_detail a.touch{
    opacity: .7;
}

#top_visual .btn_detail a:after{ background-image:url(../images/index/parts_detail.png);}
.coming #top_visual .btn_detail a:after{ background-image:url(../images/index/parts_detail_coming.png);}

#top_visual img{
    display: none;
    line-height: 0;
}

#top_visual h1 img,
#top_visual .desc img{
    display: none;
}

#top_visual h1,
#top_visual .desc{
    width: 100vw;
    height: 100vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    transform-origin: bottom;
    transform: translateX(-25px) rotateY(-5deg);
    transition: opacity .25s ease 0s, transform .25s ease;
}

#top_visual .on h1,
#top_visual .on .desc{
    opacity: 1;
    transform: scale(1);
    transition: opacity .45s cubic-bezier(0.165, 0.84, 0.44, 1) .25s, transform .45s cubic-bezier(0.165, 0.84, 0.44, 1) .25s;
}

#top_visual.end .desc{ opacity: 0; transition: opacity .25s ease;}

#top_visual h1{ background-image:url(../images/index/img_kv.png);}
#top_visual .desc{ background-image:url(../images/index/img_yodogawa.png);}

#top_visual .arrow{
    width: calc(140px / 2);
    height: calc(136px / 2);
    opacity: 0;
    text-align: center;
    position: fixed;
    left: calc(50% - 140px/4);
    bottom: 30px;
    z-index: 3;
    transform: translateY(-10px);
    transition: opacity .45s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s, transform .45s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
}

.on #top_visual .arrow{
    opacity: 1;
    transform: translateY(0);
    cursor: pointer;
}

#top_visual.end .arrow{
    opacity: 0;
    transform: translateY(15px);
    transition: opacity .35s ease .15s, transform .35s ease .15s;
}

#top_visual .arrow img{
    width: 100%;
    display: block !important;
    transition: opacity .15s ease;
}

#top_visual .arrow:before{
    content: '';
    display: block;
    width: 80px;
    height: 23px;
    background-image:url(../images/index/count/denominator.png);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -33px;
    left: -10px;
    z-index: 0;
    transition: transform .25s ease, opacity .25s ease;
}

#top_visual .arrow:after{
    content: '';
    display: block;
    width: 80px;
    height: 23px;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -33px;
    left: -11px;
    z-index: 0;
    transition: transform .25s ease, opacity .25s ease;
}

#top_visual.move .arrow:after{
    opacity: 0;
    transform: translateY(5px);
}

#top_visual.c33 .arrow:before,
#top_visual.c33 .arrow:after{
    opacity: 0 !important;
    transform: translateY(5px) !important;
    transition: transform .25s ease, opacity .25s ease !important;
}

#top_visual.c1 .arrow:after{ background-image:url(../images/index/count/1.png);}
#top_visual.c2 .arrow:after{ background-image:url(../images/index/count/2.png);}
#top_visual.c3 .arrow:after{ background-image:url(../images/index/count/3.png);}
#top_visual.c4 .arrow:after{ background-image:url(../images/index/count/4.png);}
#top_visual.c5 .arrow:after{ background-image:url(../images/index/count/5.png);}
#top_visual.c6 .arrow:after{ background-image:url(../images/index/count/6.png);}
#top_visual.c7 .arrow:after{ background-image:url(../images/index/count/7.png);}
#top_visual.c8 .arrow:after{ background-image:url(../images/index/count/8.png);}
#top_visual.c9 .arrow:after{ background-image:url(../images/index/count/9.png);}
#top_visual.c10 .arrow:after{ background-image:url(../images/index/count/10.png);}
#top_visual.c11 .arrow:after{ background-image:url(../images/index/count/11.png);}
#top_visual.c12 .arrow:after{ background-image:url(../images/index/count/12.png);}
#top_visual.c13 .arrow:after{ background-image:url(../images/index/count/13.png);}
#top_visual.c14 .arrow:after{ background-image:url(../images/index/count/14.png);}
#top_visual.c15 .arrow:after{ background-image:url(../images/index/count/15.png);}
#top_visual.c16 .arrow:after{ background-image:url(../images/index/count/16.png);}
#top_visual.c17 .arrow:after{ background-image:url(../images/index/count/17.png);}
#top_visual.c18 .arrow:after{ background-image:url(../images/index/count/18.png);}
#top_visual.c19 .arrow:after{ background-image:url(../images/index/count/19.png);}
#top_visual.c20 .arrow:after{ background-image:url(../images/index/count/20.png);}
#top_visual.c21 .arrow:after{ background-image:url(../images/index/count/21.png);}
#top_visual.c22 .arrow:after{ background-image:url(../images/index/count/22.png);}
#top_visual.c23 .arrow:after{ background-image:url(../images/index/count/23.png);}
#top_visual.c24 .arrow:after{ background-image:url(../images/index/count/24.png);}
#top_visual.c25 .arrow:after{ background-image:url(../images/index/count/25.png);}
#top_visual.c26 .arrow:after{ background-image:url(../images/index/count/26.png);}
#top_visual.c27 .arrow:after{ background-image:url(../images/index/count/27.png);}
#top_visual.c28 .arrow:after{ background-image:url(../images/index/count/28.png);}
#top_visual.c29 .arrow:after{ background-image:url(../images/index/count/29.png);}
#top_visual.c30 .arrow:after{ background-image:url(../images/index/count/30.png);}
#top_visual.c31 .arrow:after{ background-image:url(../images/index/count/31.png);}
#top_visual.c32 .arrow:after{ background-image:url(../images/index/count/32.png);}

#top_visual .logo{
    width: 10%;
    min-width: calc(384px / 2 * .7);
    text-align: center;
    position: absolute;
    left: 50%;
    top: 2.34%;
    z-index: 5;
}

#top_visual .logo a img{
    width: 100%;
    display: block;
    transition: opacity .15s ease;
    transform: translateX(-50%);
}

#top_visual .logo a:hover img,
#top_visual .logo a.touch img{
    opacity: .7;
}

.is_pc #top_visual .arrow:hover img,
.is_sp #top_visual .arrow.touch img{
    opacity: .7;
}

.coming .kv:after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-image:url(../images/index/parts_coming.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    transform: translateY(10px);
    transition: opacity .45s cubic-bezier(0.165, 0.84, 0.44, 1) .5s, transform .45s cubic-bezier(0.165, 0.84, 0.44, 1) .5s;
}

.coming  .kv.on:after{
    opacity: 1;
    transform: translateY(0);
}

#top_visual .credit{
    position: absolute;
    bottom: 6.25%;
    left: 4.16%;
    z-index: 2;
}

#top_visual .credit img{
    width: calc(1094 / 2 / 1920 * 100vw);
    min-width: calc(1094px / 2 * .7);
    max-width: calc(1094px / 2);
    display: block !important;
}

#ytPlayer{
    
    position: absolute;
    left: 50px;
    top: calc(50% - 100px);
    z-index: 10;
}


/* --------------------------------------------------
*
    footer
*
-------------------------------------------------- */
footer{
    margin: 50px 0 0 0;
    padding: 0 0 50px 0;
    text-align: center;
    overflow: hidden;
    background-color: rgba(255, 255, 255, .9);
    position: relative;
    z-index: 2;
}

footer .foot_banner{
    padding: 50px 0 0 0;
}

footer .foot_banner img{
    width: 100%;
    max-width: 1000px;
}

footer .foot_share{
    padding: 50px 0;
}

footer .foot_share ul{
    max-width: 480px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

footer .foot_share li img{
    width: auto;
    height: calc(146px / 2);
}

footer .copyright img{
    width: calc(511px / 2);
}

footer a img{
    transition: opacity .15s ease;
}

.is_pc footer a:hover img,
.is_sp footer a.touch img{
    opacity: .7;
}

} /* ----- min-width : 641px ----- */