﻿@charset "UTF-8";


/* recruit */
.slide_main {
	background-color: #00649E;
}

.ani_01 {
	position: relative;
	overflow: hidden;
	display: block;
	width: 940px;
	height: 600px;
}

	.ani_01 img {
		position: absolute;
		top: -940px;
		bottom: -940px;
		right: -940px;
		left: -940px;
		margin: auto;
		width: 100px;
		max-width: none;
	}

.ani_02 {

}

	.ani_02 img {
		position: absolute;
		width: 250px;
		max-width: none;
		margin-left: 660px;
		margin-top: 485px;
		opacity: 0;
	}

.ani_03 img {
	position: absolute;
	width: 239px;
	max-width: none;
	margin-left: 662px;
	margin-top: 538px;
}

.recruit_top #rc_maincont .ms_sec .rc_title_bk {
	text-align: left;
	font-family: "FOT-ロダンカトレア Pro DB";
	letter-spacing: 0.2em;
	background: url();
	display: block;
	font-size: 1.8rem;
	color: #0065A4;
	border-bottom: 2px solid #0065A4;
	margin: 0 0 8px 0;
	padding: 0 0 6px 0;
}

.recruit_top .rc_newslist {
	text-align: left;
	border-top: 0;
}


@media (max-width:768px) {
	.slide_main {
		width: 100%;
		height: 500px;
		position: relative;
	}

	.ani_01 {
		position: relative;
		overflow: hidden;
		display: block;
		width: 100%;
		height: 500px;
	}

		.ani_01 img {
			position: absolute;
			top: -100%;
			bottom: -100%;
			right: -100%;
			left: -100%;
			margin: auto;
			width: 300px;
			max-width: none;
		}

	.ani_02 {
	}

		.ani_02 img {
			position: absolute;
			width: 25%;
			right: 0;
			bottom: 0;
			margin-bottom: 8%;
			margin-right: 3%;
			opacity: 0;
		}

	.ani_03 img {
		position: absolute;
		width: 25%;
		right: 0;
		bottom: 0;
		margin-bottom: 4%;
		margin-right: 3%;
	}
}

@media (max-width:480px) {
	.slide_main {
		width: 100%;
		height: 350px;
		position: relative;
	}
	.ani_01 {
		position: relative;
		overflow: hidden;
		display: block;
		width: 100%;
		height: 350px;
	}

	.ani_02 img {
		position: absolute;
		width: 35%;
		right: 0;
		bottom: 0;
		margin-bottom: 9%;
		margin-right: 5%;
		opacity: 0;
	}

	.ani_03 img {
		position: absolute;
		width: 35%;
		right: 0;
		bottom: 0;
		margin-bottom: 4%;
		margin-right: 5%;
	}

	.recruit_top #rc_maincont .ms_sec .rc_title_bk {
		font-size: 1.6rem;
	}

	.recruit_top .rc_newslist li dd {
		padding-left: 0;
	}
}



/* TOP */

#rc_maincont .sk_btn {
	text-align: center;
	padding: 8px 0 36px 0;
}

	#rc_maincont .sk_btn a {
		padding: 10px 0 16px 0;
		display: block;
		color: #fff;
		background: #DA2027;
		text-decoration: none;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
	}

		#rc_maincont .sk_btn a:hover {
			opacity:0.8;
		}

		#rc_maincont .sk_btn a .min_txt1 {
			display: block;
			font-size: 4.2rem;
			line-height: 1;
			font-family: "FOT-マティス ProN EB";
			letter-spacing: 0.15em;
			margin: 0 0 0.4em 0;
		}

		#rc_maincont .sk_btn a .min_txt2 {
			display: block;
			font-size: 2.6rem;
			line-height: 1;
			font-family: "FOT-マティス ProN EB";
			letter-spacing: 4px;
		}

	#rc_maincont .sk_btn p {
		margin: 4px 0 0 0;
	}


#rc_maincont .entry_btn {
	margin: 8px 0 36px 0;
	text-align: center;
}

	#rc_maincont .entry_btn a {
		display: block;
		padding: 18px 10px;
		font-size: 2.2rem;
		letter-spacing: 0.1em;
		color: #fff;
		background: #00649F;
		text-decoration: none;
		line-height: 1;
		transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
	}

		#rc_maincont .entry_btn a:hover {
			opacity: 0.7;
		}

	#rc_maincont .entry_btn a + a{
		margin-top:20px;
	}

	#rc_maincont .entry_btn p {
		margin: 4px 0 0 0;
	}


