﻿.faq_header {
  border-bottom: #d7d7d7 solid 1px;
  padding-bottom: 10px;
}

@media all and (max-width: 767px) {
  .faq_header {
    padding-bottom: 1.3333vw;
    border: none;
  }
}

.faq_header .h_title {
  text-align: center;
  font-weight: bold;
  font-size: 30px;
  line-height: 1;
  margin: 65px 0 50px 0;
  margin-top: 38px;
  margin-bottom: 0;
}
.faq_header .h_title .sub {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 16px;
  display: block;
}

@media all and (max-width: 767px) {
  .faq_header .h_title {
    font-size: 5.6vw;
    margin: 10vw 0 6.6667vw 0;
    margin-top: 9.3333vw;
  }
  .faq_header .h_title .sub {
    font-size: 3.7333vw;
    margin-bottom: 3.3333vw;
  }
}

.faq_header .page_description {
  margin-top: 20px;
  margin-bottom: 20px;
}

@media all and (max-width: 767px) {
  .faq_header .page_description {
    margin-top: 4vw;
    margin-bottom: 4vw;
  }
}

.faq_detail {
  margin-top: 10px;
  width: 840px;
  padding-left: 40px;
}

@media all and (max-width: 767px) {
  .faq_detail {
    margin: 4vw 4.6667vw 0 4.6667vw;
    padding: 0;
    width: auto;
  }
}

.faq_detail .title {
  padding: 30px 0 0 0;
  text-align: center;
}

@media all and (max-width: 767px) {
  .faq_detail .title {
    padding: 4vw 0 0 0;
  }
}

.faq_detail .title .subtitle {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}

@media all and (max-width: 767px) {
  .faq_detail .title .subtitle {
    font-size: 4vw;
    margin-bottom: 3vw;
  }
}

.faq_detail .title .h_title {
  font-size: 30px;
  font-weight: bold;
}

@media all and (max-width: 767px) {
  .faq_detail .title .h_title {
    font-size: 5.6vw;
  }
}

.faq_detail .title .h_title img {
  vertical-align: middle;
  margin-right: 15px;
  margin-bottom: 6px;
  width: 46px;
  height: 46px;
}

@media all and (max-width: 767px) {
  .faq_detail .title .h_title img {
    width: 7.4667vw;
    height: 7.4667vw;
    margin-right: 2vw;
    margin-bottom: 0.8vw;
  }
}

.faq_detail .detail {
  margin: 40px 0 60px 0;
}

@media all and (max-width: 767px) {
  .faq_detail .detail {
    margin: 8vw 0 10.6667vw 0;
  }
}

.faq_detail .detail h1.question {
  background-color: #f8f1e4;
  padding: 25px 25px 25px 90px;
  font-weight: bold;
  font-size: 20px;
  border-radius: 4px;
  -webkit-box-shadow: 0 2px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.2);
  line-height: 1.5;
  position: relative;
}

@media all and (max-width: 767px) {
  .faq_detail .detail h1.question {
    padding: 4.6667vw 4.6667vw 4.6667vw 14.6667vw;
    font-size: 3.6vw;
    border-radius: 0.8vw;
    -webkit-box-shadow: 0 0.25vw 0.5333vw rgba(0, 0, 0, 0.2);
    box-shadow: 0 0.25vw 0.5333vw rgba(0, 0, 0, 0.2);
    line-height: 1.8;
  }
}

.faq_detail .detail h1.question::before {
  content: "";
  position: absolute;
  background-image: url("/st-template/img/icon_q.png");
  width: 32px;
  height: 32px;
  background-size: 100% 100%;
  left: 35px;
  top: 50%;
  margin-top: -16px;
}

@media all and (max-width: 767px) {
  .faq_detail .detail h1.question::before {
    width: 6.4vw;
    height: 6.4vw;
    left: 5.3333vw;
    margin-top: -3.2vw;
  }
}

