@charset "UTF-8";


a.anchor{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

/*------------------------------------------------------------------
    [sub mv]
------------------------------------------------------------------*/
@media screen and (max-width: 991px) {
    .submv_business { background-position: 13% 10px!important;}
    .submv_company {background-position: 33% 58px!important;}
}


/*------------------------------------------------------------------
    [sub common]
------------------------------------------------------------------*/
/* Navbar_nomv */
.header .nomv {
    border-radius: 0px!important;
    margin-bottom: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.7, 1, 0.7, 1);
    padding: 0;
    background: #007ad6; 
}

.carousel-title {
    color: #fff;
    line-height: 1.4em;
    width: auto;
    height: auto;
    text-align: center;
}

.carousel-title span {
    font-size: 22px;
    font-weight: 400;
    color: #fff;
    letter-spacing: .07em;
    display: block;
    line-height: 1.4em;
}
.carousel-title .jpn {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
}
.parallax-content {
    padding-top: 220px;
    padding-bottom: 120px;
}

/* .img-responsive { display: inline-block; }*/
.second-titlebox  {margin-bottom: 50px;}

.cboxtit01 { font-size: 28px; font-weight: bold;}
.cboxtit02 {
    color: #1b1b1b;
    font-weight: 400;
    font-size: 14px; }
    .cboxtit03 { font-size: 17px; font-weight: bold; }
    .cboxtit04 { font-size: 23px; font-weight: bold; }
    .cboxtit05 { font-size: 14px;   color: #333;}
    .cboxtit06 { font-size: 15px; font-weight: bold;}
    .cboxtit07 {
        color: #1b1b1b;
        font-weight: 400;
        font-size: 14px;
        line-height: 2!important;
        border: none!important;
    }



    @media screen and (max-width: 991px) {
        .carousel-title span {font-size: 20px;}
        .carousel-title .jpn {font-size: 17px;}
        .second-titlebox  {margin-bottom: 20px;}
        .cboxtit01 { font-size: 20px;}
        .cboxtit03 {     
            font-size: 17px;
            font-weight: bold;
            line-height: 1.7em; }

        }


/*------------------------------------------------------------------
    breadcrumb
------------------------------------------------------------------*/
.breadcrumb {
    background: #fff;
    padding: 10px;
    border-bottom: solid 1px #ededed;
    margin-top: 68px;
    margin-bottom: 0px;
}

.breadcrumb .content-lg {
    padding: 10px!important;
}

.breadcrumb span {
    color: #000;
    font-size: 14px;
}
.breadcrumb ol {
   margin: 0 auto;
   width: 100%;
   max-width: 1240px;
   padding-right: 15px;
   padding-left: 15px;
}

.breadcrumb-item { display: inline-block;}


.breadcrumb-item+.breadcrumb-item::before {
  content: "\03e";
  color: #aaa;
}

.breadcrumb-item+.breadcrumb-item { padding-left: 1rem; }

li.breadcrumb-item:first-child a {
  color: #aaa;
  position: relative;
}

li.breadcrumb-item:first-child a span {
   padding-left: 1rem;
   color: #9c9c9c;
   font-weight: 400;
   font-size: 15px;
}

li.breadcrumb-item a .icon {
  width: 1.6rem;
  margin-top: -4px;
  vertical-align: text-bottom;
}

li.breadcrumb-item a .icon img {
    width: 16px;
}
@media screen and (max-width: 991px) {
    .breadcrumb { margin-top: 60px;}
    .breadcrumb .content-lg { padding: 0px!important;}
}



/*------------------------------------------------------------------
    [sub cmn]
------------------------------------------------------------------*/
#subtitle div.content-lg {padding: 50px 15px 0px!important;}
#subtitle h2.en {font-weight: 500;}
.second-titlebox h3 { font-size: 25px;}

.cmntitle-subcon h2 p {
    color: #1d1d1b;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1em;
}
.cmntitle-subcon .en {
    font-size: 16px;
    font-weight: 400;
    color: #0168b5;
    text-transform: uppercase;
    line-height: 1.2;
    letter-spacing: 0.3px;
}
.cmntitle-subcon span {
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .1rem;
}



@media screen and (max-width: 991px) {
  #subtitle h2.en {font-size: 32px;}
}




/*------------------------------------------------------------------
    [sub01 COMPANY Top]
------------------------------------------------------------------*/
#vision .content-lg { padding: 0px; }
.subtitle_vision {
    display: block;
    background: url(../img/company/company_topbbg.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    padding: 60px 30px;
}
.subtitle_vision .en {font-size: 33px; font-weight: 400;}

@media screen and (max-width: 991px) {
  #vision .content-lg { padding: 0px 15px 0px!important;}
}




/*------------------------------------------------------------------
    [sub01_1 message]
------------------------------------------------------------------*/
#message .content-lg { padding: 0px;}
.message_frame {
    background-color: #d1d2ca;
    position: relative;
    width: 60%;
    margin: auto;
}
.prinfo {
    width: 52%;
    background: #0168b5;
    display: inline-block;
    position: absolute;
    right: 0px;
    bottom: 0px;
    padding: 20px;
}
.pren {
    margin-left: 10px; 
    font-size: 17px; 
    font-weight: 400;
}
.fbbtn { margin-top: 20px;}
.fbbtn i { margin-left: 7px;}
#message02 .content-lg { padding-top: 60px;}

@media screen and (max-width: 1199px) and (min-width: 992px) {
    .prinfo {  width: 60%;}
}


@media (max-width: 991px) {
    #message .content-lg {padding: 0px!important;}    
    .prinfo {
        width: 100%;
        position: relative;
        padding: 20px 10px;
        text-align: center;
    }
    .prinfo div p.cboxtit04 {
        line-height: 1.5em;
    }
    .fbbtn { margin-top: 10px; text-align: center; width: 100%;}   
    .btn-theme-ss { font-size: 13px;}
    #message02 .cboxtit06 {font-size: 18px;}

}



/*------------------------------------------------------------------
    [sub01_2 company]
------------------------------------------------------------------*/

/* table */
.logoarea p {
    padding-right: 0px;
    padding-left: 0px;
}
.logoarea p.logoimgbox {text-align: right;}
.tablebox {
    margin-bottom: 60px;
}
.tablebox p {
    margin-bottom: 0px;
}
.tablebox table {
    border: 1px solid #ccc;
    width: 100%;
}

.tablebox th{
 background: #f7f7f7;
 color: #000;
}

.tablebox td {
  background: #fff;
}

.tablebox th, .tablebox td {
    border-top: 1px solid #ccc;
    vertical-align: middle;
    padding: 16px 20px;
    text-align: left;
    font-size: 15px;
    font-weight: 400;
    line-height: 2em;
}
.tablebox th {
    padding-left: 20px;
    font-weight: bold;
    width: 270px;
}
.gmap {margin-top: 20px; }

@media  screen and (max-width: 991px) {
    .logoarea p{ float: inherit;}
    .logoarea p.logoimgbox {
        text-align: left;
        margin-left: -14px;
    }
    .tablebox table {
        display: block;
        padding: 0px;
        box-sizing: border-box;
    }
    .tablebox tbody, .tablebox tr, .tablebox th, .tablebox td{
        display: block;
        width: 100%;
    }
    .tablebox th, .tablebox td {padding: 8px 20px;}
}




.lbox {
    margin-left: 10px;
    display: inline-block;
    /* border: 1px solid #0185ce; */
}
.lbox img{ width: 200px;}
.grouplink a {
    color: #0168b5;
    text-decoration: underline;
}

#history .content-lg {
    padding-top: 0px;
}



/*------------------------------------------------------------------
    [sub01_3 company]
------------------------------------------------------------------*/

/*------------------------------------------------------------------
    [sub01_4 office]
------------------------------------------------------------------*/
#office .content-lg {padding-top: 0px;}
@media (max-width: 991px) { 
    #office .content-lg { padding: 0px 15px!important;}
}


.domestic-link-zone {
    margin-bottom: 40px;
}
.domestic-link-zone ul {
    margin: 0 auto;
    box-sizing: border-box;
    text-align: center;
}
.domestic-link-zone li {
    width: 33.333%;
    text-align: center;
    box-sizing: border-box;
    padding: 0 5px;
    margin: 0 auto 10px;
    float: left;
}
.domestic-link-zone li a {
    display: block;
    background-color: #fff;
    color: #000;
    font-size: 18px;
    font-weight: bold;
    padding: 10px 0;
    border: 1px solid #d9d9d9;
    text-decoration: none;
}
.domestic-link-zone li a:hover {
    background-color: #0168b5;
    border:1px solid #0168b5;
    color: #fff;
    transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
}


.office_tit {
    background: #0168b5;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 10px;
}

.branch-detail-wrapper {
    box-sizing: border-box;
    padding: 20px;
    border: 2px solid #e8e8e8;
    margin-bottom: 15px;
}
.branch-detail-box {
    margin: 0 auto 0px;
}
.branch-detail-box figure {
    float: left;
    width: 300px;
}
.branch-detail-box figure img {
    width: 100%;
}
.branch-detail-box .txt-box {
    width: calc(100% - 340px);
    float: right;
}
.branch-detail-p01 {
    font-size: 20px;
    font-weight: bold;
    margin: 0 auto 20px;
}

.branch-detail-p01 small{
    margin-left:10px;
}

.branch-detail-p01 a {
    display: inline-block;
    color: #333;
    background-color: #fff;
    border: 1px solid #333;
    font-size: 13px;
    padding: 8px 20px 6px;
    line-height: 1 !important;
    text-decoration: none;
    margin-left: 10px;
    border-radius: 3px;
}
.branch-detail-p01 a:hover {
    background-color: #000;
    color: #fff;
    transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
}
.branch-detail-p02 {
    font-size: 14px;
    margin: -10px auto 20px;
    font-weight: bold;
}
.branch-detail-table01 {
    width: 100%;
    box-sizing: border-box;
}
.branch-detail-table01 tr {
    border-bottom: 1px dotted #e8e8e8;
}
.branch-detail-table01 th, .branch-detail-table01 td {
    text-align: left;
    vertical-align: top;
    line-height: 1.7;
    font-size: 14px;
    font-weight: 400;
    box-sizing: border-box;
    padding: 5px 0;
}
.branch-detail-table01 th {
    width: 140px;
}
.branch-detail-table01 th:before {
    content: "\f054";
    font-family: "FontAwesome";
    font-weight: bold;
    margin-right: 10px;
    font-size: 12px;
    color: #d92c2c;
}


@media (max-width: 991px) { 
    .domestic-link-zone {padding:;}
    .domestic-link-zone li {
        width: 100%;
        padding: 0 1px;
    }
    .domestic-link-zone li a {
        font-size: 15px;
        word-break: keep-all;
    }
    .branch-detail-wrapper {
        margin: 0 auto 30px;
        padding: 10px;
    }
    .branch-detail-box figure {
        float: none;
        width: 100%;
        margin: 0 auto 10px;
        text-align: center;
        border: 1px solid #f1f1f1;
    }

    .branch-detail-box .txt-box {
        float: none;
        width: 100% !important;
        margin: 0 auto;
    }
    .branch-detail-table01 th, .branch-detail-table01 td {
        width: 100%;
        display: block;
        box-sizing: border-box;
    }
    .office_tit {font-size: 16px;}
    .branch-detail-p01 {font-size: 18px;}
    .office_tel {color: #333;}
}



/* office table 02 */
.office-table02 {
    border-collapse: collapse;
    border-left: 1px solid #D0D0D2;
    border-top: 1px solid #D0D0D2;
    width: 100%;
    margin: 0 auto 30px;
}
.office-table02 th, .office-table02 td {
    border-right: 1px solid #D0D0D2;
    border-bottom: 1px solid #D0D0D2;
    line-height: 1.7;
    padding: 15px 10px 12px;
    text-align: left;
    vertical-align: top;
    font-size: 14px;
    font-weight: bold;
}
.office-table02 thead th {
    background-color: #efefef;
    text-align: center;
}
.office-table02 thead tr th:nth-child(1) {
    width: 200px;
}
.office-table02 thead tr th:nth-child(3) {
    width: 400px;
}
.office-table02 tbody th {
    background-color: #f5f7ff;
    width: 100px;
    text-align: center;
}

@media screen and (max-width: 991px){
/* .office-table02 tbody th {width: auto!important;} */
.office-table02 thead tr th:nth-child(2), .office-table02 thead tr th:nth-child(3)  {width: auto;}
.office-table02 th, .office-table02 td {padding: 5px 5px; vertical-align: middle;}
.office-table02 td {font-size: 14px;}
}
@media screen and (max-width: 640px){
    .office-table02 tbody th {width: 20%;}
}

/*------------------------------------------------------------------
    [sub01_5 quality]
------------------------------------------------------------------*/
.subtitle_quality {
    display: block;
    background: url(../img/company/quality_bg.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    padding: 60px 30px;
}

#quality .content-lg { padding: 0px;}
.bluebox {
    width: 640px;
    /* background: rgba(8,100,169,.95);*/
    padding: 20px;
    margin: 0 auto;
}

#quality02 .content-lg {padding-top: 0px;}

@media screen and (max-width: 991px){
    #quality .content-lg { padding: 0px 15px!important;}
    #quality02 .content-lg {padding: 0px 15px 50px!important;}
    .subtitle_quality {padding: 50px 15px;}
    .bluebox {width: 100%;}
    .bluebox p.cboxtit03 {
        font-size: 15px;
        text-align: left;
    }
}


/*------------------------------------------------------------------
    [sub01_6 action plan]
------------------------------------------------------------------*/
.midashi_num_list .midashi_num {
    padding-top: 10px;
    padding-bottom: 10px;
}
.midashi_num_list .midashi_num {
    border-top: 1px solid #a0a0a0;
    border-bottom: 1px solid #a0a0a0;
    background: #fff;
    padding: 10px 30px;
    font-size: 20px;
    color: #eb6100;
    letter-spacing: .1em;
    vertical-align: middle;
    margin-bottom: 0px;
}
.midashi_num_list div.text {
    padding: 20px 50px;
    font-size: 16px;
    font-size: 1.6rem;
    color: #595757;
    line-height: 1.8;
}
.texttag {
    background: #eee; 
    padding:5px 10px; 
    color: #1b1b1b; 
    font-weight: bold;
    margin-right: 10px;
}

@media (max-width: 991px) {   
    .midashi_num_list div.text {padding: 20px 15px;}

}




/*------------------------------------------------------------------
    [sub02 OUR BUSINESS Top]
------------------------------------------------------------------*/
#business_top div.content-lg {padding: 0px 0px 100px;}
.bz_listwrap h4{
 font-size: 20px;
 /* text-transform: uppercase; */
 margin-bottom: 20px;
}
.bznum {
  color: #0168b5;
  font-size: 30px;
}


/*------------------------------------------------------------------
    [sub02_1 工程設計]
------------------------------------------------------------------*/
#solution { background: #e8e2d7;   }

/* box-aq */
.box-aq {margin-bottom: 15px;}
.box-aq i {
  margin-right: 10px;
  font-size: 20px;
  color:#cc3333;
}
.qw {
    position: relative;
    cursor: pointer;
    padding: 12px 20px;
    background: #0168b5;
    font-size: 20px;
    color: #fff;
    text-align: left;
    font-weight: bold;
    border-radius: 10px;
}
.qw span img {
  width: 35px;
}

.qw:before {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f106";
    position: absolute;
    right: 23px;
    top: 46%;
    font-size: 26px;
    margin-top: -12px;
    padding: 0px 7px 5px;
    background: #fff;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    color: #0168b5;
}
.qw:after {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f107";
    position: absolute;
    right: 23px;
    top: 46%;
    font-size: 26px;
    margin-top: -12px;
    padding: 3px 7px 5px;
    background: #fff;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    color: #0168b5;
}

.qw.is-opened:after {
  content: none;
}

.an {
    padding: 20px 30px;
    margin-top: 5px;
    text-align: left;
    background: #fff;
    font-size: 16px;
    border-radius: 10px;
}
.an p {
    border-bottom: 2px dotted #eee;
    line-height: 2.6em;
}
.an p a {
    text-decoration: underline;
    font-weight: bold;
    color: #000;
}

.detail_tool {
    margin-top: 0;
    border: solid 3px #0168b5;
    padding: 40px 30px;
}


@media (max-width: 991px) {   
    .qw {
        padding: 15px 35px 15px 15px;
        font-size: 15px;
    }
    .qw:before,.qw:after  { right: 10px;}
    .an { padding: 15px 20px;}
    .q-circle, .a-circle {
        width: 26px;
        height: 26px;
        padding: 5px 10px;
        font-size: 18px;
    }
}

@media (max-width: 480px) {  
    .qw:after {
        font: normal normal normal 14px/1 FontAwesome;
        content: "\f107";
        position: absolute;
        right: 23px;
        top: 46%;
        font-size: 20px;
        margin-top: -12px;
        padding: 3px 6px 0px;
        background: #fff;
        border-radius: 100%;
        width: 25px;
        height: 25px;
        color: #0168b5;
    } 
    .qw:before {
        font: normal normal normal 14px/1 FontAwesome;
        content: "\f106";
        position: absolute;
        right: 23px;
        top: 46%;
        font-size: 20px;
        margin-top: -12px;
        padding: 0px 6px 0px;
        background: #fff;
        border-radius: 100%;
        width: 25px;
        height: 25px;
        color: #0168b5;
    }


    .qw {padding: 15px 36px 15px 15px;  line-height: 1.7em;}
    .qw:after,.qw:before {right: 10px;}
    .q-circle, .a-circle {padding: 5px 0px;}

}


/* consulting01 */
#consulting01 {
    display: block;
    background: url(../img/business/bg_con01.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
}
#consulting01:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: #0864a9;
    height: 100%;
    width: 100%;
    opacity: 0.95;
    position: absolute;
    top: 0px;
    z-index: 2;
}
#consulting01 .content-lg {
    padding-top: 60px;
    padding-bottom: 60px;
}
/* subbox-style01 */
#subbox-style01 .row {
    margin-bottom: 3%;
    display: flex;
    align-items: center;
}
#subbox-style01 h3 { font-size: 22px;}
.fbox { margin-top: 50px;}
.rr {flex-direction: row-reverse;}




