/* ランキング */
#main_area .block-ranking-r--items {
  justify-content: space-between;
}
#main_area *:focus {
  outline: none;
}
#main_area {
  text-align: left;
  width: 900px;
  margin: 0 auto;
  color: #222;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}

#main_area img {
  max-width: 100%;
}
#main_area p {
  margin: 0;
  padding: 0;
}

#main_area a {
  text-decoration: none;
}

#main_area button {
  background: transparent;
}

.c_block {
  padding: 50px 0;
}

.inner {
  padding: 40px 30px;
}
/* 背景色 */
.c_ranking,
.c_new-arrivals {
background: #FCF9F2;
}

.mt_20 {
margin-top: 20px;
}

.pt_0 {
padding-top: 0;
}

/*hタグ*/
#main_area h1 {
margin: 0;
padding: 5px 0 6px 0;
text-align: center;
font-size: 20px;
font-weight: 700;
color: #fff;
background: #009844;
}

#main_area .section_title {
position: relative;
background: none;
padding: 0 0 0 20px;
margin: 0 0 50px 0;
color: #222;
font-size: 14px;
line-height: 1;
font-weight: 600;
}

#main_area .title_inner {
margin: 0 0 20px 30px;
}

#main_area .section_title span {
display: block;
font-size: 34px;
font-family: "Josefin Sans", sans-serif;
}

#main_area .section_title .txt_jp {
padding-top: 4px;
font-size: 25px;
font-weight: 700;
line-height: 1.3;
font-family: "Noto Sans JP", sans-serif;
}

#main_area .or:before {
content: "";
position: absolute;
top: 50%;
left: 0;
width: 8px;
height: 47px;
transform: translateY(-50%);
background: url("../../../img/usr/genre/rA2/title_or.svg");
background-repeat: no-repeat;
background-size: contain;
}

#main_area .section_title_center {
margin: 0 0 20px;
font-size: 24px;
font-weight: 700;
text-align: center;
}
.link_btn {
  width: 350px;
  display: block;
  margin: 40px auto 70px;
  padding: 20px 40px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  border-radius: 60px;
  color: #fff;
  background: #009844;
  position: relative;
}

.link_btn::after {
  content: "";
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  position: absolute;
  top: 50%;
  right: 27px;
  margin-top: -5px;
  transform: rotate(45deg);
}
/* もっと見るボタン */
.link_more {
  display: block;
  width: 220px;
  margin: 40px auto 0;
  padding: 8px 5px 8px 0;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 60px;
  position: relative;
  background: #fff;
}

.link_more::after {
  content: "";
  width: 6px;
  height: 6px;
  border: 0;
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -3px;
  transform: rotate(45deg);
}

.btn_gr {
  color: #009844;
  border: solid 2px #009844;
}

.btn_gr::after {
  border-top: solid 2px #009844;
  border-right: solid 2px #009844;
}

.btn_or {
  color: #ef8200;
  border: solid 2px #ef8200;
}

.btn_or::after {
  border-top: solid 2px #ef8200;
  border-right: solid 2px #ef8200;
}

/* SP表示 */
@media only screen and (max-width: 780px) {
  #main_area {
      width: 100%;
    }
  
    .c_block {
      padding: 40px 0;
    }
  
    /* hタグ */
    #main_area h1 {
      margin: 0;
      padding: 5px 0 6px 0;
      text-align: center;
      font-size: 16px;
      font-weight: 700;
      color: #fff;
      background: #009844;
    }
  
    #main_area .section_title {
      position: relative;
      background: none;
      padding: 0 0 0 18px;
      margin: 0 12px 25px 12px;
      color: #222;
      font-size: 14px;
      line-height: 1;
      font-weight: 600;
    }
  
    #main_area .section_title span {
      display: block;
      font-size: 28px;
      font-family: "Josefin Sans", sans-serif;
    }
  
    #main_area .section_title .txt_jp {
      padding-top: 0;
      font-size: 20px;
    }
  
    #main_area .or:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      width: 7px;
      height: 42px;
      transform: translateY(-50%);
      background-repeat: no-repeat;
      background-size: contain;
    }
  
    #main_area .section_title_center {
      font-size: 20px;
    }
  
    #main_area .c_category .c_block {
      padding-bottom: 0;
      margin: 10px 0 30px;
    }
    .link_btn {
      width: 80%;
      margin: 30px auto 30px;
    }

/* もっと見るボタン */
.link_more {
  display: block;
  width: 220px;
  margin: 10px auto 0;
}

.pb_0_sp {
  padding-bottom: 0;
}
}


/* ランキング詳細 */
.ranking_tab{
  margin: 0 30px 20px;
}
.ranking_tab_name_list{
  display: flex;
  flex-direction: row;
}
.ranking_tab_name_list{
  gap: 10px;
}
.ranking_tab_name_list li span,
.ranking_tab_name_list li a{
  color: #EF821F;
  font-size: 18px;
  font-weight: bold;
  padding: 20px 20px;
  border: 2px solid #EF8200;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: max-content;
  background: #fff;
  line-height: 1;
}
.ranking_tab_name_list li a.current,
.ranking_tab_name_list li span.current{
  background: #EF821F;
  color: #fff;
}
.ranking_tab_name_list li span:hover,
.ranking_tab_name_list li a:hover{
  opacity: 0.8;
  background: #EF821F;
  color: #fff;
  cursor: pointer;
}
.ranking_tab_name_list li span.total,
.ranking_tab_name_list li a.total{
  color: #21A45B;
  border: 1px solid #21A45B;
}
.ranking_tab_name_list li span.total:hover,
.ranking_tab_name_list li a.total:hover{
  background: #21A45B;;
  color: #fff;
}
.ranking_tab_name_list li span.total.current,
.ranking_tab_name_list li a.total.current{
  background: #21A45B;
  color: #fff;
}
.ranking_tab_name_list li span.total.current:hover,
.ranking_tab_name_list li a.total.current:hover{
  color: #fff;
  background: #21A45B;
}
.block-ranking--scroll-area{
  overflow: auto; 
}
.c_block_inner .c_block_item:nth-child(n+2){
  display: none;
}



.c_ranking{
    overflow: hidden;
  }
  .ranking_tab{
    margin: 0 0 15px 20px;
    padding: 0 0 10px;
    overflow: auto;
  }
  
  .ranking_tab::-webkit-scrollbar {
    height: 3px;
    background: #DDD;
  }

  .ranking_tab::-webkit-scrollbar-thumb {
    background-color: #666;
  }

  .ranking_tab_name{
    padding: 0 20px 0 0;
    width: max-content;
  }
  .ranking_tab_name_list li span.total,
  .ranking_tab_name_list li a.total{
    border: 1px solid #21A45B;
  }
  #main_area .block-ranking-r--items{
    padding-left: 0;
  }
  #main_area #main_area .c_block_inner{
    padding-left: 0;
  }
  .ranking_tab_name_list li span.total.current,
  .ranking_tab_name_list li a.total.current{
    color: #fff;
    background: #21A45B;
  }

@media screen and (max-width: 768px) {
  .ranking_tab_name_list li span, .ranking_tab_name_list li a {
    font-size: 14px;
    padding: 15px 15px;
  }
}