@charset "utf-8";
/* CSS Document */

/* 全体設定 */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,table,th,td {
	margin:0;
	padding:0;
	font-size: 100%;
	font-weight: normal;
	list-style-type: none;
	-webkit-text-size-adjust: 100%;
	outline: none;
}

img,a img { border: none;
	vertical-align: text-bottom;
	-ms-interpolation-mode: bicubic;
	max-width:100%;
	outline: none;
}

a{
	text-decoration: none;
	outline: none;
}


/*--------------------body設定 */
body{
	background: #FFF url(../img/back_00.jpg) ;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

/*--------------------ヘッダー設定 */
header{background: #FFF;}


.main_img,.story,.chara,.system,.spec,.ft{
	text-align: center;
	margin: 0 auto;
}

/*--------------------詳細ボタン*/
.btn_act{
	display: block;
	margin: 0 auto;
}

.btn_act:hover{
	opacity: 0.7;
}



/* メインイメージ */
.main_img{
	background: url(../img/top_back.jpg) no-repeat center bottom;
	background-size: cover;
}



/*メインメニュー*/
.menu{
	width:1000px;
	height: 680px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}
.menu ul{
	position: absolute;
	bottom: 0px;
	left:108px;
}
.menu li{margin: 10px 0px; float: left;transition: 0.3s;}
.menu li:hover{opacity: .8;}


.dllink{
	display: block;
	position: absolute;
	bottom:120px;
	right: 2%;
	transition: 0.3s;
}
.dllink:hover{
	
	transform: scale(1.1)
}

/* YOUTUBE / スペック */
.spec{
	background: #FFF;
	padding: 15px 0px 30px;
	overflow: hidden;
}
.spec ul{
	width:1000px;
	margin: 0 auto;
}
.spec li{
	float:left;
	margin-left: 25px;
}



/* ストーリー */
.story{
	background: #FFF;
	height: 700px;
	overflow: hidden;
	text-align: center;
}
.story img{
	display: block;
	margin: 0 auto;
}

.single-item{
	width:860px;
	margin: 20px auto 0;
	background: url(../img/back_story.jpg) no-repeat center;
}



/* キャラクター */
.chara{
	overflow: hidden;
	margin-bottom: 10px;
	margin: 0;
}

.chara ul{
	width:900px;
	margin: 0 auto;
}
.chara li{
	float:left;
	margin: 0 0px 20px;
}




/* システム */
.system{
	background: #FFF url(../img/back_01.jpg);
	overflow: hidden;
}


/* フッター設定 */
footer{
	background: #31477b;
	padding: 10px;
	overflow:hidden;
	text-align: center;
	color:#FFF;
	font-size:20px;
	font-weight: bold;
	height: 560px;
}






/*アプリ詳細情報*/
.terminal{
	width: 680px;
	margin: 0 auto 20px;
	overflow: hidden;
}
.terminal li{
	float: left;}

/*コピーライト*/
.copy{
	color: #FFF;
	font-size: 10px;
	text-align: left;
}
.copy p{text-align: center;}
.psflogo{height: 12px;}
.pslogo{height: 14px;}

/* 上に戻るボタン */
.upbtn {
	display: block;
    position: fixed;
    bottom:150px;
    right: 20px;
    font-size: 77%;
}
.upbtn a {
    background: url(../img/up_btn.png) center no-repeat;
    text-decoration: none;
    color: #fff;
    width: 100px;
	height: 120px;
    text-align: center;
    display: block;
    border-radius: 5px;
	opacity: .5;
}
.upbtn a:hover {
	opacity: 1;
}

/*ポップアップ用*/
.scr_dl{
	text-align: center;
}
.scr_dl img{margin: 10px auto;}


/*DLモーダルウィンドウ========================================================================================================*/
#dl_btn{
	position: fixed;
	right: 0;
	bottom: 0px;
	background: #31477b;
	width: 100%;
	z-index: 10000;
	overflow: hidden;
}

.modal_wrap input{
    display: none;
}

.modal_overlay{
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.7);
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
}

.modal_trigger{
    position: absolute;
    width: 100%;
    height: 100%;
}

.modal_content{
    align-self: center;
    width: 90%;
    max-width: 800px;
    padding: 30px 30px 15px;
    box-sizing: border-box;
    line-height: 1.4em;
    transform: scale(0.3);
    transition: 0.5s;
}
@media screen and (max-width: 420px){
	.modal_content{
		padding:10px 0;
		width: 80%;
	}
}




.close_button{
    position: absolute;
    top: 14px;
    right: 16px;
    cursor: pointer;
	color:#FFFFFF;
	opacity: 1;
}

@media screen and (max-width: 768px){
	.close_button{
		top: 14px;
    	right: 100px;
		color:#FFFFFF;
	}
}

@media screen and (max-width: 420px){
	.close_button{
		top:0px;
		right: 15px;
		color:#FFFFFF;
	}
}


.close_button img{width:24px;height: 24px;}



.modal_wrap input:checked ~ .modal_overlay{
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s;
}

.modal_wrap input:checked ~ .modal_overlay .modal_content{
    transform: scale(1);
}

.open_button{
    align-items: center;
    margin: auto;
    color: #444;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    box-shadow: 0 1px 3px rgba(0,0,0,0.6);
    border-radius: 16px;
	cursor: pointer;}


.dl_list ul{/*モーダルウィンドウ中身の奴*/
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
}
.dl_list li{
		color:#FFF;
		width:150px;
		height: 100px;
		border: 4px rgba(221,165,0,1.00) solid;
		border-radius: 5px;
		text-align: center;
		margin: 10px 5px;
		font-size:12px;
		background: rgba(0,13,63,1);
		background: -moz-linear-gradient(top, rgba(0,124,188,1) 0%, rgba(0,13,63,1) 100%);
		background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(0,124,188,1)), color-stop(100%, rgba(0,13,63,1)));
		background: -webkit-linear-gradient(top, rgba(0,124,188,1)  0%, rgba(0,13,63,1) 100%);
		background: -o-linear-gradient(top, rgba(0,124,188,1)  0%, rgba(0,13,63,1) 100%);
		background: -ms-linear-gradient(top, rgba(0,124,188,1)  0%, rgba(0,13,63,1) 100%);
		background: linear-gradient(to bottom, rgba(0,124,188,1) 0%, rgba(0,13,63,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0077bbc', endColorstr='#000d3f', GradientType=0 );}

.dl_list li img{
			height: 70px;
			margin-top: 13px;
		}

	
@media screen and (max-width: 768px){
		.dl_list  li{
			width:110px;
			height: 110px;
			}
	.dl_list li img{
				height: 60px;
				margin:0 auto 0px;
			}
	}



.dl_link a{
		display: block;
		width:80%;
		margin: 0 auto;
		padding: 5px 0;
		font-size: 12px;
		border-radius: 2px;
		background: #FFF;
		color:rgba(9,37,112,1.00);
		font-weight: bold;
		overflow: hidden;
}

.dl_link a:hover{
		border: 2px solid #FFF;
		background: none;
		color:#FFF;
	}

@media screen and (max-width: 768px){

}





