/*
Item name: Menuzord - Responsive Megamenu
Author: marcoarib - marco.arib@gmail.com
License: http://codecanyon.net/licenses
*/

/*
	CONTENTS:
	
	 1 - MENU CONTAINER
	 2 - MENU
		- Right alignment
		- Menu items
		- Active/hover state
	 3 - DROPDOWN
		- Dropdown items
		- Hover state
		- Dropdown left alignment
	 4 - DROPDOWN/MEGAMENU INDICATORS
	 5 - MEGAMENU
	 6 - MEGAMENU WIDTHS
		- Half width
		- Quarter width

	=================================

	7 - CUSTOM STYLES by BTRAX
		- Main Navigation 
		- Mega Menu
		- Sidebar Icon Navigation
*/

/* 1 - MENU CONTAINER
======================================*/
.menuzord,
.menuzord *{
	box-sizing:border-box;
	-moz-box-sizing:border-box; 
	-webkit-box-sizing:border-box;
}
.menuzord{
	width: 100%;
	padding: 0 30px;
	float: left;
	position: relative;
	background: #fff;
}
.menuzord a{
	-o-transition: color .2s linear, background .2s linear;
	-moz-transition: color .2s linear, background .2s linear;
	-webkit-transition: color .2s linear, background .2s linear;
	transition: color .2s linear, background .2s linear;
}

/* 2 - MENU
======================================*/
.menuzord-menu{
	margin: 0;
	padding: 0;
	float: right; /* ------ changed by btrax ------ */
	list-style: none;
}
/* Right alignment */
.menuzord-menu.menuzord-right{
	float: right;
}
/* Menu items */
.menuzord-menu > li{
	display: inline-block;
	float: left;
}
.menuzord-menu > li > a{
	padding: 26px 16px;
	display: inline-block;
	text-decoration: none;
	font-size: 15px; font-size: 1.5rem;
	font-weight: bold;
	color: #888;
	outline: 0;
	line-height: 1.42857143;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-tap-highlight-color: transparent;
}
/* Active/hover state (Menu items) */
.menuzord-menu > li.active > a,
.menuzord-menu > li:hover > a{
	color: #333;
}

/* 3 - DROPDOWN
======================================*/
.menuzord-menu ul.dropdown,
.menuzord-menu ul.dropdown li ul.dropdown{
	list-style: none;
    margin: 0;
    padding: 0;   
	display: none;
    position: absolute;
    z-index: 99;
	min-width: 180px;
	white-space: nowrap;
	background: #fff;
}
.menuzord-menu ul.dropdown li ul.dropdown{
    left: 100%;
}
/* Dropdown items */
.menuzord-menu ul.dropdown li{
	clear: both;
	width: 100%;
	border: 0 none;
	font-size: 12px; font-size: 1.2rem;
	position: relative;
}
.menuzord-menu ul.dropdown li a{
	width: 100%;
	background: none;
	padding: 10px 25px 10px 22px;
	color: #888;
	text-decoration: none;
	display: inline-block;
	float: left;
	clear: both;
	position: relative;
	outline: 0;
	-o-transition: padding .2s linear;
	-moz-transition: padding .2s linear;
	-webkit-transition: padding .2s linear;
	transition: padding .2s linear;
}
/* Hover state (dropdown items) */
.menuzord-menu ul.dropdown li:hover > a{
	padding-left: 28px;
	padding-right: 19px;
	color: #333;
}

/* Dropdown left alignment */
.menuzord-menu ul.dropdown.dropdown-left{
	left: 0;
}
.menuzord-menu ul.dropdown li ul.dropdown.dropdown-left{
	left: -100%;
}

/* 4 - DROPDOWN/MEGAMENU INDICATORS
======================================*/
.menuzord-menu li .indicator{
	margin-left: 3px;
}
.menuzord-menu li ul.dropdown li .indicator{
	position: absolute;
	top: 8px;
	right: 10px;
	font-size: 15px; font-size: 1.5rem;
}