@media (max-width: 991px) {
    #subbox-style01 .row {
        display: inline-block;
        margin-bottom: 10%;
    }
    #subbox-style01 img {width: 100%;}
    .rr {flex-direction: row;}
    .fbox h3 {
        font-size: 22px;
        margin-top: 15px;
        line-height: 1.5em;
    }
    .font01 { font-size: 14px;}
}




/* flow */
.flowbox {
    background: #e8e2d7;
    display: inline-block;
    border-radius: 100px;
    width: 100%;
    padding: 20px 15px;
}
.flowbox img {
    width: 120px;
   /* position: absolute;
    left: 10%;
    top: 0px; */
}
.flowbox_r h4 {
    font-size: 20px;
    margin-bottom: 6px;
}
.arrbox {
    font-size: 25px;
    color: #333;
    padding: 0px 10px 10px;
}


@media (max-width: 991px) {
    .flowbox {
        border-radius: 20px;
        padding: 10px;
        margin-top: 35px;
    }
    .flowbox img {
        width: 80px;
        margin: 0 auto;
        margin-top: -50px;
    }
    .btnbox_abb a {
        width: 100%;
        display: inline-block;
        margin-bottom: 7px;
        text-align: left;
    }
}


/* other_business */
#other_business {
    display: block;
    background: url(../img/business/bg_other_business.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
}
#other_business:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: #fff;
    height: 100%;
    width: 100%;
    opacity: 0.95;
    position: absolute;
    top: 0px;
    z-index: 2;
}


