@charset "utf-8";
@import url("reset.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
/*--京base.css--*/
html {
	/*min-width:1200px;*/
}

body {
	width: 100%;
	/*min-width:1200px;*/
	height: 100%;
	color: #000;
	background-color: #fff;
	font-size: 16px;
	line-height: 1.0;
	position:relative;
	font-family: 'Noto Sans JP', sans-serif;
}

button{
	font-family: 'Noto Sans JP', sans-serif;
}


a{
	/*
	text-decoration: none;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
	*/
}
a:hover {

}

img{
	vertical-align:bottom;
}

#container{
	box-sizing: border-box;
	width: 100%;
	/*min-width:1200px;*/
	position:relative;
	top:0;
	left:0;
	z-index:1;
	padding-top: 100px;
}

/*----------header----------*/
header{
	width:100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	background: rgba(255,255,255,0.95);
	transition: .3s all ease;
	box-shadow: 0 5px 10px -5px rgba(0,0,0,0.2);
}

	header > .box_inner{
		box-sizing: border-box;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		height: 100px;
	}

		header > .box_inner .fig_site_title{
			height: 100%;
		}

			header > .box_inner .fig_site_title a{
				display: flex;
				align-items: center;
				height: 100%;
				padding: 0 20px;
			}

				header > .box_inner .fig_site_title a img{
					max-width: 100%;
					height: auto;
				}

				header > .box_inner .fig_site_title a .fig{
					width: 68px;
					margin-right: 20px;
					transition: .3s all ease;
				}

				header > .box_inner .fig_site_title a:hover .fig{
					transform: scale(1.1, 1.1);
					opacity: 0.8;
				}

				header > .box_inner .fig_site_title a .site_title{
					display: flex;
					flex-direction: column;
					transition: .3s all ease;
				}

				header > .box_inner .fig_site_title a:hover .site_title{
					opacity: 0.8;
				}

					header > .box_inner .fig_site_title a .site_title .lbl_kumanichi{
						width: 140px;
						margin-bottom: 8px;
						min-height: 0%;
					}

					header > .box_inner .fig_site_title a .site_title .lbl_site_title{
						width: 140px;
						min-height: 0%;
					}

		header > .box_inner .header_navs{
			padding-right: 20px;
		}

			header > .box_inner .header_navs .sub_nav_search{
				display: flex;
				justify-content: flex-end;
				align-items: center;
				position: relative;
                z-index: 2;
				margin-bottom: 10px;
			}

				header > .box_inner .header_navs .sub_nav_search .sub_nav{
					position: relative;
					z-index: 2;
				}

					header > .box_inner .header_navs .sub_nav_search .sub_nav > ul{
						display: flex;
					}

						header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li{
                            margin-right: 20px;
                            /*white-space: nowrap;*/
                            position: relative;
						}

						header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li:last-child{
							margin-right: 0;
						}

							header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li > a{
                                box-sizing: border-box;
                                display: flex;
                                align-items: center;
                                background-image: url("../shared/icon_hn_arr.png");
                                background-repeat: no-repeat;
                                background-size: 14px 14px;
                                color: #073a67;
                                height: 14px;
                                text-decoration: none;
                                padding-left: 20px;
                                padding-bottom: 2px;
                                font-size: 0.88rem;
                                white-space: nowrap;
							}

							.tablet header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li > a{
								font-size: 0.7rem;
							}

							header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li > a:hover{
								text-decoration: underline;
							}

                            header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child{
                                position: absolute;
                                top: 14px;
                                left: 0;
                                font-size: 0.86rem;
                                white-space: nowrap;
                                height: 0;
                                overflow: hidden;
                            }

                            header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li:hover .sn_child{
                                padding-top: 0.4em;
                                overflow: visible;
                            }

                            header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul{
                                background: #fff;
                                border: 2px solid #073a67;
                                padding: 0.5em;
                                opacity: 0;
                                transition: .3s all ease;
                                border-radius: 4px;
                                transform: translateY(-0.5rem);
                            }

                            header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li:hover .sn_child ul{
                                opacity: 1;
                                transform: translateY(0);
                            }

                                header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul li{
                                    margin-right: 1em;
                                    opacity: 0;
                                    transition: .3s all ease;
                                    transform: translateX(-0.5rem);
                                }

                                header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li:hover .sn_child ul li{
                                    opacity: 1;
                                    transform: translateX(0);
                                }

                                header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul li:last-child{
                                    margin-right: 0;
                                }

                                header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul li a{
                                    color: #073a67;
                                    text-decoration: none;
                                    display: block;
                                    position: relative;
                                    padding: 0.2em 0.5em 0.2em 0.8em;
                                }

                                    header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul li a:before{
                                        font-family: FontAwesome;
                                        content:"\f0da";
                                        display: inline-block;
                                        position: absolute;
                                        top: 0.2em;
                                        left: 0;
                                    }

                                header > .box_inner .header_navs .sub_nav_search .sub_nav > ul > li .sn_child ul li a:hover{
                                    text-decoration:underline;
                                }



			header > .box_inner .header_navs .global_nav_search{
				display: flex;
				justify-content: flex-end;
				align-items: center;
				position: relative;
                z-index: 1;
			}

				header > .box_inner .header_navs .global_nav{
					position: relative;
					z-index: 2;
					margin-right: 10px;
				}

					header > .box_inner .header_navs .global_nav > ul{
						display: flex;
					}

						header > .box_inner .header_navs .global_nav > ul > li{
							position: relative;
						}

							header > .box_inner .header_navs .global_nav > ul > li:after{
								content: "";
								width: 0;
								height: 30px;
								border-right: 1px solid #ccc;
								position: absolute;
								top: 12px;
								right: 0;
							}

							header > .box_inner .header_navs .global_nav > ul > li:last-child:after{
								content: none;
							}

							header > .box_inner .header_navs .global_nav > ul > li > a{
								display: block;
								height: 22px;
								padding: 16px 12px;
								position: relative;
							}

								header > .box_inner .header_navs .global_nav > ul > li > a > img{
									height: 22px;
									width: auto;
								}

								header > .box_inner .header_navs .global_nav > ul > li > a:before{
									content: "";
									display: block;
									border-bottom: 2px solid rgba(9,59,108,0.8);
									width: calc(100% - 24px);
									position: absolute;
									bottom: 8px;
									left: 12px;
									transition: .3s all ease;
									opacity: 0;
									transform: scaleX(0);
									transform-origin: center bottom;
								}

								header > .box_inner .header_navs .global_nav > ul > li > a:hover:before{
									opacity: 1;
									transform: scaleX(1);
								}

								header > .box_inner .header_navs .global_nav > ul > li > a:after{
									content: "";
									display: block;
									width: 0;
									height: 0;
									border-style: solid;
									border-width: 8px 6px 0 6px;
									border-color: #093b6c transparent transparent transparent;
									position: absolute;
									bottom: 2px;
									left: 0;
									right: 0;
									margin: auto;
									opacity: 0;
								}

								header > .box_inner .header_navs .global_nav > ul > li.active > a:after{
									opacity: 1;
								}

                                header > .box_inner .header_navs .global_nav > ul > li .gn_child{
                                    height: 0;
                                    width: 100%;
                                    position: absolute;
                                    overflow: hidden;
                                }

                                header > .box_inner .header_navs .global_nav > ul > li:hover .gn_child{
                                    overflow: visible;
                                    height: auto;
                                }

                                header > .box_inner .header_navs .global_nav > ul > li .gn_child:before{
                                    content: "";
                                    display: block;
                                    width: 20px;
                                    height: 20px;
                                    position: absolute;
                                    top: 16px;
                                    left: calc(50% - 10px);
                                    z-index: 2;
                                    border-left: 2px solid #073a67;
                                    border-top: 2px solid #073a67;
                                    transform: rotate(45deg) skewX(10deg) skewY(10deg);
                                    background: #fff;
                                    border-top-left-radius: 4px;
                                    transition: .3s all ease;
                                    opacity: 0;
                                }

                                header > .box_inner .header_navs .global_nav > ul > li:hover .gn_child:before{
                                    opacity: 1;
                                }

                                header > .box_inner .header_navs .global_nav > ul > li ul{
                                    box-sizing: border-box;
                                    border: 2px solid #073a67;
                                    background: #fff;
                                    position: relative;
                                    top: 27px;
                                    left: calc(50% - 112px);
                                    z-index: 1;
                                    width: 224px;
                                    padding: 0.4em 0.6rem;
                                    border-radius: 6px;
                                    font-size: 0.92rem;
                                    box-shadow: 0 5px 5px 0 rgba(0,0,0,0.08);
                                    transition: .3s all ease;
                                    opacity: 0;
                                }

                                header > .box_inner .header_navs .global_nav > ul > li:hover ul{
                                    opacity: 1;
                                }

                                    header > .box_inner .header_navs .global_nav > ul > li ul:before{}

                                    header > .box_inner .header_navs .global_nav > ul > li ul li{
                                        line-height: 1.4;
                                        border-bottom: 1px solid #e5e5e5;
                                        padding: 1px 0;
                                    }

                                    header > .box_inner .header_navs .global_nav > ul > li ul li:last-child{
                                        border-bottom: none;
                                    }

                                    header > .box_inner .header_navs .global_nav > ul > li ul li a{
                                        position: relative;
                                        color: #073a67;
                                        display: block;
                                        text-decoration: none;
                                        padding: 0.5rem;
                                        transition: .3s all ease;
                                    }

                                        header > .box_inner .header_navs .global_nav > ul > li ul li a:hover{
                                            padding-left: 1rem;
                                        }

                                    header > .box_inner .header_navs .global_nav > ul > li ul li a:before{
                                        font-family: FontAwesome;
                                        content:"\f0da";
                                        display: inline-block;
                                        position: absolute;
                                        top: 0.5rem;
                                        left: 0;
                                        opacity: 0;
                                        transition: .3s all ease;
                                    }

                                    header > .box_inner .header_navs .global_nav > ul > li ul li a:hover:before{
                                        opacity: 1;
                                    }



                    header > .box_inner .header_navs .sns_nav{
                        margin-right: 1rem;
                    }

                        header > .box_inner .header_navs .sns_nav ul{
                            display: flex;
                        }

                            header > .box_inner .header_navs .sns_nav ul li{
                                margin-right: 10px;
                            }

                            header > .box_inner .header_navs .sns_nav ul li:last-child{
                                margin-right: 0;
                            }

                                header > .box_inner .header_navs .sns_nav ul li a{
                                    display: block;
                                    transition: .3s all ease;
                                }

                                header > .box_inner .header_navs .sns_nav ul li a:hover{
                                    transform: scale(1.2);
                                    filter: brightness(120%);
                                }

                                header > .box_inner .header_navs .sns_nav ul li a img{
                                    width: 23px;
                                    height: auto;
                                }

					header > .box_inner .header_navs .global_nav_search .h_search{
						position: relative;
						z-index: 2;
					}

						header > .box_inner .header_navs .global_nav_search .h_search button{
							box-sizing: border-box;
							background: #009fe8;
							width: 70px;
							height: 30px;
							border: none;
							border-radius: 15px;
							color: #fff;
							cursor: pointer;
							font-size: 0.9rem;
							padding-bottom: 2px;
							transition: .3s all ease;
							white-space: nowrap;
						}

						header > .box_inner .header_navs .global_nav_search .h_search button:hover{
							opacity: 0.8;
						}

							header > .box_inner .header_navs .global_nav_search .h_search button:before{
								font-family: FontAwesome;
								content:"\f002";
								margin-right: 0.2em;
							}

					.h_search_form{
						position: absolute;
						top: 45px;
						right: 0;
						z-index: 1;
						width: 0;
						height: 0;
						opacity: 0;
						overflow: hidden;
						transition: .3s all ease;
					}

					.search_active .h_search_form{
						z-index: 9;
						width: auto;
						height: auto;
						overflow: visible;
						opacity: 1;
					}

						.h_search_form .box_inner{
							display: flex;
							background: rgba(255,255,255,0.9);
							padding: 10px;
							box-shadow: 0 0 2px 1px rgba(0,0,0,0.1);
						}

						.h_search_form .box_inner .search_input input[type="search"]{
							box-sizing: border-box;
							border: 1px solid #aaa;
							font-size: 1.01em;
							padding: 0.3em 0.5em 0.2em;
							width: 300px;
							-webkit-appearance: textfield;
						}

						.h_search_form .box_inner .search_submit{
							margin-left: 5px;
						}

						.h_search_form .box_inner .search_submit button[type="submit"]{
							box-sizing: border-box;
							height: 100%;
							width: 60px;
							font-size: 1.01em;
							padding-bottom: 0.15em;
							border: none;
							color: #fff;
							background: #019945;
							cursor: pointer;
							transition: .3s all ease;
							border-radius: 2px;
							white-space: nowrap;
						}

						.h_search_form .box_inner .search_submit button[type="submit"]:hover{
							opacity: 0.8;
						}