@media screen and (max-width: 768px) {
	#rc_maincont .sk_btn {
		padding: 0 0 3% 0;
	}

	#rc_maincont .entry_btn {
		margin: 0 0 3% 0;
	}

		#rc_maincont .entry_btn a {
			font-size: 1.8rem;
			letter-spacing: 0;
		}

			#rc_maincont .entry_btn a + a {
				margin-top: 12px;
			}
}


@media screen and (max-width: 480px) {
	#rc_maincont .sk_btn {
		padding: 0 0 5% 0;
	}

		#rc_maincont .sk_btn a {
			padding: 6px 0 10px 0;
		}

			#rc_maincont .sk_btn a .min_txt1 {
				font-size: 2.8rem;
			}

			#rc_maincont .sk_btn a .min_txt2 {
				font-size: 1.6rem;
			}

		#rc_maincont .sk_btn p {
			font-size: 1.2rem;
		}

	#rc_maincont .entry_btn {
		margin: 0 0 5% 0;
	}

		#rc_maincont .entry_btn a {
			padding: 16px 2px;
			font-size: 1.6rem;
		}

			#rc_maincont .entry_btn a + a {
				margin-top: 8px;
			}

		#rc_maincont .entry_btn p {
			font-size: 1.2rem;
		}
}

#rc_maincont .ms_sec {
	margin: 0 0 36px 0;
	text-align: center;
}

	#rc_maincont .ms_sec p {
		font-size: 1.6rem;
		line-height: 2;
	}

	#rc_maincont .ms_sec h2 {
		display: inline-block;
		font-size: 2.8rem;
		font-family: "I-OTF新ゴシックPro M";
		line-height: 1.3;
		letter-spacing: 0.2em;
		color: #0065A4;
		border-bottom: 2px solid #0065A4;
		padding: 0 0 6px 0;
		margin: 0 0 30px 0;
	}

.g_index #rc_maincont .ms_sec h2 {
	display:block;
	font-size: 2.5rem;
}

.g_comp #rc_maincont .ms_sec h2 {
	font-family: "FOT-ロダンカトレア Pro B";
}

#rc_maincont .ms_sec h3 {
	font-size: 2.2rem;
	font-family: "I-OTF新ゴシックPro B";
	line-height: 1.3;
	letter-spacing: 0.2em;
	color: #DA2027;
	margin: 0 0 36px 0;
	text-align: center;
}

#rc_maincont .ms_sec .img_center {
	margin: 0 auto 30px auto;
}


#rc_maincont .ms_sec .big_arrow {
	width: 200px;
	height: 84px;
	margin: 0 auto;
	font-size: 0;
	text-align: left;
	text-indent: -940px;
}

	#rc_maincont .ms_sec .big_arrow:before {
		content: "";
		display: block;
		margin: 0 auto;
		width: 120px;
		height: 30px;
		background: #DA2027;
	}

	#rc_maincont .ms_sec .big_arrow:after {
		content: "";
		display: block;
		border-top: 100px solid #DA2027;
		border-left: 100px solid transparent;
		border-right: 100px solid transparent;
		transform-origin: left top;
		transform: scaleY(.5);
	}

#rc_maincont .normal_arrow {
	font-size: 20%;
	text-indent: -940px;
	overflow: hidden;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 10px 0px 10px;
	border-color: #0065A4 transparent transparent transparent;
	display: block;
	margin: 0 auto 38px auto;
}

#rc_maincont .ms_sec .normal_arrow {
	margin: 0 auto 20px auto;
}

#rc_maincont .ms_sec .sr_list{
	text-align:left;
	padding-bottom:12px;
}

	#rc_maincont .ms_sec .sr_list > li {
		font-size: 1.5rem;
		line-height: 1.7;
		counter-increment: sr;
	}

	#rc_maincont .ms_sec .sr_list > li:after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 10px 0px 10px;
		border-color: #DA2027 transparent transparent transparent;
		display:block;
		margin: 10px auto;
	}

	#rc_maincont .ms_sec .sr_list > li:last-child:after {
		content: none;
	}

	#rc_maincont .ms_sec .sr_list > li > h3 {
		font-size: 2.0rem;
		text-align:left;
		line-height: 1.3;
		color: #0065A4;
		padding: 0 0 10px 36px;
		margin:0;
		font-family: "I-OTF新ゴシックPro B";
		letter-spacing: 0.2em;
		position:relative;
	}

		#rc_maincont .ms_sec .sr_list > li > h3:before {
			content: counter(sr);
			display: block;
			font-size: 1.5rem;
			letter-spacing: 0;
			text-align: center;
			color: #fff;
			background-color: #0065A4;
			width: 28px;
			height: 28px;
			line-height: 28px;
			position: absolute;
			top: 0;
			left: 0;
			border-radius: 4px;
			-webkit-border-radius: 4px;
			-moz-border-radius: 4px;
		}

		#rc_maincont .ms_sec .sr_list > li > dl {
			margin-left:36px;
		}


