.p-gallery {
  padding: 10.625rem 0 0;
}
@media screen and (max-width: 767px) {
  .p-gallery {
    padding: 17.33vw 6.66vw 0 6.66vw;
  }
}
.p-gallery__title {
  font-weight: normal;
}
.p-gallery__title::before {
  color: #EEF4F9;
}
.p-gallery__lead {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-gallery__lead {
    margin-top: 6.66vw;
  }
}
.p-gallery__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 0.625rem;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-gallery__items {
    margin-top: 6.66vw;
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 4vw;
  }
}

body.lb-disable-scrolling {
  overflow: hidden;
}

.lb-container {
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .lb-container {
    margin: 0 2vw;
  }
}
.lb-container::before {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 1.25rem);
  height: calc(100% + 1.25rem);
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
  z-index: -1;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .lb-container::before {
    width: calc(100% + 4vw);
    height: calc(100% + 4vw);
  }
}

.lb-loader {
  top: 43%;
  height: 25%;
  width: 100%;
  position: absolute;
  left: 0;
}

.lightbox {
  width: 100%;
  z-index: 9999;
  position: fixed;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .lightbox {
    width: calc(100% - 13.32vw);
  }
}
.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  background-color: #101010;
  opacity: 0.8;
  display: none;
}

.lb-outerContainer {
  position: relative;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .lb-outerContainer {
    width: auto !important;
    height: auto !important;
  }
}

.lb-cancel {
  display: block;
  width: 2rem;
  height: 2rem;
  margin: 0 auto;
  background-repeat: no-repeat;
  background: url(../../../images/case/icon_loading01.gif);
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}
.lb-nav a {
  width: 3.125rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  position: absolute;
  height: 100%;
  cursor: pointer;
  display: block;
  opacity: 0.7;
  transition: opacity 0.2s;
}
@media screen and (max-width: 767px) {
  .lb-nav a {
    width: 6.66vw;
  }
}
.lb-nav a:hover {
  opacity: 1;
}
.lb-nav a.lb-prev {
  left: -4.375rem;
  background-image: url(../../../images/case/icon_prev01.webp);
}
@media screen and (max-width: 767px) {
  .lb-nav a.lb-prev {
    left: 0;
  }
}
.lb-nav a.lb-next {
  right: -4.375rem;
  background-image: url(../../../images/case/icon_next01.webp);
}
@media screen and (max-width: 767px) {
  .lb-nav a.lb-next {
    right: 0;
  }
}

.lb-container > .nav {
  left: 0;
}

.lb-data {
  color: #fff;
  position: relative;
  padding-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .lb-data {
    margin-top: 2vw;
  }
}
.lb-dataContainer {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .lb-dataContainer {
    width: auto !important;
  }
}
.lb-data .lb-caption {
  font-size: 3.125rem;
  font-family: "nsans_jp_b", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  padding-top: 1.25rem;
  line-height: 1.3;
  display: block;
}
@media screen and (max-width: 767px) {
  .lb-data .lb-caption {
    padding-top: 2vw;
    font-size: 5vw;
  }
}
.lb-data .lb-caption a {
  color: #fff;
}
.lb-data .lb-number {
  font-family: "poppins_sb_i", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.25rem;
  padding-top: 1.25rem;
  display: block;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .lb-data .lb-number {
    padding-top: 2vw;
    font-size: 3.5vw;
  }
}
.lb-data .lb-close {
  display: block;
  width: 3.5rem;
  height: 3.5rem;
  background: url(../../../images/case/icon_close01.webp);
  opacity: 0.7;
  transition: opacity 0.2s;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: -0.9375rem;
  top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .lb-data .lb-close {
    width: 7vw;
    height: 7vw;
    top: 5vw;
    right: 0;
  }
}
.lb-data .lb-close:hover {
  cursor: pointer;
  opacity: 1;
}/*# sourceMappingURL=styles.css.map */