@charset "utf-8";

/*----------------  Base Style  ----------------*/

body {
	text-align:center;
	background:
url(../img/back.jpg) repeat-x
		center
		top;
		
	/*	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.0rem; */
	
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	
	/* font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif; */
    /* font-weight: 500; */
	/* font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif; */
	
	
}

.bold{
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
}


/*----------------  Header  ----------------*/

div#h_container {
	width:963px;
    margin: 0 auto;  
    text-align: left;  
}

header {
    position:relative;
    height:111px;
}

header h1 {
    position: absolute;
    top: 25px; 
    left: 0;  
}
header div#h_logo2 {
    position: absolute;
	width:370px;
	height:22px;
    top: 73px; 
    left: 0px;
	background:
url(../img/logo2.gif) no-repeat
		left
		top;
}

header div#h_logo2 p {
    position: absolute;
    top: 0; 
    left: 162px;
    font-size:11px;
	line-height:23px;
}

header p#h_tel {
    position: absolute;
    top: 32px; 
    left: 699px;  
}

/*----------------  Navigation  ----------------*/

div#menu_container {
	height:47px;
	background:
url(../img/menubk.jpg) repeat-x
		left
		top;
}

div#menu_container nav{
	width:963px;
    margin: 0 auto;  
    text-align: left;  
}


nav#menu {
}

nav#menu ul{
}

nav#menu ul li{
    float:left;
}

/*----------------  Main IMG  ----------------*/

div#mimg_container {
    height:314px;
	background:
    	#4B87CF
url(../img/mainbk.jpg) no-repeat
		center
		top;
}

div#mimg_container div {
	position:relative;
    width:963px;
    margin: 0 auto;  
    text-align: left;  
}

div#mimg_container div p{
    position: absolute;
    top: 37px; 
    left: 280px;
}

/*----------------  main  ----------------*/

div#main_container {
	height: 30px;
	background:
url(../img/mainbk2.jpg) repeat-x
		left
		top;
}

div#contents {
	width:963px;
    margin: 0 auto;  
   text-align: left;
	background:
url(../img/sidebk2.jpg) repeat-y
		left
		top;
}

div#contents2 {
	width:963px;
    margin: 0 auto;  
   text-align: left;
}


/*----------------  Main area  ----------------*/

div#main {
    float:right;
    width:672px;
	padding-bottom:76px;
}

div#main_noside 
{
	float:left;
    width:850px;
	margin-left:50px;
	padding-bottom:76px;
}


div#main article p,
div#main section p
{
   line-height:160%;
   padding:0 1.5em 0 0;
   text-align:justify;
   text-justify: inter-ideograph;
}

h2.aisatu
{
   line-height:160%;
   padding:10px 1.5em 10px 3px;
   text-align:justify;
   text-justify: inter-ideograph;
   font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
   font-size: 21px;
    font-weight: 500;
}

div.aisatudiv {
	margin: 30px 0 0 0;
}

div.aisatudiv p {
	margin: 0 25px 15px 5px;
}

div.aisatugazo{
	margin-top:30px;
	width:820px;
}

img.syomeigazo{
	margin-left:535px;
}

div.krinendiv{
	margin:30px 0 0 0;
	background-color:#EAF9FE;
	wight:auto;
	height:130px;
	text-align:center;
}

h2.krinenh2{
    font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	padding-top:30px;
	font-size: 21px;
    font-weight: 500;
}

div.krinendiv h3{
   font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 23px;
    font-weight: 500;
	line-height:124px;
}


div.toppic img{
	margin:25px 0;
}

div#main h1 {
	margin-bottom:28px;
}

h1#toptag1 {
	padding:0 0 0 35px;
	height:98px;
	line-height:126px;
	font-size:26px;
	font-weight:bold;
	background:
url(../img/tagtop.jpg) no-repeat
		left
		top;
}

h1.toptag2 {
	margin:30px 0 0 0;
	padding:0 0 0 35px;
	font-size:27px;
	font-weight:bold;
	height:64px;
	line-height:56px;
	background:
url(../img/tag.gif) no-repeat
		left
		top;
}