/* 5 - MEGAMENU
======================================*/

.menuzord-menu > li > .megamenu{
	width: 100%;
	padding: 20px 30px;
	left: 0;
	position: absolute;
	display: none;
	z-index: 99;
	border-top: solid 1px #f0f0f0;
	background: #fff;
}

@media (max-width:1024px) {
	
}
@media (max-width:920px) {
	.menuzord-menu > li > .megamenu{
		width: calc(100% + 17vw);		
		/*left: -13vw;*/
		left: -3vw;		
	}
}
@media (max-width:767px) {
	
	.menuzord-menu > li > .megamenu{
		margin-left: calc(-50vw + 50%);
		margin-right: calc(-50vw + 50%);
		width: 96vw !important;
	}
	#menuzord > ul{
		margin: 51px 0 0 0!important;
	}
	.header-inner .menuzord > div{
		position: fixed;
		background: white;
		width: 100%;
		height: 51px;
		z-index:100;
	}
}
/* 6 - MEGAMENU WIDTHS
======================================*/
/* Half width */
.menuzord-menu > li > .megamenu.megamenu-half-width{
	width: 50%;
	left: auto;
}
/* Quarter width */
.menuzord-menu > li > .megamenu.megamenu-quarter-width{
	width: 25%;
	left: auto;
}




/* 7 - CUSTOM STYLES by BTRAX
======================================*/

/*--------------------------------------------------------------
 Main Navigation 
--------------------------------------------------------------*/
#menuzord ul {
	margin: 30px 80px 0 0;
}
#menuzord li {
	float: left;
}
#menuzord li a {
	height: 50px;
	padding: 0 1em;
	display: block;
	color: #404040;
	line-height: 50px;
	font-weight: bold;
	font-size: 15px;
}
#menuzord span {
	display: inline-block;	
	font-size: 0.75em;
	color: #bbb;
	vertical-align: 1px;
}
#menuzord .menuzord-menu > li.active > a, 
#menuzord .menuzord-menu > li:hover > a, 
#menuzord .menuzord-menu ul.dropdown li:hover > a{ 
	color: #666; 
	background: #eee;
}
.menuzord {
	background: none;
}


@media (min-width:768px) and (max-width:1024px) {
	#menuzord ul {
		margin: 0 !important;
	}
}

@media (max-width:1024px) {

/*#menuzord ul {
	margin: 0 !important;
}*/
#menuzord li {
	float: left;
}
#menuzord li a {
	height: 50px;
	padding: 0 0.5em;
	display: block;
	color: #404040;
	line-height: 50px;
	font-weight: bold;
	font-size: 1.4rem;
}
.megamenu-title {
	display: none;
}
.menuzord-menu.menuzord-right {
    float: right;
    background-color: #fff;
}
	
	
	
	
}


@media (max-width:767px) {
	

	
	
	.megamenu-inner {
		margin: 2% -2% 0 0;	 
		display: flex;
		width: 100%;
		height: auto;
		
		

		}
	.megamenu-img{
		display:none;
	}
	.megamenu-inner > .megamenu-col:first-child{
		width:0!important;
	}

	.megamenu-col {
		width: 100% !important;
		margin-right: 2%;
		float: none !important;
	}
	.wrap_menu {
		    display: flex;
    flex-direction: column;
    width: 100%;
	}
	#menuzord .menuzord-menu > li > .megamenu {
		background: #eee;
		padding: 1px 15px 15px 15px !important;
		height: auto;
		
	}
}	






/* Mega Menu
--------------------------------------------------------------*/
#menuzord .menuzord-menu > li > .megamenu {
	background: #eee;
	padding: 25px;
	border-bottom: #ccc 1px solid;
}
.megamenu-inner {
	margin: 2% -2% 0 0;
}

