@charset "utf-8";
#header-info.d_none {
display: none;
}
.nav_fixed {
position: fixed;
background: #fff;;
box-shadow: 0px 3px 15px rgba(0,0,0,0.1);
}
#header {
line-height: 1.6;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.border {
height: 1px;
border-top: #F8B82D 1px solid;
}
#header .container {
width: 1024px;
margin: 0 auto
}
#h_top {
display: flex;
justify-content: space-between;
align-items: center;
margin: 12px auto;
}
#h_top h1 {width: 214px;}
/**固定時**/
.nav_fixed #h_top {margin: 2px auto;}
#page_2nd #h_top {
justify-content: center;
}
#page_2nd .nav_fixed #h_top {
justify-content: space-between;
}
#gNav ul {
position: relative;
display: flex;
}
#gNav li {
font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
position: relative;
margin-right: 2em;
}
#gNav li:last-child {
margin-right: 0;
}
#gNav li i {
font-size: 16px;
margin-left: 5px;
}
#gNav li a {
position: relative;
display: block;
text-align: center;
line-height: 80px;
color: #333;
}

#gNav .sub-menu {
visibility: hidden;
opacity: 0;
z-index: 1;
display: block;
position: absolute;
top: 50px;
left: 50%;
margin-left: -100px;
width: 200px;
-webkit-transition: all .2s ease;
transition: all .2s ease;
}
#gNav .sub-menu a {
padding: 10px;
display: block;
padding: 20px;
line-height: 1.2em;
}

#gNav .sub-menu li {
display: block;
font-size: 16px;
padding: 0;
margin: 0;
}
#gNav .sub-menu li:last-child {
border-bottom: none;
}
#gNav ul>li:hover {
-webkit-transition: all .5s;
transition: all .5s;
}

#gNav li:hover ul.sub-menu {
top: 80px;
visibility: visible;
opacity: 1;
z-index: 9999;
}
#gNav li ul li:after {
content: none;
}
#gNav li:hover ul.sub-menu a {
color: #111;
}
#gNav .sub-menu li a:hover {
background: #fff;
}
#gNav .contact_btn a:hover {
color: #fff;
}
#header {
z-index: 99;
width: 100%;
/**position: fixed;
background: #fff;;**/
top: 0;
left: 0;
}
nav li a {
font-size: 94%;
letter-spacing: -0.01em;
}
nav ul li ul li::after {
background: none;
}
/*ホバーエフェクト設定*/
nav ul li a::before, nav ul li a::after {
position: absolute;
top: 3.4em;
content: "";
display: inline-block;
width: 0;
height: 2px;
background: #EC6400;
transition: .2s;
}
nav ul.sub-menu li a::before, 
nav ul.sub-menu li a::after {top: 2.8em;}
nav ul li a::before {
left: 50%;
}
nav ul li a::after {
right: 50%;
}
nav ul li a:hover::before, nav ul li a:hover::after {
width: 50%;
}
/*モバイル時のホバーエフェクト無し*/
.fixed nav ul li a::before, .fixed nav ul li a::after {
display: none;
}
/*子ナビ*/
nav ul ul {
background: #fff;
border: #EC6400 1px solid;
border-radius: 2px;
}

/*モバイル時*/
.meanmenu-reveal::after {
content: "メニュー"!important;
color: #EC6400!important;
letter-spacing: -0.12em!important;
}
.meanmenu-reveal.meanclose:after {
content: "閉じる"!important;
}
.mean-container .mean-nav ul {
background: #c4c4c4!important;
font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.mean-container .mean-nav ul li:not(:last-child) a {
border-bottom: 1px solid #fff;
}
.mean-container .mean-nav ul li a.mean-expand {
color: #EC6400;
background: #fff;
border-bottom: none;
padding: 1em!important;
font-size: 15px!important;
}
.mean-container .mean-nav ul li a.mean-expand:hover {
background: #fff!important;
color: #EC6400!important;
}
.mean-container .mean-nav ul li a.mean-expand::before, 
.mean-container .mean-nav ul li a.mean-expand::after {
content:none;
}
.mean-container .mean-nav ul li a, .mean-container .mean-nav ul li span.pre {
color: #fff!important;
background: #EC6400;
}
.mean-container .mean-nav ul li li a {
padding: 1em 6%!important;
border: none!important;
background: #fff;
color: #EC6400!important;
}
.mean-container .mean-nav ul li li a:hover {color: #fff!important;}
.mean-container .mean-nav ul li li a::before, 
.mean-container .mean-nav ul li li a::after {content:none;}
.mean-container .mean-nav ul ul {border: none;}


/*電話番号表示（PCナビ固定時）*/
.nav_fixed h1 {display: none;}
#h_top .telBlock {
display: none;
}
.nav_fixed #h_top .telBlock {
display: block;
color: #EC6400;
}
.nav_fixed #h_top .telBlock p.tel {
font-size: 150%;
position: relative;
padding-left: 24px;
line-height: 1;
}
.nav_fixed #h_top .telBlock p.tel::before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f095";
padding-right: 6px;
font-size: 76%;
position: absolute;
top: 3px;
left: 0;
}
.nav_fixed #h_top .telBlock span.chu {
font-size: 80%;
color: #EC6400;
padding-top: 4px;
padding-left: inherit;
text-indent: inherit;
}
.callme {display: none;}

@media only screen and ( max-width: 1024px) {
#header {
height: 64px;
position: relative;
}
#header .container {
width: 96%;
}
#header.nav_fixed {position: fixed;}
h1 img {
width: 200px;
position: absolute;
top: 8px;
left: 10px;
z-index: 100;
}
#gNav .nav {
overflow-y: auto;
height: 100vh;
}
.mean-nav .container {
padding: 0;
}
nav li .fa {
display: none;
}
.mean-container .mean-bar {
position: absolute!important;
}
#page_2nd #h_top {
justify-content: space-between;
margin: 0;
}
#h_top h1, .nav_fixed #h_top .telBlock {display: none;}

#header .mask {
background: rgba(22,34,42,.4);
top: 60px;
left: 0;
z-index: 1;
position: absolute;
width: 100%;
height: 100vh;
opacity: 1;
display: none;
}
/*モバイル用TELマーク*/
.callme {z-index: 99;display: inline-block;}
.callme a {
color: #fff;
background: #EC6400;
position: absolute;
top: 50%;
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
-webkit-animation: headerContactLi1SpAnime 2s ease;
animation: headerContactLi1SpAnime 2s ease;
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
padding: 0 20px;
border-radius: 32px;
padding: 8px 16px;
}
.callme i {
display: inline-block;
color: #fff!important;
padding-right: 4px;
}
.callme p {
color: #fff;
display: inline-block;
padding-left: 4px;
}

}
