@charset "UTF-8";
/*
 * CSS pageParts.css
 */

/* ================================
	#index
================================ */
/*#index #particles{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}*/

#index #mainv{
	overflow: hidden;
}
#index #mainv .first_mainv{
	height: 100%;
	opacity: 0;
	transition: opacity 0.8s 1.5s cubic-bezier(.77,0,.175,1);
}
#index.allload #mainv .first_mainv{
	opacity: 1;
}

#index .mainv1 .mainv-tit{
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: top left;
	transform-origin: top left;
	transition: all .3s 2.5s cubic-bezier(.77,0,.175,1);
}
#index .mainv1 .mainv-tit:after{
	content: "";
	display: block;
	background: #003985;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	transition: 0.3s;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}
#index.allload .mainv1 .mainv-tit{
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#index.allload .mainv1 .mainv-tit:after{
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	transition: transform .3s 3s cubic-bezier(.77,0,.175,1);
}

#index #header{
	-webkit-transform: translate(0, -100%);
	transform: translate(0, -100%);
	transition-delay: 6.5s;
}
#index.allload #header{
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

#index .main_logo{
	opacity: 0;
	/*-webkit-transform: translate(0, 50%);*/
	/*transform: translate(0, 50%);*/
	transition: all .3s 3s ease;
}
#index.allload .main_logo{
	opacity: 1;
	/*-webkit-transform: translate(0, 0);*/
	/*transform: translate(0, 0);*/
}





/*#mainv*/
#index #mainv{
	margin-bottom: 180px;
}
#index #mainv .first_mainv,
#index #mainv .main_silde{
	margin-top: 90px;
	position: relative;
}
#index #mainv .main_silde li{
	min-height: 760px;
	position: relative;
	display: -ms-flex;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 767px) {
	#index #mainv .first_mainv,
	#index #mainv .main_silde{
		margin-top: 70px;
	}
	#index #mainv .main_silde li{
		min-height: 1px;
	}
}
#index #mainv .first_mainv .slide_in{
	display: -ms-flex;
	display: flex;
	align-items: center;
}
#index #mainv .first_mainv .slide_in,
#index #mainv .main_silde li .slide_in{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#index #mainv .main_silde .slick-slide{
	opacity: 1!important;
}
#index #mainv .main_silde li .slide{
	position: absolute;
	top: 0;
	left: 0;
	width: 0.0001%;
	height: 100%;
	transform-origin: top left;
	transition: width 1s cubic-bezier(.77,0,.175,1);
}
#index #mainv .main_silde li.moving .slide{
	width: 100%;
}
#index #mainv .main_silde li.moving .slide_in{
	animation: spread 4s linear both;
	animation-delay: 0.8s;
}
@media screen and (max-width: 1700px) {
	#index #mainv .main_silde li.moving .slide_in{
		animation: spread_1700 4.5s linear both;
	}
}
@media screen and (max-width: 1500px) {
	#index #mainv .main_silde li.moving .slide_in{
		animation: spread_1500 4.5s linear both;
	}
}
#index #mainv .main_silde li.moving .slide_img{
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: auto 100%;
}
@media screen and (max-width: 767px) {
	#index #mainv .main_silde li.moving .slide_in{
		animation: spread_767 4.5s linear both;
	}
	#index #mainv .main_silde li.moving .slide_img{
		background-position: 60% center;
	}
}
@-webkit-keyframes spread_1500{
	0%{
		transform-origin: top;
		transform: scale(1.2, 1.2) translateX(-50px);
	}
	100%{
		transform-origin: top;
		transform: scale(1.2, 1.2) translateX();
	}
}
@keyframes spread_1500{
	0%{
		transform-origin: top;
		transform: scale(1.2, 1.2) translateX(-50px);
	}
	100%{
		transform-origin: top;
		transform: scale(1.2, 1.2) translateX(0);
	}
}
@-webkit-keyframes spread_1700{
	0%{
		transform-origin: top;
		transform: scale(1.3, 1.3) translateX(-50px);
	}
	100%{
		transform-origin: top;
		transform: scale(1.3, 1.3) translateX(0);
	}
}
@keyframes spread_1700{
	0%{
		transform-origin: top;
		transform: scale(1.3, 1.3) translateX(-50px);
	}
	100%{
		transform-origin: top;
		transform: scale(1.3, 1.3) translateX(0);
	}
}
@-webkit-keyframes spread_767{
	0%{
		transform-origin: center 150px;
		transform: scale(1.4, 1.4) translateX(-50px);
	}
	100%{
		transform-origin: center 150px;
		transform: scale(1.4, 1.4) translateX(0);
	}
}
@keyframes spread_767{
	0%{
		transform-origin: center 150px;
		transform: scale(1.4, 1.4) translateX(-50px);
	}
	100%{
		transform-origin: center 150px;
		transform: scale(1.4, 1.4) translateX(0);
	}
}
@-webkit-keyframes spread{
	0%{
		transform-origin: center 250px;
		transform: scale(1.4, 1.4) translateX(-50px);
	}
	100%{
		transform-origin: center 250px;
		transform: scale(1.4, 1.4) translateX(0);
	}
}
@keyframes spread{
	0%{
		transform-origin: center 250px;
		transform: scale(1.4, 1.4) translateX(-50px);
	}
	100%{
		transform-origin: center 250px;
		transform: scale(1.4, 1.4) translateX(0);
	}
}
@-webkit-keyframes spread_slide{
	0%{
		width: 100%;
	}
	10%{
		width: 0%;
		opacity: 1;
	}
	100%{
		opacity: 1;
		width: 100%;
	}
}
@keyframes spread_slide{
	0%{
		width: 100%;
	}
	10%{
		width: 0%;
		opacity: 1;
	}
	100%{
		opacity: 1;
		width: 100%;
	}
}


#index #mainv .scroll{
	font-family: 'Montserrat', sans-serif;
	position: absolute;
	bottom: 50px;
	left: 50px;
	margin-left: -60px;
	font-size: 12px;
	transform: rotate(90deg);
	z-index: 11;
}
#index #mainv .scroll a{
	color: #7f9cc2;
	text-decoration: none;
	padding-right: 70px;
}
#index #mainv .scroll a:before{
	content: "";
	display: block;
	height: 1px;
	width: 60px;
	position: absolute;
	top: 50%;
	left: 60px;
	background: #7f9cc2;
	animation-name: lineAnimation;
	animation-duration: 1.6s;
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
@-webkit-keyframes lineAnimation{
	0% {
		width: 0;
	}
	100% {
		width: 60px;
	}
}
@keyframes lineAnimation{
	0% {
		width: 0;
	}
	100% {
		width: 60px;
	}
}
#index #mainv .first_mainv{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	/*background: #fff;*/
}
#index #mainv .first_mainv.is-hide{
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s 0s cubic-bezier(.77,0,.175,1);
}
#index #mainv .first_mainv.is-hide + .layer{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 110;
	background: #003985;
	transform: scaleX(0);
	animation-name: first_mainv;
	animation-duration: 1s;
	animation-timing-function: ease;
}
@keyframes first_mainv{
	0% {
		transform: scaleX(0);
		transform-origin: top left;
	}
	45% {
		transform: scaleX(1);
		transform-origin: top left;
	}
	55% {
		transform: scaleX(1);
		transform-origin: top right;
	}
	100% {
		transform: scaleX(0);
		transform-origin: top right;
		/*transform-origin: top right;*/
		/*transform: scaleX(0);*/
	}
}
#index #mainv .mainv-tit{
	font-family: a-otf-midashi-go-mb31-pr6n,sans-serif;
	font-weight: 600;
	font-style: normal;
	margin-bottom: 40px;
	position: relative;
}
#index #mainv .main_logo img{
	display: inline-block;
}
#index #mainv .main_logo-txt{
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 500;
}


