@charset "utf-8";
/*--------------------------------------------------

	リンクカラー

--------------------------------------------------*/
#gotoTC{
	cursor: pointer;
	position: fixed;
	right: 0px;
	top: 10px;
	bottom: 0px;
	z-index: 999;
	line-height: 0px;
}

a {
    outline: none
}
a:link {
    color: lightskyblue;
    text-decoration: underline;
}
a:visited {
    color: lightskyblue;
    text-decoration: underline;
}
a:hover {
    color: #183bba;
    text-decoration: underline;
}
/*--------------------------------------------------

	フォントスタイル

--------------------------------------------------*/

.bold {
    font-weight: bold;
}
.txtS {
    font-size: 85%;
}
::selection {
    background: #fe4545;
    color: #fff;
}

::-moz-selection {
background: #fe4545;
color:#fff;
}
/*--------------------------------------------------

	マージン

--------------------------------------------------*/

.mgt05 {
    margin-top: 5px !important;
}
.mgt10 {
    margin-top: 10px !important;
}
.mgt15 {
    margin-top: 15px !important;
}
.mgt20 {
    margin-top: 20px !important;
}
.mgt25 {
    margin-top: 25px !important;
}
.mgt30 {
    margin-top: 30px !important;
}
.mgt35 {
    margin-top: 35px !important;
}
.mgt40 {
    margin-top: 40px !important;
}
.mgt45 {
    margin-top: 45px !important;
}
/*--------------------------------------------------

	フロート

--------------------------------------------------*/

.fltR {
    float: right;
}
.fltC {
    float: center;
}
.fltL {
    float: left;
}
/*--------------------------------------------------

	配置

--------------------------------------------------*/

.right {
    text-align: right;
}
.left {
    text-align: left;
}
.center {
    text-align: center;
}
/*--------------------------------------------------

	float解除

--------------------------------------------------*/

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.clearfix {
    display: inline-block;
}
/*\*/

* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
/**/



.both {
    clear: both;
}
.btn {
    display: inline-block;
    text-decoration: none;
    outline: none;
}
/*==================================================

	レイアウト

==================================================*/

body {
    font-family: 黑体,Simhei,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", "Osaka", Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0px;
    word-break: break-all;
    -webkit-text-size-adjust: none;
    color: #fff;
    background: url(../images/bg.jpg);
    background-attachment: fixed;
}
#wrap {
    position: relative;
    width: 100%;
    min-width: 1234px;
}
#main {
    width: 1234px;
    text-align: left;
    margin: 0 auto;
    background: rgba(0, 0, 0, 0.36);
}
#main.index-page {
    background: rgba(0, 0, 0, 0);
}
#main.index-page #content {
    background: rgba(0, 0, 0, 0.36) url("../images/global_nav_bg.png") 0 0 repeat-x;
}
#pgtp {
    position: fixed;
    right: 50px;
    bottom: 16px;
    z-index: 100;
    display: none;
}
#close {
    position: absolute;
    right: 50px;
    bottom: 16px;
    z-index: 100;
    cursor: pointer;
}
#footer {
    text-align: center;
}
/*==================================================

	#mainImg

==================================================*/

#header {
    position: relative;
}
#header .header-content {
    position: relative
}
#header .top-cover {
    position: relative;
    height: 970px;
}
.character_story-page #header .top-cover {
    position: relative;
    height: 1607px;
}
.introduction-page #header .top-cover {
    position: relative;
    height: 1793px;
}
.music-page #header .top-cover {
    position: relative;
    height: 1237px;
}
.index-page #header .top-cover {
    height: 807px;
    background: no-repeat left top;
    /*background: url(../images/main_cover2.jpg) no-repeat left top;*/
}
.index-page #header .top-cover h1 {
    position: absolute;
    bottom: 40px;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
}
#header .bnr-dlc {
    position: absolute;
    left: 16px;
    top: 530px;
    width: 198px;
    overflow: hidden;
    height: 96px;
}

#header .bnr-thema {
    position: absolute;
    left: 16px;
    top: 428px;
    width: 198px;
    overflow: hidden;
    height: 95px;
}
#header .update-block {
    position: absolute;
    left: 17px;
    top: 694px;
    width: 205px;
    overflow: hidden;
    height: 104px;
}
#header .update-block .message {
    margin: 0 0 10px;
    color: #b7b7b7;
    font-size: 11px;
}
#header .update-block .message span {
    display: block
}
#header .gold-logo {
    position: absolute;
    right: -40px;
    top: 22px;
    width: 198px;
    overflow: hidden;
}
#header .bnr-block_cd {
    position: absolute;
    right: 17px;
    bottom: 200px;
    width: 198px;
    overflow: hidden;
}


#header .bnr-block {
    position: absolute;
    right: 17px;
    bottom: 120px;
    width: 198px;
    overflow: hidden;
}
#header .bnr-block a {
    display: block;
}
#header .bnr-block img {
    max-width: 100%;
    margin-bottom: 5px;
}
#header .bgm-player {
    background: url("../images/bgm_player_bg.png") 0 0 no-repeat;
    width: 168px;
    height: 28px;
    position: absolute;
    left: 46px;
    bottom: 245px;
    z-index: 22;
}
#header .bgm-player a {
    display: block;
    color: #b6b6b6;
    font-size: 11px;
    padding: 9px 20px 8px 10px;
    line-height: 1;
    text-decoration: none;
    outline: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}
