.root-bg
{
    background-image: url("./../img/sp/common/bg_pattern.jpg");
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
}

.root
{
    position: relative;
}

.kv-bg
{
    width: 100%;
    height: 706px;
    background-image: url("./../img/sp/kv/bg_pattern.jpg");
    position: relative;
}

.kv-bg hr
{
    width: 100%;
    height: 9px;
    background-image: url("./../img/sp/kv/bg_partition.jpg");
    position: absolute;
    left: 0px;
    bottom: 0px;
    border: none;
}

.alt
{
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    width: 0px;
    height: 0px;
}

@-webkit-keyframes shake
{
    0%
    {
        -webkit-transform: translate3d(-6px, -2px, 0px);
        transform: translate3d(-6px, -2px, 0px);
    }

    10%
    {
        -webkit-transform: translate3d(3px, -3px, 0px);
        transform: translate3d(3px, -3px, 0px);
    }

    20%
    {
        -webkit-transform: translate3d(6px, 4px, 0px);
        transform: translate3d(6px, 4px, 0px);
    }

    30%
    {
        -webkit-transform: translate3d(-2px, 2px, 0px);
        transform: translate3d(-2px, 2px, 0px);
    }

    40%
    {
        -webkit-transform: translate3d(-5px, -4px, 0px);
        transform: translate3d(-5px, -4px, 0px);
    }

    50%
    {
        -webkit-transform: translate3d(5px, -2px, 0px);
        transform: translate3d(5px, -2px, 0px);
    }

    60%
    {
        -webkit-transform: translate3d(3px, 2px, 0px);
        transform: translate3d(3px, 2px, 0px);
    }

    70%
    {
        -webkit-transform: translate3d(-6px, 4px, 0px);
        transform: translate3d(-6px, 4px, 0px);
    }

    80%
    {
        -webkit-transform: translate3d(-3px, -2px, 0px);
        transform: translate3d(-3px, -2px, 0px);
    }

    100%
    {
        -webkit-transform: translate3d(3px, -4px, 0px);
        transform: translate3d(3px, -4px, 0px);
    }
}

@keyframes shake
{
    0%
    {
        -webkit-transform: translate3d(-6px, -2px, 0px);
        transform: translate3d(-6px, -2px, 0px);
    }

    10%
    {
        -webkit-transform: translate3d(3px, -3px, 0px);
        transform: translate3d(3px, -3px, 0px);
    }

    20%
    {
        -webkit-transform: translate3d(6px, 4px, 0px);
        transform: translate3d(6px, 4px, 0px);
    }

    30%
    {
        -webkit-transform: translate3d(-2px, 2px, 0px);
        transform: translate3d(-2px, 2px, 0px);
    }

    40%
    {
        -webkit-transform: translate3d(-5px, -4px, 0px);
        transform: translate3d(-5px, -4px, 0px);
    }

    50%
    {
        -webkit-transform: translate3d(5px, -2px, 0px);
        transform: translate3d(5px, -2px, 0px);
    }

    60%
    {
        -webkit-transform: translate3d(3px, 2px, 0px);
        transform: translate3d(3px, 2px, 0px);
    }

    70%
    {
        -webkit-transform: translate3d(-6px, 4px, 0px);
        transform: translate3d(-6px, 4px, 0px);
    }

    80%
    {
        -webkit-transform: translate3d(-3px, -2px, 0px);
        transform: translate3d(-3px, -2px, 0px);
    }

    100%
    {
        -webkit-transform: translate3d(3px, -4px, 0px);
        transform: translate3d(3px, -4px, 0px);
    }
}

.shake
{
    -webkit-animation: shake 0.09s linear 0s 2 normal;
    animation: shake 0.09s linear 0s 2 normal;
}

#kv
{
    position: relative;
    width: 100%;
    height: 700px;
    z-index: 1;
}

#kv::before
{
    display: block;
    content: " ";
    clear: both;
    height: 0px;
    border-top: transparent solid 1px;
    width: 100%;
    margin-bottom: -1px;
}

#kv h1
{
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    display: block;
    width: 1019px;
    height: 543px;
    background-image: url("./../img/pc/kv/h1.png");
    background-repeat: no-repeat;
    background-size: 1019px 543px;
    background-position: 0px 0px;
    margin: 85px auto 0;
    left: 3px;
    position: relative;
}

#kv .catchcopy
{
    display: none;
}

#kv .happy-new-year
{
    display: none;
}

#kv .area-img
{
    width: 1000px;
    position: absolute;
    top: 0px;
    left: 0;
    right: 0;
    margin: 7px auto 0;
}

#kv .area-img .ryuheisan
{
    display: none;
}

