*{
	margin: 0;
	padding: 0;
    box-sizing: border-box;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
a, a:link, a:visited, a:hover, a:active{
	text-decoration: none;
	color: #ff438f;
}
body{
	position: relative;
	background: repeat fixed url("../img/koitsugaorewo-cover_back2.jpg");
}
::-webkit-scrollbar{
    width: 12px;
    height: 16px;
}
::-webkit-scrollbar-track{
    border-radius: 6px;
    border: none;
}
::-webkit-scrollbar-thumb{
    border-radius: 6px;
    background: #ff438f;
}
.startLogo{
	width: 100%;
	height: 100vh;
	background: #ff438f;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9998;
	overflow-y: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.startLogo img{
	width: 300px;
}
.kurukuruBox{
	width: 25px;
	height: 25px;
	animation: .5s linear infinite rotation;
	position: relative;
}
.kurukuruBoxStop{
	animation-iteration-count: 1;
}
@keyframes rotation{
	0%{transform: rotate(0);}
	100%{transform: rotate(360deg)}
}
.kurukuruBox>div{
	width: 100%;
	height: 6px;
	position: absolute;
	top: 40%;
}
.kurukuruBox>div:nth-child(2){
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
}
.kurukuruBox>div:nth-child(3){
	-webkit-transform: rotate(-120deg);
	transform: rotate(-120deg);
}
.kurukuruBox>div:nth-child(4){
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
}
.kurukuruBox>div:nth-child(5){
	-webkit-transform: rotate(-240deg);
	transform: rotate(-240deg);
}
.kurukuruBox>div:nth-child(6){
	-webkit-transform: rotate(-300deg);
	transform: rotate(-300deg);
}
.kurukuruBox>div>div{
	width: 6px;
	height: 6px;
	border-radius: 3px;
	background: #000;
}
.kurukuruBox>div:nth-child(2)>div{
	background: #333;
}
.kurukuruBox>div:nth-child(3)>div{
	background: #666;
}
.kurukuruBox>div:nth-child(4)>div{
	background: #999;
}
.kurukuruBox>div:nth-child(5)>div{
	background: #ccc;
}
.kurukuruBox>div:nth-child(6)>div{
	background: #fff;
}
.menuLogo{
	display: none;
}
.midashi{
	margin: 0 0 30px;
	width: 100%;
}
.text80{
	opacity: 0;
}
.topImg{
	width: 100%;
}
.topImg img{
	width: 100%;
}
.topImgSp{
	display: none;
}
.menuPc{
	width: 100%;
	height: 120px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.menuPcBotton{
	width: 120px;
	height: 120px;
}
.menuPcBotton:hover{
	cursor: pointer;
}
.menuPcBotton>div:nth-child(1){
	padding: 15px 0;
	width: 100%;
	height: 72px;
}
.menuPcBotton>div:nth-child(1)>div{
	margin: 0 auto 15px;
	width: 80%;
	height: 4px;
	background: #ff438f;
	border-radius: 2px;
}
.menuPcBotton>div:nth-child(1)>div, .menuPcBotton>div:nth-child(2)>h1{
	transition: all .2s;
}
.menuPcBotton>div:nth-child(1)>div:nth-child(3){
	margin: 0 auto;
}
.menuPcBotton>div:nth-child(2){
	width: 100%;
	height: 46px;
	display: flex;
	justify-content: center;
}
.menuPcBottonOpen>div{
}
.menuPcBottonOpen>div:nth-child(1)>div:nth-child(1){
	-webkit-transform: rotate(-30deg);
	transform: translateY(36px) rotate(390deg);
	background: #fff;
}
.menuPcBottonOpen>div:nth-child(1)>div:nth-child(2){
	transform: rotate(360deg);
	background: #fff;
	opacity: 0;
}
.menuPcBottonOpen>div:nth-child(1)>div:nth-child(3){
	-webkit-transform: rotate(-30deg);
	transform: translateY(-3px) rotate(-390deg);
	background: #fff;
}
.menuPcBottonOpen>div:nth-child(2)>h1{
	color: #fff;
}
.menuPcBox{
	width: 1080px;
	max-width: calc(100% - 300px);
	display: flex;
	justify-content: space-between;
}
.menuPcBox>div{
	width: calc(100% / 6 - 4px);
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.menuPcBox>div:hover{
	cursor: pointer;
}
.menuPcLogo{
	width: 120px;
	height: 120px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.menuPcLogo>img{
	width: 100px;
	height: 100px;
}
.menuPcBack{
	width: 100%;
	height: 120px;
	background: #ff438f;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	opacity: .8;
}



.menuSp{
	display: none;
}
.story, .information, .character{
	margin: 60px auto;
	width: 1024px;
	max-width: 95%;
}
.sample_box{
	margin: 30px auto;
	padding: 10px 0;
	width: 70%;
	border: 1px solid;
	border-radius: 15px;
	text-align: center;
}
.sample_box:hover{
	background: #ff438f;
}
.sample_img{
	height: 100%;
}
.informationImg{
	margin: 0 auto;
	width: 70%;
}
.informationImg img{
	width: 100%;
	border: 1px solid #888;
}
.informationTxt1, .informationTxt2, .informationTxt7{
	margin: 0 auto;
	width: 70%;
}
.informationTxt3, .informationTxt7{
	margin: 30px auto;
	padding: 10px 0;
	width: 70%;
	border: 1px solid;
	border-radius: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.informationTxt3:hover{
	background: #ff438f;
}
.informationTxt3 a{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.informationTxt4{
	margin: 30px auto 0;
	width: 70%;
}
.informationTxt5{
	margin: 20px auto 0;
	width: 65%;
}
.informationTxt6{
	margin: 0 auto;
	width: 60%;
}
.informationTxt7:hover{
	background: #ff438f;
	cursor: pointer;
}
.informationTxt8{
	margin: 0 auto;
	width: 70%;
}
.informationTxt9{
	margin: 0 auto 30px;
	width: 70%;
}
.informationTxt10{
	margin: 0 auto;
	padding: 10px 0;
	width: 70%;
	border: 1px solid;
	border-radius: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.informationTxt11{
	margin: 0 auto 30px;
	padding: 10px 0;
	width: 70%;
	border: 1px solid;
	border-radius: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.informationTxt10:hover, .informationTxt11:hover{
	background: #ff438f;
}
.informationTxt10 a, .informationTxt11 a{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.informationFukusei{
	display: none;
}
.charaBox{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around
}
.charaInnerBox{
	margin: 0 0 60px;
	width: 48%;
}


.charaImg img{
	width: 100%;
	border: 1px solid #555;
}

@media screen and (max-width: 1080px){
	.menuPc{
		display: none;
	}
	.menuSp{
		width: 100%;
		position: fixed;
		bottom: 0;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		background: rgba(255,255,255,.9);
		border-top: 1px solid #ccc;
	}
	.menuSp>div{
		padding: 5px 0;
		width: calc(100% / 6);
		display: flex;
		flex-direction: column;
		border-right: 1px solid #ccc;
		text-align: center;
	}
	.menuSp>div:last-child{
		border-right: 0px solid #ccc;
	}
	.menuSp>div>span, .menuSp>div>h2{
		margin: 0 auto
	}
	.menuSp>div>h2{
		font-size: 18px;
	}
	.menuSp>div>h1{
		font-size: 12px;
		color: #555;
	}
	.material-symbols-outlined {
		font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 20;
	}
	.menuSpTwitter h2{
		color: #55acee;
	}
	.menuSpYoutube h2{
		color: #ff0000;
	}
	.topImg{
		display: none;
	}
	.topImgSp{
		display: block;
	}
	.topImgSp img{
		width: 100%;
	}
	.story, .information, .character{
		margin: 60px auto;
		width: 95%;
	}
	.informationImg{
		margin: 0 auto;
		width: 95%;
	}
	.informationTxt1, .informationTxt2, .informationTxt8, .informationTxt10{
		margin: 0 auto;
		width: 95%;
	}
	.sample_box, .informationTxt3, .informationTxt7{
		margin: 10px auto;
		width: 95%;
	}
	.sample_box:hover, .informationTxt3:hover, .informationTxt7:hover{
		background-color: transparent;
	}
	.informationTxt4{
		margin: 30px auto 0;
		width: 95%;
	}
	.informationTxt5{
		margin: 20px auto 0;
		width: 95%;
	}
	.informationTxt6{
		margin: 0 auto;
		width: 95%;
	}
	.informationTxt7:hover{
		background-color: transparent;
		cursor: auto;
	}
	.informationTxt9{
		width: 95%;
	}
	.informationTxt10:hover{
		background-color: transparent;
	}
	.charaBox{
		width: 100%;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: flex-start;
	}
	.charaInnerBox{
		margin: 0 0 60px;
		width: 100%;
	}
}