
#responsive-nav-wrapper {
	position: relative;
}
.nav-open {
	overflow: hidden;
}

/**
 * #responsive-btn
 * #responsive-btn of display is "block" when you want to valid off-canvas-navigation.
 */
#responsive-btn {
    background-image: url( ./navi.png );
	height: 19px;
	width: 20px;
	overflow: hidden;
	text-indent: -9999px;
	display: none;
	cursor: pointer;
}

/**
 * .responsive-nav
 */
.responsive-nav {
}
.responsive-nav ul,
.responsive-nav ul li {
	list-style: none;
	margin: 0;
	padding: 0;
	*zoom: 1;
}
.responsive-nav ul:after,
.responsive-nav ul li:after {
	clear: both;
	content: '';
	display: block;
}
.responsive-nav ul li {
	float: left;
	position: relative;
}
.responsive-nav ul li a {
	display: block;
}
.responsive-nav ul li ul {
	display: block !important;
	position: absolute;
	width: 220px;
	left: 0;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.1s ease-in, opacity 0.1s ease-in;
}
.responsive-nav ul:first-child li:hover>ul {
	visibility: visible;
	opacity: 1;
}
.responsive-nav ul:first-child>li>ul {
	top: 100%;
}
.responsive-nav ul li ul.show-pulldown {
	display: block;
}
.responsive-nav ul li ul li {
	float: none !important;
	position: relative;
	width: auto !important;
}
.responsive-nav ul li ul li a {
	font-weight: normal;
	padding: 10px 15px;
}
.responsive-nav ul li ul li ul {
	position: absolute;
	top: 0;
	left: 219px;
}
.responsive-nav ul li ul li ul.reverse-pulldown {
	left: -219px;
}

/**
 * .off-canvas-nav
 * Do not set "overflow: hidden" to element that wrapping
 */
.off-canvas-nav {
	background-color: #000 !important;
	background-image: none !important;
	display: none;
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
	position: absolute !important;
	overflow: auto !important;
	z-index: -20;
}
.off-canvas-nav * {
	background-image: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	text-align: left !important;
}
.off-canvas-nav,
.off-canvas-nav ul li {
	background-color: #000 !important;
	display: block !important;
	float: none !important;
	border-bottom: 1px solid #333;
}
.off-canvas-nav ul li:first-child {
	border-top: 1px solid #333;
}
.off-canvas-nav ul {
	display: block !important;
}
.off-canvas-nav ul li ul {
	border-top: none !important;
	border-left: 1px solid #333;
	display: block !important;
	visibility: visible !important;
	opacity: 1;
	margin-left: 3em !important;
	margin-bottom: -1px !important;
	position: static !important;
	width: auto !important;
}
.off-canvas-nav ul li a {
	color: #ccc !important;
	background-color: #000 !important;
	border: none !important;
	display: block !important;
	padding: 10px 20px 7px !important;
	text-decoration: none !important;
}
.off-canvas-nav ul li a:hover,
.off-canvas-nav ul li a:active {
	background-color: #222 !important;
	color: #fff;
}

/* For WordPress */
.off-canvas-nav ul .current-menu-item > a,
.off-canvas-nav ul .current_page_ancestor > a,
.off-canvas-nav ul .current-page-ancestor > a,
.off-canvas-nav ul .current_page_item > a,
.off-canvas-nav ul .current_page_parent > a {
	background-color: #222 !important;
	color: #fff;
}