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

/* clearfix */

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}

/* 画像センタリング */

.cr {margin:0 auto;}

.cr16 {margin:16px auto;}

.cr32 {margin:32px auto;}

body.fixed .menu_fix {
	margin-bottom:100px;
}

body.fixed #Menu {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 8888;
}


/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}


/* ページトップ */

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 1.4em;
	font-weight:bold;
	z-index:10000;
}
#page-top a {
	background: #eb6d9a;
	text-decoration: none;
	color: #fff;
	width: 100px;
	padding: 30px 0;
	text-align: center;
	display: block;
	border-radius: 10px;
}
#page-top a:hover {
	text-decoration: none;
	background: #ff3980;
}

/* FireFoxFadeブレ防止 */

img { display:block; box-shadow: #000 0 0 0; }


/* 全体・枠作り */

html,body {
	height:100%;
}

html {
	font-size:62.5%;
}

img { display:block; }

body {
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, sans-serif;
	text-align:center;
	background:url(../img/grand_bg.jpg) left top repeat;
	font-size:1.0rem;
}


#PageWrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	position: relative;
	width:100%;	
	min-width:1000px;
}

header {
	background:url(../img/head_bg.jpg) left top repeat-x;
	width:100%;
	height:100px;
	position:fixed;
	z-index:100;
}

header h1, header h2 {
	display:none;
}

.head_wrap {
	width:1000px;
	height:100px;
	margin:0 auto;
	
}

.head_wrap ul li {
	float:left;
}

#Mainvisual {
	background:url(../img/mainvisual_bg.jpg) center top no-repeat;
	background-size:cover;
	width:100%;
	height:900px;
}

.visual_img {
	background:url(../img/mainvisual.jpg) center top no-repeat;
	width:100%;
	height:900px;
	position:relative;
	margin:0 auto;
}

.yoyakubadge {
	background:url(../img/yoyaku.png) left top no-repeat;
	width:201px;
	height:256px;
	position:absolute;
	right:50%;
	margin-right:-400px;
	top:400px;
}

#Topics {
	width:1000px;
	height:200px;
	margin:48px auto 36px;
}

#Topics ul li {
	float:left;
}

.mr23 {
	margin-right:23px;
}

#News {
	width:1000px;
	background:url(../img/backlog.jpg) left top no-repeat;
	height:241px;
	position:relative;
	margin:0 auto 36px;
}

.rireki {
	padding-top:67px;
	padding-left:24px;
	width:952px;
}

.rireki ul li {
	width:952px;
	line-height:30px;
	color:#e5e5e5;
	font-size:1.5rem;
	text-align:left;
}

.rireki ul li span {
	font-weight:bold;
	display:inline-block;
	padding:0 24px;
}

#Info {
	background:url(../img/productinfo.jpg) left top no-repeat;
	width:1000px;
	height:210px;
	position:relative;
	margin:0 auto 0;
	padding-bottom:160px;
}

.staff {
	width:400px;
	color:#fff;
	line-height:34px;
	padding-top:64px;
	font-size:1.5rem;
	float:left;
	padding-left:270px;
	margin-right:20px;
}

.staff dl {
	clear:both;
}

.staff dl dt {
	width:240px;
	float:left;
	text-align:right;
}

.staff dl dd {
	width:160px;
	float:left;
	text-align:left;
	font-weight:bold;
}

.spec {
	width:280px;
	color:#fff;
	line-height:27px;
	padding-top:64px;
	font-size:1.3rem;
	float:left;
}

.spec dl {
	clear:both;
}

.spec dl dt {
	width:120px;
	float:left;
	text-align:right;
}

.spec dl dd {
	width:160px;
	float:left;
	text-align:left;
}

footer {
	width:100%;
	height:100px;
	position: absolute;
	bottom: 0;
	*left:-1px;
	background:url(../img/foot_bg.jpg) left top repeat-x;
}

.foot_wrap {
	position:relative;
	width:1000px;
	padding-top:20px;
	height:80px;
	margin:0 auto;
}

.banner {
	width:200px;
	height:40px;
	background:#fff;
	margin-top:10px;
}

.copyright {
	background:url(../img/copyright.png) left top no-repeat;
	width:358px;
	height:18px;
	position:absolute;
	top:41px;
	left:50%;
	margin-left:-179px;
}

.rttp {
	position:absolute;
	left:924px;
	top:10px;
}

* html footer {
	bottom:expression(document.getElementById("PageWrapper").offsetHeight % 2 == 0 ? 0 : -1);
}


