﻿.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 > h1 {
    margin-top: 38px;
    margin-bottom: 0; }
    @media all and (max-width: 767px) {
      .faq_header > h1 {
        margin-top: 9.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 h1 {
      font-size: 30px;
      font-weight: bold; }
      @media all and (max-width: 767px) {
        .faq_detail .title h1 {
          font-size: 5.6vw; } }
      .faq_detail .title h1 img {
        vertical-align: middle;
        margin-right: 15px;
        margin-bottom: 6px;
        width: 46px;
        height: 46px; }
        @media all and (max-width: 767px) {
          .faq_detail .title h1 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 h2.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 h2.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 h2.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 h2.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; }
