html {
  font-size: 62.5%; }

* {
  box-sizing: border-box; }

body {
  font-family: 'Noto Sans JP', sans-serif; }

body a img {
  transition: all 0.5s; }
body a:hover img {
  opacity: 0.5; }

@media (min-width: 768px) {
  .top_wrapper {
    padding: 2em 0 5em; } }
@media (max-width: 767px) {
  .top_wrapper {
    padding: 2em 1.5em 3em; } }
.top_news h3 {
  background: #0096D8;
  border-radius: 5px;
  color: #fff;
  padding: 0.5em 1.5em; }
.top_news ul {
  max-height: 300px;
  overflow: auto; }
  .top_news ul li {
    padding: 1em 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2;
    border-bottom: 2px solid #E6E6E6; }
    @media (min-width: 768px) {
      .top_news ul li {
        display: flex;
        align-items: flex-start; } }
    .top_news ul li span {
      display: flex;
      align-items: center; }
      @media (min-width: 768px) {
        .top_news ul li span {
          width: 120px; } }
    @media (min-width: 768px) {
      .top_news ul li p {
        width: calc(100% - 120px); } }
.top .banner_wrap {
  margin: 5em 0; }
.top_banner {
  margin-top: 2em; }
  @media (min-width: 768px) {
    .top_banner {
      display: flex;
      flex-wrap: wrap; } }
  .top_banner li {
    max-width: 260px;
    margin-bottom: 1em;
    border: 1px solid #ccc; }
    @media (min-width: 768px) {
      .top_banner li {
        margin-right: 1em; } }
    @media (max-width: 767px) {
      .top_banner li {
        margin: 1em auto; } }