@media screen and (max-width: 768px) {
	#rc_maincont .ms_sec {
		margin: 0 0 3% 0;
	}

		#rc_maincont .ms_sec h2 {
			font-size: 2.4rem;
			padding: 0 0 5px 0;
			margin: 0 0 3% 0;
		}

	.g_index #rc_maincont .ms_sec h2 {
		font-size: 2.4rem;
	}

	#rc_maincont .ms_sec h3 {
		font-size: 2.0rem;
		letter-spacing: 0;
		margin: 0 0 3% 0;
		letter-spacing: 0.1em;
	}

	#rc_maincont .ms_sec .img_center {
		margin: 0 auto 3% auto;
	}
}

@media screen and (max-width: 480px) {
	#rc_maincont .ms_sec {
		margin: 0 0 5% 0;
	}

		#rc_maincont .ms_sec p {
			font-size: 1.4rem;
			line-height: 1.75;
			text-align: left;
		}

		#rc_maincont .ms_sec h2 {
			font-size: 1.7rem;
			line-height: 1.3;
			letter-spacing: 0;
			border-bottom: 1px solid #0065A4;
			padding: 0 0 3px 0;
			margin: 0 0 4% 0;
			text-align: left;
		}

	.g_index #rc_maincont .ms_sec h2 {
		font-size: 1.7rem;
		letter-spacing: 0.2em;
	}

	#rc_maincont .ms_sec h3 {
		font-size: 1.6rem;
	}

	#rc_maincont .ms_sec .big_arrow {
		width: 100px;
		height: 44px;
	}

		#rc_maincont .ms_sec .big_arrow:before {
			width: 60px;
			height: 15px;
		}

		#rc_maincont .ms_sec .big_arrow:after {
			border-top: 50px solid #DA2027;
			border-left: 50px solid transparent;
			border-right: 50px solid transparent;
		}

	#rc_maincont .normal_arrow {
		margin: 0 auto 5% auto;
	}

	#rc_maincont .ms_sec .normal_arrow {
		margin: 0 auto 3% auto;
	}

	.br_nosmp {
		display:none;
	}

	#rc_maincont .ms_sec .sr_list > li {
		font-size: 1.4rem;
		line-height: 1.5;
	}

		#rc_maincont .ms_sec .sr_list > li > h3 {
			font-size: 1.6rem;
			padding: 0 0 8px 30px;
		}

			#rc_maincont .ms_sec .sr_list > li > h3:before {
				font-size: 1.2rem;
				width: 22px;
				height: 22px;
				line-height: 22px;
			}

		#rc_maincont .ms_sec .sr_list > li > dl {
			margin-left: 0;
		}
	
}

#rc_maincont h3.title_blue {
	font-size: 2.2rem;
	font-family: "I-OTF新ゴシックPro M";
	line-height: 1.3;
	background: #004685;
	color: #FFFFFF;
	display: block;
	text-align: center;
	padding: 8px 4px 10px 4px;
	letter-spacing: 0.2em;
	margin:0 0 18px 0;
}

