@charset "UTF-8";
/******************************************************************************
 Layout
******************************************************************************/
.inner{
    width: 100%;
    margin: 0 auto;
    background: url(../images/bg.jpg) no-repeat top center / cover;
    overflow: hidden;
}
@media screen and (max-width: 425px){
    .inner{
        background: url(../images/bg-sp.jpg) no-repeat top center / cover;
    }
}


/******************************************************************************
 component
******************************************************************************/
.c-pcNone{
    display: none;
}
.c-spNone{
    display: block;
}
@media screen and (max-width: 425px){
    .c-pcNone{
        display: block;
    }
    .c-spNone{
        display: none;
    }
}
/******************************************************************************
 animate.css追加
******************************************************************************/
@-webkit-keyframes fadeInRightS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(5%, 0, 0);
        transform: translate3d(5%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.animate__fadeInRightS {
    -webkit-animation-name: fadeInRightS;
    animation-name: fadeInRightS;
}

@-webkit-keyframes fadeInLeftS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-5%, 0, 0);
        transform: translate3d(-5%, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.animate__fadeInLeftS {
    -webkit-animation-name: fadeInLeftS;
    animation-name: fadeInLeftS;
}

@-webkit-keyframes fadeInUpS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 10%, 0);
        transform: translate3d(0, 10%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInUpS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 10%, 0);
        transform: translate3d(0, 10%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.animate__fadeInUpS {
    -webkit-animation-name: fadeInUpS;
    animation-name: fadeInUpS;
}


@keyframes fadeInUpSS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 5%, 0);
        transform: translate3d(0, 5%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.animate__fadeInUpSS {
    -webkit-animation-name: fadeInUpSS;
    animation-name: fadeInUpSS;
}


@-webkit-keyframes fadeInDownS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -4%, 0);
        transform: translate3d(0, -4%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.animate__fadeInDownS {
    -webkit-animation-name: fadeInDownS;
    animation-name: fadeInDownS;
}


@-webkit-keyframes fadeInTopRightS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(10%, -10%, 0);
        transform: translate3d(10%, -10%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInTopRightS {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(10%, -10%, 0);
        transform: translate3d(10%, -10%, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes animate__swingS {
    0% {
        transform: rotate3d(0, 0, 1, 2deg);
    }
    50% {
        transform: rotate3d(0, 0, 1, -2deg);
    }
    100% {
        transform: rotate3d(0, 0, 1, 2deg);
    }
}

.animate__swingS {
    -webkit-animation-name: animate__swingS;
    animation-name: animate__swingS;
}

#kakoyume-audition .animate__swingS {
    animation-duration: 4s;
    animation-iteration-count: infinite;
     animation-timing-function: liner;
}


/******************************************************************************
 button
******************************************************************************/

#kakoyume-audition .apply-button {
    display: block;
    background: url(../images/button.png) no-repeat center center / contain ;
    width: 36vw;
    /* height: min(120px, 10vw); */
    height: 7.2vw;
    margin: 0 auto;
}
@media screen and (max-width: 768px){
    #kakoyume-audition .apply-button {
        width: 54vw;
        height: 9vw;
    }
}
@media screen and (max-width: 425px){
    #kakoyume-audition .apply-button {
        /* background: url(../images/button-sp.png) no-repeat center center / contain ; */
        width: 90vw;
        height: 14.7vw;
    }
}

#kakoyume-audition .apply-button:hover {
    opacity: 0.5;
}

#kakoyume-audition .apply-button-fixed {
    display: block;
    background: url(../images/button.png) no-repeat center center / contain ;
    width: 36vw;
    height: 7.2vw;
    margin: 0 auto 4.5%;
    position: sticky;
    z-index: 150;
    top: 83vh;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (max-width: 1024px){
    #kakoyume-audition .apply-button-fixed {
        top: 90svh;
    }
}
@media screen and (max-width: 768px){
    #kakoyume-audition .apply-button-fixed {
        width: 54vw;
        height: 9vw;
        left: 25%;
        transform: initial;
    }
}
@media screen and (max-width: 425px){
    #kakoyume-audition .apply-button-fixed {
        /* background: url(../images/button-sp.png) no-repeat center center / contain ; */
        margin: 0 auto 23.5%;
        width: 90vw;
        height: 14.7vw;
        left: -7%;
    }
}

#kakoyume-audition .apply-button-fixed:hover {
    opacity: 0.5;
}

/******************************************************************************
 共通
******************************************************************************/
img {
    display: block;
    width: 100%;
    height: auto;
}
a {
    outline: none;
    text-decoration: none;
}

/******************************************************************************
 project
******************************************************************************/

/* メイン */
main {
    font-family: "Noto Sans JP", "Sans Serif JP", serif;
    background: #201a22;
}

.button-sticky-wrap {
    height: max(100vh, 100%);
}

.hidden-wrpper {
    display: block;
    overflow: hidden;
    margin-top: -12%;
}
@media screen and (max-width: 768px){
    .hidden-wrpper {
        margin-top: -13.7%;
    }
}
@media screen and (max-width: 425px){
    .hidden-wrpper {
        margin-top: -40%;
    }
}