.faq_detail .detail .answer {
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  padding: 30px 35px 15px 85px;
  margin-top: 50px;
  font-size: 14px;
  font-weight: 400;
  color: #3C3C3C;
  position: relative;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer {
    margin-top: 6.6667vw;
    padding: 4.6667vw 4.6667vw 4.6667vw 14.6667vw;
  }
}

.faq_detail .detail .answer::before {
  content: "";
  position: absolute;
  background-image: url("/st-template/img/icon_a.png");
  width: 32px;
  height: 32px;
  background-size: 100% 100%;
  left: 35px;
  top: 40px;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer::before {
    left: 5.3333vw;
    top: 5.3333vw;
    width: 6.4vw;
    height: 6.4vw;
  }
}

.faq_detail .detail .answer .description {
  margin: 0;
  padding: 0;
}

.faq_detail .detail .answer .description.alone {
  margin-bottom: 30px;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .description.alone {
    margin-bottom: 5.3333vw;
  }
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .description {
    font-size: 3.6vw;
  }
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .info {
    margin-top: 3.3333vw;
    font-size: 3.6vw;
  }
}

.faq_detail .detail .answer .info .img {
  text-align: center;
  margin-bottom: 30px;
  margin-right: auto;
  margin-left: auto;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .info .img {
    margin-bottom: 2.6667vw;
  }
}

.faq_detail .detail .answer .info .img img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.faq_detail .detail .answer .info ul {
  margin-top: 25px;
}

.faq_detail .detail .answer .info ul li {
  line-height: 180%;
  margin-bottom: 10px;
}

