﻿/* index */
#index .box { padding: 30px; }
#index #visual{
	position:relative;
}
#index #visual .copy{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 999;
    display: block;
    width: 100%;
}
#index #visual .copy h2{
	color:#fff;
	font-size:6.0rem !important;
	text-align:center;
	padding-top:10%;
	width:100%;
	display:block;
    text-shadow: 0 0 15px #000, 0 0 10px #000, 0 0 8px #000;
}
#index #bg_product,
#index #bg_quality,
#index #bg_eq,
#index #bg_idea{
	position:relative;
	padding-top:16.25%;
}

#index #bg_product{
	width: 67%;
	float:left;
	background: url('../img/top/products.jpg') center center / cover no-repeat;
}
#index #bg_quality{
	width: 33%;
	float:left;
	background: url('../img/top/equipment.jpg') 0 0 / cover no-repeat;
}
#index #bg_eq{
	width: 33%;
	float:left;
	background: url('../img/top/quality.jpg') 0 0 / cover no-repeat;
}
#index #bg_idea{
	width: 67%;
	float:right;
	background: url('../img/top/idea.jpg') 0 0 / cover no-repeat;
}
#index > div:nth-of-type(3) > div:nth-of-type(1) > a,
#index > div:nth-of-type(3) > div:nth-of-type(2) > a,
#index > div:nth-of-type(4) > div:nth-of-type(1) > a,
#index > div:nth-of-type(4) > div:nth-of-type(2) > a {
	display: block;
	width: 100%;
	height: 100%;
	/*background: rgba(0,0,0,.5);*/
	position:absolute;
	top:0;
	left:0;
}
#index > div:nth-of-type(3) > div:nth-of-type(1) > a:hover,
#index > div:nth-of-type(3) > div:nth-of-type(2) > a:hover,
#index > div:nth-of-type(4) > div:nth-of-type(1) > a:hover,
#index > div:nth-of-type(4) > div:nth-of-type(2) > a:hover {
	background: rgba(0,0,0,0.5);
	opacity: 1;
}

#topic ul { padding-bottom: 20px; color: #666; }
#topic ul a { color: #666; }
/*#topic ul > li:not(nth-of-type(2)) { padding: 4px 0; }*/
#topic ul > li:nth-of-type(1) { white-space: nowrap; }
#topic ul > li:nth-of-type(2) > p { padding: 4px 0; min-width: 100px; background:#00BAD8; color: #fff; text-align: center; font-size: 1.1rem; margin:0;}
#topic ul > li.v2:nth-of-type(2) > p { background: #002260; }
/*#index #topic > div:nth-of-type(2) > ul:last-of-type { padding-bottom: 0; }*/
@media screen and (min-width:768px),print{
	#index #topic > div:nth-of-type(1) { width: 100%; }
	#index #topic > div:nth-of-type(2) > div { width: 50%; }
	#index #topic > div:nth-of-type(3) { width: 40%; }
	#topic ul {
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flexbox;
		display: -moz-flexbox;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-box-align: center;
		-moz-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		-moz-align-items: center;
		align-items: center;
	}
	#under #topic ul { padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #f0f0f0;}
	#topic ul > li:nth-of-type(2) { margin: 0 30px; }
}
@media screen and (min-width:768px) and (max-width:1259px){
	#index #topic > div:nth-of-type(2){ display:block;}
	#index #topic > div:nth-of-type(2) > div { width: 100% !important; }
}

/*contents*/
#visual.history { background: url('../img/about/header.jpg') center center; }
#visual.product{ background: url('../img/product/header.jpg') center center #9F9EA1 no-repeat; background-size:cover;}
#visual.product h2 {
	background: rgba(0,0,0,0);
}
#visual.equipment{ background: url('../img/equipment/header.jpg') center center; background-size: cover;}
#visual.quality{ background: url('../img/quality/header.jpg') center center; background-size: cover;}
#visual.idea{ background: url('../img/idea/header.jpg') center center; background-size: cover;}


/*greeting*/
@media screen and (min-width:768px),print{
	#greeting > div:first-of-type > div:nth-of-type(2) { padding-left: 60px; }
	#rinen { padding: 0 150px; }
	#rinen li { padding-bottom: 30px; }
}
#under .p1 { font-size: 2.4rem; }
#under .p2 span { color: #f00; }
#under .p3 { padding-left: 10px; font-size: 2.0rem; border-left: 5px solid #4CAFE2; }
#under .p4 { margin-left: 25px; position: relative; }
#under .p4 > p:before { margin-left: -25px; position: absolute; content: '\f111'; font-family: 'fontawesome'; color: #4CAFE2; font-size: 1.0rem; }

