@charset "utf-8";

/* -----------------------------------------------

	Site: 
	Type: page styles
	URL: 
	Last Up Date: 
	Version: 1.0
	Author: 
	
	----------------------------------------------
	
	Contents

		1.

----------------------------------------------- */


/* --- common --- */
body {
	font-size: 14px;
}

@media screen and (min-width: 601px) and ( max-width: 960px) {

}

@media screen and (max-width: 600px) {

}


/* --- header --- */
header {
}



/* --- Contents --- */
#ContentsHead {
	clear: both;
	width: 100%;
	height: 200px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 115px 0px 0px 0px;
}

#ContentsHead_c {
	width: 1000px;
	height: 190px;
	background-image: url(../images/page-title.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
	letter-spacing: 0.1em;
	margin: 20px auto 0px auto;
	padding: 15px 0px 0px 0px;
}

.ContentsHead-pro {
	background-image: url(../images/head-bg-products.jpg);	
}

.ContentsHead-compor {
	background-image: url(../images/head-bg-component.jpg);	
}

.ContentsHead-fa {
	background-image: url(../images/head-bg-fa.jpg);	
}

.ContentsHead-engineer {
	background-image: url(../images/head-bg-engineering.jpg);	
}

.ContentsHead-trad {
	background-image: url(../images/head-bg-trading.jpg);	
}

.ContentsHead-pcb {
	background-image: url(../images/head-bg-pcb.jpg);	
}

.ContentsHead-com {
	background-image: url(../images/head-bg-company.jpg);	
}

.ContentsHead-eco {
	background-image: url(../images/head-bg-eco.jpg);	
}

.ContentsHead-recruit {
	background-image: url(../images/head-bg-recruit.jpg);	
}

.ContentsHead-sup {
	background-image: url(../images/head-bg-suppliers.jpg);	
}


#ContentsHead_c p {
	padding-bottom: 14px;
}

#ContentsHead_c h1 {
	font-size: 260%;
	font-weight: bold;
	color: #005A9D;
	border-top: 1px solid #005A9D;
	max-width: 800px;
	margin: 0 auto;
	padding: 15px 0px 0px 0px;
}

@media screen and (min-width: 601px) and ( max-width: 960px) {
	#ContentsHead_c {
		width: 100%;
	}
}

@media screen and (max-width: 600px) {
	#ContentsHead_c {
		width: 100%;
	}
	#ContentsHead_c h1 {
		font-size: 180%;
	}
}

#Contents {
	clear: both;
	max-width: 1000px;
	margin: 0 auto;
	color: #005A9D;
	font-size: 16px;
	margin-top: 130px;
}
#Contents.FC {
	color: #003760;
}

#Contents p {
	max-width: 800px;
	margin: 0 auto;
	line-height: 2.0;
	letter-spacing: 0.05em;
	margin-bottom: 20px;
}

#Contents p.f_b {
	font-size: 171%;
	font-weight: bold;
	line-height: 1.6;
}

#Contents p.BaseImg {
	float: left;
	width: 300px;
	margin: 0px 20px 0px 100px;
}

#Contents h2 {
	max-width: 900px;
	margin: 0 auto;
	font-size: 180%;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #fff;
	background-color: #005A9D;
	border-radius: 25px;
	padding: 6px 50px 3px 50px;
	margin-top: 50px;
	margin-bottom: 30px;
}

#Contents h3 {
	max-width: 900px;
	margin: 0 auto;
	font-size: 160%;
	background: #E6E6E6;
	line-height: 1.6;
	letter-spacing: 0.05em;
	padding: 6px 50px 3px 50px;
	margin-top: 40px;
	margin-bottom: 30px;
}

#Contents h4 {
	background-image: url(../images/page_h4.png);
	background-repeat: no-repeat;
	background-position: left 0 top 4px;
	max-width: 800px;
	margin: 0 auto;
	font-size: 128%;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 40px;
	margin-bottom: 20px;
	padding-left: 30px;
}

#Contents h5 {
	max-width: 800px;
	margin: 0 auto;
	border-bottom: 1px solid #005A9D;
	font-size: 114%;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 40px;
	margin-bottom: 20px;
	padding-bottom: 10px;
}

#Contents h6 {
	background-image: url(../images/page_h6.png);
	background-repeat: no-repeat;
	background-position: left 0 top 5px;
	max-width: 800px;
	margin: 0 auto;
	font-size: 107%;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 40px;
	margin-bottom: 20px;
	padding-left: 20px;
}

