/*!----------------------------------------*
 *
 *  license. Copyright.
 *
 *  2014 Visiondgn ビジョンデザイン
 *  http://www.visiondgn.com/
 *  無断複製等を禁じます
 *
 *----------------------------------------*/
@charset "utf-8";

.header{
/*    margin-bottom: 30px;*/
/*    padding-top:2px; */
}

@media (min-width: 768px){
.header .dropdown:hover > .dropdown-menu, #h002 .dropdown:hover > .dropdown-menu{
  display: block;
}
}
.h008 h1 *{
    font-size: 26px !important;
    line-height: 1.0em;
}

img.logo {
    max-height: 100px;
}
@media (min-width: 768px) and (max-width: 900px){
img.logo {
    max-width: 280px;
}
}
@media (max-width: 767px){
    .header{
        margin-bottom: 0px;
        padding-top:0px;
    }
    .h008 h1 *{
        font-size: 18px !important;
        line-height: 1.0em;
    }
    img.logo {
        max-height: 70px;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .h011{
        display: flex !important;
        -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap;
        flex-direction: column-reverse;
        justify-content: center;
     }
     .h011>div{
    }
    .h006{
        padding-top:2px;
    }
}
img.logo_left{
    margin-right: initial;
    margin-left: initial;
}
img.logo_center{
    margin-right: auto;
    margin-left: auto;
}
.logo_txt{
    margin-top: 12px;
}
#h001{
	max-height: inherit;
	border-color: #eee;
    position: relative;
}

.h006{
    font-size: 12px;
    color: #666;
}

#navbar, .h002_sp{
    background-color: rgba(25,25,112, 1);
    color: #fff;
    border-bottom: rgba(0,0,70, 1) 2px solid;

}
.h002_sp{
    padding-top: 6px;
    padding-bottom: 6px;
}
#h002>li>a:link, #h002>li>a:visited, .h002_sp>a:link,.h002_sp>a:visited{
    color: #fff;
}
#h002 a:hover, .h002_sp:hover{
    font-weight: 500;
}
/* ヘッダナビゲーション> */
#h002{
	white-space:nowrap;
    list-style: none;
    line-height: 1em;
    padding-top: 4px;
    padding-bottom: 4px;
    float: none;
    margin-left: -15px;
    margin-right: -15px;
}
/*
#h002>li:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
*/
#h002>li{
    padding:0;
}
/*
#h002>li>ul a:link, #h002>li>ul a:visited{
    color: #333 !important;
}
*/
#h002>li>ul>li>a{
    padding-top:12px;
    padding-bottom:12px;
    padding-left: 12px;
}
#h002>li>ul>li a:hover{
    background-color: rgba(27,73,145,0.1);
}
/* タブレット以上の場合 */
@media (min-width: 768px){
    #h002{
        display: flex;
        align-items: center;
    }
    #h002>li{
        border-left: solid #fff 1px;
    }
    .h002_sideline{
        border-right: solid #fff 1px;
    }
}
@media (min-width: 768px) and (max-width: 991px){
    #h002{
        font-size: 0.9rem;
    }
    .h009{
        font-size: 0.9rem;
    }
    .h009>div{
        padding-left: 0px;
    }
}

@media (max-width: 991px) and (max-width: 768px){
    #h002 li.h002_001{
        padding-top: 4px;
    }
}
.h002_03{
    display: none;
}
.h002_04{
    display: block;
    margin-right: auto;
    margin-left: auto;
}
@media (max-width: 767px){
.h002_03{
    display: inline-block;
}
}

/* <ヘッダナビゲーション */

.h004{
    height: 20px;
/*    margin-top: 12px;*/
    font-size: 1.5em;
}

/* SNSリンク（カラー：v2.2.3より） */
.h011_new .fa-twitter:before, .h004_new .fa-twitter:before{
    color: #55acee;
}
.h011_new .fa-twitter:before, .h004_new .fa-square-x-twitter:before{
    color: #000;
}
.h011_new .fa-youtube:before, .h004_new .fa-youtube:before{
    color: #cd201f;
}
.h011_new .fa-facebook-official:before, .h004_new .fa-facebook-official:before{
    color: #3B5998;
}
.h011_new .fa-instagram:before, .h004_new .fa-instagram:before{
    color: #D93177;
    background: -webkit-linear-gradient(-135deg,#1400c8,#b900b4,#f50000);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.h011_new .lsf-icon.line:before, .h004_new .lsf-icon.line:before{
    color: #00b900;
}
.h011_new .h011_line_at img, .h004_new .h004_line_at img{
    display: inline-block;
    height: 18px;
}

.h005{
    font-size:1.2em;
}
.h005 a{
    white-space: nowrap;
}
.h005 span{
    font-size:.6em;
    line-height: 0.8em;
    padding-right: 4px;
}
.h005 li{
    line-height: 0.8em;
}
.icon-bar{
    background-color: #666;
}
.h006 h3{
    margin-bottom: 2px;
}
.h007{
    margin-right: 10px;
    padding-top: 4px;
    float: right;
}
.h007 li{
    display: table-cell;
    vertical-align: middle;
}
/*
.h008{
    margin-bottom: 4px;
}
*/
.h009 li:before{
    font-family:'FontAwesome';
    content: "\f138";
    color: rgba(25,25,112, 1);
    vertical-align: bottom;
    font-size: 0.8em;
    padding-right: 4px;
}
.h009 li>a{
    display: inline-block;
}
li.h009_01:before{
    content: none;
    padding-right: 0;
}
/*
.h010{
    padding-right: 35px;
    padding-top: 16px;
}
*/
/*nav_001>*/
.nav_001{

}
/*<nav_001*/


.h012{
    position: absolute;
    top:-2px;
    right: 0;
    height: 50px;
}
.h012 li{
    vertical-align: top;
}
/*
.h012 li:before{
    font-family:'FontAwesome';
    content: "\f138";
    color: rgba(25,25,112, 1);
    vertical-align: bottom;
    font-size: 0.8em;
    padding-right: 4px;
}
*/
.h012 li>a{
    display: inline-block;
}
li.h012_01:before{
    content: none;
    padding-right: 0;
}
.h012_op{
    padding-top: 30px;
}
.h012_03{
    display: none;
}
.h012_04{
    display: block;
    margin-right: auto;
    margin-left: auto;
}



/* スマホメニューの場合 */
@media (max-width: 767px){
    #h002{
        white-space:inherit;
        padding-top: 4px;
        padding-bottom: 4px;
    }
    #h002 li{
        border-bottom: solid #888 1px;
        padding: 8px 0;
        position: relative;
    }
    #h002>li>a{
        display: block;
        width: 100%;
    }
    #h002>li>a:after{
        position: absolute;
        content: "\f105";
        margin-right: 8px;
        font-family: FontAwesome;
        right: 0;
    }
    #h002 li:last-child{
        border-bottom: none;
    }
    #h002>li>ul *, #h002>li>ul a:link, #h002>li>ul a:visited{
        color: #fff;
    }
    .h007{
        display: flex !important;
        justify-content: center;
        float: none;
        font-size: 1.5em;
    }
    #h002{
        margin-top: 0px;
        margin-bottom: 0px;
    }
    #h002 li>a{
        padding-top: 8px;
        padding-bottom: 8px;
    }
}
header.afterscroll_disp{
    transition : all 300ms;
}