#header .bgm-player a:hover {
    box-shadow: 0 0 4px #8157ed;
}
#header .bgm-player i {
    display: inline-block;
    width: 7px;
    margin: 0 3px 0 0;
    vertical-align: 0;
    height: 5px;
}
#header .bgm-player .icon-equalizer-off {
    background: url("../images/icon_eq_off.png") 0 bottom no-repeat;
}
#header .bgm-player .icon-equalizer-on {
    background: url("../images/icon_eq_on.gif") no-repeat;
    display: none;
}
#header .bgm-player.jp-state-playing .icon-equalizer-off {
    display: none
}
#header .bgm-player.jp-state-playing .icon-equalizer-on {
    display: inline-block
}
/*==================================================

	#txt_line

==================================================*/

#txt_line {
    text-align: center;
    padding: 20px 0;
    background: rgba(255,255,255,0.3);
}
/*==================================================

	#content

==================================================*/





#content {
    background: url("../images/global_nav_bg.png") 0 0 repeat-x;
    padding: 40px 0 50px;
}
.index-page #content {
    padding-top: 0;
}
.center-content {
    margin: 0 auto;
    width: 1000px;
}
.index-page .global-nav {
    height: 93px;
    margin: 0 0 30px;
}
.global-nav .nav-item {
    position: relative;
    float: left;
    margin: 8px 0 0 45px;
    height: 61px;
}
.global-nav .nav-item span {
    position: relative;
    display: block;
    width: 100%;
    height: 61px;
    background-image: url("../images/global_nav_spr.png");
    background-repeat: no-repeat;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -ms-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}
.global-nav .nav-item:first-child {
    margin-left: 0
}
.global-nav .nav-item a {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 2;
    background-image: url("../images/global_nav_spr.png");
    background-repeat: no-repeat;
    background-position: 0 -65px;
    display: block;
    text-indent: -9999px;
    height: 100%;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    -ms-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
 -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    -webkit-transition: opacity 0.5s ease;
    -moz-transition: opacity 0.5s ease;
    -ms-transition: opacity 0.5s ease;
    -o-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
}
.global-nav .nav-item.i-1 span {
    background-position: 0 0;
    width: 81px;
}
.global-nav .nav-item.i-1 a {
    background-position: 0 -65px;
}
.global-nav .nav-item.i-2 span {
    background-position: -83px 0;
    width: 106px;
}
.global-nav .nav-item.i-2 a {
    background-position: -83px -65px;
    width: 106px;
}
.global-nav .nav-item.i-3 span {
    background-position: -191px 0;
    width: 128px;
}
.global-nav .nav-item.i-3 a {
    background-position: -191px -65px;
    width: 128px;
}
.global-nav .nav-item.i-4 span {
    background-position: -321px 0;
    width: 88px;
}
.global-nav .nav-item.i-4 a {
    background-position: -321px -65px;
    width: 88px;
}
.global-nav .nav-item.i-5 span {
    background-position: -411px 0;
    width: 147px;
}
.global-nav .nav-item.i-5 a {
    background-position: -411px -65px;
    width: 147px;
}
.global-nav .nav-item.i-6 span {
    background-position: -560px 0;
    width: 127px;
}
.global-nav .nav-item.i-6 a {
    background-position: -560px -65px;
    width: 127px;
}
.global-nav .nav-item.active span,
.global-nav .nav-item.i-1:hover span,
.global-nav .nav-item.i-2:hover span,
.global-nav .nav-item.i-3:hover span,
.global-nav .nav-item.i-3-1:hover span,
.global-nav .nav-item.i-3-2:hover span,
.global-nav .nav-item.i-3-3:hover span,
.global-nav .nav-item.i-4:hover span,
.global-nav .nav-item.i-5:hover span,
.global-nav .nav-item.i-5-1:hover span,
.global-nav .nav-item.i-5-2:hover span,
.global-nav .nav-item.i-5-3:hover span,
.global-nav .nav-item.i-5-4:hover span,
.global-nav .nav-item.i-6:hover span {
    -webkit-opacity: 0;
    -moz-opacity: 0;
    -ms-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
 -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
}
.global-nav .nav-item.active a,
.global-nav .nav-item.i-1 a:hover,
.global-nav .nav-item.i-2 a:hover,
.global-nav .nav-item.i-3 a:hover,
.global-nav .nav-item.i-3-1 a:hover,
.global-nav .nav-item.i-3-2 a:hover,
.global-nav .nav-item.i-3-3 a:hover,
.global-nav .nav-item.i-4 a:hover,
.global-nav .nav-item.i-5 a:hover,
.global-nav .nav-item.i-5-1 a:hover,
.global-nav .nav-item.i-5-2 a:hover,
.global-nav .nav-item.i-5-3 a:hover,
.global-nav .nav-item.i-5-4 a:hover,
.global-nav .nav-item.i-6 a:hover {
    -webkit-opacity: 1;
    -moz-opacity: 1;
    -ms-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
 -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
}
#content .spec_area {
    float: left;
    width: 657px;
}
.purchase-block {
    padding: 1px 0 12px 13px;
}
.purchase-block .block-title,  .purchase-block .online-shops-menu {
    float: left;
}
.purchase-block .online-shops-menu {
    margin: 17px 0 0;
}
.purchase-block .online-shops-menu li {
    float: left;
    margin-left: 18px;
}