/*.mainv1*/
#index #mainv .mainv1{
	margin: auto;
}
#index #mainv .mainv1 .mainv-tit{
	color: #003985;
	font-size: 52px;
	text-align: center;
}
#index #mainv .mainv1 .main_logo{
	text-align: center;
}
#index #mainv .mainv1 .main_logo span{
	display: block;
}
#index #mainv .mainv1 .main_logo-txt{
	color: #003985;
	margin-top: 20px;
}
@media screen and (max-width: 999px) {
	#index #mainv .mainv1 .mainv-tit {
		font-size: 40px;
		line-height: 1.8;
	}
	#index #mainv .mainv1 .main_logo img {
		width: 180px;
	}
}


/*.mainv2*/
#index #mainv .mainv2{
	position: relative;
	z-index: 10;
	padding: 20px 200px;
	box-sizing: border-box;
}
#index #mainv .mainv2 .mainv-tit{
	color: #fff;
	font-size: 39px;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: top left;
	transform-origin: top left;
	transition: all .2s 1s cubic-bezier(.77,0,.175,1);
}
#index #mainv .main_silde.oneLap .mainv2 .mainv-tit,
#index #mainv .moving .mainv2 .mainv-tit{
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#index #mainv .mainv2 .main_logo{
	opacity: 0;
	transition: opacity .2s 1s ease;
}
#index #mainv .main_silde.oneLap .mainv2 .main_logo,
#index #mainv .moving .mainv2 .main_logo{
	opacity: 1;
}
#index #mainv .mainv2 .mainv-tit span{
	position: relative;
}
#index #mainv .mainv2 .mainv-tit span:after{
	content: "";
	display: block;
	background: #003985;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	transition: 0.3s;
	transform: scaleX(1);
	transform-origin: top right;
}
#index #mainv .main_silde.oneLap .mainv2 .mainv-tit span:after,
#index #mainv .moving .mainv2 .mainv-tit span:after{
	transform: scaleX(0);
	transition: transform .2s 1.3s ease;
}

#index #mainv .mainv2 .main_logo img{
	width: 118px;
}
#index #mainv .mainv2 .main_logo-txt{
	color: #fff;
	margin-left: 10px;
	position: relative;
	top: -8px;
}
@media screen and (max-width: 999px) {
	#index #mainv .mainv2{
		padding: 20px;
	}
	#index #mainv .mainv2 .mainv-tit {
		font-size: 32px;
		line-height: 1.8;
	}
}
@media screen and (max-width: 767px) {
	#index #mainv {
		margin-bottom: 80px;
	}
}

#index #movie{
	width: 900px;
	margin: 0 auto 180px;
}

#index #movie iframe{
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
@media screen and (max-width: 999px) {
	#index #movie{
		width: 90%;
		margin: 0 auto 80px;
	}
}

#index #culture .sec_in,
#index #work_story .sec_in,
#index #business .sec_in,
#index #message .sec_in{
	width: 100%;
}
#index .section{
	margin-bottom: 380px;
}

#index .section .sec_in,
#index .section .keyword_wrap{
	opacity: 0;
	position: relative;
	top: 100px;
	transition: all 0.3s ease;
}
#index .section .sec_in.is-animation,
#index .section .keyword_wrap.is-animation{
	opacity: 1;
	top: 0;
}
#index .section .sec_box{
	min-height: 770px;
}
#index .section .sec_box-tit{
	color: #003985;
	letter-spacing: 0.15em;
	margin-bottom: 40px;
}
#index .section .sec_box-tit span{
	display: block;
}
#index .section .sec_box-tit .en{
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	letter-spacing: 0.1em;
	position: relative;
	padding-bottom: 30px;
	margin-bottom: 50px;
}
#index .section .sec_box-tit .en:after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 28px;
	height: 1px;
	background: #003985;
}
#index .section .sec_box-tit .jp{
	font-size: 30px;
}
#index .section .sec_box-txt{
	line-height: 2;
}
#index .section .sec_box-btn{
	margin-top: 70px;
}
#index .section .sec_box-img{
	position: absolute;
	top: 110px;
	z-index: 1;
	width: 43%;
}
#index .section .sec_box-img_in{
	position: relative;
	overflow: hidden;
	width: 0.001%;
	padding-top: 113%;
	-webkit-transition: width 1s 0.2s cubic-bezier(.77,0,.175,1);
	transition: width 1s 0.2s cubic-bezier(.77,0,.175,1);
}
#index .section .img_in{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
}
#index .section .sec_box-img_in.is-animation{
	width: 100%;
}
#index .section .sec_box-img img{
	width: 100%;
}
#index .section .sec_box-cnt{
	position: absolute;
	top: 0;
	/*width: 1050px;*/
	box-sizing: border-box;
	padding: 10% 0 14% 0;
	/*width: calc(100% - 600px);*/
	width: 45%;
	background: #f4f4f4;
}
#index .section .sec_box-cnt:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #f4f4f4;
	position: absolute;
	top: 0;
}
#index .section ._right .sec_box-cnt:after{
	right: -100%;
}
#index .section ._left .sec_box-cnt:after{
	left: -100%;
}
#index .section .sec_box .sec_box-cnt_in{
	width: 60%;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
