#layout
{
  overflow: hidden;
}

/* aspect-ratio fix */
article.container p img {
  max-width: 98%;
  height: auto;
}

/* photogallery */
.box.gallery .photo-list
{
  width: 100%;
  height: auto;
}
.box.gallery .photo
{
  position: relative;
  vertical-align: top;
  display: inline-block;
  /* 100% / 4 on line*/
  width: 25%;
  padding: 2px;
  box-sizing: border-box;
}
.box.gallery .photo img
{
  width: 100%;
  height: auto;
}
.wr-banner-layer.text-content
{
  word-wrap: normal;
}

@media (max-width: 780px) {
  /* Table mobile width fix */
  #layout .article table {
    width: 95%;
  }
}