#rc_maincont .job_list {
	text-align:left;
	padding:0 0 12px 0;
}

	#rc_maincont .job_list > li {
		margin: 0 0 36px 0;
		counter-increment: job;
		zoom: 100%;
	}

	#rc_maincont .job_list > li:last-child {
		margin: 0;
	}

		#rc_maincont .job_list > li:after {
			content: "";
			clear: both;
			height: 0;
			display: block;
			visibility: hidden;
		}

		#rc_maincont .job_list > li > h4 {
			font-size: 2.2rem;
			font-family: "I-OTF新ゴシックPro M";
			line-height: 1.3;
			letter-spacing: 0.2em;
			color: #0065A9;
			border-bottom: 2px solid #0065A9;
			padding: 0 0 6px 0;
			margin: 0 0 12px 48px;
			position: relative;
		}

			#rc_maincont .job_list > li > h4:before {
				width: 36px;
				height: 36px;
				line-height: 36px;
				font-size: 2.0rem;
				font-weight:bold;
				text-align: center;
				letter-spacing: 0;
				color: #fff;
				content: counter(job);
				position: absolute;
				top: 0;
				left: -48px;
				background: #0065A9;
				border-radius: 4px;
				-webkit-border-radius: 4px;
				-moz-border-radius: 4px;
			}

		#rc_maincont .job_list > li > dl {
			line-height: 2;
		}

#rc_maincont .p_left {
	width: 40%;
	float: left;
}

#rc_maincont .p_right {
	width: 40%;
	float: right;
}

#rc_maincont .txt_right {
	width: 52%;
	float: right;
}

#rc_maincont .txt_left {
	width: 52%;
	float: left;
}

#rc_maincont .txt_left p{
	text-align: left;
	font-size: 1.4rem;
}

#rc_maincont .txt_left p.fz11 {
	font-size: 1.1rem;
	line-height:1.4;
}

@media screen and (max-width: 768px) {
	#rc_maincont h3.title_blue {
		font-size: 2.0rem;
		letter-spacing: 0;
	}

	#rc_maincont .job_list > li {
		margin: 0 0 4% 0;
	}

		#rc_maincont .job_list > li > h4 {
			font-size: 2.0rem;
			letter-spacing: 0;
			padding: 0 0 5px 0;
			margin: 0 0 10px 42px;
		}

			#rc_maincont .job_list > li > h4:before {
				width: 32px;
				height: 32px;
				line-height: 32px;
				font-size: 1.8rem;
				left: -42px;
			}

	#rc_maincont .txt_right,
	#rc_maincont .txt_left{
		width: 56%;
	}

}

@media screen and (max-width: 480px) {
	#rc_maincont h3.title_blue {
		font-size: 1.6rem;
	}

	#rc_maincont .job_list > li {
		margin: 0 0 5% 0;
	}

	#rc_maincont .job_list > li > h4 {
		font-size: 1.6rem;
		padding: 0 0 3px 0;
		margin: 0 0 10px 24px;
		border-bottom: 1px solid #0065A9;
	}

		#rc_maincont .job_list > li > h4:before {
			width: 22px;
			height: 22px;
			line-height: 22px;
			font-size: 1.2rem;
			left: -24px;
		}
	#rc_maincont .p_left,
	#rc_maincont .p_right {
		width: auto;
		float: none;
	}

	#rc_maincont .p_right {
		margin-bottom:8px;
	}

	#rc_maincont .job_list > li > dl {
		font-size:1.3rem;
		line-height:1.7;
	}

	#rc_maincont .txt_right,
	#rc_maincont .txt_left{
		width: auto;
		float: none;
		margin-bottom: 8px;
	}

}


.bl_bd {
	display: block;
	border: 3px solid #036EB6;
	padding: 20px;
	margin: 16px 0 0 0;
}

	.bl_bd ul {
		margin: 0 0 0 1.5em;
		line-height: 1.7;
		font-size: 1.3rem;
	}

		.bl_bd ul li {
			margin:0 0 0.5em 0;
			position:relative;
		}

		.bl_bd ul li:last-child{
			margin: 0;
		}

			.bl_bd ul li:before {
				content: "■";
				color: #036EB6;
				position: absolute;
				top: 0;
				left: -1.5em;
			}

