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

#contents{
	padding-bottom: 0px;
}

#contents main #mainphoto div{
	position: absolute;
	top:0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center top;
	z-index: 1;
}

#contents main #mainphoto div,
#contents.check main #mainphoto div{
	transform: scale(1.2,1.2);
	-webkit-transform:scale(1.2,1.2);
	-moz-transform:scale(1.2,1.2);
	-ms-transform:scale(1.2,1.2);
	-o-transform:scale(1.2,1.2);
}

#contents.load main #mainphoto div{
	transform: scale(1.2,1.2);
	-webkit-transform:scale(1.2,1.2);
	-moz-transform:scale(1.2,1.2);
	-ms-transform:scale(1.2,1.2);
	-o-transform:scale(1.2,1.2);
	
	-webkit-animation: shrink 1.2s forwards cubic-bezier(.07,.68,.41,1) .8s;
	animation: shrink 1.2s forwards cubic-bezier(.07,.68,.41,1) .8s;
}

#contents main #mainphoto div{
	background-image: url(../img/main_company.jpg);
	background-position: right center;
}



#contentsarea{
	border-top: #666 solid 1px;
}


#contentsarea #historybox{
	position: relative;
	background-color: #f5f5f5;
}

#contentsarea #historybox article{
	position: relative;
	padding: 100px 0px;
}

#contentsarea #historybox article::before{
	content: "";
	position: absolute;
	width: 2px;
	height: 100%;
	top: 0;
	left: calc(50% - 1px) ;
	background-color: #b8d2e8;
}

#contents_info_txt span{
	display: inline-block;
}


/* history *********************************************/


#historybox dl{
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#historybox dl dt{
	position: relative;
	color: #FFF;
	width: 182px;
	z-index: 5;
}

#historybox dl dt div{
	font-size: 30px;
	font-weight: 600;
	background-color: #0087c1;
	text-align: center;
	line-height: 1.2;
	padding: 5px;
	min-height: 70px;
}

#historybox dl dd{
	position: relative;
	min-height: 70px;
	background-color: #FFF;
	z-index: 10;
}

#historybox dl dt small{
	display: block;
	font-size: 16px;
}

#historybox dl dd h2{
	font-size: 26px;
	font-weight: 600;
	line-height: 1.4;
}

#historybox dl dd h3{
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	text-align:justify;
	text-justify:distribute;
}

#historybox dl dd p{
	line-height: 1.8;
	text-align: center;
	padding: 10px 0px 0px;
}

#historybox dl dd figure{
	padding: 20px 0px 10px;
	text-align: center;
}


/* history_center */

#historybox .history_center {
	margin-bottom: 100px;
}

#historybox .history_center dt{
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 20;
}


#historybox .history_center dd{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 60px 50px 50px;
	text-align: center;
}

#historybox dl.history_center dd h3{
	text-align: center;
}

/* history_center */


/* history_side */

#historybox .history_left{
	width : calc(50% + 91px) ;
	margin: 0px auto 25px 0px;
	flex-direction: row-reverse;
}

#historybox .history_right{
	width : calc(50% + 91px) ;
	margin: 0px 0px 25px auto;
	
}

#historybox dl.history_left dt div,
#historybox dl.history_right dt div{
	background-color: #006dc1;
}


#historybox .history_left dt::before,
#historybox .history_right dt::before{
	content: "";
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: -1;
	top: 50%;
	margin-top: -1px;
	background-color: #006dc1;
}

#historybox .history_left dt::before{
	right: 100%;
}

#historybox .history_right dt::before{
	left: 100%;
}

#historybox .history_left dd{
	width: calc(100% - 220px) ;
	padding: 20px;
}

#historybox .history_right dd{
	width: calc(100% - 220px) ;
	padding: 20px;
	margin: 0px 0px 0px auto;
}

/* history_side */


/* history_both */

#historybox .history_both{
	margin-bottom: 25px;
}

#historybox .history_both dt{
	order: 1
}

#historybox dl.history_both dt::before{
	content: "";
	position: absolute;
	width: 200%;
	height: 2px;
	z-index: -1;
	top: 50%;
	left: 50%;
	margin-top: -1px;
	background-color: #006dc1;
	transform: translateX(-50%);
}

#historybox dl.history_both dt div{
	background-color: #006dc1;
}

