@charset "utf-8";



/*----------------
	header
--------------------*/

.en #header_wrap {
	background: transparent;
}

.en #header_area {
	/*margin: 10px auto 0;*/
}

.en #header_wrap.smallhead #header_area {
	margin: 0 auto;
}

.en #logo img.logo_black {
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.en .smallhead #logo img.logo_black {
	opacity: 1;
}

.en #header_wrap .menu_link {
	color: #fff !important;
	text-shadow: 0 0 20px rgba(29, 54, 71, 0.15);
}

.en #header_wrap.smallhead .menu_link {
	color: #333 !important;
}

.menu_item.contact a{
	display:block;
	min-width:166px;
}
.menu_item.contact a span{
	display:inline-block;
}


/*----------------
	footer
--------------------*/

.footer_main.en{
	padding:50px 20px 45px 20px;
	justify-content: center;
}




/**/

#en_wrap {
	position: relative;
	width: 100%;
}

#en_main {
	/*background: #000000;*/
	position: relative;
	overflow: hidden;
}

#en_main .mv_img{
	height:100vh;
}

#en_main img{
	display: block;
    width: 100%;
    height: 100%!important;
	object-fit:cover;
	vertical-align:bottom;
	position: fixed;
	z-index: -1;
}

.mv_copy{
	position:absolute;
	left:11.9%;
	/*bottom: calc(50% - 176px);*/
	color:#fff;
	height: 100vh;
    margin: auto;
    display: flex;
    align-items: center;
    top: 0;
    bottom: 0;
}

.mv_copy h1{
	font-family: 'Roboto', sans-serif;
	font-size:5.0rem;
	line-height:1.5;
	letter-spacing:0;
}




.scroll{
	font-family: 'Roboto', sans-serif;
    font-size: 1.5rem;
    letter-spacing: 0;
    line-height: 16px;
    color: #fff;
    writing-mode: vertical-rl;
    position: absolute;
    bottom:110px;
    right: 20px;
    padding-bottom: 150px;
}

.scroll::before,
.scroll::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 1px;
    left: 0;
    width: 1px;
    height: 145px;
    margin: auto;
}

.scroll::before {
    background: #333;
}

.scroll::after {
    background: #fff;
    animation: scroll 3s infinite;
}

@keyframes scroll {
    0% {
        bottom: 145px;
        height: 0;
    }

    20% {
        bottom: 0;
        height:145px;
    }

    100% {
        height: 0;
    }
}


/**/

.en_ttl {
	position: relative;
	display: inline-block;
	margin-bottom: 50px;
}


.en_ttl h2 {
	display: block;
    font-family: 'Michroma', sans-serif;
    font-size: 6.8rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
    color: #2B5872;
	margin:0;
}


.en_catch{
	font-size:2.8rem;
	font-weight:500;
	letter-spacing:0;
	line-height:1.5;
	margin-bottom:45px;
}


/*----------------
	about
--------------------*/

#en_about{
	padding:285px 0 150px 0;
	/*background:#dbdbdb;*/
}

.about_area{
	max-width:1240px;
	display:flex;
	flex-wrap:wrap;
	padding:0 20px;
	margin:0 auto;
	/*color:#fff;*/
}

.about_area .en_ttl{
	margin-bottom:35px;
}

.about_area {
	letter-spacing:0.05em;
}

.about_txt{
	width:50%;
	margin-top:100px;
}

.about_img{
	width:46%;
	margin-left:4%;
}
.about_img img{
	width:100%;
}

