@charset "UTF-8";
/* clearfix hack */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.clearfix {
	display: inline-block;
}
/* start commented backslash hack \*/
* html .clearfix {
	height:1%;
}
.clearfix {
	display: block;
}

/* iPhone・iPad等のSafariで電話番号の自動リンク対策 */
a[href^=tel]{
    color:inherit;
    text-decoration:inherit;
    font-size:inherit;
    font-style:inherit;
    font-weight:inherit;
}
/* 共通 */
html {
	background-color:#fff;
	font-size:14px;
}
body {
	margin:0;
	padding:0;
	background-color:#fff;
}
img {
	vertical-align:bottom;
}
a {
	text-decoration:none;
}
a img {
	border:0;
}
a.simpleLink, a.simpleLink:visited {
	color:#00f;
}
#headerWrap {
	width:80%;
	margin:0 auto;
}
#titleWrap {
	width:calc(100% - 303px);
	height:54px;
	background-image:url('images/title564.png');
	background-repeat:no-repeat;
	float:left;
	margin:10px 0;
}
#titleLogo {
	float:left;
	width:420px;
	height:54px;
	margin:15px 10px 0 0;
	background-color:#567549;
	text-align:center;
	color:#fff;
	line-height:26px;
}
#title {
	width:calc(100% - 62px);
	float:left;
	text-align:left;
	color:#425e36;
}
#logionBtn {
	width:167px;
	float:right;
}
h1#titleJp {
	margin:16px 0 0 0;
	font-size:24px;
	font-weight:400;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