#Story {
	background:url(../sub/story_bg.png) center top no-repeat;
	width:100%;
	height:903px;
	text-indent:-9999px;
	overflow:hidden;
	margin:0 auto 0;
	padding-bottom:160px;
}

.head_character {
	background:url(../sub/head_character.png) left top no-repeat;
	width:599px;
	height:110px;
	margin:4px auto 0;
	text-indent:-9999px;
	overflow:hidden;
}

.head_gallery {
	background:url(../sub/head_gallery.png) left top no-repeat;
	width:599px;
	height:110px;
	margin:4px auto 0;
	text-indent:-9999px;
	overflow:hidden;
}

.head_download {
	background:url(../sub/head_download.png) left top no-repeat;
	width:599px;
	height:110px;
	margin:4px auto 0;
	text-indent:-9999px;
	overflow:hidden;
}

.head_special {
	background:url(../sub/head_special.png) left top no-repeat;
	width:599px;
	height:110px;
	margin:4px auto 0;
	text-indent:-9999px;
	overflow:hidden;
}

.chara_wrap {
	width:1000px;
	height:500px;
	padding-top:180px;
	margin:0 auto 48px;
	position:relative;
}

.chara_wrap_mini {
	width:1000px;
	height:400px;
	padding-top:180px;
	margin:0 auto 48px;
	position:relative;
}