.about_area .top_catch,.about_area .top_ttl h2,.about_area .en_ttl h2,
.en_technology_area .top_catch,.en_technology_area .top_ttl h2,.en_technology_area .en_ttl h2{
	color:#fff;
}
body.show-bg .about_area .top_catch,body.show-bg .about_area .top_ttl h2,body.show-bg .about_area .en_ttl h2,
body.show-bg .en_technology_area .top_catch,body.show-bg .en_technology_area .top_ttl h2,body.show-bg .en_technology_area .en_ttl h2{
	color:#2B5872;
}
body.show-bg .about_area .top_catch,body.show-bg .about_area .top_ttl h2,body.show-bg .about_area .en_ttl h2,
body.show-bg .en_technology_area .top_catch,body.show-bg .en_technology_area .top_ttl h2,body.show-bg .en_technology_area .en_ttl h2{
	color:#2B5872;
}
.about_area p, .en_technology_area p{
	color:#fff;
	margin-bottom:50px;
}
body.show-bg .about_area p, body.show-bg .en_technology_area p{
	color:#222;
}
/*----------------
	Technology
--------------------*/

#en_technology{
	position:relative;
	padding: 50px 0 0 0;
}
.en_technology_area{
	max-width:1240px;
	margin:auto;
	padding:0 20px;
}


.en_technology_item{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:45px;
}
.en_technology_img{
	width:45.8%;
	margin-right:4.2%;
}
.en_technology_txt{
	width:45.8%;
	margin-left:4.2%;
}

.en_technology_txt span{
	display:block;
	font-family: 'Poppins', sans-serif;
	font-size:2.0rem;
	font-weight:500;
	letter-spacing:0;
	color:#fff;
}
body.show-bg .en_technology_txt span{
	color:#2B5872;
}
.en_technology_txt h3{
	font-family: 'Poppins', sans-serif;
	font-size:4.0rem;
	font-weight:500;
	letter-spacing:0;
	line-height:1.4;
	color:#fff;
	margin-top:0;
	margin-bottom:20px;
}
body.show-bg .en_technology_txt h3{
	color:#2B5872;
}








.content_wrap_bg::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all 0.5s ease 0s;
    background: #fff;
    z-index: -1;
}
.content_wrap_bg.show-bg::before {
    opacity: 1;
}

/*----------------
	product
--------------------*/
#en_product{
	background:#fff;
	padding:110px 0 80px 0;
}
.en_product_area{
	max-width:1240px;
	margin:auto;
	padding:0 20px;
}

#en_product .en_catch{
	font-family: 'Roboto', sans-serif;
	font-size:3.4rem;
	font-weight:400;
}

.en_product_img_block{
	display:flex;
	flex-wrap:wrap;
}

.en_product_img{
	width:49.2%;
	margin-right:1.6%;
}
.en_product_img:last-child{
	margin-right:0;
}
.en_product_img p{
	font-size:1.6rem;
	text-align:center;
	margin-top:5px;
}

/*----------------
	product  history
--------------------*/
#en_company{
	padding:125px 0 0 0;
}
.en_company_area{
	max-width:1240px;
	margin:auto;
	padding:0 20px;
}
#en_company h2,#en_history h2{
	color:#fff;
}
body.show-bg #en_company h2,body.show-bg #en_history h2{
	color:#2B5872;
}
#en_company .table_no_bg,#en_history .table_no_bg{
	color:#fff;
}
body.show-bg #en_company .table_no_bg,body.show-bg #en_history .table_no_bg{
	color:#222;
}
#en_history{
	padding:150px 0 100px 0;
}
.en_history_area{
	max-width:1240px;
	margin:auto;
	padding:0 20px;
}

/*----------------
	Equipment
--------------------*/
#en_equipment{
	padding:150px 0 30px 0;
	background:#fff;
}
.en_equipment_area{
	max-width:1240px;
	margin:auto;
	padding:0 20px;
}

.table_equipment table th{
	position:relative;
	background:#fff;
	width:55.25%;
	line-height:2.0;
}

