@charset "UTF-8";
.thumbnailWrapper {
  padding: 182px 0;
  max-width: 1920px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1920px) {
  .thumbnailWrapper {
    padding: 130px 0;
    max-width: 1366px;
  }
}
@media screen and (max-width: 767px) {
  .thumbnailWrapper {
    padding: calc(130 / 375 * 100vw) calc(35 / 375 * 100vw);
  }
}
.thumbnailList {
  width: 100%;
  padding: 0 40px;
  max-width: 1350px;
  margin: 0 auto 320px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: calc(120 / 960 * 100%);
     -moz-column-gap: calc(120 / 960 * 100%);
          column-gap: calc(120 / 960 * 100%);
  row-gap: calc(60 / 960 * 100%);
}
@media screen and (max-width: 1920px) {
  .thumbnailList {
    max-width: 960px;
  }
}
@media screen and (max-width: 767px) {
  .thumbnailList {
    width: 100%;
    margin-bottom: 0;
    -webkit-column-gap: calc(40 / 375 * 100vw);
       -moz-column-gap: calc(40 / 375 * 100vw);
            column-gap: calc(40 / 375 * 100vw);
    row-gap: calc(40 / 375 * 100vw);
    padding: 0;
  }
}
.thumbnailItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: opacity ease-in-out 0.3s;
  transition: opacity ease-in-out 0.3s;
  cursor: pointer;
  max-width: 337px;
  min-height: 320px;
}
@media screen and (max-width: 1920px) {
  .thumbnailItem {
    max-width: 240px;
  }
}
@media screen and (max-width: 767px) {
  .thumbnailItem {
    max-width: none;
    width: 100%;
    margin: 0 auto;
    min-height: auto;
  }
}
.thumbnailItem.horizontal {
  max-width: none;
  width: 125%;
  margin-left: -12.5%;
}
.thumbnailItem.hidden {
  opacity: 0.4;
  pointer-events: none;
}
.thumbnailInfoWrapper {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: 9999;
}
.thumbnailInfoArea {
  margin: 0 auto 30px;
  text-align: center;
}
.thumbnailInfoArea h2.infoTitle {
  font-size: 10px;
  font-weight: bold;
}
.thumbnailInfoArea .infoText {
  font-size: 10px;
  font-weight: bold;
  line-height: 2.2;
}
.modalBase {
  display: none;
}
.modalOverlay {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 9990;
  opacity: 0;
  -webkit-animation: fadein ease-in-out 0.3s forwards;
          animation: fadein ease-in-out 0.3s forwards;
  overflow-y: scroll;
}
.modalInner {
  min-height: 100vh;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .modalInner {
    min-height: 100dvh;
  }
}
.modalInner .thumbnailItem {
  margin: 0 auto;
  position: relative;
  width: 60vw;
  max-width: 810px;
}
@media screen and (max-width: 1920px) {
  .modalInner .thumbnailItem {
    max-width: 675px;
  }
}
@media screen and (max-width: 767px) {
  .modalInner .thumbnailItem {
    width: 90vw;
  }
}
.modalInner .thumbnailItem.horizontal {
  width: 80vw;
  max-width: 1200px;
}
@media screen and (max-width: 1920px) {
  .modalInner .thumbnailItem.horizontal {
    max-width: 900px;
  }
}
@media screen and (max-width: 767px) {
  .modalInner .thumbnailItem.horizontal {
    width: 90vw;
  }
}
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
