/* ------------------------------------------
	RESPONSIVE NAV STYLES
--------------------------------------------- */
.nav-collapse ul {
	margin: 0;
	padding: 0;
	width: 100%;
	display: block;
	list-style: none;
}

.nav-collapse li {
	width: 100%;
	display: block;
}

.js .nav-collapse {
	clip: rect(0 0 0 0);
	max-height: 0;
	position: absolute;
	display: block;
	overflow: hidden;
	zoom: 1;
}

.nav-collapse.opened {
	max-height: 9999px;
}

.disable-pointer-events {
	pointer-events: none !important;
}

.nav-toggle {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

@media screen and (min-width: 50em) {
	.js .nav-collapse {
		position: relative;
	}
	.js .nav-collapse.closed {
		max-height: none;
	}
	.nav-toggle {
		display: none;
	}
}


/* ------------------------------------------
	MASK
--------------------------------------------- */
.mask {
	-webkit-transition: opacity 300ms;
	-moz-transition: opacity 300ms;
	transition: opacity 300ms;
	background: rgba(0,0,0,.5);
	visibility: hidden;
	position: fixed;
	opacity: 0;
	z-index: 2;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
}

.android .mask {
	-webkit-transition: none;
	transition: none;
}

.js-nav-active .mask {
	visibility: visible;
	opacity: 1;
}

@media screen and (min-width: 50em) {
	.mask {
		display: none !important;
		opacity: 0 !important;
	}
}


/* ------------------------------------------
	NAVIGATION STYLES
--------------------------------------------- */
.fixed {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
}

.nav-collapse,
.nav-collapse * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.nav-collapse,
.nav-collapse ul {
	list-style: none;
	width: 100%;
	float: left;
}

@media screen and (min-width: 50em) {
	.nav-collapse {
		float: right;
		width: auto;
	}
}

.nav-collapse li {
	float: left;
	width: 100%;
}

@media screen and (min-width: 50em) {
	.nav-collapse li {
		width: auto;
	}
}

.nav-collapse a {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	border-top: 1px solid #999;
	text-decoration: none;
	background: #fff;	/* ナビゲーションの色 */
	padding: 1em 1em;
	color: #333;
	width: 100%;
	float: left;
}

.nav-collapse a:active,
.nav-collapse .active a {
	background: #eee;	/* アクティブナビゲーションの色 */
}

@media screen and (min-width: 50em) {
	.nav-collapse a {
		border-left: 1px solid #999;
		line-height: 56px;	/* ヘッダの高さが変更される */
		padding: 0 2em;
		text-align: center;
		border-top: 0;
		float: left;
		margin: 0;
	}
}

.nav-collapse ul ul a {
	background: #000000;
	padding-left: 2em;
}

@media screen and (min-width: 50em) {
	.nav-collapse ul ul a {
		display: none;
	}
}


/* ------------------------------------------
	NAV TOGGLE STYLES
--------------------------------------------- */
@font-face {
	font-family: "responsivenav";
	src:url("../icons/responsivenav.eot");
	src:url("../icons/responsivenav.eot?#iefix") format("embedded-opentype"),
		url("../icons/responsivenav.ttf") format("truetype"),
		url("../icons/responsivenav.woff") format("woff"),
		url("../icons/responsivenav.svg#responsivenav") format("svg");
	font-weight: normal;
	font-style: normal;
}

.nav-toggle {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-decoration: none;
	text-indent: -300px;
	position: relative;
	overflow: hidden;
	width: 60px;
	height: 56px;	/* 157行目と同じ数字にしてヘッダの高さ調整 */
	float: right;
}

.nav-toggle:before {
	color: #999; /* Edit this to change the icon color */
	font: normal 28px/55px "responsivenav"; /* Edit font-size (28px) to change the icon size */
	text-transform: none;
	text-align: center;
	position: absolute;
	content: "\2261"; /* Hamburger icon */
	text-indent: 0;
	speak: none;
	width: 100%;
	left: 0;
	top: 0;
}

.nav-toggle.active:before {
	font-size: 24px;
	content: "\78"; /* Close icon */
}

