@charset "utf-8";
/*###############PC first###############*/
/*--京pages.css--*/
/*--------PCここから--------*/

/* content_ttl */
#content_ttl {
	width: 1140px;
	height: 170px;
	margin: 0 auto 20px;
	background: url(../shared/content_ttl_bg.jpg) top left no-repeat;
}
	#content_ttl h2 {
		height: 140px;
		line-height: 140px;
		padding-top:30px;
		text-align: center;
	}

/* topicpath */
#topicpath {
	width: 960px;
	margin: 0 auto 30px;
	text-align: right;
}
	#topicpath ul {
		font-size: 0.9em;
	}
		#topicpath ul li {
			display: inline-block;
			vertical-align: top;
			margin-right: 10px;
			text-align: left;
		}
		#topicpath ul li:last-child {
			font-weight: bold;
			margin-right: 0;
		}
		#topicpath ul li:after {
			content: "\f105";
			font-family: FontAwesome;
			margin-left: 10px;
		}
		#topicpath ul li:last-child:after {
			content: none;
		}
			#topicpath ul li a {
				color: #222;
			}
			#topicpath ul li a:hover {
				color: #23527c;
				text-decoration: underline;
			}

/* main_box */
#main_box {
	width: 960px;
	min-height: 500px;
	overflow: hidden;
	margin: 0 auto;
	padding-bottom: 80px;
}

	/* page_ttl */
	#page_ttl {
		margin-bottom: 60px;
	}
		#page_ttl h3 {
			font-size: 28px;
			position: relative;
			padding: 0 15px 15px;
			line-height: 1.5em;
			border-bottom: 4px solid #202221;
		}
		#page_ttl h3:after {
			position: absolute;
			bottom: -2px;
			left: 0;
			z-index: 2;
			content: '';
			width: 40%;
			height: 2px;
			background-color: #c84a4b;
		}

	/* page_body */
	#page_body {
		line-height: 2em;
	}
	.about #page_body,
	.database #page_body,
	.research #page_body,
	.news #page_body,
	.event #page_body {
		width: 680px;
		overflow: hidden;
		float: right;
	}

		h4 {
			position: relative;
			font-size: 24px;
			color: #333;
			padding: 5px 5px 0 35px;
			margin-bottom: 20px;
			background:url(../shared/icon_h4.png) no-repeat left 2px;
		}
		/*
		h4::before,
		h4::after {
			content: "□";
			position: absolute;
		}
		h4::before {
			left: 3px;
			top: 0;
			color: #cc912d;
		}
		h4::after {
			left: 8px;
			top: 6px;
			color: #a94442;
		}
		*/
		h5 {
			color: #27366d;
			font-size: 18px;
			padding: 10px;
			margin-bottom: 15px;
			border-bottom: 1px dotted #333;
		}
		h6 {
			font-size: 16px;
			padding: 5px 15px;
			margin: 0 0 10px;
		}
		h6:before {
			content: "\f10c";
			font-family: FontAwesome;
			margin-right: 10px;
			color: #003;
		}
			

		#page_body .pg_box {
			margin-bottom: 50px;
		}
		#page_body .pg_box:last-child {
			margin-bottom: 0;
		}
		#page_body .h_txt_box {
			margin-bottom: 50px;
		}
		#page_body p {
			margin-bottom: 1em;
		}
			#page_body strong {
				font-weight: bold;
			}
		#page_body dt,
		#page_body dd {
			line-height: 2em;
		}
		
		a.icn_map {
			padding: 0 0 0 20px;
			text-decoration: none;
			position: relative;
		}
		a:hover.icn_map:after {
			content: "";
			width: 100%;
			height: 1px;
			background: #23527c;
			position: absolute;
			bottom: 0;
			left: 1em;
		}
		a.icn_map:before {
			content: "\f041";
			font-family: FontAwesome;
			display: inline-block;
			margin-left: -20px;
			margin-right: 5px;
			color: #900;
			position: relative;
			left: 2px;
		}


		/* テーブルデフォルト */
		table {
			border: 0;
			border-collapse: collapse;
			border-spacing: 0;
			margin: 10px;
			background: rgba(249,249,249,0.5);
		}
			table th,
			table td {
				vertical-align: top;
				padding: 10px;
				border: 1px solid #ccc;
			}
			table th {
				background: rgba(239,240,244,0.7);
			}
			table td {
			}
			table caption {
				color: #222;
				font-size: 1.1em;
			}


		/* リストマークデフォルト */
		#page_body ul {
			margin: 20px 5px;
		}
			#page_body ul li {
				padding-left: 20px;
				margin-bottom: 10px;
			}
			#page_body ul li:last-child {
				margin-bottom: 0;
			}
			#page_body ul li:before {
				content: "";
				width: 6px;
				height: 6px;
				display: inline-block;
				background: #333;
				border-radius: 5px;
				-webkit-border-radius: 5px;
				-moz-border-radius: 5px;
				position: relative;
				top: -2px;
				margin-right: 8px;
				margin-left: -20px;
			}
				#page_body ul li a {
					color: #333;
					text-decoration: underline;
				}
				#page_body ul li a:hover {
					color: #23527c;
				}

		/* リストマークsquare */
		#page_body ul.square {
			margin: 0 10px 50px;
		}
			#page_body ul.square li {
			}
			#page_body ul.square li:before {
				content: "";
				width: 12px;
				height: 12px;
				display: inline-block;
				border-radius: 0;
				background: #c84a4b;
				box-shadow: 1px 1px 1px 0px rgba(64,64,64,0.7);
				-webkit-box-shadow: 1px 1px 1px 0px rgba(64,64,64,0.7);
				-moz-box-shadow: 1px 1px 1px 0px rgba(64,64,64,0.7);
				top: 0;
			}

		/* リストマーク▶ */
		#page_body ul.arr_r {
			margin: 0 10px 50px;
		}
			#page_body ul.arr_r li {
				position: relative;
			}
			#page_body ul.arr_r li:before {
				content: "";
				left: 24px;
				top: 5px;
				box-sizing: border-box;
				width: 6px;
				height: 6px;
				border: 6px solid transparent;
				border-left: 6px solid #c84a4b;
				background: none;
				border-radius: 0;
				position: absolute;
				z-index: 1;
			}
			#page_body ul.arr_r li:after {
				content: "";
				left: 5px;
				top: 6px;
				box-sizing: border-box;
				width: 6px;
				height: 6px;
				border: 6px solid transparent;
				border-left: 6px solid rgba(64,64,64,0.7);
				position: absolute;
				z-index: 0;
			}
				#page_body ul.arr_r li ul {
					margin: 0;
				}
					#page_body ul.arr_r li ul li {
						margin-bottom: 5px;
					}
					#page_body ul.arr_r li ul li:before {
						width: 6px;
						height: 6px;
						background: #666;
						border-radius: 5px;
						-webkit-border-radius: 5px;
						-moz-border-radius: 5px;
						top: -1px;
						left: 0;
						box-sizing: inherit;
						border: 0;
						position: relative;
					}
					#page_body ul.arr_r li ul li:after {
						content: none;
					}

		/* リストマーク 数字 */
		#page_body ol {
			list-style: decimal;
			padding-left: 20px;
			margin: 10px;
		}
			#page_body ol li {
				margin-bottom: 10px;
			}
			#page_body ol li:last-child {
				margin-bottom: 0;
			}

		/* 外部リンクアイコン */
		.out_link {
		}
		.out_link:after {
			content: "\f08e";
			font-family: FontAwesome;
			margin-left: 5px;
			color: #666;
			position: relative;
			top: 2px;
		}

		/* tab切り替え */
		ul#tab {
			margin: 0 auto 30px;
			padding: 0;
			text-align: center;
		}
	
			ul#tab > li {
				display: inline-block;
				margin: 0 15px 0 0;
				padding: 0.2em 0;
				text-align: center;
			}
			ul#tab > li:last-child {
				margin-right: 0;
			}
			ul#tab > li:before {
				content: none;
			}
				ul#tab > li a {
					display: inline-block;
					padding: 5px 20px;
					text-decoration: none;
					border-width: 0;
					border-style: solid;
					background: transparent;
					border-radius: 3px;
					-webkit-border-radius: 3px;
					-moz-border-radius: 3px;
					cursor: pointer;
					user-select: none;
					vertical-align: bottom;
					transition: box-shadow 0.2s, transform 0.2s, color 0.2s;
					box-shadow: 0 3px 0 0 #b7c3d1, 0 4px 4px -1px rgba(0, 0, 0, 0.6), 0 4px 6px 1px rgba(0, 0, 0, 0.3), 0 1px 2px 1px transparent inset, 0 18px 32px -2px rgba(255, 255, 255, 0.1) inset;
					background-color: #E6EAEF;
					background-image: linear-gradient(-45deg, #E6EAEF, #e4edf1);
					color: #252730;
				}
				ul#tab > li a:hover {
					color: #252730;
					box-shadow: 0 3px 0 0 #b7c3d1, 0 6px 4px -1px rgba(0, 0, 0, 0.3), 0 4px 16px rgba(0, 0, 0, 0.5), 0 1px 2px 1px transparent inset, 0 18px 32px -2px rgba(255, 255, 255, 0.14) inset;
				}
				ul#tab > li a:active {
					box-shadow: 0 0px 0 0 #a8b6c7, 0 3px 0 0 transparent, 0 4px 16px transparent, 0 1px 2px 1px rgba(0, 0, 0, 0.5) inset, 0 -18px 32px -2px rgba(255, 255, 255, 0.1) inset;
					transition: 0s;
					color: #b7c3d1;
					text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
				}
				ul#tab > li a:before {
					content: "\f0da";
					font-family: FontAwesome;
					margin-right: 10px;
				}
			ul#tab > li.selected {
			}
				ul#tab > li.selected a {
				}
				.alpha .btn-light:hover {
				}
				.alpha .btn-light:active {
				}
				ul#tab > li.selected a:before {
					content: "\f0d7";
					font-family: FontAwesome;
					margin-right: 10px;
					color: #900;
				}

		/* paper_nav */
		#page_body .paper_nav {
			margin-bottom: 20px;
		}
			#page_body .paper_nav ul {
				margin: 0 auto;
				text-align: center;
			}
			#page_body .paper_nav ul li {
				display: inline-block;
				padding: 0;
				margin: 0 5px 0 0;
			}
			#page_body .paper_nav ul li:before {
				content: none;
			}
				#page_body .paper_nav ul li a {
					display: inline-block;
					height: 25px;
					line-height: 25px;
					background: rgba(160, 130, 0, 0.7);
					color: #fff;
					text-decoration: none;
					padding: 0 10px;
					transition: all ease .3s;
					-webkit-transition: all ease .3s;
					-moz-transition: all ease .3s;
				}
				#page_body .paper_nav ul li a:hover {
					background: rgba(160, 130, 0, 0.8);
				}

		/* 図セット */
		.fig_wrap {
			margin: 40px 0;
			text-align: center;
		}
			.fig_ttl {
				font-size: 1.1em;
				margin-bottom: 5px;
			}
			.fig_img {
				position: relative;
				padding-bottom: 30px;
			}
			.fig_img:after {
				content: "※クリックすると拡大します";
				font-size: 12px;
				position: absolute;
				right: 0;
				left: 0;
				bottom: 0;
				margin: 0 auto;
				display: block;
				text-shadow: rgba(0, 0, 0, .075) 2px 2px 0px, rgba(0, 0, 0, .075) -2px 2px 0px, rgba(0, 0, 0, .075) 2px -2px 0px, rgba(0, 0, 0, .075) -2px -2px 0px;
			}
				.fig_img > a {
					display: inline-block;
				}
				.fig_img img {
					border: 1px solid #ccc;
				}
		/* 画像にcaptionがある場合 */
		.caps_set {
		}
			.caps_set .fig_img {
			}
			.caps_set .fig_img:after {
				color: #fff;
			}
		/* 画像にリンクがない場合 */
		.a_none {
		}
			.a_none .fig_img {
			}
			.a_none .fig_img:after {
				content: none;
			}
			.fig_caps {
				font-size: 0.9em;
				margin-bottom: 40px;
			}
			.fig_caps:only-child,
			.fig_caps:last-child {
				margin-bottom: 0;
			}

	/* sidebar */
	#sidebar {
		width: 210px;
		overflow: hidden;
		float: left;
		margin: -60px 0 0 0;
	}
		#side_nav {}
			#side_nav ul {}
				#side_nav ul li {
					font-size: 1.1em;
					border-bottom: 1px solid #000;
				}
					#side_nav ul li a {
						display: block;
						padding: 20px 10px;
						color: #222;
						text-decoration: none;
						transition: all ease .3s;
						-webkit-transition: all ease .3s;
						-moz-transition: all ease .3s;
						position: relative;
					}
					
					#side_nav ul li a:hover{
						padding-left: 25px;
					}
					#side_nav ul li a:hover:after,
					#side_nav ul li.active a:after{
						content: url(../shared/arrow_02.png);
						display: block;
						position: absolute;
						top: 22px;
						right: 0;
					}
					
					#side_nav ul li.active a span{
						color:#c13535;
						font-weight:bold;
					}

