@charset "utf-8";

/*==================================================
ギャラリーのためのcss
===================================*/
.gallery-wrapper{
  padding-bottom: 50px;
}

.gallery{
  display: flex;
  justify-content: space-between;
  margin: 0 -15px; /* マージンを調整して均等に配置 */
}

.gallery li {
  flex: 0 0 33.33%; /* 25% 幅で均等に4分割 */
  box-sizing: border-box;
  padding: 0 16px;
  margin-bottom: 16px;/*各画像下に余白をつける*/
}

/*ギャラリー内のイメージは横幅100%にする*/
.gallery img{
  width:100%;
  height:auto;
  vertical-align: bottom;/*画像の下にできる余白を削除*/}

/*　横幅900px以下の段組み設定　*/
@media only screen and (max-width: 900px) {
  .gallery li {
    flex: 0 0 33.33%; /* 33.33% 幅で均等に3分割 */
  } 
}

@media only screen and (max-width: 768px) {
  .gallery li {
    flex: 0 0 50%; /* 50% 幅で均等に2分割 */
    padding: 0 5px;
    margin-bottom: 10px;/*各画像下に余白をつける*/
  } 
}


/*========= レイアウトのためのCSS ===============*/

ul{
  margin:0;
  padding: 0;
  list-style: none;
}

a{
  color: #333;
}

a:hover,
a:active{
  text-decoration: none;
}



p{
  margin:0 10px 10px 10px;
  word-wrap : break-word;
}

/*画像を出現させるアニメーションCSS*/

.flipLeft{
animation-name: flipLeft;
animation-duration:0.5s;
animation-fill-mode:forwards;
perspective-origin: left center;
opacity: 0;
}

@keyframes flipLeft{
  from {
   transform: perspective(600px) translate3d(0, 0, 0) rotateY(30deg);
  opacity: 0;
  }

  to {
  transform: perspective(600px) translate3d(0, 0, 0) rotateY(0deg);
  opacity: 1;
  }
}