/* 
Ace Responsive Menu Plugin
Version: 1.0
Author: Samson Onna
E-mail: samson3d@gmail.com
----------------------------------------*/
/* Import Fonts
----------------------------------------*/
@import url(http://fonts.googleapis.com/css?family=Roboto);

body{
	-webkit-text-size-adjust: 100%;	
}
/* 共通
----------------------------------------*/
ul {
    margin: 0px;
    padding: 0px;
}

.ace-responsive-menu li{
    list-style: none;
	line-height: 135%;

}

.ace-responsive-menu li a{
	text-decoration: none !important;
}

/*ＰＣレイアウト
----------------------------------------*/

@media print{/*ナビゲーションの印刷をしない*/
    .naviwrap{
        display: none;
    }
}
	

@media screen and (min-width: 801px) {

	
/*検索窓
---------------------------------------------------------------------------*/	


	
header div.inner4 div#headcopy div.search_other .search_box form input.gsc-input{
z-index: 1000000 !important;	
}
	
	button.gsc-search-button.gsc-search-button-v2{/*検索ボタンの装飾*/
		min-width: 33px !important;
		text-align: center !important;
		min-height: 34px !important;
		border-radius: 2px !important;
	}
	
.search_box form input.gsc-input{/*検索ボックス入力欄の装飾　内*/
background-color: #fff !important;
border: 0px solid #000 !important;
padding: 0 !important;
margin: 2px 0 -2px 0 !important;
}

	
/*nav{
margin: 0 auto;
padding: 0;
max-width: 1400px;
position: -webkit-sticky !important;
position:         sticky !important;
top: 0 !important;
}*/
	
nav{
margin: -2px auto 0 auto;/*vegasスライダーの遷移する際の白い下線を非表示にするためmargin-topを-2*/
padding: 0;
width: 100%;
position: -webkit-sticky !important;
position:         sticky !important;
top: 0 !important;
	background-color: #008B3D;
	z-index: 1000 !important;
/* background: -moz-linear-gradient(top, #214392, #0080FF);
    background: -webkit-linear-gradient(top, #214392, #0080FF);
    background: linear-gradient(to bottom, #214392, #0080FF);*/
}
	
nav.nav_other{
margin: 0px auto 0 auto;/*vegasスライダーの遷移する際の白い下線を非表示にするためmargin-topを-1その他ページは無し*/
}
	
	
.naviwrap{
    margin: 0 auto;
    padding: 0;
    min-height: 57px;
	position: relative;
	z-index: 1000!important;
	display: table;
	width: 100%;
	}
	

.ace-responsive-menu {
    list-style: none;
    margin: 0 auto;
    padding: 0 0 0 10px;
    max-width:1390px;
	height: auto;
	background-color: #008B3D;
/*    background: -moz-linear-gradient(top, #214392, #0080FF);
    background: -webkit-linear-gradient(top, #214392, #0080FF);
    background: linear-gradient(to bottom, #214392, #0080FF);*/
	border-radius: 4px;
	display: table-cell;

}

ul[data-menu-style="vertical"] {
    width: 200px;
}
ul[data-menu-style="vertical"] > li {
    float: none;
}
ul[data-menu-style="vertical"] > li:first-child {
    border-top: 2px solid #fff;
}
ul[data-menu-style="vertical"] li ul.sub-menu > li {
    width: 100%;
}
ul[data-menu-style="vertical"] > li > a > .arrow:before {
    float: right;
    content: "\f105";
}
ul[data-menu-style="vertical"] > li.menu-active {
position:relative;
}
ul[data-menu-style="vertical"] > li > ul.sub-menu {
    position: absolute;
    left:200px;
    top:0px;
    width:200px;
}
ul[data-menu-style="vertical"] > li > a i {
    padding-right: 10px;
    color: #FF5737;
}
ul[data-menu-style="vertical"]> li > ul.sub-menu > li ul.sub-menu {
    position: absolute;
    width:200px;
    left: 200px;
}
ul[data-menu-style="vertical"] > li > ul.sub-menu > li ul.sub-menu > li ul.sub-menu {
    position: absolute;
    width:200px;
    left: 200px;
}
ul[data-menu-style="vertical"] > li {
    border-bottom: 1px solid #B9E1A6;
}
ul li a:hover {
    background-color: #004821 !important;
}

.ace-responsive-menu li ul {
    display:none;
}
.ace-responsive-menu > li {
    display: block;
    margin: 0;
    padding: 0;
    border: 0px;
    float: left;
}
.ace-responsive-menu li a {
        color:#fff;
}
.ace-responsive-menu > li > a {
    display: block;
    position: relative;
    margin: 0;
    border: 0px;
    padding: 18px 20px 18px 12px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 300;
    color: #fff;
}
	

.ace-responsive-menu li a i {
    padding-right: 5px;
    color: #FF5737;
}
.ace-responsive-menu > li > a i {
    font-size: 15px;
    text-shadow: none;
    color: #FF5737;
}
.ace-responsive-menu li ul.sub-menu li a i {
    padding-right: 10px;
}
.ace-responsive-menu li.menu-active > a {
    background: none ;
    color:#fff;
}
.ace-responsive-menu li .menu-active {
    position: relative;
}
.ace-responsive-menu > li > a > .arrow:before {  
    margin-left: 15px;
    display: inline;
    font-size: 15px;
    font-family: FontAwesome;
    height: auto;
    content: "\f107";
    font-weight: 300;
    text-shadow: none;
    width: 10px;
    display: inline-block;
}
.ace-responsive-menu li ul.sub-menu li > a > .arrow:before {
    content: "\f105" !important;
}
.ace-responsive-menu > li > ul.sub-menu {
    display: none;
    list-style: none;
    clear: both;
    margin: 0;
    position: absolute;
}
.ace-responsive-menu li ul.sub-menu {
    background: #59B200;
}
.ace-responsive-menu li ul.sub-menu > li {
    min-width: 185px;
}
	

.ace-responsive-menu li ul.sub-menu li a {
    display: block;
    margin: 0px 0px;
    padding: 12px 20px 12px 15px;
    text-decoration: none;
    font-size: 15px;
    font-weight: normal;
    background: none;
	border-bottom: 1px solid #CFFFBF;
	border-left: 1px solid #CFFFBF;
}
.ace-responsive-menu > li > ul.sub-menu > li {
    position: relative;
}
.ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu {
    position: absolute;
    left: 185px;
    top: 0px;
    display: none;
    list-style: none;
}
.ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu > li ul.sub-menu {
    position: absolute;
    left: 185px;
    top: 0px;
    display: none;
    list-style: none;

}
.ace-responsive-menu > li > ul.sub-menu li > a > .arrow:before {
    float: right;
    margin-top: 1px;
    margin-right: 0px;
    display: inline;
    font-size: 15px;
    font-family: FontAwesome;
    height: auto;
    content: "\f104";
    font-weight: 300;
    text-shadow: none;
}

	.menu_width{
width: 340px;
	}
	
}




