@charset "utf-8";


/* -- ul#menu -------------------------------------------------------------------------------- */

ul#menu {
	list-style-type: none;
	width: 100%;
	background: #d71418;
	position: absolute;
	left: 0px;
	top: 72px;
	z-index: 990;
	display: none;
}

ul#menu li {
	text-align: center;
}

ul#menu li a {
	text-decoration: none;
	display: block;
	padding: 15px 0 15px 20px;
	color: #fff;
	font-size: 20px;
	border-bottom: 1px solid #fff;
}

ul#menu li a:hover {
	background: #ff4d4d;
	opacity: 0.7;
}




/* -- div#sp-icon -------------------------------------------------------------------------------- */

div#sp-icon {
	width: 70px;
	height: 70px;
	position: absolute;
	right: 10px;
	top: 0;
	z-index: 999;
	background: #d71418;
}

div#sp-icon:hover {
	cursor: pointer;
	opacity: 0.7;
}

div#sp-icon span,
div#sp-icon span:before,
div#sp-icon span:after {
	display: inline-block;
	width: 40px;
	height: 4px;
	background: #fff;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.3s;
}

div#sp-icon span {
	left: 50%;
	top: 50%;
	transform: translate( -50%, -50% );
}

/* IE10 以降にのみ適用される */
@media all and (-ms-high-contrast: none) {

	div#sp-icon span {
		left: 22%;
		top: 47%;
		transform: translate( -50%, -50% );
}

}

div#sp-icon span:before {
	content: "";
	transform: translateY( -15px ) rotate( 0deg );
}

div#sp-icon span:after {
	content: "";
	transform: translateY( 15px ) rotate( 0deg );
}


div.sp-open span {
	background: transparent !important;
}

div.sp-open span:before {
	transform: rotate( 45deg ) !important;
}

div.sp-open span:after {
	transform: rotate( -45deg ) !important;
}



/*スマホ*/
@media screen and (max-width: 768px) {

/* -- ul#menu -------------------------------------------------------------------------------- */

ul#menu {
	list-style-type: none;
	width: 100%;
	background: #d71418;
	position: absolute;
	left: 0px;
	top: 50px;
	z-index: 990;
	display: none;
}

ul#menu li {
	text-align: center;
}

ul#menu li a {
	text-decoration: none;
	display: block;
	padding: 10px 0 10px 15px;
	color: #fff;
	font-size: 14px;
	border-bottom: 1px solid #fff;
}

ul#menu li a:hover {
	background: #ff4d4d;
/*	opacity: 0.7;*/
}




/* -- div#sp-icon -------------------------------------------------------------------------------- */

div#sp-icon {
	width: 50px;
	height: 50px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 999;
	background: #d71418;
}

div#sp-icon:hover {
	cursor: pointer;
/*	opacity: 0.7;*/
}

div#sp-icon span,
div#sp-icon span:before,
div#sp-icon span:after {
	display: inline-block;
	width: 30px;
	height: 3px;
	background: #fff;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.3s;
}

div#sp-icon span {
	left: 50%;
	top: 50%;
	transform: translate( -50%, -50% );
}

div#sp-icon span:before {
	content: "";
	transform: translateY( -10px ) rotate( 0deg );
}

div#sp-icon span:after {
	content: "";
	transform: translateY( 10px ) rotate( 0deg );
}


div.sp-open span {
	background: transparent !important;
}

div.sp-open span:before {
	transform: rotate( 45deg ) !important;
}

div.sp-open span:after {
	transform: rotate( -45deg ) !important;
}

}