#content .spec-block .thumbnail-block {
    float: left;
    margin: 26px 0 0;
}
#content .spec_area .spec-block {
    line-height: 1.9;
    margin-bottom: 25px;
    padding: 45px 0 42px 31px;
    background: #000 url(../images/spec_bg.jpg) no-repeat right bottom;
    border: 1px #342e42 solid;
}
#content .spec_area dl {
    margin: 0 0 0 172px;
    overflow: hidden;
    font-size: 12px;
}
#content .spec_area dt {
    float: left;
    width: 180px;
    clear: both;
}
#content .spec_area dd {
    padding-left: 180px;
}
#content .spec_area .vita {
    float: left;
}
#content .spec_area .sns {
    float: right;
}
#content .spec_area .sns li {
    float: right;
    margin-left: 5px;
}
#content .tw_area {
    float: right;
    width: 305px;
    margin: 16px 0 0;
}

/*World page*/

.world-page #header .top-cover {
    background: url("../images/top_cover_story.jpg") 0 0 no-repeat;
}
#header .page-title {
    text-indent: -9999px;
    display: none
}
#header .left-side {
    position: absolute;
    left: 0;
    top: 0;
    width: 333px;
    z-index: 11;
}
#header .header-logo {
    position: relative;
    margin: 27px 0 40px -38px;
}
#header .global-nav {
    background: none;
    padding: 1px 0 45px 29px;
}
#header .global-nav li {
    clear: both;
    margin: 0;
}
#header .global-nav .nav-item span {
    height: 57px;
    background-image: url("../images/global_nav_left_spr.png");
}
#header .global-nav li.nav-item.sub {
    height: 30px;
}
#header .global-nav li.nav-item.sub.i-3-1 {
    margin-top: -15px;
}
#header .global-nav li.nav-item.sub.i-3-3 {
    margin-bottom: 15px;
}
#header .global-nav li.nav-item.sub.i-5-1 {
    margin-top: -15px;
}
#header .global-nav li.nav-item.sub.i-5-4 {
    margin-bottom: 15px;
}
#header .global-nav .nav-item.sub span {
    height: 38px;
    margin-left: 30px;
}
#header .global-nav .nav-item.sub.special span {
    background-image: url("../images/global_nav_left_spr_special.png");
}
#header .global-nav .nav-item.sub.character span {
    background-image: url("../images/global_nav_left_spr_character.png");
}
#header .global-nav .nav-item a {
    background-image: url("../images/global_nav_left_spr.png");
    background-position: right 0;
    width: 100%;
}
#header .global-nav .nav-item.sub.special a {
    background-image: url("../images/global_nav_left_spr_special.png");
    background-position: right 0;
    width: 100%;
    margin-left: 30px;
    height: 38px;
}
#header .global-nav .nav-item.sub.character a {
    background-image: url("../images/global_nav_left_spr_character.png");
    background-position: right 0;
    width: 100%;
    margin-left: 30px;
    height: 38px;
}
#header .global-nav .nav-item.i-1 span {
    background-position: 0 0;
    width: 119px;
}
#header .global-nav .nav-item.i-2 span {
    background-position: 0 -58px;
    width: 163px;
}
#header .global-nav .nav-item.i-2 a {
    background-position: right -58px;
}
#header .global-nav .nav-item.i-3 span {
    background-position: 0 -116px;
    width: 215px;
}
#header .global-nav .nav-item.i-3 a {
    background-position: right -116px;
    width: 215px;
}
#header .global-nav .nav-item.sub.i-3-1 span {
    background-position: 0 0;
    width: 210px;
}
#header .global-nav .nav-item.sub.i-3-1 a {
    background-position: right 0;
    width: 210px;
}
#header .global-nav .nav-item.sub.i-3-2 span {
    background-position: 0 -38px;
    width: 210px;
}
#header .global-nav .nav-item.sub.i-3-2 a {
    background-position: right -38px;
    width: 210px;
}
#header .global-nav .nav-item.sub.i-3-3 span {
    background-position: 0 -76px;
    width: 210px;
}
#header .global-nav .nav-item.sub.i-3-3 a {
    background-position: right -76px;
    width: 210px;
}
#header .global-nav .nav-item.i-4 span {
    background-position: 0 -174px;
    width: 183px;
}
#header .global-nav .nav-item.i-4 a {
    background-position: right -174px;
    width: 183px;
}
#header .global-nav .nav-item.i-5 span {
    background-position: 0 -232px;
    width: 217px;
}
#header .global-nav .nav-item.i-5 a {
    background-position: right -232px;
    width: 217px;
}
#header .global-nav .nav-item.sub.i-5-1 span {
    background-position: 0 0;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-1 a {
    background-position: right 0;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-2 span {
    background-position: 0 -38px;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-2 a {
    background-position: right -38px;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-3 span {
    background-position: 0 -76px;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-3 a {
    background-position: right -76px;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-4 span {
    background-position: 0 -114px;
    width: 172px;
}
#header .global-nav .nav-item.sub.i-5-4 a {
    background-position: right -114px;
    width: 172px;
}
#header .global-nav .nav-item.i-6 span {
    background-position: 0 -287px;
    width: 192px;
}
#header .global-nav .nav-item.i-6 a {
    background-position: right -287px;
    width: 192px;
}
#header .left-side .bgm_ttl {
    padding: 0 0 0 55px;
}
.index-page #header .bgm-player {
    right: 17px;
    bottom: 39px;
    left: auto;
}
.character-page #header .bgm-player,
.character2-page #header .bgm-player,
.character3-page #header .bgm-player,
.character4-page #header .bgm-player,
.character5-page #header .bgm-player,
.character6-page #header .bgm-player,
.character_sub-page #header .bgm-player,
.character_sub2-page #header .bgm-player,
.character_sub3-page #header .bgm-player,
.character_sub4-page #header .bgm-player,
.character_story-page #header .bgm-player {
    right: auto !important;
    top: 787px !important;
    left: 46px !important;
}
.introduction-page #header .bgm-player {
    right: auto !important;
    top: 697px !important;
    left: 46px !important;
}
.download-page #header .bgm-player,
.gallery-page #header .bgm-player {
    right: auto !important;
    bottom: 125px !important;
    left: 46px !important;
}
.music-page #header .bgm-player {
    right: auto !important;
    bottom: 392px !important;
    left: 46px !important;
}
#header .header-descr {
    position: absolute;
    left: 617px;
    top: 40px;
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    font-size: 14px;
    line-height: 2;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}