.table_equipment table th:after{
	position: absolute;
    content: "";
    width: 1px;
    height: calc(100% - 40px);
    background: #DDDDDD;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

.table_equipment table tr td:nth-child(2){
	position:relative;
	width:34.6%;
}

.table_equipment table tr td:nth-child(2):after{
	position: absolute;
    content: "";
    width: 1px;
    height: calc(100% - 40px);
    background: #DDDDDD;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
.table_equipment table td{
	line-height:2.0;
}
.table_equipment table tr td:last-child{
	width:10.15%;
	text-align:center;
}
.table_equipment table tr:last-child{
	border-bottom:none;
}


@media screen and (max-width:767px) {
	
	
	/*----------------
		header
	--------------------*/


	.home #logo img.logo_black,
	.home .smallhead #logo img.logo_black {
		opacity: 1;
	}

	.home #header_wrap .menu_link {
		text-shadow: none;
	}

	.home #header_wrap.smallhead .menu_link {
		color: #fff !important;
	}
	
	
	#menu{
		padding:0 15px 0 0;
	}
	.menu_list{
		display:flex;
	}
	#menu ul,#menu nav ul li{
		border:none;
	}
	#menu .menu_item.contact{
		margin-top:0;
	}
	#menu .menu_item.contact a, #header_wrap.smallhead .menu_item.contact a{
		padding:11px 20px 14px 20px;
	}
	
	.menu_item.contact a{
		min-width:120px;
	}
	
	
	.footer_main.en{
		padding:20px;
	}
	.footer_main.en a{
		display:inline-block;
	}
	.footer_main.en strong{
		text-align:center;
		    
	}
	.footer_main.en strong img{
		max-width: 65%;
		margin:auto;
	}

	/*----------------
		Top 共通
	-----------------*/
	
	.en_ttl{
		margin-bottom:30px;
	}
	.en_ttl h2{
		font-size:4.0rem;
	}
	
	.en_catch{
		font-size:2.0rem;
		margin-bottom:20px;
	}
	


	
	.mv_copy{
		left:30px;
		right:20px;
	}

	.mv_copy h1{
		font-size:3.5rem;
	}

	

	.scroll{
		bottom:40px;
	}
	
	
	


	
	/*----------------
		about
	--------------------*/
	
	#en_about{
		padding:100px 0 50px 0;
	}
	
	.about_txt{
		width:100%;
		margin-top:0;
	}
	.about_img{
		width:100%;
		margin-left:0;
		margin-top:20px;
	}
	
	.about_area p{
		margin-bottom:20px;
	}


	
	
	/*----------------
		technology
	--------------------*/
	
	.en_technology_item{
		margin-bottom:25px;
	}
	
	.en_technology_img,.en_technology_txt{
		width:100%;
		margin:0;
	}
	
	.en_technology_txt span{
		font-size:1.6rem;
		margin-top:8px;
	}
	
	.en_technology_txt h3{
		font-size:2.5rem;
		margin-bottom:8px;
	}
	

	/*----------------
		Product
	--------------------*/
	
	#en_product{
		padding:50px 0 40px 0;
	}
	#en_product .en_catch{
		font-size:2.0rem;
	}

	
	.en_product_img{
		width:100%;
		margin:0 0 20px 0;
	}
	
	
	/*----------------
		company
	--------------------*/
	#en_company{
		padding:60px 0 0 0;
	}
	
	.en .table_no_bg table th{
		background: transparent;
		border-bottom:1px solid #ccc;
	}
	.en .table_no_bg table th:after{
		content:none;
	}
	
	#en_company .table_no_bg table, #en_history .table_no_bg table{
		margin-top:0;
	}

	/*----------------
		equipment
	--------------------*/
	
	#en_equipment{
		padding:50px 0 15px 0;
	}
	
	.table_equipment table{
		margin-top:0;
	}
	
	.table_equipment table tr{
		display:flex;
		flex-wrap:wrap;
	}
	.table_equipment table th{
		display:block;
		width:100%;
		position:relative;
		padding:10px;
	}
	.table_equipment table th:after{
		width: 100%;
    	height: 1px;
		top:unset;
		margin:0;
	}
	
	.table_equipment table tr td:nth-child(2){
		display:block;
		width:80%;
		padding:10px;
	}
	
	.table_equipment table tr td:nth-child(2):after{
		content:none;
	}

	.table_equipment table tr td:last-child{
		display:block;
		width:20%;
		padding:10px;
		text-align:right;
	}
	
}