#index .section .sec_box._right .sec_box-img{
	left: 8%;
}
#index .section .sec_box._right .sec_box-cnt{
	right: 8%;
}
#index .section .sec_box._left .sec_box-img{
	right: 8%;
}
#index .section .sec_box._left .sec_box-cnt{
	left: 8%;
}
#index .section .sec_box._right .sec_box-cnt_in{
	padding-left: 15%;
}
#index .section .sec_box._left .sec_box-cnt_in{
	padding-right: 15%;
	/*float: right;*/
}
@media screen and (max-width: 1480px) {
	#index .section{
		margin-bottom: 150px;
	}
	#index .section .sec_box-img{
		width: 48%;
	}
	#index .section .sec_box-cnt{
		width: 70%;
		box-sizing: border-box;
		background: #f4f4f4;
	}
	#index .section .sec_box._right .sec_box-img{
		left: 5%;
	}
	#index .section .sec_box._right .sec_box-cnt{
		right: 5%;
		padding: 80px 40px 100px 21%;
	}
	#index .section .sec_box._left .sec_box-img{
		right: 5%;
		margin: auto 0 0 auto;
	}
	#index .section .sec_box._left .sec_box-cnt{
		left: 5%;
		padding: 80px 21% 100px 40px;
	}
	#index .section .sec_box._right .sec_box-cnt_in{
		/*padding-left: 0;*/
		margin: auto;
	}
	#index .section .sec_box._left .sec_box-cnt_in{
		/*padding-right: 0;*/
		float: none;
		margin: auto;
	}
}
@media screen and (max-width: 999px) {
	#index .section{
		margin-bottom: 100px;
	}
	#index .section .sec_box{
		min-height: 1px;
	}
	#index .section .sec_box-img{
		width: 70%;
		position: relative;
		top: 0;
		z-index: 1;
	}
	#index .section .sec_box-cnt{
		width: 70%;
		position: static;
		margin-top: -25%;
		padding: 30% 40px 50px 40px;
	}
	#index .section .sec_box._right .sec_box-cnt{
		padding: 30% 40px 50px 40px;
	}
	#index .section .sec_box._left .sec_box-cnt{
		padding: 30% 40px 50px 40px;
	}
	#index .section .sec_box._right .sec_box-img{
		margin: auto 0 auto auto;
	}
	#index .section .sec_box._left .sec_box-cnt{
		margin-right: 0;
	}
	#index .section .sec_box .sec_box-cnt_in{
		width: 100%;
		padding: 0!important;
	}
	#index .section .sec_box-cnt:after {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	#index .section{
		margin-bottom: 80px;
	}
	#index #message .sec_in,
	#index #business .sec_in,
	#index #work_story .sec_in,
	#index #culture .sec_in{
		width: 100%;
	}
	#index .section .sec_box-img{
		width: 90%;
	}
	#index .section .sec_box-cnt{
		width: 90%;
	}
	#index .section .sec_box._right .sec_box-cnt{
		padding: 32% 30px 40px 30px;
	}
	#index .section .sec_box._left .sec_box-cnt{
		padding: 32% 30px 40px 30px;
	}
	#index .section .sec_box._left .sec_box-img {
		right: 0;
	}
	#index .section .sec_box._right .sec_box-img {
		left: 0;
	}
	#index .section .sec_box-tit{
		margin-bottom: 30px;
	}
	#index .section .sec_box-tit .en{
		font-size: 16px;
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
	#index .section .sec_box-tit .jp{
		font-size: 22px;
	}
	#index .section .sec_box-btn {
		margin-top: 30px;
	}
}




#index .sec_tit_style1{
	letter-spacing: 0.15em;
	color: #003985;
	text-align: center;
	margin-bottom: 60px;
}
#index .sec_tit_style1 span{
	display: block;
}
#index .sec_tit_style1 .en{
	font-family: 'Montserrat', sans-serif;
	font-size: 32px;
	margin-bottom: 5px;
}
#index .sec_tit_style1 .jp{
	font-size: 18px;
	padding-top: 35px;
	position: relative;
}
#index .sec_tit_style1 .jp:before{
	content: "";
	display: block;
	height: 20px;
	width: 1px;
	position: absolute;
	top: 0;
	left: 50%;
	background: #003985;
}
#index .sec_tit_style2{
	letter-spacing: 0.15em;
}

@media screen and (max-width: 999px) {
	#index .sec_tit_style1{
		margin-bottom: 40px;
	}
	#index .sec_tit_style1 .en{
		font-size: 26px;
		margin-bottom: 5px;
	}
	#index .sec_tit_style1 .jp{
		font-size: 14px;
		padding-top: 20px;
	}
	#index .sec_tit_style1 .jp:before{
		top: -5px;
	}
}




#index #interview{
	padding-top: 75px;
	margin-bottom: 200px;
	position: relative;
}
#index #interview:before{
	content: "";
	background: #f4f4f4;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 70%;
}
#index #interview .sec_in{
	width: 100%;
	padding: 0 1.5%;
	box-sizing: border-box;
}
@media screen and (max-width: 1360px) {
	#index .sec_in._w1300 {
		width: 100%;
	}
}
@media screen and (max-width: 999px) {
	#index #interview{
		padding: 40px 0 40px;
		margin-bottom: 80px;
	}
	#index #interview:before{
		height: 85%;
	}
}




#index #keyword{
	background: #f4f4f4;
	margin-bottom: 200px;
}
#index #keyword .sec_tit_style1{
	margin-bottom: 0;
}
#index #keyword .keyword_wrap{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;

	align-items: center;
	justify-content: center;
	position: relative;
}
#index #keyword .keyword-img{
	width: 50%;
}
#index #keyword .keyword-img img{
	width: 100%;
}
#index #keyword .keyword-txtbox{
	width: 50%;
}
#index #keyword .keyword-btn a{
	margin: 30px auto 0;
}
@media screen and (max-width: 999px) {
	#index #keyword{
		margin-bottom: 80px;
	}
}
@media screen and (max-width: 767px) {
	#index #keyword{
		margin-bottom: 40px;
	}
	#index #keyword .keyword_wrap{
		flex-direction: column;
	}
	#index #keyword .keyword-img{
		width: 100%;
		order: 2;
	}
	#index #keyword .keyword-txtbox{
		width: 100%;
		order: 1;
		padding: 40px 0;
	}
	#index #keyword .keyword-btn {
		bottom: calc(50% - 130px);
		right: calc(50% - 93px);
	}
}



#index #information{
	margin-bottom: 200px;
}
#index .info_wrap{
	position: relative;
}
#index .info_wrap a{
	color: #fff;
	display: block;
	box-sizing: border-box;
	text-decoration: none;
}
#index .info-txtbox{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 20px 60px;
	box-sizing: border-box;
	z-index: 2;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;

	align-items: center;
}
#index .sec_tit_style2 span{
	display: block;
}
#index .sec_tit_style2 .en{
	font-size: 32px;
	font-family: 'Montserrat', sans-serif;
}
#index .sec_tit_style2 .jp{
	font-size: 18px;
}
#index .info-more{
	position: absolute;
	right: 20px;
	bottom: 10px;
	font-family: 'Montserrat', sans-serif;
}
#index .info-more span{
	position: relative;
	padding-right: 60px;
}
#index .info-more span:before{
	content: "";
	display: inline-block;
	width: 40px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 60px;
	background: #fff;
	z-index: 1;
}
@media screen and (max-width: 999px) {
	#index #information{
		margin-bottom: 80px;
	}
	#index .info_wrap {
		width: 94%;
	}
	#index .sec_tit_style2 .en{
		font-size: 26px;
	}
	#index .sec_tit_style2 .jp{
		font-size: 14px;
	}
	#index .info-txtbox{
		padding: 0 30px;
		line-height: 1.6;
	}
}
@media screen and (max-width: 767px) {
	#index #information{
		margin-bottom: 40px;
	}
}


/* ================================
	#message
================================ */
#message #sec_1{
	padding: 150px 0;
}
#message #sec_1 .s1_txt1{
	font-size: 16px;
	line-height: 2.8;
	position: relative;
	z-index: 1;
}
#message .idaka_logo{
	position: absolute;
	top: 50%;
	right: -20px;
}
#message .idaka_logo svg{
	width: 800px;
}
@media screen and (max-width: 999px) {
	#message #sec_1{
		padding: 90px 0;
	}
}
@media screen and (max-width: 767px) {
	#message #sec_1{
		padding: 40px 0;
	}
	#message #sec_1 .s1_txt1{
		font-size: 15px;
		line-height: 2.2;
	}
	#message .idaka_logo svg{
		width: 320px;
	}
}


