.flowing {
  width: 0;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  animation: flowing-anim 4s forwards linear infinite;
}

@keyframes flowing-anim {
  0%{ width:   0%; }
100%{ width: 100%; }
}

@keyframes animationZoom {
  100% { transform:scale(1.4) }
}
@keyframes animationZoom2 {
  100% { transform:scale(0.8) }
}

.image-container {
  position: relative; /* 基準となる位置（親要素） */
  display: inline-block;
}

.image-container img {
  width: 1920px;
  height: 880px;
  vertical-align: bottom;
}

.text-overlay {
text-align:center;
  position: absolute; /* 画像に対する絶対配置 */
  top: 40%;           /* 上から50%の位置 */
  left: 50%;          /* 左から50%の位置 */
  transform: translate(-50%, -50%); /* 中央を起点に正確にセンタリング */
  color: #ffffff;     /* 文字色 */
  font-weight: bold;
  font-size: 24px;
  width:100%;
}
.s_letter  { font-size:25px; }
.m_letter  { font-size:40px; }
.l_letter  { font-size:60px; }
.ll_letter { font-size:100px; }
.pad { padding:100px; }
@media screen and (max-width: 768px) {
.s_letter  { font-size:20px; }
.m_letter  { font-size:30px; }
.l_letter  { font-size:40px; }
.ll_letter { font-size:58px; }
.pad { padding:20px; }
}

