@charset "utf-8";

/*terms*/
#terms {
  counter-reset: chapter;
}
#terms .wrap {
  counter-reset: article;
}
#terms .section-title {
  margin: 0 0 40px;
}
#terms h2 {
  color: var(--colorGreen);
  font-size: 22px;
  line-height: 1.2em;
  font-weight: 700;
  margin: 0 0 40px;
}
#terms h2:before {
  counter-increment: chapter;
  content: '第 'counter(chapter)' 章 ';
}
#terms h3 {
  font-weight: 700;
  margin: 0 0 15px;
}
#terms h3:before {
  counter-increment: article;
  content: '第 'counter(article)' 条';
}
#terms p {
  font-size: 16px;
  line-height: 1.5em;
  font-weight: 500;
  margin: 0;
}
#terms ul,
#terms ol {
  font-size: 16px;
  line-height: 1.5em;
  font-weight: 500;
}
#terms p + h2,
#terms ul + h2,
#terms ol + h2 {
  margin-top: 60px;
}
#terms p + h3,
#terms ul + h3,
#terms ol + h3 {
  margin-top: 30px;
}
#terms p + p {
  margin-top: 30px;
}
#terms p + ul,
#terms p + ol {
  margin-top: 15px;
}

/*news*/
#news .section-title {
  margin: 0 0 35px;
}
#news .news_list li {
  width: 100%;
}
#news .news_list li a {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 15px;
  width: 100%;
  padding: 30px 0;
  border-bottom: 2px solid var(--colorGreen);
  color: var(--txtColor);
  font-size: 16px;
  line-height: 1.5em;
  font-weight: 500;
  text-decoration: none;
  position: relative;
}
#news .news_list li a:after {
  content: '';
  width: 0;
  height: 2px;
  background: var(--colorPink);
  position: absolute;
  left: 0;
  bottom: -2px;
  transition: .5s;
  z-index: 1;
}
#news .news_list li a:hover {
  opacity: 1;
}
#news .news_list li a:hover:after {
  width: 100%;
}
#news .date {
  color: var(--colorGreen);
}
#news .cat_tag {
  width: 76px;
  text-align: center;
  font-size: 14px;
  line-height: 1.3em;
  font-weight: 900;
  color: #fff;
  padding: 2px 10px;
  background: var(--colorGreen);
}
#news .news_list li a h2 {
  width: 100%;
}
#news.post .btnBox {
  margin-top: 50px;
}
#news.post a.linkBtn {
  max-width: 216px;
}
#news.post .title {
  width: 100%;
  margin: 0 0 50px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--colorGreen);
}
#news.post .title .details {
  gap: 20px;
  margin: 0 0 15px;
}
#news.post .title h1 {
  color: var(--colorGreen);
  font-size: 26px;
  line-height: 1.2em;
  font-weight: 700;
}
#news.post p.lead_txt {
  font-size: 18px;
  line-height: 1.5em;
  font-weight: 500;
  margin: 0 0 50px;
}
#news.post .post_contents {
  width: 100%;
  max-width: 900px;
  padding: 0;
  margin: 0 auto;
}
#news.post .post_contents h2 {
  color: var(--colorGreen);
  font-size: 22px;
  line-height: 1.2em;
  font-weight: 700;
}
#news.post .post_contents p {
  font-size: 16px;
  line-height: 1.5em;
  font-weight: 500;
}
#news.post .post_contents .img {
  width: 100%;
  padding: 0;
}
#news.post .post_contents .img.large img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
#news.post .post_contents .img.medium img {
  width: 100%;
  max-width: 77.778%;
  height: auto;
}
#news.post .post_contents h2 + p,
#news.post .post_contents p + p,
#news.post .post_contents .img + p {
  margin-top: 20px;
}
#news.post .post_contents p + h2,
#news.post .post_contents .img + h2 {
  margin-top: 50px;
}
#news.post .post_contents h2 + .img,
#news.post .post_contents p + .img,
#news.post .post_contents .img + .img {
  margin-top: 50px;
}

/*メンテナンス*/
#news.maintenance .wrap {
  min-height: calc(100svh - 420px);
}
#news.maintenance .btnBox {
  margin-top: 60px;
}


/* ========================================================================================================
   767px以下
   ========================================================================================================*/
@media screen and (max-width: 767px) {
  #terms h2 {
    font-size: 20px;
    margin: 0 0 25px;
  }
  #terms p + h2 {
    margin-top: 40px;
  }
  #terms p + p {
    margin-top: 20px;
  }
  #news .section-title {
    margin: 0 0 20px;
  }
  #news .news_list li a {
    gap: 10px 15px;
    width: 100%;
    padding: 20px 0;
    border-bottom: 1px solid var(--colorGreen);
  }
  #news .news_list li a:after {
    height: 1px;
    bottom: -1px;
  }
  #news.post .post_contents p.lead_txt {
    margin: 0 0 40px;
  }
  #news.maintenance .wrap {
    min-height: inherit;
  }

}