.faq_detail .detail .answer .tags {
  list-style: none;
  padding: 25px 0 10px 20px;
  margin: 0 0 0 -50px;
  border-top: solid 1px #d7d7d7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .tags {
    padding: 8vw 0 2.6667vw 6.6667vw;
    margin: 0 0 0 -9.3333vw;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.faq_detail .detail .answer .tags::before {
  content: "";
  position: absolute;
  left: 0;
  top: 30px;
  width: 20px;
  height: 20px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-image: url("../st-img/tag_icon.png");
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .tags::before {
    top: 9.1vw;
    width: 5.0667vw;
    height: 5.0667vw;
  }
}

.faq_detail .detail .answer .tags > li {
  padding: 4px 12px;
  margin: 5px;
  display: block;
  border: #dedede solid 1px;
  border-radius: 3px;
  line-height: 1;
  font-size: 12px;
  cursor: pointer;
}

.faq_detail .detail .answer .tags > li:hover {
  opacity: 0.7;
}

@media all and (max-width: 767px) {
  .faq_detail .detail .answer .tags > li {
    font-size: 2.9333vw;
    margin: 0.9333vw;
    border-width: 0.2667vw;
    padding: 0.8vw 3.0667vw;
    border-radius: 0.5333vw;
  }
}

.faq_detail .detail .answer .tags > li::before {
  content: "#";
  position: relative;
  width: auto;
  height: auto;
  left: auto;
  top: auto;
  margin: 0;
  padding: 0;
}

@media all and (min-width: 768px) {
  .faq_detail .detail .fixIllust {
    max-width: 300px;
    height: auto;
  }

  .faq_detail .detail .fixIllust400 {
    max-width: 400px;
    height: auto;
  }
}

.faq_detail .products {
  margin-bottom: 0;
  border-bottom: none;
}

@media all and (min-width: 768px) {
  .faq_detail .products {
    width: 100%;
  }

  .faq_detail .products .products_items {
    width: 100%;
    margin-bottom: -30px;
  }

  .faq_detail .products .products_items .products_item {
    width: 240px;
    margin-right: 40px;
  }

  .faq_detail .products .products_items .products_item:nth-child(3n) {
    margin-right: 0;
  }
}

.faq_detail .items.questions {
  padding: 0;
  width: 100%;
}

.faq_detail .items.questions .title {
  text-align: left;
}

@media all and (min-width: 768px) {
  .faq_top.on_index .faq_menu_footer {
    display: none;
  }
}

@media all and (max-width: 767px) {
  .faq_menu_footer {
    padding: 4vw 0 4vw;
  }
}

.faq_menu_footer h2 {
  border-top: solid 1px #e4e4e4;
  width: 100%;
  font-size: 24px;
  font-weight: bold;
  margin: 50px auto 40px auto;
  padding-top: 20px;
  position: relative;
  line-height: 1;
}

@media all and (max-width: 767px) {
  .faq_menu_footer h2 {
    width: auto;
    font-size: 4.8vw;
    padding-top: 5.3333vw;
    margin: 6.6667vw auto;
  }
}

.faq_menu_footer h2::before {
  content: "";
  position: absolute;
  background-color: white;
  width: 51px;
  height: 3px;
  left: 0;
  top: -1.8px;
}

@media all and (max-width: 767px) {
  .faq_menu_footer h2::before {
    width: 8.25vw;
    height: 0.5333vw;
    top: -0.2667vw;
  }
}

.faq_menu_footer h2::after {
  content: "";
  position: absolute;
  background-image: url("/st-template/img/h2.png");
  background-size: 100% 100%;
  width: 50px;
  height: 3px;
  left: 0;
  top: -1.8px;
}

@media all and (max-width: 767px) {
  .faq_menu_footer h2::after {
    width: 8vw;
    height: 0.5333vw;
    top: -0.4667vw;
  }
}

@media all and (max-width: 767px) {
  .faq_menu_footer_tags {
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto;
  }
}

.faq_menu_footer_tags .faq_tags {
  margin-bottom: 0;
}

@media all and (max-width: 767px) {
  .faq_menu_footer_tags .faq_tags {
    margin-left: 0;
    margin-right: 0;
  }
}

.faq_menu_footer_tags .more {
  display: inline-block;
  font-size: 12px;
  line-height: 14px;
  color: #3c3c3c;
  font-weight: 400;
  margin-top: 15px;
}

@media all and (max-width: 767px) {
  .faq_menu_footer_tags .more {
    font-size: 2.9333vw;
    line-height: 3.2vw;
    margin-top: 4vw;
    margin-bottom: 1.3333vw;
  }
}

.faq_menu_footer_tags .more:hover {
  opacity: 1;
  text-decoration: underline;
}

@media all and (min-width: 768px) {
  .faq_menu_footer_categories {
    display: none;
  }
}

@media all and (max-width: 767px) {
  .faq_menu_footer_categories {
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 13.3333vw;
    padding-top: 5.3333vw;
    position: relative;
  }

  .faq_menu_footer_categories::before {
    content: "";
    position: absolute;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    left: -5.3333vw;
    width: 100vw;
    top: 0;
    border-top: 0.1333vw solid #f14861;
    border-bottom: 0.1333vw solid #ed1a3a;
    -webkit-box-shadow: 0 0.1333vw 0 #fbd1d8;
    box-shadow: 0 0.1333vw 0 #fbd1d8;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 8vw;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item {
    width: 43.7333vw;
    padding: 4vw 0;
    border-bottom: solid 0.2667vw #d7d7d7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item:nth-child(1),
  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item:nth-child(2) {
    border-top: solid 0.2667vw #d7d7d7;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item:nth-child(odd) {
    margin-right: 2.9333vw;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item::before {
    content: none;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item img {
    width: 13.3333vw;
    height: auto;
    border: solid 0.2667vw #d7d7d7;
    margin-right: 2.6667vw;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item .text {
    width: 20vw;
    font-size: 3.2vw;
    line-height: 5.0667vw;
    font-weight: 400;
  }

  .faq_menu_footer_categories .faq_menu_footer_categories_list .faq_menu_footer_categories_list_item .text .group {
    display: inline-block;
  }
}

@media all and (max-width: 767px) {
  .faq_menu_footer_articles {
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto;
  }
}

.faq_menu_footer_button.buttons {
  border-top: #e4e4e4 1px solid;
  padding-top: 45px;
  margin-top: 40px;
}

@media all and (max-width: 767px) {
  .faq_menu_footer_button.buttons {
    padding-top: 0;
    border-top: none;
    width: 90.4vw;
    margin-right: auto;
    margin-left: auto;
    margin-top: 8vw;
  }
}

main .faq_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

@media all and (max-width: 767px) {
  main .faq_top {
    display: block;
  }
}

main .faq_top::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 50%;
  margin-right: 280px;
  background-color: #f9f9f9;
}

@media all and (max-width: 767px) {
  main .faq_top::before {
    content: none;
  }
}

main .faq_top .tag_title {
  font-size: 24px;
  line-height: 34px;
  font-weight: bold;
  padding: 0 0 0 40px;
  margin-top: 60px;
  text-align: left;
  position: relative;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_title {
    font-size: 4.8vw;
    line-height: 4.5333vw;
    padding: 0 0 0 4.6667vw;
    margin-top: 8vw;
  }
}

@media all and (max-width: 767px) {
  main .faq_top .tag_title .text {
    width: 70vw;
    line-height: 1.5;
    display: block;
  }
}

main .faq_top .tag_title .reset {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -6px;
  line-height: 12px;
  height: 12px;
  font-size: 12px;
  font-weight: 400;
  padding-left: 18px;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_title .reset {
    margin-top: -1.4667vw;
    line-height: 2.9333vw;
    height: 2.9333vw;
    font-size: 2.9333vw;
    right: 4.6667vw;
  }
}

main .faq_top .tag_title .reset::before {
  content: "";
  width: 12px;
  height: 12px;
  left: 0;
  top: 50%;
  margin-top: -6px;
  background-image: url("../st-img/cate_cancel.png");
  background-size: 100% 100%;
  position: absolute;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_title .reset::before {
    width: 2.9333vw;
    height: 2.9333vw;
    margin-top: -1.4667vw;
  }
}

main .faq_top .items {
  width: 840px;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 40px 0 0 40px;
}

@media all and (max-width: 767px) {
  main .faq_top .items {
    width: 90.4vw;
    margin: 8vw auto 5.3333vw;
    padding: 0;
    display: block;
  }
}

main .faq_top .items .item {
  margin: 0;
}

main .faq_top .items .item .q {
  margin: 0 0 20px 0;
  padding: 30px 0 0 0;
  height: auto;
  position: relative;
}

main .faq_top .items .item .q::before {
  content: none;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q {
    margin: 0 0 4.6667vw 0;
    padding: 10vw 5.3333vw 3.3333vw 0;
  }
}

main .faq_top .items .item .q .category {
  position: absolute;
  left: 34px;
  top: 0;
  background-color: #e5e5e5;
  min-width: 170px;
  border-radius: 0 0 4px 4px;
  text-align: center;
  font-weight: 400;
  color: #3c3c3c;
  font-size: 14px;
  height: 30px;
  line-height: 26px;
  border: solid 1px;
  border-color: #eaeaea #dedede #b4b2b0 #dedede;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q .category {
    left: 4vw;
    min-width: 36.4vw;
    border-radius: 0 0 1.3333vw 1.3333vw;
    font-size: 3.4667vw;
    height: 6.6667vw;
    line-height: 6.6667vw;
  }
}

main .faq_top .items .item .q .title {
  position: relative;
  padding: 0 0 0 70px;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q .title {
    padding-left: 12.6667vw;
  }
}

main .faq_top .items .item .q .title::before {
  content: "";
  position: absolute;
  background-image: url(../../../st-template/img/icon_q.png);
  width: 29px;
  height: 29px;
  background-size: 100% 100%;
  left: 34px;
  top: 50%;
  margin-top: -14.5px;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q .title::before {
    width: 6.4vw;
    height: 6.4vw;
    left: 4vw;
  }
}

main .faq_top .items .item .q .tags {
  position: absolute;
  top: 12px;
  right: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q .tags {
    position: relative;
    top: auto;
    right: auto;
    padding-left: 10.6667vw;
    margin-top: 2.6667vw;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  main .faq_top .items .item .q .tags::before {
    content: "";
    position: absolute;
    left: 4vw;
    top: 0.9333vw;
    width: 5.0667vw;
    height: 5.0667vw;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-image: url("../st-img/tag_icon_gray.png");
  }
}

main .faq_top .items .item .q .tags.colored::before {
  background-image: url("../st-img/tag_icon.png");
}

main .faq_top .items .item .q .tags > .tag {
  padding: 4px 12px;
  margin: 5px;
  display: block;
  border: #b4b3b2 solid 1px;
  border-radius: 3px;
  line-height: 1;
  font-size: 12px;
  font-weight: normal;
  color: #3C3C3C;
}

@media all and (max-width: 767px) {
  main .faq_top .items .item .q .tags > .tag {
    padding: 0.8vw 3.3333vw;
    margin: 0.9333vw;
    font-size: 2.9333vw;
    border-width: 0.2667vw;
  }
}

main .faq_top .items .item .q .tags > .tag::before {
  content: "#";
  position: relative;
  width: auto;
  height: auto;
  left: auto;
  top: auto;
  margin: 0;
  padding: 0;
}

main .faq_top .paginate_root {
  text-align: center;
}

main .faq_top .paginate_index {
  display: inline-block;
  height: 26px;
  position: relative;
  margin: 40px auto 80px auto;
  padding: 0 100px;
}

@media all and (max-width: 767px) {
  main .faq_top .paginate_index {
    width: 90.4vw;
    height: 4.2667vw;
    margin: 5.3333vw auto 12vw;
    padding: 0;
  }
}

main .faq_top .paginate_index .prev {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  cursor: pointer;
  display: none;
}

main .faq_top .paginate_index .prev img {
  height: 100%;
  width: auto;
}

main .faq_top .paginate_index .prev.show {
  display: block;
}

main .faq_top .paginate_index .next {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  cursor: pointer;
  display: none;
}

main .faq_top .paginate_index .next img {
  height: 100%;
  width: auto;
}

main .faq_top .paginate_index .next.show {
  display: block;
}

main .faq_top .paginate_index .index {
  text-align: center;
  line-height: 26px;
  color: #333333;
  font-size: 14px;
  font-weight: bold;
}

@media all and (max-width: 767px) {
  main .faq_top .paginate_index .index {
    line-height: 4.2667vw;
    font-size: 3.2vw;
  }
}

main .faq_top .paginate_index .index a {
  display: inline-block;
  position: relative;
  cursor: pointer;
}

main .faq_top .paginate_index .index a:nth-child(n + 2) {
  margin-left: 45px;
}

@media all and (max-width: 767px) {
  main .faq_top .paginate_index .index a:nth-child(n + 2) {
    margin-left: 6vw;
  }
}

main .faq_top .paginate_index .index a:after {
  content: none;
  background-color: #ed1a3a;
  position: absolute;
  left: -2px;
  bottom: -3px;
  right: -2px;
  height: 2px;
}

@media all and (max-width: 767px) {
  main .faq_top .paginate_index .index a:after {
    left: -0.5333vw;
    bottom: -1.3333vw;
    right: -0.5333vw;
    height: 0.5333vw;
  }
}

main .faq_top .paginate_index .index a.active {
  color: #ed1a3b;
}

main .faq_top .paginate_index .index a.active::after {
  content: "";
}

@media all and (max-width: 767px) {
  main .faq_top {
    margin-bottom: 10.6667vw;
  }
}

main .faq_top .tag_index {
  width: 840px;
  padding-left: 40px;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_index {
    width: 100%;
    padding: 0 4.6667vw;
    border-top: #d7d7d7 solid 0.2667vw;
  }
}

main .faq_top .tag_index > h2 {
  font-size: 24px;
  line-height: 34px;
  width: 100%;
  padding: 0;
  margin: 60px 0 30px;
  border: none;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_index > h2 {
    font-size: 4.8vw;
    line-height: 1;
    margin-top: 7.3333vw;
    margin-bottom: 6.6667vw;
  }
}

main .faq_top .tag_index > h2::before,
main .faq_top .tag_index > h2::after {
  content: none;
}

main .faq_top .tag_index .tag_index_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin: 0 -7px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_index .tag_index_list {
    margin: 0 -1.6vw;
  }
}

main .faq_top .tag_index .tag_index_list_item {
  margin: 7px;
  border-radius: 4px;
  border: solid 1px #d7d7d7;
  padding: 6px 16px;
  font-size: 14px;
  line-height: 1;
  color: #3c3c3c;
}

@media all and (max-width: 767px) {
  main .faq_top .tag_index .tag_index_list_item {
    margin: 1.6vw;
    border-radius: 0.5333vw;
    border-width: 0.2667vw;
    padding: 1.2vw 3.7333vw;
    font-size: 3.4667vw;
  }
}

main .faq_top .tag_index .tag_index_list_item::before {
  content: "#";
}

@media all and (min-width: 768px) {
  main .faq_top .tag_index .buttons {
    display: none;
  }
}

@media all and (max-width: 767px) {
  main .faq_top .tag_index .buttons {
    margin-bottom: -4vw;
  }
}

@media all and (max-width: 767px) {
  main .faq_top.on_tag_index .faq_menu {
    display: none;
  }
}

main .faq_menu {
  width: 280px;
  background-color: #f9f9f9;
  position: relative;
  padding: 0 40px 60px 0;
}

@media all and (max-width: 767px) {
  main .faq_menu {
    width: 100%;
    padding: 4vw 0 0;
  }

  main .faq_menu.on_detail {
    display: none;
  }
}

main .faq_menu h2 {
  width: auto;
  margin-bottom: 20px;
}

main .faq_menu h3 {
  font-size: 20px;
  line-height: 34px;
  font-weight: bold;
  margin-top: 30px;
}

@media all and (max-width: 767px) {
  main .faq_menu .faq_categories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 1.3333vw;
  }

  main .faq_menu .faq_categories.selected li {
    background-color: #f2f2f2;
  }

  main .faq_menu .faq_categories.selected li img,
  main .faq_menu .faq_categories.selected li .text {
    opacity: 0.5;
  }
}

main .faq_menu .faq_categories li {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: left;
  font-size: 14px;
  line-height: 24px;
  font-weight: 400;
  border: #d7d7d7 solid 1px;
  border-radius: 7px;
  overflow: hidden;
  margin-bottom: 10px;
  cursor: pointer;
}

main .faq_menu .faq_categories li::before {
  content: none;
}

@media all and (min-width: 768px) {
  main .faq_menu .faq_categories li:nth-last-child(1) {
    margin-bottom: 0;
  }
}

@media all and (max-width: 767px) {
  main .faq_menu .faq_categories li {
    width: 45.7333vw;
    margin-left: 2.6667vw;
    font-size: 3.2vw;
    line-height: 4.2667vw;
    border: none;
    border-radius: 0.9333vw;
    margin-bottom: 2.6667vw;
    background-color: white;
    padding: 2.6667vw;
    -webkit-box-shadow: 0 0.4vw 0.5333vw rgba(0, 0, 0, 0.2);
    box-shadow: 0 0.4vw 0.5333vw rgba(0, 0, 0, 0.2);
    overflow: visible;
    font-weight: 700;
  }
}

main .faq_menu .faq_categories li:hover {
  text-decoration: underline;
}

main .faq_menu .faq_categories li.selected {
  color: #ef193b;
  pointer-events: none;
  border-color: #ef193b;
}

@media all and (max-width: 767px) {
  main .faq_menu .faq_categories li.selected {
    color: #333;
    background-color: white;
  }

  main .faq_menu .faq_categories li.selected .text,
  main .faq_menu .faq_categories li.selected img {
    opacity: 1;
  }
}

main .faq_menu .faq_categories li img {
  width: 66px;
  height: auto;
  background-color: white;
}

@media all and (max-width: 767px) {
  main .faq_menu .faq_categories li img {
    width: 6.6667vw;
    background-color: transparent;
  }
}

main .faq_menu .faq_categories li .text {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-left: 18px;
}

@media all and (max-width: 767px) {
  main .faq_menu .faq_categories li .text {
    padding-left: 2.4vw;
  }
}

main .faq_menu .to_top {
  font-size: 12px;
  line-height: 24px;
  color: #3c3c3c;
}

main .faq_menu .to_top:hover {
  color: #3c3c3c;
  opacity: 1;
  text-decoration: underline;
}

main .faq_tags {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -5px;
}

@media all and (max-width: 767px) {
  main .faq_tags {
    margin-left: -1vw;
  }
}

main .faq_tags li {
  padding: 3px 12px;
  margin: 5px;
  display: inline-block;
  font-size: 12px;
  border: #d7d7d7 solid 1px;
  color: #3C3C3C;
  border-radius: 4px;
  line-height: 1;
  cursor: pointer;
}

@media all and (max-width: 767px) {
  main .faq_tags li {
    padding: 1.0667vw 3.6vw;
    margin: 1vw;
    font-size: 2.9333vw;
    border-radius: 0.5333vw;
    border-width: 0.2667vw;
  }
}

main .faq_tags li::before {
  content: "#";
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  position: relative;
  left: auto;
  top: auto;
  width: auto;
  height: auto;
}

main .faq_tags li:hover {
  opacity: 0.7;
}

main .faq_tags li.selected {
  background-color: #ef193b;
  border-color: #ef193b;
  color: white;
  pointer-events: none;
}

@media all and (max-width: 767px) {
  main .pc_menu {
    display: none;
  }
}

@media all and (min-width: 768px) {
  main .sp_menu {
    display: none;
  }
}

@media all and (max-width: 767px) {
  main .select {
    position: relative;
    display: inline-block;
    margin: 0 4.6667vw 10.6667vw;
  }

  main .select::after {
    content: "";
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    border: solid 1.4667vw;
    border-color: #d7d7d7 transparent transparent;
    position: absolute;
    right: 4vw;
    top: 50%;
    margin-top: -0.8vw;
  }

  main .select select {
    color: #3c3c3c;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    height: 11.4667vw;
    border-radius: 0.9333vw;
    border: solid 0.2667vw #d7d7d7;
    width: 90.3vw;
    padding-left: 4vw;
  }

  main .select select::-ms-expand {
    display: none;
  }

  main .faq_menu_footer_categories + h2 {
    margin-top: 0;
  }

  main .faq_tags {
    margin: 0 4vw;
  }
}

main .select select {
  font-size: 16px;
}




main .faq_detail .detail .info span {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(35%, #FFF4B2));
  background: linear-gradient(transparent 65%, #FFF4B2 35%);
  padding: 0 .2em;
}
main .faq_detail .detail .info .midashi {
  margin: 50px 0 30px 0;
  font-size: 20px;
  font-weight: bold;
  padding-left: 20px;
  position: relative;
}

main .faq_detail .detail .info .midashi::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    background-image: url(column_h2.png);
    background-size: 100% 100%;
    width: 5px;
    height: 20px;
}
main .faq_detail .detail .info h3 {
  font-weight: bold;
  margin: 0;
  font-size: 1em;
  padding-left: 0;
  position: relative;
  background-image: none;
}
main .faq_detail .detail .info h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background-image: none;
    width:0;
    height: 0;
}
@media all and (max-width: 767px) {
  main .faq_detail .detail .info b {
  }
  
  main .faq_detail .detail .info .midashi {
    margin: 6.6667vw 0 4vw 0;
    font-size: 4vw;
    padding-left: 4vw;
    line-height: 1.7;
  }

  main .faq_detail .detail .info .midashi::before {
    top: 1.6vw;
    width: 1.3333vw;
    height: 4vw;
  }
  main .faq_detail .detail .info h3::before {
    top: 0;
    width: 0;
    height: 0;
  }
}