#kv .area-img .logo-countdown
{
    position: absolute;
    right: 0px;
    top: 13px;
    display: block;
    width: 127px;
    height: 94px;
    background-image: url("./../img/sp/kv/logo_countdown.png");
    background-repeat: no-repeat;
    background-size: 127px 94px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#kv .area-img .logo-monst
{
    position: absolute;
    left: 0px;
    top: 5px;
    display: block;
    width: 142px;
    height: 103px;
    background-image: url("./../img/sp/kv/logo_monst.png");
    background-repeat: no-repeat;
    background-size: 142px 103px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#kv .countdown-time
{
    display: block;
    width: 560px;
    height: 115px;
    background-image: url("./../img/pc/kv/countdown_time_bg.png");
    background-repeat: no-repeat;
    background-size: 560px 115px;
    background-position: 0px 0px;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 15px;
}

#kv .countdown-time .num
{
    position: absolute;
    top: 43px;
    overflow: hidden;
    display: block;
    width: 48px;
    height: 760px;
    background-image: url("./../img/sp/kv/countdown_time_num.png");
    background-repeat: no-repeat;
    background-size: 48px 760px;
    background-position: 0px 0px;
    width: 48px;
    height: 76px;
    background-repeat: repeat-y;
}

#kv .countdown-time .num.d10
{
    left: -3px;
}

#kv .countdown-time .num.d01
{
    left: 46px;
}

#kv .countdown-time .num.h10
{
    left: 139px;
}

#kv .countdown-time .num.h01
{
    left: 189px;
}

#kv .countdown-time .num.m10
{
    left: 285px;
}

#kv .countdown-time .num.m01
{
    left: 334px;
}

#kv .countdown-time .num.s10
{
    left: 429px;
}

#kv .countdown-time .num.s01
{
    left: 479px;
}

#jushinsai
{
    position: relative;
    width: 100%;
    z-index: 1;
}

#jushinsai h2
{
    display: block;
    width: 994px;
    height: 168px;
    background-image: url("./../img/pc/jushinsai/h2.png");
    background-repeat: no-repeat;
    background-size: 994px 168px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 72px auto 0;
    z-index: 1;
    position: relative;
}

#jushinsai .content
{
    margin: 20px auto 0;
    position: relative;
    width: 1000px;
}

#jushinsai .content .img-set
{
    display: block;
    width: 1123px;
    height: 923px;
    background-image: url("./../img/pc/jushinsai/img_set.png");
    background-repeat: no-repeat;
    background-size: 1123px 923px;
    background-position: 0px 0px;
    position: relative;
    left: -62px;
    margin-top: -37px;
    overflow: hidden;
    text-indent: 1223px;
    white-space: nowrap;
}

#jushinsai .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 28px;
    margin: 0 auto;
    display: block;
    width: 560px;
    height: 158px;
    background-image: url("./../img/sp/common/to_detail.png");
    background-repeat: no-repeat;
    background-size: 560px 158px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 660px;
    white-space: nowrap;
}

#nenshi-korin
{
    position: relative;
    width: 100%;
    z-index: 1;
}

#nenshi-korin h2
{
    display: block;
    width: 831px;
    height: 224px;
    background-image: url("./../img/pc/nenshi_korin/h2.png");
    background-repeat: no-repeat;
    background-size: 831px 224px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 72px auto 0;
}

#nenshi-korin .content
{
    margin: 20px auto 0;
    position: relative;
    width: 1000px;
}

#nenshi-korin .content .img-set
{
    display: block;
    width: 1122px;
    height: 947px;
    background-image: url("./../img/pc/nenshi_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 1122px 947px;
    background-position: 0px 0px;
    position: relative;
    left: -62px;
    margin-top: -62px;
    overflow: hidden;
    text-indent: 1223px;
    white-space: nowrap;
}

#nenshi-korin .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 28px;
    margin: 0 auto;
    display: block;
    width: 560px;
    height: 158px;
    background-image: url("./../img/sp/common/to_detail.png");
    background-repeat: no-repeat;
    background-size: 560px 158px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 660px;
    white-space: nowrap;
}

#other
{
    width: 1010px;
    margin: 60px auto 30px;
    position: relative;
    left: -5px;
    text-align: center;
}

#other::after
{
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0px;
}

#big-kuji
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#big-kuji h2
{
    display: block;
    width: 477px;
    height: 198px;
    background-image: url("./../img/pc/big_kuji/h2.png");
    background-repeat: no-repeat;
    background-size: 477px 198px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#big-kuji .content
{
    float: left;
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#big-kuji .content .img-set
{
    display: block;
    width: 473px;
    height: 401px;
    background-image: url("./../img/pc/big_kuji/img_set.png");
    background-repeat: no-repeat;
    background-size: 473px 401px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 0 auto;
    position: relative;
    top: -17px;
}

#big-kuji .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#allstar-gacha
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#allstar-gacha h2
{
    display: block;
    width: 488px;
    height: 198px;
    background-image: url("./../img/pc/allstar_gacha/h2.png");
    background-repeat: no-repeat;
    background-size: 488px 198px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#allstar-gacha .content
{
    float: left;
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#allstar-gacha .content .img-set
{
    display: block;
    width: 473px;
    height: 384px;
    background-image: url("./../img/pc/allstar_gacha/img_set.png");
    background-repeat: no-repeat;
    background-size: 473px 384px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 0 auto;
    position: relative;
    top: 0px;
}

#allstar-gacha .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#nenmatsu-korin
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#nenmatsu-korin h2
{
    display: block;
    width: 354px;
    height: 188px;
    background-image: url("./../img/pc/nenmatsu_korin/h2.png");
    background-repeat: no-repeat;
    background-size: 354px 188px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#nenmatsu-korin .content
{
    float: left;
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#nenmatsu-korin .content .img-set
{
    display: block;
    width: 473px;
    height: 395px;
    background-image: url("./../img/pc/nenmatsu_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 473px 395px;
    background-position: 0px 0px;
    margin: 0 auto;
    position: relative;
    top: -11px;
}

#nenmatsu-korin .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#login-stamp
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#login-stamp h2
{
    display: block;
    width: 500px;
    height: 195px;
    background-image: url("./../img/pc/login_stamp/h2.png");
    background-repeat: no-repeat;
    background-size: 500px 195px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#login-stamp .content
{
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#login-stamp .content .img-set
{
    display: block;
    width: 476px;
    height: 396px;
    background-image: url("./../img/pc/login_stamp/img_set.png");
    background-repeat: no-repeat;
    background-size: 476px 396px;
    background-position: 0px 0px;
    margin: 0 auto;
    position: relative;
    top: -12px;
}

#login-stamp .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#xmas-korin
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#xmas-korin h2
{
    display: block;
    width: 458px;
    height: 186px;
    background-image: url("./../img/pc/xmas_korin/h2.png");
    background-repeat: no-repeat;
    background-size: 458px 186px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#xmas-korin .content
{
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#xmas-korin .content .img-set
{
    display: block;
    width: 495px;
    height: 399px;
    background-image: url("./../img/pc/xmas_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 495px 399px;
    background-position: 0px 0px;
    margin: 0 auto;
    position: relative;
    top: -15px;
}

#xmas-korin .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#jushinka
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#jushinka h2
{
    display: block;
    width: 342px;
    height: 160px;
    background-image: url("./../img/pc/jushinka/h2.png");
    background-repeat: no-repeat;
    background-size: 342px 160px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#jushinka .content
{
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#jushinka .content .img-set
{
    display: block;
    width: 496px;
    height: 384px;
    background-image: url("./../img/pc/jushinka/img_set.png");
    background-repeat: no-repeat;
    background-size: 496px 384px;
    background-position: 0px 0px;
    margin: 0 auto;
    position: relative;
    top: 0px;
}

#jushinka .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#santa-kuji
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#santa-kuji h2
{
    display: block;
    width: 464px;
    height: 159px;
    background-image: url("./../img/pc/santa_kuji/h2.png");
    background-repeat: no-repeat;
    background-size: 464px 159px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#santa-kuji .content
{
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#santa-kuji .content .img-set
{
    display: block;
    width: 500px;
    height: 406px;
    background-image: url("./../img/pc/santa_kuji/img_set.png");
    background-repeat: no-repeat;
    background-size: 500px 406px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 0 auto;
    position: relative;
    top: -22px;
}

#santa-kuji .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 15px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#movie
{
    position: relative;
    display: inline-block;
    width: 500px;
    height: 607px;
    z-index: 1;
    margin: 0 auto 50px;
    vertical-align: top;
}

#movie h2
{
    display: block;
    width: 419px;
    height: 248px;
    background-image: url("./../img/pc/movie/h2.png");
    background-repeat: no-repeat;
    background-size: 419px 248px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 198px;
    background-size: auto;
    background-position: center bottom;
    margin: 0 auto;
}

#movie .content
{
    width: 100%;
    height: 384px;
    margin: 20px auto 0;
    position: relative;
}

#movie .content .img-set
{
    display: block;
    width: 473px;
    height: 384px;
    background-image: url("./../img/pc/movie/img_set.png");
    background-repeat: no-repeat;
    background-size: 473px 384px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 0 auto;
    position: relative;
    top: 0px;
}

#movie .content .to-detail
{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    margin: 0 auto;
    display: block;
    width: 377px;
    height: 106px;
    background-image: url("./../img/pc/common/to_detail_other.png");
    background-repeat: no-repeat;
    background-size: 377px 106px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 477px;
    white-space: nowrap;
}

#comingsoon
{
    display: inline-block;
    width: 500px;
    position: relative;
    z-index: 1;
    margin: 0px auto 50px;
}

#comingsoon h2
{
    display: block;
    width: 459px;
    height: 183px;
    background-image: url("./../img/pc/other/h2.png");
    background-repeat: no-repeat;
    background-size: 459px 183px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    height: 186px;
    background-position: center center;
    margin: 0 auto;
}

#comingsoon .content
{
    margin: 20px auto 0;
    display: block;
    width: 473px;
    height: 384px;
    background-image: url("./../img/pc/other/comingsoon.png");
    background-repeat: no-repeat;
    background-size: 473px 384px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

.only-top
{
    text-align: center;
}

.only-top #app,
  .only-top #tvcm
{
    display: inline-block;
    vertical-align: middle;
    width: 495px;
}

.only-top #app .area-ryuheisan,
    .only-top #tvcm .area-ryuheisan
{
    width: 495px;
}
