@charset "utf-8";

/*
	File Name   : style.css
	SP break point
	@media screen and (max-width: 768px) {}

*/

/*----------------------------------------------------------------------------------------------------- */
/* Universal reset */
/*----------------------------------------------------------------------------------------------------- */

* {
	margin: 0;
	padding: 0;
	font-style: normal;
	
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}


@media print{
	#global_navi_sp,
	#global_navi_sp_bg,
	#header_navi1,
	#header_navi2,
	#global_navi,
	#side,
	#footer_search,
	#footer_area2_sns,
	#footer_area2_contact,
	#footer_area3 ul{
		display: none !important;
	}
	#copyright {
		position: relative !important;
		text-align: center !important;
	}
}

/* Link setting
---------------------------------------------*/
a:link{
	color: #304ffe;
    text-decoration: none;
}
a:visited {
	color: #4527a0;
    text-decoration: none;
}

@media screen and (min-width: 769px){
	
	a:hover {
		text-decoration: underline;
	}
	a:hover img,
	button:hover,
	input[type="button"]:hover,
	input[type="submit"]:hover,
	input[type="image"]:hover{
		cursor: pointer;
	}
	
}

/*----------------------------------------------------------------------------------------------------- */
/* Base style */
/*----------------------------------------------------------------------------------------------------- */

/* Body setting
----------------------------------------------------------- */
html{
	/* 10px */
	font-size: 62.5%;
}


body {
	color: #212121;
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "Yu Gothic",YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: normal;
	font-size: 1.4rem;
	
	line-height: 1.5;
	text-align: center;
	overflow-y:auto;
	background: #fff !important;
	padding: 0px !important;
}

@media screen and (max-width: 768px) {
	
	body {
		border-top:4px solid #c62828;
		font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
}

/* Container, Wrap
----------------------------------------------------------- */
#container{
	position:relative;
}

@media screen and (max-width: 768px) {
	
	#container{
		width:100%;
	}
	#container.slide_left{
		overflow-x: hidden;
		overflow-y:visible;
		-webkit-overflow-scrolling: touch;
	}
	
}

/* Header
----------------------------------------------------------- */
header{
	position:relative;
	height:118px;
	width:100%;
	min-width: 1120px;
	margin: 0 auto;
	border-bottom:1px solid #DFDFDF;
}
#header__inner{
	position:relative;
	width:1120px;
	margin: 0 auto;
	text-align: left;
}

#logo{
	position: absolute;
	top: 20px;
	left: 0;
	width: 256px;
	height: 48px;
}

#header_navi1{
	position: absolute;
	top:0;
	right: 0;
	min-height: 40px;
	font-size: 1.3rem;
	background: #f5f5f5;
	padding: 0 5px;
}
	#header_navi1 ul{
		float: left;
		overflow: hidden;
	}
		#header_navi1 ul li{
			float: left;
		}
			#header_navi1 ul li a{
				display: block;
				color: #212121;
				text-decoration: none;
				padding:10px 12px 0px;
				min-height: 40px;
			}
			#header_navi1 ul li a:hover{
				color: #c62828;
			}
			#header_navi1 ul li#header_navi1_eng a {
				display: block;
				padding:10px 12px 0px 22px;
				background: url(/common/img/arrow_gray2_r.svg) 7px 47% no-repeat;
				background-size: 7px 7px;
				margin-left: 20px;
			}





#header_navi2{
	position: absolute;
	top: 40px;
	right: 0;
}
	#header_navi2 ul{
		position: relative;
		float: left;
		border-left:1px solid #e0e0e0;
	}
		#header_navi2 ul li{
			float: left;
			border-right:1px solid #e0e0e0;
		}
			#header_navi2 ul li a{
				display: block;
				width: 84px;
				text-align: center;
				color: #212121;
				font-size: 1.3rem;
				text-decoration: none;
				padding: 49px 0px 0px;
				height: 78px;
			}
				
				#header_navi2 ul li#header_access a{
					background: url(/common/img/icon_access.svg) 50% 14px no-repeat;
					background-size: 22px 30px;
				}
				
				#header_navi2 ul li#header_document a{
					background: url(/common/img/icon_note.svg) 50% 16px no-repeat;
					background-size: 19px 26px;
				}
				#header_navi2 ul li#header_search a{
					background: url(/common/img/icon_search2.svg) 50% 16px no-repeat;
					background-size: 24px 28px;
				}
				
				/* header_navi2_search */
				#header_navi2_search{
					position: absolute;
					top:78px;
					right: 0;
					width:256px;
					z-index: 100;
					/**/
					display: none;
				}
					#header_navi2 ul li#header_search .is_active + #header_navi2_search{
						display: block;
					}
					#header_navi2_search #header_navi2_search_btn{
						width:40px;
						height: 40px;
						-webkit-appearance: none;
						appearance: none;
						background: #c62828 url(/common/img/icon_search.svg) 50% 50% no-repeat;
						background-size: 20px 20px;
						border:none;
						float: right;
					}
					#header_navi2_search #header_navi2_search_txt{
						padding-right: 40px;
					}
						#header_navi2_search input[type="text"] {
							background: #eeeeee;
							padding: 4px 10px 0px;
							width: 100%;
							height: 40px;

							border:none;
							outline: 0;

							-webkit-appearance: none;
							appearance: none;
						}
						#header_navi2_search #header_navi2_search_btn:hover{
							background: #ff5252 url(/common/img/icon_search.svg) 50% 50% no-repeat;
							background-size: 20px 20px;
							opacity: 1;
						}
				/* END header_navi2_search */				
				
@media screen and (min-width: 769px){
	#header_navi2 ul li a:hover{
		color: #c62828;
	}
	#header_navi2 ul li#header_access a:hover{
		background: url(/common/img/icon_access_on.svg) 50% 14px no-repeat;
		background-size: 22px 30px;
	}
	#header_navi2 ul li#header_document a:hover{
		background: url(/common/img/icon_note_on.svg) 50% 16px no-repeat;
		background-size: 19px 26px;
	}
	#header_navi2 ul li#header_search a:hover,
	#header_navi2 ul li#header_search a.is_active{
		background: url(/common/img/icon_search2_on.svg) 50% 16px no-repeat;
		background-size: 24px 28px;
		color: #c62828;
	}
	#header_navi2 ul li#header_search a.has_closed:hover{
		background-image: url(/common/img/icon_search2.svg);
		color: inherit;
	}
	
}

#header_menu_sp{
	display: none;
}


@media screen and (max-width: 768px) {
	
	header{
		height:80px;
		min-width:inherit;
		background:#fff;
		z-index: 1000;
		border-bottom:none;
	}
	#header__inner{
		width:auto;
	}

	#logo{
		position: absolute;
		top: 27px;
		left: 15px;
		width: 164px;
		max-width: 46%;
		height: auto;
		margin-left: 0px;
	}
	#logo img{
		width: 164px;
	}

	#header_navi1{
		display: none;
	}
	
	#header_navi2 {
		position: absolute;
		top: 12px;
		right: 15px;
		background: #fff;
	}
	#header_navi2 ul{
		border-left:none;
	}
	#header_navi2 ul li {
		margin-left: 12px;
		border-right:none;
	}
	#header_navi2 ul li:first-child{
		margin-left: 0px;
	}
	#header_navi2 ul li a {
		min-width:inherit;
		width: 40px;
		color: #212121;
		font-size: 10px;
		font-weight: bold;
		padding: 45px 0px 0px;
		line-height: 1;
		height: auto;
		white-space: nowrap;
	}
	#header_navi2 ul li#header_access a {
		background-position: 50% 6px !important;
	}
	#header_navi2 ul li#header_document a {
		background-position: 50% 7px !important;
	}
	#header_navi2 ul li#header_search,
	#header_navi2_search{
		display: none !important;
	}
	#header_menu_sp{
		display: block;
		background: url(/common/img/header_menu_close.png) 0% 0px no-repeat;
		background-size: 40px 40px;
	}
		#header_navi2 ul li#header_menu_sp a {
			background: url(/common/img/header_menu.png) 0% 0px no-repeat;
			background-size: 40px 40px;
		}
		#header_navi2 ul li#header_menu_sp a.open{
			background: url(/common/img/header_menu_close.png) 50% 0px no-repeat;
			background-size: 40px 40px;
		}
	
	
}

/* globalNavi
----------------------------------------------------------- */
#global_navi{
	padding-top: 72px;
	width:830px;
}
	#global_navi > ul{
		position: relative;
	}
		#global_navi > ul > li{
			float: left;
			list-style: none;
			margin-right: 32px;
		}
			#global_navi > ul > li > a{
				color:#212121;
				display: block;
				font-size:1.6rem;
				font-weight: normal;
				line-height: 1;
				text-align: center;
				height: 46px;
				padding-top: 14px;
			}
			#global_navi > ul > li:last-child{
				margin-right: 0px;
			}
			#global_navi > ul > li > a:hover,
			#global_navi > ul > li > a.current,
			#global_navi > ul > li:hover > a{
				color:#c62828 !important;
				border-bottom:4px solid #c62828;
				text-decoration: none;
			}

@keyframes fade-in {
	0% {	display: none;opacity: 0;}
	1% {	display: block;opacity: 0;}
	100% {	display: block;opacity: 1;}
}
@-moz-keyframes fade-in {
	0% {	display: none;opacity: 0;}
	1% {	display: block;opacity: 0;}
	100% {	display: block;opacity: 1;}
}
@-webkit-keyframes fade-in {
	0% {	display: none;opacity: 0;}
	1% {	display: block;opacity: 0;}
	100% {	display: block;opacity: 1;}
}

#global_navi .megamenu{
	position:absolute;
	top:45px;
	left: 0px;
	z-index: 1000;
	padding-top: 1px;
	display: none;
	opacity: 0;
}
	#global_navi > ul > li:hover .megamenu.on{
		display:block;
		opacity: 1;
		/**/
		-moz-animation-duration: 0.4s;
		-moz-animation-name: fade-in;
		-webkit-animation-duration: 0.4s;
		-webkit-animation-name: fade-in;
		animation-duration: 0.4s;
		animation-name: fade-in;
	}

@media screen and (min-width: 769px){
	.megamenu_inner{
		position: relative;
		width:1120px;
		background: #fff;
		display: table;
		border: 1px solid #e0e0e0;
		border-top: none;
	}
		.megamenu_box{
			position: relative;
			width:100%;
			display: table-cell;
			vertical-align: top;
			padding:15px 0px 8px 30px;
			border-right: 1px solid #e0e0e0;
		}
			.megamenu_inner .megamenu_box:last-child{
				border-right:none !important;
			}
			.megamenu_column1 .megamenu_box{
				display: block;
				padding:8px 0px 0px 0px;
				overflow: hidden;
			}
			.megamenu_column1 .megamenu_box:nth-child(2){
				padding:0px 0px 8px 0px;
			}
			.megamenu_column2 .megamenu_box{
				width:50%;
			}
			.megamenu_column3 .megamenu_box{
				width:33.33%;
			}
			.megamenu_column4 .megamenu_box{
				width:25%;
			}
			.megamenu_column2_1 .megamenu_box:nth-of-type(1){
				width:66.66%;
			}
			.megamenu_column2_1 .megamenu_box:nth-of-type(2){
				width:33.33%;
			}
			.megamenu_column2_1 .megamenu_box .megamenu_box_l_inner{
				float: left;
				width:50%;
				border-right: 1px solid #e0e0e0;
			}
				.megamenu_column2_1 .megamenu_box .megamenu_box_l_inner:nth-of-type(2){
					padding: 8px 30px 8px 30px;
					border-right:none;
				}
	
			.megamenu_box ul{
				padding: 8px 0 0px 0;
				font-size:1.4rem;
			}
				.megamenu_box ul:first-child{
					padding: 0px 0 0px 0;
					margin-top: 0px;
				}
				.megamenu_box ul li{
					margin-bottom: 14px;
					line-height: 1.2;
				}
					.megamenu_box ul li a{
						padding-left: 14px;
						color:#212121;
						background: url(/common/img/arrow_red.svg) 0 0.30em no-repeat;
						background-size: 6px 9px;
						text-decoration: none;
						display: inline-block;
					}
					.megamenu_box ul li a:hover{
						color:#c62828;
					}
	/*-----------------*/
}

@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .megamenu_box ul li a{
		background: url(/common/img/arrow_red.svg) 0 0.10em no-repeat;
		background-size: 6px 9px;
	}
}/* IE11 */
					

.megamenu_ttl{
	margin: 0 0 8px -30px;
	line-height: 1;
	font-weight: bold;
	font-size:1.5rem;
}
	.megamenu_ttl span,
	.megamenu_ttl a{
		display: block;
		background-color: #f5f5f5;
		color:#212121;
		padding:11px 32px;
		text-decoration: none;
	}
	@media all and (-ms-high-contrast:none){
		*::-ms-backdrop, .megamenu_ttl span{
			padding:13px 32px 8px;
		}
		*::-ms-backdrop, .megamenu_ttl a{
			padding:13px 32px 8px;
		}
	}/* IE11 */
	.megamenu_ttl a{
		background-image: url(/common/img/arrow_red3.svg);
		background-position: calc(100% - 21px) 50%;
		background-repeat: no-repeat;
		background-size: 9px 14px;
	}
	.megamenu_ttl a:hover{
		color:#c62828;
		background-color: #ffebee;
	}

.megamenu_ph_type01{
	padding: 8px 0;
	font-size:1.4rem;
}
	.megamenu_ph_type01 a{
		display: table;
		color:#212121;
		text-decoration: none !important;
	}
	.megamenu_ph_type01 a:hover{
		color:#c62828;
	}
		.megamenu_ph_type01 figure{
			display: table-cell;
			vertical-align: middle;
		}
		.megamenu_ph_type01 p{
			display: table-cell;
			vertical-align: middle;
			padding-left: 15px;
			line-height: 1.35;
		}

.megamenu_ph_type02{
	padding: 8px 0 8px 0px;
	margin-left: 30px;
	font-size:1.4rem;
	width:340px;
	float: left;
}
	.megamenu_ph_type02 a{
		display: table;
		width:100%;
		color:#212121;
		text-decoration: none !important;
	}
	.megamenu_ph_type02 a:hover{
		color:#c62828;
	}
		.megamenu_ph_type02 figure{
			display: table-cell;
			vertical-align: middle;
			width:120px;
		}
		.megamenu_ph_type02 p{
			display: table-cell;
			vertical-align: middle;
			padding-left: 15px;
			line-height: 1.35;
		}

#gn2 .megamenu_ph_type02{
	font-size:1.5rem;
	font-weight: bold;
}
	#gn2 .megamenu_ph_type02 a{
		background-image: url(/common/img/arrow_red3.svg);
		background-position: calc(100% - 21px) 50%;
		background-repeat: no-repeat;
		background-size: 9px 14px;
	}

#global_navi_bg{
	display:none;
	opacity: 0;
	background-color:rgba(0,0,0,0.50);
	position: absolute;
	top:118px;
	left: 0;
	width: 100%;
	height: calc(100% - 118px);
	z-index: 999;
	
	/**/
	-moz-animation-duration: 0.6s;
	-moz-animation-name: fade-in;
	-webkit-animation-duration: 0.6s;
	-webkit-animation-name: fade-in;
	animation-duration: 0.6s;
	animation-name: fade-in;
}
#global_navi_bg.on{
	display:block;
	opacity: 1;
}

@media screen and (min-width: 769px){
	#global_navi_sp,
	#global_navi_sp_bg{
		display: none !important;
	}
	
}


