@charset "utf-8";
/* CSS Document */

/* Company */

.table-company{
  width: 900px;
  margin: 0 auto;
}

.table-company th{
  display: inline-flex;
  width: 110px;
  text-align: justify;
  justify-content: space-between;
  padding: 5px 100px 8px 40px;
}
.table-company td{padding: 8px 40px 8px 0px;}

.map iframe{
  margin: 0 auto;
  width: 900px;
  height: 560px;
  max-width: 90%;
  margin-block-end: 4em;
}

#company .flexbox-02{
  width:900px;
  max-width: 100%;
  margin: 0 auto;
}
.flexbox-02 .item{align-self: center;}

/* Product */

.shadowbox-product{padding: 50px 0;}

#product section:nth-child(2){
  background-color: #1D1D21;
  padding-bottom: 200px;
}

#product .flex{
  width: 1400px; 
  max-width: 90%;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: space-between;
}

#product .flex .item{margin-bottom: 180px;}

#product .flex .item:nth-child(7), #product .flex .item:nth-child(8), #product .flex .item:nth-child(9){
  margin-bottom: 0;
}

.tb-img{margin-bottom: -8px;}

.tb-product{width: 420px; max-width: 100%;}

.tb-product th{font-weight: 500; width: 70px;}
.tb-product th, .tb-product td{padding: 12px 20px;}

.tb-product tr:last-child{height: 185px;}


/* Equipment */

#equipment .section01, #equipment .section02, #equipment .section03{margin-top: 6rem;}

#equipment .flexbox-03 .item{width:420px;}

#equipment section:nth-child(2) {background-color: #1D1D21;}

.flexbox-03{
  display: flex;
  width: 100%;
  max-width: 90%;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
}
.flexbox-03 .item{
  width: 30%;
}
.flexbox-03 figcaption{
  margin: 30px 0;
  font-size: 25px;
}

table{
  width: 100%;
  border-collapse: collapse;
}
tr:nth-child(even) {
  background-color: #1D1D21;
}
tr:nth-child(odd) {
  background-color: #000000;
}

.tb-equip{text-align: center;}
.tb-equip th{
  width: max-content;
  max-width: 20%;
  padding:10px 25px;
}

.tb-equip td{padding:7px 25px;}

.tb-wrap {width: 100%;overflow-x: scroll;}

.equipment-list {text-align: center;}

.sp-txt{display: none;}

/* Difficult-Processing */

#difficult .ul-dot{
  margin-right: 10%;
  width: 540px;
  max-width: 100%;
  float: right;
  clear: both;
  margin-bottom: 20px;
  list-style-position: outside;
  padding-inline-start: 0;
}
.ul-dot li{
  margin: 7px 0; 
  display: list-item;
}
#difficult .ul-dot li::marker{
  content: "・";
}


/* Quality */
#quality .sec-03 .flex .item-l p .green{
  color: #08B308;
  font-weight: 700;
}

#quality .sec-03 .page-equipment-btn{margin-left: 10%;}

/* 5-Axis */
#axis .sec05-group{
  display: flex;
  flex-wrap: wrap;
}

#axis .sec-03{
  position: relative;
  background: url(../img/5axis-processing/sec03-img.jpg) center no-repeat;
  background-size: cover;
  background-attachment: fixed;
  z-index: 0;
  text-align: center;
  padding: 150px 0;
}

#axis .flow-box{
  background-color: rgba(0, 0, 0, 0.4);
  border: 1px solid #fff;
  width: 378px;
  height: 251px;
  display: flex;
  flex-direction: column;
  padding-top: 25px;
}
#axis .flow-box img{
  padding-bottom: 50px; 
  height: 47px;
  align-self: center;
}
#axis .flexbox-03{margin-bottom: 100px;}
#axis .flexbox-02{text-align: -webkit-center;}

#axis .sec-06 .page-equipment-btn{
  margin-right: 10%;
  margin-top: 50px;
  float: right;
  clear: both;
}

/* Recruit */
#recruit h3{
  font-size: 28px;
  text-align: left;
}
#recruit .sec-04 h3{
  display: flex;
  align-items: self-end;
}
.img-flex-end{
  float: right;
  clear: both;
}
.item-flex-end{
  margin-top: 150px;
  justify-content: flex-end;
}

#recruit .sec-03 iframe{
  width: 675px;
  height: 430px;
  max-width: 100%;
}

#recruit .rec-video{margin-top: 30px;}
#recruit .sec-03 .flexbox-02{column-gap: 50px;}


#recruit .sec-04 h3 img{
  padding-right: 30px;
  height: 50px;
}
#recruit .sec-04 .flexbox-02 {column-gap: 50px;}
#recruit .sec-04 .flexbox-02 .item{align-self: center;}

#recruit .interview h3{margin-bottom: 1em;}
#recruit .interview h3:nth-child(2n){margin-top: 250px;}

#recruit .interview ul{padding-inline-start: 0;}

#recruit .interview ul li{
  margin: 0 0 30px 0;
}
#recruit .interview ul li img{height: 60px;}
#recruit .interview ul li img.min {height: 30px;}

.interview .flexbox-02{gap: 60px;}

.interview .flexbox-02 .item{
  align-self: center;
  margin-bottom: 150px;
}

.interview .flexbox-02 .item p{
  padding-top: 10px;
  padding-left: 50px;
}

.interview .flexbox-02 .item p .text-big{font-size: 28px; font-weight: 700;}
.interview .flexbox-02 .item p .green{color: #08B308; font-weight: 700;}

#recruit .shadowbox{
  flex-direction: column;
  border:none;
  padding-top: 25px;
  width: 410px;
  max-width: 100%;
  height: 410px;
  text-align: center;
  margin: 0;
}
#recruit .shadowbox img{
  height: 60px;
  margin-bottom: 20px;
}
#recruit .shadowbox .txt-bigger{
  font-size: 60px;
  font-weight: 700;
  position: relative;
  top: 50px;
}
#recruit .shadowbox .txt-big{
  font-size: 44px;
  font-weight: 700;
  position: relative;
  top: 40px;
}
#recruit .shadowbox .txt-middle{
  font-size: 28px;
  font-weight: 700;
}

#recruit .sec-06 .flex{
  background-color: #09090B; 
  width: 100%;
  height: max-content;
}
#recruit .sec-06 .item-r img{float: right; clear: both;}

/* contact */
.form__list {
    display: block;
    width: 80%;
    margin: 0 auto;
}

.form__listItem {
    display: block;
}

.form__select,.form__textarea,.form__input{
	background: #ACACAC;
}

.contact__privacyBox {
    background-color: #09090B;
    margin-top: 39px;
    overflow-y: auto;
    height: 330px;
    padding: 0 17px;
    padding: 20px 17px;
	}

.contact__privacyText{color: #fff;}