@charset "UTF-8";
/*
* Last Update 2020-04-22
*
* COMPANY SETTING
*
*/


/*======================================

COMMON

=======================================*/
#localNaviBlock {
margin-top:24px;
}
#localNaviBlock nav {
max-width:980px;
}
/*#localNaviBlock li:first-child {display: none;}*/
#localNaviBlock li {
margin-bottom: 8px;
width:49.4%;
}
#localNaviBlock li a {
background: rgb(208,18,27);
background: -webkit-gradient(linear, left bottom, left top, from(rgba(208,18,27,1)), to(rgba(145,0,0,1)));
background: linear-gradient(0deg, rgba(208,18,27,1) 0%, rgba(145,0,0,1) 100%);
border-radius: 5px;
color:#fff;
display: block;
font-size: 1.3rem;
line-height: 50px;
height: 50px;
vertical-align: middle;
text-align: center;
text-decoration: none;
width:100%;
}

.tab-group {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack:justify;
-ms-flex-pack:justify;
justify-content:space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.tab {
-ms-flex-item-align: stretch;
align-self: stretch;
border:solid 1px #2f2725;
border-bottom: none;
border-radius: 5px 5px 0 0;
color:#666;
cursor:pointer;
display: table;
height:4em;
line-height: 1.4;
text-align:center;
width: 49.5%;
}
.tab > p {
display: table-cell;
vertical-align: middle;
}
.tab span {
display: block;
font-size:78%;
}
.tab.is-active {
background: rgb(208,18,27);
background: -webkit-gradient(linear, left bottom, left top, from(rgba(208,18,27,1)), to(rgba(145,0,0,1)));
background: linear-gradient(0deg, rgba(208,18,27,1) 0%, rgba(145,0,0,1) 100%);
border:none;
color:#fff;
-webkit-transition: all 0.2s ease-out;
transition: all 0.2s ease-out;
}
.tab:nth-child(2).is-active {
 background: rgb(118,210,254);
 background: -webkit-gradient(linear, left bottom, left top, from(rgba(118,210,254,1)), to(rgba(0,38,98,1)));
 background: linear-gradient(0deg, rgba(118,210,254,1) 0%, rgba(0,38,98,1) 100%);
}
.panel{display:none;}
.panel.is-show{
display:block;
}

.cat-Title {
 border-bottom: 1px solid #d0121b;
 color:#d0121b;
 font-weight: bold;
 margin-bottom: 40px;
 padding-bottom: .2em;
}
.cat-Title span {padding-right: .3em;}
.cat-Title span > img {
 max-width: 30px;
 vertical-align: middle;
}
.cat-Title span.lab-busstop > img {max-width: 12px;}
.cat-Title small {
 color:#000;
 font-size:62%;
 font-weight: normal;
}

/*===== for   OVER - 768px =====*/
@media screen and (min-width:768px){
#localNaviBlock {
background: rgb(208,18,27);
background: -webkit-gradient(linear, left bottom, left top, from(rgba(208,18,27,1)), to(rgba(145,0,0,1)));
background: linear-gradient(0deg, rgba(208,18,27,1) 0%, rgba(145,0,0,1) 100%);
height: 70px;
margin: 0;
}
#localNaviBlock nav {
margin:-4px auto 0;/*header border相殺*/
}
#localNaviBlock ul {
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
}
#localNaviBlock li {
width:25%;
position: relative;
}
/*#localNaviBlock li:first-child {display: block;}*/
#localNaviBlock li a {
background: none;
color:#fff;
display: block;
font-size:1.5rem;
line-height: 70px;
text-decoration: none;
}
#localNaviBlock li::before {
background-color: #fff;
content:'';
display: block;
height:36px;
width: 1px;
position: absolute;
left:0;
top:17px;
}
#localNaviBlock li:last-child::after {
background-color: #fff;
content:'';
display: block;
height:36px;
width: 1px;
position: absolute;
right:0;
top:17px;
}

.cat-Title {margin-bottom: 64px;}
}