@media screen and (max-width: 768px) {
	
	#global_navi{
		display: none !important;
	}
	#global_navi_bg{
		display: none !important;
	}
	/*-----------*/
	#global_navi_sp{
		display: none;
		position:absolute;
		top:80px;
		left:0;
		z-index:1001;
		background: #fafafa;
		border-bottom:1px solid #e0e0e0;
		overflow-x: hidden;
		/**/
		width:100%;
		-webkit-overflow-scrolling: touch;
		/**/
		-webkit-transition-property: -webkit-transform;
		transition-property: transform;

		-webkit-transition-duration: 250ms;
		transition-duration: 250ms;

		-webkit-transition-timing-function: ease;
		transition-timing-function: ease;
		-webkit-transform: translate3d(100%, 0, 0);
		transform: translate3d(100%, 0, 0);
	}
		#global_navi_sp.slide_left{
			-webkit-transform: translate3d(0, 0, 0);
			transform: translate3d(0, 0, 0);
		}
	
	#global_navi_sp_bg{
		display: none;
		position:fixed;
		top:4px;
		left:0;
		width:100%;
		height: 120%;
		z-index:999;
		background-color: rgba(255,255,255,0.90);
	}
		#global_navi_sp_bg.slide_left{
			display: block;
		}
	
	#global_navi_sp_search{
		background: #e0e0e0;
    	padding: 20px 24px;
	}
		#global_navi_sp_search_btn{
			width:40px;
			height: 40px;
			-webkit-appearance: none;
			appearance: none;
			background: #c62828 url(/common/img/icon_search.svg) 50% 50% no-repeat;
			background-size: 20px 20px;
			border:none;
			float: right;
			border-radius: 0;
		}
		#global_navi_sp_search_txt{
			padding-right: 40px;
		}
			#global_navi_sp_search_input{
				background: #fff;
				border:none;
				outline: 0;

				-webkit-appearance: none;
				appearance: none;
				height: 40px;
				width:100%;
				padding: 4px 10px;

				font-size:16px;
				border-radius: 0;
			}
	#global_navi_sp_inner1{
		padding-bottom: 5px;
	}
		#global_navi_sp_inner1 > ul > li > span{
			display: block;
			background: #fafafa url(/common/img/icon_plus.svg) 24px 50% no-repeat;
			background-size: 24px 24px;
			color:#212121;
			font-size: 18px;
			font-weight: bold;
			padding: 20px 10px 20px 61px;
			cursor: pointer;
		}
		#global_navi_sp_inner1 > ul > li > span.open{
			background: #ffebee url(/common/img/icon_minus.svg) 24px 50% no-repeat;
			background-size: 24px 24px;
		}
		
	#global_navi_sp_inner1 > ul > li .megamenu_inner{
		display: none;
		background: #fff;
		padding:12px 0px 5px 47px;
	}
		#global_navi_sp_inner1 > ul > li .megamenu_inner.megamenu_column1{
			padding:20px 0px 5px 47px;
		}
	.megamenu_box{
		padding:0px;
	}
	.megamenu_ttl{
		margin: 0 0px 20px -47px;
		line-height: 1;
		font-weight: bold;
		font-size:1.6rem;
	}
		.megamenu_ttl span,
		.megamenu_ttl a{
			display: block;
			background-color: #f5f5f5;
			color:#212121;
			padding:13px 32px;
			text-decoration: none;
		}
		
		#global_navi_sp_inner1 > ul > li ul{
			background: #fff;
			font-size:16px;
			padding: 0px 0px 8px 0px;
			margin-top: -12px;
		}
			#global_navi_sp_inner1 > ul > li ul li a{
				display: block;
				position: relative;
				text-decoration: none;
				color:#212121;
				padding: 12px 10px 13px 20px;
				line-height: 1.3;
			}
			#global_navi_sp_inner1 > ul > li ul li a::after {
				display: block;
				width: 14px;
				height: 8px;
				content: " ";
				position: absolute;
				top: 50%;
				left: 0px;
				margin-top: -4px;
				background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
				background-size: 14px 8px;
				z-index: 3;
				-webkit-transform: rotate(-90deg);
				transform: rotate(-90deg);
			}
	
	.megamenu_ph_type01{
		padding: 0px 0 16px;
		font-size:1.6rem;
	}
		.megamenu_ph_type01 a{
			width:100%;
		}
			.megamenu_ph_type01 figure{
				width:100px;
			}
			.megamenu_ph_type01 figure img{
				width:100px;
				height: auto;
			}
			.megamenu_ph_type01 p{
			}

	.megamenu_ph_type02{
		padding: 0px 0 16px;
		margin-left: 0px;
		font-size:1.6rem;
		float: none;
		width: auto;
	}
		.megamenu_ph_type02 a{
			width:100%;
		}
			.megamenu_ph_type02 figure{
				width:100px;
			}
			.megamenu_ph_type02 figure img{
				width:100px;
				height: auto;
			}
			.megamenu_ph_type02 p{
			}
	
	#global_navi_sp_inner2{
		margin: 0 24px 20px;
		border-top:1px solid #c5c5c5;
		padding-top: 20px;
		line-height: 1.3;
		font-size:16px;
	}
		#global_navi_sp_inner2 ul{
			overflow: hidden;
		}
			#global_navi_sp_inner2 ul li{
				float: left;
				width:50%;
				vertical-align: top;
				padding: 11px 5px 11px 0px;
			}
				#global_navi_sp_inner2 ul li:last-child{
					float: right;
				}
				#global_navi_sp_inner2 ul li a {
					display: block;
					padding: 2px 0px 2px 12px;
					background: url(/common/img/arrow_red2_r.svg) 0px 8px no-repeat;
					background-size: 7px auto;
					color:#212121;
				}
	
	#global_close_btn{
		margin: 0 24px 50px;
	}
		#global_close_btn a{
			display: block;
			border:1px solid #c5c5c5;
			text-align: center;
			font-size:16px;
			line-height: 1;
			color:#212121;
		}
			#global_close_btn a span{
				display: inline-block;
				text-align: center;
				padding: 24px 0px 24px 26px;
				background: url(/common/img/icon_close.svg) 0 50% no-repeat;
				background-size: 13px 13px;
			}
	
	/* ------------------ */	
}

/* content-main
----------------------------------------------------------- */
#main{
	margin:0 auto;
	min-height:300px;
	width:1120px;
	margin-bottom: 80px;
	font-size: 1.6rem;
}
	#index #main{
	}

article{
	float: left;
	text-align: left;
	width: 832px;
	line-height: 1.9;
}
	body.no_side article{
		float: none;
		width: auto;
	}
	body.no_side article.content_small{
		float: none;
		width: 832px;
		margin: 0 auto;
	}

@media screen and (max-width: 768px) {
	
	#main{
		min-height:100px;
		width:auto;
		margin-bottom: 30px;
		font-size: 16px;
	}
	article{
		float: none;
		width: 100% !important;
		padding: 30px 24px;
		overflow-x: hidden;
	}
	
}


/* breadcrumb_list
----------------------------------------------------------- */
#topic_path,
#topic_path_btm{
    width: 100%;
}
#topic_path_btm{
	display: none;
}
	#topic_path br{
		display: none;
	}
	#topic_path ul,
	#topic_path_btm ul{
		width:1120px;
		margin: 0 auto;
		padding: 10px 0;
		overflow:hidden;
		text-align:left;
	}
		#topic_path ul li,
		#topic_path_btm ul li{
			float: left;
			margin-right: 20px;
			font-size: 1.3rem;
		}
			#topic_path ul li strong,
			#topic_path_btm ul li strong{
				font-weight:normal;
			}
			#topic_path ul li a,
			#topic_path_btm ul li a{
				display: block;
				position: relative;
			}
			#topic_path ul li:first-child a,
			#topic_path_btm ul li:first-child a{
				padding-left: 20px;
				background: url(/common/img/icon_home.svg) 0 50% no-repeat;
				background-size: 14px 14px;
			}
			#topic_path ul li a::after,
			#topic_path_btm ul li a::after{
				display: block;
				content: " ";
				width:8px;
				height: 6px;
				position: absolute;
				top:50%;
				right: -14px;
				margin-top: -4px;
				
				background: url(/common/img/arrow_gray_btm.svg) 0 0 no-repeat;
				background-size: 8px 6px;
				
				-webkit-transform:rotate(-90deg);
				transform:rotate(-90deg);
			}

@media screen and (max-width: 768px) {
	#topic_path {
		display: none;
	}
	#topic_path_btm{
		border-top:1px solid #c5c5c5;
		display: block;
		padding: 20px 24px;
	}
		#topic_path_btm ul{
			width:auto;
		}
	
}

/* Side
----------------------------------------------------------- */
#side{
    float: right;
	text-align: left;
	width: 256px;
	position: relative;
	top: -97px;
}

#category_ttl{
	display: table;
	width:100%;
	height: 144px;
	margin-bottom: 0;
}
#category_ttl a{
	display: table-cell;
	width:100%;
	height: 144px;
	text-align: center;
	vertical-align: middle;
	color: #fff;
	font-size:1.8rem;
	background: url(/common/img/side_ttl_bg.png) 0 0 no-repeat;
	margin-bottom: 0;
	border-radius: 5px 5px 0px 0px;
}
#side_page_ttl{
	display: none;
}

/* side_navi*/
.side_navi{
	background: #fff;
}
	.side_navi > ul{
	}
		.side_navi > ul > li{
			border-bottom:1px solid #c5c5c5;
		}
		.side_navi > ul > li > a{
			display: block;
			padding:17px 10px 17px 31px;
			color:#212121;
			font-size:1.5rem;
			font-weight: bold;
			background:#f5f5f5 url(/common/img/icon_plus.svg) 10px 1.28em no-repeat;
			background-size: 15px 15px;
			cursor: pointer;
		}
			.side_navi > ul > li > a.open{
				color:#c62828;
				background:#ffebee url(/common/img/icon_minus.svg) 10px 1.28em no-repeat;
				background-size: 15px 15px;
			}
				.side_navi > ul > li ul li a{
					display: block;
					color:#212121;
					font-size:1.4rem;
					text-decoration: none;
					padding:13px 10px 13px 31px;
					background:#fff url(/common/img/arrow_red2_r.svg) 14px 1.28em no-repeat;
					background-size: 7px 7px;
				}
					.side_navi > ul > li ul li a.current{
						color: #c62828;
						background:#ffebee url(/common/img/arrow_red2_r.svg) 14px 1.28em no-repeat;
						background-size: 7px 7px;
					}
					

@media screen and (min-width: 769px){
	#side.side_pc_top{
		top: -97px!important;
	}
	#side.side_pc_fixed{
		top: 0px;
	}
	.side_navi{
		overflow: auto;
	}
	.side_navi > ul{
		display: block !important;
		max-height:inherit !important;
	}
	.side_navi > ul > li ul{
			border-top:1px dotted #c5c5c5;
		}
			.side_navi > ul > li ul li{
				border-bottom:1px dotted #c5c5c5;
			}
				.side_navi > ul > li ul li:last-child{
					border-bottom:none;
				}
	.side_navi > ul > li > a:hover{
		color:#c62828;
		text-decoration: none;
		background:#ffebee url(/common/img/icon_plus.svg) 10px 1.28em no-repeat;
		background-size: 15px 15px;
	}
		.side_navi > ul > li ul li a:hover{
			color:#c62828;
		}
}

@media screen and (max-width: 768px) {
	
	#side{
		float:none;
		width:100%;
		margin-top: 0px;
		min-height: 163px;
		top:inherit !important;
	}
	#category_ttl{
		display: block;
		height:auto;
		margin-bottom: 0;
	}
		#category_ttl a{
			display: block;
			width:100%;
			height:auto;
			padding: 20px 5px 20px;
			font-size:15px;
			background: url(/common/img/cate_ttl_bg.png) 0 0 no-repeat;
			background-size:cover!important;
			border-radius: 0px;
		}
	
	.side_navi{
		position: relative;
		position: -webkit-sticky;
		position: sticky;
		
		width:100%;
		top:0px;
		left: 0;
		z-index: 101;
		
		max-height: inherit !important;
	}
	.side_navi.pos_fixed{
		position:fixed;
	}
	
	#side_page_ttl{
		display:block;
		background: #fafafa url(/common/img/icon_plus.svg) 23px 50% no-repeat;
		background-size: 25px 25px;
		border-bottom: 1px solid #e0e0e0;
		text-align: left;
		font-size:24px;
		font-weight: bold;
		padding:28px 20px 26px 60px;
		min-height: 90px;
		line-height: 1.3;
		cursor: pointer;
		
		-webkit-transition: all 0.20s;
		transition: all 0.20s;
	}
		#side_page_ttl.open{
			background: #fff url(/common/img/icon_minus.svg) 23px 50% no-repeat;
			background-size: 25px 25px;
			border-bottom: 1px solid #fff;
		}
		#side_page_ttl span{
			display: inline-block;
			color:#616161;
			font-size: 14px;
			font-weight: normal;
			line-height: 1.5;
			padding-left: 15px;
		}
		.side_navi.pos_fixed #side_page_ttl{
			padding:8px 20px 7px 60px;
			min-height: 50px;
		}
	
	.side_navi > ul{
		display: none;
		border-bottom:1px solid #c5c5c5;
		background:#fafafa;
		padding-bottom: 20px;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
		.side_navi > ul > li{
			border-bottom:none;
		}
			.side_navi > ul > li > a{
				padding:12px 10px 12px 53px;
				background:#fafafa url(/common/img/icon_plus2.svg) 25px 50% no-repeat;
				background-size: 12px auto;
			}
				.side_navi > ul > li > a.open{
					background:#ffebee  url(/common/img/icon_minus2.svg) 25px 50% no-repeat;
					background-size: 12px auto;
				}
				
				.side_navi > ul > li ul{
					padding-left: 20px;
					background:#fff;
				}
					.side_navi > ul > li ul li a{
						display: block;
						color:#212121;
						font-size:1.4rem;
						text-decoration: none;
						padding:10px 10px 10px 31px;
						background:#fff  url(/common/img/arrow_red2_r.svg) 14px 49% no-repeat;
						background-size: 7px auto;
					}
}

/* END side_navi*/



/* Footer
----------------------------------------------------------- */
/* page_top */
#page_top{
	position:fixed;
	bottom:31px;
	right:20px;
	width:56px;
	height: 56px;
	z-index: 100;
	/**/
	display: none;
}
	#page_top a{
		display: block;
		width:56px;
		height: 56px;
		background:#cc3d3d url( /common/img/page_top.svg) 50% 50% no-repeat;
		background-size: 19px auto;
	}
		#page_top a:hover{
			background:#fa5050 url( /common/img/page_top.svg) 50% 50% no-repeat;
			background-size: 19px auto;
			
		}

@media screen and (max-width: 768px) {
	
	#page_top{
		position:fixed;
		bottom:58px;
		right:12px;
		width:43px;
		height: 43px;
	}
		#page_top a{
			display: block;
			width:43px;
			height: 43px;
			background:#cc3d3d url( /common/img/page_top.svg) 50% 50% no-repeat;
			background-size: 10px auto;
		}
			#page_top a:hover{
				background:#cc3d3d url( /common/img/page_top.svg) 50% 50% no-repeat;
				background-size: 10px auto;
			}
	
	#index #page_top {
		bottom: 82px;
	}
}
/* END page_top */


footer{
}
.footer_inner{
	width: 1120px;
	margin:0 auto;
	position: relative;
}

#footer_search{
	min-width: 1120px;
	background: #e0e0e0;
	padding:24px 0px;
}
#footer_search form{
	width:608px;
	margin: 0 auto;
}
#footer_search_btn{
	width:40px;
	height: 40px;
	-webkit-appearance: none;
	appearance: none;
	background: #c62828 url(/common/img/icon_search.svg) 50% 50% no-repeat;
	background-size: 20px 20px;
	border:none;
	float: right;
}
#footer_search_btn:hover{
	background: #ff5252 url(/common/img/icon_search.svg) 50% 50% no-repeat;
	background-size: 20px 20px;
}

#footer_search_txt{
	padding-right: 40px;
}
#footer_search_input{
	background: #fff;
	border:none;
	outline: 0;

	-webkit-appearance: none;
	appearance: none;
	height: 40px;
	width:100%;
	padding: 4px 10px;
}

/* footer_area1 */
#footer_area1{
	background: #f5f5f5;
	min-width: 1120px;
	padding: 40px 0px 30px;
}
	#footer_area1 .footer_navi{
		width:256px;
		float: left;
		margin-right: 30px;
		text-align: left;
	}
	#footer_area1 .footer_navi:last-child{
		margin-right: 0px;
	}
		#footer_area1 .footer_navi p{
			font-size:1.6rem;
			font-weight: bold;
			margin-bottom: 20px;
		}
		#footer_area1 .footer_navi p a{
			color:#212121;
		}
		#footer_area1 .footer_navi ul{
			margin-bottom: 20px;
		}
			#footer_area1 .footer_navi ul li{
				margin-bottom: 8px;
			}
				#footer_area1 .footer_navi ul li:last-child{
					margin-bottom: 0px;
				}
				#footer_area1 .footer_navi ul li a{
					position: relative;
					display: inline-block;
					color:#212121;
					padding-left: 13px;
				}
				#footer_area1 .footer_navi ul li a::after{
					display: block;
					content: " ";
					width:8px;
					height: 6px;
					position: absolute;
					top:6px;
					left: 0px;

					background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
					background-size: 8px 6px;

					-webkit-transform:rotate(-90deg);
					transform:rotate(-90deg);
				}
/* END footer_area1 */