/*  flowbox hover */
.bzbox {
    background: #25326a;
    padding: 15px;
    text-align: center;
}

.bzbox p {
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 0px;
    line-height: 1.4em;
}
.bzbox p.iconbox {
    text-align: center;
    margin-bottom: 14px;
}
.iconbox img {
    width: 150px;
    height: auto;
}
.bzbox p.en {
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: 500;
    font-style: italic;
}

.bzboxarea {margin-top: 60px;}
.bzboxarea li {
    float: left;
    width: 18%;
    margin-right: 2%;
    margin-bottom: 2%;
}
.bzboxarea li:nth-child(5){margin-right: 0px;}

.bzboxarea-btn{
  transition: transform 1s;
}

.bzboxarea-btn:hover {
 -webkit-transform: scale(1.2);
 -moz-transform: scale(1.2);
 -o-transform: scale(1.2);
 -ms-transform: scale(1.2);
 transform: scale(1.2);
 box-shadow: 0 15px 20px rgba(11,11,11,.2); 
}

/*.bzboxarea-btn:hover{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    transition-duration: 300ms;
    transition-property: all;
     box-shadow: 0 15px 20px rgba(11,11,11,.2); 
     transition: box-shadow .3s;
}  */





@media screen and (max-width: 991px) {
    .bzbox {padding: 10px;} 
    .bzboxarea {
        margin-top: 0px;
    }
    .bzboxarea li {
        width: 48.555%;
        float: left;
        margin-right: 1%;
        margin-bottom: 1%;
    }
    .bzboxarea-btn:hover {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -o-transform: scale(1);
      -ms-transform: scale(1);
      transform: scale(1);
      transition: box-shadow .3s;
  }
  .iconbox img{width: 120px;}
}



