@charset "UTF-8";





/* production---------------------------------------*/
.main {
  margin: 150px auto;
  max-width: 76%;
  height: auto;
}



.production {
  position: relative;
  z-index: 2;
  display: grid;
  max-width: 1100px;
  margin: 0 auto;
  gap: 70px;

  /* グリッド設定：画面幅に応じて列数変化 */
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.thumbnail {
  transform: translate(0, 10px);
  transition: .5s;
}

.thumbnail {

  fill: #CDCDCD;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  overflow: hidden;
  aspect-ratio: 301 / 209;
  max-width: 301px;
  border-radius: 5%;
}


.thumbnail__txt {
  margin-top: 26px;
  color: #000;
  font-family: "Noto Sans JP";
  font-size: 1.4rem;
  font-weight: 400;
}

.thumbnail_img:hover {
  transform: translate(0, 0px);
  transition: .5s;
}


.thumbnail_img {
  display: block;
  width: 100%;
  height: calc(100% + 10px);
  object-fit: cover;
  transition: .5s;
  transform: translateY(-10px);
}

.thumbnail:hover {
  transform: translateY(0px);
}


.footprint {
  position: absolute;
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.8;
  animation: fadeOut 1s forwards;
  pointer-events: none;
}
@keyframes fadeOut {
  0% { opacity: 0.8; }
  100% { opacity: 0; }
}


  @media (min-width: 768px) and (max-width: 1024px) {

    .production{
     justify-content: center;

  }

}


  @media (max-width: 767px) {

    .production{
      justify-content: center;
 
   }
  
  }