@media screen and (max-width: 480px) {
	.bl_bd {
		border: 2px solid #036EB6;
		padding: 12px 8px;
		margin: 10px 0 0 0;
	}

		.bl_bd ul {
			line-height: 1.5;
			font-size: 1.2rem;
		}

			.bl_bd ul li {
				margin: 0 0 0.3em 0;
			}
}

	/* parts */

	#gd_header {
		padding: 40px 40px 12px 40px;
		text-align: center;
	}

		#gd_header h1 {
			display: inline-block;
			font-size: 2.8rem;
			font-family: "I-OTF新ゴシックPro M";
			line-height: 1.3;
			letter-spacing: 0.2em;
			color: #0065A4;
			border-bottom: 2px solid #0065A4;
			padding: 0 0 6px 0;
			margin: 0 0 30px 0;
		}

		#gd_header p {
			font-size: 1.6rem;
			line-height: 2;
		}

	#gd_navi {
		margin-top: 50px;
	}

		#gd_navi ul {
			margin: 0 -5px 0 -5px;
			text-align: center;
			zoom: 100%;
		}

			#gd_navi ul:after {
				content: "";
				clear: both;
				height: 0;
				display: block;
				visibility: hidden;
			}

			#gd_navi ul.navi_4clm li {
				width: 25%;
			}

			#gd_navi ul.navi_3clm li {
				width: 33.3%;
			}

			#gd_navi ul li {
				box-sizing: border-box;
				float: left;
				padding: 0 5px;
			}

				#gd_navi ul li a {
					display: block;
					background: #00649F;
					border-bottom: 8px solid #3C7FB1;
					color: #fff;
					font-size: 1.6rem;
					line-height: 55px;
					height: 60px;
					text-decoration: none;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
				}

					#gd_navi ul li a:hover,
					#gd_navi ul li a.nv_self {
						opacity: 0.8;
					}


	@media screen and (max-width: 768px) {
		#gd_header {
			padding: 4% 0 1.5% 0;
			width: 90.6%;
			margin: 0 auto;
		}

			#gd_header h1 {
				font-size: 2.4rem;
				padding: 0 0 5px 0;
				margin: 0 0 3% 0;
			}

			#gd_header p {
				font-size: 1.5rem;
			}

		#gd_navi {
			margin-top: 5%;
		}

			#gd_navi ul {
				margin: 0 -2px 0 -2px;
			}

				#gd_navi ul li {
					padding: 0 2px;
				}

					#gd_navi ul li a {
						border-bottom: 6px solid #3C7FB1;
						font-size: 1.4rem;
						line-height: 42px;
						height: 48px;
					}
	}

	@media screen and (max-width: 480px) {
		#gd_header {
			padding: 5% 0 1% 0;
		}

			#gd_header h1 {
				font-size: 1.7rem;
				line-height: 1.3;
				letter-spacing: 0;
				border-bottom: 1px solid #0065A4;
				padding: 0 0 3px 0;
				margin: 0 0 4% 0;
			}

			#gd_header p {
				font-size: 1.4rem;
				line-height: 1.75;
				text-align: left;
			}

		#gd_navi {
			margin-top: 8%;
		}

			#gd_navi ul {
				margin: 0;
			}

				#gd_navi ul.navi_4clm li {
					width: auto;
				}

				#gd_navi ul.navi_3clm li {
					width: auto;
				}

				#gd_navi ul li {
					padding: 0 0 2px 0;
					float: none
				}

					#gd_navi ul li a {
						border-bottom: 4px solid #3C7FB1;
						line-height: 30px;
						height: 34px;
					}
	}


	/* interview index */

	#gd_list {
		margin: 0 -47px 0 -47px;
		zoom: 100%;
	}

		#gd_list:after {
			content: "";
			clear: both;
			height: 0;
			display: block;
			visibility: hidden;
		}

		#gd_list li {
			width: 33.3%;
			float: left;
			box-sizing: border-box;
			padding: 0 7px 14px 7px;
		}

			#gd_list li a {
				display: block;
				background: #0065A9;
				color: #fff;
				text-decoration: none;
			}

				#gd_list li a:hover {
					opacity: 0.8
				}

				#gd_list li a dl {
					padding: 6px 10px;
					line-height: 1;
					position: relative;
				}


					#gd_list li a dl dt {
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
					}

					#gd_list li a dl .text01 {
						font-size: 1.2rem;
						margin: 0 0 6px 0;
					}

					#gd_list li a dl .text02 {
						font-size: 1.0rem;
						margin: 0 0 6px 0;
					}

					#gd_list li a dl .text03 {
						font-size: 1.8rem;
					}

					#gd_list li a dl dd {
						position: absolute;
						bottom: 6px;
						right: 10px;
						border: 1px solid #fff;
						font-size: 1.1rem;
						display: block;
						width: 84px;
						height: 20px;
						padding-left: 14px;
						box-sizing: border-box;
						line-height: 20px;
						text-align: center;
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
					}

						#gd_list li a dl dd:before {
							position: absolute;
							content: ">";
							background: #fff;
							color: #0065A9;
							display: block;
							width: 14px;
							height: 20px;
							text-align: center;
							top: 0;
							left: 0;
						}

	@media screen and (max-width: 768px) {
		#gd_list {
			margin: 0 -4px 0 -4px;
		}

			#gd_list li {
				width: 50%;
				padding: 0 4px 8px 4px;
			}

				#gd_list li a dl .text03 {
					font-size: 1.6rem;
				}
	}

	@media screen and (max-width: 480px) {
		#gd_list {
			margin: 0;
		}

			#gd_list li {
				width: auto;
				float: none;
				box-sizing: border-box;
				padding: 0 0 6px 0;
				zoom: 100%;
			}

				#gd_list li:after {
					content: "";
					clear: both;
					height: 0;
					display: block;
					visibility: hidden;
				}

				#gd_list li a img {
					height: 112px;
					width: auto;
					float: left;
				}

				#gd_list li a dl {
					height: 112px;
					box-sizing: border-box;
					padding: 14px 10px 14px 160px;
				}

					#gd_list li a dl dd {
						bottom: 14px;
						right: 10px;
					}
	}


	/* interview */

	.g_interview .rc_mainimg {
	}

	#iv_profile {
		width: 82%;
		min-height: 104px;
		color: #fff;
		background: #024680;
		float: right;
		box-sizing: border-box;
		padding: 18px 40px 20px 130px;
		position: relative;
		overflow: hidden;
	}

		#iv_profile h1 {
			line-height: 1.2;
		}

			#iv_profile h1 .iv_cat {
				font-size: 2.1rem;
				display: block;
				margin: 0 0 12px 0;
			}

			#iv_profile h1 .iv_rname {
				font-size: 1.4rem;
				display: inline-block;
			}

			#iv_profile h1 .iv_nickname {
				font-size: 2.1rem;
				display: inline-block;
			}


		#iv_profile .iv_data {
			font-size: 1.3rem;
			display: inline-block;
			line-height: 1.5;
			text-align: right;
			position: absolute;
			bottom: 25px;
			right: 40px;
		}

		#iv_profile:before {
			content: "";
			width: 100%;
			height: 10px;
			position: absolute;
			background: #0265AC;
			bottom: 0;
			left: 0;
		}

		#iv_profile:after {
			content: "";
			height: 180px;
			width: 180px;
			position: absolute;
			background: #fff;
			top: 0;
			left: 0;
			transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			-o-transform: rotate(45deg);
			transform-origin: left top;
		}

	@media screen and (max-width: 768px) {
		#iv_profile {
			width: auto;
			min-height: 0;
			float: none;
			padding: 15px 4.7% 25px 4.7%;
		}

			#iv_profile h1 .iv_cat {
				font-size: 1.8rem;
				margin: 0 0 8px 0;
			}

			#iv_profile h1 .iv_rname {
				font-size: 1.3rem;
			}

			#iv_profile h1 .iv_nickname {
				font-size: 1.8rem;
			}

			#iv_profile .iv_data {
				right: 4.7%;
			}

			#iv_profile:after {
				content: none;
			}
	}

	@media screen and (max-width: 480px) {
		#iv_profile {
			padding: 12px 4.7% 20px 4.7%;
		}

			#iv_profile h1 {
				box-sizing:border-box;
				display:inline-block;
			}

			#iv_profile h1 .iv_cat {
				font-size: 1.5rem;
				margin: 0 0 4px 0;
			}

			#iv_profile h1 .iv_rname {
				font-size: 1.2rem;
			}

			#iv_profile h1 .iv_nickname {
				font-size: 1.5rem;
			}

			#iv_profile .iv_data {
				font-size: 1.2rem;
				bottom: 20px;
				position:static;
				float:right;
			}

			#iv_profile:before {
				height: 8px;
			}
	}

	#rc_maincont > .vi_wrap {
		margin: 0 0 40px 0;
		zoom: 100%;
	}

		#rc_maincont > .vi_wrap:after {
			content: "";
			clear: both;
			height: 0;
			display: block;
			visibility: hidden;
		}

		#rc_maincont > .vi_wrap > h2 {
			font-size: 2.6rem;
			font-family: "I-OTF新ゴシックPro M";
			line-height: 1.3;
			letter-spacing: 0.2em;
			color: #0065A9;
			border-bottom: 2px solid #E9262F;
			padding: 2px 0 7px 0;
			margin: 0 0 20px 54px;
			position: relative;
		}

			#rc_maincont > .vi_wrap > h2.nols {
				letter-spacing: 0.12em;
			}

			#rc_maincont > .vi_wrap > h2:before {
				width: 44px;
				height: 44px;
				text-align: center;
				content: "";
				position: absolute;
				top: 0;
				left: -54px;
				background: #00649E url(201801/icon_chi.png) no-repeat center center;
				background-size: 100% 100%;
				border-radius: 4px;
				-webkit-border-radius: 4px;
				-moz-border-radius: 4px;
			}

			#rc_maincont > .vi_wrap > h2 i {
				font-size: 2.8rem;
				font-family: "FrutigerLTPro-BoldItalic";
				letter-spacing: 1px;
				font-style:normal;
			}

		#rc_maincont > .vi_wrap > p {
			font-size: 1.5rem;
			line-height: 1.75;
			margin: 0 0 0.75em 54px;
		}

			#rc_maincont > .vi_wrap > p.fz11 {
				font-size: 1.1rem;
				line-height: 1.4;
			}

		#rc_maincont > .vi_wrap > ul {
			font-size: 1.5rem;
			line-height: 1.5;
			margin: 0 0 0.25em 72px;
			list-style-type: disc;
		}

			#rc_maincont > .vi_wrap > ul > li {
				padding: 0 0 0.5em 0;
			}

				#rc_maincont > .vi_wrap > ul > li > dl {
					padding: 0.25em 0 0 0;
					font-size: 1.4rem;
				}

					#rc_maincont > .vi_wrap > ul > li > dl > dt,
					#rc_maincont > .vi_wrap > ul > li > dl > dd {
						padding: 0 0 0.25em 0;
					}


	@media screen and (max-width: 768px) {
		#rc_maincont {
			margin: 4% auto 0 auto;
		}

			#rc_maincont > .vi_wrap {
				margin: 0 0 4% 0;
			}

				#rc_maincont > .vi_wrap > h2 {
					font-size: 2.3rem;
					padding: 0 0 6px 0;
					margin: 0 0 2% 48px;
				}

					#rc_maincont > .vi_wrap > h2:before {
						width: 38px;
						height: 38px;
						left: -48px;
					}

					#rc_maincont > .vi_wrap > h2 i {
						font-size: 2.5rem;
					}

				#rc_maincont > .vi_wrap > p {
					margin: 0 0 0.75em 48px;
				}

				#rc_maincont > .vi_wrap > ul {
					margin: 0 0 0.25em 66px;
				}
	}

	@media screen and (max-width: 480px) {
		#rc_maincont {
			margin: 5% auto 0 auto;
		}

			#rc_maincont > .vi_wrap {
				margin: 0 0 5% 0;
			}

				#rc_maincont > .vi_wrap > h2 {
					font-size: 1.7rem;
					line-height: 1.3;
					letter-spacing: 2px;
					border-bottom: 1px solid #E9262F;
					padding: 0 0 3px 30px;
					margin: 0 0 3% 0;
					position:relative;
					min-height:30px;
					box-sizing:border-box;
				}

					#rc_maincont > .vi_wrap > h2.nols {
						letter-spacing: 2px;
					}

					#rc_maincont > .vi_wrap > h2:before {
						width: 26px;
						height: 26px;
						left:0;
						top:0;
					}

					#rc_maincont > .vi_wrap > h2 i {
						font-size: 1.8rem;
					}

				#rc_maincont > .vi_wrap > p {
					font-size: 1.4rem;
					line-height: 1.6;
					margin: 0 0 0.75em 0;
				}

				#rc_maincont > .vi_wrap > ul {
					font-size: 1.4rem;
					line-height: 1.4;
					margin: 0 0 0.25em 1.5em;
				}

					#rc_maincont > .vi_wrap > ul > li > dl {
						font-size: 1.3rem;
					}
	}



	#rc_maincont .vi_return {
		text-align: center;
		padding-top: 18px;
	}

		#rc_maincont .vi_return a {
			display: inline-block;
			padding: 4px 32px;
			font-size: 1.6rem;
			line-height: 1;
			background: url(201801/icon_return.png) no-repeat left center;
			color: #00639D;
			text-decoration: none;
			transition: all 0.5s ease;
			-webkit-transition: all 0.5s ease;
			-moz-transition: all 0.5s ease;
			-o-transition: all 0.5s ease;
		}

			#rc_maincont .vi_return a:hover {
				opacity: 0.7;
			}


	@media screen and (max-width: 768px) {

		#rc_maincont .vi_return {
			padding-top: 3%;
		}
	}

	@media screen and (max-width: 480px) {
		#rc_maincont .vi_return {
			padding-top: 5%;
		}

			#rc_maincont .vi_return a {
				padding: 2px 28px;
				font-size: 1.5rem;
				background: url(201801/icon_return.png) no-repeat left center;
				background-size: 26px 18px;
			}
	}


