@charset "utf-8";

/* ===== faq.css ===== */
/* -- faqBox01 -- */
.faqBox01 {
    margin-top: -2.6rem;
    border-bottom: 1px solid #CDD9E0;
}
.faqBox01 dt {
    position: relative;
}
.faqBox01 dt:not(:first-child) {
    border-top: 1px solid #CDD9E0;
}
.faqBox01 dt::before,
.faqBox01 dt::after {
    position: absolute;
    top: 4.1rem;
    right: 1rem;
    width: 2rem;
    height: .3rem;
    background: url(../img/common/icon_faq.svg) no-repeat 0 0 / 100% auto;
    content: "";
}
.faqBox01 dt::after {
    transform: rotate(90deg);
    transition: opacity .6s, transform .6s;
}
.faqBox01 dt a {
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.5;
    color: #115680;
    display: block;
    position: relative;
    padding: 2.6rem 35px 2.9rem 3.1rem;
}
.faqBox01 dt a::before {
    position: absolute;
    top: 2.6rem;
    left: 1px;
    content: "Q.";
}
.faqBox01 dd {
    display: none;
    margin-top: -6px;
    padding-bottom: 23px;
}
/* - open - */
.faqBox01 dt.open::after {
    opacity: 0;
    transform: rotate(0);
}
@media screen and ( max-width: 900px ) {
    .faqBox01 dt::before,
    .faqBox01 dt::after {
        width: 16px;
        height: 2px;
    }
    .faqBox01 dd {
        margin-top: -6px;
        padding: 0 3.1rem 20px;
    }
}