@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&display=swap');
@charset "utf-8";
#header.site_header_25{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
    max-width: 1240px;
    margin: auto;
    padding: 0 20px;
	flex-wrap: nowrap;
}
.site_header_25 .hb_search_form .fa-search:before {
    color: #fff;
}
.site_logo{
    flex-shrink: 0;
    max-width: 70%;
    display: block;
    padding: 10px 0;
}
.stm-header__cell_right{
	flex-shrink: 1;
}
.site_navi_25{
	display: flex;
	list-style: none;
	align-items: center;
    flex-wrap: nowrap;
	margin: 0;
}
.site_navi_25 li{
	width: auto;
    position: relative;
    background-color: #fff;
	color: #333333;
}
.site_navi_25 p,
.site_navi_25 a{
	font-family: "Noto Sans JP" !important;
	color: #333333;
}
.site_navi_25 > li > a,
.site_navi_25 > li > p{
	color: #333333 !important;
    padding: 25px 20px;
}
.site_navi_25 > li > a:hover,
.site_navi_25 > li > p:hover{
	background-color: #fff;
	color: inherit;
}
.site_navi_25 > li > a{
	position: relative;
}
.site_navi_25 > li > a:after{
    content: "";
    position: absolute;
    left: 20px;;
    margin: 0;
	width: 0;
    height: 3px;
    display: block;
    background-color: #337ab7;
	transition: 0.3s;
}
.site_navi_25 > li:hover > a:after{
    width: calc(100% - 40px);
}
.site_navi_25 ul{
	position: absolute;
	top: 100%;
    width: max-content;
	padding: 0;
	list-style: none;
	display: none;
	margin: 0;
    top: 70px;
    z-index: 5;
/*box-shadow: 3px 3px 17px -4px rgba(0,0,0,0.6);
    box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.3);*/
}
.site_navi_25 ul li{
	
}
.site_navi_25 ul ul{
	left: calc(100%);
    top: 0;
	padding-top: 0px;
	padding-left: 10px;
    width: max-content;
}

.site_navi_25 li  li {
    border: solid 1px #ccc;
	border-bottom: 0px;
}
.site_navi_25 li  li:last-child{
    border-bottom: solid 1px #ccc;
}
.site_navi_25 > li:hover > ul{
	display: block;
}
.site_navi_25 > li:hover > ul > li > ul{
	z-index: 2;
}
.site_navi_25 > li:hover > ul > li > ul:after{
    content: "";
    top: 12px;
    right: calc(100% - 4px);
    bottom: auto;
    margin: auto;
    display: none;
    transform: rotate(45deg) skew(-20deg, -20deg);
    transform: rotate(45deg) skew(10deg, 10deg);
    width: 15px;
    height: 15px;
    background-color: #003E8F;
    position: absolute;
	
	    top: 15px;
    width: 10px;
    height: 10px;
}
.site_navi_25 > li:hover > ul > li:hover > ul:after{
	display: block;
}
.site_navi_25 > li:hover > ul > li:hover > ul{
	display: block;
}
.site_navi_25 p,
.site_navi_25 a{
	margin: 0;
	padding: 5px 20px;
	text-decoration: none;
	display: block;
}
.site_navi_25 p:hover,
.site_navi_25 a:hover,
.site_navi_25 li li:hover,
.site_navi_25 li li:hover >a{
	color: #fff;
	background-color: #003E8F;
}


.stm_hb_mbc, .stm_hb_mbc_h:hover, .stm_hb_mbc_b:before, .stm_hb_mbc_b_h:hover:before, .stm_hb_mbc_a:after, .stm_hb_mbc_a_h:hover:after, .stm_hb_mbc_h.active, .stm-search .stm_widget_search button[type=submit] {
	background-color: #214f98 !important;
}


