@charset "UTF-8";
/* ==========================================================
  フォント
========================================================== */
/* ===================================================================
CSS information
 file name  :topics_list.css
 style info :トピックス一覧のスタイル
=================================================================== */
.contentArea {
  color: #000;
  font-weight: bold;
  background: url(../img/topics/bg_content.jpg) repeat 0 0;
}
@media screen and (min-width: 768px) {
  .contentArea {
    font-size: clamp(16px, 1.7vw, 18px);
    padding: 140px 0 60px;
    margin-top: -82px;
  }
}
@media screen and (min-width: 1921px) {
  .contentArea {
    font-size: 0.9vw;
    padding: 6vw 0 3vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1300px) {
  .contentArea {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .contentArea {
    padding: 32vw 0 18vw;
  }
}
.contentArea h1 {
  margin: 0 auto 2em;
}
@media screen and (min-width: 768px) {
  .contentArea h1 {
    width: min(90%, 1200px);
  }
}
@media screen and (min-width: 1921px) {
  .contentArea h1 {
    width: 50%;
  }
}
.contentArea h1:before, .contentArea h1:after {
  content: "";
  display: block;
  position: relative;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (min-width: 768px) {
  .contentArea h1:before, .contentArea h1:after {
    height: 14px;
    background-size: 100%;
  }
}
@media screen and (max-width: 767px) {
  .contentArea h1:before, .contentArea h1:after {
    height: 2.6vw;
    background-size: auto 100%;
  }
}
.contentArea h1:before {
  background-image: url(../img/shared/bg_tit_top.png);
  top: 0.2em;
}
.contentArea h1:after {
  background-image: url(../img/shared/bg_tit_bottom.png);
  bottom: 0.2em;
}
.contentArea h1 .in {
  text-shadow: 0.05em 0.05em #000;
  background-image: url(../img/shared/bg_tit_pat.png), url(../img/shared/bg_tit_pat.png), -webkit-gradient(linear, left top, right top, from(#2f3c65), color-stop(50%, #0f59aa), to(#2f3c65));
  background-image: url(../img/shared/bg_tit_pat.png), url(../img/shared/bg_tit_pat.png), linear-gradient(90deg, #2f3c65 0%, #0f59aa 50%, #2f3c65 100%);
  background-repeat: no-repeat;
  background-position: center left -3%, center right -3%, 0 0;
  padding: 0.8em 1em;
}
@media screen and (min-width: 768px) {
  .contentArea h1 .in {
    background-size: 14em auto, 14em auto, auto;
    border: solid 1px #67ddff;
    margin: 0 0.2em;
  }
}
@media screen and (max-width: 767px) {
  .contentArea h1 .in {
    background-size: 8em auto, 8em auto, auto;
  }
}
.contentArea h1 .in span {
  color: #fff;
  font-weight: 900;
  display: block;
}
@media screen and (min-width: 768px) {
  .contentArea h1 .in span {
    font-size: clamp(18px, 1.6vw, 22px);
  }
}
@media screen and (min-width: 1921px) {
  .contentArea h1 .in span {
    font-size: 0.8vw;
  }
}
@media screen and (max-width: 767px) {
  .contentArea h1 .in span {
    font-size: 3vw;
  }
}
.contentArea h1 .in em {
  color: #ffd625;
  font-weight: 900;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .contentArea h1 .in em {
    font-size: clamp(28px, 3.4vw, 40px);
  }
}
@media screen and (min-width: 1921px) {
  .contentArea h1 .in em {
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 767px) {
  .contentArea h1 .in em {
    font-size: 6vw;
  }
}
.contentArea .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 1em 0;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .contentArea .list {
    width: min(90%, 1100px);
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 1921px) {
  .contentArea .list {
    width: 46%;
    margin-bottom: 4vw;
  }
}
@media screen and (max-width: 767px) {
  .contentArea .list {
    width: 90%;
  }
}
.contentArea .list li {
  background: url(../img/topics/bg_white-line.png) repeat 0 0;
  border-radius: 6px;
  padding: 1.2em 1.6em;
}
.contentArea .list li dl {
  text-align: left;
}
.contentArea .list li dl dt {
  color: #e50000;
}
@media screen and (min-width: 768px) {
  .contentArea .list li dl dt {
    font-size: 16px;
  }
}
@media screen and (min-width: 1921px) {
  .contentArea .list li dl dt {
    font-size: 0.8vw;
  }
}
.contentArea .list li dl dd a {
  color: #2a91c8;
  border-bottom: solid 1px #2a91c8;
}