    .gallery {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      justify-content: center;
      align-items: center;
      padding: 5px;
      height: 100%;
      width: 100%;
      /*background-image: url("../img/gallery/bg02.jpg");
		background-size: cover;*/
    }
    .gallery-item {
      flex: 1 0 calc(20% - 10px);
      margin: 5px;
      cursor: pointer;
      max-width: 300px;
    }
    .gallery-item img {
      width: 100%;
      height: auto;
      display: block;
      border-radius: 4px;
    }
    .gallery-item img {
      filter: grayscale(100%);
      transition: filter 0.5s ease; /* 0.5秒かけてフィルターを変化させる */
    }
    /* ホバー時にグレースケールを外してカラー表示 */
    .gallery-item:hover img {
      filter: grayscale(0%);
    }
    @media (max-width: 800px) {
      .gallery {
        flex-direction: column;
        height: auto;
      }
      .gallery-item {
        flex: none;
      }
    }
    /* モーダル */
    .modal {
      display: none;
      position: fixed;
      z-index: 10000;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
      align-items: center;
      justify-content: center;
    }
    .modal img {
      max-width: 90%;
      max-height: 90%;
      border-radius: 4px;
    }
    .modal .close {
      position: absolute;
      top: 20px;
      right: 20px;
      font-size: 2rem;
      color: #fff;
      cursor: pointer;
    }