/* ================================
	#business
================================ */
#business #sec_1{
	padding: 100px 0;
}
#business #sec_1 .cnt_left{
	width: 465px;
}
#business #sec_1 .cnt_right{
	width: 560px;
}
#business .number{
	font-family: 'Montserrat', sans-serif;
	color: #003985;
	font-size: 20px;
	position: relative;
	line-height: 1;
	padding-left: 35px;
	margin-bottom: 50px;
}
#business .number:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 28px;
	height: 1px;
	background: #003985;
}
#business .business_title{
	color: #003985;
	font-size: 32px;
	margin-bottom: 60px;
}
#business #sec_2{
	margin-top: 200px;
	padding-bottom: 200px;
	background: #f4f4f4;
}
#business #sec_2 .s2_img1{
	position: relative;
	top: -200px;
	left: 0;
	width: 80%;
}
#business #sec_2 .s2_img1 img{
	width: 100%;
}
#business #sec_2 .cnt_left{
	width: 510px;
}
#business #sec_2 .cnt_right{
	width: 470px;
}
#business #sec_3{
	padding: 300px 0 150px;
	background: url(../img/business/map.png) no-repeat;
	background-position: 65% -130px;
}
#business #sec_3 .cnt_center{
	width: 660px;
}
@media screen and (max-width: 1200px) {
	#business #sec_1{
		padding: 60px 0;
	}
	#business #sec_1 .cnt_left{
		width: 100%;
		float: none;
		margin-bottom: 30px;
	}
	#business #sec_1 .cnt_right{
		max-width: 600px;
		width: 100%;
		float: none;
		margin: 0 auto;
	}
	#business .number{
		font-size: 18px;
		padding-left: 25px;
		margin-bottom: 30px;
	}
	#business .number:before{
		width: 18px;
	}
	#business .business_title{
		font-size: 26px;
		margin-bottom: 30px;
	}
	#business #sec_2 .cnt_left{
		max-width: 600px;
		width: 100%;
		float: none;
		margin: 0 auto;
	}
	#business #sec_2 .cnt_right{
		width: 100%;
		float: none;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 999px) {
	#business #sec_2{
		margin-top: 150px;
		padding-bottom: 80px;
	}
	#business #sec_2 .s2_img1{
		top: -150px;
		width: 86%;
	}
	#business #sec_3{
		padding: 130px 0 80px;
		background: url(../img/business/map.png) no-repeat;
		background-position: 50% -70px;
		background-size: 140% auto;
	}
	#business #sec_3 .cnt_center{
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	#business .number {
		margin-bottom: 20px;
	}
	#business .business_title{
		font-size: 22px;
	}
	#business #sec_2{
		margin-top: 80px;
	}
	#business #sec_2 .s2_img1{
		top: -80px;
	}
}


/* ================================
	#keyword
================================ */
#keyword #sec_1{
	padding: 130px 0 80px;
}
#keyword #sec_1 .box_wrap{
	margin-right: -6%;
}
#keyword #sec_1 .box{
	float: left;
	width: 44%;
	margin: 0 6% 6% 0;
	border: 1px solid #003985;
	box-sizing: border-box;
	padding: 120px 40px;
	position: relative;
}
#keyword #sec_1 .box .no{
	font-family: 'Montserrat', sans-serif;
	color: #003985;
	font-size: 20px;
	position: relative;
	line-height: 1;
	padding-left: 35px;
	margin-bottom: 50px;
	position: absolute;
	top: 60px;
	left: 0;
}
#keyword #sec_1 .box .no:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 28px;
	height: 1px;
	background: #003985;
}
#keyword #sec_1 .box-tit{
	color: #003985;
	font-size: 32px;
	margin-bottom: 40px;
	padding-left: 60px;
}
#keyword #sec_1 .box-tit.icon1{
	background: url(../img/keyword/icon1.svg) no-repeat;
}
#keyword #sec_1 .box-tit.icon2{
	background: url(../img/keyword/icon2.svg) no-repeat;
}
#keyword #sec_1 .box-tit.icon3{
	background: url(../img/keyword/icon3.svg) no-repeat;
}
#keyword #sec_1 .box-tit.icon4{
	background: url(../img/keyword/icon4.svg) no-repeat;
}
#keyword #sec_1 .box-tit.icon5{
	background: url(../img/keyword/icon5.svg) no-repeat;
}
#keyword #sec_1 .box-tit.icon6{
	background: url(../img/keyword/icon6.svg) no-repeat;
}
@media screen and (max-width: 999px) {
	#keyword #sec_1{
		padding: 80px 0 40px;
	}
	#keyword #sec_1 .box{
		padding: 80px 30px;
	}
	#keyword #sec_1 .box .no{
		font-size: 18px;
		padding-left: 25px;
		margin-bottom: 30px;
		top: 40px;
	}
	#keyword #sec_1 .box .no:before{
		width: 18px;
	}
	#keyword #sec_1 .box-tit{
		font-size: 24px;
		margin-bottom: 20px;
		padding-left: 42px;
		background-size: 38px!important;
		background-position: center left!important;
	}
}
@media screen and (max-width: 767px) {
	#keyword #sec_1{
		padding: 40px 0 30px;
	}
	#keyword #sec_1 .box_wrap{
		margin-right: 0;
	}
	#keyword #sec_1 .box{
		float: none;
		width: 100%;
		margin: 0 0 20px 0;
		padding: 70px 30px 60px;
	}
}



/* ================================
	#interview
================================ */
#interview #mainv2{
	height: 700px;
	margin-bottom: 550px;
}
#interview .people_box_in{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	right: -50px;
	z-index: 1;
	background: #003985;
}
#interview .people_box:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #003985;
	position: absolute;
	right: -100%;
	top: 0;
}
#interview .people_cnt{
	color: #fff;
	width: calc(100% - 600px);
	box-sizing: border-box;
	padding: 40px 60px;
}
#interview .people_txt-job{
	font-size: 20px;
	margin-bottom: 60px;
}
#interview .people_txt-name{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: 70px;
	line-height: 1.4;
	margin-bottom: 60px;

	letter-spacing: 0.08em;
}
#interview .people{
	width: 660px;
}
#interview .people img{
	margin-top: -100px;
}
@media screen and (max-width: 1200px) {
	#interview #mainv2{
		height: 600px;
		margin-bottom: 450px;
	}
	#interview .people_txt-job{
		font-size: 18px;
		margin-bottom: 40px;
	}
	#interview .people_txt-name{
		font-size: 60px;
		margin-bottom: 50px;
	}
	#interview .people{
		width: 460px;
	}
	#interview .people img{
		margin-top: -80px;
	}
}
@media screen and (max-width: 999px) {
	#interview #mainv2 {
		height: 350px;
		margin-bottom: 48%;
	}
	#interview .people_txt-job{
		font-size: 16px;
		margin-bottom: 10px;
	}
	#interview .people_txt-name{
		font-size: 50px;
		margin-bottom: 20px;
	}
	#interview .people{
		width: 100%;
		max-width: 440px;
		margin: 0 0 0 auto;
	}
	#interview #mainv2 .people_box{
		margin-top: 50px;
	}
	#interview .people_cnt{
		width: 100%;
		padding: 0 0% 0 5%;
	}
}
@media screen and (max-width: 767px) {
	#interview #mainv2 {
		height: auto;
		margin-bottom: 60px;
	}
	#interview .people_box_in{
		flex-direction: column;
		right: 0;
	}
	#interview .people img{
		margin-top: 0;
	}
	#interview #mainv2 .sec_in._w1300{
		width: 100%;
	}
	#interview #mainv2 .sec_in{
		width: 88%;
	}
	#interview .people_txt-job{
		font-size: 14px;
	}
	#interview .people_txt-name{
		font-size: 40px;
	}
	#interview .people{
		width: 90%;
		max-width: 440px;
		margin: 0 auto;
	}
	#interview .people_cnt{
		padding: 40px 5%;
	}
	#interview #mainv2 .people_box{
		width: 100%;
		float: none;
	}
}




