@charset "utf-8";

/* kv
---------------------------------------------------------- */
@media all and (min-width: 768px) {
  #corporation .kv {
    background: url(/corporation/img/bg-kv-top.jpg) no-repeat center 0;
  }
  /*.kvModule {
    background-image: url(/corporation/img/bg-kv.jpg);
  }*/ 
  /* -- kvModule common --- */
  .kvModule-profile,
  .kvModule-office,
  .kvModule-quality,
  .kvModule-history{
	height: 450px;
	margin-bottom: 70px;
    background-position: center center;
	background-size: cover;
  }
	
/* --- profile kv --- */
  .kvModule-profile {
	background-image: url(/corporation/img/bg-kv-profile.jpg);
  }
	
/* --- office kv --- */
  .kvModule-office {
    background-image: url(/corporation/img/bg-kv-office.jpg);
  }
	
/* ---  kv --- */
  .kvModule-quality {
    background-image: url(/corporation/img/bg-kv-quality.jpg);
  }
	
/* --- history kv --- */
  .kvModule-history {
    background-image: url(/corporation/img/bg-kv-history.jpg);
  }
}

/* main
---------------------------------------------------------- */
.message {
  position: relative;
  padding: 0 20px;
  max-width: 2000px;
  margin: 0 auto;
}
.message .section {
  display: flex;
  background-color: #fff;
  position: relative;
  z-index: 10;
}
.message .message-tit {
  padding-right: 8%;
  position: relative;
}
.message .message-tit img {
  position: relative;
  z-index: 10;
}
.message .message-txt {
  padding: 20px 0 0 0;
  max-width: 990px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; transform: rotate(.01deg);
}
.message .message-tit:after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  height: 2px;
  width: 400px;
  background: #555;
  z-index: 5;
}
.message:before {
  position: absolute;
  left: 26%;
  bottom: 0;
  content: "";
  height: 2px;
  width: 74%;
  background: #555;
  z-index: 11;
}
#corporation .bnrList li:nth-child(1) a .bg { background-image: url(/corporation/img/bg-bnrlist-01.jpg);}
#corporation .bnrList li:nth-child(2) a .bg { background-image: url(/corporation/img/bg-bnrlist-02.jpg);}
#corporation .bnrList li:nth-child(3) a .bg { background-image: url(/corporation/img/bg-bnrlist-03.jpg);}
#corporation .bnrList li:nth-child(4) a .bg { background-image: url(/corporation/img/bg-bnrlist-04.jpg);}

.blockD b{
    font-weight: bold;
}

.blockD i{
    font-style: italic;
}

@media all and (min-width: 768px) {
  .message .message-txt {
    font-size: 16px;
  }
  .message:after {
    position: absolute;
    left: 0;
    top: 18px;
    content: "";
    height: 2px;
    width: 600px;
    background: #555;
    z-index: 1;
  }
  .message .message-tit:before {
    position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    height: 55px;
    width: 89px;
    z-index: 50;
    background-color: #fff; 
    border-right: 2px solid #555;
  }
}
@media all and (max-width: 767px) {
  .message {
    padding: 0;
  }
 .message .message-tit {
    padding-right: 20px;
    padding-bottom: 50px;
    width: 23%;
    box-sizing: border-box;
    background-color: #fff;
    position: relative;
  }
  .message .message-tit:before {
    position: absolute;
    right: 20px;
    bottom: 1px;
    content: "";
    height: 100px;
    width: 200px;
    z-index: 50;
    border-right: 1px solid #555;
    background-color: #fff; 
  }
  .message .message-txt {
    width: 70%;
    padding-top: 5px;
    font-size: 3.125vw;
  }
  .message .message-tit:after,
  .message:before {
    height: 1px;
    bottom: 1px
  }
  .message .message-tit:after {
    width: 300px;
  }
  .message:before {
    left: 40%;
    width: 60%;
  }
}

@media all and (max-width: 320px){
  #corporation .kv .inner .kv-txt {
    margin-left: -52px;
  }
}

/* ------------------------------------
   office.html
------------------------------------ */
area {outline: none;}
.mapCap{
	text-align: right;
	padding: 10px 0;
}
.locationMap{
	max-width: 1600px;
	margin: 0 auto 50px;
	border: 1px solid #000;
}
.locationMap img{
	width: 100%;
	height: auto;
}
.ttl-ac {
  background: #00955e;
  border: none;
  color: #fff;
  padding: 10px 15px;
  margin-bottom: 2px;
  position: relative;
}
.ttl-ac:after {
  background-color: #fff;
  position: absolute;
  right: 22px;
  top: 50%;
  width: 1px;
  height: 15px;
  content: "";
  margin-top: -8px;
}
.ttl-ac:before {
  background-color: #fff;
  position: absolute;
  right: 15px;
  top: 50%;
  height: 1px;
  width: 15px;
  content: "";
  margin-top: -1px;
}
.ttl-ac.open:after {
  background: none;
}
.addr-list .btn-map {
  margin-top: 10px;
}
.addr-list {
  display: none;
}
.addr-list dt {
  background: #bcdccf;
  border: none;
  color: #0a5338;
  padding: 10px 15px;
  position: relative;
  margin-bottom: 1px;
}
.addr-list dt:after {
  background-color: #015134;
  position: absolute;
  right: 22px;
  top: 50%;
  width: 1px;
  height: 15px;
  content: "";
  margin-top: -8px;
}
.addr-list dt:before {
  background-color: #015134;
  position: absolute;
  right: 15px;
  top: 50%;
  height: 1px;
  width: 15px;
  content: "";
  margin-top: -1px;
}
.addr-list .open:after {
  background: none;
}
.addr-list dd {
  background: #efefef;
  padding: 15px;
  margin-bottom: 1px;
  display: none;
}
.addr-list dd > p {
  margin: 0 15px;
}
.addr-list .first {
  display: block;
}
.addr-list .addr-ttl {
  background: #2c7c71;
  border: none;
  color: #fff;
  padding: 5px 10px; 
  margin: 15px 0 0 0;
}
.addr-list .addr-inr {
  padding: 15px;
}
.addr-list .line {
  border-bottom: 1px solid #949494;
  padding-bottom: 20px;
  margin-bottom: 15px;
}

@media all and (min-width: 768px){
  .map-img area {
    outline: none;
  }
}
@media all and (max-width: 767px){
	.mapCap{
		padding: 5px 0;
	}
	.locationMap{
		width: 100%;
	}
  .locationMap {
    margin-bottom: 20px;
  }
}


/* ------------------------------------
   concrete.html
-------------------------------------*/

.imgClm {width:100%; overflow:hidden;}
.imgClm img {width:100%; height:auto;}

/* ------------------------------------
   profile ページ
------------------------------------ */

.txtSyle dt {
  font-weight: bold;
}
.txtSyle dd {
  padding-bottom: 14px;
}
@media all and (min-width: 568px)and (max-width: 767px)  {
  .message .message-tit:before {
    border-right:2px solid #555;
  }
  .message .message-tit:after, .message:before {
    height: 2px
  }
  .kv .inner .kv-ttl {
    font-size: 40px;
  }
  .kv .inner span {
    font-size: 23px; 
  }
  .kv .inner .kv-txt {
    top: 155px;
  }
}