﻿@charset "UTF-8";

a:hover {
    opacity: 1;
}

.bl_faq {
    margin: 44px auto 0;
    width: 870px;
    min-height: calc(100vh - 264px);
}

.bl_faq_header{
  padding: 24px 30px 18px;
  border-bottom: 1px solid var(--borderColorLight);
}

.el_ttl01{
  margin-bottom: 25px;
  font-size: 22px;
}

.el_label {
  margin: 0 6px 6px 0;
}

time{
  font-family: Arial, Helvetica, sans-serif;
  color: #7F8696;
  letter-spacing: .02em
}

.bl_faq_body {
    padding: 30px;
    font-size: 14px;
    line-height: 1.7;
    overflow-wrap:break-word;
}
    .bl_faq_body a {
        color: #2F8AE9;
    }

.bl_faq_body_noAuth {
        font-size: 14px;
        line-height: 1.7;
        position: relative;
        overflow: hidden;
    }

    .bl_faq_body_noAuth::before {
        content: "";
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        z-index: 2;
        /*会員限定記事一部非表示用グラデーション*/
        background: linear-gradient(#FFFFFF00 40%, #FFFFFF);
    }

.el_btn_primary {
    color: #fff;
    background: linear-gradient(to right, #3361E8, #2BBBEA);
}

.el_btn_primary:hover {
    opacity: .85;
}

.el_btn_primary:focus {
    box-shadow: 0 0 0 2px rgba(47,138,233,.5);
}

.el_btn_primary.disabled {
    color: #A3A6AD;
    background: #DFE0E6;
    pointer-events: none;
    box-shadow: none;
}

.el_div_noAuth {
    padding: 100px;
    background-color: white;
    text-align: center;
    border-bottom: 1px solid var(--borderColorLight);
    padding-top: 20px;
}

.bl_div_no_admin {
    padding: 100px;
    background-color: white;
    text-align: center;
    border-bottom: 1px solid var(--borderColorLight);
}

.bl_faq_body_content {
    white-space: pre-wrap;
}

.bl_faq_body_content + .bl_faq_body_reference{
  margin-top: 4px;
}

.bl_faq_body_figure{
  display: block;
  max-width: 100%;
  margin: 24px auto 0;
}

.slide-items {
    width: 100%;
    height: 100%;
}

    .slide-items img {
        width: 165px; 
        height: 90px; 
        angle: 0 deg;
        opacity: 1;
        border-radius: 8px;
        border: 1px solid #DCD6D6;
    }

.video {
    transition: background .3s;
}

    .video:hover {
        background: #f2f5f8;
    }

.video-frame {
    justify-content: center;
    align-items: center;
    display: flex;
}

.frame {
    margin: 10px 10px 0px 10px;
}

.linktoVideo {
    font-size: 110%;
}

.video-article {
    margin: 10px 20px;
}

.related-video-title {
    color: #000000d6;
    font-size: 14px;
    margin-bottom: 4px;
    overflow-wrap: break-word;
    min-height: 48px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.time-related-video {
    font-size: 90%;
    font-family: Arial, Helvetica, sans-serif;
    color: #7F8696;
    letter-spacing: .02em;
    margin-top: 3px;
    margin-left: 4px;
}

.bl_questionAndAnswer_empty {
    margin-bottom: 14px;
    display: flex;
    font-size: 14px;
    line-height: 1.6;
    margin-top: 14px;
    padding: 7px 0px;
}
.empty_video {
    margin: -10px 0px -10px -30px;
}
.empty_faq {
    margin: -10px 0px -1px 14px;
}

.slick-prev {
    /* デフォルトでは-25px(= スライダーの外側) */
    left: -35px;
}

.slick-next {
    /* デフォルトでは-25px(= スライダーの外側) */
    right: -30px;
}

    .slick-prev::before,
    .slick-next::before {
        /* フォントと色の設定はbefore内で行う */
        font-size: 28px;
        color: gray;
    }

.title {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 1.5;
}

.related-faqs {
    padding: 55px 0px 0px 0px;
}


.hover-test {
    transition: background .3s;
    display: flex;
}

    .hover-test:hover {
        background: #f2f5f8;
    }

.faq-article {
    padding: 12px 0;
}

.faq-title {
    color: #2F8AE9;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.faq-answer {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #000000d6;
    word-break: break-all;
}

.time-faq {
    font-family: Arial, Helvetica, sans-serif;
    color: #7F8696;
    letter-spacing: .02em;
    margin-top: 1px;
    margin-left: 4px;
}

.faqImage {
    padding-top: 15px;
    padding-right: 15px;
}

.bl_searchResult_body_item_thumbnail {
    width: 198px;
    height: 108px;
    opacity: 1;
    border-radius: 8px;
    border: 1px solid #DCD6D6;
}

.el_textLink_layout_search {
    color: #3361E8;
}

.el_div_noAuth_form {
    margin-top: 25px;
}

.el_noAuth_login {
    padding: 14px 37px;
}

.highlight-text {
    font-weight: bold;
    margin-left: -5px;
}

.bl_login_btn {
    margin-bottom: 14px;
    width: 280px;
    height: 42px;
}

.el_noAuth_login {
    width: 280px;
    height: 42px;
    margin-bottom: 10px;
    border: 2px solid #3361E8;
    background: #fff;
    color: #3361E8;
    padding: 14px 37px;
}

    .el_noAuth_login:hover {
        opacity: .85;
    }

.linktoFaq {
    display: block;
}

.goodButton {
    position: relative;
    border-radius: 100vh;
    padding: 7px 13px 7px 33px;
}

    .goodButton:hover {
        opacity: .85;
    }

.goodImg {
    position: absolute;
    top: 7px;
    left: 5px;
    width: 20px;
    object-fit: cover;
    z-index: 1;
    margin-left: 4px;
}

.contentsContainer {
    padding: 20px 30px;
    font-size: 14px;
    line-height: 1.7;
}

.el_tag_time_good_block {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

    .el_tag_time_good_block a {
        margin: 0 8px 3px 0;
    }

    .el_tag_time_good_block time {
        margin: 0 12px 3px 5px;
    }

.goodbutton-block {
    margin-left: auto;
    margin-right: -30px;
    margin-top: -10px;
}

.el_faq_tag_block {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

.button-text {
    white-space: nowrap;
}

.el_video_tag_time_block {
    display: flex;
}

.el_video_tag_block {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bl_edit_button{
    text-align: right;
    margin-right: -30px;
    margin-bottom: auto;
}

.el_edit_button {
    color: white;
    background: linear-gradient(to right, #3361E8, #2BBBEA);
    width: 100px;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 15px;
}

.bl_public_scorp {
    margin-left: auto;
    margin-right: 2%;
    font-size: 14px;
    margin-bottom: 5px;
}

.bl_faq_body img {
    vertical-align: top;
}

/* エディタと同等表示のためのCSS設定 */
.bl_faq_body {
    h1 {
        font-size: 2em;
        font-weight: bold;
    }

    h2 {
        font-size: 1.5em;
        font-weight: bold;
    }

    h3 {
        font-size: 1.17em;
        font-weight: bold;
    }

    h4 {
        font-weight: bold;
    }

    h5 {
        font-size: .83em;
        font-weight: bold;
    }

    h6 {
        font-size: .67em;
        font-weight: bold;
    }

    ul {
        list-style-type: disc;
        -webkit-padding-start: 40px;
    }

    ol {
        list-style-type: decimal;
        -webkit-padding-start: 40px;
    }

    ul ul {
        list-style-type: circle;
    }

        ul ul ul {
            list-style-type: square;
        }

blockquote {
    border: 1px solid #eeeeee;
    padding: 0.4rem;
}

    code {
        font-family: monospace;
    }

    sub {
        vertical-align: sub;
        font-size: smaller
    }

    sup {
        vertical-align: super;
        font-size: smaller
    }

    table[border]:not([border="0"]):not([style*=border-color]) td, table[border]:not([border="0"]):not([style*=border-color]) th {
        border-color: #ccc;
    }

    table[border]:not([border="0"]):not([style*=border-style]) td, table[border]:not([border="0"]):not([style*=border-style]) th {
        border-style: solid;
    }

    table[border]:not([border="0"]):not([style*=border-width]) td, table[border]:not([border="0"]):not([style*=border-width]) th {
        border-width: 1px;
    }

    table:not([cellpadding]) td, table:not([cellpadding]) th {
        padding: 1.5rem;
    }

    td {
        border: revert-layer;
    }

    pre {
        white-space: pre-wrap;
    }

    hr {
        border-top: 2px solid;
        width: 66%;
        float: left;
    }
}

.key_icon {
    vertical-align: -2px;
}

.no_member_text {
    margin-left: -5px;
}

.no_member_text_size{
    font-size: 15px;
}

.after_second_line {
    line-height: 2.5;
}

.el_modal_key_icon {
    vertical-align: -2px;
}

.el_modal_bold_text {
    font-weight: bold;
    margin-left: -5px;
    font-size: 20px;
}

.el_modal_text {
    margin: 20px 0 0;
    line-height: 1.5;
}

.bl_modal_check_text {
    margin: 20px 0 0;
    text-align: left;
    display: inline-block;
    line-height: 1.7;
}

.el_modal_check_icon {
    vertical-align: middle;
    margin: 0 5px 0 0;
}


/*図形挿入カスタムメニューバー用CSS*/
/*吹き出し共通*/
.speech_bubble {
    padding: 16px;
    border: 1px solid;
    border-radius: 4px;
    position: relative;
    background: #FFFFFF;
}

    /*吹き出し(右)*/
    /*青色*/
    .speech_bubble.right_blue {
        border-color: #2F8AE9;
        margin-right: 15px;
    }

        .speech_bubble.right_blue::before {
            content: '';
            position: absolute;
            border-left: 12px solid #2F8AE9;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            right: -12px;
        }

        .speech_bubble.right_blue::after {
            content: '';
            position: absolute;
            border-left: 12px solid #FFFFFF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            right: -10px;
        }

    /*灰色*/
    .speech_bubble.right_gray {
        border-color: #D2D8DF;
        margin-right: 15px;
    }

        .speech_bubble.right_gray::before {
            content: "";
            position: absolute;
            border-left: 12px solid #D2D8DF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            right: -12px;
        }

        .speech_bubble.right_gray::after {
            content: "";
            position: absolute;
            border-left: 12px solid #FFFFFF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            right: -10px;
        }

    /*吹き出し(左)*/
    /*青色*/
    .speech_bubble.left_blue {
        border-color: #2F8AE9;
        margin-left: 15px;
    }

        .speech_bubble.left_blue::before {
            content: '';
            position: absolute;
            border-right: 12px solid #2F8AE9;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            left: -12px;
        }

        .speech_bubble.left_blue::after {
            content: '';
            position: absolute;
            border-right: 12px solid #FFFFFF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            left: -10px;
        }

    /*灰色*/
    .speech_bubble.left_gray {
        border-color: #D2D8DF;
        margin-left: 15px;
    }

        .speech_bubble.left_gray::before {
            content: "";
            position: absolute;
            border-right: 12px solid #D2D8DF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            left: -12px;
        }

        .speech_bubble.left_gray::after {
            content: "";
            position: absolute;
            border-right: 12px solid #FFFFFF;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            top: 15px;
            left: -10px;
        }

/*タイトル文字付囲み枠*/
.text_with_frame {
    margin-top: 15px;
    border-radius: 4px;
    padding: 16px;
    position: relative;
    word-break: break-all;
}

    .text_with_frame .title_text {
        position: absolute;
        display: inline-block;
        top: -12px;
        left: 10px;
        padding: 0 4px;
        font-weight: bold;
        font-size: 16px;
    }

    /*黄色*/
    .text_with_frame.yellow {
        background: #FFFAE3;
    }

        .text_with_frame.yellow .title_text {
            color: #E89211;
        }

    /*青色*/
    .text_with_frame.blue {
        background: #EBF3FF;
    }

        .text_with_frame.blue .title_text {
            color: #2F8AE9;
        }

    /*灰色*/
    .text_with_frame.gray {
        background: #F8F9FA;
    }

        .text_with_frame.gray .title_text {
            color: #3E4658;
        }

/*図形位置調整用*/
.faq_shape {
    display: flex;
    word-break: break-all;
}

    .faq_shape.right {
        justify-content: flex-end;
    }

    .faq_shape .text_right {
        padding-left: 1px
    }

    .faq_shape .text_left {
        padding-right: 1px
    }

.bl_sp {
    display: none;
}
/* SP版表示用CSS */
@media (min-width: 320px) and (max-width: 992px) {
    .bl_pc {
        display: none;
    }

    .bl_sp {
        display: block;
    }

    .bl_div_no_admin{
        padding:30px;
    }
    .el_div_noAuth {
        padding: 30px;
    }

    .bodyContainer {
        margin: 0;
        width: auto;
    }
    .contentsContainer {
        padding: 0;
        padding-top:30px;
        font-size: 14px;
        line-height: 1.7;
    }

    .video .linktoVideo:not(:last-child) {
        border-bottom: solid 1px #E5E3E3;
    }

    .linktoVideo {
        display: flex;
        padding: 16px 0;
    }

    .video-frame{
        width:70%;
        margin:auto;
    }

    .video-article {
        margin-left: 8px;
        width: 63%;
    }

    .frame{
        width:100%;
        height:auto;
    }

    .related-video-title {
        color: #3E4658;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
        display: -webkit-box;
        min-height:0;
    }

    .faqs {
        padding:0;
    }

    .faqs .linktoFaq:not(:last-child) {
        border-bottom: solid 1px #E5E3E3;
    }

    .linktoFaq {
        display: flex;
        padding:16px 0;
    }

    .faq-img-frame {
        width: 70%;
        margin: auto;
        justify-content: center;
        align-items: center;
        display: flex;
        
    }

    .faq-article {
        margin-left: 8px;
        width: 63%;
    }

    .faq-title {
        font-size: 16px;
        color: #3E4658;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
        display: -webkit-box;
    }

    .bl_mov_key_symbol {
        margin-left: 0;
    }
    .el_tag_time_good_block {
        display:block;
    }

    .top-block {
        display: flex;
        margin-bottom: 10px;
        align-items: center;
    }

    .el_faq_tag_block{
        display:block;
    }
    .button-text {
        font-size: 12px;
    }

    .goodbutton-block{
        margin-top:0;
        margin-right:0;
    }

    .goodImg {
        width: 15px;
        height: 13px;
        top: 10px;
    }

    .bl_faq_body img {
        max-width: 100%;
        height: auto;
    }

    .js-scrollable {
        white-space: nowrap;
    }

        .js-scrollable img {
            max-width: initial;
        }

    .table-wrapper {
        transform-origin: top left;
    }
    /*追加文*/
    .bl_sp_section_recommend {
        margin-top: 40px;
    }

    .el_sp_recommend_contents {
        padding: 30px 20px;
    }

    .el_recommend_title {
        font-weight: 700;
        font-size: 18px;
        color: #3E4658;
        padding-bottom: 10px;
    }

    .el_sp_recommend_contents .linktoVideo {
        background-color: white;
        border-bottom: solid 1px #E5E3E3;
        padding: 20px 0;
    }

        .el_sp_recommend_contents .linktoVideo:last-child {
            border-bottom: none;
        }

    .el_sp_recommend_contents .linktoFaq {
        background-color: white;
        border-bottom: solid 1px #E5E3E3;
        padding: 20px 0;
    }

        .el_sp_recommend_contents .linktoFaq:last-child {
            border-bottom: none;
        }

    .el_displayed_video {
        display: block;
    }

    .el_flex_contents {
        display: flex;
    }

    .bl_recommend_mov_img {
        width: 50%;
        margin: auto;
    }

    .el_td_video_img {
        width: 100%;
        height: auto;
        border-radius: 8px;
        border: solid 1px #DCD6D6;
    }

    .bl_recommend_mov_title {
        margin-left: 12px;
        width: 50%;
    }

    .sp_members_contents_title {
        -webkit-line-clamp: 3;
        margin-bottom: 5px;
    }

    .bl_mov_key_symbol {
        margin-left: 0;
    }

    .el_img_key {
        margin-right: 3px;
    }

    .sp_contents_title {
        overflow: hidden;
        display: -webkit-box;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        font-size: 14px;
        font-weight: 400;
        line-height: 20px;
        color: #3E4658;
    }

    .sp_members_contents_title {
        -webkit-line-clamp: 3;
        margin-bottom: 5px;
    }

    .recommend_faq {
        margin-top: 40px;
    }

    .speech_bubble{
        width:100%;
    }
}