h1.submds {
    font-weight:bold;
}

p.t_link {
    float:right;
}

p.t_link a{
	display:block;
	margin-top:2px;
	padding-left:30px;
	font-size:140%;
	font-weight:bold;
	background:
url(../img/mark01.gif) no-repeat
		left
		50%;
}

p.topicmj {
	border-top: 1px solid #202380;
	border-bottom: 1px solid #202380;
	margin:0 0 0 1px;
	width:270px;
	font-size:100%;
	font-weight:bold;
	background:#ECF000;
}

/* Main area (subpage) */

body#subpage div#main article p,
body#subpage div#main section p,
body#subpage div#main section h2,
body#subpage div#main section table,
body#subpage div#main article dl,
body#subpage div#main article ul,
body#subpage div#main article div.hiro-left,
body#subpage div#main article div.wak01,
div#map-canvas
{
	margin-left:20px;
}

body#subpage div#main article dl dt,
body#subpage div#main article dl dd,
body#subpage div#main article ul li {
	line-height:160%;
}

h1.tag02 {
	margin:46px 0 0 0;
	height:94px;
	color:#FFF;
	padding-left:56px;
	line-height:100px;
	font-size:32px;
	background:
	url(../img/tag02.gif) no-repeat
		left
		top;
}

h1.tag03 {
	margin:30px 0 0 0;
	padding:0 0 0 45px;
	font-size:30px;
	height:64px;
	line-height:64px;
	color:#192681;
	background:
url(../img/tag03.jpg) no-repeat
		left
		top;
}

h1.tag04 {
	margin:30px 0 0 0;
	padding:0 0 0 20px;
	font-size:24px;
	font-weight:bold;
	height:56px;
	line-height:61px;
	background:
url(../img/tag04.gif) no-repeat
		left
		top;
}

h1.tag04_2 {
	margin:30px 0 30px 0;
	padding:0 0 0 2px;
	font-size:24px;
	font-weight:bold;
	height:56px;
	line-height:61px;
    border-bottom: 2px solid #ddd;
}


h1#tag05 {
	margin:46px 0 0 0;
	height:80px;
	color:#FFF;
	padding-left:25px;
	line-height:80px;
	font-size:20px;
	font-weight:bold;
}

.tag05_a {
	background:
url(../img/mds_eco.jpg) no-repeat
		left
		top;
}

.tag05_b {
	background:
url(../img/mds_com.jpg) no-repeat
		left
		top;
}



h1#tag06 {
	margin:23px 0 0 0;
	height:109px;
	color:#FFF;
	padding-left:35px;
	line-height:135px;
	font-size:20px;
	font-weight:bold;
	background:
url(../img/mds_tct.jpg) no-repeat
		left
		top;
}

h1#tag07 {
	margin:29px 0 0 0;
	height:99px;
	color:#FFF;
	padding-left:35px;
	line-height:110px;
	font-size:20px;
	font-weight:bold;
	background:
url(../img/mds_com.jpg) no-repeat
		left
		top;
}

h1#tag08 {
	margin:29px 0 0 0;
	height:99px;
	color:#FFF;
	padding-left:35px;
	line-height:110px;
	font-size:20px;
	font-weight:bold;
	background:
url(../img/mds_emp.jpg) no-repeat
		left
		top;
}

ul.ulist li{
	list-style: disc outside;
	margin:0 0 0 10px;
}

dl.dlist {
	margin:25px 0 0 0;
}

dl.dlist {
	margin:25px 0 25px 0;
}

dl.dlist dt {
}

dl.dimglist1 dd {
	float:left;
	padding:0 32px 25px 0;
}
dl.dimglist1 dd.last {
	padding-right:0;
}

div.wak01 {
    border: 1px solid #dbdbdb;
	margin-top:40px;
	margin-right:10px;
	margin-bottom:40px;
	padding:25px 10px 20px 15px;
}

ul.ulstl01 {
	color:#4392BA;
}
ul.ulstl01 li {
	list-style: disc outside;
	padding-left:0px;
	padding-bottom:7px;
	font-size:14px;
}

