/****	---- setting ----
===================================****/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
/****	---- general ----
===================================****/
html.lock, body.lock {
  overflow: hidden;
}

.article-detail-container .article-title {
  font-size: min(2.2222222222vw, 32px) !important;
  line-height: 1.3 !important;
  margin: min(2.0833333333vw, 30px) 0 0 0 !important;
}
@media print, screen and (max-width: 767px) {
  .article-detail-container .article-title {
    font-size: 6.4vw !important;
    margin: 4vw 0 5.3333333333vw !important;
  }
}
.article-detail-container .main-visual {
  display: none !important;
}

.article-content {
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
}
.article-content h1, .article-content h2, .article-content h3, .article-content p {
  margin: 0;
}
.article-content ul, .article-content ol {
  padding: 0;
  margin: 0;
}
.article-content ul li, .article-content ol li {
  list-style: none;
}
.article-content figure {
  margin: 0;
}
.article-content img {
  width: 100%;
  display: block;
}
.article-content button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: pointer;
  background: transparent;
  border: none;
  padding: 0;
}
.article-content a {
  color: #333;
  text-decoration: none;
  transition: 0.2s;
}
.article-content {
  /****	---- utility ----
  ===================================****/
}
.article-content .u-pc {
  display: block;
}
@media print, screen and (max-width: 767px) {
  .article-content .u-pc {
    display: none;
  }
}
.article-content .u-sp {
  display: none;
}
@media print, screen and (max-width: 767px) {
  .article-content .u-sp {
    display: block;
  }
}
.article-content .u-mb--em {
  margin: 0 0 1em 0;
}
.article-content {
  /****	---- component ----
  ===================================****/
  /****	---- main ----
  ===================================****/
}
.article-content .contents-menu {
  background-color: #F2F2F2;
  border-radius: min(1.3888888889vw, 20px);
  padding: min(2.7777777778vw, 40px);
  margin: min(2.0833333333vw, 30px) 0;
}
@media print, screen and (max-width: 767px) {
  .article-content .contents-menu {
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw;
    margin: 8vw 0;
  }
}
.article-content .contents-menu .title {
  font-weight: bold;
  font-size: min(1.6666666667vw, 24px);
  color: #989898;
  margin: 0 0 min(1.0416666667vw, 15px) 0;
}
@media print, screen and (max-width: 767px) {
  .article-content .contents-menu .title {
    font-size: 5.3333333333vw;
    margin: 0 0 4vw 0;
  }
}
.article-content .contents-menu ul {
  display: flex;
  flex-direction: column;
  gap: min(1.0416666667vw, 15px) 0;
}
@media print, screen and (max-width: 767px) {
  .article-content .contents-menu ul {
    gap: 4vw 0;
  }
}
.article-content .contents-menu ul li a {
  display: flex;
  align-items: center;
  text-decoration: none;
}
.article-content .contents-menu ul li a:hover {
  opacity: 0.8;
}
.article-content .contents-menu ul li a .num {
  font-weight: bold;
  font-size: min(1.6666666667vw, 24px);
  line-height: 1;
  color: #00BEEB;
  border-right: 1px solid #00BEEB;
  padding-right: min(0.6944444444vw, 10px);
  margin-right: min(0.6944444444vw, 10px);
}
@media print, screen and (max-width: 767px) {
  .article-content .contents-menu ul li a .num {
    font-size: 4.8vw;
    padding-right: 2.1333333333vw;
    margin-right: 2.1333333333vw;
  }
}
.article-content .contents-menu ul li a .text {
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.6;
}
@media print, screen and (max-width: 767px) {
  .article-content .contents-menu ul li a .text {
    font-size: 3.4666666667vw;
  }
}
.article-content h3 {
  scroll-margin-top: min(2.0833333333vw, 30px);
  font-weight: bold;
  font-size: min(1.9444444444vw, 28px);
  line-height: 1.6;
  color: #003287;
  padding: 0 0 0 min(1.25vw, 18px);
  margin: min(4.1666666667vw, 60px) 0 min(2.0833333333vw, 30px);
  position: relative;
}
@media print, screen and (max-width: 767px) {
  .article-content h3 {
    scroll-margin-top: 6.6666666667vw;
    font-size: 5.3333333333vw;
    padding: 0 0 0 3.2vw;
    margin: 13.3333333333vw 0 5.3333333333vw;
  }
}
.article-content h3::before {
  content: "";
  width: min(0.3472222222vw, 5px);
  height: 100%;
  background: linear-gradient(to bottom, #00BEEB 0%, #00BEEB 50%, #003287 50%, #003287 100%);
  position: absolute;
  top: 0;
  left: 0;
}
@media print, screen and (max-width: 767px) {
  .article-content h3::before {
    width: 0.8vw;
  }
}
.article-content p {
  font-weight: 500;
  font-size: min(1.1111111111vw, 16px);
  line-height: 1.8;
  margin: min(2.0833333333vw, 30px) 0;
}
@media print, screen and (max-width: 767px) {
  .article-content p {
    font-size: 3.7333333333vw;
    margin: 5.3333333333vw 0;
  }
}
.article-content p > span {
  font-weight: bold;
  color: #003287;
}
.article-content p.--right {
  text-align: right;
}
.article-content figure {
  margin: min(2.0833333333vw, 30px) 0;
}
@media print, screen and (max-width: 767px) {
  .article-content figure {
    margin: 5.3333333333vw 0;
  }
}
.article-content figure.--grid {
  display: flex;
  flex-wrap: wrap;
  gap: min(1.3888888889vw, 20px);
}
@media print, screen and (max-width: 767px) {
  .article-content figure.--grid {
    flex-direction: column;
    gap: 2.6666666667vw 0;
  }
}
.article-content figure.--grid picture {
  width: calc((100% - min(1.3888888889vw, 20px)) / 2);
}
@media print, screen and (max-width: 767px) {
  .article-content figure.--grid picture {
    width: 100%;
  }
}
.article-content figure picture {
  display: block;
}
.article-content figure img {
  border-radius: min(2.0833333333vw, 30px);
}
@media print, screen and (max-width: 767px) {
  .article-content figure img {
    border-radius: 2.6666666667vw;
  }
}
.article-content {
  /****	---- end ----
  ===================================****/
}/*# sourceMappingURL=style.css.map */