.megamenu-col ul {
	margin: 0 !important;
}
.megamenu-col li {
	float: none !important;
}
.megamenu-col li a {
	height: 46px !important;
	padding: 0 10px !important;
	border-bottom: #4e9dff 1px solid;
	background: url(../images/icon_triangle_grey.png) no-repeat right bottom;
	font-size: 15px; font-size: 1.5rem;
	line-height: 46px !important;
}
.megamenu a:hover {
	background-color: #fff;
}
.megamenu a.no-link,
.megamenu a:hover.no-link {
	background: none;
	border-bottom: #aaa 1px solid;
}
.megamenu-title {
	border-bottom: #4e9dff 2px solid;
}
.megamenu-title a {
	height: 40px !important;
	padding: 0 10px !important;
	background: url(../images/icon_triangle_grey.png) no-repeat right bottom;
	font-size: 18px; font-size: 1.8rem !important;
	line-height: 40px !important;
}
.megamenu-img {
	height: 250px;
	overflow: hidden;
}
.megamenu-img img {
	width: 100%;
	height: auto;
}

.megamenu-col {
	width: 23%;
	margin-right: 2%;
	float: left;
}
.megamenu-2col {
	width: 35.5%!important;
	margin-right: 2%;
	float: left;
}


/* PC narrow */
@media screen and (max-width:1259px) {
	.megamenu-col li a {
		
		font-size: 1.4rem !important;
		
	}
	
}


@media (max-width:1024px) {

	.megamenu-col li a {		
		font-size: 1.3rem !important;		
	}
	.megamenu-inner > .megamenu-col {
		width: 11%;
		
	}
	.megamenu-inner > .wrap_menu > .megamenu-col {
		width: 27%;
		
	}
}


/*--------------------------------------------------------------
 Sidebar Icon Navigation
--------------------------------------------------------------*/
#menuzord-icon {
	width: 40px;
	padding: 0;
	position: absolute;
	right: 0;
	top: 80px;
	border-left: #d2d2d2 1px solid;
}
#menuzord-icon li a {
	margin: 0;
	display: block;
	padding: 8px 0 !important;
}
#menuzord-icon img {
	width: 40px;
	height: 40px;
}
#menuzord-icon span {
	display: none;
}
#menuzord-icon .megamenu {
	width: 550px !important;
	left: -551px !important;
	top: 0 !important;
	padding: 20px 25px;
	background-color: #eee;
}
#menuzord-icon .dropdown {
	min-width: 0;
	width: 140px !important;
	left: -141px !important;
	top: 65px !important;
}
#menuzord-icon .menuzord-menu > li > a {
	padding: 0;
}
#menuzord-icon .menuzord-menu > li.active > a, 
#menuzord-icon .menuzord-menu > li:hover > a, 
#menuzord-icon .menuzord-menu ul.dropdown li:hover > a{ 
	background: none;
	opacity: 0.5;
}
.search-container {
	width: 100%;
	height: 40px;
	background: #fff url(../images/bg_search.png) no-repeat right center;
	background-size: 40px 40px;
	border: #ccc 1px solid;
}
.search-field {
	width: 460px;
	height: 40px !important;
	padding: 0 10px !important;
	float: left;
	background: none transparent !important;
	border: none !important;
	font-size: 15px !important; font-size: 1.5rem !important;
	line-height: 40px !important;
}
.search-submit {
	width: 38px;
	height: 38px;
	margin: 0;
	padding: 0 !important;
	float: right;
	background: none transparent !important;
	border: none !important;
	cursor: pointer;
	text-indent: 100px;
}
#menuzord-icon .menuzord-menu ul.dropdown li {
	height: 35px;
	background: #eee;
	font-size: 15px; font-size: 1.5rem !important;
	line-height: 35px;
	border-bottom: #ccc 1px dotted;
}
#menuzord-icon .menuzord-menu ul.dropdown li.active {
	padding: 0 15px;
	color: #aaa;
}
#menuzord-icon .menuzord-menu ul.dropdown li a {
	padding: 0 15px !important;
	background: url(../images/icon_triangle_grey.png) no-repeat right bottom;
	color: #404040;
	opacity: 1 !important;
}
#menuzord-icon .menuzord-menu ul.dropdown li a:hover {
	background: #f8f8f8 url(../images/icon_triangle_grey.png) no-repeat right bottom;
}