/*small_header*/
.small_header header{
}

/*-----contents-----*/
.contents{
	position: relative;
	z-index: 1;
}
					
/*-----footer-----*/
footer{}

	footer > .box_inner{
		padding: 36px 0;
        display: flex;
        justify-content: center;
	}

        footer > .box_inner .f_site_title{
            margin-right: 5rem;
        }

            footer > .box_inner .f_site_title a{
                display: block;
                width: 140px;
            }

                footer > .box_inner .f_site_title a img{
                    max-width: 100%;
                    height: auto;
                }

        footer > .box_inner .f_nav{
            font-size: 0.94rem;
            display: flex;
            line-height: 1.4;
        }

            footer > .box_inner .f_nav a{
                color: #073a67;
                text-decoration: none;
            }

            footer > .box_inner .f_nav a:hover{
                text-decoration: underline;
            }

            footer > .box_inner .f_nav > ul{
                margin-right: 3em;
            }

                footer > .box_inner .f_nav > ul > li{
                    position: relative;
                    padding-left: 1.2em;
                    margin-bottom: 1em;
                }

                footer > .box_inner .f_nav > ul > li:last-child{
                    margin-bottom: 0;
                }

                    footer > .box_inner .f_nav > ul > li:before{
                        font-family: FontAwesome;
                        content:"\f111";
                        color: #073a67;
                        display: inline-block;
                        position: absolute;
                        top: 0.2em;
                        left: 0;
                        font-size: 0.8em;
                    }

                    footer > .box_inner .f_nav > ul > li ul{
                        font-size: 0.9em;
                        margin: 0.4em 0 0 0.6em;
                    }

                        footer > .box_inner .f_nav > ul > li ul li{
                            margin-bottom: 0.4em;
                        }

                        footer > .box_inner .f_nav > ul > li ul li:last-child{
                            margin-bottom: 0;
                        }


		footer > .box_inner .f_nav2{
			width: 1000px;
			margin: 0 auto;
			font-size: 0.9rem;
			display: flex;
			justify-content: center;
			border-top: 1px solid #d2d2d2;
			padding-top: 26px;
		}

			footer > .box_inner .f_nav2 ul{
				display: flex;
				justify-content: center;
			}

				footer > .box_inner .f_nav2 ul li{
					margin-right: 1em;
                    padding-right: 1em;
                    border-right: 1px solid #aaa;
				}

				footer > .box_inner .f_nav2 ul li:last-child{
					margin-right: 0;
                    padding-right: 0;
                    border-right: none;
				}

					footer > .box_inner .f_nav2 ul li a{
						color: #505050;
						text-decoration: none;
						display: inline-block;
					}

					footer > .box_inner .f_nav2 ul li a:hover{
						text-decoration: underline;
					}

	footer > .box_footer{
		background: #073a67;
		color: #fff;
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 100px;
		padding: 0 20px;
	}

		footer > .box_footer .f_bns{}

			footer > .box_footer .f_bns ul{
				display: flex;
			}

				footer > .box_footer .f_bns ul li{}

					footer > .box_footer .f_bns ul li a{
						display: block;
						height: 22px;
					}

						footer > .box_footer .f_bns ul li a img{
							height: 100%;
							width: auto;
						}

		footer > .box_footer .copyright{
			font-size: 0.78rem;
		}