/* footer_area2 */
#footer_area2{
	padding:40px 0px 50px;
	text-align: left;
}
	#footer_area2 dl{
		overflow: hidden;
		padding-top: 10px;
	}
		#footer_area2 dl dt{
			width:160px;
			height: 22px;
			padding-top: 10px;
			float: left;
		}
		#footer_area2 dl dt img{
			width:160px;
			height: 22px;
		}
		#footer_area2 dl dd{
			padding-left: 193px;
		}

	#footer_area2_contact{
		position: absolute;
		top: 12px;
		left: 575px;
		width:256px;
	}
		#footer_area2_contact p:nth-child(1){
			width:160px;
		}
			#footer_area2_contact p:nth-child(1) a{
				padding:10px 0px 0px;
				height: 40px;
				
				color:#212121;
				display: block;
				text-align: center;
				font-weight: bold;
				border:1px solid #bdbdbd;
			}
	#footer_area2_contact #jihee_logo{
		width:60px;
		position: absolute;
		top: 0px;
		right: 3px;
	}


#footer_area2_sns{
	position: absolute;
	top:0;
	right:0;
}
	#footer_area2_sns ul:nth-child(1){
		float: right;
	}
	#footer_area2_sns ul:nth-child(2){
		clear: both;
	}
	#footer_area2_sns li{
		float: left;
		margin-left: 8px;
		margin-bottom: 12px;
	}
/* END footer_area2 */


/* footer_area3 */
#footer_area3{
	min-width: 1120px;
	padding: 5px 0px;
	margin: 0 auto;
	background: #424242;
	min-height: 31px;
}
	#footer_area3 ul{
		overflow: hidden;
	}
		#footer_area3 ul li{
			float: left;
			margin-right: 23px;
		}
		#footer_area3 ul li a{
			display: block;
			color: #fff;
			font-size: 1.4rem;
			padding: 0px 0px 0px 14px;
			background: url(/common/img/arrow_red2_r.svg) 0px 49% no-repeat;
			background-size: 7px auto;
		}

	#copyright{
		color: #fff;
		position: absolute;
		top: 3px;
		right: 0;
		line-height: 1;
	}
		#copyright small{
			font-size: 1.3rem;
		}
/* END footer_area3 */


@media screen and (max-width: 768px) {
	.footer_inner{
		width: auto;
		padding: 0 24px;
	}
	
	#footer_search{
		min-width:inherit;
		background: #e0e0e0;
		padding:20px 24px;
	}
	#footer_search form{
		width:auto;
		margin: 0 auto;
	}
	#footer_search_input{
		font-size:16px;
		border-radius: 0;
	}
	#footer_search_btn{
		border-radius: 0;
	}
	
	#footer_area1{
		display: none;
	}
	#footer_area2{
		padding:25px 0px 20px;
	}
		#footer_area2 dl dt{
			padding-top:0px;
			float:none;
			margin-bottom: 20px;
		}
		#footer_area2 dl dd{
			padding-left: 0px;
			font-size:14px;
		}
	    
	#footer_area2_contact{
		position:relative;
		top:inherit;
		left: inherit;
		width:auto;
	}
		#footer_area2_contact p:nth-child(1){
			display: none;
		}
		#footer_area2_contact #jihee_logo{
			width:61px;
			position:relative;
			top:inherit;
			left: inherit;
			right:  inherit;
			padding-top:18px;
		}
	
	#footer_area2_sns{
		display: none;
	}
	#footer_area3{
		min-width:inherit;
		padding: 10px 10px 10px 24px;
	}
		#footer_area3 .footer_inner{
			padding: 0px;
		}
	
	#footer_area3 ul{
		margin-bottom: 5px;
	}
		#footer_area3 ul li {
			margin-right: 14px;
		}
			#footer_area3 ul li a{
				font-size:13px;
				padding: 0px 0px 0px 10px;
			}
	
	#copyright{
		position: relative;
		top:inherit;
		text-align: left;
	}
		#copyright small{
			font-size: 11px;
		}
	
	
}




/*----------------------------------------------------------------------------------------------------- */
/* Style */
/*----------------------------------------------------------------------------------------------------- */


/* KV
---------------------------------------------*/	
.page_ph_wrap{
}
	.page_ph_wrap img{
		width:100%;
		height: auto;
	}


/* LINK
---------------------------------------------*/
/* btn */

a.arrow_link{
	color:#212121;
	padding-left: 14px;
	background: url(/common/img/arrow_red.svg) 0 46% no-repeat;
	background-size: 6px 10px;
}

a.arrow_link02{
	position: relative;
	display:inline-block;
	min-width: 156px;
	text-align: center;
	color:#212121;
	padding: 10px 25px;
	border: 1px solid #bdbdbd;
	border-radius: 30px;
	font-size:1.3rem;
	line-height: 1;
	text-decoration: none;
}
	a.arrow_link02::after{
		content: " ";
		display: block;
		position: absolute;
		top:50%;
		left: 16px;
		width:6px;
		height: 10px;
		margin-top: -6px;
		z-index: 100;
		background: url(/common/img/arrow_red.svg) 0 46% no-repeat;
		background-size: 6px 10px;
		-webkit-transform: rotate(-180deg);
				transform: rotate(-180deg);
	}
	a.arrow_link02:hover{
		border: 1px solid #c62828;
		color: #fff;
		background-color: #c62828;
	}
	a.arrow_link02:hover::after{
		background: url(/common/img/arrow_white2.svg) 0 46% no-repeat;
		background-size: 6px 10px;
	}

main article a[target="_blank"],
main article a[href$=".pdf"],
main article a[href$=".xls"],
main article a[href$=".xlsx"],
main article a[href$=".csv"],
main article a[href$=".doc"],
main article a[href$=".docx"]{
	display: inline;
	padding: 2px 0px;
	padding-right: 22px;
	background: url(/common/img/icon_link.svg) 100% 4px no-repeat;
	background-size: 16px 16px;
}
main article a[href$=".pdf"]{
	background: url(/common/img/icon_pdf.svg) 100% 0 no-repeat;
	background-size: 16px 20px;
}
main article a[href$=".xls"],
main article a[href$=".xlsx"],
main article a[href$=".csv"]{
	background: url(/common/img/icon_excel.svg) 100% 0 no-repeat;
	background-size: 16px 20px;
}
main article a[href$=".doc"],
main article a[href$=".docx"]{
	background: url(/common/img/icon_word.svg) 100% 0 no-repeat;
	background-size: 16px 20px;
}

main article a.no_icon{
	padding: 0px;
	background: none;
}

a.btn,
main article a.btn{
	min-width: 170px;
	line-height: 1.4;
	display: inline-block;
	border:2px solid #ef9a9a;
	border-radius: 0px;
	padding:11px 50px 9px 32px;
	position: relative;
	font-size: 1.4rem;
	font-weight: bold;
	color:#212121;
	text-align: left;
	text-decoration: none !important;
	background: none;
}
	a.btn::before{
		display: block;
		width:24px;
		height: calc(100% + 4px);
		content: " ";
		position: absolute;
		top:-2px;
		right:-2px;
		overflow: hidden;
		border-radius: 0 4px 4px 0;
		background: #c62828;
		z-index: 2;
	}
	a.btn::after{
		display: block;
		width:9px;
		height: 14px;
		content: " ";
		position: absolute;
		top:50%;
		right:5px;
		margin-top: -7px;
		background:url(/common/img/arrow_white.svg) 0 0 no-repeat;
		background-size: 9px 14px;
		z-index: 3;
	}

.btn_type01_wrap{
	text-align: left;
}
main article a.btn_type01{
	font-size:1.3rem;
	line-height: 1;
	display: inline-block;
	color:#212121;
	text-decoration: none;
	background:#fff url(/common/img/arrow_red.svg) calc(100% - 10px) 50% no-repeat;
	background-size: 6px 10px;
	padding:9px 25px 9px 15px;
	border-radius: 30px;
	border:1px solid #bdbdbd;
}
	main article a.btn_type01:hover{
		color:#fff;
		background:#c62828 url(/common/img/arrow_white2.svg) calc(100% - 10px) 50% no-repeat;
		background-size: 6px 10px;
		border:1px solid #c62828;
	}

@media screen and (min-width: 769px){
	a.btn:hover{
		color:#c62828;
	}
		a.btn:hover::before{
			background: #ff5252;
		}
	
}
/* END btn */

@media screen and (max-width: 768px) {
	
	.enclose_box a.btn{
		display: block;
		min-width:inherit;
	}
	main article a[target="_blank"],
	main article a[href$=".pdf"],
	main article a[href$=".xls"],
	main article a[href$=".xlsx"],
	main article a[href$=".csv"],
	main article a[href$=".doc"],
	main article a[href$=".docx"]{
		padding-top: 1px;
		padding-bottom: 1px;
	}
	main article a[target="_blank"]{
		background: url(/common/img/icon_link.svg) 100% 50% no-repeat;
		background-size: 14px auto;
	}
	main article a[href$=".pdf"]{
		background: url(/common/img/icon_pdf.svg) 100% 50% no-repeat;
		background-size: 14px 16px;
	}
	main article a[href$=".doc"],
	main article a[href$=".docx"]{
		background: url(/common/img/icon_word.svg) 100% 50% no-repeat;
		background-size: 14px 16px;
	}
	main article a[href$=".xls"],
	main article a[href$=".xlsx"],
	main article a[href$=".csv"]{
		background: url(/common/img/icon_excel.svg) 100% 50% no-repeat;
		background-size: 14px 16px;
	}
	
	a.btn,
	main article a.btn{
		min-width: 260px;
		padding:13px 36px 13px 18px;
		font-size: 16px;
		text-align: center;
		background: none;
	}
		a.btn::after{
			width:7px;
			height: 12px;
			margin-top: -6px;
			background:url(/common/img/arrow_white2.svg) 0 0 no-repeat;
			background-size: 7px 12px;
		}
	.btn_type01_wrap{
		text-align: center;
	}
	/**/
}


/* H 
---------------------------------------------*/

/* page_ttl */
.page_ttl_wrap{
	background: #f5f5f5;
	border-top: 1px solid #e0e0e0;
	min-width: 1120px;
	margin-bottom: 40px;
}
	.page_ttl_wrap .page_ttl{
		font-size: 3.0rem;
		font-weight: bold;
		line-height: 1.5;
		padding: 35px 288px 35px 0px;
		width:1120px;
		margin: 0 auto;
		text-align: left;
	}
		body.no_side .page_ttl_wrap .page_ttl{
			padding: 35px 0px 35px 0px;
		}
		.page_ttl_wrap .page_ttl span{
			color:#616161;
			font-size: 1.8rem;
			font-weight: normal;
			line-height: 1.5;
			padding-left: 22px;
		}

	.page_ttl_wrap.news_ttl{
		margin-bottom: 25px;
	}
	body.no_side .page_ttl_wrap.news_ttl .page_ttl{
		padding: 20px 0px 20px 0px;
		font-size: 2.2rem;
		width:832px;
	}

@media screen and (max-width: 768px) {
	.page_ttl_wrap{
		display: none;
		border-top:none;
		min-width:inherit;
		margin-bottom: 0px;
	}
		body.no_side .page_ttl_wrap{
			display: block;
		}
		.page_ttl_wrap .page_ttl,
		body.no_side .page_ttl_wrap .page_ttl{
			display: block;
			background: #fafafa;
			border-top: 1px solid #e0e0e0;
			border-bottom: 1px solid #e0e0e0;
			text-align: left;
			font-size: 24px;
			font-weight: bold;
			padding: 26px 20px 26px 24px;
			min-height: 90px;
			width: auto;
			line-height: 1.3;
		}
			.page_ttl_wrap .page_ttl span{
				color:#616161;
				font-size: 14px;
				font-weight: normal;
				line-height: 1.5;
				padding-left: 15px;
				display: inline-block;
			}
		body.no_side .page_ttl_wrap.news_ttl{
			margin-bottom: 0px;
		}
		body.no_side .page_ttl_wrap.news_ttl .page_ttl{
			padding: 20px 20px 20px 24px;
			font-size: 20px;
			width:auto;
		}
}
/* END page_ttl */


/* page_ph_ttl */
.page_ph_wrap{
	position: relative;
	z-index: 1;
	min-height: 160px;
	min-width: 1120px;
	margin-bottom: 60px;
	text-align: left;
	overflow: hidden;
}
	.page_ph_wrap img{
		width:100%;
		height:auto;
	}
	.page_ph_ttl{
		width:1120px;
		margin: 0 auto;
		font-size: 3.0rem;
		font-weight: bold;
		line-height: 1;
		padding: 50px 0px 50px 0px;
	}
	.page_ph_ttl span{
		position:relative;
		z-index: 10;
		padding: 16px 50px 16px 0px;
		display: inline-block;
		/*
		background-color: rgba(255,255,255,0.90);
		*/
	}
	.page_ph_ttl span::before{
		display: block;
		content: " ";
		position: absolute;
		top:0;
		right:0;
		z-index: -1;
		padding: 0px;
		height: 100%;
		width: 2000px;
		background-color: rgba(255,255,255,0.90);
	}
@media screen and (max-width: 768px) {
	.page_ph_wrap{
		min-height:inherit;
		min-width:inherit;
		margin-bottom: 0px;
		text-align: left;
	}
		.page_ph_ttl{
			width:auto;
			margin: 0 auto;
			font-size: 24px;
			padding: 20px 0px 20px 0px;
		}
		.page_ph_ttl span{
			padding: 10px;
			margin: 0 24px;
		}
		.page_ph_ttl span::before{
			/*
			display: none;
			*/
		}
}
/* END page_ph_ttl */


/* page_ttl02 */
.page_ttl02{
	position: relative;
	z-index: 10;
	background-color: rgba(198,40,40,0.95);
	color:#fff;
	width:100%;
	max-width: 832px;
	display: table;
	margin:-56px auto 50px auto; 
}
	.page_ttl02 strong{
		display: table-cell;
		padding:25px 50px;
		font-size:4.8rem;
		vertical-align: middle;
		line-height: 1;
		min-width: 3em;
		white-space:nowrap;
	}
	.page_ttl02 span{
		display: table-cell;
		padding:27px 30px 27px 0;
		font-size:2.0rem;
		vertical-align: middle;
		line-height: 1.4;
	}
@media screen and (max-width: 768px) {
	.page_ttl02{
		margin:-27px 24px 10px 24px;
		width:auto;
		padding:20px 20px 15px;
		text-align: center;
		display: block;
	}
		.page_ttl02 strong{
			display: block;
			padding:10px 10px;
			font-size:24px;
			white-space: nowrap;
		}
		.page_ttl02 span{
			display: block;
			padding:10px;
			font-size:16px;
			font-weight: normal;
			text-align: left;
		}
}
/* END page_ttl02 */


/* ttl_type */
.ttl_type01{
	font-size:2.2rem;
	font-weight: bold;
	line-height: 1.45;
	margin-bottom: 20px;
}
.ttl_type02{
	position: relative;
	font-size:2.4rem;
	font-weight: bold;
	line-height: 1.45;
	background: url(/common/img/ttl_type02_bg.png) 0 100% no-repeat;
	padding-bottom: 12px;
	margin-bottom: 27px;
	margin-top: 2em;
}
	.ttl_type02.icon_key{
		padding-left: 34px;
	}
		.ttl_type02.icon_key::after {
			display: block;
			width: 24px;
			height: 21px;
			content: " ";
			position: absolute;
			top: 7px;
			left: 0px;
			background: url(/common/img/icon_key2.svg) 0 0 no-repeat;
			background-size: 24px 21px;
		}
		
	.ttl_type02.icon_key a{
		color:#212121;
		position: relative;
		padding-right: 23px;
	}
		.ttl_type02.icon_key a::after {
			display: block;
			width: 14px;
			height: 8px;
			content: " ";
			position: absolute;
			top: 50%;
			right: 0px;
			margin-top: -4px;
			background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
			background-size: 14px 8px;
			z-index: 3;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
		}

	.ttl_type02 a.btn_type01{
		margin: 0px 0px 0px 20px;
		position: relative;
		top:-5px;
		font-weight: normal;
	}
.ttl_type03{
	font-size:2.2rem;
	font-weight: bold;
	line-height: 1.45;
	background: url(/common/img/ttl_type03_bg.png) 0 100% no-repeat;
	padding-bottom: 12px;
	margin-bottom: 27px;
	margin-top: 2em;
}
h3.ttl_type03 {
	font-size:2rem;
	background:none;
	border-left:8px solid #c62828;
	padding: 0 0 0 15px;
}
.ttl_type04{
	font-size:1.8rem;
	font-weight: bold;
	line-height: 1.45;
	background: url(/common/img/ttl_type04_bg.png) 0 100% no-repeat;
	padding-bottom: 12px;
	margin-bottom: 27px;
}


