@charset "UTF-8";
#topics {
  padding: 50px 20px;
}

/* MainVisual(ヘッダーの下) */
.txt-box a:hover {
  opacity: 0.7;
}

/* トピックス一覧 */
.flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  gap: 30px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #E8ECED;
  padding: 25px 40px;
  color: #0F1726;
  height: auto;
}
.flex-box figure {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.flex-box figure img {
  width: 100%;
  vertical-align: top;
}
.flex-box .txt-box p.-small {
  font-size: 14px;
}
.flex-box .txt-box .title {
  font-weight: 500;
  margin-bottom: 10px;
}
.flex-box .txt-box .title a {
  color: #004EA2;
}
.flex-box .txt-box .subtitle {
  margin: -10px 0 12px;
}
.flex-box .txt-box .overview {
  margin-bottom: 7px;
}
.flex-box .txt-box .overview dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-bottom: 0;
}
.flex-box .txt-box .overview dl dd{
    margin-bottom: 0;
}
.flex-box .txt-box .overview dl dt::after {
  content: ":";
  margin: 0 4px;
}
.flex-box .txt-box .overview span {
  color: #004EA2;
}
.flex-box .txt-box .overview span.-red {
  color: #C00000;
}
.flex-box .txt-box .overview.-small {
  margin-bottom: 9px;
  line-height: 1.538;
}
.flex-box .txt-box .overview.title > a {
  margin-right: 10px;
  text-decoration: underline;
}
a{
    text-decoration: underline;
}
.flex-box .txt-box .overview .mrgn-b10 {
  margin-bottom: 10px;
}
.flex-box .txt-box .overview .mrgn-b15 {
  margin-bottom: 15px;
}
.flex-box .txt-box .overview .mrgn-b20 {
  margin-bottom: 20px;
}
.flex-box .txt-box .detail {
  font-size: 15px;
}
.flex-box .txt-box .detail p {
  margin-bottom: 0;
}
.flex-box .txt-box .detail dl {
  margin-bottom: 9px;
}
.flex-box .txt-box .detail dt {
  font-weight: 500;
}
.flex-box .txt-box .detail dd {
  margin-left: 1rem;
}
.flex-box .txt-box .detail dd.-small {
  font-size: 13px;
}
.flex-box .txt-box .-bold {
  font-weight: 500;
}
.flex-box .txt-box p:last-child {
  margin-bottom: 0;
}
.flex-box .txt-box .img_box-logo {
  width: 360px;
}
.flex-box .txt-box .img_box-logo img {
  width: 100%;
}
.flex-box .txt-box .overviewbox {
  background-color: #F3F5F6;
  padding: 15px;
  margin-bottom: 10px;
}
.flex-box .txt-box .overviewbox .-small {
  font-size: 12px;
}
.flex-box .-gray {
  font-size: 13px;
  color: #5D677B;
}
.flex-box.topics_first {
  margin-bottom: 30px;
}
.flex-box.topics_first figure {
  width: 320px;
}
.flex-box.topics_first figure + figure {
  margin-top: 20px;
}
.flex-box.topics_first .txt-box .title {
  font-size: 20px;
}
.flex-box.topics_first .txt-box .title.-small {
  font-size: 16px;
  line-height: 1.58;
}
.flex-box.topics_first .txt-box .overview {
  font-size: 15px;
}
.flex-box.topics_first .txt-box .overview.-small {
  font-size: 13px;
}
.flex-box.topics_next {
  margin-bottom: 20px;
}
.flex-box.topics_next figure {
  width: 200px;
}
.flex-box.topics_next > p {
  width: 110px;
}
.flex-box.topics_next .txt-box {
  width: calc(100% - 140px);
}
.flex-box.topics_next .txt-box .title {
  font-size: 18px;
  margin-bottom: 7px;
}
.flex-box.topics_next .txt-box .title.-small {
  font-size: 16px;
  line-height: 1.58;
}
.flex-box.topics_next .txt-box .overview {
  font-size: 13px;
  line-height: 1.538;
}
.flex-box.topics_next + h3 {
  margin-top: 40px;
}