/* 追加　FDS 20220727 */




.menuzord-menu > li > .megamenu .megamenu-row {
  width: 100%;
  margin-top: 15px
}
.menuzord-menu > li > .megamenu .megamenu-row:first-child {
  margin-top: 0
}
.menuzord-menu > li > .megamenu .megamenu-row:after, .menuzord-menu > li > .megamenu .megamenu-row:before {
  display: table;
  content: "";
  line-height: 0
}
.menuzord-menu > li > .megamenu .megamenu-row:after {
  clear: both
}
.menuzord-menu > li > .megamenu .megamenu-row .col1, .menuzord-menu > li > .megamenu .megamenu-row .col10, .menuzord-menu > li > .megamenu .megamenu-row .col11, .menuzord-menu > li > .megamenu .megamenu-row .col12, .menuzord-menu > li > .megamenu .megamenu-row .col2, .menuzord-menu > li > .megamenu .megamenu-row .col3, .menuzord-menu > li > .megamenu .megamenu-row .col4, .menuzord-menu > li > .megamenu .megamenu-row .col5, .menuzord-menu > li > .megamenu .megamenu-row .col6, .menuzord-menu > li > .megamenu .megamenu-row .col7, .menuzord-menu > li > .megamenu .megamenu-row .col8, .menuzord-menu > li > .megamenu .megamenu-row .col9 {
  display: block;
  min-height: 20px;
  float: left;
  margin-left: 3%
}
.menuzord-menu > li > .megamenu .megamenu-row [class*=col]:first-child {
  margin-left: 0
}
.menuzord-menu > li > .megamenu .megamenu-row .col1 {
  width: 5.583333333333%
}
.menuzord-menu > li > .megamenu .megamenu-row .col2 {
  width: 14.166666666666%
}
.menuzord-menu > li > .megamenu .megamenu-row .col3 {
  width: 22.75%
}
.menuzord-menu > li > .megamenu .megamenu-row .col4 {
  width: 31.333333333333%
}
.menuzord-menu > li > .megamenu .megamenu-row .col5 {
  width: 39.916666666667%
}
.menuzord-menu > li > .megamenu .megamenu-row .col6 {
  width: 48.5%
}
.menuzord-menu > li > .megamenu .megamenu-row .col7 {
  width: 57.083333333333%
}
.menuzord-menu > li > .megamenu .megamenu-row .col8 {
  width: 65.666666666667%
}
.menuzord-menu > li > .megamenu .megamenu-row .col9 {
  width: 74.25%
}
.menuzord-menu > li > .megamenu .megamenu-row .col10 {
  width: 82.833333333334%
}
.menuzord-menu > li > .megamenu .megamenu-row .col11 {
  width: 91.416666666667%
}
.menuzord-menu > li > .megamenu .megamenu-row .col12 {
  width: 100%
}
/*
.menuzord .showhide {
  width: 60px;
  height: 46px;
  padding: 13px 0 0;
  display: none;
  float: right;
  text-decoration: none;
  outline: 0;
  -webkit-tap-highlight-color: transparent
}
.menuzord .showhide em {
  width: 20px;
  height: 3px;
  margin: 3.5px 20px 0;
  float: right;
  background: #777
}
*/

/*==================================================
　5-2-1 3本線が×に
===================================*/
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.menuzord .showhide {
  position: relative;/*ボタン内側の基点となるためrelativeを指定*/
  float: right;  
  cursor: pointer;
    width: 50px;
    height:50px;
  border-radius: 5px;
  outline: 0;
 -webkit-tap-highlight-color: transparent;
}