#interview #sec_1 .sec_cnt + .sec_cnt{
	margin-top: 100px;
}
#interview #sec_1 .sec_cnt-txtcnt{
	width: 930px;
	padding: 70px 80px;
	box-sizing: border-box;
	margin-top: -100px;
	position: relative;
	z-index: 1;
	float: right;
	background: #fff;
}
#interview #sec_1 .sec_cnt-img{
	position: relative;
	left: -100px;
}
#interview #sec_1 .sec_cnt._right .sec_cnt-txtcnt{
	float: left;
}
#interview #sec_1 .sec_cnt._right .sec_cnt-img{
	position: relative;
	right: -100px;
	left: auto;
}
@media screen and (max-width: 999px) {
	#interview #sec_1 .sec_in{
		width: 100%;
	}
	#interview #sec_1 .sec_cnt + .sec_cnt{
		margin-top: 80px;
	}
	#interview #sec_1 .sec_cnt-txtcnt{
		width: 100%;
		padding: 60px 70px;
		margin-top: 0;
		float: none;
	}
	#interview #sec_1 .sec_cnt-img{
		left: 0;
	}
	#interview #sec_1 .sec_cnt._right .sec_cnt-txtcnt{
		float: none;
	}
	#interview #sec_1 .sec_cnt._right .sec_cnt-img{
		right: 0;
		left: auto;
	}
}
@media screen and (max-width: 767px) {
	#interview #sec_1 .sec_cnt + .sec_cnt{
		margin-top: 30px;
	}
	#interview #sec_1 .sec_cnt-txtcnt{
		width: 100%;
		padding: 30px 6%;
	}
}



#interview #sec_2 .box{
	width: 460px;
	padding: 55px 0 0;
	margin-bottom: 100px;
	border-top: 1px solid #003985;
	border-bottom: 1px solid #003985;
}
#interview #sec_2 .schedule_box{
	float: left;
}
#interview #sec_2 .career_box{
	float: right;
}
#interview #sec_2 .box-tit{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #003985;
	font-size: 32px;
	text-align: center;
}
#interview #sec_2 .box-tit span{
	display: block;
}
#interview #sec_2 .box-tit .ico{
	margin: 0 0 10px;
}
#interview #sec_2 .box-txt{
	color: #003985;
	text-align: center;
	margin-bottom: 50px;
}
#interview #sec_2 .schedule_table dl{
	font-size: 16px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	position: relative;
}
#interview #sec_2 .schedule_table dl + dl{
	margin-top: 15px;
}
#interview #sec_2 .schedule_table dl dt{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #003985;
	width: 100px;
	box-sizing: border-box;
	padding-left: 45px;
}
#interview #sec_2 .schedule_table dl dd{
	padding-left: 55px;
}

#interview #sec_2 .career_box dl{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	position: relative;
}
#interview #sec_2 .career_box dl + dl{
	margin-top: 20px;
}
#interview #sec_2 .career_box dl + dl:before{
	content: "";
	width: 1px;
	height: 60px;
	position: absolute;
	top: -30px;
	left: 71px;
	background: #003985;
}
#interview #sec_2 .career_box dl dt{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: center;

	color: #003985;
	width: 140px;
	height: 50px;
	border: 1px solid #003985;
	background: #fff;
	position: relative;
	z-index: 1;
}
#interview #sec_2 .career_box dl dd{
	font-size: 12px;
	width: 290px;
	padding-left: 15px;
}
#interview #sec_2 .career_box .l-changeLine dl + dl:before{
	height: 70px;
}
@media screen and (max-width: 500px) {
	#interview #sec_2 .career_box .l-changeLine dl + dl:before{
		height: 150px;
		top: -60px;
	}
}
@media screen and (max-width: 1200px) {
	#interview #sec_2 .box{
		width: 48%;
	}
}
@media screen and (max-width: 999px) {
	#interview #sec_2 .box{
		width: 100%;
		padding: 30px 0 0;
		margin-bottom: 50px;
	}
	#interview #sec_2 .schedule_box{
		float: none;
	}
	#interview #sec_2 .career_box{
		float: none;
	}
	#interview #sec_2 .box-tit{
		font-size: 26px;
	}
	#interview #sec_2 .box-tit .ico{
		margin: 0 0 5px;
	}
	#interview #sec_2 .box-txt{
		margin-bottom: 30px;
	}
	#interview #sec_2 .career_box dl dd {
		font-size: 12px;
		width: calc(100% - 170px);
		padding-left: 15px;
	}
}
@media screen and (max-width: 767px) {
	#interview #sec_2 .box{
		padding: 30px 0;
		margin-bottom: 40px;
	}
	#interview #sec_2 .box-tit{
		font-size: 22px;
	}
	#interview #sec_2 .box-tit .ico{
		width: 40px;
		margin: 0 auto 5px;
	}
	#interview #sec_2 .schedule_table dl dt {
		width: 80px;
		padding-left: 20px;
	}
	#interview #sec_2 .schedule_table dl dd {
		font-size: 0.9em;
		padding-left: 25px;
	}
}




/* ================================
	#work_story
================================ */
#work_story .work_story_title{
	color: #003985;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: 20px;
	margin-bottom: 50px;
	padding-bottom: 30px;
	position: relative;
}
#work_story .work_story_title:after{
	content: "";
	width: 28px;
	height: 1px;
	background: #003985;
	position: absolute;
	bottom: 0;
	left: 0;
}

#work_story .work_flow_nav{
	text-align: center;
	position: absolute;
	top: 0;
	left: -180px;
	z-index: 1;
}
#work_story .work_flow_nav ul{
	position: sticky;
	left: 0;
	top: 0;
}
#work_story .work_flow_nav li{
	color: #e5ebf3;
	position: relative;
	transition: 0.3s;
}
#work_story .work_flow_nav li + li{
	padding-top: 100px;
}
#work_story .work_flow_nav li.is-now{
	color: #003985;
}
#work_story .work_flow_nav li + li:before{
	content: "";
	width: 1px;
	height: 86px;
	display: block;
	background: #003985;
	position: absolute;
	top: 10px;
	left: 50%;
}
#work_story .work_flow_nav .number{
	font-size: 20px;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
}
@media screen and (max-width: 1200px) {
	#work_story .work_story_title{
		margin-bottom: 30px;
		padding-bottom: 20px;
	}
	#work_story .work_flow_nav{
		font-size: 12px;
	}
	#work_story .work_flow_nav li + li{
		padding-top: 40px;
	}
	#work_story .work_flow_nav li + li:before{
		height: 18px;
	}
	#work_story .work_flow_nav .number{
		font-size: 18px;
		line-height: 1.2;
	}
}
@media screen and (max-width: 999px) {
	#work_story .work_story_title{
		font-size: 18px;
		margin-bottom: 40px;
		padding-bottom: 10px;
	}
	#work_story .profile .work_story_title{
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 767px) {
	#work_story .work_flow_nav{
		width: 106%;
		padding: 10px 0;
		left: -3%!important;
		background: rgba(0,57,133, 0.6);

		display: none;
	}
	#work_story .work_flow_nav ul{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	#work_story .work_flow_nav li{
		width: 25%;
	}
	#work_story .work_flow_nav li + li{
		padding-top: 0;
	}
	#work_story .work_flow_nav li + li:before{
		display: none;
	}
}



