@charset "UTF-8";

.clearfix::after {
	display: block;
	clear: both;
	content: "";
}

.ir-title { font-size: 140%; text-align: center;
font-weight: bold;
color: #333;
margin-bottom: 20px;
margin-top: 30px;
border-bottom: solid 1px #999;
bottom: -3px;
position: relative; }


area { border: 1px solid #d5d5d5; }

figure { margin-bottom:15px; line-height: 150%; }

body { line-height:180%; }

a { color:#034b9f; text-decoration:underline; }
a:hover { color:#034b9f; text-decoration:none; }

/* ベースレイアウト定義 */

section { padding:20px 0 20px 0; overflow:hidden; }

.container { padding:0 40px 0 40px; max-width:1200px; margin:0 auto; }

#footer { background-color:#00487c; color:#fff; padding:40px 0 40px 0; margin-top:60px; overflow:hidden; }
.footer { float:left; }
.footer-link { float:right; }

.order-red { color:#ac1f1f; }

.fas {
  -webkit-font-smoothing: antialiased;
  -webkit-text-stroke: 1px #fff; /* `#fff` は背景色とあわせる */
}

.link-lan a {
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.link-lan a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #034b9f;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.link-lan a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}


.link a {
  position: relative;
  display: inline-block;
  text-decoration: none; color:#00487c;
}

.link a::after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #034b9f;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.link a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

.link-footer a {
  position: relative; color:#fff;
  display: inline-block;
  text-decoration: none;
}

.link-footer a:hover {
  color:#fff;
}

.link-footer a::after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #ffffff;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.link-footer a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}


.link-product a {
  position: relative;
  display: inline-block;
  text-decoration: none; color:#00487c;
}




header { border-top:2px solid #034b9f; }

.logo { float:left; margin-top:5px; }
#pcmenu { float:right; font-size:75%; width:40%; text-align:right; margin-top:20px; }

.signature { text-align:center; font-size:75%; }

/* 注意 */
.form form input,textarea { margin:10px 0 20px 0; width:100%; -webkit-appearance: none; border:1px solid #b1b1b1; background-color:#fff; border-radius:0px; font-size:100%; padding:17px 20px; -webkit-box-sizing:border-box; box-sizing:border-box; }
.form form input:focus { border:solid 1px #EEA34A; }
.form form textarea:focus { border:solid 1px #EEA34A; }
.form form p { font-size:120%; font-weight:normal; color:#69500b; overflow:visible; }
.form form p span.caution2 { padding:2px; border:1px solid #e56830; margin-left:15px; color:#e56830; font-size:75%; }
.form form p span.placeholder { padding:2px; border:none; margin-left:15px; color:#999; font-size:75%; }
/* 注意 */

#form input,textarea, #registerform input, #login input { margin:10px 0 20px 0; width:100%; -webkit-appearance: none; border:1px solid #b1b1b1; background-color:#fff; border-radius:0px; font-size:100%; padding:17px 20px; -webkit-box-sizing:border-box; box-sizing:border-box; }
#form input:focus { border:solid 1px #EEA34A; }
#form textarea:focus { border:solid 1px #EEA34A; }
#form p, #registerform p { font-size:120%; font-weight:normal; color:#69500b; overflow:visible; }
#form p span { padding:2px; border:1px solid #e56830; margin-left:15px; color:#e56830; font-size:75%; }
#form p span.placeholder { padding:2px; border:none; margin-left:15px; color:#999; font-size:75%; }

#register, #login { width: 320px;padding: 10% 0 0;margin: auto; }
#registerform h3 { font-size:150%; font-weight:normal; color:#69500b; overflow:visible;text-align:center;margin-bottom:50px; }
#login_error p { color:#ff0000; }

.signin{ margin-top:50px; }
.signin span{ font-size:100%; }
.screen-reader-response { display:none; }
.wpcf7-not-valid-tip, .wpcf7-response-output { color:#ff0000; }

#footer-wrapper { width:100%; background-color:#000; color:#fff; max-width:none; padding:30px 40px 30px; line-height:180%; text-align:center; margin-top:100px; }
#copyright { text-align:center; margin-top:20px; margin-bottom:90px; }
#copyright img { margin-right:20px; }

form select { width:100%; height: 60px; margin-bottom: 20px; padding: 10px; }

form table { width: 100%; }

form table td { text-align: left; } 

form table tr:first-child { display:none; }

/* タイトル定義 */

#title { font-size:200%; margin-bottom:20px; text-align:center; }
#title span { display:block; font-size:50%; color:#cdcdcd; }

.title { width:100%; text-align:center; margin:0 auto; font-size:200%; font-weight:bold; margin-bottom:40px; }
.title span { display:block; font-size:50%; font-weight:normal; }

.title-ir { width:100%; text-align:center; margin:0 auto; font-size:160%; font-weight:bold; margin-bottom:40px; margin-top:40px; }
.title-ir-second { border-bottom: solid 1px #c8c8c8; position: relative; margin-bottom:10px; }
.title-ir-second:after { position: absolute; content: " "; display: block; border-bottom: solid 1px #3f3f3f; bottom: -1px; width: 20%; }

/* ボタン定義 */


a.cp_btn { margin:30px auto 20px; display: block; width: 462px; padding: 0.8em; text-align: center; text-decoration: none; color: #eaa511; border: 2px solid #eaa511; border-radius: 30px; transition: .4s; line-height:200%; }
a.cp_btn:hover { background: #eaa511; color: #fff; }

/* 注意 */
form input.cpform_btn { margin:30px auto 0; display: block; width: 320px; padding: 0.8em; text-align: center; text-decoration: none; color: #eaa511; border: 2px solid #eaa511; border-radius: 30px; transition: .4s; line-height:200%; }
form input.cpform_btn:hover { background:#eaa511; color:#fff; }
/* 注意 */

#form input.cpform_btn, #registerform input.wpcf7-submit { margin:30px auto 0; display: block; width: 320px; padding: 0.8em; text-align: center; text-decoration: none; color: #eaa511; border: 2px solid #eaa511; border-radius: 30px; transition: .4s; line-height:200%; }
#form input.cpform_btn:hover { background:#eaa511; color:#fff; }
input.cpform_btn { margin:30px auto 0; display: block; width: 320px; padding: 0.8em; text-align: center; text-decoration: none; color: #eaa511; border: 2px solid #eaa511; border-radius: 30px; transition: .4s; line-height:200%; }
input.cpform_btn:hover { background:#eaa511; color:#fff; }

/* ページ個別設定 */

#main-image { height:0; padding-top: 37.5%; background:url(../img/main-image-01.jpg) 0 0 no-repeat; background-size:contain; } /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
/*#main-image { height:600px; mi background:url(../img/main-image.jpg) center center no-repeat #ffffff; background-size:100% auto; }*/


.banner-wrapper { float:right; width:30%; }
.banner-wrapper img { width:100%; }
.banner-wrapper a { display:block; margin-bottom:10px; }

#news { background-color:#f1f0ec; }
.news-wrapper { float:left; line-height:160%; width:100%; }
.news-wrapper .product { color:#fff; background-color:#900; padding:0px 20px 0px 20px; font-size:65%; margin:20px 10px; min-width: 75px; display: inline-block; vertical-align: top; text-align: center; width: 90px; }
.news-wrapper .topics { color:#fff; background-color:#229151; padding:0px 18px 0px 17px; font-size:65%; margin:20px 10px; min-width: 75px; display: inline-block; vertical-align: top; text-align: center; width: 90px; }
.news-wrapper .ir { color:#fff; background-color:#916e22; padding:0px 18px 0px 17px; font-size:65%; margin:20px 10px; min-width: 75px; display: inline-block; vertical-align: top; text-align: center; width: 90px; }

.news-wrapper span.news-list { float:right; }
.news-wrapper .date { display: inline-block;  margin: 20px 0 20px 0; vertical-align: top; }
.news-wrapper .link-text { display: inline-block;  border-bottom:1px dotted #999; margin: 20px 0 20px 20px; width: 80%; vertical-align: top; }

.index-title-a { font-size:200%; font-weight:bold; color:#939182; margin-bottom:20px; margin-top:10px; }
.index-title-a span { font-size:45%; font-weight:normal; margin-left:20px; }

.index-title-b { font-size:200%; font-weight:bold; color:#00487c; margin-bottom:20px; margin-top:10px; border-bottom: solid 1px #999; bottom: -3px; position: relative; }
.index-title-b:after { position: absolute; content: " "; display: block; border-bottom: solid 1px #00487c; bottom: -1px; width: 10%; }
.index-title-b span { font-size:45%; font-weight:normal; margin-left:20px; color:#939182; }

.index-title-c { font-size:200%; font-weight:bold; color:#7c5500; margin-bottom:20px; margin-top:10px; border-bottom: solid 1px #999; bottom: -3px; position: relative; }
.index-title-c:after { position: absolute; content: " "; display: block; border-bottom: solid 1px #7c5500; bottom: -1px; width: 10%; }
.index-title-c span { font-size:45%; font-weight:normal; margin-left:20px; color:#939182; }

.index-product div { text-align:center; font-size:75%; width:28.3%; float:left; margin:0 2.5%; line-height: 160%; }
.index-product div img { width:100%; text-align:center; }

.index-ir div { text-align:left; font-size:75%; width:15.5%; float:left; margin:0 0.6%; border: 1px solid #d4d4d4; display: inline-block; }
.index-ir div img { width:50px; vertical-align: middle; }
.index-ir div a { color:#7c5500; }

.index-ir div:last-child { float:left; margin-right:0; }

.company-name { font-size:160%; font-weight:bold; }

#second-image-ir { height:150px; width:100%; background:url(../img/second-image-ir.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-recruit { height:150px; width:100%; background:url(../img/second-image-recruit.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-contact { height:150px; width:100%; background:url(../img/second-image-contact.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-about { height:150px; width:100%; background:url(../img/second-image-about.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-product { height:150px; width:100%; background:url(../img/second-image-product.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-product-1 { height:150px; width:100%; background:url(../img/second-image-product-1.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-product-2 { height:150px; width:100%; background:url(../img/second-image-product-2.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#second-image-product-3 { height:150px; width:100%; background:url(../img/second-image-product-3.jpg) center center no-repeat #ffffff; background-size:cover; z-index:0; }
#breadcrumbs { text-align:right; font-weight:300; font-size:75%; }

#second-title { width:300px; height:63px; background:url(../img/common-second-background.png) no-repeat; position:absolute; top:265px; color:#fff; font-size:140%; font-weight:bold; padding:20px 0 0 20px; z-index:2; }
#second-title span { font-weight:300; font-size:65%; margin-left:15px; }


.product-title-a { font-size:200%; font-weight:bold; color:#333; margin-bottom:40px; margin-top:10px; /*border-bottom: solid 1px #999;*/ bottom: -3px; position: relative; text-align: center; line-height: 180%; }

.product-title-a span { display:block; font-weight: normal; font-size: 50%; line-height: 50%; }

.product-title-b { font-size:140%; font-weight:bold; color:#333; margin-bottom:20px; margin-top:30px; border-bottom: solid 1px #999; bottom: -3px; position: relative; }
.product-title-b:after { position: absolute; content: " "; display: block;/* border-bottom: solid 1px #00487c;*/ bottom: -1px; width: 10%; }

.product-title-c { display: block; text-align: center; border: 1px solid #dfdfdf; padding: 10px; margin: 20px 0 0 0; clear: both; }

.product-banner div { width:31%; display: inline-block; margin-left: 1.5%; margin-bottom: 10px; }
.product-banner div img { width: 100%; }


.box2 div { width:50%; font-size:85%; float:left; text-align:center; }
.box2 div img { width:auto; display:block; margin:0 auto; }
.box2 div.box_photo { width:50%; }
.box2 div.box_photo_1 { width:100%; }
.box2 div.box_photo_3 { width:30%; }
.box2 div.box_photo_4 { width:25%; }
.box2 div.box_photo_5 { width:20%; }
.box2 div.box_photo_6 { width:16.66%; }
.box2 div.sample1 { background-color:#fff; color:#000; text-align:left; padding:10px; }
.box2 div.sample1 span { font-weight:bold; border-bottom:1px dotted #000; width:100%; display:inline-block; margin-bottom:10px; font-size:120%; }
.box2 div.sample1 p { float:left; text-align:center; padding:10px; margin-bottom:20px; }
.box2 div.sample1 img { width:auto; margin:0 auto; }


.scroll p { font-size:85%; margin-top:10px; }

.spec { border:1px solid #666; margin-top:15px; margin-bottom:15px; padding:20px; font-size:85%; }
.hinmoku { width:15%; font-size:120%; text-align:center; vertical-align:middle;display: table-cell; }
.box2-spec { font-size:100%; width:85%;display: table-cell; }

.technicaltable {

    border-collapse: collapse;
    text-align: center; width:100%;

}
.technicaltable caption {

    caption-side: bottom;
    text-align: left;
    line-height: 170%;
margin-top: 5px;

}
.technicaltable thead {

    background-color: lightgray;

}
.technicaltable tr, td {

    border: 1px solid #000;
    padding: 5px;
    text-align: center; vertical-align:middle;

}

.technicaltable tbody tr:nth-child(even) {
	background: #ececec;
}

.technicaltable th {
	 vertical-align:middle;border: 1px solid
#b1b1b1;
padding: 5px;
text-align: center;
vertical-align: middle;
}



.technicaltable2 {

    border-collapse: collapse;
    text-align: center; width:100%;

}
.technicaltable2 caption {

    caption-side: bottom;
    text-align: left;
    line-height: 170%;
margin-top: 5px;

}
.technicaltable2 thead {

    background-color: lightgray;

}
.technicaltable2 tr, td {

    border: 1px solid #b1b1b1;
    padding: 5px;
    text-align: center; vertical-align:middle;

}

.technicaltable2 tbody tr:nth-child(even) {
	background: #fff;
}

.technicaltable2 th {
	 vertical-align:middle;border: 1px solid
#000;
padding: 5px;
text-align: center;
vertical-align: middle;
}

.technicaltable2 tr td img { width: 100%; padding: 10px; }


.product-top div { width:50%; text-align:center; float:left; padding:0 10px 20px; display:block; position: relative; margin-bottom:20px; }
.product-top div img { width:100%; }
.product-top span { display:block; /*position:absolute;*/ background-color:#000; color:#fff; font-weight:bold; font-size:90%; text-decoration: none; /*top: 80%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);*/ padding:10px; /*width:80%;*/ opacity:0.8; }
.product-top div p { width:100%; margin: 0 auto; border:1px solid #d4d4d4; font-size:75%; font-weight:normal; padding:10px; }
.product-top div a { text-decoration: none; }

.product-top a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";}


.product-category { display: inline-block; width:19%; padding:10px; text-align:center; margin-bottom:20px; vertical-align: top; }
.product-category img { width:100%; }


.product-category span { background-color: #777777; color: #fff; font-size: 65%; padding: 5px; border-radius: 4px; margin: 0 5px 0 5px; }
.product-category span:last-child { margin: 0; }

.product-category a.cp_btn { width:100%; }

.sample1 iframe { width:100%; }



.about-top { width:30%; height: auto; text-align:left; float:left; margin:20px 1.6% 40px; }
.about-top img { width:100%; }
.about-top a img {	-webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; -o-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }
.about-top a:hover img { opacity: 0.7; }
.about-top-content strong { text-align:center; width:100%; display:block; margin:20px auto; }

table.normal { width:90%; margin:0 auto 20px; border-top: 1px solid #d6e5ef; border-right: 1px solid #d6e5ef; border-collapse: separate; }
table.normal th { width:25%; text-align:left; padding: 20px 25px; background: #E8F6FF; border-left: 1px solid #d6e5ef; border-bottom: 1px solid #fff; }
table.normal td { padding: 20px 25px; text-align:left; vertical-align: top; border-left: 1px solid #d6e5ef; border-bottom: 1px solid #d6e5ef; border-top:none; border-right:none; }
table.normal tr:last-child th { border-bottom: 1px solid #d6e5ef; }

.policy span { display:block; text-align:right; margin-top:20px; }
.policy span strong { font-size:150%; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; }

.about-title-a { font-size:140%; font-weight:bold; color:#333; border-bottom: solid 1px #999; bottom: -3px; position: relative; width:90%; margin:10px auto 20px; }
.about-title-a:after { position: absolute; content: " "; display: block; border-bottom: solid 1px #00487c; bottom: -1px; width: 10%; }

.about-sub { width:90%; margin:0 auto 20px; padding:20px; background-color:#f6f6f6; }
.about-sub2 { width:90%; margin:0 auto 20px; padding:20px; background-color:#fef1ff; }
.about-sub3 { width:90%; margin:0 auto 20px; padding:20px; background-color:#ffffff; }

.ir-sub { width:90%; margin:0 auto 20px; padding:20px; background-color:#ffffff; }
.ir-sub2 { width:90%; margin:0 auto 20px; padding:20px; background-color:#ffffff; text-align:center; }
.ir-sub3 a { width:100%; padding:10px 10px 10px 40px; border:1px solid; display:block; text-decoration:none; margin:10px auto; }
.ir-sub3 a:hover { background-color:#ededed; }
.ir-sub3 { width:90%; margin:0 auto 20px; padding:20px; background-color:#ffffff; text-align:left; }

.form { width:90%; margin:0 auto; }

a.map { padding:5px; font-size:75%; border:1px solid #900; color:#900; text-decoration:none; float:right; overflow:hidden; }
a.map:hover { color:#fff; background-color:#900; }

.mapster_el { margin:0 auto; }

.about-env-background { background: url("../img/about-env-background.jpg") no-repeat; padding:20px; }

.con { text-align: center; }
.con div img { display:block; width:; max-height: 200px; margin: 0 auto;}

.con-5 div { display:inline-block; width:18%; margin:0 0.6%; text-align: center; vertical-align: top; font-size: 75%; line-height: 140%; }
.con-4 div { display:inline-block; width:23%; margin:0 0.6%; text-align: center; vertical-align: top; font-size: 75%; line-height: 140%; }
.con-3 div { display:inline-block; width:31%; margin:0 0.6%; text-align: center; vertical-align: top; font-size: 75%; line-height: 140%; }


.image_mouseover {
overflow: hidden;
width: 100%;
height: 100%;
background: #fff;
}
.image_mouseover img {
display: block;
transition-duration: 0.5s;
}
.image_mouseover img:hover {
transform: scale(1.1);
transition-duration: 0.5s;
opacity: 0.6;
}

.box-image p { width: 25%; float: left; display: inline-block; text-align: center; padding: 20px; }
.box-image p img { width: 100%; display; block; }

.tech-text img { display: block; margin: 20px auto 20px; }

.tech-text-2 { overflow: hidden; }
.tech-text-2 img { float: left; padding: 0 20px 0 0; width: 50%; }

.tech-text-3 { display: block; margin: 20px auto 20px; width: 80%; }
.tech-text-3 img { width: 100%; }