div#ecof {
	margin:40px 0 0 30px;
	padding-top:8px;
	width:646px;
	height:208px;
	background:
	url(../img/ecof.jpg) 
		no-repeat
		left
		top;
}

div#ecof p {
	padding-left:2em;
	color:#339900;
	font-size:18px;
}

h1.boldh1 {
	padding-left:20px;
	font-weight:bold;
}

table#gaiyo {
	border-collapse: collapse;
	width:96%;
}
table#gaiyo th.t_top {
    border-top: #be1309 4px solid;
}
table#gaiyo th {
	border-bottom: #DCDDDD 1px solid;
	border-left: #DCDDDD 1px solid;
	border-right: #DCDDDD 1px solid;
	text-align: left;
	padding: 10px;
	font-weight: normal;
	background-color:#efefef;
}
table#gaiyo td.t_top {
	border-top: #b3b3b3 4px solid;
}
table#gaiyo td {
	border-bottom: #DCDDDD 1px solid;
	border-right: #DCDDDD 1px solid;
	text-align: left;
	line-height:160%;
	padding: 10px;
}
/* table#gaiyo tr:hover {
    background: #3D80DF;
    color: #FFFFFF;
} */

p.pst01 {
	margin:40px 15px 0 10px;
	font-size:15px;
	color:#C00;
}

table.manitbl {
	margin:10px 0 0 10px;
}

table.manitbl td {
	padding:10px 10px 0 0;
}

.red01 {
	color:#F00;
	padding-left:1em;
}

table.toitbl th,
table.toitbl td {
	padding:10px 7px;
    border-top: 1px solid #9CA8CE;
    border-left: 1px solid #9CA8CE;
    border-right: 1px solid #9CA8CE;
    border-bottom: 1px solid #9CA8CE;
}

table.toitbl th {
	width:225px;
	background-color:#E3EDF9;
	vertical-align:middle;
}

table.toitbl td {
}

.ctcbtn {
	margin-top:20px;
}

#map-canvas {
  width: 650px;
  height: 420px;
}

#map-canvas iframe{
 -webkit-filter: saturate(2);
  filter: saturate(2);
}

.cadbox {
  width: 652px;
  height: 202px;
  background:
	url(../img/pic/machining_bk01.jpg) 
		no-repeat
		left
		top;
}

.cadbox tr th {
	width:216px;
	padding-right:18px;
	padding-bottom:7px;
}

.cadbox tr td {
	text-align:center;
}

/*----------------  採用情報  ----------------*/

.center {
	text-align:center;
}

p.recicon {
	padding:50px 0 10px 0;
}

.recrt {
	margin-top:30px;
    width:100%;
    border-top: 1px solid #ddd;
}

.tagrec {
  color: #fff;
  background-color: #256CBD;
  font-weight: normal;
  padding: 10px;
  font-size: 22px;
  font-weight:bold;
  margin-top: 60px;
}

.reccom{
   line-height:160%;
   padding:1em 1.5em 0 1em;
   text-align:justify;
   text-justify: inter-ideograph;
}

tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}
.recrt th {
    width: 20%;
    text-align: left;
    font-weight: bold;
}
.recrt th, .recrt td {
    padding: 20px 10px;
    border-bottom: 1px solid #ddd;
    vertical-align: top;
}
.recrt th, .recrt td {
    min-width: 15%;
	line-height:170%;
}
.recrt ul {
	margin: 0;
}
.recrt ul li {
    display: list-item;
    text-align: -webkit-match-parent;
	margin-left: 0;
	margin-top: 0;
}
.recrt strong {
	font-weight:bold;
}

.recform {
    border: 3px solid rgba(0,0,0,0.1);
    padding-left: 15%;
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 100px;
}

.recform_text {
	margin-bottom:20px;
}

.recform_text p {
	line-height:200%;
}