/* mission */
#mission .box{
	width:46%;
	padding:40px 20px;
	position:relative;
	border:2px solid #003366;
	min-height:260px;
	vertical-align:middle;
	background:#003366;
}
#mission .box:before{ top:0;}
#mission .box:after{ bottom:0;}
#mission .box p{
	font-size:2.4rem;
	font-weight:bolder;
	text-align:center;
	color:#fff;
	margin:0;
}


/*about*/
.about dl.list.bdb dd p{ margin-bottom:15px !important;}
.about dl.list.bdb dd{ padding-bottom:15px; margin-bottom:15px;}
#cp_area > div > p{ width:50%;}
#cp_area > div > p img{ width:100%;}
#cp_area > div > dl.list{width:50%;}
@media screen and (min-width:768px){
	#cp_area > div > p{ width:25%;}
}
/*history*/

/*map*/
@media screen and (min-width:768px),print{
	#access > div:nth-of-type(1) > div { padding-left: 30px; }
	#map_canvas{
		position: relative;
		padding: 0 0 30%;
		height: 0;
		overflow: hidden;
		width:100%;
	}
	#map_canvas iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}
}
#access > div:nth-of-type(1) > div > p:nth-of-type(1) { line-height: 180%; }
#access > div:nth-of-type(1) > div > p:nth-of-type(2) { padding-top: 10px; }
@media screen and (max-width:768px){
	#map_canvas iframe{ position:relative; width:100%;}
}
/*product*/
.example_list .box{ width:23%; margin:0 1% 50px;}
.example_list .box a{
	display:block;
	margin:0 auto;
	border:1px solid #f0f0f0;
	box-shadow:5px 5px 1px #ddd;
	background:#fff;
	color:#000000;
	text-align:center;
	transition: all .2s ease;
}
.example_list .box a:hover{
	opacity:1;
}
.example_list .box a > div{
	width:230px;
	height:230px;
	overflow:hidden;
}
.example_list .box a > div img{ width:100%;transition: all 1s ease;}
/*.example_list .box a > div img:hover{
    -webkit-transform:scale(1.2);
    transform:scale(1.2);
	opacity:1;
}
*/
.example_list .box a dl{
	padding:12px 0 20px 0;
}
.example_list .box a dl dt,
.example_list .box a dl dd{ margin:0;}
.example_list .box a dl dt{ font-size:1.8rem; font-weight:bolder; display:block; padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid #ccc; letter-spacing:-0.8px;}
.example_list .box a dl dd{ font-size:1.3rem; line-height:180%;}

/* 221013 add */
.movie_box {
	width: 100%;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.movie_box video {
	border: #ccc 1px solid;
	top:0;
	width: 100%;
	height: 100%;
	background: #000;/*背景を黒で表示 */
}
.example_list_three{ max-width: 750px; margin-left: auto; margin-right: auto;}
.example_list_three .box{
	width:33%;
	max-width: 230px;
}
/* .example_list_three .box a:not(.product_pdf_btn){min-height: 280px!important;} */
.example_list_three::before{
	content:"";
	display: block;
	width:33%;
	order:1;
}
.example_list_three::after{
	content:"";
	display: block;
	width:33%;
}

.product_pdf_btn {
	width: 100%;
	display: block;
	background-color: #00BAD8!important;
	color: #fff!important;
	font-weight: bold;
	padding: 10px!important;
	position: relative;
	text-align: center;
	cursor: pointer;
	box-shadow: 5px 5px 1px #ddd;
}
.product_pdf_btn::before {
    content: "";
    position: absolute;
    top: 50%; 
    right: 10px;
    transform: translateY(-50%); 
    border: 5px solid transparent;
    border-left: 8px solid #fff;
}
@media screen and (max-width: 1100px){
.example_list_three .box a dl dt{ font-size:1.6vw;}
}
@media screen and (min-width: 768px) and (max-width: 999px){
.example_list_three .box{
	width:48%;
	max-width: 400px;
}
.example_list_three::before{
	width:48%;
}
.example_list_three::after{
	width:48%;
}
.example_list_three .box a dl dt{ font-size:1.8rem;}
}
@media screen and (min-width:768px),print{
	#product > section:nth-of-type(1) > div { padding-bottom: 30px; }
	#product.car > section:nth-of-type(1) > div > p,
	#product.car > section:nth-of-type(1) > div > p > img { width: 400px; }
/*	#product.oa > section:nth-of-type(1) > div > div img { width: 400px; }*/
	#product.oa > section:nth-of-type(1) > div > p:nth-of-type(1),
	#product.press > section:nth-of-type(1) > div >*:first-child { padding-right: 60px; }
	#product > section:nth-of-type(2) > div > a { margin-left: 12.18%; width: 250px; }
	#product > section:nth-of-type(2) > div > a:nth-of-type(3n+1) { margin-left: 0; }
}
#product > section:nth-of-type(2) > div > a { display: inline-block; margin-top: 60px; text-align: center; font-size: 0; vertical-align: top; }
#product > section:nth-of-type(2) > div ul > li:nth-of-type(2) { padding-top: 20px; }
#product > section:nth-of-type(2) > div ul > li:nth-of-type(2) p { margin-bottom: 0; text-align: left; font-size: 1.4rem; }

/* equipment */
.eq_list .box{
	margin:0 auto;
	width:100%;
	border:1px solid #ccc;
	box-shadow:6px 6px 1px #ddd;
	background:#fff;
	color:#000000;
	text-align:left;
	margin-bottom:50px;
}
.eq_list .box dl{padding:20px;}
.eq_list .box dl dt{ font-size:1.6rem;}
.eq_list .box .eq_imgbox {
	position: relative;
	overflow: hidden;
	aspect-ratio: 480 / 320;
}
.eq_list .box .eq_imgbox img{
	min-width: 100%;
    min-height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
    font-family: 'object-fit:cover;';
    transition: 0.5s all;
}
@media screen and (min-width:768px),print{
	.eq_list .box dl{ width:460px; padding:20px;}
	.eq_list .box div,
	.eq_list .box .eq_imgbox{ width:480px; line-height:100%;}
}
@media screen and (min-width:768px) and (max-width:1259px){
	.eq_list .box dl{ width:100%;}
	.eq_list .box div,
	.eq_list .box .eq_imgbox{ width:100%; line-height:100%;}
}
@media screen and (max-width:768px){
	.eq_list .box dl dd{ padding-left:0;}
}

/* idea */
#idea .inner2 {
	min-width: 1000px;
	max-width: 1000px;
	position: relative;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 20px 0;
}
@media screen and (min-width:768px) and (max-width:1259px){
	#idea .inner2 {
		min-width: 90%;
		max-width: 90%;
	}
}