/* add syskai */
#breadCrumb {
display: block;
line-height: 50px;
}
#breadCrumb span {
color:#dd6b48;
padding: 0 .8em 0 .6em;
}
#breadCrumb .icon-home {
font-size:1.6rem;
padding:0;
position: relative;
top: .2em;
}
/* add syskai kokomade */

/*===== for   OVER - 801px =====*/
@media screen and (min-width:801px){
.tab-group {display: none;}
}

/*===== for   OVER - 990px =====*/
@media screen and (min-width:990px){
.cat-Title {margin-bottom: 80px;}
}


/*======================================

TOP

=======================================*/
.tb-Company {
 border-top: 1px solid #9fa0a0;
 width: 100%;
}
.tb-Company th,
.tb-Company td {
 border-bottom: 1px solid #9fa0a0;
 font-weight: normal;
 padding: 1.4em 2em;
 text-align: left;
}
.tb-Company li {width: 100%;}


.mapBox {
 height: 0;
 margin:8px 0 0;
 overflow: hidden;
 padding-bottom: 56.25%;
 position: relative;
}
.mapBox iframe {
 height: 100%;
 width: 100%;
 position: absolute;
 left: 0;
 top: 0;
}

/*===== for   OVER - 801px =====*/
@media screen and (min-width:801px){
 .tb-Company li {width: 48.6%;}


/* add syskai */
#breadCrumb {
display: block;
line-height: 50px;
}



#breadCrumb span {
color:#dd6b48;
padding: 0 .8em 0 .6em;
}
#breadCrumb .icon-home {
font-size:1.6rem;
padding:0;
position: relative;
top: .2em;
}
/* add syskai kokomade */
}
/*===== for   BELOW - 767px =====*/
@media screen and (max-width:767px){
 .tb-Company th,
 .tb-Company td {
  display: block;
 }
 .tb-Company th {
  background-color: #eee;
  text-align: center;
 }
 .mapBox {
  margin-bottom: 24px;
 }
}



/*======================================

HISTORY

=======================================*/

#history-Block #history-wrap {width: calc(100% - 200px);}
#history-Block aside {width:180px;}

#history-Block {
 -webkit-box-align: start;
 -ms-flex-align: start;
 align-items: flex-start;
}
#history-wrap li {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-align: start;
 -webkit-box-align: start;
 align-items: flex-start;
 -webkit-box-pack: start;
 -ms-flex-pack: start;
 justify-content: flex-start;
 padding-left: 55px;
 position: relative;
}
#history-wrap li.year_taisyo::before,
#history-wrap li.year_showa::before,
#history-wrap li.year_heisei::before {
 content: '';
 display: block;
 height:20px;
 width:55px;
 position: absolute;
 top:1em;
 left:0;
}
#history-wrap li.year_taisyo::before {
 background: url(../../company/img/ic_taisyo.gif) no-repeat;
 background-size: 100%;
}
#history-wrap li.year_showa::before {
 background: url(../../company/img/ic_showa.gif) no-repeat;
 background-size: 100%;
}
#history-wrap li.year_heisei::before {
 background: url(../../company/img/ic_heisei.gif) no-repeat;
 background-size: 100%;
}
#history-wrap li p {padding: 1em 0;}

#history-wrap li .txt-year {width:210px;}
#history-wrap li .txt-history {
 border-left:12px solid #e1815e;
 margin-left:24px;
 padding-left:24px;
 width: 76.92%;
 position: relative;
}
#history-wrap li .txt-history::before {
 color:#fff;
 content: '●';
 display: inline-block;
 font-size:10px;
 position: absolute;
 left:-11px;
}
#history-wrap li:first-child .txt-history::after {
 background: url(../../company/img/bg_history-top.gif) no-repeat;
 background-size: 100%;
 content: '';
 display: block;
 height:12px;
 width: 12px;
 position: absolute;
 left:-12px;
 top:0;
}
#history-wrap li:last-child .txt-history::after {
 background: url(../../company/img/bg_history-bot.gif) no-repeat;
 background-size: 100%;
 content: '';
 display: block;
 height:12px;
 width: 12px;
 position: absolute;
 left:-12px;
 bottom:0;
}