@media screen and (min-width: 601px) and (max-width: 960px) {
	#Contents {
		max-width: 98%;
		font-size: 14px;
	}
}
@media screen and (max-width: 600px) {
	#Contents {
		max-width: 96%;
		font-size: 12px;
	}
	#Contents p.f_b.to-center {
		font-size: 140%;
		text-align: left;
	}
	#Contents p.f_b.to-center + p.to-center {
		text-align: left;
	}
	#Contents p.f_b.to-center + p.to-center br {
		display: none;
	}
}

#Contents table {
	width: 80%;
	margin: 20px auto;
}
#Contents table.Base {
	margin: 30px auto;
}

#Contents table th,#Contents table td {
	padding: 10px 15px 7px 15px;
	border: 1px solid #005A9D;
	font-size: 114%;
	line-height: 1.6;
}

#Contents table.table_s th,#Contents table.table_s td {
	font-size: 100%;
}

#Contents table th {
	background: #CCDEEB;
}

@media screen and (max-width: 960px) {
	#Contents table {
		width: 100%;
	}
}

#Contents ul,#Contents ol {
	max-width: 800px;
	margin-left: 120px;
	margin-bottom: 14px;
}

#Contents ul li,#Contents ol li {
	list-style-position: outside;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-bottom: 12px;
}

#Contents ul li {
	list-style-type: disc;
}

#Contents ol li {
	list-style-type: decimal;
}

@media screen and (max-width: 960px) {
	#Contents ul,#Contents ol {
		margin-left: 30px;
	}
}

#id01, #id02, #id03 {
	margin: -80px 0px 0px 0px;
	padding: 80px 0px 0px 0px;
}

.Box5-5 {
	width: 100%;
	overflow: hidden;
}

.Box5-5 .float-left,.Box5-5 .float-right {
	width: 50%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

.Box6-4 {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	overflow: hidden;
}

#Contents .Box6-4 .float-left {
	width: 60%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

#Contents .Box6-4 .float-right {
	width: 36%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

#Contents .Box6-4 table {
	margin-left: 0;
}

.Box7-3 {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	overflow: hidden;
}

#Contents .Box7-3 .float-left {
	width: 70%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

#Contents .Box7-3 .float-right {
	width: 26%;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

#Contents .Box7-3 table {
	margin-top: 0;
	margin-left: 0;
	width: 100%;
}

@media screen and (max-width: 640px) {
	#Contents .Box7-3 .float-left {
		width: 100%;
		float: none;
	}

	#Contents .Box7-3 .float-right {
		width: 100%;
		float: none;
	}

}



a.Link {
	text-decoration: underline;
}
a.Link::before {
	content: url(../images/sub-menu-arrow.png);
	margin: 0px 5px 0px 0px;
}



#CatLink {
	width: 800px;
	margin: 80px auto;
	border: solid 1px #005A9D;
	border-radius: 10px;        /* デフォルト */  
	-webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 10px;   /* Firefox用 */
}
#Contents #CatLink ul {
	width: 100%;
	margin: 0px 0px;
	padding: 20px 40px 0px 40px;
}
#Contents #CatLink ul li {
	display: inline-block;
	width: 32%;
	list-style-position: inherit;
	line-height: 1;
	letter-spacing: 0.05em;
	margin: 0px 0px 20px 0px;
	list-style-type: none;
}
#Contents #CatLink ul.ProductLink li {
	width: 100%;
}
#Contents #CatLink ul li a {
}
#Contents #CatLink ul li a::before {
	content: url(../images/sub-menu-arrow.png);
	margin: 0px 5px 0px 0px;
}

@media screen and (min-width: 601px) and (max-width: 960px) {
	#CatLink {
		width: 98%;
		margin: 80px auto;
	}
	#Contents #CatLink ul {
		padding: 20px 20px 0px 20px;
	}
	#Contents #CatLink ul li {
		width: 48%;
	}
}
@media screen and (max-width: 600px) {
	#CatLink {
		width: 98%;
		margin: 80px auto;
	}
	#Contents #CatLink ul {
		padding: 20px 10px 0px 10px;
	}
	#Contents #CatLink ul li {
		width: 48%;
	}
}