#header .header-descr h3 {
    margin-bottom: 22px
}
#header .header-descr p {
    margin-top: 27px
}
#header .header-descr .ttl-2 {
    margin-top: 55px;
}

/* Character page */

.character-page {
}
.character-block {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.character-block .char-details {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
#char-1 .char-details {
    background: url("../images/characters/char_bg_1.jpg") 0 0 no-repeat;
}
#char-2 .char-details {
    background: url("../images/characters/char_bg_2.jpg") 0 0 no-repeat;
}
#char-3 .char-details {
    background: url("../images/characters/char_bg_3.jpg") 0 0 no-repeat;
}
#char-4 .char-details {
    background: url("../images/characters/char_bg_4.jpg") 0 0 no-repeat;
}
#char-5 .char-details {
    background: url("../images/characters/char_bg_5.jpg") 0 0 no-repeat;
}
#char-6 .char-details {
    background: url("../images/characters/char_bg_6.jpg") 0 0 no-repeat;
}
#char_sub-1 .char-details {
    background: url("../images/characters/char_sub_bg_1.jpg") 0 0 no-repeat;
}
#char_sub-2 .char-details {
    background: url("../images/characters/char_sub_bg_2.jpg") 0 0 no-repeat;
}
#char_sub-3 .char-details {
    background: url("../images/characters/char_sub_bg_3.jpg") 0 0 no-repeat;
}
#char_sub-4 .char-details {
    background: url("../images/characters/char_sub_bg_4.jpg") 0 0 no-repeat;
}
#char-chart .char-details {
    background: url("../images/characters/char_chart_bg.jpg") 0 0 no-repeat;
}
.character-block .char-details .char-content {
    margin: 0 0 0 654px;
    position: relative;
}
.character-block .char-voices {
    margin: 360px 0 0;
}
.character-block .char-voices strong {
    display: inline-block;
    margin: 15px 10px 0 0;
    vertical-align: top;
}
.character-block .char-voices .char-list-voices {
    display: inline-block !important;
    height: 52px !important;
}
.character-block .char-list-voices li {
    float: left;
    margin: 0 5px 0 0;
}
.character-block .char-list-voices li span {
    filter: alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
}
.character-block .char-list-voices a, .character-block .char-list-voices span {
    display: block;
    background-image: url("../images/characters/char_icons_voices_2.png");
    background-repeat: no-repeat;
    width: 45px;
    height: 52px;
    text-indent: -9999px;
    text-decoration: none;
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -ms-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.character-block .char-list-voices a:hover {
    -webkit-opacity: 0.75;
    -moz-opacity: 0.75;
    -ms-opacity: 0.75;
    -o-opacity: 0.75;
    opacity: 0.75;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
}
.character-block .btn-interview:hover {
    -webkit-opacity: 0.75;
    -moz-opacity: 0.75;
    -ms-opacity: 0.75;
    -o-opacity: 0.75;
    opacity: 0.75;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
}
.character-block .btn-synopsis:hover {
    -webkit-opacity: 0.75;
    -moz-opacity: 0.75;
    -ms-opacity: 0.75;
    -o-opacity: 0.75;
    opacity: 0.75;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
}

.character-block .char-list-voices li:first-child a, .character-block .char-list-voices li:first-child span {
    background-position: 0 0
}
.character-block .char-list-voices li:first-child+* a, .character-block .char-list-voices li:first-child+* span {
    background-position: -47px 0
}
.character-block .char-list-voices li:first-child+*+* a, .character-block .char-list-voices li:first-child+*+* span {
    background-position: -94px 0
}
.character-block .char-list-voices li a:hover .animated {
    display: block
}
.character-block .btn-interview {
    display: inline-block;
    margin: 20px 0 0;
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -ms-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.character-block .btn-interview.char-zoom-in {
    display: inline-block;
    position: static;
    height: 33px;
    width: 194px;
    z-index: 12;
}
.character-block .btn-synopsis {
    display: inline-block;
    margin: 20px 0 0;
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -ms-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
#header .cast_img {
    position: absolute;
    top: 586px;
    left: 183px;
    z-index: 9999;
    -webkit-box-shadow: 0 0 20px 5px rgba(1,58,98,0.62);
    -moz-box-shadow: 0 0 20px 5px rgba(1,58,98,0.62);
    box-shadow: 0 0 20px 5px rgba(1,58,98,0.62);
}
.character-block .char-details .char_cast-content {
    margin: 66px 75px 0 431px;
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    line-height: 1.75;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}
.character-block .char-details .char_cast-content img.name {
    margin-left: -20px;
}
.character-block .char-details .char_cast-content h4 {
    color: #df9fb0;
    font-size: 15px;
    font-weight: bold;
    margin-top: 35px;
}
.character-block .char-details .char_cast-content p {
    font-size: 15px;
}
.character-block .char-description {
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    font-size: 15px;
    line-height: 2;
    margin: 29px 0 0;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}
.character-block .char-cv {
    position: absolute;
    top: 41px;
    right: 134px;
}
.character-block .char-name {
    display: none
}
.character-block .char-zoom-in {
    display: block;
    position: absolute;
    left: 313px;
    top: 50px;
    height: 892px;
    width: 303px;
    z-index: 12;
}
.character-block .char-navigation {
    position: absolute;
    bottom: 2px;
    right: 30px;
}
.character-block .char-navigation li {
    float: left;
    width: 91px;
    height: 188px;
    position: relative;
    background: url(../images/characters/char_select_box.png) 0 0 no-repeat;
    margin: 0 0 0 3px;
}
.character-block .char-navigation.sub li {
    background: url(../images/characters/char_sub_select_box.png) 0 0 no-repeat;
}
.character-block .char-navigation li.i-1 {
    background-position: 0 0
}
.character-block .char-navigation li.i-2 {
    background-position: -93px 0
}
.character-block .char-navigation li.i-3 {
    background-position: -186px 0
}
.character-block .char-navigation li.i-4 {
    background-position: -279px 0
}
.character-block .char-navigation li.i-5 {
    background-position: -372px 0
}
.character-block .char-navigation li.i-6 {
    background-position: -465px 0
}
.character-block .char-navigation a {
    display: block;
    margin: 2px;
    height: 186px;
    background: rgba(5, 2, 10, 0.60);
    -webkit-opacity: 0;
    -moz-opacity: 0;
    -ms-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
 -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    vertical-align: middle;
    text-align: center;
    overflow: hidden;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    line-height: 186px;
}
.character-block .char-navigation a img {
    vertical-align: middle;
    position: relative;
    right: -100px;
    -webkit-transition: all 0.15s ease 0.1s;
    -moz-transition: all 0.15s ease 0.1s;
    -ms-transition: all 0.15s ease 0.1s;
    -o-transition: all 0.15s ease 0.1s;
    transition: all 0.15s ease 0.1s;
}
.character-block .char-navigation a:hover,  .character-block .char-navigation li.active a {
    -webkit-opacity: 1;
    -moz-opacity: 1;
    -ms-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
 -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
 filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
}
.character-block .char-navigation a:hover img,  .character-block .char-navigation li.active a img {
    right: 0;
}
.mfp-figure:after {
    display: none;
}
img.mfp-img {
    max-height: none !important;
}
.mfp-close {
    font-size: 30px
}
.character-block .jp-playlist {
    display: inline-block;
}
#char-1.character-block .char-description {
    margin-top: 445px
}
#char-3.character-block .char-list-voices a,
#char-3.character-block .char-list-voices span {
    background-image: url("../images/characters/char_icons_voices_3.png")
}
#char-4.character-block .char-list-voices a,
#char-4.character-block .char-list-voices span {
    background-image: url("../images/characters/char_icons_voices_4.png")
}
#char-5.character-block .char-list-voices a,
#char-5.character-block .char-list-voices span {
    background-image: url("../images/characters/char_icons_voices_5.png")
}
#char-6.character-block .char-list-voices a,
#char-6.character-block .char-list-voices span {
    background-image: url("../images/characters/char_icons_voices_6.png")
}
#char_sub-1.character-block .char-list-voices a,
#char_sub-1.character-block .char-list-voices span {
    background-image: url("../images/characters/char_sub_icons_voices_1.png")
}
#char_sub-2.character-block .char-list-voices a,
#char_sub-2.character-block .char-list-voices span {
    background-image: url("../images/characters/char_sub_icons_voices_2.png")
}
#char_sub-3.character-block .char-list-voices a,
#char_sub-3.character-block .char-list-voices span {
    background-image: url("../images/characters/char_sub_icons_voices_3.png")
}
#char_sub-4.character-block .char-list-voices a,
#char_sub-4.character-block .char-list-voices span {
    background-image: url("../images/characters/char_sub_icons_voices_4.png")
}
#content .global-nav {
    display: none
}
.index-page #content .global-nav {
    display: block
}