#history-Block aside li {margin-bottom: 32px;}
#history-Block aside li figcaption {
 font-size:100%;
 margin-top:8px;
}
#history-Block aside li:nth-child(2) {margin-bottom: 21.5em;}
#history-Block aside li:nth-child(3) {margin-bottom: 3em;}
#history-Block aside li:nth-child(4) {margin-bottom: 3em;}
#history-Block aside li:nth-child(5) {margin-bottom: 17.5em;}
#history-Block aside li:nth-child(6) {margin-bottom: 4em;}
#history-Block aside li:nth-child(7) {margin-bottom: 4em;}
#history-Block aside li:nth-child(8) {margin-bottom: 30em;}

/*===== for   OVER - 768px  BELOW - 900px =====*/
@media screen and (min-width:768px) and (max-width:900px) {
 #history-Block #history-wrap {width: 79.59%;}
 #history-Block aside {width:18.36%;}
}

/* add syskai */
#breadCrumb {
display: block;
line-height: 50px;
}
#breadCrumb span {
color:#dd6b48;
padding: 0 .8em 0 .6em;
}
#breadCrumb .icon-home {
font-size:1.6rem;
padding:0;
position: relative;
top: .2em;
}
/* add syskai kokomade */

/*===== for   BELOW - 767px =====*/
@media screen and (max-width:767px){
 #history-Block #history-wrap,
 #history-Block aside {width:100%;}

 #history-Block aside ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
 }

 #history-Block aside li:nth-child(2),
 #history-Block aside li:nth-child(3),
 #history-Block aside li:nth-child(4),
 #history-Block aside li:nth-child(5),
 #history-Block aside li:nth-child(6),
 #history-Block aside li:nth-child(7),
 #history-Block aside li:nth-child(8) {margin-bottom: 0;}

 #history-Block aside li {
  margin-bottom: 24px!important;
  width: 48.6%;
 }
}




/*======================================

INITIATIVES
 /**2023/12/27に#inisiatives-anzen 追加**/
/*=======================================*/
#intro-Initiatives .summary {margin-bottom: 32px;}
#intro-Initiatives figure img {
 display: block;
 margin:auto;
 max-width:200px;
 width: 100%;
}
#intro-Initiatives figcaption {
 font-size:1.2rem;
 margin-top: 24px;
}

#intro-Initiatives h4 {
 font-size:100%;
 font-weight: bold;
 margin-top: 1em;
}
#intro-Initiatives h4 + ul li {
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -webkit-box-align: start;
 -ms-flex-align: start;
 align-items: flex-start;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
#intro-Initiatives h4 + ul li .name {width:12em;}
#intro-Initiatives h4 + ul li .limit {width:13em;}

#inisiatives-Links,
#inisiatives-anzen,
#maker-Links {margin-top:24px;}

#inisiatives-Links li,
#maker-Links li {
 display: table;
 margin-bottom: 8px;
 width: 26.93%;;
}

/***anzenの方は横18％にする****/
 #inisiatives-anzen li{
 display: table;
 margin-bottom: 8px;
 width: 18%;
}


#maker-Links li {width:auto;}
#inisiatives-Links li:last-child,
#inisiatives-anzen li:last-child{width:42.44%;}
#inisiatives-Links li a,
#inisiatives-anzen li a,
#maker-Links li a {
 border:1px solid #a0a0a0;
 border-radius: 5px;
 display: table-cell;
 line-height: 1.7em; /*2021/7/06  0から1.7emに変更*/
 height: 60px;

 padding:0.1em;
 vertical-align: middle;
 text-decoration: none;
 width:100%;
 position: relative;
}
#inisiatives-Links li a > span,
#inisiatives-anzen li a > span,
#maker-Links li a > span {color:#d0121b;}

#second-Initiatives {margin-top:64px;}

