img{
    max-width: 100%;
    height: auto;
}
.gallery{
    padding: 0 0 15px;
    display: flex;
    width: 2400px;
    /*flex-wrap: wrap;*/
    justify-content: space-between;
    margin: 0;
}
.gallery-item {
    width: 100%;
    margin: 0 25px 0 0;
}

.gallery-item a {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 200px;
    /*background-color: #cfefff;*/
    background-color: #fff;
}
.gallery-item a img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
p.insta-cap {
  font-size: 12px;
  margin: 5px 0 0;
  color: black;
  height: calc(1.4em * 3); /* 制限したい行数が2の場合 */
  line-height: 1.5em; /* 本当は、heightと同じ値にする。今回は微調整 */
  overflow: hidden;
  position: relative;
  word-wrap: break-word;
}
p.insta-cap span {
  margin-right: 1em;
}
p.insta-cap::before {
  background: linear-gradient(
    to right,
    rgba(246, 246, 246, 0) 0%,
    rgba(246, 246, 246, 1) 30% /* 背景色 */
  );
  bottom: 0;
  content: "…";
  padding-left: 1em;
  position: absolute;
  right: 0;
}
p.insta-cap::after {
  background: #fff; /* 背景色 */
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}

.fancybox-slide--iframe .fancybox-content {
    width  : 800px;
    height : 800px;
    max-width  : 80%;
    max-height : 80%;
    margin: 0;
}



@media only screen and (max-width: 641px) {

    .fancybox-slide--iframe .fancybox-content {
        max-width  : 97%;
        max-height : 97%;
    }

}