*{
	margin: 0;
	padding: 0;
    box-sizing: border-box;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
a, a:link, a:visited, a:hover, a:active{
	text-decoration: none;
	color: rgba(0,0,0,1.00);
}
::-webkit-scrollbar{
    width: 16px;
    height: 16px;
}
::-webkit-scrollbar-track{
    border-radius: 8px;
    border: none;
}
::-webkit-scrollbar-thumb{
    border-radius: 8px;
    background: #000;
}
.menuSp, .headerSp{
	display: none;
}
.header{
	margin: 0 auto;
	width: 1024px;
	display: flex;
	justify-content: space-between;
}
.container{
	margin: 0 auto;
	padding: 0;
	width: 1024px;
	position: relative;
}
.crossLogo{
	margin: 10px 0;
	width: 70px;
}
.crossLogo img{
	width: 100%;
}
.twitterLogo{
	text-align: right;
}
.twitterLogo .fab{
	color: #1da1f2;
}
.topImage{
	width: 100%;
}
.topImage img{
	width: 100%;
}
.tameshiImage{
	margin: 30px 0 0;
	width: 100%;
}
.tameshiImage:hover{
	opacity: .8;
}
.tameshiImage img{
	width: 100%;
}
.menuBox{
	margin: 30px auto 0;
	width: 90%;
	height:50px;
	border-bottom: 1px solid;
	display: flex;
	flex-direction: row;
	list-style-type: none;
	position: sticky;
	top: 0;
	background: rgba(255,255,255,0.8);
}


.menuKatsugouNew, .menuKatsugou, .menuJinbutsu, .menuTokuten{
	width: 25%;
}



.menuBox li{
	border-right: 1px solid;
}
.menuBox li:nth-child(4){
	border-right: none;
}
.menuBox li{
	display: flex;
	justify-content: center;
	align-items: center;
}
.menuBox li:hover{
	opacity: .7;
	cursor: pointer;
}
.informationBox{
	margin: 80px auto 0;
	width: 70%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
}
.informationInnerBox{
	margin: 0 auto;
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
}
.informationBoxLeft{
	width: 45%;
}
.informationBoxLeft img{
	width: 100%;
}
.informationBoxRight{
	width: 50%;
}
.informationBoxText{
	padding: 0;
}
.informationBoxArasuji{
	margin: 20px auto 40px;
	width: 100%;
}
.midashi{
	margin: 0 auto 30px;
	width: 100%;
	height: 50px;
	border-top: solid 1px;
	border-bottom: solid 1px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.introduction{
	margin: 30px auto;
	width: 100%;
}
.character{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.charaBoxMain{
	margin: 30px auto;
	width: 75%;
	display:flex;
	flex-direction: row;
	justify-content: space-between;
}
.charaImage{
	width: 180px;
	height: 180px;
	display: flex;
}
.charaImage img{
	width: 100%;
}
.charaBoxMainR{
	width: 70%;
}
.charaName{
	width: 100%;
}
.charaDescription{
	width: 100%;
}
.charaBoxSub{
	margin: 30px auto 0;
	width: 70%;
	display: flex;
	flex-direction: column;
}

.tokuten{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.tokutenBox{
	margin: 30px auto;
	width: 70%;
}
.tokutenURL{
	margin: 30px auto 0;
	width: 100%;
}
.tokutenURL ul{
	margin: 0 0 30px;
}
.tokutenURL li{
	margin: 0 0 0 30px;
}
.footer{
	margin: 25px auto 0;
	width: 100%;
	height: 50px;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media screen and (max-width: 768px){
	.menuSp{
		width: 100%;
		height: 100Vh;
		background: #fff;
		position: fixed;
		z-index: 100;
	}
	.menuSpTimes{
		padding: 0 5px;
		display: flex;
		justify-content: flex-end;
	}
	.menuSpTimes div{
		padding: 3px 0;
		width: 50px;
		height: 60px;
		position: relative;
	}
	.menuSpTimes div::before, .menuSpTimes div::after{
		content: "";
		width: 3px;
		height: 50px;
		position: absolute;
		top: 50%;
		left: 50%;
		background: #000;
	}
	.menuSpTimes div::before{
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.menuSpTimes div::after{
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	.menuSpCrossLogo{
		margin: 10px auto 10px;
		width: 30%;
	}
	.menuSpCrossLogo img{
		width: 100%;
	}
	
	
	.menuSpTop, .menuSpKatsugouNew, .menuSpKatsugou, .menuSpJinbutsu, .menuSpTokuten, .menuSpTwitter{
		padding: 10px 0;
		width: 100%;
		border-top: solid 1px #ccc;
		display: flex;
		justify-content: center;
	}
	.menuSpTwitter{
		border-bottom: solid 1px #ccc;
	}
	
	.headerSp{
		padding: 3px 5px;
		width: 100%;
		height: 60px;
		background: rgba(255,255,255,.7);
		border-bottom: solid 1px #ccc;
		position: fixed;
		z-index: 1;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	.headerSpCrossLogo{
		margin: 0;
		height: 100%;
	}
	.headerSpCrossLogo img{
		height: 100%;
	}
	.headerSpMenuBotton{
		padding: 5px 0;
		width: 50px;
		height: 54px;
	}
	.headerSpMenuBotton div{
		margin: 5px 0 0;
		width: 80%;
		height: 6px;
		background: #000;
		border-radius: 3px;
	}
	.header{
		display: none;
	}
	.container{
		width: 100%;
	}
	.topImage{
		padding: 60px 0 0;
	}
	.tameshiImage{
		margin: 10px 0 0;
	}
	.menuBox{
		display: none;
	}
	.informationBox{
		margin: 50px auto 0;
		width: 90%;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}
	.informationBoxLeft{
		width: 100%;
	}
	.informationBoxRight{
		width: 100%;
	}
	.midashi{
		width: 100%;
	}
	.informationBoxArasuji{
		padding: 50px 0 0 0;
	}
	.introduction{
		margin: 20px auto 0;
		width: 100%;
	}
	.character{
		padding: 50px 0 0 0;
		width: 90%;
	}
	.charaBoxMain{
		width: 100%;
		flex-direction: column;
		justify-content: flex-start;
	}
	.charaImage{
		margin: 0 auto;
	}
	.charaBoxMainR{
		width: 100%;
	}
	.charaBoxSub{
		width: 100%;
	}
	.tokuten{
		padding: 50px 0 0 0;
		width: 90%;
	}
	.tokutenBox{
		margin: 30px auto;
		width: 100%;
	}
}