@charset "UTF-8";

.kp-heading01 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  #kp-Header {
    border-top: solid 8px #00a7a8;
    border-bottom: solid 5px #00a7a8;
    height: 80px;
  }
}

#kp-HeroTop{
  height:400px;
}
#kp-HeroTop a {
  display: flex;
  flex-direction: row;
}
#kp-HeroTop a:hover {
  text-decoration: none;
}
.kp-HeroTop__body {
  width: 40%;
  padding: 60px;
  background-color:#008486;
  height:400px;
}
.kp-HeroTop__category span {
  display: inline-block;
  margin-left:-60px;
  background:#fff;
  padding:5px 10px 5px 60px;
  font-size:1.7rem;
  font-weight:bold;
  margin-bottom:30px;
}
.kp-HeroTop__text {
  font-size: 2.3rem;
  color: #fff;
  font-weight: 400;
}
.kp-HeroTop__body .kp-HeroTop_subTitle {
  font-size: 1.6rem;
  font-weight:normal;
  display:block;
  margin-bottom:5%;
}
.kp-HeroTop__img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60%;
  height:400px;
  overflow:hidden;
  position: relative;
}
.kp-HeroTop__img img {
  width:100%;
  height: auto!important;
  transition: transform 0.5s linear;
}
.kp-HeroTop__img img:hover {
  transform: scale(1.2);
  z-index:10;
}
@media screen and (max-width: 1149px) {
  .kp-HeroTop__category span{
    padding:3px 10px 3px 30px;
    font-size:14px;
    font-weight:bold;
  }
  .kp-HeroTop__img img{
    width: auto;
    max-width: none !important;
    height:100%;
  }
}
@media screen and (max-width: 767px) {
  #kp-HeroTop {
    height: auto;
  }
  #kp-HeroTop a {
    flex-direction: column;
  }
  .kp-HeroTop__body {
    width: 100%;
    padding: 30px;
    height: auto;
  }
  .kp-HeroTop__category span {
    display: inline-block;
    margin-left: -30px;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .kp-HeroTop__text {
    font-size: 1.7rem;
  }
  .kp-HeroTop__body .kp-HeroTop_subTitle {
    font-weight: normal;
    display: block;
    margin-bottom: 5%;
    font-size: 1.4rem;
  }
  .kp-HeroTop__img {
    display: inline-block;
    float: none;
    width: 100%;
    height: auto;
  }
  .kp-HeroTop__img img {
    width: 100%;
    height: auto;
    margin-top: 0;
  }
}

/*=====絞り込み=====*/
ul.kp-Filter {
  padding: 0px 0px 50px 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 1.3%;
  list-style: none;
  width: 100%;
}
ul.kp-Filter li {
  padding: 10px 20px;
  border: 1px solid #ddd;
  border-radius: 2px;
  text-align: center;
  font-size: 17px;
  opacity: 1;
}
ul.kp-Filter li:hover {
  opacity: .7;
  cursor:pointer;
}
@media screen and (max-width: 767px) {
  ul.kp-Filter li {
    width: calc((100% - 2.6%) / 3);
    padding: 0 10px;
    border: solid 1px;
    font-size: .9rem;
  }
}
@media screen and (max-width: 540px) {
  ul.kp-Filter li {
    width: calc((100% - 1.3%) / 2);
  }
  .kp-Result__item:not(:last-of-type) {
    margin-bottom: 2em;
  }
}

@media screen and (min-width: 780px) {
  .kp-Result__item {
  width: calc((100% / 4) - 2.6%);
  margin-left: 2.6%;
  float: left;
  min-height: 280px;
  padding-bottom: 12px;
}
}

/*=====絞り込み結果=====*/
.kp-Result {
  max-width: 1300px;
  min-height: 800px;
  margin:0 auto 100px;
  padding: 0 2.6%;
}
.kp-Result ul {
  margin-left: -1.3%;
  width: 100%;
  list-style: none;
}

