@charset "UTF-8";

body {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:15px;
	line-height:1.6;
	color:#000;
}

/*　a　*/

a {
	color:#000 !important;
}
#pageTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#pageTop a {
	display: block;
	z-index: 300;
	border-radius: 70px;
	border:1px solid #ff0000;
	width: 70px;
	height: 70px;
	background-color:#d50000;
	color: #fff !important;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	padding:4px 0 0;
	filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.4));
}
#pageTop a:hover {
	text-decoration: none;
	opacity: 0.7;
	color: #fff !important;
}
a.link {
	text-decoration: underline !important;
}
a.link a:hover {
	text-decoration: underline !important;
}
footer a {
	color:#000;
}
footer a:hover {
	color:#000;
	text-decoration: underline !important;
}

/*　layout　*/

#gnavi {
	background-image:url("/common/images/gnavi_back.png");
	background-position: bottom center;
	background-repeat: repeat-x;
	background-size: contain;
}
.bg-red {
  background-color: #F2c635 !important;
}
.bg-red ul li:hover {
  background-color: #B87D09 !important;
}
.header_text {
	color:#000;
	border-bottom:2px solid #0A51A1;
}
.container {
	max-width:1000px !important;
}
.container-fluid {
	padding:0 !important;
}
#breadcrumb {
	padding:1rem 0;
}
footer {
	padding:1rem 0;
	background-color:#F4F4F4;
}
.navbar {
	padding:0 !important;
}
.navbar-brand a,.navbar-brand a:hover {
	color:#000 !important;
}
.navbar-dark .navbar-nav .nav-link {
    color:#000;
}
.nav-link {
  display: block;
  padding: 0.5rem 0rem!important;
}
.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
	color:#000;
}
.box01 {
	background-color: #FFE9B7;
	border:1px solid #E84220;
	box-shadow: 3px 3px rgba(232,66,32,1.00);
}
.under_key {
	background-image:url("/common/images/under_key.jpg");
	background-position: center right;
	background-repeat: no-repeat;
	background-size:cover;
	padding:4rem 0;
}

/*　h1　*/

h1.h101 {
	font-size:2.28em;
	color:#d50000;
	text-align:center;
	font-weight:bold;
}
.under_key h1 {
	font-size:1.6em;
	font-weight:bold;
	color:#FFF;
	text-shadow:1px 1px #000,-1px 1px #000,1px -1px #000,-1px -1px #000;
	-moz-text-shadow:1px 1px #000,-1px 1px #000,1px -1px #000,-1px -1px #000;
	-webkit-text-shadow:1px 1px #000,-1px 1px #000,1px -1px #000,-1px -1px #000;
}

/*　h2　*/

h2.h201 {
	font-size:1.2em;
	font-weight:bold;
	background-color:#F4F4F4;
	border:1px solid #BABABA;
	border-bottom:5px solid #0A51A1;
	text-align:center;
}

/*　h3　*/

h3.h301 {
	font-weight:bold;
	font-size:1.2em;
}
h3.h301:before {
	content: "■ ";
}

/*　h4　*/

h4.h401 {
	font-size:1.28em;
	font-weight:bold;
	color:#20437c;
}

/*　装飾　*/

p {
	margin-bottom:0 !important;
}
.dan {
	padding-left:1em;
	text-indent:-1em;
}
.dan02 {
	padding-left:2em;
	text-indent:-1em;
}
.dan03 {
	padding-left:3em;
	text-indent:-1em;
}
.f14em {
	font-size:0.8em;
}
.f16em {
	font-size:1.06em;
}
.f18em {
	font-size:1.2em;
}
.f20em {
	font-size:1.33em;
}
.f22em {
	font-size:1.46em;
}
.f24em {
	font-size:1.6em;
}
.white {
	color:#FFF;
}
.pink {
	color:#f0599f;
}
.red {
	color:#E61010;
}
.blue {
	background-color: #20437c;
}
.green {
	color:#549A3A;
}
.top a {
	color:#fff;
}
ul {
    list-style: none;
	margin:0 0 0 1em !important;
	padding:0 !important;
}
ol {
	margin:0 0 0 1.5em !important;
	padding:0 !important;
}
ul li {
	margin:0 !important;
	padding:0 !important;
}
ol li {
	margin:0 !important;
	padding:0 !important;
}
ul.link_ul li:before {
    content: "＞ ";
    color: #2bb7b3;
}
@media (max-width: 575px) {
	img {
		width:100%;
		max-width:100%;
		height:auto;
	}
	.navbar-brand img {
		width:auto !important;
		max-width: auto !important;
	}
	.container {
		padding:0 15px !important;
	}
    .res-table {
        width:100%;
        margin:2em auto;
    }
    .res-table th {
        padding:8px; background: #F3F9DD;
        display:block;
    }
    .res-table td {
        padding:5px;
        display:block;
    }
	h2.h201 {
		font-size:1.3em;
	}
	.f16em {
		font-size:1.06em;
	}
	.f18em {
		font-size:1.1em;
	}
	.f20em {
		font-size:1.2em;
	}
	.f22em {
		font-size:1.3em;
	}
	.f24em {
		font-size:1.4em;
	}
}
@media (max-width: 767px) {
	.container {
		padding:0 15px !important;
	}
}