.recform_text b {
	font-weight:bold;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea
{
	background: #f7f7f7;
	background-color: rgba(0,0,0,0.03);
	border: 0px;
	padding: 6px 10px;	
	margin: 0;
	font-size: 100%;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 0px;
	-webkit-appearance: none;
	-moz-appearance: none;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
textarea:focus
{
	background-color:rgba(0,0,0,0.02);
}

input.error,
textarea.error
{
	border-color:red !important;
	-webkit-box-shadow:0 0 5px 0 rgba(255,0,0,0.3);
	-moz-box-shadow:0 0 5px 0 rgba(255,0,0,0.3);
	box-shadow:0 0 5px 0 rgba(255,0,0,0.3);
}

input[type=button],
input[type=submit],
input[type=reset]
{
	color:#fff;
	border:0;
	cursor:pointer;
	position:relative;

  line-height: 1.5 !important;
  padding: 0.4em 1.2em !important;
  margin: 0 !important;
  	
  -webkit-transition: background-color 0.3s, color 0.3s, -webkit-box-shadow 0.3s;
  -moz-transition: background-color 0.3s, color 0.3s, -moz-box-shadow 0.3s;
  -ms-transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
  -o-transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
  text-decoration: none !important;
  
  font-size:100% !important;
  text-shadow:none !important;
  -webkit-border-radius:3px !important;
  -moz-border-radius:3px !important;
  border-radius:3px !important;
  
  -webkit-box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08);
  -moz-box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08);
  box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08);
  
 	-webkit-appearance: none;
  -moz-appearance: none;
}

.input-button-container /*wrapped around by JS*/
{
	display:inline-block;
	position:relative;
  margin: 0 5px 12px 0;
}

.input-button-container:before 
{
	content:'';
	position:absolute;
	top:0;
	left:-2px;
	right:-2px;
	bottom:-2px;

  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  
	-webkit-box-shadow:0 3px 5px -3px rgba(0,0,0,0.5);
	-moz-box-shadow:0 3px 5px -3px rgba(0,0,0,0.5);
	box-shadow:0 3px 5px -3px rgba(0,0,0,0.5);
	
	cursor:pointer;
}

input[type=button],
input[type=submit]
{
	color:#fff;
}

input[type=button]:hover,
input[type=submit]:hover,
input[type=reset]:hover
{
  -webkit-box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08), inset 0 -1000px 0 0 rgba(255,255,255,0.2);
  -moz-box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08), inset 0 -1000px 0 0 rgba(255,255,255,0.2);
  box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.08), inset 0 -1000px 0 0 rgba(255,255,255,0.2);
}

#s
{
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	width:100%;
}


.content-dark-bg input[type=text],
.content-dark-bg input[type=email],
.content-dark-bg input[type=password],
.content-dark-bg textarea {
  background:#0f0f0f;
  background:rgba(255,255,255,0.1);
  border-top-color:rgba(255,255,255,0.2);
  color:#fff;
}

.content-dark-bg input[type=text]:focus,
.content-dark-bg input[type=email]:focus,
.content-dark-bg input[type=password]:focus,
.content-dark-bg textarea:focus {
  background-color:rgba(255,255,255,0.15);
}

select {
	max-width:100%;
	padding:3px;
	border-radius:3px;
	border-color:rgba(0,0,0,0.1);
}

.content-dark-bg select {
	border-color:rgba(255,255,255,0.15);
}

.wpcf7-submit{
    background-color: #09a6eb;
}

/*----------------  Side area  ----------------*/

div#sub {
    float:left;
    width:238px;
	padding-bottom:76px;
}

div#subA {
	padding-top:40px;
	background:
url(../img/sidebktop.jpg) no-repeat;
}

div#subC {
    position:relative;
	height:598px;
	background:
url(../img/s_empl.jpg) no-repeat;
}

div#subC div{
    position:absolute;
    top: 75px;
    left: 20px;
}

div#subC div p{
	line-height:11px;
	font-size: 12px;
}

div#subC div p a{
	line-height:11px;
	font-size: 12px;
}

div#subB {
	margin-top:0px;
	padding-top:0px;
	background:
url(../img/sidebk1.jpg) no-repeat
		left
		top;
}


div#sub section,
div#sub aside{
	padding-left:4px;
}

div#sub p,
div#sub address,
div#sub dl {
	padding-left:10px;
}

div class="ue10" {
	margin:20px 0 0 0;
	background:
url(../img/sidebktop.jpg) no-repeat
		left
		top;
}