.ttl_type_s01{
	font-size: 1.8rem;
	font-weight: bold;
	color: #9e9e9e;
	margin-bottom: 25px;
	line-height: 1.2;
	background: none !important;
	padding: 0 !important;
}
.ttl_type_s02{
	font-size: 1.8rem;
	font-weight: bold;
	color: #212121;
	margin-bottom: 15px;
	line-height: 1.2;
	background: none !important;
	padding: 0 !important;
}

@media screen and (max-width: 768px) {
	
	.ttl_type02{
		font-size:23px;
	}
	.ttl_type_s01{
		font-size: 16px;
		margin-bottom: 10px;
	}
	.ttl_type_s02{
		font-size: 16px;
		margin-bottom: 20px;
	}
	
	.ttl_type02 a.btn_type01{
		margin: 0px 0px 0px 5px;
		padding: 9px 23px 9px 13px;
		position: relative;
		top:-5px;
		font-size: 11px;
	}
	
}
/* END ttl_type */


/* List 
---------------------------------------------*/
li{
	list-style: none;
}

.list_type01{
	margin-bottom: 20px;
	list-style: none;
}
	.list_type01 li {
		padding-left: 1.2em;
		text-indent: -1.2em;
		margin-bottom: 10px;
	}
	.list_type01 li span{
		padding-right: 0.2em;
	}


/* anchorlink_box */
.anchorlink_box{
	border: 1px solid #bdbdbd;
	border-radius: 0px;
	margin-bottom: 30px;
}
	.anchorlink_box ul{
		overflow: hidden;
		padding:15px 0px 10px;
	}
		.anchorlink_box ul li{
			float: left;
			padding: 0 24px 0 20px;
			margin-bottom: 5px;
			border-right:1px dotted #c5c5c5;
			line-height: 1;
		}
			.anchorlink_box ul li:last-child{
				border-right:none;
			}
				.anchorlink_box ul li a{
					display: block;
					color:#212121;
					padding:2px 0px 2px 20px;
					background: url(/common/img/arrow_red_btm.svg) 0 50% no-repeat;
					background-size: 10px 6px;
				}
				

@media screen and (min-width: 769px){
	.anchorlink_box ul li a:hover{
		color:#c62828;
		text-decoration: none;
	}
}

@media screen and (max-width: 768px) {
	
	.anchorlink_box{
		margin-right: 0px;
		border:none;
		border-top:1px solid #bdbdbd;
		border-bottom:1px solid #bdbdbd;
		border-radius: 0px;
		overflow: hidden;
		overflow-x: auto;
		/*
		-webkit-overflow-scrolling: touch;
		*/
	}
	.anchorlink_box ul{
		display: table;
		padding:15px 0px;
		white-space:nowrap;
	}
		.anchorlink_box ul li{
			float: none;
			display: table-cell;
			padding: 0 19px 0 19px;
			margin-bottom: 0px;
			white-space:nowrap;
			font-size: 14px;
		}
		.anchorlink_box ul li:first-child{
			padding: 0 19px 0 0px;
		}
			.anchorlink_box ul li a{
				padding:2px 0px 2px 15px;
			}
	
}
/* END anchorlink_box */



/* dl 
---------------------------------------------*/

/* page_description */
dl.page_description{
	margin-bottom: 40px;
}
	dl.page_description dt{
		margin-bottom: 10px;
		color:#9e9e9e;
		font-size:2.2rem;
		font-weight: bold;
	}
	dl.page_description dd{

	}
@media screen and (max-width: 768px) {
	
	dl.page_description{
		margin-bottom: 60px;
	}
	dl.page_description dt{
		margin-bottom: 20px;
	}
	
}
/* END page_description */


/* news_head */
.news_head {
    overflow: hidden;
	margin-bottom: 15px;
}
	.news_head dt {
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 1;
		float: left;
	}
		.news_head dt strong {
			font-size: 2.0rem;
			font-weight: normal;
			padding-right: 5px;
		}
.news_head dd {
    padding: 0px 0px 0px 120px;
	line-height: 1;
}
	.news_head dd .news_icon {
		display: inline-block;
		color: #757575;
		font-weight: bold;
		font-size: 1.2rem;
		padding: 5px 8px;
		text-align: center;
		background: #f5f5f5;
		margin:0 8px 5px 0;
	}
/* END news_head */


/* Table 
---------------------------------------------*/

.tbl_wrap{
	margin-bottom: 30px;
}

/* article_post table */
.article_post table{
	/*
	table-layout: fixed;
	*/
	border-collapse: collapse;
	margin-bottom: 0px;
	width: 100%;
}
	.article_post table th,
	.article_post table td{
		font-weight: normal;
		/*text-align: left;*/
		background: #fff;
		border-bottom: 1px solid #bdbdbd;
		padding: 10px 15px;
		vertical-align: middle;
		line-height:1.7
	}
	.article_post table th{
		background: #f5f5f5;
		text-align: center;
		font-weight: normal;
	}
		.article_post table thead th{
			background: #b71c1c;
			color:#fff;
			width:auto;
		}

@media screen and (max-width: 768px) {
	
	.tbl_wrap{
		margin-right: 0px;
		overflow: hidden;
		overflow-x: auto;
		/*
		-webkit-overflow-scrolling: touch;
		*/
	}
		.article_post table{
			width: auto;
			min-width: 100%;
			white-space: nowrap;
		}
			.article_post table th,
			.article_post table td{
				font-size:12px;
				padding: 10px 15px;
			}
			.article_post table tbody th{
				width: 120px;
			}
	
	/*---*/
}



/* scroll style
---------------------------------------------*/
/* scrollbar */
.tbl_wrap::-webkit-scrollbar,
.anchorlink_box::-webkit-scrollbar{
	width:5px;
	height: 6px;
}
.tbl_wrap::-webkit-scrollbar-track,
.anchorlink_box::-webkit-scrollbar-track{
	background:#f5f5f5;
}
.tbl_wrap::-webkit-scrollbar-track:horizontal,
.anchorlink_box::-webkit-scrollbar-track:horizontal{
	background-repeat:repeat-x;
}
.tbl_wrap::-webkit-scrollbar-thumb,
.anchorlink_box::-webkit-scrollbar-thumb{
	background-color:#bdbdbd;
	-webkit-background-clip:content-box;
	background-clip:content-box;
	border:0px solid transparent;
}
.tbl_wrap::-webkit-scrollbar-button,
.anchorlink_box::-webkit-scrollbar-button{
	background-color:#bdbdbd;
}
.tbl_wrap::-webkit-scrollbar-corner,
.anchorlink_box::-webkit-scrollbar-corner{
	background-color:#fff;
}
.tbl_wrap::-webkit-scrollbar-button:start:decrement,
.anchorlink_box::-webkit-scrollbar-button:start:decrement{
	display:block;
	width:0px;
	height:0px;
	background:no-repeat;
}
.tbl_wrap::-webkit-scrollbar-button:end:increment,
.anchorlink_box::-webkit-scrollbar-button:end:increment{
	display:block;
	width:0px;
	height:0px;
	background:no-repeat;
}

/*--------------------------*/



/* pattern 
---------------------------------------------*/
.article_txt{
	margin-bottom: 45px;
}

/* ph_description01 */
.ph_description01{
	overflow: hidden;
	margin-bottom: 25px;
}
	.ph_description01 figure{
		float: right;
		margin-left: 32px;
		padding-bottom: 40px;
		/*
		width:256px;
		*/
	}
	.ph_description01 figcaption{
		display: block;
		font-size:1.4rem;
		line-height: 1.5;
		padding-top: 15px;
	}
	.ph_description01 p:last-child{
		margin-bottom: 0px;
	}

@media screen and (max-width: 768px) {
	
	.ph_description01{
		margin-bottom: 15px;
	}
		.ph_description01 figure{
			float: none;
			margin-left: 0px;
			padding-bottom: 40px;
			width:auto;
			text-align: center;
		}
			.ph_description01 figure img{
				width:100%;
			}
		.ph_description01 p:last-child{
			margin-bottom: 0;
		}
	
}
/* END ph_description01 */


/* ph_description02 */
.ph_description02{
	overflow: hidden;
	margin-bottom: 25px;
}
	.ph_description02 figure{
		float: left;
		margin-right: 32px;
		padding-bottom: 40px;
		/*
		width:256px;
		*/
	}
	.ph_description02 figcaption{
		display: block;
		font-size:1.4rem;
		line-height: 1.5;
		padding-top: 15px;
	}
	.ph_description02 p.ph_description02_btn{
		text-align: right;
	}
	.ph_description02 p:last-child{
		margin-bottom: 0px;
	}
	

@media screen and (max-width: 768px) {
	.ph_description02{
		margin-bottom: 15px;
	}
		.ph_description02 figure{
			float: none;
			margin-right: 0px;
			padding-bottom: 30px;
			width:auto;
			text-align: center;
		}
			.ph_description02 figcaption{
				font-size:12px;
				line-height: 1.5;
				padding-top: 15px;
				text-align: left;
			}
			.ph_description02 figure img{
				width:100%;
			}
		.ph_description02 p.ph_description02_btn{
			text-align:center;
		}
		.ph_description02 p:last-child{
			margin-bottom: 0;
		}
}
/* END ph_description02 */


/* image_center */
.image_center{
	text-align: center;
	margin-bottom: 30px;
}
/* END image_center */


/* enclose_box */
.enclose_box{
	margin-bottom: 60px;
	border:4px solid #ef9a9a;
	position: relative;
	padding: 30px;
}
	.enclose_box::after{
		content: " ";
		display: block;
		width:128px;
		height: 4px;
		background: #c62828;
		position: absolute;
		top:-4px;
		left: -4px;
		z-index: 2;
	}
	.enclose_box p:last-child,
	.enclose_box div:last-child{
		margin-bottom: 0px !important;
	}

	.enclose_box h3.ttl_type03,
	.enclose_box h2.ttl_type02 {
		margin-top:0;
	}

@media screen and (max-width: 768px) {
	
	.enclose_box{
		margin-bottom: 40px;
		padding:25px 30px;
	}
		.enclose_box::after{
			width:155px;
		}
	
}
/* END enclose_box */




/* ph_2column */
.ph_2column{
	overflow: hidden;
	margin-bottom: 40px;
}
	.ph_2column .ph_2column_item{
		width:48%;
		margin-right: 4%;
		float: left;
		font-size:1.4rem;
	}
	.ph_2column .ph_2column_item:nth-of-type(2n){
		margin-right: 0px;
	}
		.ph_2column .ph_2column_item a{
			color: #212121;
			padding: 0px !important;
			background: none !important;
		}
		.ph_2column .ph_2column_item img{
			width:100%;
			height: auto;
		}
		.ph_2column .ph_2column_item figcaption{
			display: block;
			padding-top: 10px;
		}
		.ph_2column .ph_2column_item dt{
			font-size: 1.8rem;
			font-weight: bold;
			line-height: 1.5;
			padding-top: 20px;
			margin-bottom: 15px;
		}
		.ph_2column .ph_2column_item dd p{
			margin: 0;
		}

@media screen and (max-width: 768px) {
	
	.ph_2column{
		margin-bottom: 0px;
	}
		.ph_2column .ph_2column_item{
			width:auto;
			float: none !important;
			font-size:14px;
			margin-right: 0;
			margin-bottom: 40px;
		}
			.ph_2column .ph_2column_item img{
				width:100%;
				height: auto;
			}
			.ph_2column .ph_2column_item figcaption{
				font-size:12px;
				padding-top: 15px;
			}
			.ph_2column .ph_2column_item dt{
				font-size: 18px;
			}
			.ph_2column .ph_2column_item dd p{
			}
	
}
/* END ph_2column */

/* ph_3column */
.ph_3column{
	overflow: hidden;
	margin-bottom: 40px;
}
	.ph_3column .ph_3column_item{
		width:31%;
		float: left;
		margin-right: 3.4999%;
		font-size:1.4rem;
		background: #fff;
	}
	.ph_3column .ph_3column_item:nth-of-type(3n){
		margin-right: 0px;
	}
		.ph_3column .ph_3column_item a{
			color: #212121;
			padding: 0px !important;
			background: none !important;
		}
		.ph_3column .ph_3column_item img{
			width:100%;
			height: auto;
		}
		.ph_3column .ph_3column_item figcaption{
			display: block;
			padding-top: 10px;
		}
		.ph_3column .ph_3column_item dt{
			font-size: 1.8rem;
			font-weight: bold;
			line-height: 1.5;
			padding-top: 20px;
			margin-bottom: 15px;
		}
		.ph_2column .ph_3column_item dd p{
			line-height: 1.6;
			margin: 0;
		}

@media screen and (max-width: 768px) {
	
	.ph_3column{
		margin-bottom: 30px;
	}
	.ph_3column + .ph_3column{
		margin-top: -30px;
	}
		.ph_3column .ph_3column_item{
			width:auto;
			float: none !important;
			font-size:14px;
			margin-right: 0px;
			margin-bottom: 40px;
		}
			.ph_3column .ph_3column_item img{
				width:100%;
				height: auto;
			}
			.ph_3column .ph_3column_item figcaption{
				font-size:12px;
				padding-top: 15px;
			}
			.ph_3column .ph_3column_item dt{
				font-size: 18px;
			}
			.ph_3column .ph_3column_item dd p{
			}
	
}
/* END ph_3column */


/* data_dl_list */
.data_dl_list{
	margin-bottom: 60px;
	padding-left: 32px;
}
	.data_dl_list li{
		font-size:1.8rem;
		position: relative;
		margin-bottom: 5px;
	}
		.data_dl_list li::before{
			position:absolute;
			top:0.7em;
			left: -18px;
			content: " ";
			width:6px;
			height: 6px;
			border-radius: 6px;
			background: #c62828;

		}
		.data_dl_list li a{
			color:#212121;
		}
		.data_dl_list li a[href$=".pdf"]{
			background: url(/common/img/icon_pdf.svg) 100% 50% no-repeat;
			background-size: 16px 22px;
		}

@media screen and (max-width: 768px) {
	
	.data_dl_list li{
		font-size:16px;
	}
		.data_dl_list li a[href$=".pdf"]{
			background: url(/common/img/icon_pdf.svg) 100% 50% no-repeat;
			background-size: 14px 17px;
		}
	
}
/* END data_dl_list */


/* qa_set */
dl.qa_set{
}
	dl.qa_set dt{
		font-size: 1.8rem;
		font-weight: bold;
		padding: 10px 10px 10px 58px;
		margin-bottom: 20px;
		line-height: 1.5;
		background: #f5f5f5;
		position: relative;
		border-radius: 4px;
		overflow: hidden;
	}
		dl.qa_set dt::after{
			display: block;
			width:40px;
			height: 100%;
			content: " ";
			position: absolute;
			top:0px;
			left:0px;
			background: #c62828 url(/common/img/icon_q.svg) 50% 50% no-repeat;
			background-size: 19px 25px;
			z-index: 2;
		}
	dl.qa_set dd{
		margin-bottom: 40px;
		font-size: 1.4rem;
		padding-left: 58px;
		padding-top: 5px;
		position: relative;
	}
		dl.qa_set dd::after{
			display: block;
			width:36px;
			height: 36px;
			content: " ";
			position: absolute;
			top:0px;
			left:2px;
			background: url(/common/img/icon_a.svg) 0 0 no-repeat;
			background-size: 36px 36px;
			z-index: 2;
		}

@media screen and (max-width: 768px) {
	
	dl.qa_set dt{
		font-size: 16px;
	}
	
}
/* END qa_set */



/* wide_use_txtbtn */
p.wide_use_txtbtn{
	text-align: center;
	margin-bottom: 30px;
}
ul.wide_use_txtbtn{
	text-align: center;
	margin-bottom: 30px;
	overflow: hidden;
}
	ul.wide_use_txtbtn li{
		text-align: center;
		margin-bottom: 30px;
		width:48%;
		float: left;
		margin-right:4%; 
	}
	ul.wide_use_txtbtn li:nth-child(2n){
		margin-right:0px; 
	}

@media screen and (max-width: 768px) {
	p.wide_use_txtbtn{
		text-align: center;
		margin-bottom: 20px;
	}
	ul.wide_use_txtbtn li{
		width:auto;
		float: none;
		margin-right:0px;
		margin-bottom: 20px;
	}
	
}

/* END wide_use_txtbtn */