#historybox .history_both dd{
	width: calc(50% - 132px) ;
	padding: 20px;
}

#historybox .history_both dd:nth-of-type(1){
	order: 0
}

#historybox .history_both dd:nth-of-type(2){
	order: 2
}



/* history_both */


#historybox dl dd h3 span {
    background: linear-gradient(transparent 60%, #fff45c 0%);
}

#historybox dl.inview_anime_on dd h3 span {
  padding-bottom: 0em;
  background: -webkit-linear-gradient(left, #fff45c 50%, transparent 50%) 100% bottom / 200% 50% no-repeat;
  background: linear-gradient(to right, #fff45c 50%, transparent 50%) 100% bottom / 200% 50% no-repeat;
  
  animation: marker_move .5s forwards ease-out 800ms;
}

@keyframes marker_move{
	0% {
		background-position: 100% bottom;
	}
	100% {
		background-position: 0% bottom;
	}
}


#historybox dl dd figure i{
	position: relative;
	display: inline-block;
}


#historybox dl dd figure i::before{
	content: "";
	position: absolute;
	display: block;
	z-index: 10;
	background-color: #FFF;
	width: 100%;
	height: 100%;
	right: 0%;
	top:0;
}

#historybox dl dd figure i::after{
	content: "";
	position: absolute;
	display: block;
	z-index: 8;
	background: rgb(0,145,193);
	background: -webkit-linear-gradient(44deg, rgba(0,145,193,1) 0%, rgba(0,106,193,1) 100%);
	background: -o-linear-gradient(44deg, rgba(0,145,193,1) 0%, rgba(0,106,193,1) 100%);
	background: linear-gradient(134deg, rgba(0,145,193,1) 0%, rgba(0,106,193,1) 100%);
	width: 100%;
	height: 100%;
	right: 0%;
	top:0;
}

.load #historybox dl.inview_anime_on dd figure i::before{
	width: 100%;
	height: 100%;
	right: 0%;
	
	animation: width_0 .6s forwards cubic-bezier(.86,0,.07,1) 1.2s;
}

.load #historybox dl.inview_anime_on dd figure i::after{
	width: 100%;
	height: 100%;
	right: 0%;
	
	animation: width_0 .6s forwards cubic-bezier(.86,0,.07,1) 1.8s;
}



/* history *********************************************/



@media screen and (max-width: 1000px) {
	
	#historybox dl dd h2{
		font-size: 24px;
		font-weight: 600;
		line-height: 1.4;
	}

	#historybox dl dd h3{
		font-size: 18px;
		font-weight: 600;
		line-height: 1.4;
		text-align:justify;
		text-justify:distribute;
	}
	
	#historybox dl dt{
		position: relative;
		color: #FFF;
		width: 140px;
		z-index: 5;
	}

	#historybox dl dt div{
		font-size: 26px;
		font-weight: 600;
		background-color: #0087c1;
		text-align: center;
		line-height: 1.2;
		padding: 4px;
		min-height: 60px;
	}
	
	#historybox dl dt small{
		display: block;
		font-size: 14px;
	}

	#historybox dl dd{
		position: relative;
		min-height: 60px;
		background-color: #FFF;
		z-index: 10;
	}
	
	#historybox .history_center {
		margin-bottom: 70px;
	}
	
	
	/* history_side */

	#historybox .history_left{
		width : calc(50% + 70px) ;
		margin: 0px auto 15px 0px;
		flex-direction: row-reverse;
	}

	#historybox .history_right{
		width : calc(50% + 70px) ;
		margin: 0px 0px 15px auto;

	}

	#historybox dl.history_left dt div,
	#historybox dl.history_right dt div{
		background-color: #006dc1;
	}


	#historybox .history_left dt::before,
	#historybox .history_right dt::before{
		content: "";
		position: absolute;
		width: 100%;
		height: 2px;
		z-index: -1;
		top: 50%;
		margin-top: -1px;
		background-color: #006dc1;
	}

	#historybox .history_left dt::before{
		right: 100%;
	}

	#historybox .history_right dt::before{
		left: 100%;
	}

	#historybox .history_left dd{
		width: calc(100% - 160px) ;
		padding: 20px;
	}

	#historybox .history_right dd{
		width: calc(100% - 160px) ;
		padding: 20px;
		margin: 0px 0px 0px auto;
	}

	/* history_side */


	/* history_both */

	#historybox .history_both{
		margin-bottom: 15px;
	}

	#historybox .history_both dt{
		order: 1
	}

	#historybox dl.history_both dt::before{
		content: "";
		position: absolute;
		width: 200%;
		height: 2px;
		z-index: -1;
		top: 50%;
		left: 50%;
		margin-top: -1px;
		background-color: #006dc1;
		transform: translateX(-50%);
	}

	#historybox dl.history_both dt div{
		background-color: #006dc1;
	}

	#historybox .history_both dd{
		width: calc(50% - 90px) ;
		padding: 20px;
	}

	#historybox .history_both dd:nth-of-type(1){
		order: 0
	}

	#historybox .history_both dd:nth-of-type(2){
		order: 2
	}



	/* history_both */

	
}



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



