@charset "UTF-8";
/* CSS Document */



/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/

/*url(../common/img/bg.jpg)*/

.txt_al_r{
	text-align:right;
	}
.fw_bold{
	font-weight:bold;
	}

.border {border-bottom:solid 1px #e6e6e6;}
	
	
	.arrow{
		display:inline-block;
		color: #274a78;
		font-weight:bold;
		position:relative;
		padding-left:10px;
		}
	.arrow:hover{
		text-decoration:underline;
		color: #274a78;
		}
	.arrow::before{
		position:absolute;
		top:0.8em;
		content:"";
		left: 0;
		box-sizing: border-box;
		width: 4px;
		height: 4px;
		border: 4px solid transparent;
		border-left: 4px solid #274a78;
		}

	.arrow_box{
		display:inline-block;
		border:1px solid #B7C2CD;
		color: #274a78;
		font-weight:bold;
		position:relative;
		padding:5px 10px 5px 30px;
		}
	.arrow_box:hover{
		text-decoration:underline;
		color: #274a78;
		}
	.arrow_box span{
		display:inline-block;
		position:relative;
		padding-left:20px;
		margin-left:-20px;
		}
	.arrow_box span::before{
		position:absolute;
		content:"";
		width: 12px;
		height: 12px;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		background: #274a78;
		top:50%;
		margin-top:-6px;
		left:0px;
		}
	.arrow_box span::after{
		position:absolute;
		content:"";
		left: 5px;
		top:50%;
		margin-top:-3px;
		box-sizing: border-box;
		width: 3px;
		height: 3px;
		border: 3px solid transparent;
		border-left: 3px solid #fff;
		}
		
		
		
				#main dl dd.on a{
					background-color:#274A78;
					color:#fff;
					}
					
					
					.disc_list{
						}
						.disc_list li{
							position:relative;
							padding-left:10px;
							}
						.disc_list li::before{
							content:"";
							width:3px;
							height:3px;
							border-radius:100%;
							background-color:#000;
							position:absolute;
							left:0;
							top:0.9em;
							}

/* ++++++++++++++++++++++++++++++++++++++++++++++    PC    ++++++++++++++++++++++++++++++++++++++++++++++  */
@media screen and (min-width: 801px), print {
	
	
	#wrapper {
		padding-bottom: 0;
	}
	
	.h2_wrap{
		margin-top:60px;
		border-bottom:solid 1px #e6e6e6;
		padding-bottom:60px;
		}
		.h2_wrap h2{
			text-align:center;
			color:#274A78;
			font-size:24px;
			}
		
	#main{
		padding:100px 0;
		}
		#main .area{
			}
			#main .main_box{
				}
				
	
				#main .main_box h3{
					margin-bottom: 60px;
					color:#274A78;
					font-size:28px;
					font-weight:bold;
					}
				#main .main_box h4{
					position: relative;
					margin-bottom: 60px;
					font-size: 20px;
					}
				#main .main_box h4::after{
					content: "";
					position: absolute;
					width: 83px;
					height: 3px;
					background-color: #000;
					left: 0;
					bottom: -30px;
					}
				#main .main_box h5{
					font-size:17px;
					font-weight:bold;
					margin-top:25px;
					margin-bottom:30px;
					}
				#main .main_box .sec{
					line-height:2em;
					}
					
					#main .main_box > .sec:not(:nth-of-type(1)){
						margin-top:100px;
						}
						
						
				#main .main_box .sec2{
					}
					#main .main_box .sec2 .photo{
						float:left;
						width:187px;
						}
						#main .main_box .sec2 .photo img{
							width:100%;
							}
					#main .main_box .sec2 .detail_box{
						float:right;
						width:73%;
						width:calc(100% - 187px);
						padding-left:30px;
						box-sizing:border-box;
						}
					#main .main_box .sec2 .detail_box div + div{
						margin-top:15px;
						}
						
						
				#main .main_box .sec3 >  div{
					margin-left:-3.333%;
					}
					#main .main_box .sec3 > div > div{
						float:left;
						width:30%;
						margin-left:3.333%;
						}
						#main .main_box .sec3 > p{
							margin-top:40px;
							}
								
				
				#main .main_box .sec1{
					width:47%;
					float:left;
					}
				#main .main_box .sec2{
					margin-top:0!important;
					width:47%;
					float:right;
					}
					
			
			
			
						
			#main #rightNav{
				float:right;
				width:250px;
				border-top:3px solid #000;
				border-bottom:3px solid #000;
				text-align:center;
				font-weight:bold;
				}
				#main #rightNav dl dt{
					font-size:18px;
					padding:30px 0;
					}
				#main #rightNav dl dd{
					border-top:1px solid #C1C1C1;
					}
					#main #rightNav dl dd a{
						text-align:left;
						display:block;
						padding:20px 15px;
						line-height: 1.6em;
						}
				
			
			.sec4{
				clear:both;
				padding-top:90px;
				text-align:center;
				}
			.sec4 p{
				margin-top:10px;
				}
				.sec4 a{
					padding: 35px 40px 20px 50px;
					width: 320px;
					height: 100px;
					box-sizing: border-box;
					}
						
		
		
}









