@charset "utf-8";

/* 20260409修正 */

/*****************************
施工事例
*****************************/
.works-list-thumb img {
  aspect-ratio: 2/1.5;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

/* ポップアップ */
/* ベース */
.popbtn {
  cursor: pointer;
  display: block;
  opacity: 1 !important;
  position: relative;
  transition: .5s;
}
.nopopbtn {
  opacity: 1 !important;
}
.popbtn:hover {
  /* ホバーモーションあれば */
  transform: translateY(-12px);
  transition: .5s;
}
.popup {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100lvh;
  width: 100vw;
  transition: .5s;
}
.popup.popopen {
  opacity: 1;
  pointer-events: all;
  z-index: 10000;
}
.popbg {
  background: rgba(0,0,0,.5);
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.popup .popupbox {
  background: #fff;
  box-sizing: border-box;
  overflow: hidden;
  padding: 6rem 2rem 2rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: .5s;
  height: auto;
  max-width: 1000px;
  width: 100%;
}
body.popactive {
  overflow: hidden;
}
.popup .popupbox .popclose {
  aspect-ratio: 1/1;
  background: #181818;
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
}
.popup .popupbox .popclose span {
  aspect-ratio: 1/1;
  background: url(../img/popcross.svg) no-repeat center / contain;
  position: absolute;
  top: 12px;
  left: 14px;
  width: 25px;
}
@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
  .popup .popupbox {
    max-width: 90%;
  }
}
@media only screen and (max-width: 820px) {
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
}

/* サムネイルスライダー設定 */
.maincarousel {
  margin-bottom: 1rem;
}
.maincarousel .splide__slide {
  aspect-ratio: 2/1;
  display: block;
}
.maincarousel .splide__slide img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.thumbnailcarousel .splide__slide {
  opacity: .3;
}
.thumbnailcarousel .splide__slide.is-active {
  opacity: 1;
}
.thumbnailcarousel .splide__slide {
  height: 70px;
}
.thumbnailcarousel .splide__slide img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.thumbnailcarousel .splide__slide,
.thumbnailcarousel .splide__slide.is-active {
  border: initial !important;
}
@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 820px) {
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
  .maincarousel .splide__slide {
    aspect-ratio: 2/1.5;
  }
  .thumbnailcarousel .splide__slide {
    height: 50px;
  }
}

/*****************************
工事情報
*****************************/
.lum-gallery-button {
  display: none;
}
.section-block.newsarchivesec {
  padding-top: 1em;
  padding-bottom: 1em;
}

.koujibox > ul {
  display: flex;
  gap: 4rem 2rem;
  flex-wrap: wrap;
}
.koujibox > ul > li {
  background: #fff;
  box-shadow: 2px 2px #ccc;
  padding: 2rem;
  width: calc(100% / 3 - 5.4rem);
}
.koujibox > ul > li .imgbox {
  margin-bottom: 2rem;
}
.koujibox > ul > li a {
  display: block;
  opacity: 1;
  position: relative;
}
.koujibox > ul > li a.luminous::before {
  aspect-ratio: 1/1;
  background: #000;
  content: "\f00e";
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font: var(--fa-font-solid);
  font-size: 1.6rem;
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}
.koujibox > ul > li a img {
  aspect-ratio: 2/1.3;
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.koujibox > ul > li .dlbox dt,
.koujibox > ul > li .dlbox dd {
  padding: .5rem 1rem;
}
.koujibox > ul > li .dlbox dt {
  background: #c8d8eb;
  font-weight: 600;
}
@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 820px) {
  .koujibox > ul > li {
    width: calc(100% / 2 - 5rem);
  }
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 767px) {
  .koujibox > ul > li {
    width: 100%;
  }
}