/*ＰＣレイアウトで画面サイズを小さくすると二行になるのを防ぐ処理
----------------------------------------*/
@media screen and (min-width: 1293px) {
.toplevel{
	width: auto;
		margin: 0 !important;
		padding: 0 !important;

	}
}

@media screen and (max-width: 1292px) {
.toplevel{
		max-width: 11.1%;
		margin: 0 !important;
		padding: 0 !important;

	}
}




/*印刷レイアウト
----------------------------------------*/
@media print { 
.ace-responsive-menu li{
    list-style: none;
	line-height: 135%;
	width: 11.1%;
}

.ace-responsive-menu li a{
	font-size: 10px !important;
	line-height: 135%;
}
}












/* Menu Toggle Btn
----------------------------------------*/
.menu-toggle {
    display: none;
    float: left;
    width: 100%;
    background: #fff;
}

.menu-toggle h3{
	font-family:sans-serif;	/*フォント種類*/

}
.menu-toggle h3 img{
    float: left;
    padding: 11px 11px;
	width: 250px !important;
	height: 42px;
}


.menu-toggle .icon-bar {
    display: block !important;
    width: 18px;
    height: 2px;
    background-color: #F5F5F5 !important;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
    margin: 3px;
}
.menu-toggle .icon-bar:hover {
    background-color: #F5F5F5 !important;
}
.menu-toggle #menu-btn {
    float: right;
    background: #008B3D;
    border: 1px solid #008B3D;
    padding: 8px;
    border-radius: 5px;
    cursor: pointer;
    margin: 14px !important;
}
.hide-menu {
    display: none;
}




