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

/*===================================================================
				=基本(初期デフォルト化含む)
===================================================================*/

/********************************
	=*(初期化)
********************************/

@media screen and ( min-width : 1200px )  {
html,body{
    width: 100%;
    }
}

*{
	margin: 0;
	padding: 0;
}

html , body {
	height:	100%;
	margin:	0px;
	font-family: Verdana , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , sans-serif;
    -webkit-font-smoothing: subpixel-antialiased;;
	-moz-osx-font-smoothing: grayscale;

}

article, aside, div, dt, figcaption, footer, form, header, hgroup, html, map, nav, section, menu {
    display: block;
}

address, article, aside, blockquote, body, caption, center, col, colgroup, dd, dir, div, dl, dt, fieldset, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, hr, html, li, listing, map, marquee, menu, nav, noframes, ol, p, plaintext, pre, section, table, tbody, td, tfoot, th, thead, tr, ul, xmp {
	unicode-bidi: embed;
	color: #333;
	font-size: 12px;
}

li {
	list-style-type: none;
}

.youtube img {
	vertical-align: bottom;
}

clear {
    clear:both;
}



/********************************
		=img(border消し)
********************************/
img {
	border: none;
}

baseimg {
	z-index: 1;

}

/********************************
		=a(link)
********************************/

a:link {
	text-decoration: none;
    outline: none;
}

a:visited {
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

a:active {
	text-decoration: none;
}

.over, #female, #male {
    cursor: pointer;
}

/********************************
		=video
********************************/

video {display:block;}
 
#bg-video {
    position:fixed;
    right:0;
    bottom:0;
    min-width:100%;
    min-height:100%;
    width:auto;
    height:auto;
    z-index:-100;
    border: 0;
}

/********************************
		=new icon
********************************/

#index .new {
	width: 60px;
	height: 25px;
	position: absolute;
	background-image: url(../img/new_top.png);
    z-index: 999;
}
.link_about .new, .link_story .new {
	left: 512px;
	top: 190px;
}

.link_character .new {
	left: 20px;
	top: 115px;
}

.link_special .new, .link_system .new {
	left: 20px;
	top: 100px;
}

.link_movie .new {
	left: 25px;
	top: 100px;
}

.link_support .new {
	left: 30px;
	top: 100px;
}

.pjax .new {
	width: 30px;
	height: 14px;
	position: absolute;
	background-image: url(../img/new_sub.png);
    z-index: 999;
    top: 5px;
   	left: -20px;
}

.pjax .new02 {
	width: 30px;
	height: 14px;
	position: absolute;
	background-image: url(../img/new_sub.png);
    z-index: 999;
    top: 5px;
   	left: -35px;
}

#about .new {
	width: 60px;
	height: 25px;
    top: 30px;
    left: 100px;
	position: absolute;
	background-image: url(../img/new_top.png);
    z-index: 999;
}

#character .details .new {
	width: 60px;
	height: 25px;
    top: 60px;
    left: 90px;
	position: absolute;
	background-image: url(../img/new_top.png);
    z-index: 999;
}

#movie .new {
	width: 60px;
	height: 25px;
    top: -30px;
    left: 0;
	position: absolute;
	background-image: url(../img/new_top.png);
    z-index: 999;
}



/*===================================================================
				= Javascript css
===================================================================*/

/********************************
		= submenu
********************************/

.c_chapter, .s_menu, .story_menu, .sys_menu, .chara_menu {
    width: 100%;
    height: 38px;
	background: url(../img/bg_blue.png) 0 0 repeat-y;
    float: left;
    z-index: 99;
}

#novel .story_menu {
    width: 100%;
    height: 38px;
	background: url(../img/bg_pink.png) 0 0 repeat-y;
    float: left;
    z-index: 99;
}


