/*=======================================================
cat
=======================================================*/
.bl_cat {
  background: #d8b787;
  color: #ffffff;
  border-radius: min(2 / 1280 * 100vw, 2px);
  padding: min(2 / 1280 * 100vw, 2px) min(8 / 1280 * 100vw, 8px) min(3 / 1280 * 100vw, 3px);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: min(13 / 1280 * 100vw, 13px);
  line-height: calc(19/13);
  margin-bottom: min(8 / 1280 * 100vw, 8px);
}

@media screen and (max-width: 750px) {
  .bl_cat {
    border-radius: 3px;
    padding: 3px 12px 4.5px;
    font-size: 24px;
    margin-bottom: 12px;
  }
}
/*=======================================================
tag
=======================================================*/
.bl_tag {
  color: #a0a0a0;
  padding-left: 0.6em;
  position: relative;
}
.bl_tag_list {
  display: flex;
  flex-wrap: wrap;
  gap: min(16 / 1280 * 100vw, 16px);
}
.bl_tag_item {
  line-height: calc(21/15);
}
.bl_tag::before {
  position: absolute;
  content: "#";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media screen and (max-width: 750px) {
  .bl_tag_list {
    gap: 24px;
  }
}
/*=======================================================
archive
=======================================================*/
.bl_articles.archive {
  padding-bottom: min(140 / 1280 * 100vw, 140px);
}
.bl_articles.archive .bl_articles_ttl {
  background: #f1f0ec;
  padding: min(14 / 1280 * 100vw, 14px) min(24 / 1280 * 100vw, 24px) min(17 / 1280 * 100vw, 17px);
  font-size: min(17 / 1280 * 100vw, 17px);
  line-height: calc(25/17);
  font-weight: 400;
  margin-bottom: min(32 / 1280 * 100vw, 32px);
  position: relative;
}
.bl_articles.archive .bl_articles_ttl::before {
  position: absolute;
  content: "";
  top: 50%;
  left: min(24 / 1280 * 100vw, 24px);
  transform: translateY(-50%);
}
.bl_articles.archive .bl_articles_ttl_inner {
  padding-inline: 0.6em;
  position: relative;
}
.bl_articles.archive .bl_articles_ttl_inner::before, .bl_articles.archive .bl_articles_ttl_inner::after {
  position: absolute;
  content: "-";
  top: 50%;
  transform: translateY(-50%);
}
.bl_articles.archive .bl_articles_ttl_inner::before {
  left: 0;
}
.bl_articles.archive .bl_articles_ttl_inner::after {
  right: 0;
}
.bl_articles.archive .bl_articles_list {
  display: flex;
  flex-wrap: wrap;
  gap: min(80 / 1280 * 100vw, 80px);
}
.bl_articles.archive .bl_articles_item {
  width: calc((100% - min(80 / 1280 * 100vw, 80px)) / 2);
}
.bl_articles.archive .bl_articles_item .bl_item_imgWrapper {
  display: flex;
  margin-bottom: min(24 / 1280 * 100vw, 24px);
}
.bl_articles.archive .bl_articles_item .bl_item_imgWrapper > img {
  height: min(240 / 1280 * 100vw, 240px);
  object-fit: cover;
}
.bl_articles.archive .bl_articles_item .bl_item_ttl {
  font-size: min(20 / 1280 * 100vw, 20px);
  line-height: calc(32/20);
  font-weight: 700;
  margin-bottom: min(16 / 1280 * 100vw, 16px);
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media screen and (max-width: 750px) {
  .bl_articles.archive {
    padding-bottom: 0;
  }
  .bl_articles.archive .bl_articles_ttl {
    padding: 21px 36px;
    font-size: 28px;
    margin-bottom: 48px;
  }
  .bl_articles.archive .bl_articles_ttl::before {
    left: 36px;
  }
  .bl_articles.archive .bl_articles_list {
    gap: 64px;
  }
  .bl_articles.archive .bl_articles_item {
    width: 100%;
  }
  .bl_articles.archive .bl_articles_item .bl_item_imgWrapper {
    margin-bottom: 36px;
  }
  .bl_articles.archive .bl_articles_item .bl_item_imgWrapper > img {
    height: 388px;
  }
  .bl_articles.archive .bl_articles_item .bl_item_ttl {
    font-size: 30px;
    margin-bottom: 24px;
    -webkit-line-clamp: 3;
  }
}
/*=======================================================
ranking
=======================================================*/
.bl_articles.archive .ranking .bl_articles_ttl {
  padding-left: min(196 / 1280 * 100vw, 196px);
}
.bl_articles.archive .ranking .bl_articles_ttl::before {
  width: min(140 / 1280 * 100vw, 140px);
  height: min(36 / 1280 * 100vw, 36px);
  background: url("../images/common/ttl_deco_ranking.svg") top center/contain no-repeat;
}
.bl_articles.archive .ranking .bl_articles_item .bl_item_imgWrapper {
  position: relative;
}
.bl_articles.archive .ranking .bl_articles_item .bl_item_imgWrapper::before {
  position: absolute;
  content: "";
  width: min(72 / 1280 * 100vw, 72px);
  height: min(72 / 1280 * 100vw, 72px);
  background: url("../images/common/popular_triangle.svg") top center/contain no-repeat;
  top: 0;
  left: 0;
}
.bl_articles.archive .ranking .bl_articles_item .bl_item_imgWrapper::after {
  position: absolute;
  content: "";
  width: min(20 / 1280 * 100vw, 20px);
  height: min(41 / 1280 * 100vw, 41px);
  top: 0;
  left: min(12 / 1280 * 100vw, 12px);
}
.bl_articles.archive .ranking .bl_articles_item:first-of-type .bl_item_imgWrapper::after {
  background: url("../images/common/popular_1.svg") top center/contain no-repeat;
}
.bl_articles.archive .ranking .bl_articles_item:nth-of-type(2) .bl_item_imgWrapper::after {
  background: url("../images/common/popular_2.svg") top center/contain no-repeat;
}
.bl_articles.archive .ranking .bl_articles_item:nth-of-type(3) .bl_item_imgWrapper::after {
  background: url("../images/common/popular_3.svg") top center/contain no-repeat;
}
.bl_articles.archive .ranking .bl_articles_item:nth-of-type(4) .bl_item_imgWrapper::after {
  background: url("../images/common/popular_4.svg") top center/contain no-repeat;
}

@media screen and (max-width: 750px) {
  .bl_articles.archive .ranking .bl_articles_ttl {
    display: flex;
    justify-content: space-between;
    padding-left: 36px;
  }
  .bl_articles.archive .ranking .bl_articles_ttl::before {
    display: block;
    position: relative;
    top: initial;
    left: initial;
    transform: none;
    width: 210px;
    height: 48px;
  }
  .bl_articles.archive .ranking .bl_articles_item .bl_item_imgWrapper::before {
    width: 108px;
    height: 108px;
  }
  .bl_articles.archive .ranking .bl_articles_item .bl_item_imgWrapper::after {
    width: 30px;
    height: 62px;
    left: 18px;
  }
}
/*=======================================================
single
=======================================================*/
.bl_articles.single {
  padding: min(72 / 1280 * 100vw, 72px) 0 min(96 / 1280 * 100vw, 96px);
}
.bl_articles.single #toc_container {
  width: 100%;
  background: #f3f0ec;
  padding: min(24 / 1280 * 100vw, 24px) min(40 / 1280 * 100vw, 40px) min(40 / 1280 * 100vw, 40px);
  margin: min(80 / 1280 * 100vw, 80px) 0;
}
.bl_articles.single #toc_container .toc_title {
  font-size: min(20 / 1280 * 100vw, 20px);
  font-weight: 400;
  color: #b28a50;
  margin-bottom: min(16 / 1280 * 100vw, 16px);
  line-height: calc(29/20);
}
.bl_articles.single #toc_container .toc_list {
  display: grid;
  gap: min(12 / 1280 * 100vw, 12px);
}
.bl_articles.single #toc_container .toc_list li {
  display: flex;
}
.bl_articles.single #toc_container .toc_list li a {
  font-size: min(18 / 1280 * 100vw, 18px);
  line-height: calc(26/18);
  color: #222222;
  text-decoration: none;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.5em;
}
.bl_articles.single #toc_container .toc_list .toc_list {
  display: grid;
  gap: min(8 / 1280 * 100vw, 8px);
}
.bl_articles.single #toc_container .toc_list .toc_list li {
  margin-top: 0;
}
.bl_articles.single #toc_container .toc_list .toc_list li a {
  font-size: min(15 / 1280 * 100vw, 15px);
  line-height: calc(21/15);
  line-height: calc(26/18);
  color: #222222;
  text-decoration: none;
}