/* MV */
.mv {
    display: block;
    width: 100%;
}
@media screen and (max-width: 768px){
    .mv {
        width: 150%;
        margin-left: -23%;
    }
}
@media screen and (max-width: 425px){
    .mv {
        width: 100%;
        margin-left: 0%;
    }
}

.mv-img {
    display: block;
    width: 100%;
    position: relative;
}

.mv-clapperboard {
    display: 100%;
}

.mv-cloud {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
@media screen and (max-width: 425px){
    .mv-cloud {
        z-index: 2;
    }
}

.mv-tv {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}
@media screen and (max-width: 425px){
    .mv-tv {
    z-index: 3;
    }
}

.mv-trophy {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}
@media screen and (max-width: 425px){
    .mv-trophy {
        z-index: 1;
    }
}

.mv-magazine {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
}
@media screen and (max-width: 425px){
    .mv-magazine {
    z-index: 4;
    }
}

.mv-ttl {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
}
@media screen and (max-width: 425px){
    .mv-ttl {
    z-index: 6;
    }
}

.mv-lights {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
}
@media screen and (max-width: 425px){
    .mv-lights {
    z-index: 5;
    }
}

.mv-txt1 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 7;
}

.mv-txt2 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8;
}
@media screen and (max-width: 425px){
    .mv-txt2 {
    z-index: 9;
    }
}

.mv-txt3 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
}

.mv-txt4 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}

.mv-txt5 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 11;
}

.mv-img .apply-button {
    position: absolute;
    z-index: 120;
    bottom: 19.5%;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (max-width: 768px){
    .mv-img .apply-button {
        bottom: 20.5%;
    }
}
@media screen and (max-width: 425px){
    .mv-img .apply-button {
        bottom: 5%;
    }
}

.intro {
    display: block;
    margin-top: -14.5%;
}
@media screen and (max-width: 768px){
    .intro {
        width: 150%;
        margin-left: -23%;
        margin-top: -21.5%;
    }
}
@media screen and (max-width: 425px){
    .intro {
        width: 100%;
        margin-left: 0%;
        margin-top: -12%;
    }
}

.intro-img {
    display: block;
    width: 100%;
    position: relative;
}

.intro-boy {
    width: 100%;
}

.intro-twinkle {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 12;
}

.intro-singer {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 13;
}

.intro-camera {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 14;
}

.intro-tv {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 14;
}

.intro-txt1 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 15;
}

.intro-txt2 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 16;
}

.intro-txt3 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 17;
}

.intro-txt4 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 18;
}

.target {
    display: block;
    margin-top: -33%;
}
@media screen and (max-width: 768px){
    .target {
        width: 150%;
        margin-left: -23%;
        margin-top: -49%;
    }
}
@media screen and (max-width: 425px){
    .target {
        width: 100%;
        margin-left: 0%;
        margin-top: -20%;
    }
}

.target-img {
    display: block;
    width: 100%;
    position: relative;
}

.target-space {
    width: 100%;
}

.target-txt1 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 19;
}

.target-txt2 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 18;
}

.target-ttl {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 20;
}

.target-01-bg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 21;
    mix-blend-mode: color-burn;
}

.target-01-txt {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 22;
}

.target-02-bg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 25;
    mix-blend-mode: color-burn;
}

.target-02-txt {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 23;
}

.target-03-bg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 24;
    mix-blend-mode: color-burn;
}

.target-03-txt {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 25;
}

.target-hands {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 26;
}

.target .apply-button {
    position: absolute;
    z-index: 1000;
    bottom: 46.5%;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (max-width: 768px){
    .target .apply-button {
        bottom: 31%;
    }
}
@media screen and (max-width: 425px){
    .target .apply-button {
        bottom: 45.5%;
    }
}

.flow {
    display: block;
    margin-top: -24%;
}
@media screen and (max-width: 768px){
    .flow {
        width: 150%;
        margin-left: -23%;
        margin-top: -36%;
    }
}
@media screen and (max-width: 425px){
    .flow {
        width: 100%;
        margin-left: 0;
        margin-top: -36%;
    }
}

.flow-img {
    display: block;
    width: 100%;
    position: relative;
}

.flow-bg {
    width: 100%;
}

.flow-ttl {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 27;
}

.flow-01 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 28;
}

.flow-02 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 29;
}

.flow-03 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 30;
}

.flow-04 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 31;
}

.flow-txt1-bg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: hard-light;
    z-index: 32;
}
.flow-txt1 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 33;
}

.flow-txt2-bg {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: hard-light;
    z-index: 34;
}

.flow-txt2 {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 35;
}

footer {
    color: #FFF;
    font-size: 12px;
    margin-top: -5%;
    padding-bottom: 3%;
    position: relative;
    z-index: 50;
}
@media screen and (max-width: 425px){
    footer {
        margin-top: -21%;
        padding-bottom: 11%;
    }
}

footer a {
    color: #FFF;
    font-size: 12px;
}

footer ul {
    display: flex;
    justify-content: center;
    gap: 3em;
}

.copyright {
    text-align: center;
    margin-top: 1em;
}