/*========================================================================
   swim layout
========================================================================*/
#swim #header {
  position: fixed;
  background: #efefef;
  -webkit-box-shadow: 2px 3px 15px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 3px 15px rgba(0, 0, 0, 0.1);
}
#swim #mainVisual {
  background: url(../img/swim/mainimg.jpg) no-repeat center/cover;
}
#swim h2.title, #swim .left_line, #swim .pagenav {
  border-color: #47b;
}
#swim .top_line::before,
#swim .under_line::after {
  background-color: #47b;
}
#swim .pagenav h3 {
  color: #47b;
}
#swim .pagenav li a.is-current {
  color: #47b;
}
#swim .pagenav li a.is-current::before {
  background-color: #47b;
}

.layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 0.5em;
}
.layout > * {
  width: 100%;
}
.layout > *:not(:last-child) {
  margin-bottom: 1.3em;
}
@media screen and (min-width: 992px) {
  .layout {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 3em;
  }
  .layout .txtArea {
    width: 40%;
  }
  .layout .imgArea {
    max-width: 690px;
    width: 58%;
    margin-right: -2%;
  }
}