#idea .inner2 > div {
	text-align:left;
}
#idea h3 {
	font-size: 2.2rem;
	color: #111111;
	text-align: left;
	font-weight: 600;
	margin: 0 auto 15px;
	padding-bottom:0;
	position:relative;
}
#idea h3 .num{
	width:50px;
	line-height:50px;
	height:50px;
	vertical-align:middle;
	margin-right:20px;
	color:#fff;
	background:#02245E;
	display:inline-block;
	text-align:center;
	font-size: 4.2rem;
}

#idea .inner2 p {
	font-size: 1.6rem;
	line-height: 180%;
	color: #545454;
	text-align: left;
	padding: 0;
	margin: 0 auto 20px;
}
#idea .body1, #idea .body2, #idea .body3, #idea .body4, #idea .body5, #idea .body6{
	padding:20px 0;
}
#idea .inner2 div{
	width:45%;
	float:left;
}
#idea .inner2 .img{
	float:right;
	width:48%;
}
#idea .inner2 .img img{ width:100%;}
#idea .body5 .inner2 div#torihiki{
	float:left;
	padding-right:30px;
}
@media screen and (max-width:1200px) {
	#idea .inner2 {
		min-width: 1px;
		max-width: 90%;
		width: 90%;
		padding: 0;
	}
	#idea .body2 .inner2 {
		padding: 45px 0 0;
	}
	#idea h3 {
		padding-left:40px;
		margin-bottom:20px !important;
		padding-bottom:0;
	}
	#idea h3 .num{
		width:30px;
		line-height:30px;
		height:30px;
		margin-right:0px;
		font-size: 2.2rem;
	}
	#idea .inner2 .img {
		position: static !important;
		width: 100% !important;
		margin: 0 auto 20px !important;
	}
	#idea .inner .img img, #idea .inner2 .img img {
		max-width: none;
		width: 100%;
	}
	#idea .inner2 div{
		width: 100% !important;
		margin: 0 auto 20px !important;
	}
}
#naiyou{ width:50%;}
.tohiki ul{ width:50%;}
@media screen and (max-width:1120px){
	#naiyou{ width:100%;}
	.tohiki ul{ width:100%;}
}