/*ヘッダ固定によるアンカーずれ対応*/
*[id^="anc_"]{
	padding-top: 110px;
	margin-top:-110px;
}
	
.nav_oc{
	display:none;
}

.side_nav{
	display:none;
}

/*ページトップ*/
.pagetop{
	width:80px;
	height:80px;
	position:fixed;
	bottom:30px;
	right:60px;
	z-index:10;
	transform:translateY(100px);
	transition:.3s all ease;
	opacity:0;
}

.pagetop.show{
	transform:translateY(0);
	opacity:1;
}

	.pagetop a{
		box-sizing:border-box;
		display:flex;
		justify-content:center;
		align-items:center;
		transition:.5s all ease;
		width:100%;
		height:100%;
		text-decoration:none;
	}
	
	.pagetop a:hover{
		transform:translateY(-5px);
		opacity:0.9;
	}

		.pagetop a img{
			width: 100%;
			height: auto;
		}
	


/*改行のPC,SPでの表示切替*/
br.pc,
img.pc,
span.pc{
	display:inline;
}

br.sp,
img.sp,
span.sp{
	display:none;
}

.ta_center{
	text-align:center;
}

/*1200px以下*/
@media screen and (max-width:1200px){
    html,
    body,
    header,
    .contents{
        min-width: 1000px;
    }
}


/*ipad*/
@media screen and (max-width:1024px){

}

/* ##########印刷用########## */
@media print{
	#container{
		padding-top: 0;
	}
	
	header{
		position:relative;
		transition:none;
	}
	
	.pagetop{
		display: none;
	}
}