@charset "UTF-8";

/*******************************
*　
********************************/
u{
  display: inline-block;
  font-style: normal;
  text-decoration: none;
}
p{
  letter-spacing: inherit;
}
.flicker-heading .sp {
  display: inline-block !important;
  width: .25em;
}
#gt-nvframe{
  display: none;
}

.section.red{
  background-color: #a11f29;
  color: #FFF;
}
.section.beige{
  background-color: #f8f3e9;
}
.tt_sec_ja{
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.075em;
}
.tt_sec.noBdr{
  border-bottom: 0;
}

.en_title em{
   font-style: normal;
}

@media (min-width:768px){
  .tt_sec_ja{
    font-size: 18px;
  }
}

/*******************************
*　下層ヘッダー
********************************/
.pg_header{
  
}
.pg_header_img{
  
}
.pg_header_img.img_fit:before{
  padding-top: 150px;
}

@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  
  .pg_header{

  }
  .pg_header_img{

  }
  .pg_header_img.img_fit:before{
    padding-top: 300px;
  }

  body{
    padding-top: 96px;
  }

}
@media (min-width:1024px){


}
@media (min-width:1200px){
  
  .pg_header{
    margin-bottom: 85px;
  }
  .pg_header_img.img_fit:before{
    padding-top: 500px;
  }

}
@media (min-width:1470px){


}



/*******************************
*　
********************************/

