@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    link_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{
    position: relative;
    z-index: 1;
}

#top_visual .img_slider{
    position: fixed;
    top: 0;
    left: 0;
}

#top_visual .img_slider div{
    width: 100vw;
    height: 100vh !important;
    border: none !important;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
    transform-style: preserve-3d;
    position: relative;
}

#top_visual .img_slider .inner{
    height: 100vh;
    overflow: hidden;
}

#top_visual .bg{
    width: 100vw;
    height: 100vh;
    line-height: 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transform-origin: top;
    transition: transform .65s cubic-bezier(0.77, 0, 0.175, 1) .25s;
}

#top_visual .trans .bg{
    transform: scale(1.2) rotateX(15deg);
}

#top_visual .slick-current .bg{
    transform: scale(1) !important;
}

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

#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/link/img_kv.png);}
#top_visual .desc{ background-image:url(../images/link/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 .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/link/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) .65s, transform .45s cubic-bezier(0.165, 0.84, 0.44, 1) .65s;
}

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


/* --------------------------------------------------
*
    #contents
*
-------------------------------------------------- */
#contents{
    text-align: center;
    background-color: rgba(255, 255, 255, .9);
    position: relative;
    z-index: 2;
}

#contents .sec{
    padding: 4.444% 0 5.555% 0;
}

#contents h2{
    margin: 0 0 5.555% 0;
}

#contents h2 img{
    width: 26.666%;
    max-width: calc(480px / 2);
}

#contents li img{
    width: 100%;
    transition: opacity .15s ease;
}

#contents ul{
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#contents li{
    width: 45%;
    max-width: 400px;
    margin: 0 0 6.666% 0;
}

#contents li a{
    opacity: 0;
    display: block;
}

.is_pc #contents li a:hover img,
.is_sp #contents li a.touch img{
    opacity: .7;
}


/* --------------------------------------------------
*
    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 ----- */