.character-block .char-details .story {
    position: relative;
    top: 125px;
    left: 500px;
    width: 640px;
}

.character-block .char-details .story .ttl {
    position: absolute;
    font-size: 20px;
    font-weight: bold;
    z-index: 1;
}
.character-block .char-details .story .tx {
    position: absolute;
    top: 40px;
    z-index: 10;
}
.character-block .char-details .story figure {
    position: absolute;
    top: 95px;
    left: 280px;
    z-index: 0;
}

.character-block .char-details .chart {
    position: absolute;
    top: 530px;
    left: 480px;
}

/* Introduction page */

.introduction-page #header .top-cover {
    background: url("../images/top_cover_introduction.jpg") 0 0 no-repeat;
}

.introduction-page #header .header-descr {
    left: 533px;
    top: 40px;
}
.introduction-page #header .header-descr figure {
    float: left;
    margin-left: 15px;
}
.introduction-page #header .header-descr h3 {
    margin: 20px 0 0 0;
}
.introduction-page #header .header-descr p {
    float: left;
    margin: 0 0 0 18px;
    width: 295px;
}

/* special page */

.download-page #header .top-cover,
.gallery-page #header .top-cover {
    background: url("../images/top_cover_special.jpg") 0 0 no-repeat;
}
.music-page #header .top-cover {
    background: url("../images/top_cover_music.jpg") 0 0 no-repeat;
}
.special-block {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.special-block .dl-details {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.special-block .dl-details .dl-content {
    margin: 0 0 0 554px;
    position: relative;
}
.special-block .dl-name {
    display: none
}
.special-block .dl-description {
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    font-size: 15px;
    line-height: 2;
    margin: 29px 0 0;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}

.special-block .dl-content h2.title {position: absolute;top:42px;left: -32px;}
.special-block .dl-content .dl-description.icon {position: absolute; top: 129px; left: -4px;}
.special-block .dl-content ul.icon {position: absolute; top: 35px;}
.special-block .dl-content .dl-description.banner {position: absolute; top: 276px; left: -4px;}
.special-block .dl-content ul.banner {position: absolute; top: 35px;}
.special-block .dl-content ul.wallpaper {position: relative; top: 407px;}
.special-block .dl-content ul.wallpaper li.i-1 .dl-description.wallpaper {
	position: absolute;
	top: -20px;
	left: 1px;
}
.special-block .dl-content ul.wallpaper li.i-2 .dl-description.wallpaper {position: absolute; top: -20px; left: 318px;}
.special-block .dl-content .dl-description.foot {position: absolute; top: 879px; left: -4px; font-size: 12px;line-height: 1.5;}

.special-block ul.icon .char-zoom-in {
    display: block;
    position: absolute;
    top: 159px;
    height: 84px;
    width: 84px;
    z-index: 12;
}
.special-block ul.icon li.i-1 .char-zoom-in {left: 0;}
.special-block ul.icon li.i-2 .char-zoom-in {left: 108px;}
.special-block ul.icon li.i-3 .char-zoom-in {left: 216px;}
.special-block ul.icon li.i-4 .char-zoom-in {left: 324px;}
.special-block ul.icon li.i-5 .char-zoom-in {left: 432px;}
.special-block ul.icon li.i-6 .char-zoom-in {left: 540px;}

.special-block ul.banner .char-zoom-in {
    display: block;
    position: absolute;
    top: 306px;
    height: 84px;
    width: 84px;
    z-index: 12;
}
.special-block ul.banner li.i-1 .char-zoom-in {left: 0;}
.special-block ul.banner li.i-2 .char-zoom-in {left: 108px;}
.special-block ul.banner li.i-3 .char-zoom-in {left: 216px;}
.special-block ul.banner li.i-4 .char-zoom-in {left: 324px;}
.special-block ul.banner li.i-5 .char-zoom-in {left: 432px;}
.special-block ul.banner li.i-6 .char-zoom-in {left: 540px;}

.special-block ul.wallpaper .char-zoom-in {
    display: block;
    position: absolute;
    top: 50px;
    z-index: 12;
}
.special-block ul.wallpaper li.i-1 .char-zoom-in {left: 0; width: 290px;}
.special-block ul.wallpaper li.i-2 .char-zoom-in {left: 322px; width: 299px;}

.special-block .gl-details {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.special-block .gl-details .gl-content {
    margin: 0 0 0 554px;
    position: relative;
}
.special-block .gl-name {
    display: none
}
.special-block .gl-description {
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    font-size: 15px;
    line-height: 2;
    margin: 29px 0 0;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}

.special-block .gl-content h2.title {position: absolute;top:42px;left: -32px;}
.special-block .gl-content .gl-description.movie {position: absolute; top: 129px; left: -4px;}
.special-block .gl-content .gl-description.movie2 {position: absolute; top: 129px; left: 162px; letter-spacing: -1px;}
.special-block .gl-content ul.movie {position: absolute; top: 198px;}
.special-block .gl-content .gl-description.eventgraphic {
	position: absolute;
	top: 125px;
	left: -6px;
}
.special-block .gl-content ul.eventgraphic {position: absolute; top: -100px;}

.special-block ul.movie {
    display: block;
    /*
    height: 86px;
    width: 152px;
    */
    z-index: 12;
}
.special-block ul.movie figure {
    margin-bottom: 5px;
}
.special-block ul.movie li { position: absolute; width: 152px; }
.special-block ul.movie li.i-1 { left: 0; }
.special-block ul.movie li.i-2 { left: 166px; }
.special-block ul.movie li.i-3 { left: 332px; }
.special-block ul.movie li.i-4 { left: 498px; }

.special-block ul.eventgraphic .char-zoom-in {
    display: block;
    position: absolute;
    top: 306px;
    height: 86px;
    width: 152px;
    z-index: 12;
}
.special-block ul.eventgraphic li.i-1 .char-zoom-in {left: 0;}
.special-block ul.eventgraphic li.i-2 .char-zoom-in {left: 166px;}
.special-block ul.eventgraphic li.i-3 .char-zoom-in {left: 332px;}
.special-block ul.eventgraphic li.i-4 .char-zoom-in {left: 498px;}
.special-block ul.eventgraphic li.i-5 .char-zoom-in {top: 406px; left: 0;}
.special-block ul.eventgraphic li.i-6 .char-zoom-in {top: 406px; left: 166px;}
.special-block ul.eventgraphic li.i-7 .char-zoom-in {top: 406px; left: 332px;}
.special-block ul.eventgraphic li.i-8 .char-zoom-in {top: 406px; left: 498px;}
.special-block ul.eventgraphic li.i-9 .char-zoom-in {top: 506px; left: 0;}
.special-block ul.eventgraphic li.i-10 .char-zoom-in {top: 506px; left: 166px;}
.special-block ul.eventgraphic li.i-11 .char-zoom-in {top: 506px; left: 332px;}
.special-block ul.eventgraphic li.i-12 .char-zoom-in {top: 506px; left: 498px;}
.special-block ul.eventgraphic li.i-13 .char-zoom-in {top: 606px; left: 0;}
.special-block ul.eventgraphic li.i-14 .char-zoom-in {top: 606px; left: 166px;}
.special-block ul.eventgraphic li.i-15 .char-zoom-in {top: 606px; left: 332px;}
.special-block ul.eventgraphic li.i-16 .char-zoom-in {top: 606px; left: 498px;}

.special-block .ms-details {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.special-block .ms-details .ms-content {
    margin: 0 0 0 554px;
    position: relative;
}
.special-block .ms-name {
    display: none
}
.special-block .ms-description {
    font-family: 黑体,Simhei,,"MS Mincho", "メイリオ", Meiryo, sans-serif;
    font-size: 15px;
    line-height: 2;
    margin: 29px 0 0;
    text-shadow: 2px 2px 1px #000,  -2px 2px 1px #000,  2px -2px 1px #000,  -2px -2px 1px #000;
}

.special-block .ms-content h2.title { position: absolute;top:42px;left: -32px; }
.special-block .ms-content .ms-description { position: absolute; top: 129px; left: 0; }
.special-block .ms-content .ms-description .ttl { margin-left: -4px; }
.special-block .ms-content .ms-description .artist1 { margin: 14px 0 0 -2px; }
.special-block .ms-content .ms-description .btn { margin-left: -1px; }
.special-block .ms-content .ms-description .btn a { cursor: pointer; }
.special-block .ms-content .ms-description .btn img { margin: 25px 28px 0 0; }
.special-block .ms-content .ms-description figure { position: absolute; top: 15px; right: 40px; }
.special-block .ms-content .ms-description .tx { display: block; margin: 25px 0 0 -4px; width: 630px; line-height:1.5; }
.special-block .ms-content .ms-description .tx span { color: #eaa1a2; }
.special-block .ms-content .ms-description .artist2 { margin: -10px 0 -12px -18px; }

.special-block .dl-content ul li img,
.special-block .gl-content ul li img,
.special-block .ms-content ul li img {
    max-width: 100%;
}

.campaign-page #header .campaign-cover {
    background: url("../images/top_cover_campaign.jpg") 0 0 no-repeat;
    height: 100vh;
}
.campaign-page #header h2 {
    padding: 43px 0 0 56px;
}
.campaign-page #header ul.banner {
    padding: 0 100px;
}
.campaign-page #header ul.banner li {
    float: left;
    padding: 60px 67px 0 0;
}
.campaign-page #header ul.banner li:nth-child(3n) {
    padding: 60px 0 0 0;
}