#titleEn {
	margin:4px 0 0 0;
	font-size:16px;
	font-weight:400;
	font-family: "Gothic A1", sans-serif;
	letter-spacing:0.1rem;
}
#globalMenu {
	width:303px;
	float:left;
	margin:20px auto 10px auto;
	padding:0;
	list-style-type: none;
}
#globalMenu li.line, #globalMenu li.menu {
	height:39px;
	float:left;
	padding-bottom:6px;
}
#globalMenu #menu1 {
	width:150px;
}
#globalMenu #menu2 {
	width:150px;
}
#globalMenu li.menu {
	border-bottom:3px solid #fff;
}
#globalMenu li.menu:hover {
	border-bottom:3px solid #4e8e1d;
}
#globalMenu li.menu span {
	display:block;
	text-align:center;
}
#globalMenu li.menu span.menuJp {
	padding-top:4px;
	font-size:16px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color:#4e8e1d;
	letter-spacing: 0.2em;
}
#globalMenu li.menu span.menuEn {
	font-size:12px;
	line-height:20px;
	font-family: "Gothic A1", sans-serif;
	color:#006EB8;
}
#spGlobalMenuWrap, ul#spGlobalMenu {
	display:none;
}
footer {
	width:100%;
	background-color:#567549;
	color:#fff;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
#footerInner {
	width:80%;
	margin:0 auto;
	padding:30px 0 0 0;
}
#footMenu {
	width:100%;
	float:left;
	text-align:center;
	font-size:14px;
}
#footMenu a {
	padding-bottom:2px;
	color:#fff;
}
#footMenu a:hover {
	border-bottom:1px dashed #fff;
}
#footMenu span.lf {
	display:none;
}
#addressWrap {
	width:270px;
	float:right;
}
#addressWrap h6 {
	margin:0;
	font-size:16px;
	font-weight: normal;
}
#addressWrap address {
	padding-left:1em;
	font-style: normal;
	line-height:1.4em;
}
#copyright {
	padding:20px 0;
	text-align:center;
	font-size:13px;
}
#pageTitleWrap {
	width:100%;
	height:120px;
	background-image:url(images/title-back.png);
}
#pageTitleWrap h3 {
	width:80%;
	margin:0 auto;
	line-height:120px;
	font-size:32px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 900;
	color:#016EBA;
	letter-spacing: 0.1rem;
	text-shadow: rgb(200, 200, 200) 2px 2px 5px;
}
#main {
	width:80%;
	margin:40px auto;
}
/* トップページ */
#topPhotoWrap {
	position: relative;
	width:100%;
	height:15.63vw;
}
#topPhoto {
	position: absolute;
	top:0;
	left:0;
	z-index: 1;
}
#topPhoto, #topPhoto img {
	width:100%;
}
#topPhotoText {
	position: absolute;
	left:0;
	z-index: 1;
	width:100%;
	text-align:center;
	font-size:32px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight:bold;
	color:#fff;
	text-shadow: 2px 2px 3px #000;
	line-height:15.63vw;
}
#topMain {
	width:100%;
	margin-top:10px;
}
.topSectionWhite {
	padding:30px 0;
}
.topSectionGray {
	padding:30px 0;
	background-color:#f9f9f9;
}
.topSectionInner {
	width:80%;
	margin:0 auto;
}
.topSectionInner p.exam {
	padding-left:30px;
	line-height:1.5rem;
}
.topSectionInner dl {
	padding-left:30px;
	line-height:1.5rem;
}
.topSectionInner dl dt {
	font-weight:bold;
	color:#006DB4;
}
.topSectionInner dl dd {
	margin-bottom:1rem;
}
.topSectionInner dl dd ul {
	margin-left:0;
	padding-left:1rem;
}
.topSectionInner dl dd ul li {
	margin-top:0.5rem;
}
.topSectionInner h3, #main h3 {
	margin:0;
	padding-bottom:3px;
	border-bottom:1px dashed #4e8e1d;
	font-size:18px;
	font-weight: normal;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color:#4e8e1d;
}
.topSectionInner h3::before, #main h3::before {
	font-family: "Font Awesome 5 Free";
	content:"\f044 \0020\0020";
}
.topSectionInner dl.officer {
	width:490px;
	margin:15px 0 0 auto;
	padding:0;
}
.topSectionInner dl.officer dt {
	width:130px;
	float:left;
	margin:0;
	padding:5px 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.topSectionInner dl.officer dd {
	width:350px;
	float:left;
	margin:0;
	padding:5px 0 5px 10px;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.topSectionInner h6 {
	width:260px;
	margin:15px 0 0 15px;
	padding:10px;
	color:#fff;
	font-size:medium;
	font-weight:normal;
	font-family: "Zen Kaku Gothic New", sans-serif;
	text-align:center;
}
.topSectionInner h6.blue {
	background-color:#3279a9;
}
.topSectionInner h6.green {
	background-color:#346b34;
}
.topSectionInner dl.history {
	width:calc(100% - 30px);
	margin:10px 0 30px 30px;
	padding:0;
}
.topSectionInner dl.history dt {
	width:120px;
	float:left;
	margin:0;
	padding:15px 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	text-align:left;
	line-height:1.5rem;
	text-indent:1rem;
}
.topSectionInner dl.history dd {
	width:calc(100% - 130px);
	float:left;
	margin:0;
	padding:15px 10px 15px 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	line-height:1.5rem;
}
.topSectionInner dl.history dt.odd, .topSectionInner dl.history dd.odd {
	background-color:#fff;
}
.topSectionInner dl.history dt.even, .topSectionInner dl.history dd.even {
	background-color:#ebf7e6;
}
.topSectionInner dl.history dd a {
	color:#1E74FF;
}
.topSectionInner dl.history dd a:hover {
	text-decoration:underline;
}

/* リンク */
dl.links {
	margin:14px 0 14px 30px;
}
dl.links dt, dl.links dd {
	margin:0;
	padding:0;
}
dl.links dt {
	width:180px;
	float:left;
}
dl.links dt:before {
	display:inline-block;
	content:"\025b6";
	margin-right:3px;
}
dl.links dd {
	width:calc(100% - 180px);
	float:left;
}
dl.links dd a {
	color:#3396d8;
}
dl.links dd a:hover {
	border-bottom:1px dashed #3396d8;
}

/* メディアクエリー */
@media only screen and (max-width:1310px) {
	#titleWrap {
		width:calc(100% - 223px);
	}
	#globalMenu {
		width:223px;
	}
	#globalMenu #menu1 {
		width:110px;
	}
	#globalMenu #menu2 {
		width:110px;
	}
	#titleJp {
		font-size:16px !important;
	}
	#titleEn {
		font-size:15px !important;
		letter-spacing: 0;
	}
}
@media only screen and (max-width:1024px) {
	/* 共通 */
	#headerWrap, #footerInner {
		width:98%;
	}
	#pageTitleWrap h3, #main {
		width:98%;
	}
	/* トップページ */
	#topPhotoText {
		font-size:24px;
	}
	.topSectionInner {
		width:98%;
	}
	.topSectionInner dl dd {
		margin-left:16px;
	}
}
@media only screen and (max-width:830px) {
	#titleWrap {
		background-image:url('images/title420.png');
	}
}
@media only screen and (max-width:790px) {
	/* 共通 */
	#titleEn {
		font-size: 14px !important;
	}
	#globalMenu li.menu span.menuJp {
		letter-spacing: 0.1em;
	}
	#footMenu, #addressWrap {
		width:98%;
		float:none;
	}
	#addressWrap h6 {
		margin-top:20px;
		text-align: center;
	}
	#addressWrap address {
		padding-left:0;
		text-align:center;
	}
}
@media only screen and (max-width:730px) {
	/* 共通 */
	#titleWrap {
		width:100%;
		margin-bottom:0;
	}
	#titleLogo {
		float: left;
		margin: 0 10px 0 0;
	}
	#title {
		float:none;
		width:100%;
	}
	#titleJp {
		margin:0 !important;
		font-size:16px !important;
	}
	#loginBtn {
		display:none;
	}
	ul#globalMenu {
		display:none;
	}
	#spGlobalMenuWrap, #spGlobalMenu {
		display:block;
	}
	#spGlobalMenuWrap {
		width:100%;
		height:50px;
		background-color:#468714;
		margin-top: 10px;
	}
	#spGlobalMenuBtn {
		width:30px;
		height:50px;
		margin-left:10px;
		padding-top:5px;
		font-size:20pt;
	}
	#spGlobalMenu {
		clear: both;
		display:none;
		background-color:#468714;
		margin:0;
		padding:0;
		list-style:none;
	}
	#spGlobalMenu a {
		display:block;
		color:#fff;
		font-size:10pt;
		text-decoration:none;
	}
	#spGlobalMenu li {
		padding-left:15px;
		line-height:30px;
		border-top:1px dashed #fff;
		color:#fff;
	}
	#panel-btn {
		display: inline-block;
		position: relative;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		background: #fff;
	}
	#panel-btn:hover {
		background: #dedede;
	}
	#panel-btn-icon {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 14px;
		height: 2px;
		margin: -1px 0 0 -7px;
		background: #3279a9;
		transition: .2s;
	}
	#panel-btn-icon:before, #panel-btn-icon:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 14px;
		height: 2px;
		background: #3279a9;
		transition: .3s;
	}
	#panel-btn-icon:before {
		margin-top: -6px;
	}
	#panel-btn-icon:after {
		margin-top: 4px;
	}
	#panel-btn .close {
 		background: transparent;
	}
	#panel-btn .close:before, #panel-btn .close:after {
 		margin-top: 0;
	}
	#panel-btn .close:before {
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	#panel-btn .close:after {
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
	#pageTitleWrap {
		height:80px;
	}
	#pageTitleWrap h3 {
		line-height: 80px;
		font-size:24px;
	}
	/* トップページ */
	#topPhotoWrap {
		display:none;
	}
}
@media only screen and (max-width:524px) {
	/* 共通 */
	#titleJp {
		font-size:13px !important;
	}
	#titleEn {
		font-size:12px !important;
		letter-spacing: 0;
	}
	#footMenu {
		line-height:1.5em;
	}
	#footMenu span.lf {
		display:inline;
	}
	/* トップページ */
	#topPhotoText {
		bottom:10px;
		font-size:20px;
	}
	.topSectionInner dl.officer {
		width:calc(100% - 15px);
		margin:15px 0 0 15px;
	}
	.topSectionInner dl.officer dt {
		width:130px;
		float:none;
	}
	.topSectionInner dl.officer dd {
		width:calc(100% - 30px);
		float:none;
		margin:0 0 0 30px;
		padding:5px 0;
	}
	.topSectionInner dl.officer dt::before {
		font-family: "Font Awesome 5 Free";
		content:"\f152 \0020";
	}
	.topSectionInner dl.history {
		width:100%;
		margin:10px 0 30px 0;
	}
	.topSectionInner dl.history dt {
		width:100%;
		float:none;
		padding:10px 0;
	}
	.topSectionInner dl.history dd {
		width:calc(100% - 20px);
		float:none;
		padding:0 10px 10px 10px;
	}
	/* リンク */
	dl.links dt {
		float:none;
		width:100%;
	}
	dl.links dd {
		float:none;
		width:calc(100% - 20px);
		margin-left:20px;
		line-height:1.7rem;
	}
}
@media only screen and (max-width:444px) {
	#titleWrap {
		height:12.8vw;
		background-size: contain;
	}
}
@media only screen and (max-width:400px) {
	/* トップページ */
	.topSectionInner h3 {
		font-size:14px;
	}
}