/* ++++++++++++++++++++++++++++++++++++++++++++++    sp    ++++++++++++++++++++++++++++++++++++++++++++++  */
@media only screen and (max-width: 800px) {
	
	
	.h2_wrap{
		border-bottom:solid 1px #e6e6e6;
		padding-bottom:40px;
		padding: 40px 10px;
		}
		.h2_wrap h2{
			text-align:center;
			color:#274A78;
			font-size:24px;
			}
				
			
		
	#main{
		margin-top: 35px;
		}
		#main .area{
			box-sizing:border-box;
			}
			#main .main_box{
				padding: 0 10px;
				}
				
				#main .main_box h3{
					margin-bottom: 40px;
					color:#274A78;
					font-size:1.4em;
					font-weight:bold;
					line-height: 1.8em;
					}
				#main .main_box h4{
					position: relative;
					font-size:1.2em;
					margin-bottom: 50px;
					}
				#main .main_box h4::after{
					content: "";
					position: absolute;
					width: 83px;
					height: 3px;
					background-color: #000;
					left: 0;
					bottom: -20px;
					}
				#main .main_box h5{
					font-size:16px;
					font-weight:bold;
					margin-bottom:20px;
					}
				#main .main_box .sec{
					line-height:2em;
					}
					
					#main .main_box > .sec:not(:nth-of-type(1)){
						margin-top:70px;
						}
						
						
				#main .main_box .sec2{
					}
					#main .main_box .sec2 .photo{
						text-align:center;
						}
						#main .main_box .sec2 .photo img{
							max-width:100%;
							}
					#main .main_box .sec2 .detail_box{
						margin-top:20px;
						box-sizing:border-box;
						}
					#main .main_box .sec2 .detail_box div + div{
						margin-top:15px;
						}
						
						
				#main .main_box .sec3 >  div{
					margin-top:-20px;
					}
					#main .main_box .sec3 > div > div{
						width:49%;
						margin-top:20px;
						}
					#main .main_box .sec3 > div > div:nth-of-type(odd){
						float:left;
						clear:both;
						}
					#main .main_box .sec3 > div > div:nth-of-type(even){
						float:right;
						}
						#main .main_box .sec3 > p{
							margin-top:40px;
							}
			
			
			
			#main #rightNav dl{
				margin-top:50px;
				border-top:3px solid #000;
				border-bottom:3px solid #000;
				text-align:center;
				font-weight:bold;
				}
				#main #rightNav dl dt{
					font-size:16px;
					padding:20px 0;
					}
				#main #rightNav dl dd{
					border-top:1px solid #C1C1C1;
					}
					#main #rightNav dl dd a{
						text-align:left;
						display:block;
						padding:15px 15px;
						line-height: 1.6em;
						}
						
						
				.sec4 a{
					text-align:center;
					padding: 15px 0 0;
					width: 100%;
					height: 60px;
					box-sizing: border-box;
					}

}



/****************************************************/

/* ++++++++++++++++++++++++++++++++++++++++++++++    PC    ++++++++++++++++++++++++++++++++++++++++++++++  */
@media screen and (min-width: 801px), print {

.txtC{
text-align: center;
}

#main .main_box div + div{
	margin-top:15px;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++    sp    ++++++++++++++++++++++++++++++++++++++++++++++  */
@media only screen and (max-width: 800px) {

.txtC{
text-align: center;
}


#main .main_box div + div{
	margin-top:15px;
}

}
