/*============================
メインビジュアルエリア
============================*/
.main {
    position: relative;
    background: url('../img/pc/top_main_bg_pc.png') no-repeat right 0/100%;
    height: 1200px;
}
.main_logo {
    position: absolute;
    top: 120px;
    left: 30px;
}
.main_bnr {
    position: absolute;
    top: 851px;
    left: 70px;
}
.main_bnr2 {
    position: absolute;
    top: 851px;
    right: 46px;
}

/*============================
ストアバナー
============================*/
.appbanner_area {
    width: 369px;
    position: absolute;
    top: 620px;
    left: 100px;
    font-size: 10px;
}
.appbanner_ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-image: url(../img/hr.png),
        url(../img/hr.png);
    background-repeat: no-repeat,
        no-repeat;
    background-position: center top,
        center bottom;
    background-size: 369px, 369px;
    margin-bottom: 20px;
}
.appbanner_li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 10px;
}
.appbanner_li:hover {
    opacity: .8;
}
.appbanner_txt {
    padding-left: 1em;
    text-indent: -1em;
    font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
}
.catch {
    position: absolute;
    top: 6px;
    right: 0;
}
.sumakoma {
    position: absolute;
    top: 24px;
    left: 24px;
}
.trailer {
    position: absolute;
    top: 75px;
    left: 185px;
}
.twitter_area {
    position: absolute;
    z-index: 6;
    top: 482px;
    right: 55px;
    width: 310px;
    height: 220px;
    background-color: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 0 10px 0 #999;
    box-shadow: 0 0 10px 0 #999;
    padding: 10px;
    /* overflow: scroll; */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.twitter_ttl {
    text-align: center;
    width: 140px;
    line-height: 1;
    margin: 0 auto;
}
.tw {
    height: 160px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    padding: 0;
    margin: 5px 0;
}

/*============================
アバウト
============================*/
.about {
    position: relative;
    background: url('../img/top_bg_txt-about.png') no-repeat right 0/94px auto;
    margin-top: -80px;
}
.about_inner {
    width: 656px;
    margin: 0 auto 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.about_inner:last-child {
    margin-bottom: 0;
}
.about_slide {
    position: relative;
}
.about_slide_inner {
    position: relative;
    width: 216px;
    height: 374px;
}
.about_slide_item {
    position: absolute;
    left: 0;
    top: 0;
}
.about_slide_pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.about_slide_pager_item {
    font-size: 16px;
}
#contents .gif-img img {
    max-width: none;
    width: 100%;
}
.tmb-video {
    max-width: none;
    width: 100%;
}
.inline-modal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 600px;
    margin: auto;
    position: relative;
}
.mfp-close-btn-in .mfp-close {
    color: #fff;
    opacity: 1;
    font-size: 44px;
    top: 0;
    right: -44px;
}
img.mfp-img {
    padding: 0;
    /* width: 600px; */
}
.modal-mov {
    width: 600px;
}
.mfp-figure::after {
    content: none;
}

/*============================
キャラクター
============================*/
.chara {
    background: url('../img/top_bg_txt-chara.png') no-repeat right 0/554px auto;
}
.chara_inner {
    position: relative;
    width: 750px;
    height: 764px;
    margin: 0 auto;
}
.chara_voice {
    position: absolute;
    width: 240px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.chara_voice.lucia {
    right: 20px;
    bottom: 270px;
}
.chara_voice.sharon {
    right: 20px;
    bottom: 270px;
}
.chara_voice.dolgos {
    right: 20px;
    bottom: 300px;
}
.chara_voice.la-merza {
    right: 20px;
    bottom: 300px;
}
.chara_voice.poron {
    right: 20px;
    bottom: 360px;
}
.chara_voice.kamen {
    right: 20px;
    bottom: 440px;
}
.chara_slide_item {
    position: relative;
}
.btn-item.voice {
    cursor: pointer;
}

/* キャラクターナビ */
.chara_nav {
    position: absolute;
    right: 20px;
    bottom: 70px;
    width: 240px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.chara_nav_item {
    position: relative;
    margin-bottom: 15px;
}
.chara_nav_item a {
    width: 100%;
    height: 100%;
    display: inline-block;
}
.chara_nav_item a.active::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: 2px solid #4c92ff;
    border-radius: 36px;
}
.chara_nav_item:nth-child(3n - 1) {
    margin: 0 15px 15px;
}
.skill_link {
    position: absolute;
    bottom: 20px;
    right: 70px;
}
.skill_link:hover {
    opacity: .8;
}

/*============================
bxsliderスタイル 上書き
============================*/
/* アバウトスライダー */
.custom-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.custom-prev,
.custom-next {
    font-size: 16px;
}
.about_slide .bx-wrapper {
    position: relative;
    margin-bottom: 0;
    padding: 0;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background: transparent;
}

/* キャラクタースライダー */
.chara_inner .bx-wrapper {
    position: relative;
    margin-bottom: 0;
    padding: 0;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background: transparent;
}
.chara_inner .bx-wrapper .bx-next {
    right: -100px;
    background: url('../img/arrw_r.png') no-repeat 0 0/38px auto;
}
.chara_inner .bx-wrapper .bx-prev {
    left: -100px;
    background: url('../img/arrw_l.png') no-repeat 0 0/38px auto;
}
.chara_inner .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: calc(50% - 54px);
    margin-top: 0;
    outline: 0;
    width: 38px;
    height: 109px;
    text-indent: -9999px;
    z-index: 9999;
}
.chara_inner .bx-wrapper .bx-next:focus,
.bx-wrapper .bx-next:hover {
    background-position: 0 0;
}