/*ボタン内側*/
.menuzord .showhide em{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 11px;
    height: 3px;
    border-radius: 2px;
 	background: #777;
    width: 45%;
  }

.menuzord .showhide em:nth-of-type(1) {
  top:15px; 
}

.menuzord .showhide em:nth-of-type(2) {
  top:23px;
}

.menuzord .showhide em:nth-of-type(3) {
  top:31px;
}

/*activeクラスが付与されると線が回転して×に*/

body.active .menuzord .showhide em:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

body.active .menuzord .showhide em:nth-of-type(2) {
  opacity: 0;/*真ん中の線は透過*/
}

body.active .menuzord .showhide em:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}












.menuzord-menu > li > a > i {
  margin: 0 5px 0 0;
  font-size: 18px;
  float: left;
  line-height: 20px;
  font-family: FontAwesome
}
.menuzord-menu > li.search form {
  float: left;
  padding: 22px 16px 17px
}
.menuzord-menu > li.search form input[type=text] {
  width: 160px;
  padding: 5px 10px;
  font-family: 'Open Sans', sans-serif;
  border: none;
  background: #f0f0f0;
  border-radius: 2px;
  outline: 0;
  -o-transition: width 1s ease-out;
  -moz-transition: width 1s ease-out;
  -webkit-transition: width 1s ease-out;
  transition: width 1s ease-out
}
.menuzord-menu > li.search form:hover input[type=text] {
  width: 160px
}
.menuzord-tabs {
  width: 100%;
  float: left
}
.menuzord-tabs-nav {
  width: 20%;
  margin: 0;
  padding: 0;
  float: left;
  list-style: none
}
.menuzord-tabs-nav > li > a {
  width: 100%;
  padding: 7px 16px;
  float: left;
  font-size: 13px;
  text-decoration: none;
  color: #666;
  border: 1px solid #f0f0f0;
  outline: 0
}
.menuzord-tabs-nav li.active a, .menuzord-tabs-nav li:hover a {
  background: #f0f0f0
}
.menuzord-tabs-content {
  width: 80%;
  min-height: 30px;
  padding: 20px;
  float: right;
  display: none;
  font-size: 13px;
  border: 1px solid #f0f0f0
}
.menuzord-tabs-content.active {
  display: block
}
.menuzord.blue .menuzord-menu ul.dropdown li:hover > a, .menuzord.blue .menuzord-menu > li.active > a, .menuzord.blue .menuzord-menu > li:hover > a {
  color: #4A89DC
}
.menuzord.green .menuzord-menu ul.dropdown li:hover > a, .menuzord.green .menuzord-menu > li.active > a, .menuzord.green .menuzord-menu > li:hover > a {
  color: #37BC9B
}
.menuzord.red .menuzord-menu ul.dropdown li:hover > a, .menuzord.red .menuzord-menu > li.active > a, .menuzord.red .menuzord-menu > li:hover > a {
  color: #E9573F
}
.menuzord.orange .menuzord-menu ul.dropdown li:hover > a, .menuzord.orange .menuzord-menu > li.active > a, .menuzord.orange .menuzord-menu > li:hover > a {
  color: #ff670f
}
.menuzord.yellow .menuzord-menu ul.dropdown li:hover > a, .menuzord.yellow .menuzord-menu > li.active > a, .menuzord.yellow .menuzord-menu > li:hover > a {
  color: #F6BB42
}
.menuzord.purple .menuzord-menu ul.dropdown li:hover > a, .menuzord.purple .menuzord-menu > li.active > a, .menuzord.purple .menuzord-menu > li:hover > a {
  color: #967ADC
}
.menuzord.pink .menuzord-menu ul.dropdown li:hover > a, .menuzord.pink .menuzord-menu > li.active > a, .menuzord.pink .menuzord-menu > li:hover > a {
  color: #D770AD
}