/* ページ概要 */
.cmn_about{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.cmn_about_box1{
  width: 100%;
}
.cmn_about_box2{
  width: 100%;
  padding-top: 15px;
}
.cmn_about_head{
  width: 100%;
  margin-bottom: 20px;
}
.cmn_about_head_en{
  font-size: 36px;
  font-weight: 400;
  font-family: "Oswald", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #e7c47b;
}
.cmn_about_head_en:first-letter,
.cmn_about_head_en em{
  color: #a11f2a;
  font-size: 1.333em;
  font-style: normal;
}

.cmn_about_head_ja{
  font-size: 40px;
  font-weight: 900;
  line-height: 1.47;
  letter-spacing: 0.05em;
  color: #000000;
}
.cmn_about_ttl{
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 10px;
}
.cmn_about_txt{
  font-size: 16px;
  line-height: 1.875;
  text-align: justify;
}

/* ページ概要2 */
.cmn_about2{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
* + .cmn_about2{
  margin-top: 55px;
}
.cmn_about2_box1{
  width: 100%;
  order: 2;
  margin-top: 20px;
}
.cmn_about2_box2{
  width: 100%;
  padding-top: 0;
  order: 1;
}
.cmn_about2_ttl{
  font-size: 21px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin-bottom: 22px;
}
.cmn_about2_txt{
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.05em;
  text-align: justify;
}
.cmn_about2_img{
  
}
.cmn_about2_img.img_fit:before{
  padding-top: 142.105%;
}

/* コンテンツ */
.cmn_contents{
  
}
* + .cmn_contents{
  margin-top: 0;
}
.cmn_contents_row{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 30px;
  padding-bottom: 30px;
  position: relative;
  z-index: 1;
}
.cmn_contents_row + .cmn_contents_row{
  margin-top: 0;
}

.cmn_contents_box1{
  width: 100%;
  padding-top: 0;
}
.cmn_contents_box2{
  width: 100%;
  margin-top: 20px;
}
.cmn_contents_head{
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
.cmn_contents_head_num{
  font-size: 50px;
  font-weight: 400;
  font-family: "Oswald", sans-serif;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e7c47b;
  width: 70px;
}
.cmn_contents_head_num:first-letter{
  color: #a11f2a;
}
.cmn_contents_head_txt{
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.075em;
  color: #a11f2a;
  width: calc(100% - 70px);
}
.cmn_contents_ttl{
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.375;
  margin-bottom: 10px;
}
.cmn_contents_txt{
  font-size: 16px;
  line-height: 1.875;
  text-align: justify;
  letter-spacing: 0.05em;
}
.cmn_contents_img{
  
}
.cmn_contents_img.img_fit:before{
  padding-top: 72.632%;
}

.cmn_contents_row:nth-child(even):after{
  content: "";
  background: #f8f3e9;
  top: 0;
  bottom: 0;
  left: var(--margin-for-device-side);
  right: var(--margin-for-device-side);
  position: absolute;
  z-index: -1;
}


.cmn_contents.noBorder{
  
}
* + .cmn_contents.noBorder{
  margin-top: 20px;
}
.cmn_contents.noBorder .cmn_contents_row{
  padding-top: 15px;
  padding-bottom: 15px;
}


/* コンテンツ */
.cmn_contents2{
  
}
* + .cmn_contents2{
  margin-top: 30px;
}
.cmn_contents2_row{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 15px;
  padding-bottom: 15px;
  position: relative;
  z-index: 1;
}
.cmn_contents2_row + .cmn_contents2_row{
  margin-top: 0;
}

.cmn_contents2_box1{
  width: 100%;
  padding-top: 0;
}
.cmn_contents2_box2{
  width: 100%;
  margin-top: 20px;
}
.cmn_contents2_head{
  /*display: flex;*/
  /*flex-direction: column;*/
  /*flex-wrap: wrap;*/
  margin-bottom: 10px;
}

.cmn_contents2_head_txt{
  display: inline-block;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.025em;
  background: #a11f2a;
  color: #FFF;
  padding: 5px 10px 7px 35px;
  position: relative;
  z-index: 1;
}
.cmn_contents2_head_txt:first-child:before{
  content: "Q.";
  position: absolute;
  z-index: 1;
  top: 1px;
  left: 10px;
}
.cmn_contents2_head_txt + .cmn_contents2_head_txt{
  margin-top: 6px;
}
.cmn_contents2_ttl{
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.375;
  margin-bottom: 10px;
}
.cmn_contents2_txt{
  font-size: 16px;
  line-height: 1.875;
  text-align: justify;
  letter-spacing: 0.05em;
}
.cmn_contents2_img{
  
}
.cmn_contents2_img.img_fit:before{
  padding-top: 112.867%;
}

.cmn_contents2_row:nth-child(even):after{
  /*content: "";
  background: #f8f3e9;
  top: 0;
  bottom: 0;
  left: var(--margin-for-device-side);
  right: var(--margin-for-device-side);
  position: absolute;
  z-index: -1;*/
}



/* ボタン */
.cmn_product_btn{
  display: flex;
  justify-content: center;
}
* + .cmn_product_btn{
  margin-top: 50px;
}
.cmn_product_btn .link_3{
  width: 540px;
  max-width: 100%;
}

.link_3.wh{
  background: #ffffff;
  color: #000;
}
.link_3.wh:hover{
  background: #e7c47b;
  color: #a11f29;
}

.cmn_contents.noBorder + .cmn_product_btn{
  margin-top: 15px;
}

@media (min-width:414px){

  .cmn_contents_ttl{
    font-size: 22px;
  }
  .cmn_contents2_ttl{
    font-size: 22px;
  }
  
}
@media (max-width:767px){
  
  .cmn_contents_head_txt{
    margin-top: 5px;
  }
  
}
@media (min-width:768px){
  
  /* ページ概要 */
  .cmn_about{
  }
  .cmn_about_box1{
    /*width: 48%;*/
  }
  .cmn_about_box2{
    /*width: 48%;*/
    padding-top: 15px;
  }
  .cmn_about_head{
    /*margin-bottom: 25px;*/
  }
  .cmn_about_head_en{
    font-size: 36px;
  }
  .cmn_about_head_ja{
    font-size: 40px;
  }
  .cmn_about_ttl{
    font-size: 21px;
    margin-bottom: 10px;
  }
  .cmn_about_txt{
    font-size: 16px;
    /*line-height: 2.25;*/
  }

  
  /* ページ概要2 */
  .cmn_about2{
  }
  * + .cmn_about2{
    margin-top: 55px;
  }
  .cmn_about2_box1{
    width: 59.90%;
    order: 1;
    margin-top: 0;
  }
  .cmn_about2_box2{
    width: 34.23%;
    padding-top: 5px;
    order: 2;
  }
  .cmn_about2_ttl{
    font-size: 21px;
    margin-bottom: 22px;
  }
  .cmn_about2_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_about2.rvs{
    
  }
  .cmn_about2.rvs .cmn_about2_box1{
    order: 2;
  }
  .cmn_about2.rvs .cmn_about2_box2{
    order: 1;
  }
  
  /* コンテンツ */
  .cmn_contents{

  }
  * + .cmn_contents.noBorder{
    margin-top: 30px;
  }
  .cmn_contents_row{
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .cmn_contents_head{
    margin-bottom: 8px;
  }
  .cmn_contents_head_num{
    font-size: 60px;
    width: 82px;
  }
  .cmn_contents_head_txt{
    font-size: 18px;
    width: calc(100% - 82px);
  }
  .cmn_contents_ttl{
    font-size: 26px;
    margin-bottom: 20px;
  }
  .cmn_contents_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_contents.noBorder{

  }
  .cmn_contents.noBorder .cmn_contents_row{
    padding-top: 25px;
    padding-bottom: 25px;
  }
  
  /* コンテンツ2 */
  .cmn_contents2{

  }
  .cmn_contents2_row{
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .cmn_contents2_head{
    margin-bottom: 20px;
  }
  .cmn_contents2_head_txt{
    font-size: 28px;
    padding: 3px 10px 5px 45px;
  }
  .cmn_contents2_head_txt:first-child:before{
    top: 1px;
    left: 15px;
  }
  .cmn_contents2_head_txt + .cmn_contents2_head_txt{
    margin-top: 12px;
  }
  .cmn_contents2_ttl{
    font-size: 26px;
    margin-bottom: 20px;
  }
  .cmn_contents2_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_contents.noBorder + .cmn_product_btn{
    margin-top: 20px;
  }
}
@media (min-width:1024px){

  /* ページ概要 */
  .cmn_about{
  }
  .cmn_about_box1{
    width: 45%;
  }
  .cmn_about_box2{
    width: 53%;
    padding-top: 15px;
  }
  .cmn_about_head{
    margin-bottom: 25px;
  }
  .cmn_about_head_en{
    font-size: 46px;
  }
  .cmn_about_head_ja{
    font-size: 50px;
  }
  .cmn_about_ttl{
    font-size: 21px;
    margin-bottom: 15px;
  }
  .cmn_about_txt{
    font-size: 16px;
    /*line-height: 2.25;*/
  }

  /* コンテンツ */
  .cmn_contents{

  }
  .cmn_contents_row{
    padding-top: 100px;
    padding-bottom: 90px;
  }
  .cmn_contents_box1{
    width: 51.35%;
    padding-top: 5px;
  }
  .cmn_contents_box2{
    width: 42.79%;
    margin-top: 0;
  }
  .cmn_contents_head{
    margin-bottom: 8px;
  }
  .cmn_contents_head_num{
    font-size: 60px;
    width: 82px;
  }
  .cmn_contents_head_txt{
    font-size: 18px;
    width: calc(100% - 82px);
  }
  .cmn_contents_ttl{
    font-size: 24px;
    margin-bottom: 20px;
  }
  .cmn_contents_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_contents_row:nth-child(odd) .cmn_contents_box1{
    
  }
  .cmn_contents_row:nth-child(odd) .cmn_contents_box2{
    
  }
  .cmn_contents_row:nth-child(even) .cmn_contents_box1{
    order: 2;
  }
  .cmn_contents_row:nth-child(even) .cmn_contents_box2{
    order: 1;
  }
  
  .cmn_contents.noBorder{

  }
  * + .cmn_contents.noBorder{
    margin-top: 50px;
  }
  .cmn_contents.noBorder .cmn_contents_row{
    padding-top: 45px;
    padding-bottom: 45px;
  }
  
  /* コンテンツ2 */
  .cmn_contents2{

  }
  .cmn_contents2_row{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .cmn_contents2_box1{
    width: 40.09%;
    padding-top: 5px;
  }
  .cmn_contents2_box2{
    width: 51.35%;
    margin-top: 0;
  }
  .cmn_contents2_head{
    margin-bottom: 28px;
  }
  .cmn_contents2_head_txt{
    font-size: 24px;
  }
  .cmn_contents2_head_txt{
    padding: 5px 10px 7px 45px;
  }
  .cmn_contents2_head_txt:first-child:before{
    top: 1px;
    left: 15px;
  }
  .cmn_contents2_ttl{
    font-size: 24px;
    margin-bottom: 35px;
  }
  .cmn_contents2_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_contents2_row:nth-child(odd) .cmn_contents2_box1{
    
  }
  .cmn_contents2_row:nth-child(odd) .cmn_contents2_box2{
    
  }
  .cmn_contents2_row:nth-child(even) .cmn_contents2_box1{
    order: 2;
  }
  .cmn_contents2_row:nth-child(even) .cmn_contents2_box2{
    order: 1;
  }
  
  
  /* ボタン */
  .cmn_product_btn{
  }
  * + .cmn_product_btn{
    margin-top: 85px;
  }
  .cmn_about2 + .cmn_product_btn{
    margin-top: 65px;
  }
  .cmn_contents.noBorder + .cmn_product_btn{
    margin-top: 5px;
  }
  .cmn_product_btn .link_3{
    width: 540px;
  }
}
@media (min-width:1200px){

  /* ページ概要 */
  .cmn_about_head_en{
    font-size: 60px;
  }
  .cmn_about_head_ja{
    font-size: 68px;
    margin-right: -10px;
  }
  .cmn_about_ttl{
    font-size: 21px;
    margin-bottom: 30px;
  }
  .cmn_about_txt{
    font-size: 16px;
    line-height: 2.25;
  }
  
  .cmn_contents_ttl{
    font-size: 32px;
    margin-bottom: 20px;
    margin-right: -10px;
  }
  .cmn_contents2_ttl{
    font-size: 35px;
  }
  
  
  .cmn_about_box2{
    width: 48.64%;
  }
  
  .cmn_contents2_head_txt{
    font-size: 28px;
  }
  .cmn_contents2_head_txt{
    padding: 3px 15px 5px 45px;
  }
  .cmn_contents2_head_txt:first-child:before{
    top: 1px;
    left: 15px;
  }
}
@media (min-width:1470px){


}



/*******************************
*　
********************************/
.pg_aerospace{

}
.pg_aerospace .section.sec1{
  padding-bottom: 50px;
  margin-bottom: 20px;
  border-bottom: 1px solid #808e99;
}
.pg_aerospace .section.sec2{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_aerospace .section.sec3{
  padding-top: 50px;
  padding-bottom: 0;
}
.pg_aerospace .section.sec4{
  padding-top: 35px;
}
.pg_aerospace .section.sec5{

}


@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  .pg_aerospace{

  }
  .pg_aerospace .section.sec1{
    padding-bottom: 70px;
    margin-bottom: 20px;
  }
  .pg_aerospace .section.sec2{
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .pg_aerospace .section.sec3{
    padding-top: 70px;
    padding-bottom: 0;
  }
  .pg_aerospace .section.sec4{
    padding-top: 35px;
  }
  

}
@media (min-width:1024px){


}
@media (min-width:1200px){

  .pg_aerospace{

  }
  .pg_aerospace .section.sec1{
    padding-bottom: 120px;
    margin-bottom: 20px;
  }
  .pg_aerospace .section.sec2{
    padding-top: 90px;
    padding-bottom: 100px;
  }
  .pg_aerospace .section.sec3{
    padding-top: 110px;
    padding-bottom: 0;
  }
  .pg_aerospace .section.sec4{
    padding-top: 35px;
  }

}
@media (min-width:1470px){


}


.product_contact_form{
  
}
* + .product_contact_form{
  margin-top: 45px;
}

.contact_product_info{
  display: flex;
  gap: 10px 10px;
}
.contact_product_info + .contact_product_info{
  margin-top: 10px;
}

.formTd .contact_product_info [name$="[name]"]{
  width: 27.45%;
}
.formTd .contact_product_info [name$="[maker]"]{
  width: 39.86%;
}
.formTd .contact_product_info [name$="[num]"]{
  width: 30.06%;
}
.formTd .inputHasNote p{
  
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: 10px 10px;
}

.formWrap [name="product_info"]{
  position: absolute;
  z-index: 1;
  height: 0;
  padding: 0;
  border: 0;
}

.inputHasNote{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.inputHasNote p{
  
}

@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  

}
@media (min-width:1024px){


}
@media (min-width:1200px){


}
@media (min-width:1470px){


}





/*******************************
*　
********************************/
.pg_parts{

}
.pg_parts .section.sec1{
  padding-bottom: 50px;
  margin-bottom: 20px;
  border-bottom: 1px solid #808e99;
}
.pg_parts .section.sec2{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_parts .section.sec3{
  padding-top: 50px;
  padding-bottom: 0;
}
.pg_parts .section.sec4{
  padding-top: 35px;
}
.pg_aerospace .section.sec5{

}


@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  .pg_parts{

  }
  .pg_parts .section.sec1{
    padding-bottom: 70px;
    margin-bottom: 20px;
  }
  .pg_parts .section.sec2{
    padding-top: 65px;
    padding-bottom: 70px;
  }
  .pg_parts .section.sec3{
    padding-top: 70px;
    padding-bottom: 0;
  }
  .pg_parts .section.sec4{
    padding-top: 50px;
  }
  

}
@media (min-width:1024px){


}
@media (min-width:1200px){

  .pg_parts{

  }
  .pg_parts .section.sec1{
    padding-bottom: 120px;
    margin-bottom: 20px;
  }
  .pg_parts .section.sec2{
    padding-top: 65px;
    padding-bottom: 150px;
  }
  .pg_parts .section.sec3{
    padding-top: 110px;
    padding-bottom: 0;
  }
  .pg_parts .section.sec4{
    padding-top: 35px;
  }

}


.parts_about_row{
  
}

.parts_about_row + .parts_about_row{
  margin-top: 50px;
}
.home_sec4_items + .parts_about_row{
  margin-top: 30px;
}

/* 活躍するフィールド */
.parts_field{
  
}
* + .parts_field{
  margin-top: 50px;
}
.parts_field_head{
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3;
  text-align: center;
  border-bottom: 1px solid;
  margin-bottom: 20px;
}
.parts_field_head.bk{
  font-weight: 500;
  color: #000;
}
.parts_field_list{
  display: flex;
  flex-wrap: wrap;
  gap: 30px 20px;
}
.parts_field_list_item{
  width: 100%;
}
.parts_field_list_item_img{
  
}
.parts_field_list_item_img.img_fit:before{
  padding-top: 86.275%;
}
.parts_field_list_item_ttl{
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 15px;
}
.parts_field_list_item_txt{
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.05em;
  text-align: justify;
}

/* 試験サービス */
.parts_service{
  background: #f8f3e9;
  color: #000;
  padding: 20px 15px 20px;
  border-radius: 5px;
}
* + .parts_service{
  margin-top: 50px;
}
.parts_service_list{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 10px;
}
.parts_service_list_item{
  width: calc((100% - 10px) / 2);
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 36px;
  padding: 5px 10px;
  background: #FFF;
  color: #000;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.3;
  text-align: center;
  border: 1px solid #a5a7a6;
  border-radius: 5px;
}


/* 説明 */
.parts_service_note{
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.05em;
  text-align: justify;
}
* + .parts_service_note{
  margin-top: 30px;
}


/* ニーズ */
.parts_needs{
  
}
* + .parts_needs{
  margin-top: 50px;
}
.parts_needs_head{
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.3;
  background: #ead8b2;
  text-align: center;
  padding: 5px 10px;
  margin-bottom: 36px;
}
.parts_needs_contents{
  display: flex;
  flex-wrap: wrap;
  gap: 30px 15px;
}
.parts_needs_contents_row{
  width: 100%;
}
.parts_needs_contents_row.wide{
  width: 100%;
}
.parts_needs_contents_ttl{
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.4;
  border-bottom: 1px solid;
  margin-bottom: 15px;
}
.parts_needs_contents_txt{
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.3;
}
.parts_needs_contents_txt p{
  padding-left: 20px;
  position: relative;
  z-index: 1;
}
.parts_needs_contents_txt p:before{
  content: "";
  width: 15px;
  aspect-ratio: 1 / 1;
  background: #e7c47b;
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  top: 4px;
  left: 2px;
}
.parts_needs_contents_txt p + p{
  margin-top: 9px;
}

.parts_needs_contents_txt.horizon{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 30px;
}
.parts_needs_contents_txt.horizon p + p{
  margin-top: 0;
}

@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){
  .parts_needs_contents_txt p{
    width: 100%;
  }
}
@media (min-width:768px){
  
  .parts_about_row{
  
  }
  .parts_about_row + .parts_about_row{
    margin-top: 70px;
  }
  .home_sec4_items + .parts_about_row{
    margin-top: 50px;
  }
  
  /* 活躍するフィールド */
  .parts_field{

  }
  * + .parts_field{
    margin-top: 95px;
  }
  .parts_field_head{
    font-size: 26px;
    margin-bottom: 30px;
  }
  .parts_field_list{
    gap: 30px 20px;
  }
  .parts_field_list_item{
    width: calc((100% - 20px) / 2);
  }
  .parts_field_list_item_ttl{
    font-size: 21px;
    /*margin-top: 15px;*/
    /*margin-bottom: 22px;*/
  }
  .parts_field_list_item_txt{
    font-size: 16px;
    /*line-height: 2.25;*/
  }

  
  /* 試験サービス */
  .parts_service{
    padding: 30px 30px 30px;
  }
  * + .parts_service{
    margin-top: 50px;
  }
  .parts_service_list{
    gap: 15px 20px;
  }
  .parts_service_list_item{
    width: calc((100% - 20px) / 2);
    min-height: 50px;
    padding: 5px 10px;
    font-size: 16px;
  }

  
  /* ニーズ */
  .parts_needs{

  }
  * + .parts_needs{
    margin-top: 50px;
  }
  .parts_needs_head{
    font-size: 20px;
    margin-bottom: 36px;
  }
  .parts_needs_contents{
    gap: 80px 30px;
  }
  .parts_needs_contents_row{
    width: calc((100% - 30px) / 2);
  }
  .parts_needs_contents_ttl{
    font-size: 18px;
    margin-bottom: 15px;
  }
  .parts_needs_contents_txt{
    font-size: 16px;
  }
  .parts_needs_contents_txt p{
    padding-left: 20px;
  }
  .parts_needs_contents_txt p:before{
    width: 15px;
    top: 4px;
    left: 2px;
  }
  .parts_needs_contents_txt p + p{
    margin-top: 9px;
  }
}
@media (min-width:1024px){

  /* 活躍するフィールド */
  .parts_field{

  }
  * + .parts_field{
    /*margin-top: 95px;*/
  }
  .parts_field_head{
    /*font-size: 30px;*/
    /*margin-bottom: 60px;*/
    line-height: 1.2;
  }
  .parts_field_list{
    gap: 30px 20px;
  }
  .parts_field_list_item{
    width: calc((100% - 60px) / 4);
  }
  .parts_field_list_item_ttl{
    /*font-size: 21px;*/
    /*margin-top: 15px;*/
    /*margin-bottom: 22px;*/
  }
  .parts_field_list_item_txt{
  }

  /* 試験サービス */
  .parts_service{
    /*padding: 50px 65px 30px;*/
  }
  * + .parts_service{
    /*margin-top: 50px;*/
  }
  .parts_service_list{
    gap: 15px 20px;
  }
  .parts_service_list_item{
    width: calc((100% - 40px) / 3);
  }
  
  .parts_service .parts_field_head{
    margin-bottom: 50px;
  }

}
@media (min-width:1200px){


  .parts_about_row{
  
  }
  .parts_about_row + .parts_about_row{
    margin-top: 145px;
  }
  .home_sec4_items + .parts_about_row{
    margin-top: 90px;
  }
  
  /* 活躍するフィールド */
  .parts_field{

  }
  * + .parts_field{
    margin-top: 95px;
  }
  .parts_field_head{
    font-size: 30px;
    margin-bottom: 60px;
  }
  .parts_field_list{
    gap: 30px 30px;
  }
  .parts_field_list_item{
    width: calc((100% - 90px) / 4);
  }
  .parts_field_list_item_ttl{
    font-size: 21px;
    margin-top: 15px;
    margin-bottom: 22px;
  }
  .parts_field_list_item_txt{
    line-height: 2.25;
  }
  
  /* 試験サービス */
  .parts_service{
    padding: 35px 65px 30px;
  }
  * + .parts_service{
    margin-top: 110px;
  }
  .parts_service_list{
    gap: 20px 30px;
  }
  .parts_service_list_item{
    width: calc((100% - 60px) / 3);
    font-size: 18px;
  }
  
  .parts_service + .cmn_product_btn{
    margin-top: 60px;
  }
  
    
  /* 説明 */
  .parts_service_note{
    font-size: 16px;
    line-height: 2.25;
  }
  * + .parts_service_note{
    margin-top: 30px;
  }
  
  
}
@media (min-width:1470px){


}




/*******************************
*　
********************************/
.pg_develop{

}
.pg_develop .section.sec1{
  padding-bottom: 50px;
  margin-bottom: 20px;
  border-bottom: 1px solid #808e99;
}
.pg_develop .section.sec2{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_develop .section.sec3{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_develop .section.sec4{
  padding-top: 50px;
  padding-bottom: 70px;
}
.pg_develop .section.sec5{

}

.pg_develop + .footer{
  margin-top: 0;
}

@media (min-width:768px){
  .pg_develop{

  }
  .pg_develop .section.sec1{
    padding-bottom: 70px;
    margin-bottom: 20px;
  }
  .pg_develop .section.sec2{
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .pg_develop .section.sec3{
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .pg_develop .section.sec4{
    padding-top: 70px;
    padding-bottom: 100px;
  }
  

}
@media (min-width:1024px){


}
@media (min-width:1200px){

  .pg_develop{

  }
  .pg_develop .section.sec1{
    padding-bottom: 120px;
    margin-bottom: 20px;
  }
  .pg_develop .section.sec2{
    padding-top: 90px;
    padding-bottom: 150px;
  }
  .pg_develop .section.sec3{
    padding-top: 110px;
    padding-bottom: 70px;
  }
  .pg_develop .section.sec4{
    padding-top: 85px;
    padding-bottom: 200px;
  }

}
@media (min-width:1470px){


}


/**/
.develop_head{
  font-size: 32px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 25px;
}
.develop_head em{
  font-style: normal;
  color: #a11f2a;
}

@media (max-width:374px){

}
@media (min-width:414px){

  .develop_head{
    font-size: 35px;
  }
  
}
@media (max-width:767px){

}
@media (min-width:768px){
  
  /**/
  .develop_head{
    font-size: 45px;
    margin-bottom: 40px;
    /*margin-left: -15px;*/
    /*margin-right: -15px;*/
  }

}
@media (min-width:1024px){


}
@media (min-width:1200px){

  /**/
  .develop_head{
    font-size: 57px;
    margin-bottom: 55px;
    margin-left: -15px;
    margin-right: -15px;
  }

}
@media (min-width:1470px){


}





/*******************************
*　
********************************/
.pg_3d{

}
.pg_3d .section.sec1{
  padding-bottom: 50px;
  margin-bottom: 20px;
  border-bottom: 1px solid #808e99;
}
.pg_3d .section.sec2{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_3d .section.sec3{
  padding-top: 50px;
  padding-bottom: 50px;
}
.pg_3d .section.sec4{
  padding-top: 50px;
  /*padding-bottom: 70px;*/
}
.pg_3d .section.sec5{
  
}


@media (min-width:768px){
  .pg_3d{

  }
  .pg_3d .section.sec1{
    padding-bottom: 70px;
    margin-bottom: 20px;
  }
  .pg_3d .section.sec2{
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .pg_3d .section.sec3{
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .pg_3d .section.sec4{
    padding-top: 70px;
  }
  .pg_3d .section.sec5{
    padding-top: 70px;
  }

}
@media (min-width:1024px){


}
@media (min-width:1200px){

  .pg_3d{

  }
  .pg_3d .section.sec1{
    padding-bottom: 135px;
    margin-bottom: 20px;
  }
  .pg_3d .section.sec2{
    padding-top: 90px;
    padding-bottom: 150px;
  }
  .pg_3d .section.sec3{
    padding-top: 110px;
    padding-bottom: 115px;
  }
  .pg_3d .section.sec4{
    padding-top: 110px;
    padding-bottom: 65px;
  }
  
  .pg_3d .section.sec5{
    padding-top: 110px;
  }
  
  .pg_3d .section.sec3 .tt_sec{
    margin-bottom: 60px;
  }
  .pg_3d .section.sec5 .tt_sec{
    margin-bottom: 80px;
  }

}
@media (min-width:1470px){


}


.threeD_note{
  margin-top: 20px;
  color: #ff0000;
  letter-spacing: 0.05em;
}

/**/
.works_list{
  margin-left: var(--margin-for-device-side);
  margin-right: var(--margin-for-device-side);
}
* + .works_list{
  margin-top: 35px;
}
.works_list .webgene-blog{
  display: flex;
}
.works_list .webgene-item{
  width: calc(280px + 16px);
  padding: 0 8px;
}
.works_list .webgene-item .openPopup.img_fit:before{
  padding-top: 80.357%;
}

/*  */
.works_slide_ctrl{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 30px;
}
.works_slide_ctrl{
}
.works_slide_ctrl_pages{
  margin: 0 30px;
}
.works_slide_ctrl_pages .swiper-pagination{
  margin-top: 0;
}
.works_slide_ctrl_pages .swiper-pagination-bullet{
  width: 15px;
  height: 15px;
  background: #FFF;
  border: 1px solid #000;
  opacity: 1;
  margin: 0 10px;
}
.works_slide_ctrl_pages .swiper-pagination-bullet-active{
  background: #000;
}

.works_slide_ctrl_prev,
.works_slide_ctrl_next{
  width: 40px;
  cursor: pointer;
  transition: 0.2s all;
}
.works_slide_ctrl_prev:hover,
.works_slide_ctrl_next:hover{
  transform: scale(0.95);
}
.works_slide_ctrl_prev{
  
}
.works_slide_ctrl_next{
  
}

@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  
  
  /**/
  .works_list{
  }
  * + .works_list{
    margin-top: 35px;
  }
  .works_list .webgene-blog{
  }
  .works_list .webgene-item{
    width: calc(340px + 24px);
    padding: 0 12px;
  }

  /*  */
  .works_slide_ctrl{
    margin-top: 30px;
  }
  .works_slide_ctrl{
  }
  .works_slide_ctrl_pages{
    margin: 0 50px;
  }
  .works_slide_ctrl_pages .swiper-pagination{
    margin-top: 0;
  }
  .works_slide_ctrl_pages .swiper-pagination-bullet{
    width: 22px;
    height: 22px;
  }

  .works_slide_ctrl_prev,
  .works_slide_ctrl_next{
    width: 50px;
  }
  
}
@media (min-width:1024px){


}
@media (min-width:1200px){


  /**/
  .works_list{
  }
  * + .works_list{
    margin-top: 35px;
  }
  .works_list .webgene-blog{
  }
  .works_list .webgene-item{
    width: calc(560px + 24px);
    padding: 0 12px;
  }

  /*  */
  .works_slide_ctrl{
    margin-top: 30px;
  }
  .works_slide_ctrl{
  }
  .works_slide_ctrl_pages{
    margin: 0 100px;
  }
  .works_slide_ctrl_pages .swiper-pagination{
    margin-top: 0;
  }
  .works_slide_ctrl_pages .swiper-pagination-bullet{
  }

  .works_slide_ctrl_prev,
  .works_slide_ctrl_next{
    width: 78px;
  }
  
  
}
@media (min-width:1470px){


}


/* ポップアップ */
.style_popup{
  width: 95vw;
  max-height: 90vh;
  overflow: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #FFF;
  color: #000;
  padding: 30px 30px;
}
.style_popup_box1{
  width: 100%;
}
.style_popup_box2{
  width: 100%;
  margin-top: 20px;
  
}
.style_popup_imgs{
  
}
.style_popup_imgs .img.img_fit:before{
  padding-top: 79.18%;
}
.style_popup_imgs .img.img_fit img{
  object-fit: contain;
  font-family: 'object-fit: contain';
}
.style_popup_title{
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.075em;
  line-height: 1.5;
  border-bottom: 1px solid;
  padding-bottom: 10px;
  margin-bottom: 15px;
}
.style_popup_txt{
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  text-align: justify;
}

.style_popup_imgs_wrap{
  position: relative;
  z-index: 1;
}
.popup_slider_btn_prev,
.popup_slider_btn_next{
  font-size: 20px;
  position: absolute;
  z-index: 1;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
}
.popup_slider_btn_prev{
  left: -1.2em;
}
.popup_slider_btn_next{
  right: -1.2em;
}

.popup_close{
  width: 18px;
  position: absolute;
  z-index: 3;
  top: 10px;
  right: 10px;
  cursor: pointer;
}

@media (min-width:768px){
  
  /* ポップアップ */
  .style_popup{
    width: 700px;
    padding: 50px 50px;
  }
  .style_popup_box1{
    width: 51.53%;
  }
  .style_popup_box2{
    width: 41.83%;
    margin-top: 0;
  }
  .style_popup_imgs{

  }
  .style_popup_title{
    font-size: 18px;
    padding-bottom: 32px;
    margin-bottom: 15px;
  }
  .style_popup_txt{
    font-size: 16px;
  }
  .popup_slider_btn_prev{
    left: -2em;
  }
  .popup_slider_btn_next{
    right: -2em;
  }

  .popup_close{
    width: 24px;
    top: 20px;
    right: 20px;
  }
}
@media (min-width:1024px){

  /* 一覧 */
  
  
  /* ポップアップ */
  .style_popup{
    width: 920px;
  }

}
@media (min-width:1200px){

  
  /* ポップアップ */
  .style_popup{
    padding: 60px 65px;
    width: 1100px;
  }
  
  .style_popup_title{
    font-size: 25px;
    
  }
  .style_popup_txt{
    line-height: 2.5;
  }
  
  .popup_close{
    width: 44px;
    top: 35px;
    right: 20px;
  }
}



/*******************************
*　
********************************/
.pg_xxx{

}
.pg_xxx .section.sec1{

}
.pg_xxx .section.sec2{

}
.pg_xxx .section.sec3{

}
.pg_xxx .section.sec4{

}
.pg_xxx .section.sec5{

}


@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){

}
@media (min-width:768px){
  .pg_xxx{

  }
  .pg_xxx .section.sec1{

  }
  .pg_xxx .section.sec2{

  }
  .pg_xxx .section.sec3{

  }
  .pg_xxx .section.sec4{

  }
  .pg_xxx .section.sec5{

  }


}
@media (min-width:1024px){


}
@media (min-width:1200px){


}
@media (min-width:1470px){


}

.home_sec4_item .link_3.on{
  background: #a11f29;
  color: #FFF;
}

.excel_src_wrap{
  display: none;
  flex-wrap: wrap;
  gap: 15px 15px;
  margin-top: 10px;
}
.gjs-dashed .excel_src_wrap{
  display: flex;
}

.excel_src_box{
  width: calc((100% - 15px) / 2);
  border: 2px solid #CCC;
  background: #EEE;
  padding: 15px;
  font-size: 14px;
}
.excel_src_box p{
  
}
.excel_src_item{
  padding: 10px;
  background: #a11f29;
  word-break: break-all;
  color: #FFF;
}
.excel_src_item + .excel_src_item{
  margin-top: 10px;
}
.excel_src_file,
.excel_src_fields{
  position: relative;
  z-index: 1;
  padding: 5px;
  padding-left: 100px;
}
.excel_src_file:before,
.excel_src_fields:before{
  width: 90px;
  white-space: nowrap;
  text-align: center;
  background: #CCC;
  position: absolute;
  z-index: 1;
  top: 2px;
  bottom: 2px;
  left: 2px;
}
.excel_src_file:before{
  content: "ファイル";
}
.excel_src_fields:before{
  content: "表示項目";
}
.excel_src_fields{
  margin-top: 5px;
}


.excel_table_wrap{
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #808e99;
}
.excel_table_wrap thead{
  background: #a11f29;
  color: #FFF;
}
.excel_table_wrap th,
.excel_table_wrap td{
  border: 2px solid #808e99;
}
.excel_table_wrap td:first-child{
  width: 150px;
  white-space: nowrap;
}

div.dt-container .dt-search{
  text-align: right;
}
div.dt-container .dt-search input{
  border: 2px solid #808e99;
  padding: 10px;
}
.dt-layout-cell.dt-layout-full{
  overflow: auto;
}

.excel_switch_nav{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 10px;
  margin-bottom: 25px;
}
.excel_switch_btn{
  padding-bottom: 3px;
  border-bottom: 1px solid;
}
.excel_switch_btn.active{
  color: #a11f29;
}



@media (max-width:374px){

}
@media (min-width:375px){

}
@media (max-width:767px){
  table.dataTable{
    font-size: 13px;
  }
}
@media (min-width:768px){
  
  .excel_table_wrap{
    margin-top: 60px;
    padding-top: 50px;
  }
  .excel_table_wrap td:first-child{
    width: 200px;
  }

}
@media (min-width:1024px){


}
@media (min-width:1200px){


}
@media (min-width:1470px){


}