#news {
    border-left: solid 1px #D1D1D1;
    border-right: solid 1px #D1D1D1;
    border-bottom: solid 1px #D1D1D1;
    padding: 12px 17px;
    height: 124px;
    overflow: auto;
}

div#sub dl#news dd,
div#sub dl#news dt{
	font-size: 12px;
}

div#sub dl#news dd {
	margin: 3px 0 14px 0;
	line-height:130%;
}

div#sub dl#news dt {
	margin-top: 0px;
	padding-left: 1em;
	background:
url(../img/mark02s.gif) no-repeat
		left
		top;
}

div#sub p {
	margin:10px 0 0 0;
}

div#sub p.em {
	margin:27px 0 0 0;
	font-weight:bold;
}

div#sub address {
	margin:10px 0 18px 0;
	line-height:180%;
	font-size:12px;
}

h1.s_toi {
	margin:0px 0 10px 9px;
	padding-top:35px;
}

h1.s_tag {
	height:44px;
	padding-left:26px;
	padding-bottom:5px;
	font-size:20px;
	font-weight:bold;
	line-height:52px;
	background:
url(../img/s_tag.jpg) no-repeat
		left
		top;
}

dl#s_mat dt {
	display: list-item;
	list-style: square inside;
	margin:20px 0 10px 0;
}

dl#s_mat dd{
	display: list-item;
	list-style: disc inside;
	margin:0 0 0 10px;
	font-size:12px;
	line-height:150%;
}

dl#s_mat dd.s_mkn {
	list-style:none;
	margin-top:10px;
}

p.sidelnk {
	background:
	url(../img/mark01s.gif) 		
		no-repeat
		10px
		2px;
}

p.sidelnk a{
	display:block;
	margin-bottom:20px;
	padding-left:20px;
	font-weight:bold;
}


/*----------------  Footer ----------------*/


div#f_container {
    height:320px;
    border-top: 10px solid #E4EFF9;
	background-color:#3372BD;
}

footer {
    width:963px;
    margin:0 auto;
    text-align:left;
}

footer p,
footer small {
	color:#fff;
	font-size:12px;
	line-height:200%;
}

footer img {
	margin:44px 0 10px 0;
}


/*----------------  General Style ----------------*/

.fleft {
	float:left;
}
.fright {
	float:right;
}
.clear {
	clear:both;
}

.bold {
	font-weight:bold;
}
.boldmg1 {
	font-weight:bold;
	margin-bottom:20px;
}

section.mgstl01 p {
	margin-bottom:20px;
}

.mgn01 {
	margin:0 0 30px 0;
}

.mgn02 {
	margin:40px 0 0 0;
}
.mgn03 {
	margin:20px 0 0 0;
}

.mgn05 {
	margin:50px 0 0 20px;
}

.mgn06 {
	margin:0 0 5px 10px;
}

.mgnclr {
	margin:0 0 0 0;
}

/* 画像の文字回り込み Style */
.hiro-left,
.hiro-right {
   overflow: hidden;
   height: auto;
}
 
.hiro-left img {
   float: left;
   margin: 0 15px 0 0 !important;
   padding: 0 !important;
   border: 0 !important;
}
 
.hiro-right img {
   float: right;
   margin: 0 0 0 15px !important;
   padding: 0 !important;
   border: 0 !important;
}
 
.hiro-left p,
.hiro-right p {
   overflow: hidden;
   height: auto;
}

/*---------------- clearfix ----------------*/

.clearfix:after {
display:block;
clear:both;
height:0px;
visibility:hidden;
content:".";
}

.clearfix {
min-height: 1px; /*IE6、7対策*/
}
* html .clearfix {
height: 1px;
/*\*//*/ /*MAC IE5.x対策*/
height: auto;
overflow: hidden;
/**/
}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.0s ease infinite alternate;
    -moz-animation:blink 1.0s ease infinite alternate;
    animation:blink 1.0s ease infinite alternate;
	padding:0 3px 0 10px;
	color:#E71237;
	font-weight:bold;
    font-size:120%;
	line-height:35px;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
