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

.main_image{
	background-image:url("../img/company_main_image.png");
	background-position: center;
	background-repeat:no-repeat;
	background-size:cover;
	height:400px;
}

.heading{
	height:200px;
	background-image:url("../../common/img/heading_back.png") ;
	background-size:cover;
	background-position:bottom;
	background-repeat:no-repeat;		
}

.heading .container{
	height:200px;
}


#greeting,
#products{
	background-image:url("../img/greeting_products_back.png") ;
	background-size:cover;
	background-position:center 110px;
	background-repeat:no-repeat;	
	background-position:left 110px;	
}

#history{
	background-image:url("../img/history_back.png") ;
	background-size:cover;
	background-position:center 110px;
	background-repeat:no-repeat;	
/*	padding-bottom:2rem;	*/

}


#greeting{
	height:100vh;
	height:90vh;
}

@-moz-document url-prefix() {
	#greeting{
		height:80vh;
	}
}


#history{
	height:150vh;
}

#products{
		height:60vh;
}

#about,
#principal{
	padding-bottom:2rem;
	height:auto;
	display:block;
	background-color:white;
}



/*
#greeting .container .row .col-md-4{
	display: flex;
	justify-content: center;
}

#greeting img{
	width:100%;
	aspect-ratio:300/323;
}
*/
#principal ol.list-group-numbered{
	padding-left:0;
}

#principal ol.list-group-numbered li{
	line-height:2rem;
}

#history dl{
	display:flex;
	flex-wrap: wrap;
}

#history dl dt{
	width:10%;
	margin-bottom:0;
	padding-bottom:0.5rem;	
}

#history dl dd{
	width:90%;
	padding-left:3rem;
	margin-bottom:0;
	padding-bottom:0.5rem;
}

#history dl dd{
	background-image: url("../img/history_separator.png");
	background-repeat: no-repeat;
}

#history dl dd:first-of-type{
	background-image: url("../img/history_separator_1st.png");
	background-repeat: no-repeat;
}


#about table.table{
	border-color:#00a9ba;
}

#about table.table tr:first-child{
	border-top:1px solid #00a9ba;
}

#products .container .row div{
	text-align: center;
	margin-bottom:2rem;
}

#products img{
	width:80%;
}


#financial .row div div{
	text-align:center;
}


#recruit{
/*	padding-bottom:2rem;*/
	position:relative;
	margin:5rem auto 0;
	display:flex;
	height:500px;
	align-items: center;
	justify-content: center;
	
}

#recruit div{
	width:100%;
}

#recruit2{
	background-image:url("../../img/recruit_back.png");
	background-size:cover;
	background-position: center;
	background-repeat: no-repeat;
	position:relative;
/*	margin:5rem auto 0;*/
	display:flex;
	height:500px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	
}

#recruit h2,
#recruit h2 span.subtitle{
	text-align: center;
}

#recruit h2 span.subtitle{
	color:white;
}
#recruit a{
	text-decoration: none;
}

#contact{
	width:100%;
	text-align: center;
	height:200px;
	display:flex;
	justify-content: center;
	align-items: center;
}

#contact div{
	display:block;
}

#contact a{
	margin:5rem 0;
}




a.download2 span{
	padding:0.1rem 2rem;
	border-radius: 1.5rem;
	background:linear-gradient(45deg,#252989,#00a8ba);
	color:white;
	font-size:1.2rem;
}

a.download2:hover{
	color:white;
}
 







/* for PC */
@media only screen and (min-width:1200px),print{
	
	
.d-flex{
	display:flex;
	flex-direction: row;

	}
		

	
	
}

/* for tablet and smart phone */
@media only screen and (max-width:1199.98px){
	

	
.d-flex{
	display:flex;
	flex-direction: column;
	}
			
	.d-flex div{
		width:98%;
		margin:0 auto;
	}	
	
#history{
	background-image:url("../img/history_back_sp.png") ;
	background-size:cover;
	background-position:right 110px;
	background-repeat:no-repeat;	
/*	padding-bottom:2rem;	*/

}	
	
	
}

@media screen and (max-width:991.98px){
	nav.submenu ul li{
		padding: 0 1rem 0 0;

	}		
}

@media screen and (max-width:767.98px){
#history dl dt{
	width:20%;
}

#history dl dd{
	width:80%;
}	
	
#products .container .row div{
	margin-bottom:2rem;
	}

#greeting{
	height:114vh;
	height:130vh;
	}	
	
	#products{
		height:88vh;
	}
}

@media only screen and (max-width:575.98px){	
/*	
	nav.submenu ul{
		flex-wrap:wrap;
		padding-left:0;
		width:100%;
		
	}
	nav.submenu ul li{
		display: flex;
		justify-content: center;
		width:50%;
		padding:1rem 0;

	}			
	
	
	.contents_inner{
		padding-top: 260px;
    margin-top: -260px;
	}
	*/
	
	nav.submenu{
		display: none;
	}
	
	
	

.main_image{
	background-image:url("../img/company_main_image_sp.png");
	background-position: center;
	background-repeat:no-repeat;
	background-size:cover;
	height:120px;
/*	margin-top:192px;*/
}	

#greeting,
#products{
	background-image:url("../img/greeting_products_back_sp.png") ;
}

#history{
	background-image:url("../img/history_back_sp.png") ;
}


#greeting{
	height:130vh;
}

	
#history{
	height:160vh;	
}

#principal{
	height:150vh;
	}
	
#history dl dt{
		width:20%;
	}	
	
#history dl dd{	
		width:80%;
	}		
	
	
#about{}
	
#products{
	height:100vh;
	height:80vh;
}
	
#dinancial{}
	
	
@-moz-document url-prefix() {	/* for Firefox */
	#history{

		height:160vh;

	}	
}
	
	table.table-bordered th,
	table.table-bordered td{
		wisth:100%;
		display:block;
		text-align: center;
	}	
	
	table.table-bordered th,
	table.table-bordered td.year{
		color:white;
		background-color:gray;
	}

	
}

@media only screen and (max-width:475.98px){	
	#greeting{
		height:140vh;
		height:150vh;

	}
	
	#greeting .container .row{
		font-size:1rem;		
	}
	
	#history{
		height:210vh;
	}	
	#history  dl{
		font-size:1rem;
	}
	
}


@media screen and (max-width:428.98px){
	.btn{
		padding-left:0;
		padding-right:0;
	}
	
	a.download2 span{
		font-size:0.8rem;
	}
}

@media only screen and (max-width:375.98px){	
	#greeting{
		height:150vh;
	}
	
	#history{
		height:240vh;
	}

	
}