/* pg_bnr_box */
#pg_bnr_box {
	clear: both;
	background: #fff;
	padding: 5px 0;
}
	#pg_bnr_box .box_inner {
		height: 120px;
		overflow: hidden;
		padding-top: 20px;
		background: url(../shared/pg_bnr_bg.jpg) top center no-repeat #eae6db;
	}
		#pg_bnr_box .box_inner ul {
			width: 800px;
			margin: 0 auto 55px;
			font-size: 0;
			text-align: center;
		}
			#pg_bnr_box .box_inner ul li {
				display: inline-block;
				font-size: 14px;
				margin-right: 40px;
			}
			#pg_bnr_box .box_inner ul li:last-child {
				margin-right: 0;
			}
			
.imgs4table{
	margin:2em 0;
	display:block;
}

	.imgs4table tbody{
		display:block;
	}
	
	.imgs4table tbody tr{
		display:flex;
		flex-wrap:wrap;
	}

		.imgs4table tbody tr td{
			box-sizing:border-box;
			display:block;
			padding:0;
			border:none;
			width:25%;
			padding:0.5em;
		}
		

/*--------PCここまで--------*/
@media screen and (max-width: 479px) {
/* 479px以下用（スマートフォン用）の記述 */
/*--------SPここから--------*/

/* content_ttl */
#content_ttl {
	width: inherit;
	height: 80px;
	margin: 0 auto 0.5em;
	background-size: cover;
	background-position: top center;
}
	#content_ttl h2 {
		height: 70px;
		padding-top: 1em;
		line-height: inherit;
		font-size: 1.4em;
		font-weight: bold;
		color: #fff;
		text-shadow:
			rgba(0, 0, 0, .075) 2px 2px 0px,
			rgba(0, 0, 0, .075) -2px 2px 0px,
			rgba(0, 0, 0, .075) 2px -2px 0px,
			rgba(0, 0, 0, .075) -2px -2px 0px
		;
	}
		#content_ttl h2 span {
			display: block;
			text-align: center;
		}
		#content_ttl h2 .ttl {
			margin-bottom: 0.1em;
		}
		#content_ttl h2 .ttl_en {
			font-size: 0.7em;
			font-weight: normal;
		}

