@charset "utf-8";

/*---------------------------------------------
フォント
---------------------------------------------*/
body{
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	letter-spacing:0.2em;
	text-justify:distribute;
	-webkit-text-size-adjust:100%;
	-webkit-font-smoothing:antialiased;
	font-size:62.5%;
	line-height:1.6;
	color:#333;
}

@font-face{
	font-family:'MyFont';
	src: url("../font/Geomanist-Regular.otf");
}

h1{
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size:3em;
	letter-spacing:0.18em;
	line-height:1.2;
	color:#0059BF;
}

h2{
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size:2.8em;
	letter-spacing:0.1em;
	color:#0059BF;
}

h3{
	font-size:2em;
	line-height:1.3;
	color:#0059BF;
}

h4{
	font-size:2.2em;
	color:#0059BF;
	line-height:1.3;
	font-weight:lighter;
	font-family:MyFont;
}

h5{
	font-size:2.5em;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color:#FFF100;
	text-shadow:1px 1px 2px #000,-1px 1px 2px #000,1px -1px 2px #000,-1px -1px 2px #000;
}

h6{
	font-size:15px;
}

p{
	font-size:1.6em;
}

li{
	font-size:1.5em;
}

th{
	font-weight:lighter;
}

a{
	color:#333;
	text-decoration:none;
}

.word_2{
	color:#fff;
	text-shadow:1px 1px 2px #000,-1px 1px 2px #000,1px -1px 2px #000,-1px -1px 2px #000;
}

.en{
	font-family:MyFont;
	font-size:15px;
	font-weight:lighter;
	color:#808080;
	letter-spacing:0.1em;
}

.menu_list li{
	font-size:1.8em;
	font-weight:bold;
}

.menu_list li a{
	color:#808080;
}

.b li{
	font-size:14px;
}

.subject_list, .subject_list_2, .subject_list_3{
	font-size:17px;
}

.subject_list_4{
	font-size:13px;
}

#aside li{
	font-size:1.4em;
}

.star{
	font-size:1.5em;
}

.menu_list_2 li{
	font-size:1.3em;
}

.w{
	font-weight:initial !important;
}

.copy{
	font-size:0.9em;
	color:#fff;
}

/*---------------------------------------------
レイアウト
---------------------------------------------*/
body{
	min-width:980px;
	height:100%;
}

.banner{
	float:left;
}

.banner{
	width:120px;
}

#hgroup{
	float:left;
	padding:35px 0 25px;
}

#wrapper{
	height:100%;
}

li{
	list-style:none;
}

#header{
	border-top:10px solid #0059BF;
}

.header_inner{
	overflow:hidden;
}

#header_title{
	float:left;
	overflow:hidden;
}

#nav{
	float:right;
	margin-right:20px;
	padding:45px 0 47px;
}

.menu_list{
	overflow:hidden;
}

.menu_list li{
	float:left;
	text-align:center;
}

.menu_list li a{
	display:block;
	padding:0 20px 0 0;
}

.main_bg{
	position:relative;
}

.word{
	position:absolute;
	top:45%;
	left:50%;
	width:80%;
	margin:0 auto;
	margin-left:-40%;
	text-align:center;
}

#article{
	overflow:hidden;
}

.article_inner{
	float:right;
	width:100%;
	margin-left:-360px;
}

.article_inner_2{
	margin-left:360px;
	padding:30px 20px 15px;
}

h2{
	padding-bottom:10px;
	margin-bottom:20px;
	border-bottom:2px solid #e5e5e5;
}

.en{
	display:block;
	padding-left:4px;
}

.sub_title{
	padding:20px 18px;
	background:rgba(0,89,191,0.1);
	margin-bottom:20px;
}

h3{
	border-left:4px solid #0059BF;
	padding:1px 10px;
}

#section{
	margin-bottom:60px;
}

.a{
	margin-bottom:25px;
}

.a li{
	margin-bottom:5px;
}

#subject{
	width:100%;
}

#subject tr:first-child th{
	background:rgba(229,229,229,0.5);
	font-weight:bold;
}

#subject tr:first-child td{
	background:rgba(229,229,229,0.5);
	font-weight:bold;
}

.subject_list{
	width:30%;
	padding:15px 20px;
	text-align:left;
	border:1px solid #ccc;
	background:rgba(0,89,191,0.05);
}

.subject_list_2{
	width:70%;
	padding:15px 20px;
	border:1px solid #ccc;
}

.subject_list_3, .subject_list_4{
	margin-bottom:0 !important;
}

.w{
	background:none !important;
}

#aside{
	width:300px;
	padding:40px 20px 15px;
	float:left;
}

.aside_inner{
	margin-bottom:15px;
}

h4{
	padding:3px 0 0;
	margin-bottom:10px;
	border-bottom:1px solid #0059BF;
}

#footer{
	background:rgba(0,89,191,0.1);
}