#second-Initiatives li {
 margin-top:32px;
 width:100%;
}
#second-Initiatives li + li {margin-top:16px;}
#second-Initiatives li > figure {margin-top:1em;}
#second-Initiatives p + ul {margin-top:1em}
#second-Initiatives p + ul > li:nth-child(1) {margin-top:0;}

#maker-Links li {
 margin: 0;
 width:48.6%;
}

#second-Initiatives #maker-Links li + li {margin: 0 0 0 2.8%;}

#second-Initiatives #jirei-Thumb {margin-top:1em;}
#second-Initiatives #jirei-Thumb li {width:100%;}
#second-Initiatives #jirei-Thumb li + li {margin-top:16px;}

/*===== for   OVER - 801px =====*/
@media screen and (min-width:801px){
#intro-Initiatives .summary {
 margin: 0;
 width:65.3%;
 }
 #intro-Initiatives figure {width:32.65%;}
 #intro-Initiatives figcaption {font-size:1.4rem;}

 #second-Initiatives {margin-top:80px;}
 #second-Initiatives li {width:48.6%;}

 #maker-Links li {
 margin:0 0em 0 0;
 /* margin:0 1em 0 0;*/
 width:14em;
 }



 #second-Initiatives #jirei-Thumb li + li {margin-top:32px;}
}

/* add syskai */
#breadCrumb {
display: block;
line-height: 50px;
}
#breadCrumb span {
color:#dd6b48;
padding: 0 .8em 0 .6em;
}
#breadCrumb .icon-home {
font-size:1.6rem;
padding:0;
position: relative;
top: .2em;
}
/* add syskai kokomade */

/*===== for   OVER - 990px =====*/
@media screen and (min-width:990px){
 #second-Initiatives {margin-top:120px;}


}

/*===== for   BELOW - 859px =====*/
@media screen and (max-width:859px){
 #inisiatives-Links li,
 #inisiatives-anzen li {width:23.25%;
 /*line-height: 1.4em*/
}
 #inisiatives-Links li:last-child,
 #inisiatives-anzen li:last-child {width:51.5%;}
}

/*===== for   BELOW - 659px =====*/
@media screen and (max-width:659px){
 #inisiatives-Links li,
 #inisiatives-anzen li {width:48.6%;
    }
 #inisiatives-Links li:last-child,
 #inisiatives-anzen li:last-child {width:100%;}
 
}

/*===== for   BELOW - 479px =====*/
@media screen and (max-width:479px){
 #intro-Initiatives h4 + ul li .name { width:100%;
    line-height: 1.4em;
    }
   
       
}


/*======================================

GROUP

=======================================*/
#mv-Block img {width:100%;}

#Service,
#Facility {
 margin-top:-80px;
 padding-top: 80px;
}

#Service {margin-bottom: 96px;}

#group-List li {
 margin-bottom: 32px;
 width:48.6%;
}
#group-List li a {text-decoration: none;}
#group-List li figcaption {
 background-color: #d0121b;
 font-size:1.4rem;
 line-height: 48px;
 text-align: center;
 text-shadow: none;
 position: relative;
 bottom:auto;
 right:auto;
}

.links-list li {
 display: table;
 width: 48.6%;
}
.links-list li + li {margin-left: 2.8%;}
.links-list li a {
 border:1px solid #a0a0a0;
 border-radius: 5px;
 display: table-cell;
 line-height: 0;
 height: 60px;
 padding:0 1em;
 vertical-align: middle;
 text-decoration: none;
 width:100%;
 position: relative;
}
.links-list li a > span {color:#d0121b;}

#factory-Anchor {margin:80px auto 120px;}
#factory-Anchor li {
 font-size:108%;
 margin-bottom: 16px;
 position: relative;
}
#factory-Anchor li + li {margin-left: 0}
#factory-Anchor li:nth-child(1) a::after {
 background: url(../../company/img/ic_pr-service.png) no-repeat;
 background-size:100%;
}
#factory-Anchor li:nth-child(2) a::after {
 background: url(../../company/img/ic_pr-installation.png) no-repeat;
 background-size:100%;
}
#factory-Anchor li:nth-child(3) a::after {
 background: url(../../company/img/ic_pr-recruit.png) no-repeat;
 background-size:100%;
}
#factory-Anchor li:nth-child(1) a::after,
#factory-Anchor li:nth-child(2) a::after,
#factory-Anchor li:nth-child(3) a::after {
 content:'';
 display: block;
 height:36px;
 width: 42px;
 position: absolute;
 right:1em;
 top:54%;
 -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
}