/* 2019 */
#rc_maincont > .vi_wrap > .con_warp {
	margin: 0 0 0 54px;
}

#rc_maincont > .vi_wrap .table_basic01 {
	width:55%;
	float:left;
	margin:0;
}


	#rc_maincont > .vi_wrap .table_basic01 tbody th {
		text-align: center;
		padding: 6px;
		line-height:1;
	}

	#rc_maincont > .vi_wrap .table_basic01 tbody td {
		padding:10px;
		line-height:1.4;
	}

	#rc_maincont > .vi_wrap .table_basic01 tbody tr td:first-child {
		text-align:center;
		vertical-align:middle;
		padding:10px 4px;
		white-space:nowrap;
	}

#rc_maincont > .vi_wrap .p_right {
	margin-left: 3%;
}

	#rc_maincont > .vi_wrap .p_right.p_nsn {
		margin: 0;
		width:50%;
	}


#rc_maincont > .vi_wrap .nsnbox {
	margin-top:10%;
	width:46%;
	float:left;
	position:relative;
}

	#rc_maincont > .vi_wrap .nsnbox .nsn_name {
		height: 0;
		padding: 0 0 29.5% 0;
		background: url(/-/media/cojp/recruit/files_2019/201812/nsnbase.png) no-repeat center top;
		background-size:contain;
		font-size:20%;
		text-indent:-940px;
		overflow:hidden;
	}

	#rc_maincont > .vi_wrap .nsnbox .nsn_value {
		font-family: "FOT-クックハンド Std R";
		letter-spacing:0;
		/*
		font-family: "FOT-アーク Std R";
		*/
		position: absolute;
		font-size: 3.0rem;
		letter-spacing:0.2em;
		width: 80%;
		height: 40%;
		line-height: 1;
		overflow: visible;
		top: 65%;
		right: 0;
		text-align: center;
	}

		#rc_maincont > .vi_wrap .nsnbox .nsn_value.fs {
			top: 67%;
			font-size: 2.4rem;
			letter-spacing: 0.05em;
		}