.footer_inner{
	padding:40px 0;
}

.menu_list_2{
	overflow:hidden;
	width:40%;
	margin:0 auto;
}

.menu_list_2 li{
	float:left;
	text-align:center;
	width:33.33333%;
	border-left:1px solid #333;
	margin-left:-2px;
}

.menu_list_2 li:first-child{
	margin-left:0;
}

.menu_list_2 li:last-child{
	border-right:1px solid #333;
}

.menu_list_2 li a{
	display:block;
	padding:0 20px;
}

#hgroup_2{
	text-align:center;
	margin-bottom:15px;
}

.copy{
	padding:5px 10px;
	text-align:center;
	background:#0059BF;
}

.kth{
	float:left;
	padding-right:20px;
}

/*---------------------------------------------
arrow2, arrow3
---------------------------------------------*/
.arrow2{
	position: relative;
	display: inline-block;
	padding-left: 20px;
}
.arrow2::before {
	content: '';
	width: 14px;
	height: 14px;
	background: #0059BF;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -12px;
}
.arrow2::after {
	content: '';
	width: 0;
	height: 0;
	border: solid 3px transparent;
	border-left: solid 5px #ffffff;
	position: absolute;
	top: 50%;
	left: 5px;
	margin-top: -8px;
}

.arrow3 {
	position: relative;
	display: inline-block;
	padding-left: 15px;
	margin-right:8px;
}
.arrow3::before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #0059BF;
	border-right: solid 2px #0059BF;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 2px;
	margin-top: -11px;
}

/*---------------------------------------------
768px未満
---------------------------------------------*/
@media (max-width:768px){
	body{
		min-width:initial;
		width:100%;
	}
	h1{
		font-size:2.5em;
	}
	h2{
		font-size:2.3em;
	}
	h3{
		font-size:1.7em;
	}
	h5{
		font-size:2em;
	}
	p{
		font-size:1.5em;
	}
	.b li{
		font-size:12px;
	}
	.detail li{
		font-size:12px;
	}
	#header{
		border-top:5px solid #0059BF;
	}
	.word{
		width:90%;
		margin-left:-45%;
	}
	#section{
		margin-bottom:30px;
	}
	.subject_list{
		width:30%;
	}
	.subject_list_2{
		width:70%;
	}
	.subject_list, .subject_list_2{
		padding:10px 10px;
	}
	.subject_list, .subject_list_2, .subject_list_3{
		font-size:13px;
	}
	#aside{
		float:none;
		width:100%;
		padding:0 0;
	}
	.article_inner{
		float:none;
		margin-left:0;
	}
	.article_inner_2{
		margin-left:0;
		padding:15px 15px;
	}
	.aside_inner{
		padding:15px 15px;
	}
	.aside_inner_2{
		overflow:hidden;
	}
	.link, .link_2{
		float:left;
		width:50%;
	}
	.sub_title{
		padding:7px 7px;
	}
	.footer_inner{
		padding:20px 0;
	}
	.menu_list_2{
		width:70%;
	}
}

@media (max-width:640px){
	#header_title{
		float:none;
		padding:5px 0;
	}
	.arrow3::before {
		width: 6px;
		height: 6px;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		margin-top: -9px;
	}
	.banner{
		float:none;
		width:80px;
		position:relative;
		left:50%;
		margin-left:-40px;
	}
	#hgroup{
		float:none;
		padding:0 0;
		text-align:center;
	}
	#nav{
		float:none;
		width:100%;
		margin-right:0;
		padding:0 0;
	}
	.menu_list li{
		font-size:1.4em;
		width:50%;
		background:#0059BF;
		border-left:none;
	}
	.menu_list li a{
		padding:10px 20px;
		color:#fff;
	}
	.menu_list li:last-child{
		border-left:1px dotted #fff;
		border-right:none;
		margin-left:-1px;
	}
	.word{
		margin-top:-24px;
	}
	.word_2{
		font-size:1em;
	}
	h5{
		font-size:1.4em;
	}
	.aside_inner_2{
		margin-bottom:0;
	}
	.link, .link_2{
		float:none;
		width:100%;
	}
	.menu_list_2{
		width:100%;
	}
	.menu_list_2 li{
		width:50%;
		background:rgba(0,89,191,0.2);
		border-bottom:1px solid #fff;
		border-left:none;
	}
	.menu_list_2 li:nth-child(2){
		border-left:1px solid #fff;
		margin-left:-1px;
	}
	.menu_list_2 li:last-child{
		width:100%;
		margin-bottom:0;
		border-bottom:0;
		border-right:none;
		margin-left:0;
	}
	.menu_list_2 li a{
		font-size:13px;
		padding:10px 0;
		color:#0059BF;
	}
	.footer_inner{
		padding-bottom:0;
	}
	.kth{
		float:none;
		padding-right:0;
		width:100%;
	}
}