/* navi_link_set */
.navi_link_set{
	text-align: center;
	margin-bottom: 5px;
	overflow: hidden;
}
	.navi_link_set li{
		text-align: left;
		margin-bottom: 20px;
		width:48%;
		float: left;
		margin-right:4%; 
	}
	.navi_link_set li:nth-child(2n){
		margin-right:0px; 
	}
		.navi_link_set li p{
			font-size: 1.4rem;
			padding-top: 10px;
			margin: 0;
		}
		.navi_link_set li p span.icon_key{
			display: block;
			background: url(/common/img/icon_key.svg)0 50% no-repeat;
			background-size: 16px 15px;
			padding-left: 20px;
		}
		.navi_link_set li a{
			overflow: hidden;
			line-height: 1.5;
			display: block !important;
			border:1px solid #bdbdbd;
			border-radius: 0px;
			padding:18px 45px 16px 16px !important;
			background: #fff !important;
			position: relative;
			color:#212121;
			text-align: left;
			text-decoration: none !important;
		}
			.navi_link_set li a::before{
				display: block;
				width:40px;
				height: 100%;
				content: " ";
				position: absolute;
				top:0px;
				right:0px;
				background: #f5f5f5;
				z-index: 2;
			}
			.navi_link_set li a::after{
				display: block;
				width:14px;
				height: 8px;
				content: " ";
				position: absolute;
				top:50%;
				right:14px;
				margin-top: -4px;
				background:url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
				background-size: 14px 8px;
				z-index: 3;
				-webkit-transform:rotate(-90deg);
						transform:rotate(-90deg);
			}

.navi_link_set.set_3column{
}
	.navi_link_set.set_3column li{
		text-align: left;
		width:31%;
		float: left;
		margin-right:3.4999%; 
	}
	.navi_link_set.set_3column li:nth-child(2n){
		margin-right:3.4999%;
	}
	.navi_link_set.set_3column li:nth-child(3n){
		margin-right:0px; 
	}

@media screen and (min-width: 769px){
	.navi_link_set li a:hover{
		border:1px solid #ef9a9a;
		color:#c62828;
	}
		.navi_link_set li a:hover::before{
			background: #c62828;
		}
		.navi_link_set li a:hover::after{
			background:url(/common/img/arrow_white_btm.svg) 0 0 no-repeat;
			background-size: 14px 8px;
		}
}

@media screen and (max-width: 768px) {

	.navi_link_set{
		text-align: left;
		margin-bottom: 0px;
	}
		.navi_link_set li{
			margin-bottom: 20px;
			width:auto !important;
			height: auto !important;
			float: none !important;
			margin-right:0px !important;
		}
			.navi_link_set li p{
				font-size:14px;
			}
	
}
/* END navi_link_set */



/* div / P
---------------------------------------------*/
main p {
	margin-bottom: 1em;
}

/* news_topics_box */
.news_topics_box{
	padding: 50px 0 40px;
}
@media screen and (max-width: 768px) {
	.news_topics_box{
		padding: 30px 0 30px;
	}
}
/* END news_topics_box */


/* google_schedule */
.google_schedule_wrap{
	overflow: hidden;
	margin-bottom: 40px;
}
	.google_schedule_l{
		width:256px;
		float: left;
	}
		.google_schedule_l iframe{
			margin: 0 auto 10px;
		}
		.google_schedule_l dl{
			text-align: left;
			line-height: 1.4;
			font-size:1.4rem;
			margin-bottom: 15px;
		}
			.google_schedule_l dl dt{
				margin-bottom: 5px;
				font-weight: bold;
			}
			.google_schedule_l dl dd{
				margin-bottom: 10px;
			}
	.google_schedule_r{
		padding-left: 286px;
	}
.google_sc_col01 {
	color:#59BFB3;
}
.google_sc_col02 {
	color:#536CA6;
}
.google_sc_col03 {
	color:#B5515D;
}

.google_sc_btn{
	text-align: right;
	font-size: 1.3rem;
	line-height: 1;
}
	.google_sc_btn a{
		display: inline-block;
		color:#212121;
		text-decoration: none;
		background:#fff url(/common/img/arrow_red.svg) calc(100% - 10px) 50% no-repeat;
		background-size: 6px 10px;
		padding:9px 25px 9px 15px;
		border-radius: 30px;
		border:1px solid #bdbdbd;
	}
		.google_sc_btn a:hover{
			color:#fff;
			background:#c62828 url(/common/img/arrow_white2.svg) calc(100% - 10px) 50% no-repeat;
			background-size: 6px 10px;
			border:1px solid #c62828;
		}


@media screen and (max-width: 768px) {
	.google_schedule_l{
		width:auto;
		float: none;
		margin-bottom: 30px;
		text-align: center;
	}
		.google_schedule_l iframe{
			margin: 0 auto 10px;
		}
		.google_schedule_l iframe.library_iframe{
			/*height: auto;
			min-height: 245px;*/
		}
		.google_schedule_l dl{
			width:256px;
			margin: 0 auto 15px;
		}
	.google_sc_btn{
		text-align: center;
	}
	.google_schedule_r{
		padding-left: 0;
	}
}
/* END google_schedule */


/* box_type01 */
.box_type01{
	margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
	.box_type01{
		margin-bottom: 20px;
	}
}
/* END box_type01 */




/* input
---------------------------------------------*/
input,
textarea,
keygen,
select,
button{
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea{
}


/* article_post
---------------------------------------------*/
.article_post{
	
}
	.article_post h2{
		font-size:2.4rem;
		font-weight: bold;
		line-height: 1.45;
		background: url(/common/img/ttl_type02_bg.png) 0 100% no-repeat;
		padding-bottom: 12px;
		margin:30px 0 27px 0;
	}
	.article_post h2.index_ttl{
		margin: 0 auto 40px;
		line-height: 1;
		font-size: 3.0rem;
		background: none;
		padding-bottom: 0px;
	}
	.article_post h2.ttl_type02.icon_key{
		margin-top:0px;
	}
	.article_post h3{
		font-weight: bold;
		line-height: 1.45;
		margin:30px 0 20px 0;
		font-size:2rem;
		background:none;
		border-left:8px solid #c62828;
		padding: 0 0 0 15px;
	}
	.article_post h4{
		font-size:1.8rem;
		font-weight: bold;
		line-height: 1.45;
		background: url(/common/img/ttl_type04_bg.png) 0 100% no-repeat;
		padding-bottom: 12px;
		margin:30px 0 20px 0;
	}


	.article_post ul{
		margin-bottom: 1em;
	}
		.article_post ul li{
			position: relative;
			margin:0 0 5px 32px;
		}
			.article_post ul > li::before{
				position:absolute;
				top:0.7em;
				left: -18px;
				content: " ";
				width:6px;
				height: 6px;
				border-radius: 6px;
				background: #283593;

			}
		.article_post .library_mypagelist li {
			margin:0px;
		}
			.article_post .library_mypagelist li::before{
				display: none;
			}
			.article_post ul > li > ul {
				margin-bottom: 0px;
			}
				.article_post ul > li > ul > li::before{
					background: #9e9e9e;
				}

	.article_post ul.list_2column{
		overflow: hidden;
	}
		.article_post ul.list_2column li{
			width: calc(48% - 32px);
			float: left;
			margin-right: 3.999%;
		}
		.article_post ul.list_2column li:nth-child(2n){
			margin-right: 0;
		}

	.article_post ul.list_3column{
		overflow: hidden;
	}
		.article_post ul.list_3column li{
			width: calc(31% - 32px);
			float: left;
			margin-right: 3.4999%;
		}
		.article_post ul.list_3column li:nth-child(3n){
			margin-right: 0;
		}



.article_post ul.navi_link_set {
    text-align: center;
    margin-bottom: 5px;
    overflow: hidden;
}
	.article_post ul.navi_link_set li {
		width: 48%;
		float: left;
		text-align: left;
		margin: 0 4% 20px 0px;
	}
	.article_post .library_box_r ul.navi_link_set li {
		width: auto;
		float: none;
		margin-right: 0;
	}
		.article_post ul.navi_link_set li:nth-child(2n) {
			margin-right: 0px;
		}
		.article_post ul.navi_link_set > li::before {
			display: none;
		}

.article_post ul.navi_link_set.set_3column {
}
	.article_post ul.navi_link_set.set_3column li {
		text-align: left;
		width:31%;
		float: left;
		margin-right:3.4999%; 
	}
		.article_post ul.navi_link_set.set_3column li:nth-child(2n) {
			margin-right:3.4999%;
		}
		.article_post ul.navi_link_set.set_3column li:nth-child(3n) {
			margin-right: 0px;
		}


.article_post ol{
	list-style: none;
	counter-reset: ol_li;
	margin-bottom: 1em;
}
	.article_post ol li{
		position: relative;
		margin:0 0 5px 32px;
	}
		.article_post ol li::before{
			font-weight: bold;
			color:#283593;
			margin-right: .5em;
			margin-left: -22px;
			counter-increment: ol_li;
			content: counter(ol_li) ".";
		}
			.article_post ol > li > ol {
				margin:0 0 0px 0px;
			}
				.article_post ol > li > ol > li::before{
					color:#212121;
				}

/* .article_post .article_other_banner */
.article_post .article_other_banner{
}
	.article_post .article_other_banner ul{
		margin: 0 auto 30px;
		overflow: hidden;
	}
		.article_post .article_other_banner ul li{
			width:31%;
			float: left;
			margin:0 3.4999% 0 0;
			list-style: none;
		}
			.article_post .article_other_banner ul li::before{
				display: none;
			}
		.article_post .article_other_banner ul li:last-child{
			margin-right: 0px;
		}
			.article_post .article_other_banner ul li a{
				padding:0;
				display: table;
				width:100%;
				border:1px solid #bdbdbd;
				color:#212121;
				text-decoration: none !important;
				background:#fff url(/common/img/arrow_red2_r.svg) calc(100% - 17px) 50% no-repeat;
				background-size: 7px 8px;
			}
				.article_post .article_other_banner ul li a:hover{
					border:1px solid #ff5252;
					color:#c62828;
				}

			.article_post .article_other_banner ul li a:hover img{
				opacity: 1;
			}
			.article_post .article_other_banner ul li a figure{
				display: table-cell;
				width:60px;
				padding:2px;
			}
			.article_post .article_other_banner ul li a p{
				display: table-cell;
				margin: 0;
				vertical-align: middle;
				padding:1px 24px 0 18px;
				font-size:1.4rem;
				line-height: 1.25;
				font-weight: bold;
			}


@media screen and (max-width: 768px) {
	
	.article_post ul{
		font-size:16px;
		margin-bottom: 30px;
	}
		.article_post ul > li > ul {
			font-size:14px;
		}
	
		.article_post ul.list_2column li,
		.article_post ul.list_3column li{
			width: auto;
			float: none;
			margin-right: 0;
			height: auto !important;
		}
	
	.article_post ol{
		font-size:16px;
		margin-bottom: 30px;
	}
		.article_post ol li::before{
			font-weight: normal;
		}
		.article_post ol > li > ol {
			font-size:14px;
		}
	
	
	.article_post .article_other_banner{
		padding: 0px;
	}
		.article_post .article_other_banner ul {
			width: auto;
			margin: 0 auto 0px;
			overflow: hidden;
		}
			.article_post .article_other_banner ul li {
				width: auto;
				float: none;
				margin-right: 0;
				margin-bottom: 12px;
			}
				.article_post .article_other_banner ul li a {
					background-position: calc(100% - 18px) 50% !important;
				}
					.article_post .article_other_banner ul li a p {
						font-size: 16px;
					}
	
	
}


/* other
---------------------------------------------*/








/*----------------------------------------------------------------------------------------------------- */
/* TOP Style */
/*----------------------------------------------------------------------------------------------------- */

/* main,article,index_inner */
body#index #main {
    width: auto;
	margin-bottom: 16px;
}
body#index article {
    float:none;
    width: auto;
}
.index_inner{
	width:1120px;
	margin: 0 auto;
	position: relative;
}

@media screen and (max-width: 768px) {
	
	body#index article {
		padding: 0px !important;
	}
	body#index article section{
		padding:0 24px;
	}
	.index_inner{
		width:auto;
		padding:0px;
	}
}
/* END main,article,index_inner */


/*index_ttl*/
.index_ttl{
	position: relative;
	max-width:1120px;
	margin: 0 auto 40px;
	line-height: 1;
	font-size:3.0rem;
	text-align: center;
}
	.index_ttl span{
		position: relative;
		z-index: 10;
		background: #fff;
		display: inline-block;
		padding: 0 25px;
	}
	.index_ttl::after{
		position:absolute;
		top:50%;
		left: 0;
		z-index: 1;
		content: " ";
		width:100%;
		height: 1px;
		background: #bdbdbd;
	}
@media screen and (max-width: 768px) {
	.index_ttl{
		margin: 0 auto 30px !important;
		font-size:24px !important;
	}
		.index_ttl span{
			padding: 0 14px;
		}

}
/* END index_ttl*/


/* main_slide */
#main_slide{
	min-width: 1120px;
}
	#main_slide img{
		width: 100%;
		height:auto;
	}
	#main_slide img.sp{
		display: none;
	}
	#main_slide .slides_item_txt{
		position: relative;
		width: 1120px;
		height: 0;
		margin: 0 auto;
	}
	#main_slide .slides_item_txt .slides_item_txt_inner{
		opacity: 0;
		position: absolute;
		bottom:-20px;
		padding:21px 25px 24px;
		background-color: rgba(255,255,255,0.70);
		
		/*
		-webkit-transition: all 0.7s linear;
		transition: all 0.7s linear;
		*/
		-webkit-transition: all 0.7s ease-in-out;
		transition: all 0.7s ease-in-out;
	}
		#main_slide .slides_item.current .slides_item_txt .slides_item_txt_inner{
			opacity: 1;
			bottom:40px;
		}
		#main_slide .slides_item_txt h2{
			font-size:2.0rem;
			line-height: 1.4;
		}
		#main_slide .slides_item_txt .slides_item_btn{
			text-align: right;
			line-height: 1.3;
			margin-bottom: 0;
		}
		#main_slide .slides_item_txt h2 + .slides_item_btn{
			margin-top: 20px;
		}
		#main_slide .slides_item_txt .slides_item_btn a{
			display: inline-block;
			border:1px solid #a0a0a0;
			padding:10px 30px 10px 10px;
			color:#212121;
			text-decoration: none;
			background: url(/common/img/arrow_gray_r.svg) calc(100% - 10px) 50% no-repeat;
			background-size: 8px 14px;
		}
			#main_slide .slides_item_txt .slides_item_btn a:hover,
			#main_slide .slides_item_txt .slides_item_txt_inner.bg_black .slides_item_btn a:hover{
				border:1px solid #c62828;
				color:#c62828;
				background:#fff url(/common/img/arrow_red.svg) calc(100% - 10px) 50% no-repeat;
				background-size: 8px 14px;
			}

		/* slide Option */
		#main_slide .slides_item_txt .slides_item_txt_inner.left{
			left: 64px;
		}
		#main_slide .slides_item_txt .slides_item_txt_inner.right{
			right: 64px;
		}
		#main_slide .slides_item_txt .slides_item_txt_inner.bg_white{
			background-color: rgba(255,255,255,0.70);
		}
		#main_slide .slides_item_txt .slides_item_txt_inner.bg_black{
			background-color: rgba(0,0,0,0.40);
			color:#fff;
		}
			#main_slide .slides_item_txt .slides_item_txt_inner.bg_black .slides_item_btn a{
				color:#fff;
				border:1px solid #fff;
				background: url(/common/img/arrow_white2.svg) calc(100% - 10px) 50% no-repeat;
				background-size: 8px 14px;
			}
		/* END slide Option */
	

@media screen and (min-width: 1260px){
	#main_slide .slides_item_txt .slides_item_txt_inner.left{
		left: 0px;
	}
	#main_slide .slides_item_txt .slides_item_txt_inner.right{
		right: 0px;
	}
}
@media screen and (max-width: 768px) {

	#main_slide{
		min-width:inherit;
	}
	#main_slide img.pc{
		display: none;
	}
	#main_slide img.sp{
		display: block;
	}
	#main_slide .slides_item_txt {
		height: auto;
		width: auto;
		margin: 0;
	}
		#main_slide .slides_item_txt .slides_item_txt_inner{
			bottom: 0;
			left: 20px !important;
			right: 20px !important;
			padding:22px 20px 20px;
		}
		#main_slide .slides_item.current .slides_item_txt .slides_item_txt_inner{
			bottom:20px;
		}
		#main_slide .slides_item_txt h2{
			font-size:12px;
			line-height: 1.7;
		}
		#main_slide .slides_item_txt .slides_item_btn{
			text-align: center;
		}
		#main_slide .slides_item_txt .slides_item_btn a{
			padding: 10px 30px 10px 10px;
			font-size: 12px;
		}
		#main_slide .slick-dots{
			position: static;
			padding: 20px;
			line-height: 0;
		}
	
}
/* END main_slide */




