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


/*--- first veiw
-------------------------------------------------------------------------------- */
.main_top{
	min-height:100%;
	max-width:1280px;
	margin:0 auto;
}
@media screen and (max-width: 768px) {
	.main_top{
		overflow:hidden;
	}
}
.main_top_bg{
	position:relative;
}
.main_top_bg .fixed{
	position:fixed;
	width: 100%;
	max-width: 1280px;
	z-index:-1;
}
img.main_img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:auto;
	max-width:1280px;
}
img.main_img.kotei{
	position:relative;
}


/*--- top_dl
-------------------------------------------------------------------------------- */
.top_dl{
	width:65%;
	margin:30px auto;
}
.top_dl img{
	max-width:90%;
	height:auto;
}
@media screen and (max-width: 768px) {
	.top_dl{
		width:90%;
		margin:5px auto 20px auto;
	}
}

/*--- top_about
-------------------------------------------------------------------------------- */
.top_about{
	width:100%;
	padding:0;
	position:relative;
}
.top_about .top_txt{
	color:#231815;
	background: url("../img/about_bottom.png"),-webkit-linear-gradient(top, rgba(255, 255, 255, 0.8), rgba(255, 237, 226, 0.8));
	background-position: center center;
	background-repeat: no-repeat;
	background-size:cover;
	padding:230px 0 180px 0;
	border-radius: 0;
}
.top_about h2.ttl{
	position:absolute;
	top:100px;
	text-align:center;
	width:100%;
}
@media screen and (max-width: 768px) {
	.top_about .top_txt{
		padding:120px 0 70px 0;
	}
	.top_about h2.ttl {
		top:40px;
	}
	.top_about h2.ttl img{
		width: 250px;
	}
	.top_about .top_txt {
		font-size:13px;
	}
}


/*--- top_chara
-------------------------------------------------------------------------------- */
.top_chara{
	width:100%;
	min-height:100vh;
	height:800px;
	background-image:url("../img/bg_chara.png");
	background-position:center center;
	background-size:cover;
	background-repeat: no-repeat;
	position:relative;
	padding-top:90px;
}
.top_chara h2.ttl{
	position:absolute;
	top:20px;
	text-align:center;
	width:100%;
	left: 0;
	right;0;
}
.top_chara .top_txt{
	width:55%;
}
.top_chara_bottom{
	position:absolute;
	bottom:-10px;
	text-align:center;
	width:100%;
	left: 0;
	right: 0;
	pointer-events: none;
}
.top_chara_bottom img{
	max-width:70%;
	height:auto;
	max-height:550px;
}
@media screen and (max-width: 768px) {
	.top_chara .top_txt{
		background: url("../img/bg-menu.png"),-webkit-linear-gradient(top, rgba(241, 229, 245, 0.9), rgba(255, 237, 226, 0.7));
	}
	.top_chara h2.ttl{
		top:35px;
	}
	.top_chara .top_txt{
		width:95%;
	}
	.top_chara{
		min-height:650px;
		height:auto;
		padding:75px 15px;
	}
	.top_chara h2.ttl img{
		width: 250px;
	}
}
@media screen and (max-width: 550px) {
	.top_chara{
		min-height:550px;
	}
}
@media screen and (max-width: 480px) {
	.top_chara_bottom img{
		max-width:85%;
		height:auto;
		max-height:400px;
	}
}


/*--- top_play
-------------------------------------------------------------------------------- */
.top_play {
	width:100%;
	min-height:100vh;
	height:800px;
	background-image:url("../img/bg_world.png");
	background-position:center center;
	background-size:cover;
	background-repeat: no-repeat;
	position:relative;
	padding-top:50px;
}
.top_play h2.ttl{
	text-align:center;
	width:100%;
}
.top_play .top_txt{
	background: url("../img/bg-menu.png"),-webkit-linear-gradient(top, rgba(255, 237, 226, 0.7), rgba(241, 229, 245, 0.7), rgba(255, 237, 226, 0.7));
	width:80%;
	min-width:280px;
}
.top_play .flex{
	margin:50px auto;
	width:80%;
}
.top_play .flex img{
	max-height:550px;
	width:auto;
}
@media screen and (max-width: 768px) {
	.top_play{
		min-height:550px;
		height:auto;
		padding:40px 0px;
	}
	.top_play h2.ttl img{
		width: 250px;
	}
	.top_play .top_txt{
		width:90%;
		padding: 70px 10px 40px 10px;
		background: url("../img/bg-menu.png"),-webkit-linear-gradient(top, rgba(255, 237, 226, 0.8), rgba(241, 229, 245, 0.8), rgba(255, 237, 226, 0.8));
	}
	.top_play .flex {
		flex-direction: column;
		margin:10px auto;
		width:100%;
	}
	.top_play .flex_naka {
		width:100%;
	}
	.top_play .flex_naka.image{
		position:relative;
		z-index:2;
	}
	.top_play .flex_naka.text{
		position:relative;
		margin-top: -50px;
		z-index:1;
	}
	.top_play .flex img{
		max-height:350px;
	}
}
@media screen and (max-width: 480px) {
	.top_play .flex img{
		max-height:300px;
	}
}


/*--brand
-------------------------------------------------------------------------------- */
footer .brand_area{
	width: 17%;
	min-width: 230px;
	margin: 0 auto 10px;
}
footer .brand_text{
	font-size: 14px;
	margin-bottom: 5px;
	color: #fff;
	text-shadow: 0px 1px 2px #000!important;
}
footer .brand_button{
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    background: #fff;
    border-radius: 10px;
    border: 1px solid #ddd;
    padding: 10px 10px 5px;
}

footer .foot_attention{
	color:#ccc!important;
	text-shadow: 0px 1px 2px #000!important;
	margin-top: 10px!important;
}