@media screen and (max-width: 768px) {
	
	
	#history_center p{
		text-align:justify;
		text-justify:distribute;
	}
	
	
	/* history_side */

	#historybox .history_left{
		width : calc(50% + 70px) ;
		margin: 0px auto 25px 0px;
		flex-direction: row-reverse;
	}

	#historybox .history_right{
		width : calc(50% + 70px) ;
		margin: 0px 0px 25px auto;

	}

	#historybox dl.history_left dt div,
	#historybox dl.history_right dt div{
		background-color: #006dc1;
	}


	#historybox .history_left dt::before,
	#historybox .history_right dt::before{
		content: "";
		position: absolute;
		width: 2px;
		height: 100%;
		z-index: -1;
		top: 50%;
		margin-top: -1px;
		background-color: #006dc1;
	}

	#historybox .history_left dt::before{
		right: auto;
		left: 30px;
	}

	#historybox .history_right dt::before{
		left: auto;
		right: 30px;
	}

	#historybox .history_left dd{
		width: calc(100% - 85px) ;
		padding: 20px;
		margin: 10px auto 0px 0px;
	}

	#historybox .history_right dd{
		width: calc(100% - 85px) ;
		padding: 20px;
		margin: 10px 0px 0px auto;
	}

	/* history_side */
	
	
	
	/* history_both */

	#historybox .history_both{
		margin-bottom: 15px;
		align-items: flex-start;
	}

	#historybox .history_both dt{
		order: 0;
		width: 100%;
		margin-bottom: 10px;
	}
	
	#historybox .history_both dt div{
		width: 140px;
		margin: 0 auto;
	}

	#historybox dl.history_both dt::before,
	#historybox dl.history_both dt::after{
		content: "";
		position: absolute;
		width: 2px;
		height: 100%;
		z-index: -1;
		top: 50%;
		margin-top: -1px;
		background-color: #006dc1;
	}
	
	#historybox dl.history_both dt::before{
		left: calc(50% - 40px) ;
	}	
	
	#historybox dl.history_both dt::after{
		right: calc(50% - 40px) ;
	}

	#historybox dl.history_both dt div{
		background-color: #006dc1;
	}

	#historybox .history_both dd{
		width: calc(50% - 15px) ;
		padding: 20px;
	}

	#historybox .history_both dd:nth-of-type(1){
		order: 1
	}

	#historybox .history_both dd:nth-of-type(2){
		order: 2
	}



	/* history_both */
}


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



@media screen and (max-width: 480px) {
	
	#historybox .inner{
		width: 92%;
	}
	
	#historybox dl dd h2 {
		font-size: 20px;
		font-weight: 600;
		line-height: 1.4;
	}
	
	#historybox dl dd h3 {
		font-size: 16px;
		font-weight: 600;
		line-height: 1.4;
		text-align: justify;
		text-justify: distribute;
	}
	
	#historybox .history_center dd {
		width: 100%;
		max-width: 1000px;
		margin: 0 auto;
		padding: 40px 5% 5%;
		text-align: center;
	}
	
	#historybox .history_center p {
		text-align:justify;
		text-justify:distribute;
	}
	
	#historybox .history_left dd,
	#historybox .history_right dd{
		padding: 5%;
	}
	
	#historybox .history_left dd,
	#historybox .history_right dd{
		width: calc(100% - 80px);
	}
	
	#historybox .history_both dd{
		width: calc(50% - 10px) ;
		padding: 5%;
	}
	
}


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