/* --- 電気部品・メカトロ製品 --- */
#Contents h2.grah2 {
	max-width: 1000px;
	margin: 0 auto;
	background: -moz-linear-gradient(left, #6F9BBE, #89C997);
	background: -webkit-linear-gradient(left, #6F9BBE, #89C997);
	background: linear-gradient(to right, #6F9BBE, #89C997);
	font-size: 171%;
	color: #FFFFFF;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.05em;
	border: none;
	border-radius: 0;
	padding: 16px 10px 10px 10px;
	text-align: center;
	margin-top: 40px;
	margin-bottom: 30px;
}

#Contents h3.makerh3 {
	display: block;
	max-width: 800px;
	margin: 0 auto;
	font-size: 100%;
	background: #E6E6E6;
	line-height: 1.6;
	letter-spacing: 0.05em;
	padding: 10px 30px 8px 30px;
	margin-top: 20px;
	margin-bottom: 20px;
	background-image: url(../images/maker_accordion.png);
	background-repeat: no-repeat;
	background-position: center right 30px;
	cursor: pointer;
}

#Contents h3.makerh3 + ul li {
	display: inline-block;
	width: 31%;
	vertical-align: top;
	font-size: 85%;
}

.MakerList {
	display: none;
}

@media screen and (max-width: 600px) {
	#Contents h3.makerh3 + ul li {
		width: 45%;
	}
}

a.button:hover {
	opacity: 1;
}
.button {
	display: inline-block;
	width: 300px;
	height: 54px;
	text-align: center;
	text-decoration: none;
	line-height: 54px;
	outline: none;
	font-size: 120%;
	margin: 0px 5px 10px 5px;
}
.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button {
  position: relative;
  z-index: 2;
  background-color: #fff;
  border: 2px solid #005A9D;
  color: #005A9D;
  line-height: 50px;
  overflow: hidden;
}
.button:hover {
  color: #fff;
}
.button::after {
  top: -100%;
  width: 100%;
  height: 100%;
}
.button:hover::after {
  top: 0;
  background-color: #005A9D;
}



/* --- 製品紹介 --- */
#Contents ul.produst_btn {
	max-width: 1000px;
	margin-left: 0;
}
#Contents ul.produst_btn li {
	list-style: none;
	margin-bottom: 10px;
	position: relative;
}
#Contents ul.produst_btn li a {
	opacity: 1;
}
#Contents ul.produst_btn li a img {
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#Contents ul.produst_btn li a:hover img {
	opacity: 0.7;
}
#Contents ul.produst_btn li a::after {
	content: '';
	position: absolute;
	top: 0px;
	left: 0px;
	display: block;
	width: 100%;
	height: 100%;
	border: solid 12px #005a9d;
	opacity: 0;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#Contents ul.produst_btn li a:hover::after {
	opacity: 1;
}

#Contents .produst_point_c {
	padding-top: 50px;
	padding-bottom: 50px;
}

#Contents .produst_point_c .Box6-4 {
	padding-top: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #e6e6e6;
}

#Contents .produst_point_c .Box6-4:nth-child(1) {
	border-top: 1px solid #e6e6e6;
}

#Contents .produst_point {
	background: #005A9D;
	color: #FFFFFF;
	font-size: 80%;
	display: inline-block;
	padding: 2px 8px 1px;
	margin-bottom: 15px;
}

#Contents .produst_point+h2 {
	background-color: inherit;
	color: #005A9D;
	padding: 0;
	margin-top: 0;
	margin-bottom: 8px;
	font-size: 130%;
	font-weight: bold;
}


/* --- エンジニアリング --- */
#Contents ul.engineer li {
	display: inline-block;
	width: 32%;
	vertical-align: top;
}
@media screen and (max-width: 600px) {
	#Contents ul.engineer li {
		width: 45%;
	}
}



/* --- リクルート --- */
#RecruitImg {
	margin-top: 130px;
	margin-bottom: -100px;
}
#RecruitBox {
	margin: 0px 0px 50px 0px;
}
#RecruitBox ul {
	width: 700px;
	height: 140px;
	margin: 0px auto;
	background-image: url(../images/bg-recruit-btn.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 260px;
}
#RecruitBox ul li {
	list-style-type: none;
}
#RecruitBox ul li.Fresh {
	float: left;
	width: 220px;
	height: 140px;
}
#RecruitBox ul li.Career {
	float: right;
	width: 220px;
	height: 140px;
}
#RecruitBox ul li.Fresh a {
	display: block;
	height: 100%;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.4em;
	color: #fff;
	background-color: #004192;
	padding: 45px 0px 0px 0px;
	border-radius: 10px 0px 0px 10px;        /* デフォルト */  
	-webkit-border-radius: 10px 0px 0px 10px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 10px 0px 0px 10px;   /* Firefox用 */
}
#RecruitBox ul li.Career a {
	display: block;
	height: 100%;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.2em;
	color: #fff;
	background-color: #00aa71;
	padding: 45px 0px 0px 0px;
	border-radius: 0px 10px 10px 0px;        /* デフォルト */  
	-webkit-border-radius: 0px 10px 10px 0px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 0px 10px 10px 0px;   /* Firefox用 */
}
#RecruitBox ul li.Fresh span {
	display: block;
	font-size: 16px;
	letter-spacing: 0.1em;
	padding: 0px 0px 0px 0px;
}
#RecruitBox ul li.Career span {
	display: block;
	font-size: 16px;
	letter-spacing: 0.1em;
	padding: 0px 0px 0px 0px;
}