/*----- chapter -----*/
.c_chapter ul {
    margin-left: 352px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.c_chapter li, .s_menu li {
    width: 116px;
    height: 28px;
    text-align: left;
    float: left;
    z-index: 999;
}

.c_chapter li.c02, .c_chapter li.c03 {
    margin-left: 94px;
}

/*----- system -----*/

.sys_menu ul {
    margin-left: 278px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.sys_menu li {
    height: 28px;
    text-align: left;
    float: left;
    z-index: 999;
    position: relative;
}

.sys_menu li.c01 {
    width: 124px;
    margin-left: 0px;
}

.sys_menu li.c02 {
    width: 168px;
    margin-left: 58px;
}

.sys_menu li.c03 {
    width: 121px;
    margin-left: 58px;
}

.sys_menu li.c04 {
    width: 191px;
    margin-left: 58px;
}

.sys_menu li.c_non  {
  	background: url(../img/n_00.png) 0 center no-repeat;
    width: 156px;
    margin-left: 58px;
}

/*----- story -----*/

.story_menu ul {
    margin-left: 310px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.story_menu li {
    height: 28px;
    text-align: left;
    float: left;
    z-index: 999;
    width: 130px;
    margin-right: 20px;
    position: relative;
}

.story_menu li.c_non  {
  	background: url(../img/n_00.png) 0 center no-repeat;
    width: 130px;
    margin-left: 0px;
}

/*----- character -----*/

.chara_menu ul {
    margin-left: 235px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.chara_menu li {
    height: 28px;
    text-align: left;
    float: left;
    z-index: 999;
    width: 130px;
    margin-right: 20px;
    position: relative;
}

.chara_menu li.c_non  {
  	background: url(../img/n_00.png) 0 center no-repeat;
    width: 130px;
    margin-left: 0px;
}

/*----- special -----*/

.s_menu ul {
    margin-left: 326px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.s_menu li {
    height: 28px;
    text-align: left;
    float: left;
    z-index: 999;
    width: 122px;
    margin-right: 20px;
    position: relative;

}
/*----- special -----*/

.s_menu ul {
    margin-left: 307px;
    margin-top: 5px;
    z-index: 99;
    float: left;
}

.s_menu li.c01, .s_menu li.c02, .s_menu li.c04 {
    width: 122px;
    margin-left: 20px;
}

.s_menu li.c01 {
    margin-left: 0;
}

.s_menu li.c03 {
    width: 140px;
    margin-left: 20px;
}

.s_menu li.c_non  {
  	background: url(../img/n_00.png) 0 center no-repeat;
    width: 130px;
    margin-left: 20px
}


/********************************
		= character
********************************/


/*----- スライドアニメーション -----*/

.animation01 {
    opacity: 0;
    transform: translate(-80px, 0);
    -webkit-transform: translate(-80px, 0);
    position: absolute;
}

.animation02 {
    opacity: 0;
    transform: translate(0px, 0);
    -webkit-transform: translate(0px, 0);
    position: absolute;
}

.fadeBg{
    opacity: 1.0;
    transition: 3s;
}
   
.fadeIn{
    opacity: 1.0;
    transition: 2s;
}

.slideIn_r {
	opacity: 1.0;
	transform: translate(-40px, 0);
	-webkit-transform: translate(-40px, 0);
	transition: 2s;
} 

.slideOut_r {
	opacity: 0;
	transform: translate(0, 0);
	-webkit-transform: translate(, 0);
	transition: 1s;
}    
  
.slideIn_l {
	opacity: 1.0;
	transform: translate(-40px, 0);
	-webkit-transform: translate(-40px, 0);
	transition: 2s;
}

.slideOut_l {
	opacity: 0;
	transform: translate(-80px, 0);
	-webkit-transform: translate(-80px, 0);
	transition: 2s;
}       

/*----- サイドナビゲーション -----*/

#c_nav {
    position: fixed;
    top: 200px;
    right: 30px;
    width: 47px;
}

#c_nav li {
    background-image: url(../img/character/s_chara_00.png);
    width: 47px;
    height: 51px;
}

#c_nav li.on {
    background-image: url(../img/character/s_chara_01.png);
    width: 47px;
    height: 51px;
}

/* #pageNav
--------------------------- */
#pageNav {
    top: 0;
    right: 25px;
    width: 15px;
    text-align: center;
    position: fixed;
    z-index: 9999;
}
#pageNav ul {
    width: 47px;
    display: block;
}
#pageNav ul li {
    padding-bottom: 5px;
    width: 47px;
    height: 51px;
    display: block;
    overflow: hidden;
}
#pageNav ul li a {
    width: 47px;
    height: 51px;
    background: transparent url(../img/s_select_00.png) no-repeat center center;
    display: block;
}
#pageNav ul li.activeStage a {
    background: transparent url(../img/s_select_01.png) no-repeat center center;
}

/********************************
		= contentsSlider
********************************/

.swiper-prev {
  display: block;
  background: url(../img/arrow.png) no-repeat left bottom;
  position: absolute;
  left: 10px;
  top: 300px;
  width: 40px;
  height: 90px;
  z-index: 9999;
  cursor: pointer;

}

.swiper-next {
  display: block;
  background: url(../img/arrow.png) no-repeat left top;
  position: absolute;
  left: 1157px;
  top: 300px;
  width: 40px;
  height: 90px;
  z-index: 9999;
  cursor: pointer;
}

#about .swiper-pagination {
    top: 640px;
    position: absolute;
    padding-left: 10px;
    text-align: center;
    width: 100%;
}
 
.swiper-pagination-switch {
	display: inline-block;
	width: 47px;
	height: 51px;
	margin: 0 4px;
	background: url(../img/s_select_00.png) no-repeat left bottom;
	cursor: pointer;
	transition: all .25s linear;
}
 
.swiper-active-switch {
	background: url(../img/s_select_01.png) no-repeat left bottom;
}

#system .swiper-pagination, #character .swiper-pagination {
    top: 600px;
    position: absolute;
    padding-left: 10px;
    text-align: center;
    width: 100%;
    z-index: 9999;
}

#dlc .swiper-pagination {
    bottom: 0;
    position: absolute;
    padding-left: 10px;
    text-align: center;
    width: 100%;
}

#dlc .swiper-prev {
  display: block;
  background: url(../img/arrow.png) no-repeat left bottom;
  position: absolute;
  left: 10px;
  top: 100px;
  width: 40px;
  height: 90px;
  z-index: 9999;
  cursor: pointer;

}

#dlc .swiper-next {
  display: block;
  background: url(../img/arrow.png) no-repeat left top;
  position: absolute;
  left: 1157px;
  top: 100px;
  width: 40px;
  height: 90px;
  z-index: 9999;
  cursor: pointer;
}