#work_story #sec_1{
	padding: 140px 0 0;
}
#work_story #sec_1 .sec_in{
	padding-bottom: 200px;
}
#work_story #sec_1 .inbox{
	position: relative;
	z-index: 1;
}
#work_story #sec_1 .cnt_left{
	padding-top: 50px;
	width: 560px;
}
#work_story #sec_1 .cnt_right{
	width: 621px;
	margin-right: -100px;
}
#work_story #sec_1 .profile{
	width: 1122px;
	padding: 70px 120px 90px;
	background: #f4f4f4;
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	left: -120px;
}
#work_story #sec_1 .profile:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: -100%;
	background: #f4f4f4;
}
#work_story #sec_1 .profile .name{
	color: #003985;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: 70px;
	letter-spacing: 0.08em;
	line-height: 1.4;
}
#work_story #sec_1 .profile .local{
	color: #003985;
	margin-top: 40px;
}
@media screen and (max-width: 1200px) {
	#work_story #sec_1 .sec_in{
		width: 100%;
		padding-bottom: 20%;
	}
	#work_story #sec_1 .profile{
		width: 90%;
		left: 0;
		padding: 40px 60px;
	}
	#work_story #sec_1 .cnt_left{
		box-sizing: border-box;
		padding: 0 20px;
		width: 60%;
	}
	#work_story #sec_1 .cnt_right{
		width: 40%;
		margin-right: 0;
	}
	#work_story #sec_1 .profile .name{
		font-size: 60px;
	}
	#work_story #sec_1 .profile .local{
		margin-top: 30px;
	}
}
@media screen and (max-width: 999px) {
	#work_story #sec_1 {
		padding: 80px 0 0;
	}
	#work_story #sec_1 .sec_in {
		padding-bottom: 0%;
	}
	#work_story #sec_1 .profile{
		width: 100%;
		position: static;
		padding: 40px 3%;
	}
	#work_story #sec_1 .profile:before{
		display: none;
	}
	#work_story #sec_1 .cnt_left{
		padding: 0 4% 40px;
		width: 100%;
		float: none;
	}
	#work_story #sec_1 .cnt_right{
		width: 100%;
		float: none;
	}
	#work_story #sec_1 .profile .name{
		font-size: 45px;
		line-height: 1.2;
	}
	#work_story #sec_1 .profile .local{
		margin-top: 20px;
	}
}
@media screen and (max-width: 767px) {
	#work_story #sec_1 {
		padding: 40px 0 0;
	}
}


#work_story #sec_2 .sec_in{
	position: relative;
	right: -90px;
}
#work_story #sec_2 .sec_cnt + .sec_cnt{
	margin-top: 60px;
}
#work_story #sec_2 .no{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #e5ebf3;
	font-size: 106px;
	position: absolute;
	top: 50%;
	left: -190px;
	transform: translateY(-50%);
	letter-spacing: 0.1em;
}
#work_story #sec_2 .sec_cnt-txtcnt{
	width: 930px;
	padding: 70px 80px;
	box-sizing: border-box;
	margin-top: -100px;
	position: relative;
	z-index: 1;
	float: right;
	background: #fff;
}
#work_story #sec_2 .sec_cnt-tit{
	color: #003985;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: 20px;
	margin-bottom: 30px;
}
#work_story #sec_2 .sec_cnt-tit span{
	font-size: 16px;
	padding-left: 60px;
	margin-left: 20px;
	position: relative;
}
#work_story #sec_2 .sec_cnt-tit span:before{
	content: "";
	width: 38px;
	height: 1px;
	background: #003985;
	position: absolute;
	top: 50%;
	left: 0;
}
@media screen and (max-width: 1200px) {
	#work_story #sec_2 .sec_in{
		right: 0;
		padding-left: 130px;
		box-sizing: border-box;
	}
	#work_story #sec_2 .no{
		font-size: 80px;
		left: 0;
		z-index: -1;
	}
	#work_story #sec_2 .sec_cnt-txtcnt{
		width: 100%;
		padding: 40px 0;
		margin-top: 0;
		float: none;
	}
	#work_story #sec_2 .sec_cnt-tit{
		font-size: 18px;
		margin-bottom: 20px;
	}
	#work_story #sec_2 .sec_cnt-tit span{
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	#work_story #sec_2 .sec_in{
		padding-left: 0;
	}
	#work_story #sec_2 .sec_cnt + .sec_cnt {
		margin-top: 30px;
	}
	#work_story #sec_2 .no{
		display: none;


		font-size: 70px;
		top: 40%;
	}
	#work_story #sec_2 .sec_cnt-txtcnt{
		padding: 20px 0;
	}
	#work_story #sec_2 .sec_cnt-tit {
		font-size: 13px;
		margin-bottom: 10px;
	}
	#work_story #sec_2 .sec_cnt-tit span {
		padding-left: 50px;
		margin-left: 10px;
	}
}


#work_story #sec_3 .box_table dl{
	display: -ms-flex;
	display: flex;
	align-items: center;
	position: relative;
}
#work_story #sec_3 .box_table dl + dl{
	margin-top: 60px;
}
#work_story #sec_3 .box_table dl + dl dt:before{
	content: "";
	width: 1px;
	height: 60px;
	position: absolute;
	top: -60px;
	left: 50%;
	background: #003985;
}
#work_story #sec_3 .box_table dl dt{
	display: -ms-flex;
	display: flex;
	align-items: center;
	color: #fff;
	font-size: 24px;
	width: 440px;
	height: 110px;
	background: #003985;
	position: relative;
}
#work_story #sec_3 .box_table .box_no{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: 32px;
	width: 120px;
	text-align: center;
	border-right: 1px solid #7a96bc;
	margin-right: 35px;
}
#work_story #sec_3 .box_table dl dd{
	width: 620px;
	font-size: 16px;
	padding-left: 60px;
}
@media screen and (max-width: 1200px) {
	#work_story #sec_3 .box_table dl dt{
		font-size: 22px;
		width: 400px;
		height: 90px;
	}
	#work_story #sec_3 .box_table .box_no{
		font-size: 28px;
		width: 80px;
		margin-right: 20px;
	}
	#work_story #sec_3 .box_table dl dd{
		width: 640px;
		font-size: 16px;
		padding-left: 50px;
	}
}
@media screen and (max-width: 999px) {
	#work_story #sec_3 .box_table dl + dl {
		margin-top: 0;
	}
	#work_story #sec_3 .box_table dl:before{
		content: "";
		display: block;
		width: 1px;
		height: 100%;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 31px;
		background: #003985;
	}
	#work_story #sec_3 .box_table dl:last-child:before{
		/*display: none;*/
	}
	#work_story #sec_3 .box_table dl + dl dt:before{
		display: none;
	}
	#work_story #sec_3 .box_table dl{
		display: block;
		position: relative;
	}
	#work_story #sec_3 .box_table dl dt{
		font-size: 18px;
		width: 100%;
		height: 60px;
		line-height: 1.6;
		padding-right: 20px;
		box-sizing: border-box;
	}
	#work_story #sec_3 .box_table .box_no{
		font-size: 20px;
		width: 60px;
		margin-right: 15px;
	}
	#work_story #sec_3 .box_table dl dd{
		width: 100%;
		font-size: 15px;
		padding: 10px 20px 30px 60px;
		box-sizing: border-box;
	}
}
@media screen and (max-width: 767px) {
}



