.kodomo-hero h1,
.kodomo-intro h2,
.kodomo-heading h2,
.kodomo-closing h2,
.kodomo-intro p,
.kodomo-heading p,
.kodomo-gallery figcaption {
  letter-spacing: 0 !important;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
  text-wrap: wrap;
  text-align: left;
  font-kerning: normal;
  font-feature-settings: "palt" 0;
}

.kodomo-gallery,
.recent-gallery {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
}

.recent-gallery {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.kodomo-gallery figure,
.origin-gallery figure:nth-child(5n+1) {
  display: grid;
  grid-column: auto !important;
  grid-template-rows: 240px 1fr;
  min-width: 0;
}

.kodomo-gallery img {
  width: 100% !important;
  height: 240px !important;
  max-height: 240px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #edf3f0;
}

.kodomo-gallery figcaption {
  min-height: 3.2em;
}

@media (max-width: 1000px) {
  .kodomo-gallery,
  .recent-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .kodomo-gallery figure,
  .origin-gallery figure:nth-child(5n+1) {
    grid-template-rows: 280px 1fr;
  }

  .kodomo-gallery img {
    height: 280px !important;
    max-height: 280px !important;
  }
}

@media (max-width: 600px) {
  .kodomo-gallery,
  .recent-gallery {
    grid-template-columns: 1fr !important;
  }

  .kodomo-gallery figure,
  .origin-gallery figure:nth-child(5n+1) {
    grid-template-rows: min(72vw, 320px) 1fr;
  }

  .kodomo-gallery img {
    height: min(72vw, 320px) !important;
    max-height: min(72vw, 320px) !important;
  }
}
