@charset "UTF-8";

.internalPageLayout__inner {
    padding-top: 24.5vw;
}
.breadcrumb {
    display: none;
}
.rec_page {
    background-color: #fff;
    font-family: "Noto Sans JP", serif;
}
.pc_only {
    display: none;
}
.sp_only {
    display: block;
}

@media screen and (min-width: 641px) {

    .internalPageLayout__inner {
        padding-top: 120px;
    }
    .breadcrumb {
        display: block;
    }
    .pc_only {
        display: block;
    }
    .sp_only {
        display: none;
    }
    .hover_effect {
        display: block;
        position: relative;
        transition: filter 0.25s ease;
    }
    .hover_effect img {
        display: inline-block;
        position: relative;
        transition: filter 0.25s ease;
    }
    .hover_effect img:after {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(255,255,255,0.12);
        opacity: 0;
        transition: opacity 0.25s ease;
        pointer-events: none;
    }
    .hover_effect:hover {
        filter: brightness(1.06) contrast(0.95);
    }
    .hover_effect:hover::after {
        opacity: 1;
    }

}

.bg_gradient {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    padding-bottom: 20px;
    background: -webkit-gradient(linear, left top, right top, color-stop(.1%, #009FE2), color-stop(99.54%, #019C67));
    background: linear-gradient(90deg, #009FE2 .1%, #019C67 99.54%);
}
.faq_container {
    padding: 4vw 6.4vw;
}
.faq_hl {
    color: #fff;
    font-size: 6vw;
    padding-bottom: 10px;
    font-weight: bold;
}
.faq_block {
    background-color: rgba(255,255,255,0.8);
    padding: 3vw;
}
.faq_cat_hl {
    padding-bottom: 5px;
    color: #003686;
    font-weight: bold;
    font-size: 3.4vw;
    border-bottom: solid 1px #003686;
}
.faq_block + .faq_block {
    margin-top: 5vw;
}
dl.qa {
    padding: 20px 0 10px;
}
dl.qa > dt {
    position: relative;
    margin-left: 1em;
    padding-left: 1em;
    padding-bottom: 3vw;
    font-size: 3.2vw;
    font-weight: bold;
    line-height: 1.6;
}
dl.qa > dt::before {
    position: absolute;
    top: -0.3em;
    left: -0.7em;
    content: "Ｑ";
    color: #00a0e9;
    font-size: 5vw;
}
dl.qa > dd {
    position: relative;
    margin-left: 2em;
    padding-left: 1em;
    font-size: 3.2vw;
    line-height: 1.8;
}
dl.qa > dd::before {
    position: absolute;
    top: -0.3em;
    left: -0.7em;
    content: "Ａ";
    color: #009b63;
    font-size: 5vw;
    font-weight: bold;
}
.btn_entry_fixed.white {
    width: 20.3vw;
    height: auto;
    position: fixed;
    top: 28vw;
    right: 0;
    box-shadow: -1px 1px 4px 0px rgba(0,0,0,0.3);
    z-index: 200;
}

@media screen and (min-width: 641px) {

    .faq_container {
        max-width: 1160px;
        margin: 0 auto;
        padding: 20px 80px 50px;
    }
    .faq_hl {
        font-size: 43px;
    }
    .faq_block {
        padding: 40px 60px 60px;
    }
    .faq_cat_hl {
        font-size: 24px;
    }
    .faq_block + .faq_block {
        margin-top: 30px;
    }
    dl.qa {
        padding: 35px 30px 10px 0;
    }
    dl.qa > dt {
        padding-bottom: 10px;
        font-size: 18px;
        line-height: 1.8;
    }
    dl.qa > dt::before {
        font-size: 26px;
    }
    dl.qa > dd {
        margin-left: 3em;
        font-size: 16px;
    }
    dl.qa > dd::before {
        font-size: 26px;
    }
    .btn_entry_fixed.white {
        width: 131px;
        top: initial;
        bottom: 30px;
        right: -1px;
        box-shadow: none;
    }
}