@media screen and (max-width: 750px) {
  .bl_articles.single {
    padding: 80px 0 96px;
  }
  .bl_articles.single #toc_container {
    padding: 36px 40px 48px;
    margin: 120px 0;
  }
  .bl_articles.single #toc_container .toc_title {
    font-size: 30px;
    margin-bottom: 24px;
  }
  .bl_articles.single #toc_container .toc_list {
    gap: 12px;
  }
  .bl_articles.single #toc_container .toc_list li a {
    font-size: 28px;
  }
  .bl_articles.single #toc_container .toc_list .toc_list {
    gap: 12px;
  }
  .bl_articles.single #toc_container .toc_list .toc_list li a {
    font-size: 25px;
  }
}
/*=======================================================
pagetop
=======================================================*/
.bl-articles-pagetop {
  display: none;
  max-width: min(1200 / 1280 * 100vw, 1200px);
  width: 100%;
  z-index: 9999;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.bl-articles-pagetop .bl-pagetop-btn {
  position: absolute;
  bottom: min(30 / 1280 * 100vw, 30px);
  right: 0;
  width: min(63 / 1280 * 100vw, 63px);
}

@media screen and (max-width: 750px) {
  .bl-articles-pagetop {
    max-width: 690px;
  }
  .bl-articles-pagetop .bl-pagetop-btn {
    bottom: 30px;
    width: 82px;
  }
}