@media screen and (max-width: 768px) {
	#rc_maincont > .vi_wrap > .con_warp {
		margin: 0 0 0 48px;
	}

	#rc_maincont > .vi_wrap .nsnbox .nsn_value {
		font-size: 2.4rem;
	}

		#rc_maincont > .vi_wrap .nsnbox .nsn_value.fs {
			font-size: 1.9rem;
		}
}

@media screen and (max-width: 640px) {
	#rc_maincont > .vi_wrap .table_basic01 tbody tr td:first-child {
		white-space: normal;
	}

	#rc_maincont > .vi_wrap .p_right.p_nsn {
		margin: 0 auto 10px auto;
		width: auto;
		float:none;
	}

	#rc_maincont > .vi_wrap .nsnbox {
		width: auto;
		max-width:290px;
		float: none;
		margin:0 auto;
	}

		#rc_maincont > .vi_wrap .nsnbox .nsn_value {
			top: 68%;
		}

			#rc_maincont > .vi_wrap .nsnbox .nsn_value.fs {
				top: 72%;
			}
}

@media screen and (max-width: 480px) {
	.rc_mainimg #iv_img {
		height: 0;
		padding: 0 0 75% 0;
		position: relative;
		overflow: hidden;
	}

		.rc_mainimg #iv_img img {
			margin: auto;
			height: 100%;
			width: auto;
			max-width:none;
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}

	#rc_maincont > .vi_wrap .table_basic01 tbody tr td:first-child {
		white-space: nowrap;
	}

	#rc_maincont > .vi_wrap .p_right {
		margin: 0 auto 10px auto;
		float:none;
		width:auto;
	}

	#rc_maincont > .vi_wrap > .con_warp {
		margin: 0;
	}

	#rc_maincont > .vi_wrap .table_basic01 {
		width: 100%;
		float: none;
		margin: 0 0 10px 0;
	}
}