#Contents ul.ListRecruit {
	max-width: 960px;
	margin: 20px auto 50px auto;
	font-size: 0px;
	text-align: center;
}
#Contents ul.ListRecruit li {
	list-style-position: outside;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-bottom: 12px;
	list-style-type: none;
	display: inline-block;
	font-size: 16px;
	margin: 0px 10px 40px 10px;
	position: relative;
}
#Contents ul.ListRecruit li a {
	opacity: 1;
}
#Contents ul.ListRecruit li a:hover img {
	opacity: 0.7;
}
#Contents ul.ListRecruit li a::after {
	content: '';
	position: absolute;
	top: 0px;
	left: 0px;
	display: block;
	width: 100%;
	height: 100%;
	border: solid 7px #005a9d;
	opacity: 0;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#Contents ul.ListRecruit li a:hover::after {
	opacity: 1;
}

@media screen and (min-width: 601px) and (max-width: 720px) {
	#RecruitBox ul {
		max-width: 98%;
	}
}
@media screen and (max-width: 600px) {
	#RecruitBox ul {
		max-width: 98%;
	}
	#RecruitBox ul li.Fresh {
		width: 38%;
	}
	#RecruitBox ul li.Career {
		width: 38%;
	}
	#RecruitBox ul li.Fresh a {
		font-size: 14px;
	}
	#RecruitBox ul li.Career a {
		font-size: 14px;
	}
	#RecruitBox ul li.Fresh span {
		font-size: 12px;
	}
	#RecruitBox ul li.Career span {
		font-size: 12px;
	}
}
@media screen and (max-width: 960px) {
	.YouTubeBox {
		 position: relative;
		 padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
		 height: 0;
		 overflow: hidden;
	}

	.YouTubeBox iframe {
		 position: absolute;
		 top: 0;
		 left: 0;
		 width: 100%;
		 height: 100%;
	}
}


/* --- エコステージ --- */
.bg_b {
	background: #CCDEEB;
	max-width: 800px;
	margin: 0 auto;
	padding: 30px 40px 10px;
	margin-bottom: 20px;
}

#Contents .bg_b ol {
	margin-left: 30px;
	margin-bottom: 20px;
}


/* --- お問い合わせ --- */
.contact-data {
	width: 100%;
}

.contact-datatext {
	width: 100%;
	height: 150px;
}

.contact-submit {
	margin-top: 30px;
	padding: 15px 30px;
}
#Contents p.FormBtn {
	max-width: 800px;
	margin: 0 auto;
	line-height: 2.0;
	letter-spacing: 0.05em;
	margin-top: 50px;
	margin-bottom: 20px;
	text-align: center;
}


/* --- CSR --- */
#CsrId01, #CsrId02, #CsrId03 {
	margin: -80px 0px 0px 0px;
	padding: 80px 0px 0px 0px;
}
#Contents ul.LinkCsr {
	max-width: 800px;
	margin: 0px auto;
	padding: 20px 0px 20px 0px;
	text-align: center;
}
#Contents ul.LinkCsr li {
	display: inline-block;
	list-style-position: inherit;
	line-height: 1;
	letter-spacing: 0.05em;
	margin: 0px;
	list-style-type: none;
}
#Contents ul.LinkCsr li a {
	border: solid 1px #005A9D;
	padding: 7px 30px 5px 25px;
}
#Contents ul.LinkCsr li a::before {
	content: url(../images/sub-menu-arrow.png);
	margin: 0px 5px 0px 0px;
}


/* --- footer --- */
footer {
}


.to-center img {
	margin: 0px 5px 10px 5px;
}
@media screen and (max-width: 960px) {
	
}