#philosophy{
	background:url(../img/about/bg_philosophy.jpg) center bottom no-repeat;
	background-size:100%;

}
#philosophy .inner{ padding:150px 0 200px;}
#philosophy .inner h3,
#philosophy .inner li{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-weight:600;
}
#philosophy .inner h3{
	font-size:6.0rem;
	margin-bottom:50px;
	text-align:center;
}
#philosophy .inner .box{
	width:700px;
	margin:0 auto 30px;
	text-align:left;
}
#philosophy .inner .box li{
	position:relative;
	padding-left:40px;
	margin-bottom:30px;
	font-size:3.0rem;
	line-height:140%;
}
#philosophy .inner .box li span{
	position:absolute;
	left:0;
	top:0;
}
.textfield{
	width:100%;
	padding:15px;
	line-height:140%;
	background:#F2F2F2;
	font-size:14px;
	border:none;
	overflow:auto;
	margin-bottom:20px;
}
.contactbox{
	background:#fff;
	box-shadow:0 0 6px #ccc;
	padding:20px;
	text-align:center;
}
#under .contactbox h4,
#under .contactbox p{ line-height:100%;}
#under .contactbox h4{ color:#000; font-weight:900; font-size:2.4rem !important; padding-bottom:15px !important;}
#under .contactbox h4::after{ display:none !important;}
#under .contactbox > p{ padding:0; margin:0; font-size:1.6rem;}
#under .contactbox > p.tel{
	color:#CC3300;
	font-size:4.0rem;
	font-weight:900;
	margin-bottom:15px !important;
}
#under .contactbox > p.tel a{
	color:#CC3300;
}

/* contact reCAPTCHA */

.wpcf7-form-control div {
	margin: 0 auto 20px;
}

.wpcf7-not-valid-tip {
	margin-bottom: 20px;
}

/* 品質・環境方針 */
#environment_wrap{
	background:#fff;
    -moz-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
	padding:20px;
	margin-bottom:50px;
}
#environment_wrap_inner{
	border:2px solid #D5DA69;
	padding:40px;
}
#environment_wrap_inner .bunseki{
	font-weight:bolder;
	font-weight:2.0rem;
	margin-bottom:0;
}

/* ISO */
#iso_wrap{
	background:#fff;
    -moz-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
	padding:20px;
	margin-bottom:50px;
}
#iso_wrap_inner{
	border:2px solid #D5DA69;
	padding:40px;
}
#iso_wrap_inner .bunseki{
	font-weight:bolder;
	font-weight:2.0rem;
	margin-bottom:0;
}
.torikumi > div > .img{
	margin-right:50px;
}
.torikumi > div > div > h5{
	margin-bottom:15px;
}
.torikumi > div > div th{
	text-align:left;
}

@media screen and (min-width:768px){
	#iso_wrap_inner > div > .desc{
		padding-right:50px;
	}
	#environment_wrap_inner > div > .desc{
		padding-right:50px;
	}
}

/* Pick Up */
#under .pickupBox {
  padding: 40px 0 50px;
  position: relative;
}

#under .pickupBox::before {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  height: 3px;
  width: 100%;
  background: #46aee4;
  background: -moz-linear-gradient(left, #46aee4 20%, #dddddd 20%);
  background: -webkit-linear-gradient(left, #46aee4 20%, #dddddd 20%);
  background: linear-gradient(left, #46aee4 20%, #dddddd 20%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00BAD8', endColorstr='#dddddd',GradientType=1 );
}

#under .pickupBox .pickupThumb {
  margin: 0 30px 20px 0;
  line-height: 0;
  text-align: center;
}

#under .pickupBox .pickupTxtArea .pickupDate {
  margin: 0 0 10px 0;
}

#under .pickupBox .pickupTxtArea .pickupLink {
  transition: 0.3s ease-in-out;
}

#under .pickupBox .pickupTxtArea .pickupLink:hover {
  opacity: 0.5;
}

#under .pickupBox .pickupTxtArea .pickupLink .pickupTtl {
  padding: 0;
  margin: 0;
  font-size: 1.8rem;
  text-align: left;
}

#under .pickupBox .pickupTxtArea .pickupLink .pickupSub {
  margin: 0;
  font-size: 2.2rem;
  color: #000;
}

@media all and (min-width: 768px) {
  #under .pickupBox {
    display: flex;
    justify-content: flex-start;
    padding: 40px 0 60px;
  }
  #under .pickupBox::before {
    height: 5px;
  }
  #under .pickupBox .pickupThumb {
    margin: 0 30px 0 0;
  }
  #under .pickupBox .pickupTxtArea .pickupDate {
    margin: 0 0 30px 0;
  }
  #under .pickupBox .pickupTxtArea .pickupLink .pickupSub {
    font-size: 2.4rem;
  }
}