/* important_news */
#important_news{
	background-color: rgba(198,40,40,0.90);
	min-width: 1120px;
	padding: 8px 0;
}
#important_news_inner{
	width: 1120px;
	margin: 0 auto;
	padding-left: 44px;
	overflow: hidden;
}
	#important_news_inner h3{
		color:#fff;
		font-size:2.2rem;
		float: left;
		line-height: 1;
		margin-top: 12px;
		padding: 8px 0px 0px 57px;
		min-height: 38px;
		background: url(/common/img/icon_attention.svg) 0 50% no-repeat;
		background-size: 38px 38px;
	}
	#important_news_inner a{
		color:#212121;
		padding:0;
		background: none;
	}
	#important_news_inner a:hover{
		color:#c62828;
		text-decoration: none;
	}
	#important_news_inner dl{
		background: #fff;
		width:832px;
		float: right;
		line-height: 1;
		padding: 24px 10px;
		display: table;
		font-weight: bold;
		font-size:1.8rem;
	}
		#important_news_inner dl dt{
			position: relative;
			display: table-cell;
			width:180px;
			padding-left: 20px;
		}
		#important_news_inner dl dt::after{
			content: "・";
			position: absolute;
			top:12px;
			left: 0;
			margin-top: -0.5em;
			color:#c62828;
		}
		#important_news_inner dl dd{
			display: table-cell;
			line-height: 1.4;
		}

@media screen and (max-width: 768px) {
	#important_news{
		min-width:inherit;
		padding: 8px 24px;
	}
	#important_news_inner{
		width: auto;
		padding-left: 0px;
	}
		#important_news_inner h3{
			color:#fff;
			font-size:18px;
			float: none;
			margin-top: 0px;
			padding: 8px 0px 0px 35px;
			background: url(/common/img/icon_attention.svg) 0 40% no-repeat;
			background-size: 25px 25px;
		}
		#important_news_inner dl{
			background: #fff;
			width:auto;
			float: none;
			display: block;
			line-height: 1.5;
			padding: 10px 10px;
			font-size:14px;
		}
		#important_news_inner dl dt{
			position: relative;
			display: block;
			width:auto;
			padding-left: 0px;
		}
		#important_news_inner dl dt::after{
			display: none;
		}
}
/* END important_news */


/* index_banner */
#index_banner{
	min-width: 1120px;
	overflow: hidden;
	padding: 25px 0 0px;
	background: #f5f5f5;
}
#index_banner_inner{
	width: 1120px;
	margin: 0 auto;
	position: relative;
}
	#index_banner_inner .slides{
	}
	#index_banner_inner .slides li{
	}
		#index_banner_inner .slides li a{
			padding: 0;
			background: none;
		}
		#index_banner_inner .slides li img{
		}

	#index_banner_inner .slick-list{
		margin: 0 -16px;
	}

@media screen and (min-width: 769px){
	#index_banner_inner .slides li{
		width:352px;
		margin:0 16px;
	}
	#index_banner_inner .slides li img{
		width:352px;
	}
}
@media screen and (max-width: 768px) {
	#index_banner{
		min-width:inherit;
		padding: 28px 0 0px;
		background: #f5f5f5;
		overflow: hidden;
	}
	#index_banner_inner{
		width: auto;
	}
		#index_banner_inner .slides li{
			margin:0 13px;
		}
		#index_banner_inner .slides li img{
			width:100%;
		}
	/*------------------*/
}
/* END index_banner */




/* index_news_section */
#index_news_section{
	min-width: 1120px;
	margin: 60px 0 40px;
}

.more_box{
	display: none;
}
.more_btn{
	margin-bottom: 15px;
}
	.more_btn a{
		display: block;
		background: #f5f5f5;
		color:#212121;
		text-align: center;
		font-size: 1.4rem;
	}
		.more_btn a span{
			padding:8px 20px;
			display: inline-block;
			background: url(/common/img/icon_plus2.svg) 0 50% no-repeat;
			background-size:12px 12px;
		}
		.more_btn.open a span{
			background: url(/common/img/icon_minus2.svg) 0 50% no-repeat;
			background-size:12px 3px;
		}

@media screen and (max-width: 768px) {
	#index_news_section{
		min-width:inherit;
		margin: 75px 0 40px;
	}
	
	.more_btn {
		margin-bottom: 20px;
	}
		.more_btn a span {
			padding: 7px 20px;
		}
}
/* END index_news_section */


/* index_topics */
.index_topics{
	background: #f5f5f5;
	margin-bottom: 10px;
}
	.index_topics .index_topics_item{
		background: url(/common/img/bo_line01.png) 0 100% repeat-y;
	}
	.index_topics .index_topics_item:first-child{
		background: none;
	}
		.index_topics .index_topics_item a{
			color: #212121;
		}
			.index_topics .index_topics_item figure{
				position: relative;
			}
			.index_topics .index_topics_item figure .thumbnail{
				position: relative;
				overflow: hidden;
			}
			.index_topics .index_topics_item figure .thumbnail::before{
				content: "";
				display: block;
				padding-top: calc(555 / 832 * 100%);
			}
			.index_topics .index_topics_item figure .thumbnail img{
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
			.index_topics .index_topics_item figure .index_topics_date{
				position: absolute;
				bottom: 0;
				left: 0;
				width: 100%;
				line-height: 1;
				color: #fff;
				background-color: rgba(33,33,33,0.5);
			}
			.index_topics .index_topics_item figure .index_topics_date_txt{
				padding: 0 0 0 17px;
				line-height: 1;
				min-height: 27px;
				font-size: 1.2rem;
				color: #fff;
				background: none;
			}
				.index_topics .index_topics_item figure .index_topics_date_txt strong{
					display: inline-block;
					padding: 6px 0 0 0;
					font-size: 2rem;
					font-weight: normal;
					padding-right: 5px;
				}
			.index_topics .index_topics_item figure .index_topics_icon{
				display: block;
				position: absolute;
				bottom: 0;
				right: 0;
				min-height: 27px;
				min-width: 104px;
				padding: 7px 5px 0;
				text-align: center;
				background-color: #616161;
				font-size: 1.2rem;
			}
			.index_topics .index_topics_item p{
				padding: 13px 15px;
				margin: 0;
				color: #212121;
				font-size: 1.4rem;
				line-height: 1.5;
				font-weight: bold;
			}
	.index_topics .slick-arrow{
		top: 0;
		margin-top: calc(250 / 2 / 1120 * 100% - 44px);
	}
	.index_topics .slick-dots{
		bottom: 13px;
		font-size: 0;
	}

@media screen and (min-width: 769px){
	.index_topics .index_topics_item a figure img{
		transition: all 0.4s ease-in-out;
	}
	.index_topics .index_topics_item a:hover figure img{
		transform: scale(1.05);
	}
	.index_topics .index_topics_item figure + p{
		padding-bottom: calc(13px * 2 + 16px);
	}
}

@media screen and (max-width: 768px) {
	.index_topics{
		display: flex;
		margin: 0 0 0 -24px;
		background: none;
		flex-wrap: wrap;
	}
		.index_topics .index_topics_item{
			padding-left: 24px;
			width: 100%;
			background: none;
			margin-bottom: 25px;
		}
		.index_topics .index_topics_item:not(:first-child){
			width: 50%;
		}
			.index_topics .index_topics_item:not(:first-child) figure{
			}
			.index_topics .index_topics_item:not(:first-child) figure .index_topics_date{
			}
			.index_topics .index_topics_item:not(:first-child) figure .index_topics_date_txt{
				padding-left: 6px;
				min-height: 25px;
			}
			.index_topics .index_topics_item:not(:first-child) figure .index_topics_date_txt strong{
				font-size: 1.6rem;
			}
			.index_topics .index_topics_item:first-child figure .index_topics_icon{
				padding-top: 8px;
			}
			.index_topics .index_topics_item:not(:first-child) figure .index_topics_icon{
				position: absolute;
				right: 0;
				top: 100%;
				min-width: auto;
				min-height: 25px;
			}
			.index_topics .index_topics_item p{
				padding: 12px;
				background: #f5f5f5;
			}
			.index_topics .index_topics_item:not(:first-child) figure + p{
				padding-top: 32px;
			}
}
/* END index_topics */


/* news_type01_link */
.news_type01_link{
	text-align: right;
	margin-bottom: 35px;
}
	.news_type01_link a{
		position: relative;
		text-align: right;
		font-weight: bold;
		color:#212121;
		padding-left: 22px;
	}
		.news_type01_link a::after {
			display: block;
			width: 14px;
			height: 8px;
			content: " ";
			position: absolute;
			top: 50%;
			left: 0px;
			margin-top: -4px;
			background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
			background-size: 14px 8px;
			z-index: 3;
			-webkit-transform: rotate(-90deg);
			transform: rotate(-90deg);
		}
/* END news_type01_link */


/* news_dl */
.news_dl{
	overflow: hidden;
	padding: 15px 0px 13px;
	border-bottom:1px dotted #c5c5c5;
}
	.news_dl dt{
		font-size:1.2rem;
		font-weight: normal;
		line-height: 1.2;
		width:225px;
		overflow: hidden;
	}
		.news_dl dt strong{
			font-size:2.0rem;
			font-weight: normal;
			padding-right: 5px;
		}
		.news_dl dt .news_icon{
			display: inline-block;
			color:#757575;
			font-weight: bold;
			font-size:1.2rem;
			padding: 5px;
			min-width: 105px;
			text-align: center;
			background: #f5f5f5;
			float: right;
		}
	.news_dl dd{
		line-height: 1.5;
		font-size:1.4rem;
		padding:7px 0px 0px 0px;
	}
		.news_dl dd a{
			color:#212121;
			text-decoration: none;
		}
		.news_dl dd a:hover{
			color:#c62828;
		}

.news_type01{
}
	.news_type01 .news_dl dt{
		float: left;
	}
	.news_type01 .news_dl dd{
		font-size:1.6rem;
		padding:0px 0px 0px 255px;
	}

.news_type02{
	border-top:1px dotted #c5c5c5;
}
	.news_type02 .news_dl{
		padding: 10px 0px 8px;
	}
	.news_type02 .news_dl dt{
		float: left;
		width:195px;
		padding-top: 3px;
	}
		.news_type02 .news_dl dt strong{
			font-size:1.6rem;
		}
		.news_type02 .news_dl dt .news_icon{
			min-width:105px;
			margin-top: -3px;
		}
	.news_type02 .news_dl dd{
		font-size:1.4rem;
		padding:1px 0px 0px 215px;
	}

.index_news_l{
	float: left;
	width:560px;
	padding:17px 16px 0 0;
}
	.index_news_l h3{
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.45;
		background: url(/common/img/ttl_type03_bg.png) 0 100% no-repeat,url(/common/img/icon_point.svg) 1px 3px no-repeat;
		background-size: auto auto,26px 20px;
		padding: 0 0 10px 36px;
		margin-bottom: 20px;
	}
	.index_news_l p:last-child{
		text-align: right;
		padding:15px 0px 0 0;
		font-size: 1.4rem;
	}
	
.index_news_r{
	float: right;
	width:560px;
	background: #f5f5f5;
	padding:17px 17px 17px 17px;
	margin-bottom: 0px;
}
	.index_news_r h3{
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1.45;
		background: url(/common/img/ttl_type03_bg.png) 0 100% no-repeat,url(/common/img/icon_note2.svg) 1px 1px no-repeat;
		background-size: auto auto, 22px 22px;
		padding: 0 0 10px 28px;
		margin-bottom: 20px;
	}
	p.news_list_link{
		font-size: 1.4rem;
		text-align: right;
		padding-top: 20px;
		margin-bottom: 10px;
	}

#news_list_a{
	border-top:1px dotted #c5c5c5;
}
	#news_list_a .news_dl dt{
		width:auto;
		min-width:225px;
		overflow: hidden;
		float: left;
	}
	#news_list_a .news_dl dd{
		line-height: 1.5;
		font-size:1.6rem;
		padding:7px 0px 0px 0px;
	}
	#news_list_a .news_dl dt .news_icon2 {
		display: inline-block;
		color:#757575;
		font-weight: bold;
		font-size:1.2rem;
		text-align: center;
		background: #f5f5f5;
		padding: 5px 8px;
		margin:0 0 5px 5px;
	}
	#news_list_a .news_dl dt .news_icon2:nth-of-type(1) {
		margin-left: 20px;
	}
	#news_list_a .news_dl dd{
		clear: both;
	}

@media screen and (min-width: 769px){
	.index_news_r .news_dl dt .news_icon{
		border:1px solid #dddddd;
		background: #fff;
	}
	.index_news_r .news_dl:last-child{
		border-bottom:none;
	}
}

@media screen and (max-width: 768px) {
	
	.news_dl dt {
		width: auto;
	}
		.news_dl dt .news_icon {
			margin-left:20px; 
			float: none;
		}
	
	.news_type01 .news_dl{
	}
		.news_type01 .news_dl dt {
			float: none;
			margin-bottom: 10px;
		}
		.news_type01 .news_dl dd {
			padding: 0px 0px 0px 0px;
		}
	
	.news_type02 .news_dl{
		padding: 15px 0px 13px;
	}
		.news_type02 .news_dl dt{
			float: none;
			width: auto;
			padding-top: 0px;
			margin-bottom: 10px;
		}
			.news_type02 .news_dl dt strong{
				font-size: 2.0rem;
			}
			.news_type02 .news_dl dt .news_icon{
				margin-top: 0px;
			}
		.news_type02 .news_dl dd{
			padding: 0px 0px 0px 0px;
		}
	
	
	.index_news_l {
		float: none;
		width: auto;
		padding: 0px;
	}
	.index_news_l h3,
	.index_news_r h3{
		margin-bottom: 10px;
	}
	.index_news_r {
		float: none;
		width: auto;
		background: none;
		padding: 0;
		margin-bottom: 15px;
	}
	.index_news_r .news_dl:last-child {
		border-bottom: 1px dotted #c5c5c5;
	}
}
/* END news_dl */


/* index_words */
.index_words{
}
	.index_words h3{
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.45;
		background: url(/common/img/icon_hukidashi.svg) 0px 50% no-repeat;
		background-size:18px 17px;
		padding: 0 0 0px 26px;
		margin-bottom: 10px;
	}
	.index_words ul{
		overflow: hidden;
	}
		.index_words ul li{
			width:255px;
			float: left;
			text-align: center;
			margin: 0 15px 8px 0;
		}
		.index_words ul li:nth-child(2n){
			margin: 0 0px 8px 0;
		}
			.index_words ul li a{
				display: block;
				border:1px solid #bfbfbf;
				background: #fff;
				border-radius: 30px;
				color:#212121;
				font-size:1.4rem;
				font-weight: bold;
				text-decoration: none;
				padding-top: 12px;
				line-height: 1;
				min-height: 40px;
			}
				.index_words ul li a:hover{
					border:1px solid #c62828;
					background: #c62828;
					color:#fff;
				}

@media screen and (max-width: 768px) {
	.index_words{
		float: none;
		width:auto;
		padding:0;
	}
	.index_words ul li {
		width: auto;
		float: none;
		text-align: center;
		margin: 0 0 12px 0;
	}
	.index_words ul li a{
		margin: 0 auto;
		width:264px;
		min-height: 55px;
		padding-top: 20px;
	}
}
/* END index_words */


/* index_pickup_section */
#index_pickup_section{
	min-width: 1120px;
	background: url(/img/top/pickup_bg.jpg) 50% 0 no-repeat;
	background-size:cover;
	padding: 30px 0 30px;
	margin-bottom: 60px;
}
	#index_pickup_section h2{
		text-align: center;
		color:#fff;
		font-size:3.0rem;
		margin-bottom: 25px;
	}
	#index_pickup_section .ph_3column{
		margin: 0;
	}
		#index_pickup_section .ph_3column .ph_3column_item dl{
			padding:0 15px 10px;
		}

@media screen and (min-width: 769px){
	#index_pickup_section .ph_3column .ph_3column_item a figure{
		display: block;
		overflow: hidden;
	}
		#index_pickup_section .ph_3column .ph_3column_item a figure img{
			-webkit-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;

			-webkit-transform: scale(1.01);
			transform: scale(1.01);
		}
		#index_pickup_section .ph_3column .ph_3column_item a:hover figure img{
			-webkit-transform: scale(1.06);
			transform: scale(1.06);
		}
	
}

@media screen and (max-width: 768px) {
	#index_pickup_section{
		min-width:inherit;
		margin:0 24px 80px;
		padding: 25px 24px 0px !important;
	}
	#index_pickup_section h2 {
		font-size: 19px;
		margin:0 -24px 25px;
	}
	#index_pickup_section .ph_3column .ph_3column_item {
		margin-bottom: 25px;
	}
	#index_pickup_section .ph_3column .ph_3column_item dl{
		height: auto !important;
	}
	#index_pickup_section .ph_3column .ph_3column_item dt {
		font-size: 17px;
		padding-top: 17px;
    	margin-bottom: 5px;
	}
	#index_pickup_section .ph_3column .ph_3column_item dd p {
		margin: 0 0 5px 0;
	}
}
/* END index_pickup_section */