/* ================================
	#culture
================================ */
#culture #sec_1{
	padding: 130px 0 80px;
}
#culture #sec_1 .s1_tit1{
	color: #003985;
	font-size: 24px;
	margin-bottom: 30px;
}
#culture #sec_1 .box_table dl{
	display: -ms-flex;
	display: flex;
	align-items: center;
	position: relative;
}
#culture #sec_1 .box_table dl + dl{
	margin-top: 60px;
}
#culture #sec_1 .box_table dl + dl:before{
	content: "";
	width: 1px;
	height: 60px;
	position: absolute;
	top: -60px;
	left: 180px;
	background: #003985;
}
#culture #sec_1 .box_table dl dt{
	display: -ms-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 24px;
	width: 360px;
	height: 110px;
	background: #003985;
}
#culture #sec_1 .box_table dl dd{
	width: 580px;
	padding-left: 60px;
}
#culture #sec_1 .box_table2_wrap{
	margin-top: 80px;
}
#culture #sec_1 .box_table2{
	width: 100%;
	height: 140px;
	display: table;
}
#culture #sec_1 .box_table2 + .box_table2{
	margin-top: 30px;
}
#culture #sec_1 .box_table2 dl{
	display: table-row;
}
#culture #sec_1 .box_table2 dt,
#culture #sec_1 .box_table2 dd{
	display: table-cell;
	vertical-align: middle;
}
#culture #sec_1 .box_table2 dt{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #fff;
	letter-spacing: 0.05em;
	font-size: 24px;
	text-align: center;
	vertical-align: middle;
	width: 360px;
	background: #003985;
}
#culture #sec_1 .box_table2 dt span{
	font-size: 16px;
	display: block;
}
#culture #sec_1 .box_table2 dd{
	padding: 30px;
	background: #e5ebf3;
}
#culture #sec_1 .box_table2 .box_table-tit{
	color: #003985;
	font-size: 18px;
	margin-bottom: 10px;
}
@media screen and (max-width: 999px) {
	#culture #sec_1{
		padding: 60px 0 30px;
	}
	#culture #sec_1 .s1_tit1{
		font-size: 20px;
		margin-bottom: 15px;
	}
	#culture #sec_1 .box_table dl + dl{
		margin-top: 40px;
	}
	#culture #sec_1 .box_table dl + dl:before{
		top: -40px;
		left: 140px;
	}
	#culture #sec_1 .box_table dl dt{
		font-size: 20px;
		width: 280px;
		height: 90px;
	}
	#culture #sec_1 .box_table dl dd{
		width: calc(100% - 280px);
		padding-left: 30px;
	}
	#culture #sec_1 .box_table2_wrap{
		margin-top: 60px;
	}
	#culture #sec_1 .box_table2{
		height: 100px;
	}
	#culture #sec_1 .box_table2 + .box_table2{
		margin-top: 20px;
	}
	#culture #sec_1 .box_table2 dt{
		font-size: 20px;
		width: 280px;
	}
	#culture #sec_1 .box_table2 dt span{
		font-size: 12px;
	}
	#culture #sec_1 .box_table2 dd{
		padding: 20px;
	}
	#culture #sec_1 .box_table2 .box_table-tit{
		font-size: 16px;
	}
}
@media screen and (max-width: 767px) {
	#culture #sec_1{
		padding: 50px 0 20px;
	}
	#culture #sec_1 .s1_tit1{
		font-size: 18px;
	}
	#culture #sec_1 .box_table dl{
		display: block;
	}
	#culture #sec_1 .box_table dl + dl{
		margin-top: 0;
	}
	#culture #sec_1 .box_table dl:before,
	#culture #sec_1 .box_table dl + dl:before{
		content: "";
		display: block;
		width: 1px;
		height: 100%;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 25px;
		background: #003985;
	}
	#culture #sec_1 .box_table dl dt{
		font-size: 18px;
		padding: 6px;
		box-sizing: border-box;
		width: 100%;
		height: auto;
		margin-bottom: 10px;
	}
	#culture #sec_1 .box_table dl dd{
		width: 100%;
		padding: 0 15px 20px 50px;
		box-sizing: border-box;
	}
	#culture #sec_1 .box_table2_wrap{
		margin-top: 40px;
	}
	#culture #sec_1 .box_table2{
		width: 100%;
		height: auto;
		display: block;
	}
	#culture #sec_1 .box_table2 dl{
		display: block;
	}
	#culture #sec_1 .box_table2 dt,
	#culture #sec_1 .box_table2 dd{
		width: 100%;
		display: block;
	}
	#culture #sec_1 .box_table2 dt{
		font-size: 18px;
		line-height: 1.4;
		padding: 10px 5px;
		box-sizing: border-box;
	}
	#culture #sec_1 .box_table2 dd{
		padding: 20px;
		box-sizing: border-box;
	}
}




#culture #sec_2 .inbox .cnt_left{
	width: 46%;
}
#culture #sec_2 .inbox .cnt_right{
	width: 46%;
}
#culture #sec_2 .inbox-img{
	margin-bottom: 35px;
}
#culture #sec_2 .inbox-tit{
	color: #003985;
	font-size: 24px;
	margin-bottom: 35px;
}
@media screen and (max-width: 999px) {
	#culture #sec_2 .inbox .cnt_left{
		width: 48%;
	}
	#culture #sec_2 .inbox .cnt_right{
		width: 48%;
	}
	#culture #sec_2 .inbox-img{
		margin-bottom: 20px;
	}
	#culture #sec_2 .inbox-tit{
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 767px) {
	#culture #sec_2 .inbox .cnt_left{
		width: 100%;
		float: none;
		margin-bottom: 30px;
	}
	#culture #sec_2 .inbox .cnt_right{
		width: 100%;
		float: none;
	}
	#culture #sec_2 .inbox-tit{
		font-size: 18px;
		margin-bottom: 10px;
	}
}


