.qa {
    padding: 64px 5%;
    background-color: var(--background-color-lightgrey);
}

.qa .grid-col3 {
    background-color: var(--white);
    gap: 0;
}

.qa .linkList-lv1--item {
    font-size: 1.8rem;
    border-top: 2px solid var(--separate-color-grey);
    padding-left: 32px;
    position: relative;
}

.qa .linkList-lv1--item::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    transform: translateY(-30%);
    background-image: url(/img/icon_q.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.qa .linkList-lv1--item:first-of-type {
    border-top: 0;
}

.qa .linkList-lv1--link {
    display: block;
    padding: 16px 16px 16px 0;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--secondary-bland-color);
}

.qa .linkList-lv1--noLink {
    display: block;
    padding: 16px 16px 0 0;
    font-size: 1.8rem;
    font-weight: bold;
}

.qa .linkList-lv2 {
    padding-bottom: 16px;
}

.qa .linkList-lv2--link {
    display: block;
    padding: 16px 16px 0 32px;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--secondary-bland-color);
    position: relative;
}

.qa .linkList-lv2--link::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 8px;
    transform: translateY(-70%);
    width: 14px;
    height: 14px;
    background-image: url(/img/icon_treeline.png);
    background-size: cover;
    background-repeat: no-repeat;
}

.qa .section--contentTitleBox {
    margin-top: 32px;
}

.qa .section--contentTitle {
    font-size: 2.4rem;
    font-weight: bold;
    position: relative;
    padding-left: 32px;
}

.qa .section--contentTitle::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0px;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    background-image: url(/img/icon_a.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.qa .linkInPage {
    padding-top: 80px;
    margin-top: -80px;
}

.qa .qaBox {
    background-color: var(--white);
    padding: 32px;
    margin-top: 24px;
}

.qa .qaBox--top {
    padding-left: 32px;
    padding-bottom: 16px;
    position: relative;
}

.qa .qaBox--top::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0px;
    width: 24px;
    height: 24px;
    transform: translateY(-85%);
    background-image: url(/img/icon_q.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.qa .qaBox--bottom {
    border-top: 1px solid var(--separate-color-grey);
    padding-left: 32px;
    padding-top: 16px;
    position: relative;
}

.qa .qaBox--bottom::before {
    position: absolute;
    content: "";
    top: 16px;
    left: 0px;
    width: 24px;
    height: 24px;
    background-image: url(/img/icon_a.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

@media screen and (max-width: 1024px) {
    /* 1024pxまでの幅の場合に適応される */
    
    .qa .linkList-lv1--item,
    .qa .linkList-lv1--link,
    .qa .linkList-lv1--noLink,
    .qa .linkList-lv2--link {
        font-size: 1.6rem;
    }

    .qa .linkList-lv2--link {
        padding: 8px 16px 0 28px;
    }

    .qa .linkList-lv2--link::before {
        transform: translateY(-50%);
        width: 12px;
        height: 12px;
        background-image: url(/img/icon_treeline.png);
        background-size: cover;
        background-repeat: no-repeat;
    }
}

@media screen and (max-width: 599px) {
    /* 599pxまでの幅の場合に適応される */
    
    .qa .qaBox {
        padding: 16px;
    }
    .qa .linkList-lv1 {
        /* border-top: 2px solid var(--separate-color-grey); */
        border-left: 0;
    }

    .qa .grid-col3 .linkList-lv1:not(:first-of-type) .linkList-lv1--item:first-of-type {
        border-top: 2px solid var(--separate-color-grey);
    }

}