@charset "shift_jis";

/* ========================================
	#contents
======================================== */

/* soft-title */
#soft-title {
	background: #000;
}
#soft-title h1 {
	min-width: 298px;
	padding: 8px;
	color: #FFF;
	border-left: 6px solid #F00;
	font-size: 12px;
}
#soft-title h1 .hard {
	margin-right: 8px;
	color: #F00;
}

/* main-inner */
#main-inner img {
	vertical-align: bottom;
}
.in-txt {
	position: relative;
}
.txt01 {
	position: absolute;
	top: 0;
}

/* main-visual */
.main-visual .mv01 {
	background: #000;
}
.main-visual .mv01 .txt {
	padding: 0 5% 4.375%;
	color: #FFF;
	font-size: 13px;
	line-height: 1.69;
}

/* article01 */
.article01 {
	position: relative;
	width: 100%;
	background: #fff;
}
.article01 .wrap {
	position: relative;
	width: 100%;
/*	background: #FFF;*/
}
.article01 .wrap p {
	position: absolute;
}
.article01 .wrap .bg {
	position: static;
}
.article01 .txt01 {
	top: 6.25%;
	left: 8.125%;
	width: 84.0625%;
}
.article01 .qbby01 {
	top: 59.375%;
	left: 29.6875%;
	width: 37.8125%;
}
.article01 .txt02 {
	top: 6.25%;
	left: 4.6875%;
	width: 89.6875%;
}
.article01 .qbby02 {
	top: 50.46875%;
	left: 29.6875%;
	width: 37.8125%;
	overflow: hidden;
}
.article01 .btn {
	top: 36.65625%;
	left: 39.0625%;
	width: 23.125%;
}

/* article02 */
.article02 {
	background: #F4F4F4;
}
.article02 .lead {
	padding: 4.375% 0;
}
.article02 .lead .chara {
	margin: 0 auto 3.125%;
	width: 35.3125%;
}
.article02 .lead .txt {
	padding: 0 5%;
	color: #000;
	font-size: 13px;
	line-height: 1.69;
}
.article02 .battle-field .wrap {
	position: relative;
	padding: 0 0 6.25%;
	background: #FFF;
}
.article02 .battle-field .btn-result{
	padding: 6.25% 4.6875%;
	background: #000;
}
.article02 .battle-field .battle-modal-wrap {
	display: none;
	position: absolute;
	top: 0;
}
.article02 .battle-field .modal-cls-btn {
	position: absolute;
	top: 75.9375%;
	left: 21.875%;
	width: 56.25%;
}
.article02 .battle04 .btn {
	background: #FFF;
	text-align: center;
	padding: 0 0 4.6875%;
}
.article02 .battle04 .btn img {
	width: 65.625%;
}

/* article03 */
.article03 .a03-btn01 {
	position: relative;
}
.article03 .a03-btn01 .btn {
	position: absolute;
	top: 76%;
	left: 37.96875%;
	width: 40%
}
.article03 .a03-btn02 {
	position: relative;
}
.article03 .a03-btn02 .btn {
	position: absolute;
	top: 45.8%;
	left: 22.65625%;
	width: 54.6875%
}

/* spec */
#spec {
	margin-bottom: 15px;
	padding-top: 20px;
	text-align: center;
}
#spec .back-btn {
	margin: 0 0 15px;
	text-align: center;
}
#spec .spec-border01 {
	padding: 15px 0 0;
	border-top: 1px solid #000;
}
#spec .logo {
	margin-bottom: 20px;
}
#spec .title {
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
}
#spec .hardware {
	margin-top: 14px;
	margin: 20px 0;
}
#spec .official {
	position: relative;
	width: 250px;
	margin: 0 auto 20px;
}
#spec .official a {
	display: block;
	border-radius: 8px;
	padding: 18px 0;
	color: #FFF;
	text-decoration: none;
	background-repeat: no-repeat;
	background-position: 226px center;
	background-size: 16px 16px;
	font-size: 15px;
}
#spec .official01 a {
	background-color: #FF6485;
	background-image: url(../img/official_arrow01.png);
}
#spec .official02 a {
	background-color: #000;
	background-image: url(../img/official_arrow02.png);
}
#spec .copy {
	display: block;
	padding: 0 10px;
	margin-bottom: 20px;
	color: #8C8C8C;
	text-align: center;
	font-size: 10px;
	line-height: 1.4;
}

/* clearfix */
.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

#modal #modal-close {
	position: relative;
	top: -62px;
	padding-top: 0;
}