@charset "UTF-8";

.header-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.3em 1em 0.3em 1em;
}

.logo {
	display: flex;
	align-items: center;
}

.logo img {
	height: 100%;
	object-fit: contain;
}

.menu {
	display: flex;
	justify-content: right;
	align-items: center;
	height: 100%;
	color: gray;
}

.menu a {
	background-color: rgb(240,240,240);
	transform: skewX(-16deg);
	margin: 0 0.2em 0 0.2em;
	padding: 0.2em 1em 0.2em 1em;
	text-decoration: none;
	color: rgb(10,40,90);
	transition: background-color 0.3s, box-shadow 0.3s, transform 0.3s, color 0.3s;
}

.menu a:hover {
	background-color: rgb(44,84,120);
	box-shadow: 4px 4px 0px rgba(44,84,120,0.5);
	transform: skewX(-16deg) translate(-4px, -4px);
	color: white;
}

#none {
	display: flex;
}

.menu-btn {
	background-color: rgb(245,245,245);
	border: solid 2px gray;
	border-radius: 3px;
	box-shadow: 1px 1px 3px rgba(10,10,10,0.4);
	display: flex;
	flex-flow: column; /*縦*/
	justify-content: space-around; /*均等*/
	margin-left: 0.5em;
	padding: 0.4em;
	width: 20px;
	aspect-ratio: 1;
	transition: background-color 0.5s;
}

.menu-btn:hover {
	background-color: white;
	border: solid 2px rgb(20,120,180);
}

.menu-btn:hover span {
	background-color: rgb(20,120,180);
}

.menu-btn span {
	background-color: gray;
	display: flex;
	width: 100%;
	height: 2px;
}

.modal-header {
	background-color: rgba(10,10,10,0.7);
	display: none; /*初期値*/
	flex-flow: column;
	justify-content: space-around;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	font-family: serif;
	font-size: 1.2rem;
	z-index: 100;
}



.modal-header-wrap {
	/*background-color: orange; /**/
	display: flex;
	flex-flow: column;
	justify-content: space-around;
	height: 100vh;
	max-height: 800px;
}



.modal-header a {
	text-align: center;
	text-decoration: none;
	color: white;
	opacity: 0;
}

@keyframes anime_modal_h {
	from { opacity: 0; }
	  to { opacity: 1; }
}

.modal-header a:nth-child(1) { animation: anime_modal_h 0.5s ease-in 0.0s forwards; }
.modal-header a:nth-child(2) { animation: anime_modal_h 0.5s ease-in 0.1s forwards; }
.modal-header a:nth-child(3) { animation: anime_modal_h 0.5s ease-in 0.2s forwards; }
.modal-header a:nth-child(4) { animation: anime_modal_h 0.5s ease-in 0.3s forwards; }
.modal-header a:nth-child(5) { animation: anime_modal_h 0.5s ease-in 0.4s forwards; }
.modal-header a:nth-child(6) { animation: anime_modal_h 0.5s ease-in 0.5s forwards; }
.modal-header a:nth-child(7) { animation: anime_modal_h 0.5s ease-in 0.6s forwards; }
.modal-header a:nth-child(8) { animation: anime_modal_h 0.5s ease-in 0.7s forwards; }
.modal-header a:nth-child(9) { animation: anime_modal_h 0.5s ease-in 0.8s forwards; }

.modal-header a:nth-child(n+2):nth-child(-n+6) {
	background-color: rgba(10,10,10,0.2);
	position: relative;
	width: 230px;
	line-height: 2em;
	overflow: hidden;
}

.modal-header a:nth-child(n+2):nth-child(-n+6)::after {
	content: ''; /*必須*/
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0%;
	height: 100%;
	z-index: -1;
	transform: translate(-50%, -50%);
	transition: all 0.3s;
}

.modal-header a:nth-child(n+2):nth-child(-n+6):hover::after {
	background-color: rgba(90,160,240,0.7);
	width: 100%;
	height: 100%;
	transform: translate(-50%, -50%);
}

.modal-header a:nth-child(1) {
	transition: all 0.3s;
}

.modal-header a:nth-child(1):hover {
	background-color: rgb(44,84,120);
	box-shadow: 8px 8px 0px rgba(90,160,240,0.7);
	transform: translate(-4px, -4px);
}

.modal-header a:nth-child(n+7) {
	height: 72px;
	transition: all 0.3s;
}

.modal-header a:nth-child(n+7):hover {
	box-shadow: 8px 8px 0px orange;
	transform: translate(-4px, -4px);
}

/*------------------------------------------------*/
@media screen and (max-width: 768px) {
.header-wrap {
	height: 72px;
	font-size: 0.7rem;
}
.logo img {
	height: 64px;
}
.menu {
	height: 32px;
}

}

/*------------------------------------------------*/
@media screen and (max-width: 480px) {
#none {
	display: none;
}

}

/*------------------------------------------------*/
@media screen and (max-height: 480px) {
.modal-header a:nth-child(n+2):nth-child(-n+6) {
	font-size: 0.7em;
}

.modal-header a:nth-child(n+7) {
	height: 36px;
}

.modal-header img {
	height: 32px;
}

}

/*------------------------------------------------*/