.campaign-page #header ul.banner li img {
    -webkit-box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.5);
    -moz-box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.5);
    box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.5);
}

/* benefit page */

#wrap .benefit-bg {
    position: absolute;
    width: 100%;
    height: 200px;
    top: 0;
    background: url("../images/top_cover_benefit.png") no-repeat center;
}

.benefit-page #header .benefit-cover {
    /*height: 100vh;*/
}

.benefit-page #header h2 {
    padding: 43px 0 0 56px;
}
.benefit-page #header h3 {
    width: 876px;
    margin: 55px auto 0;
}
.benefit-page #header ul.info {
    width: 876px;
    margin: 0 auto 40px;
    background: #000 url(../images/benefit_info_bg.png) right -1px bottom -1px no-repeat;
    border: 1px #342e42 solid;
    border-top: none;
    padding: 45px 0 40px;
    box-sizing: border-box;
}
.benefit-page #header ul.info.nobg {
    background: #000;
}
.benefit-page #header ul.info li {
    position: relative;
    display: table-cell;
    width: 312px;
    padding: 0 0 0 56px;
    box-sizing: border-box;
}
.benefit-page #header ul.info li.last1 {
    width: 564px;
    padding: 0 16px 20px 56px;
}
.benefit-page #header ul.info li.last2 {
    width: 564px;
    padding: 0 56px 20px 6px;
}
.benefit-page #header ul.info li figure {
    position: absolute;
    top: 0;
    right: 0;
}
.benefit-page #header ul.info li div.buy {
    position: absolute;
    top: 225px;
    right: 0;
    width: 220px;
}
.benefit-page #header ul.info li div.buy p.ttl {
    position: absolute;
    top: 0;
    left: 0;
}
.benefit-page #header ul.info li div.buy p.btn {
    display: block;
    margin-top: 7px;
}
.benefit-page #header ul.info li div.buy p.btn.uc {
    filter: alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
}
.benefit-page #header ul.info li p.ttl {
    font-size: 24px;
    color: #fab9e1;
}
.benefit-page #header ul.info li p.lead {
    margin-top: 20px;
    font-size: 14px;
    font-weight: bold;
}
.benefit-page #header ul.info li p.lead em {
    font-size: 18px;
    color: #e10000;
    font-style: normal;
}
.benefit-page #header ul.info li p.tx {
    margin-top: 25px;
    font-size: 95%;
    line-height: 1.8;
}
.benefit-page #header ul.info li p.name {
    padding-right: 56px;
    text-align: center;
}
.benefit-page #header ul.info li.last2 p.btn {
    /*
    position: absolute;
    right: 57px;
    bottom: 24px;
    */
    width: 100%;
    text-align: right;
    margin-top: 5px;
}
.benefit-page #header ul.info li.last2 p.btn.uc {
    filter: alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
}
.benefit-page #header hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #666;
    margin: 0 auto;
    padding:0;
    width: 762px;
}

