/*----- 会社案内　リンク共通 three column Section　
--------------------------------------------------------------*/
/*　リンク　トップページ　*/

.com-link-top {
  margin-top: 60px;
  display: flex;
  flex-direction: row;
  justify-content:center;
  gap: 30px;
}

.com-box_link a{
    width:100% ;
    display: block;
    margin: 0;
    padding: 0;
}

.com-box_link img{
    width:100% ;
    margin: 0;
    padding: 0;
}

.com-box_link p{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6em;
}

@media screen and (max-width: 960px) {
  .com-link-top{
    margin-bottom: 30px;
    flex-direction: column;
    gap: 20px;
  }
}

/*　ページ共通　ヘッダーメニュー　*/
 
#companylink{
   max-width: 960px;
   margin: 0 auto 30px;
}

.c_btn_item{
   position: relative;
   margin-bottom: 40px;
   z-index: 2;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-wrap: wrap;
   gap: 1em;
}

.btn_cm{
   display:block;
   width: 10rem;
   line-height: 50px;
   color: #000;
   text-decoration: none;
   text-align: center;
   background-color: #fff; 
   border: #00A8A6 solid 2px;
   border-radius: 5px; 
   -webkit-transition: all 0.5s;
   transition: all 0.5s;
}

.btn_cm:hover{
   background-color:#00A8A6;
   color: #fff;
}

 @media screen and (max-width: 960px){

#companylink{
    display: flex;
    flex-direction: row;
    margin: 20px auto 0;
   }
}

/*　リンク　共通　*/

.link-common{
  margin-top: 60px;
  display: flex;
  flex-direction: row;
  justify-content:center;
  gap: 30px;
}

.box_link a{
    display: block;
    width:100% ;
    margin: 0;
    padding: 0;
}

.box_link img{
    width:100% ;
}

.box_link p{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6em;
}

@media screen and (max-width: 960px) {
  .link-common{
    margin: 30px;
    flex-direction: column;
    gap: 20px;
  }
}

/*----- 社長挨拶
--------------------------------------------------------------*/

.com-greeting{
    margin: 0 0 100px;
}

.greeting_txt{
    margin-bottom: 1.6em;
    line-height: 2rem;
    white-space: normal;
}

.greeting_txt span{
    display: inline-block;
}

.greeting_name{
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
}

.greeting_name p{
    font-size: 26px;
}

@media screen and (max-width: 960px) {
  .greeting_txt{
    margin-bottom: 1em;
    font-size: 16px;
    line-height: 1.6em;
}

.greeting_name p{
  font-size: 22px;
  }
}

/*----- 理念
--------------------------------------------------------------*/
.philosophy{
  margin-top: -100px;
  padding-top: 100px;
  padding-bottom: 60px;
  content:'';
  display: block;
}

.ttl_philosophy{
   padding-top: 30px;
   padding-bottom: 30px;
   font-weight: 500;
   text-align: center;
}

.contents-philosophy{
    background-color: #E4F6F6;
    border-radius: 10px;
    margin: 0 0 30px;
    padding: 30px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    line-height: 3em;
}

.com-philosophy{
    margin-bottom: 40px;
    line-height: 2rem;
}

.ttl_common{
    border-bottom: #00A8A6 solid 3px;
    display: block;
    padding: 0 0 10px;
    font-weight: 400;
}

@media screen and (max-width: 960px) {
  .ttl_philosophy{
    padding: 0;
    /* margin-top: 60px; */
    font-size: 20px;
 }

  .contents-philosophy{
    margin: 20px 0 40px;
    padding: 18px;
    font-size: 16px;
    line-height: 1.6em;
}

  .com-philosophy{
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 1.6em;
  } 
}

/* テキスト改行 */

.com_b_sp{
  display: none;
  }

@media screen and (max-width: 960px){
.com_b_sp{
    display: block;
    }
  }

/*----- 会社概要／アクセス／グループ会社一覧
--------------------------------------------------------------*/

.ttl_overview{
  margin-top: -90px;
  margin-bottom: 30px;
  padding-top: 90px;
  font-weight: 100;
  display: block;
}

.com-overview{
 margin-bottom: 60px;
}

.com-map{
  width: 100%;
}

@media screen and (max-width: 960px){
.ttl_overview{
  /* margin: 0 0 10px; */
  font-size: 20px;
  font-weight: normal;
  }
}
  
  /* 会社概要
  /*----------------------------------------------*/
   
  .com-item {
    font-weight: 400;
    font-size: 16px;
    border-bottom: 2px solid #00A8A6;
    padding: 20px 0;
    margin-bottom:0px;
    display: flex;
    clear: both;
   }
  
  .com-item dt {
    width: 20%;
    color: #000;
    font-size: 1em;
    font-style: normal;
    font-weight: 500;
    float: left;
  }
  
  .com-item dd {
    padding-left: 10px;
    float: left;
  }
  
  .com-item ul{
    margin: 0;
    list-style-type: none;
    font-size: 1em;
  }
  
  @media screen and (max-width: 960px){
  .com-item {
      padding: 10px 0;
      flex-direction: column;
     }
  
  .com-item dt {
      width: 100%;
      font-size: 16px;
    }
    
  .com-item dd {
      width: 100%;
      font-size: 16px;
    }
  }

  /* アクセス
  /*----------------------------------------------*/

.com-access{
    margin-bottom: 40px;
    line-height: 2rem;
}

/* グループ会社一覧
  /*----------------------------------------------*/

.com-group{
    text-align: center;
    padding: 50px;
}

.ttl_com-group{
  font-size: 24px;
  margin-top: -100px;
  margin-bottom: 20px;
  padding-top: 100px;
  display: block;
  font-weight: 500;
}

.com-group p{
  font-size: 18px;
  line-height: 1.8em;
}

.bnr_area{
  width: 100%;
  margin: 0 auto;
  padding-top: 40px;
}

.bnr_area_box{
  width: 100%;
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  gap: 1rem;
}

.bnr_area img{
  width: 100%;
}

@media screen and (max-width: 960px){

  .com-group{
    padding: 20px;
    line-height: 1.6em;
  }

  .ttl_com-group{
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 500;
  }
  
  .com-group p{
    font-size: 16px;
    line-height: 1.6em;
  }
}