/* topicpath */
#topicpath {
	width: inherit;
	margin: 0 auto 1.5em;
	padding: 0 5px;
}
	#topicpath ul {
		font-size: 0.8em;
	}
		#topicpath ul li {
			margin-right: 5px;
		}
		#topicpath ul li:last-child {
			margin-right: 0;
		}
		#topicpath ul li:after {
		}
		#topicpath ul li:last-child:after {
		}
			#topicpath ul li a {
			}
			#topicpath ul li a:hover {
			}

/* main_box */
#main_box {
	width: inherit;
	min-height: inherit;
	padding: 10px 10px 2em;
}
#pages #main_box,
.database #main_box {
	padding: 10px 10px;
}

	/* page_ttl */
	#page_ttl {
		margin-bottom: 1.5em;
	}
		#page_ttl h3 {
			font-size: 1.2em;
			padding: 0 5px 5px;
		}
		#page_ttl h3:after {
		}

	/* page_body */
	#page_body {}
	#pages #page_body,
	.database #page_body,
	.research #page_body,
	.news #page_body,
	.event #page_body {
		width: inherit;
		float: none;
		min-height: 300px;
	}

	/* sidebar */
	#sidebar {
		width: inherit;
		float: none;
		margin: 0;
	}
		#side_nav {}
			#side_nav #s_nav_ttl {
				padding: 10px 5px;
				background: #202221;
				font-size: 1.1em;
				font-weight: bold;
				color: #fff;
				text-align: center;
				border-radius: 4px 4px 0 0;
			}
			#side_nav ul {
				padding: 2px;
				border-left: 3px solid #202221;
				border-right: 3px solid #202221;
				border-bottom: 3px solid #202221;
				border-radius: 0 0 4px 4px;
				background: rgba(255,255,255,0.3);
			}
				#side_nav ul li {
					font-size: 0.9em;
				}
				#side_nav ul li:last-child {
					border-bottom: 0;
				}
					#side_nav ul li a {
						padding: 10px 15px;
					}
					#side_nav ul li a:hover,
					#side_nav ul li.current a {
						padding: 10px 18px 10px 25px;
					}
					#side_nav ul li a:hover:after,
					#side_nav ul li.current a:after {
						top: 12px;
						right: 10px;
					}

/* pg_bnr_box */
#pg_bnr_box {
	padding: 5px 0;
}
	#pg_bnr_box .box_inner {
		height: inherit;
		overflow: hidden;
		padding: 10px;
		background-size: cover;
	}
		#pg_bnr_box .box_inner ul {
			width: inherit;
			margin: 0 auto;
			text-align: center;
		}
			#pg_bnr_box .box_inner ul li {
				width: 32%;
				margin-right: 6px;
			}
			#pg_bnr_box .box_inner ul li:last-child {
				margin-right: 0;
			}

/*--------SPここまで--------*/
}