html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
a {
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
a:link {
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
a:visited {
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
a:hover {
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
a:active {
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
html {
	-webkit-overflow-scrolling: touch;
}

.bk{
	padding: 0;
	background: fixed no-repeat url("../img/top1.png") center top;
}

.shotenBtn:hover{
	opacity: .7;
}
.topMenu{
	display: none;
}
.pcTopImg{
	width: 100%;
}
.pcTopImg img{
	width: 100%;
}
.spTopImg{
	display: none;
}
.spTopImg img{
	width: 100%;
}
.body1{
	margin: 0 auto;
	width: 1024px;
	box-sizing: border-box;
	background: rgba(255,255,255,.9);
	border-radius: 20px;
}

.story{
	margin: 0 auto;
	padding: 0;
	width: 876px;
	box-sizing: border-box;
}
.introduction{
	padding: 50px;
	width: 100%;
}
.storyTrial{
	margin: 0 auto 30px;
	padding: 10px;
	box-sizing: border-box;
	width: 420px;
	background: #9BFE93;
	text-align: center;
}
.storyTrial:hover{
	background: #D0FFCD;
}
.information{
	margin: 0 auto;
	padding: 30px 0 0;
	width: 876px;
}

.heading{
	margin: 30px auto 0;
	padding: 20px 0;
	width: 300px;
	text-align: center;
	box-sizing: border-box;
}

.informationText1{
	width: 100%;
	text-align: center;
}
.informationImg{
	margin: 0 auto;
	width: 502px;
}
.informationImg img{
	width: 502px;
	border: solid 1px #ccc;
}
.informationText2{
	margin: 0 auto;
	width: 500px;
}
.informationText3{
	margin: 50px auto 10px;
	width: 500px;
	text-align: center;
}
.informationText4{
	margin: 0 auto;
	width: 500px;
	text-align: center;
}
.information ul{
	margin: 30px auto 0;
	padding: 0;
	width: 450px;
	list-style: none;
}
.information ul li img{
	width: 100%;
}

.information .shotenBtn{
	margin: 10px auto 10px;
	padding: 10px 0;
	width: 300px;
	box-sizing: border-box;
	border: 1px solid;
	text-align: center;
	background: #fff;
}

.character{
	margin: 0 auto;
	padding: 30px 0 0;
	width: 876px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
}
.character .heading{
	width: 100%;
}
.characterImg, .characterText{
	width: 40%;
}
.characterImg img{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #ccc;
}

.footer{
	margin: 30px 0;
	padding: 0;
	width: 100%;
	text-align: center;
}

.toTop{
	position: fixed;
	bottom: 60px;
	right: 50px;
	width: 15%;
	height: 20px;
	display: none;
}
.toTop div{
	width: 100%;
	height: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	box-sizing: border-box;
	border: 1px solid #777;
	border-radius: 8px;
}
.toTop:hover{
	opacity: .7;
}
@media screen and (max-width: 768px){
	.bk{
		position: relative;
		background-image: none;
	}
	.topMenuBg{
		position: fixed;
		display: none;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.73);
		z-index: 9990;
	}
	.topMenu{
		width: 100%;
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		z-index: 9999;
	}
	
	.headerLineHamburger{
		position: relative;
	}
	.headerLineHamburger div{
		width: 8%;
		height: 4px;
		border-radius: 2px;
		background: #555;
	}
	.headerLineHamburger div:nth-child(1){
		position: absolute;
		top: 8px;
		left: 15px;
	}
	.headerLineHamburger div:nth-child(2){
		position: absolute;
		top: 18px;
		left: 15px;
	}
	.headerLineHamburger div:nth-child(3){
		position: absolute;
		top: 28px;
		left: 15px;
	}
	.topMenuSwitch{
		position: static;
		top: 0;
		left: 0;
		width: 100%;
		height: 40px;
		background: #fff;
	}
	.topMenuButtonCross{
		margin: 0;
		padding: 0 20px 0 0;
		width: 70%;
		height: 50px;
		box-sizing: border-box;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		border-right: 1px solid #999;
		background: #fff;
	}
	.topMenuButton{
		margin: 0;
		padding: 0 0 0 40px;
		width: 70%;
		height: 70px;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		border-top: 1px solid #999;
		border-right: 1px solid #999;
		background: #fff;
	}
	.topMenuButton:nth-child(4){
		border-bottom: 1px solid #999;
	}
	.topMenuBox a{
		display: inline-block;
		width: 100%;
		height: 100%;
	}
	.body1{
		width: 100%;
	}
	.pcTopImg{
		display: none;
	}
	.spTopImg{
		display: block;
	}
	.body1{
		width: 100%;
		background: rgba(255,255,255,.9);
		border-radius: 20px;
	}
	.heading{
		width: 90%;
	}
	.story{
		width: 90%;
	}
	.storyTrial{
		margin: 30px auto 30px;
		padding: 10px;
		box-sizing: border-box;
		width: 90%;
		background: #9BFE93;
		text-align: center;
	}
.introduction{
	padding: 0;
	width: 100%;
}
	.information{
		width: 90%;
	}
	.informationImg{
		width: 100%
	}
	.informationImg img{
		width: 100%;
		box-sizing: border-box;
	}	
.informationText2{
	width: 100%;
}
.informationText3{
	width: 100%;
}
.information ul{
	width: 100%;
}
	.information .shotenBtn{
		width: 100%;
	}
	.character{
		width: 90%;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-around;
	}
	.footer{
		margin: 30px 0 0;
		text-align: center;
		display: flex;
		justify-content: center;
	}
	.toTop{
		width: 90%;
		bottom: 30px;
		right: 5%;
	}
}