/*
 * Stellarnav.js 2.5.0
 * Responsive, lightweight, multi-level dropdown menu.
 * Copyright (c) 2018 Vinny Moreira - http://vinnymoreira.com
 * Released under the MIT license
 */
/* all nav */
.stellarnav { position: relative; width: 100%; z-index: 9900; line-height: normal; background-color: transparent !important; }
.stellarnav a { color: #777; }
.stellarnav ul { margin: 0; padding: 0; text-align: right; }
.stellarnav li { list-style: none; display: block; margin: 0; padding: 0; position: relative; line-height: normal; vertical-align: middle; }
.stellarnav li a {
	padding:10px;
	display: block;
	text-decoration: none;
	color: #777;
	box-sizing: border-box;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	transition: all .3s ease-out;
	margin-bottom: 2px;
}

/* main level */
.stellarnav > ul > li {
	display: inline-block;
}
.stellarnav > ul > li > a {
	padding: 5px 10px;
	border: 1px solid #fff;
	margin-top: 1px;
	font-weight: bold;
	margin-left: -4px !important;
}

/* first level dd */
.stellarnav ul ul {
	top: auto;
	width: 220px;
	position: absolute;
	z-index: 9900;
	text-align: left;
	display: none;
}
.stellarnav li li { display: block; }

/* second level dd */
/*
.stellarnav ul ul ul { top: 0; left: 220px; }
.stellarnav > ul > li:hover > ul > li:hover > ul { opacity: 1; visibility: visible; top: 0; }
*/

/* .drop-left */
/*
.stellarnav > ul > li.drop-left > ul { right: 0; }
.stellarnav li.drop-left ul ul { left: auto; right: 220px; }
*/

/* light theme */
.stellarnav.light { background: rgba(255, 255, 255, 0.1); }
.stellarnav.light a { color: #000; }
.stellarnav.light ul ul { background: rgba(255, 255, 255, 1); }
.stellarnav.light li a { color: #000; }

/* dark theme */
.stellarnav.dark { background: rgba(0, 0, 0, 1); }
.stellarnav.dark a { color: #FFF; }
.stellarnav.dark ul ul {  }
.stellarnav.dark li a {}
/* sticky nav */
.stellarnav.fixed { position: fixed; width: 100%; top: 0; left: 0; z-index: 9999; }

/* only used when 'scrollbarFix' is set to true in the js. This fixes horizontal scrollbar caused by the dd menus that are very long.*/
body.stellarnav-noscroll-x { overflow-x: hidden; }

/* general styling */
/*
.stellarnav li.has-sub > a:after { content: ''; margin-left: 10px; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 6px solid #FFF; display: inline-block; }
*/
.stellarnav li.subnav > a {
	padding-right: 26px !important;
	}
.stellarnav li.subnav > a:after {
	position: absolute;
	font-family: "Font Awesome 5 Free";
	content: '\f107';
	top: 10px;
	width: 0;
	height: 0;
	margin-left: 10px;
	font-weight: 900;
	/*background-color:#000;*/
}


/*
.stellarnav li li.has-sub > a:after { margin-left: 10px; float: right; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 6px solid #FFF; position: relative; top: 4px; }
.stellarnav li.drop-left li.has-sub > a:after { float: left; margin-right: 10px; border-left: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-right: 6px solid #FFF; }
.stellarnav.hide-arrows li.has-sub > a:after, .stellarnav.hide-arrows li li.has-sub > a:after, .stellarnav.hide-arrows li.drop-left li.has-sub > a:after { display: none; }

*/

.stellarnav .menu-toggle, .stellarnav .close-menu, .stellarnav .call-btn-mobile, .stellarnav .location-btn-mobile { display: none; text-transform: uppercase; text-decoration: none; }
.stellarnav .dd-toggle { display: none; position: absolute; top: 0; right: 0; padding: 0; width: 48px; height: 48px; text-align: center; z-index: 9999; border: 0; }
/*
.stellarnav.desktop li.has-sub a { padding-right: 5px; }
.stellarnav.desktop.hide-arrows li.has-sub a { padding-right: 15px; }
.stellarnav.mobile > ul > li > a.dd-toggle { padding: 0; }
.stellarnav li.call-btn-mobile, .stellarnav li.location-btn-mobile { display: none; }
.stellarnav svg { fill: currentColor; width: 1em; height: 1em; position: relative; top: 2px; }
*/


.stellarnav a.dd-toggle .icon-plus { box-sizing: border-box; transition: transform 0.3s; width: 12px; height: 100%; position: relative; vertical-align: middle; display: inline-block; }
.stellarnav a.dd-toggle .icon-plus:before { content: ''; display: block; width: 12px; height: 0px; border-bottom: solid 3px #777; position: absolute; top: 50%; transform: rotate(90deg); transition: width 0.3s; }
.stellarnav a.dd-toggle .icon-plus:after { content: ''; display: block; width: 12px; height: 0px; top: 50%; border-bottom: solid 3px #777; position: absolute; }
.stellarnav li.open > a.dd-toggle .icon-plus { -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate(135deg); }
.stellarnav.light a.dd-toggle .icon-plus:before { border-color: #000; }
.stellarnav.light a.dd-toggle .icon-plus:after { border-color: #000; }
.stellarnav.dark a.dd-toggle .icon-plus:before { border-color: #FFF; }
.stellarnav.dark a.dd-toggle .icon-plus:after { border-color: #FFF; }

.stellarnav .icon-close { box-sizing: border-box; width: 12px; height: 12px; position: relative; display: inline-block; }
/*
.stellarnav .icon-close:before { content: ''; display: block; width: 12px; height: 0px; border-bottom: solid 3px #777; position: absolute; top: 50%; transform: rotate(45deg); }
.stellarnav .icon-close:after { content: ''; display: block; width: 12px; height: 0px; top: 50%; border-bottom: solid 3px #777; position: absolute; transform: rotate(-45deg); }
*/

.stellarnav.light .icon-close:before { border-color: #000; }
.stellarnav.light .icon-close:after { border-color: #000; }
.stellarnav.dark .icon-close:before { border-color: #FFF; }
.stellarnav.dark .icon-close:after { border-color: #FFF; }

/* mobile nav */
.stellarnav .menu-toggle, .stellarnav .call-btn-mobile, .stellarnav .location-btn-mobile, .stellarnav .close-menu { padding: 15px; box-sizing: border-box; }
.stellarnav .menu-toggle span.bars { display: inline-block; margin-right: 7px; position: relative; top: 3px; }
.stellarnav .menu-toggle span.bars span { display: block; width: 15px; height: 2px; border-radius: 6px; background: #777; margin: 0 0 3px; }
.stellarnav .full { width: 100%; }
.stellarnav .half { width: 50%; }
.stellarnav .third { width: 33%; text-align: center; }
.stellarnav .location-btn-mobile.third { text-align: center; }
.stellarnav .location-btn-mobile.half { text-align: right; }
.stellarnav.light .third, .stellarnav.light .half { border-left: 1px solid rgba(0, 0, 0, .15); }
.stellarnav.light.left .third, .stellarnav.light.left .half { border-bottom: 1px solid rgba(0, 0, 0, .15); }
.stellarnav.light.right .third, .stellarnav.light.right .half { border-bottom: 1px solid rgba(0, 0, 0, .15); }
.stellarnav.light .third:first-child, .stellarnav.light .half:first-child { border-left: 0; }
.stellarnav.dark .third, .stellarnav.dark .half { border-left: 1px solid rgba(255, 255, 255, .15); }
.stellarnav.dark.left .third, .stellarnav.dark.left .half { border-bottom: 1px solid rgba(255, 255, 255, .15); }
.stellarnav.dark.right .third, .stellarnav.dark.right .half { border-bottom: 1px solid rgba(255, 255, 255, .15); }
.stellarnav.light.left .menu-toggle, .stellarnav.light.right .menu-toggle { border-bottom: 0; }
.stellarnav.dark.left .menu-toggle, .stellarnav.dark.right .menu-toggle { border-bottom: 0; }
.stellarnav.dark .third:first-child, .stellarnav.dark .half:first-child { border-left: 0; }
.stellarnav.light .menu-toggle span.bars span { background: #000; }
.stellarnav.dark .menu-toggle span.bars span { background: #FFF; }
.stellarnav.mobile { position: static; }
.stellarnav.mobile.fixed { position: static; }
.stellarnav.mobile ul { position: relative; display: none; }
.stellarnav.mobile.active { padding-bottom: 0; }
.stellarnav.mobile.active > ul { display: block; }
.stellarnav.mobile ul { text-align: left; }
.stellarnav.mobile > ul > li { display: block; }
.stellarnav.mobile > ul > li > a { padding: 15px; }
.stellarnav.mobile ul { background: rgba(221, 221, 221, 1); }
.stellarnav.mobile ul ul { position: relative; opacity: 1; visibility: visible; width: auto; display: none; -moz-transition: none; -webkit-transition: none; -o-transition: color 0 ease-in; transition: none; }
.stellarnav.mobile ul ul ul { left: auto; top: auto; }
.stellarnav.mobile li.drop-left ul ul { right: auto; }
.stellarnav.mobile li a { border-bottom: 1px solid rgba(255, 255, 255, .15); }
.stellarnav.mobile > ul { border-top: 1px solid rgba(255, 255, 255, .15); }
.stellarnav.mobile.light li a { border-bottom: 1px solid rgba(0, 0, 0, .15); }
.stellarnav.mobile.light > ul { border-top: 1px solid rgba(0, 0, 0, .15); }
.stellarnav.mobile li a.dd-toggle { border: 0; }
.stellarnav.mobile.light li a.dd-toggle { border: 0; }
.stellarnav.mobile .menu-toggle, .stellarnav.mobile .dd-toggle, .stellarnav.mobile .close-menu, .stellarnav.mobile .call-btn-mobile, .stellarnav.mobile .location-btn-mobile { display: inline-block; }
.stellarnav.mobile li.call-btn-mobile { border-right: 1px solid rgba(255, 255, 255, .1); box-sizing: border-box; }
.stellarnav.mobile li.call-btn-mobile, .stellarnav.mobile li.location-btn-mobile { display: inline-block; width: 50%; text-transform: uppercase; text-align: center; }
.stellarnav.mobile li.call-btn-mobile.full, .stellarnav.mobile li.location-btn-mobile.full { display: block; width: 100%; text-transform: uppercase; border-right: 0; text-align: left; }
.stellarnav.mobile.light ul { background: rgba(255, 255, 255, 1); }
.stellarnav.mobile.dark ul { background: rgba(0, 0, 0, 1); }
.stellarnav.mobile.dark ul ul { background: rgba(255, 255, 255, .08); }
.stellarnav.mobile.light li.call-btn-mobile { border-right: 1px solid rgba(0, 0, 0, .1); }
.stellarnav.mobile.top { position: absolute; width: 100%; top: 0; left: 0; z-index: 9999; }
.stellarnav.mobile li.has-sub > a:after, .stellarnav.mobile li li.has-sub > a:after, .stellarnav.mobile li.drop-left li.has-sub > a:after { display: none; }

/* left and right positions */
/*
.stellarnav.mobile.right > ul, .stellarnav.mobile.left > ul { position: fixed; top: 0; bottom: 0; width: 100%; max-width: 280px; overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; }
*/

.stellarnav.mobile.right > ul { 
position: fixed;
top: 0;
bottom: 0;
width: 100%;
max-width: 280px;
overflow-x: hidden;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

.stellarnav.mobile.right > ul { right: 0; }
.stellarnav.mobile.right .close-menu, .stellarnav.mobile.left .close-menu { display: inline-block; text-align: right; }
.stellarnav.mobile.left > ul { left: 0; }
.stellarnav.mobile.right .location-btn-mobile.half, .stellarnav.mobile.right .call-btn-mobile.half, .stellarnav.mobile.right .close-menu.half { text-align: center; }
.stellarnav.mobile.right .location-btn-mobile.third, .stellarnav.mobile.right .call-btn-mobile.third, .stellarnav.mobile.right .close-menu.third { text-align: center; }
.stellarnav.mobile.left .location-btn-mobile.half, .stellarnav.mobile.left .call-btn-mobile.half, .stellarnav.mobile.left .close-menu.half { text-align: center; }
.stellarnav.mobile.left .location-btn-mobile.third, .stellarnav.mobile.left .call-btn-mobile.third, .stellarnav.mobile.left .close-menu.third { text-align: center; }
.stellarnav.mobile.left .menu-toggle.half, .stellarnav.mobile.left .menu-toggle.third, .stellarnav.mobile.right .menu-toggle.half, .stellarnav.mobile.right .menu-toggle.third { text-align: left; }
.stellarnav.mobile.left .close-menu.third span, .stellarnav.mobile.right .close-menu.third span { display: none; }
/* left and right positions */


/* 追加 */
@media only screen and (min-width : 821px) {
.stellarnav {background: rgba(255, 0, 0, 0.1) ; }
.stellarnav li a:hover {background: rgba(255, 255, 0, 1.0) ; }
.stellarnav .subnav {}
.stellarnav ul ul {margin-left:-4px !important; }
.stellarnav li a { color: #fff; }
.stellarnav li ul a { color: #000 !important; background-color:#FFF !important }
.stellarnav li ul a:hover { background-color:#ccc !important }
.stellarnav li ul li a {
	margin-bottom: 0px;
	border: 1px solid #CCC;
}
.stellarnav li a:hover {background: rgba(0, 0, 255, 0.8) ; }
.stellarnav li ul a:hover {background: rgba(0,0,0,0.1); }

.stellarnav li:hover > a {
	color: #000;
	background: rgba(255,255,255,1);
}

}

/* Fallback for slow javascript load */
@media only screen and (max-width : 820px) {
	header { height:60px;}
	.logo {}
	.logo img { width:180px;}
	.summary {display:none;}
	.stellarnav {
	overflow: hidden;
	display: block;
	background-color: #000 !important;
	margin-top: 3px;
	margin-right: 3px;
}
	.stellarnav ul { position: relative; display: none; }

/* 追加 */
.stellarnav {
	background: rgba(0, 0, 0, 1.0);
	display: inline-block;
	width: 100px;
	position: fixed !important;
	top: 0px;
	right: 0px !important;
	white-space: nowrap;
}



}

/* mobile nav */
@media only screen and (max-width : 420px) {
	.stellarnav.mobile .call-btn-mobile.third span, .stellarnav.mobile .location-btn-mobile.third span { display: none; }
}
