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

.root
{
    position: relative;
}

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

.kv-bg hr
{
    width: 100%;
    height: 8.5px;
    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
{
    width: 320px;
    height: 485px;
    position: relative;
    z-index: 1;
}

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

#kv h1
{
    display: block;
    width: 279.5px;
    height: 10px;
    background-image: url("./../img/sp/kv/h1.png");
    background-repeat: no-repeat;
    background-size: 279.5px 10px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 8px auto 0;
}

#kv .catchcopy
{
    display: block;
    width: 280.5px;
    height: 181.5px;
    background-image: url("./../img/sp/kv/catchcopy.png");
    background-repeat: no-repeat;
    background-size: 280.5px 181.5px;
    background-position: 0px 0px;
    margin: 8px auto 0;
    position: relative;
    z-index: 1;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#kv .happy-new-year
{
    display: block;
    width: 228px;
    height: 171.5px;
    background-image: url("./../img/sp/kv/happy_new_year.png");
    background-repeat: no-repeat;
    background-size: 228px 171.5px;
    background-position: 0px 0px;
    margin: 8px auto 0;
    position: relative;
    z-index: 1;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    top: 100px;
    position: absolute;
    left: 0px;
    right: 0px;
    display: none;
}

#kv .area-img
{
    position: relative;
    width: 100%;
    height: 249.5px;
}

#kv .area-img .ryuheisan
{
    width: 224px;
    height: 249.5px;
    display: block;
    width: 224px;
    height: 249.5px;
    background-image: url("./../img/sp/kv/img_set.png");
    background-repeat: no-repeat;
    background-size: 224px 249.5px;
    background-position: 0px 0px;
    margin: 0 auto;
    top: -25px;
    position: relative;
}

#kv .area-img .wrap-shout
{
    position: absolute;
    left: -4px;
    top: 30px;
}

#kv .area-img .wrap-shout .shout-bg
{
    display: block;
    width: 118.5px;
    height: 87px;
    background-image: url("./../img/sp/kv/shout_bg.png");
    background-repeat: no-repeat;
    background-size: 118.5px 87px;
    background-position: 0px 0px;
    position: absolute;
    left: 0px;
    top: 0px;
}

#kv .area-img .wrap-shout .shout-txt
{
    display: block;
    width: 66px;
    height: 37.5px;
    background-image: url("./../img/sp/kv/shout_txt.png");
    background-repeat: no-repeat;
    background-size: 66px 37.5px;
    background-position: 0px 0px;
    position: absolute;
    left: 24px;
    top: 25px;
}

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

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

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

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

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

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

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

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

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

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

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

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

#jushinsai
{
    position: relative;
    margin-top: 51px;
    z-index: 1;
    width: 320px;
}

#jushinsai h2
{
    display: block;
    width: 296px;
    height: 118px;
    background-image: url("./../img/sp/jushinsai/h2.png");
    background-repeat: no-repeat;
    background-size: 296px 118px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
    margin: 0 auto;
}

#jushinsai .content
{
    margin: 15px auto 0;
    position: relative;
}

#jushinsai .content .img-set
{
    display: block;
    width: 320px;
    height: 577.5px;
    background-image: url("./../img/sp/jushinsai/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 577.5px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 420px;
    white-space: nowrap;
}

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

#nenshi-korin
{
    position: relative;
    margin-top: 51px;
    z-index: 1;
    width: 320px;
}

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

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

#nenshi-korin .content .img-set
{
    display: block;
    width: 320px;
    height: 577.5px;
    background-image: url("./../img/sp/nenshi_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 577.5px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 420px;
    white-space: nowrap;
}

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

#big-kuji
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

#big-kuji .content
{
    width: 100%;
    height: 350px;
    margin: 10px auto 0;
    position: relative;
}

#big-kuji .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/big_kuji/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

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

#allstar-gacha
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

#allstar-gacha .content
{
    width: 100%;
    height: 350px;
    margin: 10px auto 0;
    position: relative;
}

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

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

#nenmatsu-korin
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

#nenmatsu-korin .content
{
    width: 100%;
    height: 350px;
    margin: 10px auto 0;
    position: relative;
}

#nenmatsu-korin .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/nenmatsu_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
}

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

#nenmatsu-korin
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

#nenmatsu-korin .content
{
    width: 100%;
    height: 350px;
    margin: 10px auto 0;
    position: relative;
}

#nenmatsu-korin .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/nenmatsu_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
}

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

#login-stamp
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

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

#login-stamp .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/login_stamp/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
}

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

#xmas-korin
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

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

#xmas-korin .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/xmas_korin/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
}

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

#jushinka
{
    margin-top: 51.5px;
    width: 320px;
    z-index: 1;
}

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

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

#jushinka .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/jushinka/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
}

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

#santa-kuji
{
    position: relative;
    margin-top: 51px;
    z-index: 1;
    width: 320px;
}

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

#santa-kuji .content
{
    margin: 10px auto 0;
    position: relative;
}

#santa-kuji .content .img-set
{
    display: block;
    width: 320px;
    height: 349.5px;
    background-image: url("./../img/sp/santa_kuji/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 349.5px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 420px;
    white-space: nowrap;
}

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

#movie
{
    position: relative;
    margin-top: 51px;
    z-index: 1;
    width: 320px;
}

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

#movie .content
{
    margin: 10px auto 0;
    position: relative;
}

#movie .content .img-set
{
    display: block;
    width: 320px;
    height: 350px;
    background-image: url("./../img/sp/movie/img_set.png");
    background-repeat: no-repeat;
    background-size: 320px 350px;
    background-position: 0px 0px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

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

#comingsoon
{
    margin: 45px auto 0;
    width: 320px;
    position: relative;
    z-index: 1;
}

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

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