/*------------------------------------------------------------------
    [sub02_2 精密鍛造金型]
------------------------------------------------------------------*/
#lineup {background:#fdfdfd;}

/*------------------------------------------------------------------
    [sub02_3 試作専用設備]
------------------------------------------------------------------*/
/* subbox-style02 */
#subbox-style02 h3 { font-size: 22px;}
.font02 {
    color: #333;
    font-size: 14px;
    font-weight: bold;
    border: 1px solid #000;
    padding: 1px 20px;
}
.minitextbox span {
    margin-bottom: 2px;
}
.font03 {
    background-color: #f5f5f5;
    padding: 7px 27px 9px;
    font-size: 14px;
    font-weight: 400;
    line-height: 2;
    color: #000;
    width: 100%;
    /* margin-bottom: 7px; */
    display: inline-block;
}
.font03:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: -webkit-gradient(linear, left top, right top, color-stop(20%, #f93), color-stop(80%, #ff7166));
    background: -webkit-linear-gradient(left, #f93 20%, #ff7166 80%);
    background: linear-gradient(90deg, #f93 20%, #ff7166 80%);
    border-radius: 50px;
    display: inline-block;
    position: relative;
    height: 6px;
    margin-top: -4px;
    margin-right: 15px;
    width: 6px;
}

.font04 {
    border: solid 1px orangered;
    padding: 7px 27px 9px;
    font-size: 14px;
    font-weight: 700;
    line-height: 2;
    color: orangered;
    width: 100%;
    text-align: center;
    margin-top: 10px;
    display: inline-block;
}

.minitextbox_wrap {
    /* background: #e9f6ff; */
    border: 2px solid #efefef;
    padding: 20px;
}

.minitextbox_wrap02 {
    margin: 0 auto;
    text-align: center;
    border: 2px solid #eee;
    padding: 20px;
}

.minitextbox_wrap02 .cmbtn {
    margin-top: 20px;
}

@media screen and (max-width: 991px) {
  .minitextbox_wrap { }
}


/*------------------------------------------------------------------
    [sub02_4 IT SYSTEM]
------------------------------------------------------------------*/



/*------------------------------------------------------------------
    [sub02_5 海外生産]
------------------------------------------------------------------*/
.numtitle {
    font-size: 22px; 
    font-weight: bold;
    text-align: left;
    margin-bottom: 30px;
}
.numtitle .en {font-size: 24px; font-weight: 400;}


/*------------------------------------------------------------------
    [sub02_6 piezo]
------------------------------------------------------------------*/
#lineup_piezo {background: #e8e2d7;}

.iconbox_piezo {
    background: #eee;
    border-radius: 100%;
    width: 150px;
    height: 150px;
    text-align: center;
    margin: 0 auto;
    padding: 30px;
}
.iconbox_piezo img {
    width: 100%;
}


/* piezo qna */
.piezo-box-aq {margin-bottom: 15px;}
.piezo-box-aq i {
  margin-right: 10px;
  font-size: 20px;
  color:#cc3333;
}
.piezo-boxqw {
    position: relative;
    cursor: pointer;
    padding: 12px 20px;
    background: transparent;
    font-size: 20px;
    color: #000;
    text-align: left;
    font-weight: bold;
    border-bottom: 2px solid #0168b5;
    border-top: 2px solid #0168b5;
}
.piezo-boxqw span img {
  width: 35px;
}

.piezo-boxqw:before {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f106";
    position: absolute;
    right: 23px;
    top: 46%;
    font-size: 26px;
    margin-top: -12px;
    padding: 0px 7px 5px;
    background: #fff;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    color: #0168b5;
}
.piezo-boxqw:after {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f107";
    position: absolute;
    right: 23px;
    top: 46%;
    font-size: 26px;
    margin-top: -12px;
    padding: 3px 7px 5px;
    background: #fff;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    color: #0168b5;
}

.piezo-boxqw.is-opened:after {
  content: none;
}

.piezo-boxan {
    padding: 20px;
    text-align: left;
    background: #f7fcff;
    line-height: 2em;
    border-bottom: 1px solid #0269b5;
}

.piezo-boxan p {
    font-size: 15px;
    font-weight: 400;
}
.piezo-boxan p a {
    text-decoration: underline;
    font-weight: bold;
    color: #000;
}

.q-circle, .a-circle {
    font-size: 23px;
    color: #0168b5;
    font-weight: 400;
    margin-right: 10px;
}

@media (max-width: 991px) {   
    .piezo-boxqw {
        padding: 15px 35px 15px 15px;
        font-size: 15px;
    }
    .piezo-boxqw:before {
        right: 25px;
    }
    .piezo-boxqw:after {
        right: 25px;
    }
    .an { padding: 15px 20px;}
    .an p {font-size: 15px;}
    .q-circle, .a-circle {
        width: 26px;
        height: 26px;
        padding: 5px 10px;
        font-size: 18px;
    }
}

/*------------------------------------------------------------------
    [sub02_7 閉塞ダイセット]
------------------------------------------------------------------*/
.cmn_imgbox img { width: 640px;}
@media (max-width: 991px) {   
    .cmn_imgbox img { width: 100%;}
}


/*table */
.table-responsive {
    display:block;
    width:100%;
    border:0;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    -ms-overflow-style:0;
}

.table-responsive table {
    border: 0;
    text-align: center;
    margin: 0 auto;
}

.tablew800 { width: 800px;}
table.tbl-r05 {
    border: 1px solid #c5c5c5;
}
table.tbl-r05 td:first-child {
    background: #eff8ff;
    padding: 15px;
    font-size: 14px;
    font-weight: bold;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.tbl-r05 td p img {
    width: 100px;
}
.tbl-r05 td {
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
}
table.tbl-r05 th {
    background: #eee;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    text-align: center;
}
@media screen and (max-width: 991px) {
    .tablew800 { width: 100%;}
}

@media screen and (max-width: 640px) {
  .tbl-r05 {
    width: 80%;
}
.tbl-r05 .thead {
    display: none;
}
.tbl-r05 tr {
    width: 100%;
}
.tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%;
    padding: 15px;
    background: #f5fcff;
    border-top: 1px solid #ccc;
    border-bottom: none;
    border-right: none;
}
.tbl-r05 td:first-child {
    background: #1569a9!important;
    color: #fff;
    text-align: center;
    border: 1px solid #1569a9;
    border-right: none!important;
    border-bottom: none!important;
}
.tbl-r05 td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
}
}



/*------------------------------------------------------------------
    [sub04 CONTACT]
------------------------------------------------------------------*/
#form .content-lg { padding-top: 0px;}
.blockTable tr { border-bottom: solid 1px #c9c9c9;}
.w-100 { width: 100%;}
.pl-5, .px-5 {
    padding-left: 3rem!important;
}
.pr-5, .px-5 {
    padding-right: 3rem!important;
}
.pb-3, .py-3 {
    padding-bottom: 1rem!important;
}
.pt-3, .py-3 {
    padding-top: 1rem!important;
}

input.textFocus {
  color:#333;
}
input.wSS,
input.wS,
input.wM,
input.wL,
input.wLL {
  background:#eaeaea;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border:none;
  font-size:15px;
  font-weight: 400;
  line-height: 140%;
  padding:8px 10px; 
  margin-bottom: 3px;
}
input {
  vertical-align:middle;
}

span.check {
  position: relative;
}
span.check::after {
    display: block;
    content: '';
    position: absolute;
    top: .4em;
    left: -1.5em;
    width: 8px;
    height: 3px;
    border-left: 2px solid #004795;
    border-bottom: 2px solid #004795;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.wSS { width: 85px;}
.wS { width: 170px;}
.wM { width: 270px;}
.wL { width: 470px;}
.wLL { width: 100%;}
.imeOn { ime-mode: active;}
.imeOff { ime-mode: disabled;}

textarea.txtarea {
  background:#eaeaea;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border:none;
  height: 200px;
  padding:10px;
  width: 100%;
  border-radius: 3px;
  font-size: 15px;
  font-weight: 400;
}
label {
  cursor: pointer;
  display: inline-block;
  margin-bottom: .5rem;
  font-size: 15px;
  font-weight: bold!important;
}
label:hover {
  color:#999;
}
input[type="checkbox"], input[type="radio"] {
  margin-right:5px;
  margin-top: 0px;
}
.formErr {
  color:#E54E52;
  font-weight:bold;
}
select.slctArea{
  background:#FCFBF8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border:1px solid #CCC;
  margin-bottom: 5px;
  padding:8px;
}
input.inputErr,
textarea.inputErr {
  background:#FADFDE;
}
input:focus,
select:focus,
textarea:focus{
  background:#cedfe9;
}


.req {
  background:#ea4626;
  color:#fff;
  font-size:13px;
  font-weight: bold;
  margin-left:3px;
  padding:2px 8px;
  margin-right: 5px;
  vertical-align: top;
  border-radius: 2px;
}
.errText{
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #db584b;
  font-size: 12px;
  padding: 3px 5px;
  margin-top: 5px;
  font-weight: bold;
}
.cauText{
  color: #333;
  font-size: 14px;
  line-height: 1.4!important;
  margin-top: 5px;
}


/* data btn */
.filebox input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip:rect(0,0,0,0);
    border: 0;
}

.filebox label {
    display: inline-block;
    padding: .5em .75em;
    color: #424242;
    font-size: inherit;
    line-height: normal;
    vertical-align: middle;
    background-color: #fdfdfd;
    cursor: pointer;
    border: 1px solid #d0d0d0;
    border-bottom-color: #d0d0d0;
    border-radius: .25em; 
    margin-bottom: 0px;
}
/* named upload */
.filebox .upload-name {
    display: inline-block;
    padding: .5em .75em;
    font-size: inherit;
    font-family: inherit;
    line-height: normal;
    vertical-align: middle;
    background-color: #f5f5f5;
    border: 1px solid #ebebeb;
    border-bottom-color: #e2e2e2;
    border-radius: .25em;
    -webkit-appearance: none; /* 네이티브 외형 감추기 */
    -moz-appearance: none;
    appearance: none;
}

/* imaged preview */
.filebox .upload-display {
    margin-bottom: 5px;
}

@media(min-width: 991px) {
    .filebox .upload-display {
        display: inline-block;
        margin-right: 5px;
        margin-bottom: 0;
    }
}

.filebox .upload-thumb-wrap {
    display: inline-block;
    width: 54px;
    padding: 2px;
    vertical-align: middle;
    border: 1px solid #ddd;
    background-color: #fff;
}

.filebox .upload-display img {
    display: block;
    max-width: 100%;
    width: 100% \9;
    height: auto;
}

.filebox.bs3-primary label {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.mw_wp_form input[type="file"] {  width: 100%;}

.coninfo {
    background: #f5f5f5;
    border: 1px solid #dedede;
    padding: 15px;
    text-align: center;
    margin-bottom: 20px;
    font-size: 16px;
}

.bgf5 {background: #f5f5f5;}


.tablebox-bl {
    border-top: 2px solid #0168b5!important;
    border-bottom: 2px solid #0168b5!important;
}

.fpBox {
    width: 100%;
    height: 200px;
    overflow: scroll;
    padding: 20px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #ccc;
    color: #555;
}
.fpBox p {font-size: 13px; margin-bottom: 20px;}
.agree {padding: 15px 0 30px;}

.subscribeBtn, .subscribeBtn-og {
    text-align: center;
    margin-bottom: 10px;
}
.subscribeBtn input {
    background: #343434;
    border: 1px solid transparent;
    border-radius: 60px;
    color: #FFF;
    display: inline-block;
    padding: 14px 60px 13px;
    line-height: 140%;
    text-decoration: none;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    font-size: 17px;
    font-weight: bold;
}
.subscribeBtn input:hover{
  background:#545454;
  color:#fff;
}

.sumbtn p {
    display: inline-block;
}

.subscribeBtn-og input {
    background: #f87910;
    border: 1px solid transparent;
    border-radius: 60px;
    color: #FFF;
    display: inline-block;
    padding: 14px 80px 13px;
    line-height: 140%;
    text-decoration: none;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    font-size: 17px;
    font-weight: bold;
}
.subscribeBtn-og input:hover{
  background:#e96900;
  color:#fff;
}

/* telbox_ contact */
.telbox_contact {
  border: 2px solid #000;
  padding:10px 20px;
  display: inline-block;
  text-align: center;
}
.telbox_contact .en {
    font-size: 27px;
    font-weight: 400;
    color: #000;
    letter-spacing: 0.4px;
    line-height: 1em;
    margin-bottom: 8px;
}

.telbox_contact p {
    font-size: 13px;
    font-weight: bold;
    color: #000;
    letter-spacing: 0.4px;
    line-height: 1em;
}
.telbox_contact span.en {
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.4px;
    line-height: 1em;
}
.telbox_contact span.glyphicon {
    font-size: 22px;
    color: #000;
}

@media screen and (max-width: 991px) {
  .blockTable th,
  .blockTable td {
    display: block;
    width: 100%!important;
}
.coninfo {
    font-size: 14px;
    font-weight: bold;
}
}
@media screen and (max-width: 640px) {
    .wS { width: 100%;}
}





/*------------------------------------------------------------------
    [sub05 news_detail]
------------------------------------------------------------------*/
.qs_wrap__entry .qs_header__entry {
    -js-display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 2em;
    border-bottom: 1px solid #ddd;
}


.qs_wrap__entry .qs_header__entry .ttl__article {
    font-size: 25px;
    font-size: 2.5rem;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    background: none;
    font-weight: 700;
    color: #000;
    margin: 10px 0 5px;
}


.qs_wrap__entry .qs_header__entry .qs_meta_entry {
    font-size: 14px;
    font-size: 1.4rem;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-bottom: 0.5em;
    color: #999;
    font-weight: 400;
    line-height: 1.4;
}


.qs_wrap__entry p {
    font-size: 15px;
    font-weight: 400;
/*    display: inline-block;*/
}
.qs_wrap__entry .main_img {
    margin-bottom: 2.5em;
}
.qs_wrap__entry .qs_body__entry img {
    max-width: 100%;
    height: auto;
}
.qs_wrap__entry .main_img img {
    display: block;
    max-width: 100%;
    height: auto;
}

[class^="heading"] {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
}
.qs_wrap__entry .qs_body__entry p, .qs_wrap__entry .qs_body__entry blockquote, .qs_wrap__entry .qs_body__entry ul, .qs_wrap__entry .qs_body__entry fieldset, .qs_wrap__entry .qs_body__entry form, .qs_wrap__entry .qs_body__entry ol, .qs_wrap__entry .qs_body__entry dl, .qs_wrap__entry .qs_body__entry dir, .qs_wrap__entry .qs_body__entry menu, .qs_wrap__entry .qs_body__entry table {
    margin: 1.2em 0;
}


/*------------------------------------------------------------------
    [media_con detail]
------------------------------------------------------------------*/
.media_con h2 {
    font-size: 22px;
    margin: -50px auto 0;
    padding-top: 130px;
    padding-bottom: 5px;
    border-bottom: 1px lightgray solid;
}

.media_con h3 {
    background: #f5f5f5;
    font-size: 20px;
    margin: 50px 0 0;
    padding: 7px 12px;
    border-left: 4px #0168B5 solid;
}

.media_con h4 {
    font-size: 18px;
}

.media_con a:hover {
    opacity: 0.7;
}

.media_ul li {
    font-size: 15px;
    color: #000;
    line-height: 2;
    list-style: disc!important;
    margin-left: 3em;
}

.numtag_sub {
    text-align: left!important;
    background: #0168b5;
    color: #fff;
    width: auto;
    font-size: 15px;
    font-weight: bold;
    padding: 2px 12px;
    letter-spacing: 1px;
    margin-top: 10px;
    margin-right: 10px;
    text-transform: none;
}

.numtag_sub01 {
    text-align: center;
    background: #0168b5;
    color: #fff;
    width: auto;
    font-size: 15px;
    font-weight: bold;
    padding: 2px 12px;
    letter-spacing: 1px;
    margin-top: 10px;
    display: block!important;
}

.numtag_sub02 {
    text-align: center;
    /* background: #0168b5; */
    color: #0168b5;
    border: solid 1px #0168b5;
    width: auto;
    font-size: 12px;
    font-weight: bold;
    padding: 2px 12px;
    letter-spacing: 1px;
    margin-top: 5px;
    display: inline-block;
    border-radius: 50px;
    margin-right: 1em;
}

.chapter {
    display: inline-block;
    background: #f5f5f5;
    border: solid 1px #ddd;
    padding: 20px 30px;
}

.chapter p {
    margin: 0!important;
}

.chapter ul li {
    color: #000;
    font-size: 15px;
    line-height: 2;
    list-style-type: disc!important;
    margin-left: 20px;
}

.chapter ul li a {
    font-size: 15px;
}

.chapter ul li ul {
    margin-left: 1em!important;
}

.media_con strong {
    font-weight: bold;
    font-size: 1.1em;
    color: #007bbb;
}

/*------------------------------------------------------------------
    [sub terms and privacy]
------------------------------------------------------------------*/
.post-content li  {
    list-style: circle!important;
}
.post-content ol, .post-content ul {
    padding: 0 0 0 20px;
}
.post-content li {
    font-size: 14px;
    font-weight: 400;
    color: #000;
    line-height: 2em;
}



/*------------------------------------------------------------------
    [form css]
------------------------------------------------------------------*/
.mwform-tel-field input[type="text"], .mwform-zip-field input[type="text"] {
    color: #000;
}

.mwform-zip-field, .mwform-tel-field {
    color: #000;
}





/*------------------------------------------------------------------
    [cmn sp]
------------------------------------------------------------------*/

@media screen and (max-width: 991px) {
   /*  #subcontact {padding: 60px 15px;} */
   #subcontact .thanks {  padding: 30px;}
   #formBlock {width: 100%;}
   .p1 {font-size: 2.6rem!important;}
   #formBlock table th, #formBlock table td {
    font-size: 1.2rem;
    word-break: break-word;
    padding: 20px 15px 17px;
}
#subcontact li, #subcontact dt, #subcontact dd, #subcontact th, #subcontact td {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6;
}
.pulldownWrap { width: 100%;}
.wM {width: 100% !important;}
.req {font-size: 1.3rem;}
.reqbox { font-size: 13px!important;     line-height: 1.3em;}
.contactinfo p {font-size: 13px;}
}

/*tsuika*/
.ss_field {
  padding: 15px;
  text-align: left;
}
.ss_enquete_field {
  padding: 15px;
  text-align: left;
}
.ss_form_title {
  width: 30%;
  float: left;
  text-align: left;
}
.ss_enquete_title {
  width: 30%;
  float: left;
  text-align: left;
}
.ss_grid {
  text-align: left;
}
.ss_btnArea {
  margin-top: 15px;
}
.ss_btnArea input {
    background: #0168B5!important;
    border: solid 2px #0168B5!important;
}

@media screen and (max-width: 991px) {
  .ss_form_title { width: 100%;}
  .ss_enquete_title { width: 100%;}
}

.test {
  background-color: white;
  padding: 50px 10px 20px;
  margin: 40px auto 0;
  overflow: auto;
  border-radius: 20px;
}

.color-gray {
  color: #1b1b1b!important;
}

/*monitoring plus*/
.info-img {
    float: left;
    width: 45%;
    margin-right: 5%;
}

.info-text {
    float: right;
    line-height: 1.6;
    width: 50%;
}

.info-download {
    float: right;
    margin-top: 15px;
    padding: 10px 0;
    text-align: right;
    width: 100%;
}

.info-title {
    border-bottom: solid 1px lightgray;
    margin-bottom: 15px;
}

.info-box {
    margin-bottom: 40px;
    overflow: auto;
}

@media screen and (max-width: 991px) {
  .info-img { 
    width: 100%!important;
    margin-right: 0!important;
}
.info-text { 
    width: 100%!important;
    margin-top: 10px;
}
}

/*技術資料ブログカード*/
.blog-card {
    border: 2px solid #ddd;
    border-radius: 7px;
    padding: 40px 20px 20px;
    position: relative;
    display: flex;
    margin: 30px 0 0;
}
.blog-card:hover {
  background: #eaeaea;
  transition: 0.5s;
}
.blog-card-label {
  background: #808080;
  border-radius: 7px 0 0 0;
  color: #fff;
  font-weight: 600;
  padding: 5px 10px;
  position: absolute;
  top: 0;
  left: 0;
}
.blog-card-thumb {
  width: 25%;
  height: auto;
}

.blog-card-thumb img {
  width: 100%;
  height: auto;
}
.blog-card-content {
  width: 75%;
  margin-left: 20px;
}
.blog-card-ttl {
  font-size: 17px!important;
  font-weight: 700!important;
  margin: 0 0 5px!important;
}
.blog-card-description {
  font-size: 14px!important;
  color: #464646;
  margin: 0!important;
}
@media screen and (max-width: 768px) {
  .blog-card {
    display: block;
}
.blog-card-thumb {
    width: 100%;
}
.blog-card-content {
    width: 100%;
    margin: 10px 0 0;
}
.blog-card-description {
  display: none;
}
}

/*------------------------------------------------------------------
    [document glossary]
------------------------------------------------------------------*/

.docu-list {}
.docu-list-item {
    font-size: 15px;
    font-weight: 400;
    line-height: 2;
    margin-bottom: 1em;
    margin-left: 3em;
    color: #000;
    list-style: disc!important;
    -webkit-font-smoothing: antialiased;
}

.list-detail-item {
    padding-left: 2em;
}

.cae-video {
    max-width: 500px;
    width: 100%;
    margin-bottom: 30px;
}

.b-link {font-size:15px; font-weight:bold; padding-bottom: 5px; border-bottom: dotted 1px; color: #337ab7; margin-bottom: 10px; display: inline-block;}