/* index_department_section */
#index_department_section{
	margin-bottom: 60px;
}
	#index_department_section p{
		text-align: center;
	}
	#index_department_section ul{
		overflow: hidden;
	}
		#index_department_section ul li{
			position: relative;
			overflow: hidden;
			width:222px;
			float: left;
			margin-right: 2px;
		}
		#index_department_section ul li:last-child{
			margin-right: 0px;
		}
			#index_department_section ul li a{
				display: block;

			}
				#index_department_section ul li a dl{
					position: absolute;
					top:244px;
					left: 0;
					color:#212121;
					width:100%;
					height: 300px;
					padding:28px 18px 0 19px;
					overflow: hidden;
					background-color: rgba(255,255,255,0.8);

					-webkit-transition: all 0.4s ease-in-out;
							transition: all 0.4s ease-in-out;
				}
					#index_department_section ul li a dl dt{
						font-size:2.2rem;
						font-weight: bold;
						line-height: 1;
						margin-bottom: 30px;
					}
						#index_department_section ul li a dl dt span{
							display: block;
							font-size:1.5rem;
							line-height: 1;
							padding:7px 0px 15px;
							width:64px;
							border-bottom:4px solid #c62828;
						}
					#index_department_section ul li a dl dd{
						font-size:1.4rem;
						font-weight: bold;
					}

						

@media screen and (min-width: 769px){
	#index_department_section ul li a:hover img{
		opacity: 1;
	}
	#index_department_section ul li a:hover dl{
		background-color: rgba(198,40,40,0.8);
		color:#fff;
		top:120px;
	}
	#index_department_section ul li a:hover dl dt span{
		border-bottom:4px solid #fff;
	}
	#index_department_section ul li a:hover dl dd{
	}
}

@media screen and (max-width: 768px) {
	#index_department_section{
		margin-bottom: 36px;
	}
	#index_department_section p{
		text-align: left;
		font-size:14px;
	}
	#index_department_section ul li{
		width:auto;
		float: none;
		margin-right: 0px;
		border:1px solid #c2c1c0;
		margin-bottom: 24px;
	}
		#index_department_section ul li img{
			width:100%;
			height: auto;
		}
		#index_department_section ul li a dl{
			position:static;
			top:inherit;
			left: inherit;
			height: auto;
			padding:23px 22px 20px;
			background-color:#fff;
		}
			#index_department_section ul li a dl dt{
				position: relative;
				font-size:18px;
				font-weight: bold;
				line-height: 1;
				margin-bottom: 12px;
				padding-bottom: 12px;
			}
			#index_department_section ul li a dl dt::after{
				content: " ";
				position: absolute;
				bottom:0px;
				left: 0px;
				width:96px;
				height: 3px;
				background: #c62828;
			}
				#index_department_section ul li a dl dt span{
					display:inline;
					font-size:14px;
					line-height: 1;
					padding:0px;
					width:auto;
					border-bottom:none;
				}
}
/* END index_department_section */


/* index_access_section */
#index_access_section{
	margin-bottom: 56px;
}
.index_map{
	margin-bottom: 30px;
}

/*index_access_list*/
.index_access_list{
	width:544px;
	margin:0 auto;
	overflow: hidden;
}
	.index_access_list li{
		width:256px;
		float: left;
	}
	.index_access_list li:last-child{
		float: right;
	}
		.index_access_list li a{
			display: table !important;
			width:100%;
			height: 80px;
			border:1px solid #bdbdbd;
			color:#212121;
			text-decoration: none !important;
			background: none !important;
			padding: 0 !important;
		}
			.index_access_list li a figure{
				display: table-cell;
				width:63px;
				vertical-align: middle;
				text-align: center;
				background: #fafafa;
			}
			.index_access_list li a p{
				display: table-cell;
				margin: 0;
				padding:0 5px 0 5px;
				vertical-align: middle;
				text-align: center;
				font-size:1.5rem;
				line-height: 1.25;
				font-weight: bold;
			}

			.index_access_list li a:hover{
				border:1px solid #ef9a9a;
				color:#c62828;
			}
			.index_access_list li a:hover figure{
				background: #ffebee;
			}
			.index_access_list li a:hover img{
				opacity: 1;
			}

@media screen and (max-width: 768px) {
	#index_access_section{
		margin-bottom: 60px;
	}
	.index_map iframe{
		height: 180px;
	}
	.index_access_list {
		width: auto;
		padding: 0 11px;
	}
	.index_access_list li {
		width: auto;
		float: none !important;
		margin-bottom: 20px;
	}
	.index_access_list li a {
		height: 70px;
		border: 2px solid #bdbdbd;
	}
	.index_access_list li a p{
		font-size:17px;
	}
}
/* END index_access_section */



/* index_other_box */
#index_other_box{
	border-top:1px solid #e0e0e0;
	padding-top: 40px;
}
	#index_other_box ul{
		width:834px;
		margin: 0 auto 24px;
		overflow: hidden;
	}
		#index_other_box ul li{
			width:256px;
			float: left;
			margin-right: 33px;
		}
		#index_other_box ul li:last-child{
			margin-right: 0px;
		}
			#index_other_box ul li a{
				padding:0;
				display: table;
				width:100%;
				border:1px solid #bdbdbd;
				color:#212121;
				text-decoration: none !important;
				background:#fff url(/common/img/arrow_red2_r.svg) 231px 50% no-repeat;
				background-size: 7px 8px;
			}
				#index_other_box ul li a:hover{
					border:1px solid #ff5252;
					color:#c62828;
				}

			#index_other_box ul li a:hover img{
				opacity: 1;
			}
			#index_other_box ul li a figure{
				display: table-cell;
				width:60px;
				padding:2px;
			}
			#index_other_box ul li a p{
				display: table-cell;
				margin: 0;
				vertical-align: middle;
				padding:1px 24px 0 18px;
				font-size:1.4rem;
				line-height: 1.25;
				font-weight: bold;
			}

@media screen and (max-width: 768px) {
	#index_other_box{
		padding: 40px 35px 32px;
	}
		#index_other_box ul {
			width: auto;
			margin: 0 auto 0px;
			overflow: hidden;
		}
			#index_other_box ul li {
				width: auto;
				float: none;
				margin-right: 0;
				margin-bottom: 12px;
			}
				#index_other_box ul li a {
					background-position: calc(100% - 18px) 50% !important;
				}
					#index_other_box ul li a p {
						font-size: 16px;
					}
}
/* END index_other_box */



/*----------------------------------------------------------------------------------------------------- */
/* NEWS Style (thumb)*/
/*----------------------------------------------------------------------------------------------------- */
#news_list_category{
}
	#news_list_category h2{
		text-align: center;
		font-size: 1.3rem;
		margin-bottom: 24px;
	}
	#news_list_category ul{
		text-align: center;
		padding-bottom: 30px;
	}
		#news_list_category ul li{
			display:inline-block;
			margin: 0 5px 16px;
			line-height: 1;
		}
			#news_list_category ul li a{
				display: block;
				padding:9px 15px;
				border:1px solid #bdbdbd;
				border-radius: 30px;
				font-size: 1.3rem;
				color:#212121;
				font-weight: bold;
				background-color: #fff;
				text-decoration: none !important;
			}
			#news_list_category ul li a:hover,
			#news_list_category ul li a.current{
				border:1px solid #c62828;
				color:#fff;
				background-color: #c62828;
			}

#news_list_b{
	margin-right:-33px;
}
	#news_list_b ul{
		display: flex;
		flex-wrap: wrap;
		text-align: center;
		padding-bottom: 30px;
	}
		#news_list_b ul li{
			width:184px;
			margin: 0 32px 40px 0;
			text-align: left;
		}
			#news_list_b ul li a{
				display: block;
				color:#212121;
				padding: 0 !important;
				background: none !important;
			}
			#news_list_b ul li figure{
				position: relative;
			}
			#news_list_b ul li figure::before{
				content: "";
				display: block;
				padding-top: calc(123 / 184 * 100%);
			}
			#news_list_b ul li img{
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
			#news_list_b ul li .news_dl{
				padding: 13px 0 0;
				border-bottom:none;
			}
			#news_list_b ul li .news_dl dt{
				position: relative;
				width: auto;
				overflow:visible;
			}
			#news_list_b ul li .news_dl dt::after{
				content: " ";
				display: block;
				clear: both;
				visibility: hidden;
				height: 0;
			}
				#news_list_b ul li .news_dl dt strong{
					font-size:1.6rem;
					padding-right: 3px;
				}
				#news_list_b ul li .news_dl dt .news_icon {
					margin-top: -2px;
					display: inline-block;
					color: #757575;
					font-weight: bold;
					font-size: 1.2rem;
					padding: 4px 6px;
					min-width:inherit;
					text-align: center;
					background: #f5f5f5;
					float: right;
					letter-spacing: 0px;
				}

#news_list_c{
	margin-top:-30px;
}

@media screen and (max-width: 768px) {
	#news_list_category ul{
		padding-bottom: 20px;
	}
	#news_list_b{
		margin:0 -10px;
	}
	#news_list_b ul{
		padding-bottom: 20px;
	}
		#news_list_b ul li{
			width:50%;
			padding: 0 3%;
			margin: 0 0 30px 0;
		}
}

.news_back_btn{
	padding-top: 10px;
}


/*----------------------------------------------------------------------------------------------------- */
/* InterView Style */
/*----------------------------------------------------------------------------------------------------- */
.interview_ttl_wrap{
	padding-top: 60px;
	margin-bottom: 60px;
}
.interview_ttl{
	text-align: center;
}


#interview_list{
}
	#interview_list ul{
		overflow: hidden;
		margin: 0 auto;
		width:968px;
	}
		#interview_list ul li{
			margin: 0 30px 34px 0;
			float: left;
		}
		#interview_list ul li:nth-child(2n){
			margin-right: 0;
		}

@media screen and (max-width: 768px) {
	.interview_ttl_wrap{
		padding-top: 30px;
		margin-bottom: 20px;
	}
		.interview_ttl img{
			max-width: 200px;
		}
	#interview_list ul{
		width:auto;
	}
		#interview_list ul li{
			margin: 0 0px 30px 0;
			float:none;
			text-align: center;
		}
}

/* interview_kv */
#interview_kv{
	position: relative;
	overflow: hidden;
	min-width: 1120px;
	margin-bottom: 30px;
}
	#interview_kv figure{
		text-align: center;
	}
		#interview_kv figure img{
			width:100%;
		}

	#interview_kv .interview_kv_txt_wrap{
		position: relative;
		width: 1120px;
		height: 0;
		margin: 0 auto;
	}

		#interview_kv .interview_kv_txt_wrap .interview_kv_txt{
			position: absolute;
			bottom:220px;
			padding:0px;
			background-color: rgba(255,255,255,0.70);
		}

	#interview_kv .interview_kv_txt_wrap .interview_kv_name_wrap{
		width:446px;
		text-align: center;
		position: absolute;
		bottom:80px;
	}
		#interview_kv .interview_kv_txt_wrap .interview_kv_name{
			display: inline-block;
			min-width: 350px;
			border-left: 10px solid #d04253;
			background-color: rgba(239,239,239,1.0);
		}

		/* position Option */
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt.left,
		#interview_kv .interview_kv_txt_wrap .interview_kv_name_wrap.left{
			left: 0px;
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt.right,
		#interview_kv .interview_kv_txt_wrap .interview_kv_name_wrap.right{
			right: 0px;
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt.bg_white{
			background-color: rgba(255,255,255,0.70);
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt.bg_black{
			background-color: rgba(0,0,0,0.40);
			color:#fff;
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_name.bg_black{
			background-color: rgba(0,0,0,0.40);
			color:#fff;
		}
		/* END position Option */

@media screen and (max-width: 768px) {

	#interview_kv{
		min-width:inherit;
		margin-bottom: 0;
	}
	#interview_kv .interview_kv_txt_wrap {
		height: auto;
		width: auto;
		margin: -28px 24px 30px;
	}
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt{
			opacity: 1 !important;
			text-align: left;
			position:relative;
			bottom:inherit !important;
			left: inherit !important;
			right: inherit !important;
			padding:0px 0px 0px;
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_txt img{
			width:270px;
		}
		#interview_kv .interview_kv_txt_wrap .interview_kv_name_wrap{
			width:auto;
			position:relative;
			bottom:inherit !important;
			left: inherit !important;
			right: inherit !important;
		}
			#interview_kv .interview_kv_txt_wrap .interview_kv_name{
				display: block;
				text-align: left;
				min-width: inherit !important;
				border-left: 5px solid #d04253;
			}
			#interview_kv .interview_kv_txt_wrap .interview_kv_name img{
				width:250px;
			}
	
}
/* END interview_kv */


/* interview_detail */
#interview_detail{
	margin-bottom: 50px;
}
.interview_item{
	position: relative;
	overflow: hidden;
}
.interview_item_ph{
	position:absolute;
	top:50%;
}
	.interview_item_ph img{

	}
.interview_item_txt{
	background: #e5e5e5;
	min-height: 365px;
	padding:55px 80px 55px 48px;
}
	.interview_item_txt h3{
		font-size:1.7rem;
		margin-bottom: 20px;
		line-height: 1.5;
		padding: 10px 0 0 47px;
		min-height: 40px;
	}
		.interview_item_txt h3.interview_num1{
			background: url(/img/interview/num1.png) 0 0 no-repeat;
		}
		.interview_item_txt h3.interview_num2{
			background: url(/img/interview/num2.png) 0 0 no-repeat;
		}
		.interview_item_txt h3.interview_num3{
			background: url(/img/interview/num3.png) 0 0 no-repeat;
		}
		.interview_item_txt h3.interview_num4{
			background: url(/img/interview/num4.png) 0 0 no-repeat;
		}
	.interview_item_txt p{
		font-size:1.5rem;
	}
	.interview_item_txt p:last-child{
		margin-bottom: 0px;
	}



	#interview_detail .interview_item:nth-of-type(2) .interview_item_txt,
	#interview_detail .interview_item:nth-of-type(4) .interview_item_txt{
		float: right;
	}
	#interview_detail .interview_item:nth-of-type(1) .interview_item_txt,
	#interview_detail .interview_item:nth-of-type(2) .interview_item_txt,
	#interview_detail .interview_item:nth-of-type(3) .interview_item_txt,
	#interview_detail .interview_item:nth-of-type(4) .interview_item_txt{
		width: 50%;
		padding: 55px;
	}
	#interview_detail .interview_item:nth-of-type(1) .interview_item_ph,
	#interview_detail .interview_item:nth-of-type(3) .interview_item_ph{
		left: 48%;
	}
	#interview_detail .interview_item:nth-of-type(2) .interview_item_ph,
	#interview_detail .interview_item:nth-of-type(4) .interview_item_ph{
		left: auto;
		right: 48%;
	}

@media screen and (max-width: 768px) {
	#interview_detail{
		margin-bottom: 30px;
	}
	.interview_item{
		overflow:auto;
		margin-bottom: 20px;
	}
	.interview_item_ph{
		position:static;
		top:inherit !important;
		left: inherit !important;
		right: inherit !important;
		padding:0px 0px 0px;
		margin: 0 0 0 0 !important;
	}
		.interview_item_ph img{
			width:100%;
		}
	.interview_item_txt{
		float:none !important;
		min-height:inherit !important;
		padding:15px 10px 15px !important;
		width:auto !important;
	}
		.interview_item_txt h3{
			background-size: 25px auto !important;
			padding: 2px 0 0 32px;
			min-height: 30px;
			margin-bottom: 10px;
		}
	
}
/* END interview_detail */



/*----------------------------------------------------------------------------------------------------- */
/* library Style */
/*----------------------------------------------------------------------------------------------------- */
/*--------------------------------*/
/* header/footer */
/*--------------------------------*/

/* #library #logo */
body#library #logo {
    position: absolute;
    top: 22px;
    left: 0;
    width: 290px;
    height: 39px;
}
@media screen and (max-width: 768px) {
	body#library #logo {
		left: 15px;
		max-width: 63%;
	}
	body#library #logo img {
    	width: 290px;
	}
}
/* END #library #logo */