.sp_header .site_logo{
	margin-bottom: 20px;
	display: block;
    max-width: 100%;
}
.sp_navi > ul{
	margin-bottom: 0;
}
.sp_navi .active{
	color: #fff;
	background-color: #003E8F;
}
.sp_navi{
	padding: 0;
}
.sp_navi a{
	text-decoration: none !important;
}
.sp_navi > ul > li > a{
	padding: 10px 10px;
}
.sp_navi{
	margin-bottom: 20px;
}

.sp_header .stm-search_25{
	margin-bottom: 20px;
}
.sp_header .stm-socials{
	display: flex;
	gap:15px;
	margin: 0;
}
.sp_header .stm-socials > a{
	width: 30px  !important;
	height: auto !important;
	margin: 0;
}
@media (min-width: 1201px) {
.sp_header,
.stm_mobile__switcher{
	display: none;
}
}
@media (max-width: 1200px) {
.pc_header{
	display: none;
}
    .stm-header__overlay {
        display: block;
}
	.sp_header.stm-header__hb .stm-navigation ul>li{
		float: none;
	}
	.sp_header .container{
		padding: 0;
	}
    .stm-header {
        position: fixed;
        top: 0;
        bottom: 0;
        left: -270px;
        background-color: #fff;
        padding: 20px !important;
        margin: 0;
        margin-bottom: 0 !important;
        box-shadow: -1px 3px 5px rgba(0, 0, 0, .2);
        overflow-y: auto;
        overflow-x: hidden;
        z-index: 100;
        width: 270px;
        box-sizing: border-box;
 }
	.stm_widget_search_button{
	display: none;
	}
.stm-header__cell_center .stm-header__element {
    margin: 0 !important;
    padding: 0 !important;
	}
    .stm-header .hb_search_form form{
		display: flex;
		gap:10px;
	}
	.stm-header .hb_search_form  input[type=search]{
		padding: 10px;
		border: solid 1px;
	}
	.stm-header .hb_search_form  button{
		background-color: #003E8F!important;
		width: 35px;
	}
	.form-control{
		height: 35px;
	}
	.stm-header	.stm_widget_search{
		max-width: none;
	}
	.stm-header .fa-search:before{
	color: #fff;
	}

    .stm-header.active {
        left: 0;
    }
	.stm-header:before{
	display: none;}
	
    .stm-header__hb .stm-navigation__default>ul>li>a {
		padding: 15px 15px 15px 0;
	}
    .stm-header__hb .stm-navigation__default>ul>li ul.sub-menu {
        padding: 15px 0;
        width: 100%;
        position: static;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        display: none;
    }
	
	.sp_navi ul{
		padding: 0;
		list-style: none;
	}
	.sp_navi > ul{
		border-bottom: solid 1px;
	}
	.sp_navi > ul > li{
	border-top: solid 1px;
	}
	.sp_navi > ul > li > ul{
		display: none;
	}
	.sp_navi > ul > li > ul{
		padding-left: 0px;
        padding-top: 10px;
        padding-bottom: 10px;
	}
	.sp_navi > ul > li > ul > li > ul{
		display: none;
	}
	.sp_navi a{
	}
	.sp_navi > ul > li > a{
		display: block;
		background-image: url("../../../images/header/icon-sankaku.svg");
		background-image: url("../../../images/header/icon-mainasu.svg");
		background-image: url("../../../images/header/icon-plus.svg");
		background-repeat: no-repeat;
		background-size: auto 40%;
		background-position: right 10px center;
	}
	.sp_navi > ul > li > a.active{
		background-image: url("../../../images/header/icon-mainasu.svg")
	}
	.sp_navi > ul > li > ul > li >a{
		background-image: url(../../../images/header/icon-sankaku.svg);
        background-repeat: no-repeat;
        background-position: left 0 center;
        background-size: auto 30%;
        padding: 5px 0px;
        padding-left: 15px;
	}
	.sp_navi > ul > li:nth-child(4) > a,
	.sp_navi > ul > li:nth-child(5) > a{
		background-size: 0;
	}
	.sp_navi a:link{
		display: block;
	}
	.sp_navi a.active{
		background-color: #003E8F;
	}
}

