@charset "utf-8";
#main {
  position: relative;
}
#main h2 {
  position: relative;
  z-index: 4;
  text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8),-2px -2px 4px rgba(255, 255, 255, 0.8);
}
#btnArea {
  position: relative;
  z-index: 3;
}
#btnArea .btn a {
  color: #ffffff;
  background-color: #000000;
  background-image: url("/common/img/link_icon_w.png");
  background-repeat: no-repeat;
  font-weight: 500;
}
#gallery {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  /*  opacity: 0;*/
}
#gallery::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, .78);
  z-index: 2;
}
#gallery .inner {
  position: relative;
  z-index: 1;
}
#gallery .items {
  position: relative;
  overflow: hidden
}
#gallery .items .item {
  position: absolute;
  left: 0;
  top: 0
}
#gallery .items .item .imgBox {
  display: block;
}
#gallery .items .item .imgBox img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center
}
@media print, screen and (min-width: 751px) {
  #main {
    /* gallery .itemsの高さ */
    min-height: calc(920px - 40px);
    min-height: -webkit-calc(920px - 40px);
    margin-top: 50px;
  }
  #main h2 {
    margin-top: 0;
    padding-top: 40px;
  }
  #btnArea .btnItem {
    margin-top: 30px;
  }
  #btnArea .btn {
    width: calc(33.333% - 13.4px);
    width: -webkit-calc(33.333% - 13.4px);
    min-height: 100%;
    margin-right: 20px;
  }
  #btnArea .btn:nth-child(3n) {
    margin-right: 0;
  }
  #btnArea .btn:nth-child(n+4) {
    margin-top: 20px;
  }
  #btnArea .btn a {
    position: relative;
 display: flex;
align-items: center;
    width: calc(100% - 80px);
    width: -webkit-calc(100% - 80px);
    height: calc(100% - 30px);
    height: -webkit-calc(100% - 30px);
    padding: 15px 60px 15px 20px;
    background-position: right 20px center;
    background-size: 20px auto;
    overflow: hidden;
    transition: all 0.3s linear;
  }
  #btnArea .btn a:hover {
    background-color: #666666;
  }
  /*  #btnArea .btn a::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    bottom: 0;
    left: -100%;
    background-color: #ffffff;
    transition: all 0.3s linear;
  }
  #btnArea .btn a:hover::after {
    left: 0;
  }*/
  #gallery .items {
    width: calc(100% + 260px);
    /* ((160+30)×行数)-30 */
    height: 920px;
    left: -240px;
  }
  #gallery .items .item .imgBox {
    width: 240px;
    height: 160px;
  }
}
@media (max-width: 750.99px) {
  #main {
    /* gallery .itemsの高さ */
    min-height: calc(1065px - 4vw);
    min-height: -webkit-calc(1065px - 4vw);
    margin-top: calc(20 / 375 * 100vw);
      padding-bottom:  calc(30 / 375 * 100vw);
  }
  #main h2 {
    margin-top: 0;
    padding-top: calc(15 / 375 * 100vw);
  }
  #btnArea .btnItem {
    margin-top: calc(15 / 375 * 100vw);
  }
  #btnArea .btn {
    width: 100%;
  }
  #btnArea .btn:nth-child(n+2) {
    margin-top: calc(10 / 375 * 100vw);
  }
  #btnArea .btn a {
    display: block;
    width: calc(100% - 45px);
    width: -webkit-calc(100% - 45px);
    height: calc(100% - 20px);
    height: -webkit-calc(100% - 20px);
    padding: 12px 30px 12px 15px;
    background-position: right 10px center;
    background-size: 15px auto;
  }
  #gallery .items {
    width: calc(100vw + 180px);
    /* ((120+15)×行数)-15 */
    height: 1065px;
    left: -180px;
  }
  #gallery .items .item .imgBox {
    width: 180px;
    height: 120px
  }
}