#culture #sec_3 .inbox .cnt_left{
	width: 46%;
}
#culture #sec_3 .inbox .cnt_right{
	width: 46%;
}
#culture #sec_3 .inbox-tit{
	color: #fff;
	font-size: 24px;
	padding: 10px 5px;
	text-align: center;
	background: #003985;
	position: relative;
	margin-bottom: 60px;
}
#culture #sec_3 .inbox-tit:after{
	content: "";
	height: 65px;
	width: 1px;
	background: #003985;
	position: absolute;
	bottom: -65px;
	left: 50%;
}
#culture #sec_3 .inbox-txt{
	color: #003985;
	font-size: 24px;
	text-align: center;
	line-height: 1;
	margin-bottom: 50px;
}
#culture #sec_3 .inbox-txt span{
	font-family: 'Montserrat', sans-serif;
	font-size: 108px;
	margin: 0 20px;
	position: relative;
	bottom: -25px;
}
@media screen and (max-width: 767px) {
	#culture #sec_3 .inbox .cnt_left{
		width: 100%;
		float: none;
		margin-bottom: 30px;
	}
	#culture #sec_3 .inbox .cnt_right{
		width: 100%;
		float: none;
	}
	#culture #sec_3 .inbox-tit{
		font-size: 18px;
		padding: 5px 5px;
		margin-bottom: 30px;
	}
	#culture #sec_3 .inbox-tit:after{
		height: 35px;
		bottom: -35px;
	}
	#culture #sec_3 .inbox-txt{
		font-size: 18px;
		margin-bottom: 30px;
	}
	#culture #sec_3 .inbox-txt span{
		font-size: 70px;
		margin: 0 15px;
		bottom: -15px;
	}
}

#culture #sec_4 .box_table{
	margin-top: -50px;
}
#culture #sec_4 .box_table dl{
	padding: 30px 0;
	background: #f4f4f4;
}
#culture #sec_4 .box_table dl{
	display: -ms-flex;
	display: flex;
	align-items: center;
	position: relative;
}
#culture #sec_4 .box_table dl + dl{
	margin-top: 40px;
}
#culture #sec_4 .box_table dl dt{
	display: -ms-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #003985;
	font-size: 24px;
	width: 400px;
	min-height: 100px;
	border-right: 1px solid #003985;
}
#culture #sec_4 .box_table dl dd{
	width: 590px;
	padding: 0 60px;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	#culture #sec_4 .box_table{
		margin-top: -30px;
	}
	#culture #sec_4 .box_table dl{
		padding: 20px;
		background: #f4f4f4;
	}
	#culture #sec_4 .box_table dl{
		display: block;
	}
	#culture #sec_4 .box_table dl + dl{
		margin-top: 30px;
	}
	#culture #sec_4 .box_table dl dt{
		text-align: center;
		margin-bottom: 10px;
		padding-bottom: 10px;
		display: block;
		font-size: 18px;
		width: 100%;
		min-height: 1px;
		border-right: none;
		border-bottom: 1px solid #003985;
	}
	#culture #sec_4 .box_table dl dd{
		width: 100%;
		padding: 0 20px;
	}
}



/* ================================
	#information
================================ */
#information #sec_1 .box_table{
	position: relative;
}
#information #sec_1 .box_table + .box_table{
	margin-top: 100px;
}
#information #sec_1 .box_table + .box_table:before{
	content: "";
	height: 58px;
	width: 1px;
	background: #003985;
	position: absolute;
	top: -80px;
	left: 50%;
}
#information #sec_1 .table1{
	width: 100%;
}
#information #sec_1 .table1 th{
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #fff;
	font-size: 16px;
	text-align: center;
	vertical-align: middle;
	width: 170px;
	background: #003985;
}
#information #sec_1 .table1 td{
	padding: 30px;
	background: #e5ebf3;
}
#information #sec_1 .table1 .box_table-tit{
	color: #003985;
	font-size: 18px;
	margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
	#information #sec_1 .box_table + .box_table{
		margin-top: 50px;
	}
	#information #sec_1 .box_table + .box_table:before{
		height: 28px;
		top: -40px;
	}
	#information #sec_1 .table1 th{
		font-size: 14px;
		width: 90px;
	}
	#information #sec_1 .table1 td{
		padding: 12px 20px;
	}
	#information #sec_1 .table1 .box_table-tit{
		font-size: 14px;
		margin-bottom: 5px;
	}
}



#information #mainv2{
	margin-bottom: 100px;
}
#information #sec_2 .table2{
	width: 100%;
}
#information #sec_2 .table2 th{
	color: #003985;
	font-size: 16px;
	width: 230px;
	padding: 50px 30px;
	box-sizing: border-box;
}
#information #sec_2 .table2 td{
	padding: 50px 0;
}
#information #sec_2 .table2 tr{
	border-bottom: 1px solid #ccd7e7;
}
#information #sec_2 .table2 tr:first-child{
	border-top: 1px solid #ccd7e7;
}
#information #sec_2 .box_table{
	margin-bottom: 50px;
}
#information #sec_2 .btn_list{
	margin-right: -20px;
}
#information #sec_2 .btn_list li{
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
#information #sec_2 .btn_list li .btn_style1{
	width: 320px;
	font-size: 18px;
	padding: 30px 40px;
}
#information #sec_2 .btn_list li .btn_style1 span{
	min-width: 180px;
}
#information #sec_2 .btn_list li .btn_style1 i{
	margin-right: 20px;
	position: relative;
	top: -10px;
}
#information #sec_2 .btn_style1 span:after {
	width: 44px;
	left: 210px;
}
#information #sec_2 .btn_style1 span:before {
	left: 210px;
}
#information #sec_2 .btn_style1:hover span:before {
	width: 44px;
	-webkit-animation: linear btnstyle2 .6s forwards;
	animation: linear btnstyle2 .6s forwards;
}
@-webkit-keyframes btnstyle2 {
	0% {
		width: 0;
	}
	50% {
		width: 44px;
	}
	100% {
		right: -74px;
		left: auto;
		width: 0;
	}
}
@keyframes btnstyle2 {
	0% {
		width: 0;
	}
	50% {
		width: 44px;
	}
	100% {
		right: -74px;
		left: auto;
		width: 0;
	}
}
@media screen and (max-width: 767px) {
	#information #mainv2{
		margin-bottom: 50px;
	}
	#information #sec_2 .table2 th{
		font-size: 14px;
		width: 100px;
		padding: 15px 10px;
	}
	#information #sec_2 .table2 td{
		padding: 20px 0;
	}
	#information #sec_2 .box_table{
		margin-bottom: 30px;
	}
	#information #sec_2 .btn_list{
		margin-right: 0;
	}
	#information #sec_2 .btn_list li{
		float: none;
		margin: 0 0 10px;
	}
	#information #sec_2 .btn_list li .btn_style1{
		width: 100%;
		font-size: 16px;
		box-sizing: border-box;
		padding: 20px 20px;
	}
}


/* ================================
	#privacypolicy
================================ */
#privacypolicy #mainv2{
	margin-bottom: 80px;
}
#privacypolicy #sec_1{
	margin-bottom: 150px;
}
#privacypolicy .s1_txt1{
	margin-bottom: 70px;
}
#privacypolicy .box + .box{
	margin-top: 90px;
}
#privacypolicy .title_style2 {
	font-size: 24px;
	margin-bottom: 40px;
	padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
	#privacypolicy #mainv2{
		margin-bottom: 40px;
	}
	#privacypolicy #sec_1{
		margin-bottom: 70px;
	}
	#privacypolicy .s1_txt1{
		margin-bottom: 30px;
	}
	#privacypolicy .box + .box{
		margin-top: 40px;
	}
	#privacypolicy .title_style2 {
		font-size: 18px;
		margin-bottom: 20px;
		padding-bottom: 10px;
	}
}