.chara01_bg {
	background:url(../sub/chara/chara01_bg.jpg) left top no-repeat;
	width:1000px;
	height:500px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara02_bg {
	background:url(../sub/chara/chara02_bg.jpg) left top no-repeat;
	width:1000px;
	height:500px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara03_bg {
	background:url(../sub/chara/chara03_bg.jpg) left top no-repeat;
	width:1000px;
	height:400px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara04_bg {
	background:url(../sub/chara/chara04_bg.jpg) left top no-repeat;
	width:1000px;
	height:400px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara05_bg {
	background:url(../sub/chara/chara05_bg.jpg) left top no-repeat;
	width:1000px;
	height:400px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara06_bg {
	background:url(../sub/chara/chara06_bg.jpg) left top no-repeat;
	width:1000px;
	height:400px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.chara07_bg {
	background:url(../sub/chara/chara07_bg.jpg) left top no-repeat;
	width:1000px;
	height:400px;
	border-radius:15px;
	overflow:hidden;
	text-indent:-9999px;
}

.stand01 {
	width:400px;
	height:680px;
	background:url(../sub/chara/stand_01a.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.stand02 {
	width:400px;
	height:680px;
	background:url(../sub/chara/stand_02a.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.stand03 {
	width:436px;
	height:580px;
	background:url(../sub/chara/stand_03.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.stand04 {
	width:436px;
	height:580px;
	background:url(../sub/chara/stand_04.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.stand05 {
	width:436px;
	height:580px;
	background:url(../sub/chara/stand_05.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.stand06 {
	width:436px;
	height:580px;
	background:url(../sub/chara/stand_06.png) left top no-repeat;
	position:absolute;
	right:0;
	top:0;
	z-index:30;
}

.visualchange {
	position:absolute;
	left:0;
	top:120px;
	z-index:50;
	height:28px;
}

.visualchange p span {
	font-family: 'Coda', cursive;
	font-size:2rem;
	color:#fff;
	line-height:28px;
	height:28px;
	overflow:hidden;
	display:inline-block;
}

.visualchange p a {
	font-family: 'Coda', cursive;
	font-size:1.4rem;
	text-decoration: none;
	color:#fff;
	line-height:24px;
	height:24px;
	width:140px;
	overflow:hidden;
	display:inline-block;
	border:2px solid #fff;
	margin-left:24px;
	transition: all 0.3s;
}

.voice_area {
	position:absolute;
	left:50%;
	margin-left:-460px;
	top:424px;
	z-index:30;
}

.voice_area a {
	display:inline-block;
	text-decoration:none;
	margin-right:16px;
	border:2px solid #fff;
	box-shadow:0 0 5px rgba(0,0,0,1);
	position:relative;
	width:40px;
	height:40px;
	color:#fff;
	border-radius:22px;
	line-height:40px;
	font-family: 'Russo One', sans-serif;
	background-color:#c80c32;
	transition:all 0.3s;
}

.voice_area a:after {
	content:"";
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-right: 0px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 16px solid rgba(255,255,255,1);
	position:absolute;
	left:13px;
	top:10px;
}

.voice_area a:hover {
	background-color:#FFBFD2;
}


.visualchange a:hover {
	color:#8900FF;
	border:2px solid #8900FF;
}

/* ギャラリー */

.gallery_wrap {
	width:990px;
	margin:36px auto 0;
	padding-bottom:180px;
}

.gallery_wrap ul li {
	width:300px;
	height:169px;
	padding:0 15px;
	margin-bottom:20px;
	float:left;
}

.gallery_wrap ul li a {
	width:300px;
	height:169px;
	display: block;
	position:relative;
	background-color:#fff;
	box-shadow: 0 0 5px rgba(0,0,0,0.3);
}

.gallery_wrap ul li a figcaption {
	width:300px;
	height:169px;
	display: block;
	box-shadow:0 0 0px rgba(255,255,255,0) inset;
	position:absolute;
	left:0;
	top:0;
	z-index:50;
	transition: all 0.3s;
}

.gallery_wrap ul li a:hover figcaption {
	box-shadow:0 0 40px rgba(255,255,255,1) inset;
}

.gallery_wrap ul li span {
	background:url(../img/new_bg.png) left top no-repeat;
	width:58px;
	height:58px;
	-webkit-animation: spin 3s linear infinite;
    animation: spin 3s linear infinite;
	display: block;
	position:absolute;
	right:0;
	top:-25px;
	z-index:40;
}

.mr50 {
	margin-right:50px;
}

.yoyaku_bg {
	background:url(../special/preorder.png) left top no-repeat;
	width:1000px;
	height:649px;
	text-indent:-9999px;
	overflow:hidden;
	margin:0 auto 60px;
	padding-bottom:160px;
}

/* DOWNLOAD */

.demobox {
	width:800px;
	height:450px;
	margin:16px auto 0;
}

.download_table {
	width:800px;
	margin:0 auto;
	padding-bottom:200px;
}

.download_table {
	width:800px;
	margin:36px auto 0;
}

.download_table table {
	background-color:#dcdcf6;
}

.download_table table th {
	height:24px;
	width:200px;
	background-color:#777777;
	border:1px solid #b5b5b5;
	font-size:1.3em;
	color:#ffffff;
	text-align:center;
	padding-right:10px;
}

.download_table table td {
	height:24px;
	width:200px;
	background-color:#3b3b3b;
	border:1px solid #b5b5b5;
	font-size:1.4em;
	text-align:left;
	padding:8px 0 8px 0;
	color:#ffffff;
	line-height:1.5;
	text-align:center;
}

a.download {
	width:180px;
	height:27px;
	padding-top:3px;
	display:block;
	margin:0 auto;
	background-color:#2777ee;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-khtml-border-radius: 15px;	
	border-radius: 15px;
	border-style: none;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	text-align:center;
}

a:hover.download {
	background-color:#77adff;
}

.heya_talkwrap {
	width:780px;
	margin:0 auto;
}

.heya_talkwrap th {
	width:150px;
}

.heya_talkwrap td.fude{
	width:580px;
	height:120px;
	padding:26px 5px 26px 45px;
	background:url(../special/heya/fuki_fude.png) center center no-repeat;
	text-align:left;
	font-size:1.5em;
}

.heya_talkwrap td.ika{
	width:630px;
	height:130px;
	padding:26px 5px 26px 45px;
	background:url(../special/heya/fuki_ika.png) center center no-repeat;
	text-align:left;
	font-size:1.5em;
}


/* DOWNLOAD */

.demobox {
	width:800px;
	height:450px;
	margin:16px auto 0;
}

.download_table {
	width:800px;
	margin:0 auto;
}

.download_table {
	width:800px;
	margin:36px auto 0;
}

.download_table table {
	background-color:#dcdcf6;
}

.download_table table th {
	height:24px;
	width:200px;
	background-color:#777777;
	border:1px solid #b5b5b5;
	font-size:1.3em;
	color:#ffffff;
	text-align:center;
	padding-right:10px;
}

.download_table table td {
	height:24px;
	width:200px;
	background-color:#3b3b3b;
	border:1px solid #b5b5b5;
	font-size:1.4em;
	text-align:left;
	padding:8px 0 8px 0;
	color:#ffffff;
	line-height:1.5;
	text-align:center;
}

a.download {
	width:180px;
	height:27px;
	padding-top:3px;
	display:block;
	margin:0 auto;
	background-color:#2777ee;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-khtml-border-radius: 15px;	
	border-radius: 15px;
	border-style: none;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	text-align:center;
}

.dlbutton {
	position:absolute;
	width:220px;
	height:110px;
	left:50%;
	margin-left:280px;
	top:550px;
}