/* dlc page */

#wrap-dlc {
    background: url(../images/bg.jpg);
}

#wrap-dlc .dlc-bg {
    position: absolute;
    width: 100%;
    height: 200px;
    top: 0;
    background: url("../images/top_cover_dlc.png") no-repeat -168px;
}

.dlc-page #header .dlc-cover {
    width: 876px;
    margin: 0 auto;
}

.dlc-page #header h2 {
    padding: 43px 0 0;
}
.dlc-page #header p.note {
    margin: 28px auto -20px;
    font-size: 12px;
}
.dlc-page #header p.note a {
    color: #fff;
    text-decoration: underline;
}
.dlc-page #header h3 {
    margin: 55px auto 0;
}
.dlc-page #header ul.info {
    width: 876px;
    background: #000;
    border: 1px #342e42 solid;
    border-top: none;
    box-sizing: border-box;
    margin-bottom: 120px;
}
.dlc-page #header ul.info li {
    height: 391px;
    position: relative;
    box-sizing: border-box;
}
.dlc-page #header ul.info li figure.icon {
    position: absolute;
    top: 40px;
    left: 36px;
    width: 165px;
    height: 165px;
}
.dlc-page #header ul.info li figure.icon img { width: 100%; }
.dlc-page #header ul.info li .desc {
    width: 600px;
    position: absolute;
    top: 40px;
    left: 240px;
}
.dlc-page #header ul.info li .desc .ttl {
    font-size: 16px;
}
.dlc-page #header ul.info li .desc .date {
    font-size: 12px;
}
.dlc-page #header ul.info li .desc .tx {
    font-size: 12px;
    line-height: 1.8;
    margin-top: 30px;
}
.dlc-page #header ul.info li .desc figure.screenshot {
    margin-top: 30px;
    box-sizing: border-box;
}
.dlc-page #header ul.info li .desc figure.screenshot img:nth-child(2n+1) { width: 295px; margin-right: 15px; }
.dlc-page #header ul.info li .desc figure.screenshot img:nth-child(2n+2) { width: 290px; }
.dlc-page #header ul.info li .desc figure.screenshot img { width: 100%; }
.dlc-page #header hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #666;
    margin: 0 auto;
    padding:0;
    width: 802px;
}