/* header_navi_library */
#header_navi_library{
	position: absolute;
    top: 20px;
    right: 0;
    min-height: 40px;
    font-size: 1.3rem;
    padding: 0 5px;
}
	#header_navi_library ul{
		overflow: hidden;
	}
		#header_navi_library ul li{
			float: left;
			margin-left: 23px;
			font-size:1.3rem;
		}
			#header_navi_library ul li a{
				color:#212121;
				text-decoration: none;
				min-height: 16px;
				display: inline-block;
			}
				#header_navi_library ul li:nth-child(1) a{
					padding-left: 20px;
					background: url(/common/img/icon_access.svg) 0 2px no-repeat;
					background-size: 12px 15px;
				}
				#header_navi_library ul li:nth-child(2) a{
					padding-left: 24px;
					background: url(/common/img/icon_key2.svg) 0 2px no-repeat;
					background-size: 17px 16px;
				}
				#header_navi_library ul li:nth-child(3) a{
					padding-left: 15px;
					background: url(/common/img/arrow_gray3_r.svg) 0 45% no-repeat;
					background-size: 7px 8px;
				}
				#header_navi_library ul li:nth-child(1) a:hover{
					color:#c62828;
					background: url(/common/img/icon_access_red.svg) 0 2px no-repeat;
					background-size: 12px 15px;
				}
				#header_navi_library ul li:nth-child(2) a:hover{
					color:#c62828;
					background: url(/common/img/icon_key2_red.svg) 0 2px no-repeat;
					background-size: 17px 16px;
				}
				#header_navi_library ul li:nth-child(3) a:hover{
					color:#c62828;
					background: url(/common/img/arrow_red2_r.svg) 0 45% no-repeat;
					background-size: 7px 8px;
				}
@media screen and (max-width: 768px) {
	#header_navi_library{
		display: none;
	}
}
/* END header_navi_library */
body#library #global_navi_sp_inner1 > ul{
	padding-top: 15px;
}
body#library #global_navi_sp_inner1 > ul > li{
	padding-left: 20px;
	font-size: 16px;
}
body#library #global_navi_sp_inner1 > ul > li > a{
			display: block;
			position: relative;
			text-decoration: none;
			color:#212121;
			padding: 12px 10px 13px 20px;
			line-height: 1.3;
		}
			body#library #global_navi_sp_inner1 > ul > li > a::after {
				display: block;
				width: 14px;
				height: 8px;
				content: " ";
				position: absolute;
				top: 50%;
				left: 0px;
				margin-top: -4px;
				background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
				background-size: 14px 8px;
				z-index: 3;
				-webkit-transform: rotate(-90deg);
				transform: rotate(-90deg);
			}


/* #library #footer_area2 */
body#library #footer_area2 {
    padding: 40px 0px 50px;
	background: #f5f5f5;
}
	body#library #footer_area2 dl dt {
		width: 227px;
		height: 31px;
		padding-top: 5px;
		float: left;
	}
		body#library #footer_area2 dl dt img {
			width: 227px;
			height: 31px;
		}
	body#library #footer_area2 dl dd {
		padding-left: 260px;
	}
@media screen and (max-width: 768px) {
	body#library #footer_area2 {
		padding: 25px 0px 20px;
	}
		body#library #footer_area2 dl dt {
			padding-top: 0px;
			float: none;
			margin-bottom: 20px;
		}
		body#library #footer_area2 dl dd {
			padding-left: 0px;
			font-size: 14px;
		}
}
/* END #library #footer_area2 */

/*--------------------------------*/

/* library_form */
#library_form_wrap{
	overflow: hidden;
	margin-bottom: 60px;
}
	#library_form_wrap p{
		text-align: center;
		margin-bottom: 5px;
	}
	#keins_form{
		overflow: hidden;
		width:400px;
		float: left;
	}
	#sfx_form{
		overflow: hidden;
		width:400px;
		float: right;
	}
	.library_form_btn{
		width: 40px;
		height: 40px;
		-webkit-appearance: none;
		appearance: none;
		background: #c62828 url(/common/img/icon_search.svg) 50% 50% no-repeat;
		background-size: 20px 20px;
		border: none;
		float: right;
	}
	.library_search_txt{
		padding-right: 40px;
		margin-bottom: 5px;
	}
	.library_form_input{
		background: #eeeeee;
		padding: 4px 10px 0px;
		width: 100%;
		height: 40px;
		border: none;
		outline: 0;
		-webkit-appearance: none;
		appearance: none;
	}

@media screen and (max-width: 768px) {
	#library_form_wrap{
		margin-bottom: 30px;
	}
	#keins_form{
		width:auto;
		float: none;
		margin-bottom: 10px;
	}
	#sfx_form{
		width:auto;
		float: none;
	}
}
/* END library_form */



/* library_mypagelist */
.library_mypagelist{
	margin-top: -25px;
}
	.library_mypagelist li{
		border-bottom:1px dotted #c5c5c5;
		line-height: 1;
	}
	main article .library_mypagelist li a{
		position: relative;
		display: inline-block;
		padding:14px 25px 14px 35px;
		font-size:1.8rem;
		color:#212121;
		background: url(/common/img/icon_key.svg) 3px 50% no-repeat;
		background-size: 18px 16px;
	}
	main article .library_mypagelist li a::after{
		display: block;
		width: 14px;
		height: 8px;
		content: " ";
		position: absolute;
		top: 50%;
		right: 0px;
		margin-top: -4px;
		background: url(/common/img/arrow_red_btm.svg) 0 0 no-repeat;
		background-size: 14px 8px;
		z-index: 3;
		-webkit-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}

@media screen and (max-width: 768px) {
	main article .library_mypagelist li a{
		display: block;
		line-height: 1.3;
		font-size:16px;
	}
}
/* END library_mypagelist */


/* library_box_wrap */
.library_box_wrap{
	overflow: hidden;
	margin-bottom: 40px;
}
	.library_box_l{
		width:256px;
		float: left;
	}
		.library_box_l p{
			margin-bottom: 5px;
		}
	.library_box_r{
		padding-left: 286px;
		width:542px;
	}
		.library_box_r .navi_link_set li{
			width:auto;
			float: none;
			margin-right: 0;
		}
@media screen and (max-width: 768px) {
	.library_box_l{
		width:auto;
		float: none;
		text-align: center;
		margin-bottom: 20px;
	}
	.library_box_r{
		padding-left: 0px;
		width:auto;
	}
}
/* END library_box_wrap */

/* library_other_box */
.library_other_box{
	border-top:1px solid #e0e0e0;
	padding-top: 40px;
}
	.library_other_box ul{
		width:834px;
		margin: 0 auto 40px;
		overflow: hidden;
	}
		.library_other_box ul li{
			width:256px;
			float: left;
			margin: 0 33px 0px 0px;
		}
		.library_other_box ul li::before{
			display: none;
		}
		.library_other_box ul li:last-child{
			margin-right: 0px;
		}
@media screen and (max-width: 768px) {
	.library_other_box{
		padding: 40px 0px 32px;
	}
		.library_other_box ul{
			width:auto;
			margin: 0 auto 0px;
		}
			.library_other_box ul li{
				width:auto;
				text-align: center;
				float: none;
				margin-right: 0px;
				margin-bottom: 20px;
			}
	
	
}
/* END library_other_box */



/*----------------------------------------------------------------------------------------------------- */
/* Module Style */
/*----------------------------------------------------------------------------------------------------- */

.pc_view{
	display: block;	
}
.sp_view{
	display: none;	
}
@media screen and (max-width: 768px) {
	.pc_view{
		display: none !important;
	}
	.sp_view{
		display: block !important;
	}
}

.catch{
	font-size:1.2em;
	font-weight: bold !important;
}

img{
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
}
th img,
td img{
    max-width: inherit;
}

img.img_l{
	float: left;
	margin: 0 32px 40px 0px;
}
img.img_r{
	float: right;
	margin: 0 0px 40px 32px;
}

/* image hover */
@media screen and (min-width: 769px){
	a img{
		/*
		-webkit-transition: 0.3s ease;
		-moz-transition: 0.3s ease;
		transition: 0.3s ease;
		*/
	}
	a:hover img{
		opacity: 0.7;
	}
}

/**/
.align_r {
	text-align: right !important;
}
.align_c {
	text-align: center !important;
}
.align_l {
	text-align: left !important;
}

/* font */
.normal { font-weight: normal !important; }
.bold { font-weight: bold !important; }
i,
.italic { font-style: italic !important; }


/* clear */
.cl{
	clear: both;
}

/* display none */
.none{
	display: none;
}

hr{
	margin: 30px 0;
}

/* width */
.w_auto{ width: auto !important;}
.w10p{ width: 10% !important;}
.w15p{ width: 15% !important;}
.w20p{ width: 20% !important;}
.w25p{ width: 25% !important;}
.w30p{ width: 30% !important;}
.w35p{ width: 35% !important;}
.w40p{ width: 40% !important;}
.w45p{ width: 45% !important;}
.w50p{ width: 50% !important;}
.w55p{ width: 55% !important;}
.w60p{ width: 60% !important;}
.w70p{ width: 70% !important;}
.w80p{ width: 80% !important;}
.w90p{ width: 90% !important;}
.w100p{ width: 100% !important;}


/* margin-top */
.mt0 { margin-top: 0   !important;}
.mt5 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mt45 { margin-top: 45px !important;}
.mt50 { margin-top: 50px !important;}
.mt60 { margin-top: 60px !important;}
.mt70 { margin-top: 70px !important;}
.mt80 { margin-top: 80px !important;}
.mt90 { margin-top: 90px !important;}
.mt100 { margin-top: 100px !important;}


/* margin-right */
.mr0 { margin-right: 0   !important;}
.mr5 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr35 { margin-right: 35px !important;}
.mr40 { margin-right: 40px !important;}
.mr45 { margin-right: 45px !important;}
.mr50 { margin-right: 50px !important;}

/* margin-bottom */
.mb0 { margin-bottom: 0   !important;}
.mb5 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb12 { margin-bottom: 12px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb18 { margin-bottom: 18px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb23 { margin-bottom: 23px !important;}
.mb24 { margin-bottom: 24px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb55 { margin-bottom: 55px !important;}
.mb60 { margin-bottom: 60px !important;}
.mb65 { margin-bottom: 65px !important;}
.mb70 { margin-bottom: 70px !important;}
.mb75 { margin-bottom: 75px !important;}
.mb80 { margin-bottom: 80px !important;}
.mb85 { margin-bottom: 85px !important;}
.mb90 { margin-bottom: 90px !important;}
.mb95 { margin-bottom: 95px !important;}
.mb100 { margin-bottom: 100px !important;}
.mb150 { margin-bottom: 150px !important;}
.mb200 { margin-bottom: 200px !important;}
.mb300 { margin-bottom: 300px !important;}

/* margin-left */
.ml0 { margin-left: 0 !important;}
.ml5 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml13 { margin-left: 13px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml35 { margin-left: 35px !important;}
.ml40 { margin-left: 40px !important;}
.ml45 { margin-left: 45px !important;}
.ml50 { margin-left: 50px !important;}


/* font-size */
.fs9{ font-size: 9px !important;}
.fs10{ font-size: 10px !important;}
.fs11{ font-size: 11px !important;}
.fs12{ font-size: 12px !important;}
.fs14{ font-size: 14px !important;}
.fs15{ font-size: 15px !important;}
.fs16{ font-size: 16px !important;}
.fs18{ font-size: 18px !important;}
.fs20{ font-size: 20px !important;}
.fs32{ font-size: 32px !important;}

.fs9r{ font-size: 0.9rem !important;}
.fs10r{ font-size: 1rem !important;}
.fs11r{ font-size: 1.1rem !important;}
.fs12r{ font-size: 1.2rem !important;}
.fs14r{ font-size: 1.4rem !important;}
.fs15r{ font-size: 1.5rem !important;}
.fs16r{ font-size: 1.6rem !important;}
.fs18r{ font-size: 1.8rem !important;}
.fs20r{ font-size: 2.0rem !important;}
.fs32r{ font-size: 3.2rem !important;}





/* clearfix */
/* For modern browsers */
.clearfix:after,
.cf:after{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
}
/* clearfix end */

/* template_ttl */
h3.template_ttl{
	font-size: 2.2rem;
	font-weight: bold;
	color: #9e9e9e;
	margin-bottom: 30px;
	line-height: 1.2;
	background: none !important;
	padding: 0 !important;
}
h4.template_ttl{
	font-size: 1.8rem;
	font-weight: bold;
	color: #9e9e9e;
	margin-bottom: 30px;
	line-height: 1.2;
	background: none !important;
	padding: 0 !important;
}

@media screen and (max-width: 768px) {
	h3.template_ttl{
		font-size: 18px;
	}
	h4.template_ttl{
		font-size: 16px;
		margin-bottom: 10px;
	}
	
}

/* END template_ttl */

.photo_gallery {
  display: flex;
  margin: -8px 0 60px -8px;
  flex-wrap: wrap;
}
.photo_gallery_item {
  padding: 8px 0 0 8px;
  width: 25%;
}
.photo_gallery_item .image {
  background-position: 50%;
  background-size: cover;
}
.photo_gallery_item .image::before {
  content: "";
  display: block;
  padding-top: 100%;
}
@media screen and (max-width: 768px) {
  .photo_gallery {
    margin: -3px 0 40px -3px;
  }
  .photo_gallery_item {
    padding: 3px 0 0 3px;
    width: 33.333%;
  }
}

.photo_gallery_modal {
  padding: 75px 105px 32px;
  color: #fff;
}
.photo_gallery_modal .head {
  margin-bottom: 10px;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.photo_gallery_modal .photo {
  width: 730px;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
.photo_gallery_modal .photo::before {
  content: "";
  display: block;
  padding-top: 75.342465753%;
}
.photo_gallery_modal .video {
  position: relative;
}
.photo_gallery_modal .video::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.photo_gallery_modal .video iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.photo_gallery_modal .hdg {
  margin-top: 24px;
  font-size: 1.8rem;
}
.photo_gallery_modal .text {
  margin-top: 10px;
  line-height: 2.25;
}
@media screen and (max-width: 768px) {
  .photo_gallery_modal {
    padding: 20px 11.25vw 15px;
  }
  .photo_gallery_modal .head {
    margin-bottom: 5px;
    font-size: 1.6rem;
  }
  .photo_gallery_modal .photo {
    width: auto;
  }
  .photo_gallery_modal .photo.portrait::before {
    padding-top: 100%;
  }
  .photo_gallery_modal .hdg {
    margin-top: 10px;
  }
  .photo_gallery_modal .text {
    margin-top: 3px;
    line-height: 1.9;
  }
}

.modal {
  display: none;
  width: 940px !important;
  max-width: none !important;
  background-color: rgba(0, 0, 0, 0.66);
  text-align: left;
}
@media screen and (max-width: 768px) {
  .modal {
    width: auto !important;
  }
}

.iziModal-overlay {
  visibility: hidden;
}

button[data-izimodal-close] {
  position: absolute;
  right: 45px;
  top: 45px;
  border: 0;
  padding: 0;
  width: 31px;
  height: 31px;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media screen and (max-width: 768px) {
  button[data-izimodal-close] {
    right: calc(11.25vw / 2 - 10px);
    top: 16px;
    width: 20px;
    height: 20px;
  }
}

.iziModal-navigate-caption {
  display: none !important;
}

.iziModal-navigate {
  z-index: 1000 !important;
}

button[class*=iziModal-navigate] {
  opacity: 1;
  position: absolute;
  top: 50%;
  bottom: auto;
  margin: -40px auto 0 !important;
  width: 50px;
  height: 80px;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
}
button[class*=iziModal-navigate] > span {
  position: absolute;
  left: 17px;
  top: 50%;
  margin-top: -18px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  width: 36px;
  height: 36px;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  button[class*=iziModal-navigate] {
    margin-top: -30px !important;
    width: 36px;
    height: 60px;
  }
  button[class*=iziModal-navigate] > span {
    left: 16px;
    margin-top: -8px;
    width: 16px;
    height: 16px;
  }
}

button.iziModal-navigate-prev {
  margin-left: -440px !important;
}
@media screen and (max-width: 768px) {
  button.iziModal-navigate-prev {
    left: calc(11.25vw / 2 - 18px);
    margin-left: 0 !important;
  }
}

button.iziModal-navigate-next {
  margin-right: -440px !important;
  transform: scaleX(-1);
}
@media screen and (max-width: 768px) {
  button.iziModal-navigate-next {
    right: calc(11.25vw / 2 - 18px);
    margin-right: 0 !important;
  }
}

.fixed_banner {
  display: flex;
  flex-direction: column;
  gap: 10px;
  position: fixed;
  right: 0;
  bottom: 160px;
  z-index: 998;
}
.fixed_banner_item {
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .fixed_banner {
    flex-direction: row;
    justify-content: center;
    gap: 2px;
    left: 0;
    bottom: 0;
    margin: auto;
    max-width: 400px;
    transition: transform 0.3s;
  }
  .fixed_banner.is_hidden {
    bottom: -1px;
    transform: translateY(100%);
  }
}