.past_topics {
  font-size: 22px;
  margin: 78px 0 14px;
  font-weight: bold;
  color: #004EA2;
}

.past_topics_date {
  font-size: 18px;
  margin: 0 0 18px;
  font-weight: 500;
  color: #000;
  border: 0;
}

@media all and (max-width: 960px) {
  .flex-box .txt-box .img_box-logo {
    width: 100%;
  }
}
@media all and (max-width: 767px) {
  #topics {
    padding: 13.3333333333vw 5.3333333333vw;
  }
  /* トピックス一覧 */
  .flex-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8vw;
    padding: 6.6666666667vw;
    color: #0F1726;
  }
  .flex-box .txt-box p.-small {
    font-size: 3.7333333333vw;
  }
  .flex-box .txt-box .title {
    margin-bottom: 2.6666666667vw;
  }
  .flex-box .txt-box .subtitle {
    margin: -2.6666666667vw 0 3.2vw;
  }
  .flex-box .txt-box .overview {
    margin-bottom: 1.8666666667vw;
  }
  .flex-box .txt-box .overview.-small {
    margin-bottom: 2.4vw;
  }
  .flex-box .txt-box .overview .mrgn-b10 {
    margin-bottom: 2.6666666667vw;
  }
  .flex-box .txt-box .overview .mrgn-b15 {
    margin-bottom: 4vw;
  }
  .flex-box .txt-box .overview .mrgn-b20 {
    margin-bottom: 5.3333333333vw;
  }
  .flex-box .txt-box .detail {
    font-size: 4vw;
  }
  .flex-box .txt-box .detail dl {
    margin-bottom: 2.4vw;
  }
  .flex-box .txt-box .detail dd {
    margin-left: 1rem;
  }
  .flex-box .txt-box .detail dd.-small {
    font-size: 3.4666666667vw;
  }
  .flex-box .txt-box p:last-child {
    margin-bottom: 0;
  }
  .flex-box .txt-box .overviewbox {
    padding: 4vw;
    margin-bottom: 2.6666666667vw;
  }
  .flex-box .txt-box .overviewbox .-small {
    font-size: 3.2vw;
  }
  .flex-box .-gray {
    font-size: 3.4666666667vw;
  }
  .flex-box.topics_first {
    margin-bottom: 8vw;
  }
  .flex-box.topics_first figure {
    width: 100%;
  }
  .flex-box.topics_first .txt-box .title {
    font-size: 5.3333333333vw;
  }
  .flex-box.topics_first .txt-box .title.-small {
    font-size: 4.2666666667vw;
  }
  .flex-box.topics_first .txt-box .overview {
    font-size: 4vw;
  }
  .flex-box.topics_first .txt-box .overview.-small {
    font-size: 3.4666666667vw;
  }
  .flex-box.topics_next {
    margin-bottom: 5.3333333333vw;
    gap: 4vw;
  }
  .flex-box.topics_next > p {
    width: 100%;
  }
  .flex-box.topics_next figure {
    width: 100%;
  }
  .flex-box.topics_next .txt-box {
    width: 100%;
  }
  .flex-box.topics_next .txt-box .title {
    font-size: 4.8vw;
    margin-bottom: 1.8666666667vw;
  }
  .flex-box.topics_next .txt-box .title.-small {
    font-size: 4.2666666667vw;
  }
  .flex-box.topics_next .txt-box .overview {
    font-size: 3.4666666667vw;
  }
  .flex-box.topics_next + h3 {
    margin-top: 10.6666666667vw;
  }
  .past_topics {
    font-size: 5.8666666667vw;
    margin: 20.8vw 0 3.7333333333vw;
  }
  .past_topics_date {
    font-size: 4.8vw;
    margin: 0 0 4.8vw;
  }
}