.kp-Result a {
  display: flex;
  flex-direction: column;
}
.kp-Result__img {
  order: 1;
  display: inline-block;
  width: auto;
  height:100%;
  margin-bottom: 10px;
  overflow:hidden;
  position: relative;
  opacity: 1.0;
  color:#fff;
}
.kp-Result__img:hover span,
.kp-Result__img span{
  position: absolute;
  background-color:#a7a7a7;
  padding:3px 30px;
  top:20px;
  font-size: 12px;
  z-index:11;
}

.category01 .kp-Result__img:hover span,
.category01 .kp-Result__img span {
  position: absolute;
  background-color: #ffa800 !important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category01 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #ffa800;
}
.category02 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #00a8a9;
}

.category03 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #007b8c;
}

.category04 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #005f4e;
}

.category05 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #876e22;
}

.category06 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #4682b4;
}

.category07 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #97b239;
}

.category08 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #e64327;
}

.category09 .kp-Result__img span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -9.5px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 10px solid #6a5acd;
}

.category02 .kp-Result__img:hover span,
.category02 .kp-Result__img span {
  position: absolute;
  background-color: #00a8a9!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category03 .kp-Result__img:hover span,
.category03 .kp-Result__img span {
  position: absolute;
  background-color: #007b8c!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category04 .kp-Result__img:hover span,
.category04 .kp-Result__img span {
  position: absolute;
  background-color: #005f4e!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category05 .kp-Result__img:hover span,
.category05 .kp-Result__img span {
  position: absolute;
  background-color: #876e22!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category06 .kp-Result__img:hover span,
.category06 .kp-Result__img span {
  position: absolute;
  background-color: #4682b4!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category07 .kp-Result__img:hover span,
.category07 .kp-Result__img span {
  position: absolute;
  background-color: #97b239!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category08 .kp-Result__img:hover span,
.category08 .kp-Result__img span {
  position: absolute;
  background-color: #e64327!important;
  padding: 3px 30px;
   top: 70%;
  font-size: 12px;
  z-index: 11;
}

.category09 .kp-Result__img:hover span,
.category09 .kp-Result__img span {
  position: absolute;
  background-color: #6a5acd!important;
  padding: 3px 30px;
  top: 70%;
  font-size: 12px;
  z-index: 11;
}


.kp-Result__img img{
  width:100%;
  height: auto;
  transition: transform 0.5s linear;
  border-radius: 0px 0px 0px;
}
.kp-Result__img img:hover {
  transform: scale(1.2);
  z-index:10;
}
.kp-Result__title {
  order: 2;
  text-decoration:none;
  font-size:16px;
  color:#333;
  transition: all 1.5s;
}
.kp-Result__title .kp-Result__time {
  order: 2;
  text-decoration:none;
  font-size:12px;
  color:#666;
  transition: all 1.5s;
}
.special a .kp-Result__title:visited,
.special a .kp-Result__title:hover {
  color: #ffa800!important;
}
.news a .kp-Result__title:visited,
.news a .kp-Result__title:hover {
  color: #e64327!important;
}
.people a .kp-Result__title:visited,
.people a .kp-Result__title:hover {
  color: #876e22!important;
}
.technology a .kp-Result__title:visited,
.technology a .kp-Result__title:hover {
  color: #00a8a9!important;
}
.life a .kp-Result__title:visited,
.life a .kp-Result__title:hover {
  color: #97b239!important;
}
.special .kp-Result__img span {
  background-color: #ffa800;
}
.news .kp-Result__img span {
  background-color: #e64327;
}
.people .kp-Result__img span {
  background-color: #876e22;
}
.technology .kp-Result__img span {
  background-color: #00a8a9;
}
.life .kp-Result__img span {
  background-color: #97b239;
}

.category00 {
  color: #a7a7a7; /* すべて - netral, seperti .all */
}
.category01 {
  color: #ffa800; /* #トピック - sorotan utama, mirip .special */
}
.category02 {
  color: #00a8a9; /* #ミニシールド工法 - teknologi konstruksi, seperti .technology */
}
.category03 {
  color: #007b8c; /* #DXR・DXRⅡ工法 - teknik canggih, warna lebih teknikal dan tegas */
}
.category04 {
  color: #005f4e; /* #ダンビー工法 - metode khusus, warna yang solid dan profesional */
}
.category05 {
  color: #876e22; /* #固有技術 - teknologi unik, seperti .people */
}
.category06 {
  color: #4682b4; /* #海外 - internasional, biru global dan elegan */
}
.category07 {
  color: #97b239; /* #建築 - arsitektur, seperti .life */
}
.category08 {
  color: #e64327; /* #バルブメンテナンス - perawatan, seperti .news */
}
.category09 {
  color: #6a5acd; /* #関連商品 - produk terkait, warna yang stylish dan fleksibel */
.category10 {
  color: #3cb371; /* cadangan atau kategori tambahan, hijau segar */
}

.category01 a .kp-Result__title:visited,
.category01 a .kp-Result__title:hover {
  color: #ffa800!important;
}
.category01 .kp-Result__img span {
  background-color: #ffa800;
}

.category02 a .kp-Result__title:visited,
.category02 a .kp-Result__title:hover {
  color: #00a8a9!important;
}
.category02 .kp-Result__img span {
  background-color: #00a8a9;
}

.category03 a .kp-Result__title:visited,
.category03 a .kp-Result__title:hover {
  color: #007b8c!important;
}
.category03 .kp-Result__img span {
  background-color: #007b8c;
}

.category04 a .kp-Result__title:visited,
.category04 a .kp-Result__title:hover {
  color: #005f4e!important;
}
.category04 .kp-Result__img span {
  background-color: #005f4e;
}

.category05 a .kp-Result__title:visited,
.category05 a .kp-Result__title:hover {
  color: #876e22!important;
}
.category05 .kp-Result__img span {
  background-color: #876e22;
}

.category06 a .kp-Result__title:visited,
.category06 a .kp-Result__title:hover {
  color: #4682b4!important;
}
.category06 .kp-Result__img span {
  background-color: #4682b4;
}

.category07 a .kp-Result__title:visited,
.category07 a .kp-Result__title:hover {
  color: #97b239!important;
}
.category07 .kp-Result__img span {
  background-color: #97b239;
}

.category08 a .kp-Result__title:visited,
.category08 a .kp-Result__title:hover {
  color: #e64327!important;
}
.category08 .kp-Result__img span {
  background-color: #e64327;
}

.category09 a .kp-Result__title:visited,
.category09 a .kp-Result__title:hover {
  color: #6a5acd!important;
}
.category09 .kp-Result__img span {
  background-color: #6a5acd;
}
.category01 .kp-Result__img span {
  background-color: #ffa800;
}
.category02 .kp-Result__img span {
  background-color: #00a8a9;
}
.category03 .kp-Result__img span {
  background-color: #007b8c;
}
.category04 .kp-Result__img span {
  background-color: #005f4e;
}
.category05 .kp-Result__img span {
  background-color: #876e22;
}
.category06 .kp-Result__img span {
  background-color: #4682b4;
}
.category07 .kp-Result__img span {
  background-color: #97b239;
}
.category08 .kp-Result__img span {
  background-color: #e64327;
}
.category09 .kp-Result__img span {
  background-color: #6a5acd;
}

@media screen and (max-width: 940px) {
  .kp-Result__item {
    width: calc(50% - 2.6%);
    min-height: 400px;
    margin-left: 2.6%;
  }
}
@media screen and (max-width: 767px) {
  .kp-Result {
    width: 100%;
  }
  .kp-Result__img {
    height:auto;
  }
  a .kp-Result__title {
    font-size:16px;
  }
  .kp-Result__item {
    min-height: 340px;
  }
  .kp-Result__item {
  width: calc((100% / 2) - 2.6%)!important;
}
}
@media screen and (max-width: 540px) {
  .kp-Result ul {
    margin-left:0;
  }
  .kp-Result__item {
    float:none;
    width: 100%;
    margin-left:0;
    min-height:230px;
    clear:both;
    margin-bottom:30px;
  }
}
