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

.root
{
    position: relative;
}

#kv
{
    z-index: 1;
    position: relative;
    width: 100%;
    padding: 20px 0 0;
    background-size: 50%;
}

#kv h1
{
    width: 560px;
    height: 150px;
    margin: 0 auto;
    background: url("./../img/sp/kv/h1.png") center top no-repeat;
    background-size: 100%;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#kv .img-kv
{
    width: 1000px;
    height: 730px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#kv .img-kv .face_bg
{
    width: 416px;
    height: 520px;
    margin: 0 0 0 -208px;
    background: url("./../img/sp/kv/face_bg.png") center top no-repeat;
    background-size: 100%;
    position: absolute;
    top: 28px;
    left: 50%;
}

#kv .img-kv .face
{
    width: 371px;
    height: 538px;
    margin: 0 0 0 -186px;
    background: url("./../img/pc/kv/face.png") center top no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 50%;
}

#kv .img-kv .shout
{
    width: 279px;
    height: 221px;
    background: url("./../img/sp/kv/shout.png") center top no-repeat;
    background-size: 100%;
    position: absolute;
    top: 5px;
    left: 161px;
}

#kv .img-kv .logo
{
    width: 150px;
    height: 114px;
    background: url("./../img/sp/kv/logo.png") center top no-repeat;
    background-size: 100%;
    position: absolute;
    top: 185px;
    right: 80px;
}

#kv .img-kv .characters
{
    width: 100%;
    height: 456px;
    background: url("./../img/pc/kv/characters.png") center top no-repeat;
    position: absolute;
    top: 268px;
    left: 0;
}

#kv .img-kv a.beginner
{
    display: block;
    width: 242px;
    height: 132px;
    background: url("./../img/sp/kv/beginner_btn.png") center top no-repeat;
    background-size: 100%;
    position: absolute;
    top: 530px;
    left: 45px;
}

#character
{
    z-index: 1;
    position: relative;
    height: auto;
}

#character h2
{
    width: 100%;
    height: 140px;
    background: rgba(84, 32, 0, 0.5) url("./../img/pc/new/h2.png") center no-repeat;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#character .wrap
{
    margin: 80px auto 0;
}

#character .wrap li
{
    display: block;
    width: 567px;
    height: 707px;
    margin: 0 auto 80px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#character .wrap li span.new_icon
{
    display: block;
    background: url("./../img/sp/new/new.png") top center no-repeat;
    width: 82px;
    height: 82px;
    margin: 0 0 0 450px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#character .wrap li.hare
{
    background: url("./../img/sp/new/hare.png") top center no-repeat;
    background-size: 567px;
}

#character .wrap li.hare_x
{
    background: url("./../img/sp/new/hare_x.png") top center no-repeat;
    background-size: 567px;
}

#character .wrap li.ransurotto
{
    background: url("./../img/sp/new/ransurotto.png") top center no-repeat;
    background-size: 567px;
}

#character .wrap li.ransurotto_x
{
    background: url("./../img/sp/new/ransurotto_x.png") top center no-repeat;
    background-size: 567px;
}

#character .detail
{
    width: 100%;
    margin: 0 auto 100px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    font-size: 160%;
}

#character .detail a
{
    color: #0b57ae;
    font-weight: bold;
}

#character .detail a:hover
{
    color: #126dd5;
}

#about
{
    z-index: 1;
    position: relative;
}

#about .accordion .accordion-title h2
{
    height: 100%;
    margin: 0 auto;
    background: url("./../img/sp/about/h2.png") center center no-repeat;
    background-size: 319px 50px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#about .accordion .accordion-body
{
    background: url("./../img/sp/about/bg_pattern_2.jpg");
}

#about .accordion .accordion-body h3
{
    width: 100%;
    height: 135px;
    background: url("./../img/sp/about/h3_bg.png") top center repeat-y;
    background-size: 100%;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#about .accordion .accordion-body h3 span
{
    display: block;
    width: 800px;
    height: 135px;
    margin: 0 auto;
}

#about .accordion .accordion-body h3 span.thema_1
{
    background: url("./../img/pc/about/h3_1.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body h3 span.thema_2
{
    background: url("./../img/pc/about/h3_2.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body h3 span.thema_3
{
    background: url("./../img/pc/about/h3_3.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body .temp-content
{
    width: 800px;
    margin: 0 auto;
}

#about .accordion .accordion-body .temp-content p
{
    margin: 40px auto 80px;
    overflow: hidden;
    text-indent: 110%;
    white-space: nowrap;
}

#about .accordion .accordion-body .temp-content p.content_1
{
    height: 764px;
    background: url("./../img/pc/about/content_1.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body .temp-content p.content_2
{
    height: 410px;
    background: url("./../img/pc/about/content_2.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body .temp-content p.content_3
{
    height: 440px;
    background: url("./../img/pc/about/content_3.png") top center no-repeat;
    background-size: 100%;
}

#about .accordion .accordion-body .temp-content p.content_4
{
    width: 600px;
    height: 285px;
    margin: -15px auto 0;
    padding: 0 0 60px;
    background: url("./../img/sp/about/content_4.png") top center no-repeat;
    background-size: 100%;
}