/*800ピクセル以下
----------------------------------------*/

@media screen and (max-width: 800px),
       screen and (max-width: 1024px) and (orientation: landscape) {

/*@media screen and (max-width: 800px) {*/
	
nav{
position: fixed;
top: 0 !important;
width: 100%;
z-index: 100000 !important;
min-height: 64px !important;
max-height: 100% !important;
height: auto;
overflow-y: scroll !important;
box-shadow: 0px 2.5px 2.5px rgba(0,0,0,0.25);
background: none !important;
background-color: transparent !important;
border: none !important;
}
	


/*androidスマホのみ第三階層の文字が自動で拡大してしまう件の対策*/
nav div.naviwrap ul.ace-responsive-menu li.toplevel ul li a{
	max-height: 100% !important;
}
	
.ace-responsive-menu {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    background: #008B3D;  
    max-width:1400px;
	z-index: 1000!important;
	position: relative;
	overflow: visible;
	display: none;
}
	

	
/*検索窓
---------------------------------------------------------------------------*/
.ace-responsive-menu li.navi_mobile{
	background-color: #fff !important;
}
	
.navi_mobile{
	padding: 10px !important;
	background-color: #fff !important;
}
	
	.search_box.mobile_sc{
		width: auto !important;
		margin: 7px 5px 7px 4px !important;
	}
	
	
	.search_box.mobile_sc form.gsc-search-box.gsc-search-box-tools{/*検索ボックス入力欄の装飾　さらにさらにさらに外*/
		border: 1px solid #190066 !important;
		border-radius: 1px 1px 1px 1px !important;
		padding: 0 0 0 3px !important;
		margin: 0 0 0 0 !important;
		width: calc(100% - 5px);
	}

	.search_box.mobile_sc form div.gsc-input-box{/*検索ボックス入力欄の装飾　さらにさらに外*/
		border: 0px solid #ccc !important;
		border-radius: 0 0 0 0 !important;
		padding: 5px 5px 5px 6px !important;
		margin: 0 !important;
	}
	
	.search_box.mobile_sc form table.gstl_51.gsc-input{/*検索ボックス入力欄の装飾　さらに外*/
		border: 0px solid #333 !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.search_box.mobile_sc form td.gsib_a{/*検索ボックス入力欄の装飾　外*/
		border: 0px solid #FF007F !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.search_box.mobile_sc form input.gsc-input{/*検索ボックス入力欄の装飾　内*/
		background-color: #fff !important;
		border: 0px solid #000 !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	

	button.gsc-search-button.gsc-search-button-v2{/*検索ボタンの装飾*/
		min-width: 34px !important;
		text-align: center !important;
		background-image: url("../img_mb/mm_icon.png") !important;
		background-repeat: no-repeat !important;
		background-size: 20px 20px !important;
		background-position: right 10px bottom 6px;
		min-height: 34px !important;
		background-color: #fff !important;
		border:0px solid #fff !important;
	}
	
	button.gsc-search-button.gsc-search-button-v2 svg{
		display: none !important;
	}
	

/*検索内容のクリアボタン×印　hover時の表示*/
	a:hover.gsst_a span.gscb_a{
		background-color: #fff !important;
	}
	
		a:hover.gsst_a{
		background-color: #fff !important;
	}
	
	div.gsst_b a:hover.gsst_a{
		background-color: #fff !important;
	}

	
	
.ace-responsive-menu li ul {
    display:none;
}
.ace-responsive-menu > li {
    display: block;
    margin: 0;
    padding: 0;
    border: 0px;
    float: left;
}
.ace-responsive-menu li a {
        color:#fff;
}
.ace-responsive-menu > li > a {
    display: block;
    position: relative;
    margin: 0;
    border: 0px;
    padding: 18px 20px 18px 12px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 300;
    color: #fff;
}
.ace-responsive-menu li a i {
    padding-right: 5px;
    color: #FF5737;
}
.ace-responsive-menu > li > a i {
    font-size: 15px;
    text-shadow: none;
    color: #FF5737;
}
.ace-responsive-menu li ul.sub-menu li a i {
    padding-right: 10px;
}
.ace-responsive-menu li.menu-active > a {
    background: #00B285 ;
    color:#fff;
}
.ace-responsive-menu li .menu-active {
    position: relative;
}
.ace-responsive-menu > li > a > .arrow:before {  
    margin-left: 15px;
    display: inline;
    font-size: 15px;
    font-family: FontAwesome;
    height: auto;
    content: "\f107";
    font-weight: 300;
    text-shadow: none;
    width: 10px;
    display: inline-block;
}
.ace-responsive-menu li ul.sub-menu li > a > .arrow:before {
    content: "\f105" !important;
}
.ace-responsive-menu > li > ul.sub-menu {
    display: none;
    list-style: none;
    clear: both;
    margin: 0;
    position: absolute;
}
.ace-responsive-menu li ul.sub-menu {
    background: #59B200;
}
.ace-responsive-menu li ul.sub-menu > li {
    width: 185px;
}
.ace-responsive-menu li ul.sub-menu li a {
    display: block;
    margin: 0px 0px;
    padding: 12px 20px 12px 15px;
    text-decoration: none;
    font-size: 15px;
    font-weight: normal;
    background: none;
}
.ace-responsive-menu > li > ul.sub-menu > li {
    position: relative;
}
.ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu {
    position: absolute;
    left: 185px;
    top: 0px;
    display: none;
    list-style: none;
}
.ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu > li ul.sub-menu {
    position: absolute;
    left: 185px;
    top: 0px;
    display: none;
    list-style: none;
}
.ace-responsive-menu > li > ul.sub-menu li > a > .arrow:before {
    float: right;
    margin-top: 1px;
    margin-right: 0px;
    display: inline;
    font-size: 15px;
    font-family: FontAwesome;
    height: auto;
    content: "\f104";
    font-weight: 300;
    text-shadow: none;
}

		  
		   
.naviwrap{
    margin: 0 auto;
    padding: 0;
    min-height: 0px;
	height: auto;
	position: relative;
	z-index: 1000!important;
	display: table;
	width: 100%;
	background-color: blueviolet;
	}
		   
	.ace-responsive-menu li{
    list-style: none;
	line-height: 135%;
}
	
	.toplevel{
	max-width: 100%;
	}
    
    ul li ul.sub-menu {
        width: 100% !important;
    } 
    .ace-responsive-menu {
        float: left;
        width:100%;
    }
    .ace-responsive-menu > li {
        border-bottom: 1px solid #B9E1A6;
       float: none;
    }   
    .ace-responsive-menu li a:hover {
        background: #004821 !important;
    }
    .ace-responsive-menu > li:first-child {
        border-top: 2px solid #fff;
    }    
    .ace-responsive-menu > li > a i {
        padding-right: 10px;
        color: #FF5737;
    }
    .ace-responsive-menu > li > a > .arrow:before {
        float: right;
        content: "\f105";
    }
    li.menu-active > a > .arrow:before {
        content: "\f107" !important;
    }
    .ace-responsive-menu li ul.sub-menu > li {
        width: 100%;
    }
    .ace-responsive-menu li ul.sub-menu li ul.sub-menu li a
        {
        padding-left: 30px;
    }  
    .ace-responsive-menu li ul.sub-menu li ul.sub-menu li ul.sub-menu li a 
       {
        padding-left: 50px;
    }  
    .ace-responsive-menu > li > ul.sub-menu {
        position: static;
    }
    .ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu {
        position: static;
    }
    .ace-responsive-menu > li > ul.sub-menu > li ul.sub-menu > li ul.sub-menu {
        position: static;
    }
    .ace-responsive-menu li ul.sub-menu li.menu-active > a > .arrow:before {
        content: "\f107" !important;
    }
}