/* TABLET */
@media screen and (max-width:1024px) {
	
}
@media (max-width:767px) {
  .menuzord-responsive.menuzord {
    
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
    background-color: #fff;
    overflow-y: auto;
	
    -webkit-overflow-scrolling: touch;
	
	
  }
  .menuzord-responsive .menuzord-brand {
    margin: 8px 30px 10px 20px;
    font-size: 20px;
    line-height: 1.55
  }
  .menuzord-responsive .showhide {
    margin: 0
  }
  .menuzord-responsive .menuzord-menu {
    width: 100%;
    float: left !important
  }
  .menuzord-responsive .menuzord-menu.scrollable {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch
  }
  .menuzord-responsive .menuzord-menu.scrollable > .scrollable-fix {
    display: block
  }
  .menuzord-responsive .menuzord-menu > li {
    width: 100%;
    display: block;
    position: relative
  }
  .menuzord-responsive .menuzord-menu > li > a {
    width: 100%;
    padding: 12px 20px;
    display: block;
    border-bottom: solid 1px #f0f0f0
  }
  .menuzord-responsive .menuzord-menu > li:first-child > a {
    border-top: solid 1px #f0f0f0
  }
  .menuzord-responsive .menuzord-menu ul.dropdown, .menuzord-responsive .menuzord-menu ul.dropdown li ul.dropdown {
    width: 100%;
    left: 0;
    position: static;
    border: none;
    background: #fff;
    float: left
  }
  .menuzord-responsive .menuzord-menu ul.dropdown li {
    position: relative
  }
  .menuzord-responsive .menuzord-menu ul.dropdown li a {
    border-bottom: solid 1px #f0f0f0
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li > a {
    padding-left: 40px !important
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li > ul.dropdown > li > a {
    padding-left: 60px !important
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li > ul.dropdown > li > ul.dropdown > li > a {
    padding-left: 80px !important
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li:hover > a {
    padding-left: 50px !important
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li > ul.dropdown > li:hover > a {
    padding-left: 70px !important
  }
  .menuzord-responsive .menuzord-menu.menuzord-indented > li > ul.dropdown > li > ul.dropdown > li > ul.dropdown > li:hover > a {
    padding-left: 90px !important
  }
  .menuzord-responsive .menuzord-menu li .indicator {
    width: 60px;
    height: 45px;
    position: absolute;
    right: 0;
    top: 0;
    font-size: 22px;
    text-align: center;
    line-height: 43px;
    border-left: solid 1px #f5f5f5
  }
  .menuzord-responsive .menuzord-menu li ul.dropdown li .indicator {
    height: 38px;
    right: 0;
    top: 0;
    font-size: 18px;
    line-height: 36px;
	transition: all .2s;/*アニメーションの設定*/
  }
 li .indicator.active {
    transform: rotate( 180deg );
	/*transition: all .2s;*//*アニメーションの設定*/
  }
	 
  .menuzord-responsive .menuzord-menu > li > .megamenu {
    width: 100% !important;
    left: 0 !important;
    position: static;
    border-top: none;
    border-bottom: solid 1px #f0f0f0
  }
  .menuzord-responsive .menuzord-menu > li > .megamenu .megamenu-row [class*=col] {
    float: none;
    display: block;
    width: 100% !important;
    margin-left: 0;
    margin-top: 15px
  }
  .menuzord-responsive .menuzord-menu > li > .megamenu .megamenu-row, .menuzord-responsive .menuzord-menu > li > .megamenu .megamenu-row:first-child [class*=col]:first-child {
    margin-top: 0
  }
  .menuzord-responsive .menuzord-menu > li.search form {
    width: 100%;
    margin: 4px 0;
    padding: 10px 16px !important
  }
  .menuzord-responsive .menuzord-menu > li.search form input[type=text], .menuzord-responsive .menuzord-tabs-content, .menuzord-responsive .menuzord-tabs-nav {
    width: 100%
  }
  }