/*==================================================

	#footer

==================================================*/

#footer .bnr_area {
    width: 900px;
    margin: 0 auto;
    padding: 37px 0;
}
#footer .bnr_area li {
    float: left;
    margin-right: 8px;
}
#footer .bnr_area li:last-child {
    margin-right: 0;
}
#footer .btm {
    height: 85px;
    background: #000;
}
#footer .btm p {
    padding-top: 27px;
}

/* オープニングムービー */

#opening_movie {
	width: 100%;
	height: 100%;
	background: url("../images/movie_back_01.png");
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
}

#main.special #opening_movie {
	display: none;
}

#youtube, #youtube1, #youtube2 {
	margin: -267px 0 0 -381px;
	width: 762px;
	height: 534px;
	/*overflow: hidden;*/
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 100001;
}

#main.special #youtube {
	display: none;
}

#youtube .close, #youtube1 .close, #youtube2 .close {
    position: absolute;
    top: -18px;
    right: -7px;
    /*
	padding: 40px 0 0 0;
	text-align: center;
    */
}

#youtube .close img, #youtube1 .close img, #youtube2 .close img {
	/*margin: 0 auto;*/
}

#special_movie1, #special_movie2, #special_movie3, #special_movie4 {
	width: 100%;
	height: 100%;
	background: url("../images/movie_back_01.png");
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
}

#niconico1, #niconico2 {
	margin: -267px 0 0 -381px;
	width: 762px;
	height: 534px;
	/*overflow: hidden;*/
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 100001;
}

#niconico1 .close, #niconico2 .close {
    position: absolute;
    top: -18px;
    right: -7px;
    /*
	padding: 35px 0 0 0;
	text-align: center;
    */
}

#niconico1 .close img, #niconico2 .close img {
	/*margin: 0 auto;*/
}

#voice {
	margin: -228px 0 0 -381px; /* margin: height×0.5 0 0 width×0.5 */
	width: 762px;
	height: 456px;
	/*overflow: hidden;*/
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 100001;
}

#voice .close {
	padding: 40px 0 0 0;
	text-align: center;
}

#voice .close img {
	margin: 0 auto;
}

.white-popup.cdv {
  position: relative;
  background: none;
  padding: 0;
  width: 762px;
  max-width: 762px;
  margin: 20px auto;
  text-align: center;
}
.white-popup.cdv .cdv_btn {
    position: absolute;
    top: 346px;
    left: 404px;
    width: 296px;
    height: 86px;
    z-index: 9999;
    /*background: rgba(0,255,255,0.8);*/
}
.white-popup.cdv .cdv_close {
    position: absolute;
    right: 13px;
    bottom: 11px;
    width: 30px;
    height: 30px;
    z-index: 9999;
    /*background: rgba(0,255,255,0.8);*/
}

.comingsoon {
    filter: alpha(opacity=40) !important;
    -moz-opacity: 0.4 !important;
    opacity: 0.4 !important;
}
.comingsoon:hover {
    filter: alpha(opacity=40) !important;
    -moz-opacity: 0.4 !important;
    opacity: 0.4 !important;
}
