*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --sea-deep:  #1b579a;
  --sea-mid:   #1A8AB4;
  --sea-light: #5BB5D5;
  --tide:      #E4F3FA;
  --sand:      #F7F2E8;
  --text:      #111;
  --text-sub:  #333;
  --border:    #D0E6F0;
  --radius:    8px;
  --shadow:    0 2px 8px rgba(11,80,112,.10);
}
body {
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: 15px; color: var(--text); line-height: 1.7;
}
a { color: var(--sea-mid); text-decoration: none; }
a:hover { text-decoration: underline; }

.mainWrapper {
 padding-top: 40px;
}
button {
  cursor: pointer;
}

.newsLeadWrapper .newsLead {
  color: #1b579a;
  padding: 20px 20px;
}

.newsLeadWrapper .newsLead p {
  text-align: center;
  line-height: 2.2em;
}

.newsCategory ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  margin-bottom: 30px;
}

.btn-blueMaru,
.btn-greenMaru {
  width: 260px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  color: #fff;
  min-height: 76.8px;
}

.height-initial {
  min-height: initial !important;
}

.newsList {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

.newsList .newsListData {
  display: block;
  width: 48%;
  margin-bottom: 10px;
  border-radius: 13px;
  border: solid 1px #1b579a;
  background-color: #fff;
  padding-bottom: 10px;
  margin-left: 1%;
  margin-right: 1%;
}

.newsList .newsListData a {
  display: block;
  margin-bottom: 20px;
}

.newsList .newsListData a img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
  border-radius: 13px 13px 0 0;
}

.newsList .newsListData .newsItem p {
  margin: 0;
}

.newsList .newsListData .newsItem .newsGroupName {
  font-size: 7px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.newsList .newsListData .newsItem .newsTitle {
  font-size: 10px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
  line-height: 1.5;
}

.newsList .newsListData .newsItem .newsText {
  font-size: 7px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.newsList .newsListData .newsItem .newsText * {
  font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", "游ゴシック体", "Yu Gothic Medium", YU Gothic,
    "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 11px;
  font-weight: normal;
  text-decoration: none;
  display: inline;
}

.newsList .newsListData .newsItem .newsText img {
  display: none;
}

/*Article詳細*/
.newsData {
  width: 100%;
  display: block;
  background-color: #fff;
  padding: 50px 0;
}

.newsData .newsDataGroupName {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}

.newsData .newsDataTitle {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  font-size: 16px;
  font-weight: bold;
  color: #1b579a;
}

.newsData .newsDataText {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.newsDataFooter {
  padding: 40px 0;
}

@media screen and (min-width: 768px) {
  .newsLeadWrapper {
    max-width: 1300px;
    margin-bottom: 70px;
    margin-left: auto;
    margin-right: auto;
    background-repeat: no-repeat;
    background-size: 120px auto, 150px auto;
    background-position: left 5% top, right 5% bottom;
  }

  .newsCategory {
    
    padding-top: 10vh;
    margin-left: auto;
    margin-right: auto;
    max-width: 1440px;
  }

  .newsCategory ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
  }

  .newsCategory ul li {
    display: block;
    width: 30%;
    min-width: 300px;
    margin-left: 10px;
    margin-right: 10px;
  }

  .btn-blueMaru,
  .btn-greenMaru {
    width: 100%;
    padding: 10px;
    line-height: 1.2;
  }

  .newsList {
    width: 90%;
    max-width: 1440px;
    margin-bottom: 30px;
  }

  .newsList {
    display: flex;
    flex-wrap: wrap;

    width: 90%;
    max-width: 1150px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }

  .newsList .newsListData {
    width: 32%;
    margin-bottom: 20px;
    border-radius: 30px;
    margin-right: 0.66666666%;
    margin-left: 0.66666666%;
  }

  .newsList .newsListData a img {
    border-radius: 30px 30px 0 0;
  }

  .newsList .newsListData .newsItem .newsGroupName {
    font-size: 13px;
  }

  .newsList .newsListData .newsItem .newsTitle {
    font-size: 16px;
  }

  .newsList .newsListData .newsItem .newsText {
    font-size: 13px;
  }

  /*Article詳細*/
  .newsData {
    width: 95%;
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 30px;
    padding: 70px 0;
  }

  .newsData .newsDataGroupName {
    width: 80%;
    max-width: 950px;
    margin-bottom: 10px;
  }

  .newsData .newsDataTitle {
    width: 80%;
    max-width: 950px;
    font-size: 28px;
    font-weight: bold;
  }

  .newsData .newsDataText {
    width: 80%;
    max-width: 950px;
  }

  .newsDataFooter {
    padding-bottom: 40px;
  }

  .newsDataFooter .btn-blueMaru {
    width: 260px;
  }
}
