@charset "UTF-8";
/*=======================================================
search
=======================================================*/
.bl_search {
  margin-bottom: 24px;
}
.bl_search_form .bl_form_conts {
  margin-bottom: 24px;
}
.bl_search_form .bl_form_conts .bl_conts_list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px;
}
.bl_search_form .bl_form_conts .bl_conts_item {
  width: 33.3333333333%;
  background: #ffffff;
}
.bl_search_form .bl_form_conts .bl_conts_item:nth-of-type(n + 4) label,
.bl_search_form .bl_form_conts .bl_conts_item:nth-of-type(n + 4) select {
  // border-top: none;
}
.bl_search_form .bl_form_conts .bl_conts_item:nth-of-type(3n + 1) label {
  // border-left: none;
}
.bl_search_form .bl_form_conts .bl_conts_item:nth-of-type(3n + 3) label {
  // border-right: none;
}
.bl_search_form .bl_form_conts .bl_conts_item:not(:nth-of-type(3n + 1)) label,
.bl_search_form .bl_form_conts .bl_conts_item:not(:nth-of-type(3n + 1)) select {
  border-left: none;
}
.bl_search_form .bl_form_conts .bl_conts_item label {
  display: flex;
  align-items: center;
  padding: 0 8px 3px;
  justify-content: center;
  background: #ffffff;
  color: #333333;
  font-weight: 500;
  border: 1px solid #4a90e2;
}
.bl_search_form .bl_form_conts .bl_conts_item select {
  display: block;
  width: 100%;
  padding: 8px 16px 10px;
  border: 1px solid #4a90e2;
  border-top: none;
  position: relative;
  font-size: 14px;
  background: url("../images/top/application_search_form/select_arrow.png") center right 16px/18px 18px no-repeat;
  font-family: "noto-sans-jp", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.bl_search .bl_form_btn {
  width: 264px;
  height: 48px;
  gap: 8px;
  padding-left: 14px;
  margin: 0 auto;
}
.bl_search .bl_form_btn::after {
  content: "";
  background: url("../images/top/application_search_form/search_btn_ico.svg") top center/contain no-repeat;
  width: 28px;
  height: 28px;
}
.bl_search_result {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 32px;
}

@media screen and (max-width: 750px) {
  .bl_search {
    margin-bottom: 4.2666666667vw;
  }
  .bl_search_form .bl_form_conts {
    margin-bottom: 4.2666666667vw;
  }
  .bl_search_form .bl_form_conts .bl_conts_list {
    row-gap: 1.6vw;
  }
  .bl_search_form .bl_form_conts .bl_conts_item label {
    padding: 0 1.6vw 0.5333333333vw;
    border-width: 0.2666666667vw;
    font-size: 3.2vw;
  }
  .bl_search_form .bl_form_conts .bl_conts_item select {
    font-size: 2.6666666667vw;
    padding: 1.6vw 2.1333333333vw 2vw;
    border-width: 0.2666666667vw;
    background: url("../images/top/application_search_form/select_arrow.png") center right 1.6vw/3.2vw 3.2vw no-repeat;
  }
  .bl_search .bl_form_btn {
    width: 52.8vw;
    height: 8.5333333333vw;
    gap: 1.6vw;
    padding-left: 2.8vw;
  }
  .bl_search .bl_form_btn::after {
    width: 5.6vw;
    height: 5.6vw;
  }
  .bl_search_result {
    font-size: 4vw;
    margin-bottom: 6.4vw;
  }
}
/*=======================================================
ranking
=======================================================*/
.bl_ranking {
  position: relative;
  padding-top: 24px;
  background: #fff;
}
.bl_ranking_ttl {
  background: #074aad;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8px 16px 11px;
  margin-bottom: 24px;
}
.bl_ranking .bl_bnr_btn {
  width: 560px;
  height: 40px;
}
.bl_ranking .ly_cont_inner {
  padding: 0 0 64px;
}
.bl_ranking .el_sec_mainTtl {
  margin: 16px 0;
  background: #4a90e2;
  color: #ffffff;
  padding: 8px 16px;
  font-size: 20px;
}
.bl_ranking_list {
  display: flex;
  flex-direction: column;
  gap: 40px;
  background-color: #fff;
}
.bl_ranking_item {
  width: 100%;
  padding: 12px 24px 32px;
  border: 2px solid #4a90e2;
  border-radius: 6px;
}
.bl_ranking_item .bl_item_ttlWrapper {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding-bottom: 8px;
  margin-bottom: 24px;
  border-bottom: 1px solid #074aad;
  width: 100%;
}
.bl_ranking_item .bl_item_name {
  font-size: 24px;
  font-weight: 700;
  color: #333333;
  flex: 1;
}
.bl_ranking_item .bl_item_head .bl_media {
  gap: 24px;
  margin-bottom: 24px;
}
.bl_ranking_item .bl_item_head .bl_media_imgWrapper {
  flex: 0 1 120px;
  position: relative;
}
.bl_ranking_item .bl_item_head .bl_media_imgWrapper > img {
  border-radius: 13px;
}
.bl_ranking_item .bl_item_head .bl_media_body .bl_rate {
  display: flex;
  gap: 0;
  margin-bottom: 8px;
  font-size: 14px;
}
.bl_ranking_item .bl_item_head .bl_media_body .bl_rate::before {
  content: "★★★★★★★★★★";
  color: #ffa500;
}
.bl_ranking_item .bl_item_head .bl_media_body .bl_category_list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.bl_ranking_item .bl_item_head .bl_media_body .bl_category_item {
  background: #f5f5f5;
  color: #333333;
  font-weight: 400;
  padding: 0 3px 3px;
}
.bl_ranking_item .bl_item_body > video:first-of-type,
.bl_ranking_item .bl_item_body > img:first-of-type {
  margin-bottom: 24px;
}
.bl_ranking_item .bl_item_body .bl_body_ttl {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 16px;
  border-bottom: 1px solid #4a90e2;
  padding: 0 0 8px 16px;
  position: relative;
}
.bl_ranking_item .bl_item_body .bl_body_ttl::before {
  position: absolute;
  content: "";
  width: 4px;
  height: calc(100% - 8px);
  background: #4a90e2;
  top: 0px;
  left: 0;
}
.bl_ranking_item .bl_item_body .bl_body_def {
  display: flex;
  border: 1px solid #074aad;
  margin-bottom: 24px;
}
.bl_ranking_item .bl_item_body .bl_body_def > div {
  display: flex;
  width: 50%;
}
.bl_ranking_item .bl_item_body .bl_body_def > div > dt {
  padding: 4px 8px 7px;
  width: 50%;
  text-align: center;
  background: #074aad;
  color: #fff;
  font-weight: 700;
}
.bl_ranking_item .bl_item_body .bl_body_def > div > dd {
  width: 50%;
  text-align: center;
  padding: 4px 8px 7px;
}
.bl_ranking_item .bl_item_body .bl_body_main {
  display: block;
  margin-bottom: 24px;
}
.bl_ranking_item .bl_item_body .bl_body_sub {
  display: block;
  margin-bottom: 32px;
}
.bl_ranking_item .bl_item_body .bl_recommend {
  padding: 16px 16px 24px;
  margin-bottom: 32px;
  color: #333333;
  border-radius: 6px;
  border: 1px solid #4a90e2;
}
.bl_ranking_item .bl_item_body .bl_recommend_ttl {
  font-size: 20px;
  font-weight: 700;
  color: #333333;
  margin-bottom: 12px;
  text-align: center;
  padding-bottom: 9px;
  border-bottom: 1px solid #4a90e2;
}
.bl_ranking_item .bl_item_body .bl_recommend .bl_bulletList {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.bl_ranking_item .bl_item_body .bl_sub_list {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-bottom: 32px;
}
.bl_ranking_item .bl_item_body .bl_sub_item {
  display: flex;
}
.bl_ranking_item .bl_item_body .bl_download_list {
  display: flex;
  gap: 16px;
}
.bl_ranking_item .bl_item_body .bl_download_list:not(:last-of-type) {
  margin-bottom: 32px;
}
.bl_ranking_item .bl_item_body .bl_download_item {
  width: calc((100% - 16px) / 2);
}
.bl_ranking_item .bl_item_body .bl_message {
  margin-bottom: 32px;
}
.bl_ranking_item .bl_item_body .bl_message_ttl {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 16px;
  color: #4a90e2;
  border-bottom: 2px solid #4a90e2;
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 8px 16px 11px;
}
.bl_ranking_item .bl_item_body .bl_message_ttl::before {
  content: "";
  width: 32px;
  height: 32px;
  background: url("../images/top/message/message_voice.png") top center/contain no-repeat;
}
.bl_ranking_item .bl_item_body .bl_message_list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.bl_ranking_item .bl_item_body .bl_message_item {
  padding: 16px 16px 24px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgb(0, 0, 0, 0.25);
}
.bl_ranking_item .bl_item_body .bl_message_item .bl_item_ttl {
  color: #333333;
  font-weight: 500;
  position: relative;
  margin-bottom: 4px;
  border-bottom: 1px solid #4a90e2;
  padding: 2px 0 9px 40px;
}
.bl_ranking_item .bl_item_body .bl_message_item .bl_item_ttl::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 32px;
  height: 32px;
  background: url("../images/top/message/message_people.svg") top center/contain no-repeat;
}
.bl_ranking_item .bl_item_body .bl_message_item .bl_item_txt {
  padding-top: 25px;
  position: relative;
}
.bl_ranking_item .bl_item_body .bl_message_item .bl_item_txt::before {
  position: absolute;
  content: "★★★★★";
  color: #ffa500;
  top: 0;
  left: 0;
}
.bl_ranking_item .bl_item_body .bl_pickup_txt {
  background: #f5f5f5;
  color: #333333;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  padding: 8px 16px 11px;
  margin-bottom: 5px;
  border-radius: 4px;
}
.bl_ranking .bl_notResult_ttl {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  .bl_ranking_ttl {
    font-size: 3.2vw;
    padding: 1.0666666667vw 2.1333333333vw 1.4666666667vw;
    margin-bottom: 3.2vw;
  }
  .bl_ranking .bl_bnr_btn {
    width: 92vw;
    height: 8.5333333333vw;
  }
  .bl_ranking .ly_cont_inner {
    padding: 0 0 12.8vw;
  }
  .bl_ranking .el_sec_mainTtl {
    margin: 3.2vw 0;
    padding: 1.0666666667vw 3.2vw 1.8666666667vw;
    font-size: 3.7333333333vw;
  }
  .bl_ranking_list {
    gap: 10.6666666667vw;
  }
  .bl_ranking_item {
    padding: 3.2vw 4.2666666667vw 6.4vw;
  }
  .bl_ranking_item .bl_item_ttlWrapper {
    gap: 3.2vw;
    padding-bottom: 1.6vw;
    margin-bottom: 4.8vw;
    border-width: 0.2666666667vw;
  }
  .bl_ranking_item .bl_item_name {
    font-size: 4.2666666667vw;
  }
  .bl_ranking_item .bl_item_head .bl_media {
    gap: 4.8vw;
    margin-bottom: 4.8vw;
  }
  .bl_ranking_item .bl_item_head .bl_media_imgWrapper {
    flex: 0 1 24vw;
    position: relative;
  }
  .bl_ranking_item .bl_item_head .bl_media_popup {
    position: absolute;
    top: -6vw;
    right: -6vw;
    width: 12vw;
    height: 12vw;
  }
  .bl_ranking_item .bl_item_head .bl_media_body .bl_rate {
    font-size: 2.9333333333vw;
    margin-bottom: 1.6vw;
  }
  .bl_ranking_item .bl_item_head .bl_media_body .bl_category_list {
    gap: 1.6vw;
  }
  .bl_ranking_item .bl_item_head .bl_media_body .bl_category_item {
    border-width: 2px;
    font-size: 3.2vw;
    padding: 0 1.6vw 0.5333333333vw;
  }
  .bl_ranking_item .bl_item_body > video:first-of-type,
  .bl_ranking_item .bl_item_body > img:first-of-type {
    margin-bottom: 4.8vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_ttl {
    padding: 0 0 1.6vw 3.2vw;
    border-width: 0.2666666667vw;
    font-size: 4vw;
    margin-bottom: 3.2vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_ttl::before {
    width: 0.8vw;
    height: calc(100% - 1.6vw);
  }
  .bl_ranking_item .bl_item_body .bl_body_def {
    border-width: 0.2666666667vw;
    margin-bottom: 4.8vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_def > div > dt {
    padding: 0.8vw 1.6vw 1.3333333333vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_def > div > dd {
    padding: 0.8vw 1.6vw 1.3333333333vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_main {
    margin-bottom: 4.8vw;
  }
  .bl_ranking_item .bl_item_body .bl_body_sub {
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_recommend {
    padding: 3.2vw 3.2vw 4.2666666667vw;
    margin-bottom: 6.4vw;
    border-width: 2px;
  }
  .bl_ranking_item .bl_item_body .bl_recommend_ttl {
    font-size: 3.7333333333vw;
    margin-bottom: 2.1333333333vw;
    padding-bottom: 1.8666666667vw;
    border-width: 2px;
  }
  .bl_ranking_item .bl_item_body .bl_recommend .bl_bulletList {
    gap: 0.8vw;
  }
  .bl_ranking_item .bl_item_body .bl_sub_list {
    gap: 1.6vw;
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_sub_listWrapper {
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_sub_list:has(> :nth-child(4)) {
    width: 160%;
    margin-bottom: 0;
  }
  .bl_ranking_item .bl_item_body .bl_sub_list:has(> :nth-child(4)) .bl_sub_item {
    min-width: calc((100% - 36px) / 10 * 2.8);
  }
  .bl_ranking_item .bl_item_body .bl_download_list {
    gap: 3.2vw;
  }
  .bl_ranking_item .bl_item_body .bl_download_list:not(:last-of-type) {
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_download_item {
    width: calc((100% - 3.2vw) / 2);
  }
  .bl_ranking_item .bl_item_body .bl_message {
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_ttl {
    font-size: 4vw;
    margin-bottom: 3.2vw;
    border-width: 0.2666666667vw;
    gap: 1.6vw;
    padding: 1.0666666667vw 2.1333333333vw 1.4666666667vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_ttl::before {
    width: 6.4vw;
    height: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_item {
    padding: 2.1333333333vw 2.1333333333vw 3.2vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_item .bl_item_ttl {
    margin-bottom: 0.8vw;
    border-width: 0.2666666667vw;
    padding: 0.4vw 0 1.6vw 8vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_item .bl_item_ttl::before {
    width: 6.4vw;
    height: 6.4vw;
  }
  .bl_ranking_item .bl_item_body .bl_message_item .bl_item_txt {
    padding-top: 5.6vw;
  }
  .bl_ranking_item .bl_item_body .bl_pickup_txt {
    border-width: 0.2666666667vw;
    margin: 0 auto 1.2vw;
    font-size: 3.2vw;
    padding-bottom: 0.6vw;
  }
  .bl_ranking .bl_notResult_ttl {
    font-size: 4vw;
  }
}
/*=======================================================
application
=======================================================*/
.bl_application {
  background: #fff;
  margin: 40px auto 0;
  padding: 24px 24px 32px;
}
.bl_application .el_sec_mainTtl {
  font-size: 24px;
  font-weight: 700;
  color: #4a90e2;
  margin-bottom: 24px;
}
.bl_application_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.bl_application_item {
  width: calc((100% - 32px) / 5);
}
.bl_application_item > a > img {
  border-radius: 13px;
}

@media screen and (max-width: 750px) {
  .bl_application {
    margin: 8.5333333333vw auto 0;
    padding: 4.2666666667vw 4.2666666667vw 6.4vw;
  }
  .bl_application .el_sec_mainTtl {
    font-size: 4vw;
    margin-bottom: 4.8vw;
  }
  .bl_application_list {
    gap: 1.6vw;
  }
  .bl_application_item {
    width: calc((100% - 6.4vw) / 5);
  }
}
/*=======================================================
メイン動画リスト
=======================================================*/
.bl_ranking_item .bl_main_list {
  display: flex;
  flex-direction: column;
  margin-bottom: 24px;
}
.bl_ranking_item .bl_main_item {
  display: flex;
}

@media screen and (max-width: 750px) {
  .bl_ranking_item .bl_main_list {
    margin-bottom: 3.2vw;
  }
}
/*=======================================================
グラフ
=======================================================*/
.bl_ranking_item .bl_graph {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 32px;
}
.bl_ranking_item .bl_graph div {
  display: flex;
  background: #ccc;
}
.bl_ranking_item .bl_graph div dt {
  background: #074aad;
  flex: 0 1 132px;
  color: #fff;
  font-weight: 700;
  display: flex;
  align-items: center;
  padding: 4px 12px 7px;
}
.bl_ranking_item .bl_graph div dd {
  position: relative;
  flex: 1;
}
.bl_ranking_item .bl_graph div dd .bl_graph_color {
  display: block;
  height: 100%;
  background-color: #add8e6;
}
.bl_ranking_item .bl_graph div dd .bl_graph_num {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  .bl_ranking_item .bl_graph {
    gap: 3.2vw;
    margin-bottom: 6.4vw;
  }
  .bl_ranking_item .bl_graph div dt {
    flex: 0 1 27.7333333333vw;
    padding: 0.6666666667vw 2.1333333333vw 1.3333333333vw;
  }
  .bl_ranking_item .bl_graph div dd .bl_graph_num {
    right: 3.2vw;
  }
}
/*=======================================================
無料でダウンロードボタン
=======================================================*/
.bl_ranking_item .bl_my_download_btn {
  width: 100%;
  height: 48px;
  margin: 0 auto 16px;
  position: relative;
  text-decoration: none;
  outline: none;
  overflow: hidden;
  gap: 12px;
}
.bl_ranking_item .bl_my_download_btn::before {
  content: "";
  /*絶対配置でキラッと光るの位置を決める*/
  position: absolute;
  top: 0;
  left: -75%;
  /*キラッと光る形状*/
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-25deg);
  animation: shine 4.5s infinite;
}
.bl_ranking_item .bl_my_download_btn::after {
  content: "";
  margin-top: 2px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  border-color: transparent transparent transparent #fff;
}

@keyframes shine {
  67% {
    left: -75%;
  }
  100% {
    left: 125%;
  }
}
@media screen and (max-width: 750px) {
  .bl_ranking_item .bl_my_download_btn {
    height: 8.5333333333vw;
    margin: 0 auto 3.2vw;
    gap: 2.4vw;
  }
  .bl_ranking_item .bl_my_download_btn::after {
    margin-top: 0.4vw;
    border-width: 1.2vw 0 1.2vw 2vw;
  }
}
/*=======================================================
説明文_詳しく見る
=======================================================*/
.bl_body_content {
  height: 17px;
  overflow: hidden;
}
.bl_body_contentWrapper {
  overflow: hidden;
  margin-bottom: 24px;
}
.bl_body_contentWrapper.active .bl_body_content {
  height: auto;
}
.bl_body_contentWrapper.active .bl_body_content_btn::after {
  border-width: 0 6px 10px 6px;
  border-color: transparent transparent #074aad transparent;
}
.bl_body_content_btn {
  cursor: pointer;
  border-bottom: 1px solid #074aad;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px auto 0;
}
.bl_body_content_btn::after {
  margin-top: 2px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 6px 0 6px;
  border-color: #074aad transparent transparent transparent;
}

@media screen and (max-width: 750px) {
  .bl_body_content {
    height: 3.3333333333vw;
  }
  .bl_body_contentWrapper {
    margin-bottom: 4.8vw;
  }
  .bl_body_contentWrapper.active .bl_body_content_btn::after {
    border-width: 0 1.2vw 2vw 1.2vw;
  }
  .bl_body_content_btn {
    border-width: 0.2666666667vw;
    gap: 1.6vw;
    margin: 3.2vw auto 0;
  }
  .bl_body_content_btn::after {
    margin-top: 0.4vw;
    border-width: 2vw 1.2vw 0 1.2vw;
  }
}