#service-Anchor {margin-bottom: 96px;}
#service-Anchor li {
 font-size:108%;
 margin-bottom: 24px;
 width:32.333%;
}
#service-Anchor li a {
 border:1px solid #a0a0a0;
 border-radius: 5px;
 display: table;
 line-height: 0;
 height: 50px;
 padding:0 1em;
 vertical-align: middle;
 text-decoration: none;
 width:100%;
}
#service-Anchor li a span {
 display: table-cell;
 height:28px;
 vertical-align: middle;
 width:36px;
}
#service-Anchor li a p {
 display: table-cell;
 text-align: center;
 vertical-align: middle;
}

.sevice-wrap {
 margin-top: -80px;
 padding-top: 80px;
}
.sevice-wrap + .sevice-wrap {margin-top:64px;}
.sevice-wrap h4 {
 color:#000;
 font-size:1.8rem;
 margin-bottom: 2.5em;
 text-align: center;
}
.sevice-wrap .cat-Title span > img {
 max-width: 42px;
 vertical-align: middle;
}
.sevice-wrap ul {margin:1.4em 0 2em;}
.sevice-wrap li {width:48.6%;}
.sevice-wrap .txt-osae {
 border:1px solid #9fa0a0;
 border-radius: 5px;
 padding: 1em;
}

#Facility li {
 margin-bottom: 40px;
 width:100%;
}
#Facility li dl {margin-top:16px;}
#Facility li dt {
 font-size:1.8rem;
 font-weight: bold;
}

#shoji-service-List {
 -webkit-box-align: start;
 -ms-flex-align: start;
 align-items: flex-start;
 margin-top:4em;
}
#shoji-service-List li {
 margin-bottom: 40px;
 width:100%;
}
#shoji-service-List li p {margin:16px 0;}

/*===== for   OVER - 768px =====*/
@media screen and (min-width:768px){
 #Service,
 #Facility {
  margin-top:0;
  padding-top:0;
 }


 #Service {margin-bottom: 120px;}

 #group-List li {
  margin-bottom: 64px;
  width:31.33%;
 }
 #group-List li figcaption {font-size:1.75rem;}

 .links-list li {
  display: table;
  width: 31.33%;
 }
 .links-list li + li {margin-left: 2.8%;}

 #factory-Anchor {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
 }
 #factory-Anchor li {
  margin: 0 .5em;
  width:240px;
 }

 .sevice-wrap {
  margin-top: 0;
  padding-top: 0;
 }

 .sevice-wrap + .sevice-wrap {margin-top:80px;}
 #service-Anchor {margin-bottom: 112px;}
 #service-Anchor li {width:15.666%;}
 .sevice-wrap h4 {
  font-size:2.1rem;
 }

 #Facility li {
  margin-bottom: 56px;
  width:48.6%;
 }
 #Facility li dt {font-size:2.1rem;}

 #shoji-service-List li {
  margin-bottom: 56px;
  width:48.6%;
 }
}

/* add syskai */
#breadCrumb {
display: block;
line-height: 50px;
}
#breadCrumb span {
color:#dd6b48;
padding: 0 .8em 0 .6em;
}
#breadCrumb .icon-home {
font-size:1.6rem;
padding:0;
position: relative;
top: .2em;
}
/* add syskai kokomade */

/*===== for   OVER - 990px =====*/
@media screen and (min-width:990px){
 .sevice-wrap h4 {
  font-size:2.4rem;
 }

 #Facility li dt {font-size:2.4rem;}
}