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;
}
h1,h2,h3,h4,h5,h6,h7,h8,h9,p {
	margin: 0;
}
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 {
	height:  100%;
}
body{
	min-height: 100vh;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 75px;
}
.header{
	margin: 0 auto;
	width: 1024px;
	display: flex;
	justify-content: space-between;
}
.body1{
	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%;
	box-sizing: border-box;
}
.topImage img{
	width: 100%;
}
.tameshiImage{
	margin: 30px 0 0;
	width: 100%;
	box-sizing: border-box;
}
.tameshiImage:hover{
	opacity: .8;
}
.tameshiImage img{
	width: 100%;
}
.menu{
	margin: 30px auto 0;
	width: 90%;
	height:50px;
	box-sizing: border-box;
	border-bottom: 1px solid;
	display: grid;
	grid-template-areas: "menu1 menu2 menu3 menu4";
	grid-template-columns: 25% 25% 25% 25%;
	list-style-type: none;
	position: sticky;
	top: 0;
	background:rgba(255,255,255,0.9);
}
.menu1{
	grid-area: menu1;
}
.menu2{
	grid-area: menu2;
}
.menu3{
	grid-area: menu3;
}
.menu4{
	grid-area: menu4;
}
.menu1,.menu2,.menu3{
	box-sizing: border-box;
	border-right: 1px solid;
}
.menu1,.menu2,.menu3,.menu4{
	display: flex;
	justify-content: center;
	align-items: center;
}
.menu1:hover,.menu2:hover,.menu3:hover,.menu4:hover{
	opacity: .7;
}
.titleBox{
	margin: 50px auto 0;
	width: 70%;
	box-sizing: border-box;
	display: grid;
	grid-template-areas: 
		"titleBoxParts1 titleBoxParts2"
		"titleBoxParts1 titleBoxParts3"
		"titleBoxParts1 titleBoxParts4"
		"titleBoxParts1 titleBoxParts5"
		"titleBoxParts1 titleBoxParts6"
		"titleBoxParts1 titleBoxParts7"
		"titleBoxParts1 brank";
	grid-template-columns: 211px 65%;
	grid-column-gap: 5%;
}
.titleBoxParts1{
	grid-area: titleBoxParts1;
	box-sizing: border-box;
}
.titleBoxParts1 img{
	width: 211px;
}
.titleBoxParts2{
	grid-area: titleBoxParts2;
}
.titleBoxParts3{
	grid-area: titleBoxParts3;
}
.titleBoxParts4{
	grid-area: titleBoxParts4;
	margin: 0 0 50px 0
}
.titleBoxParts5{
	grid-area: titleBoxParts5;
}
.titleBoxParts6{
	grid-area: titleBoxParts6;
}
.titleBoxParts7{
	grid-area: titleBoxParts7;
}
.titleBoxParts2,.titleBoxParts3,.titleBoxParts4,.titleBoxParts5,.titleBoxParts6,.titleBoxParts7{
	padding: 0 30;
	box-sizing: border-box;
}
.midashi{
	margin: 0 auto 30px;
	width: 90%;
	height: 50px;
	box-sizing: border-box;
	border-top: solid 1px;
	border-bottom: solid 1px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.arasuji{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.introduction{
	margin: 30px auto;
	width: 70%;
	box-sizing: border-box;
}
.character{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.charaBox1{
	margin: 30px auto;
	width: 70%;
	height: 200px;
	display: grid;
	grid-template-areas: 
		"charaImage1 charaName1"
		"charaImage1 charaDescription1";
	grid-template-columns: 200px 1fr;
	grid-column-gap: 30px;
	grid-template-rows: 40px 1fr;
}
.charaImage1{
	grid-area: charaImage1;
	box-sizing: border-box;
}
.charaImage1 img{
	width: 100%;
}
.charaName1{
	grid-area: charaName1;
}
.charaDescription1{
	grid-area: charaDescription1;
}
.charaBox2{
	margin: 50px auto 0;
	width: 70%;
	display: grid;
	grid-template-areas: 
		"charaName"
		"charaDescription";
	grid-template-rows: 40px 1fr;
}
.charaName{
	grid-area: charaName;
}
.charaDescription{
	grid-area: charaDescription;
}
.yougo{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.yougoBox{
	margin: 0 auto;
	width: 70%;
}
.yougoName{
	margin: 15px auto 0;
	width: 100%;
}
.yougoDescription{
	padding: 0 0 15px 0;
	width: 100%;
}
.underber{
	box-sizing: border-box;
	border-bottom: 1px solid;
}
.tokuten{
	padding: 80px 0 0 0;
	margin: 0 auto;
	width: 100%;
}
.tokutenBox{
	margin: 30px auto;
	width: 70%;
}
.tokutenURL{
	margin: 30px auto 0;
	width: 95%;
}
.footer{
	margin: 25px auto 0;
	width: 100%;
	height: 50px;
	position: absolute;
	bottom: 0;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media screen and (max-width: 768px){
.header{
	width: 100%;
}
.crossLogo{
	width: 50px;
}
.twitterLogo{
	margin: 0 10px 0 0;
}
.body1{
	width: 100%;
}
.tameshiImage{
	margin: 10px 0 0;
}
.menu{
	margin: 10px auto 0;
	width: 100%;
}
	.titleBox{
	margin: 30px auto 0;
	width: 90%;
	box-sizing: border-box;
	display: grid;
	grid-template-areas: 
		"titleBoxParts1"
		"titleBoxParts2"
		"titleBoxParts3"
		"titleBoxParts4"
		"titleBoxParts5"
		"titleBoxParts6"
		"titleBoxParts7";
	grid-template-columns: auto;
	grid-column-gap: 0;
}
.titleBoxParts1 img{
	width: 100%;
}
.titleBoxParts4{
	grid-area: titleBoxParts4;
	margin: 0 0 10px 0
}
.midashi{
	width: 100%;
}
.arasuji{
	padding: 50px 0 0 0;
	width: 90%;
}
.introduction{
	margin: 20px auto 0;
	width: 100%;
}
.character{
	padding: 50px 0 0 0;
	width: 90%;
}
.charaBox1{
	margin: 30px auto;
	width: 100%;
	height: inherit;
	display: grid;
	grid-template-areas: 
		"charaImage1"
		"charaName1"
		"charaDescription1";
	grid-template-columns: auto;
	grid-column-gap: 0;
	grid-template-rows: auto;
}
.charaBox2{
	margin: 50px auto 0;
	width: 100%;
	display: grid;
	grid-template-areas: 
		"charaName"
		"charaDescription";
	grid-template-rows: auto;
}
.yougo{
	padding: 50px 0 0 0;
	width: 90%;
}
.yougoBox{
	margin: 0 auto;
	width: 100%;
}
.tokuten{
	padding: 50px 0 0 0;
	width: 90%;
}
.tokutenBox{
	margin: 30px auto;
	width: 100%;
}
.footer{
	margin: 0 auto;
	padding: 0 5%;
	width: 100%;
	box-sizing: border-box;
}
}