@charset "UTF-8";

/* ==========================================================================
  FAQ
========================================================================== */
@media all and (min-width: 768px), print {
    .faq-result{
        counter-reset: number 0;
    }
    .faq-accordion__inner{

    }
    .faq-result-list{

    }
    .faq-result-list-item{
        border: 1px solid var(--primary-color-100);
        border-radius: calc(5 / var(--font-size) * 1rem);
    }
    .faq-result-list-item + .faq-result-list-item{
        margin-top: calc(10 / var(--font-size) * 1rem);
    }
    .faq-result-list-item__inner{

    }
    .faq-accordion__head{

    }
    .is-accordion-active .faq-accordion__head{
        border-bottom: 1px solid var(--primary-color-100);
    }
    .faq-accordion-question{
        cursor: pointer;
        padding: calc(20 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem);
    }
    .faq-accordion-question__inner{
        position: relative;
        /*padding-left:calc(60 / var(--font-size) * 1rem);*/
        padding-right:calc(46 / var(--font-size) * 1rem);
    }
    /*
    .faq-accordion-question__inner::before{
        counter-increment: number 1;
        content: "Q"counter(number);
        position: absolute;
        left: 0;
        top: 0;
        margin-top: 0.1em;
        font-weight: bold;
        font-size: calc(20 / var(--font-size) * 1rem);
    }
    */
    .faq-accordion-question-text{
        line-height: 1.8;
        display: flex;
        column-gap: 8px;
    }
    .faq-accordion-question-text__label{
        display: flex;
    }
    .faq-accordion-question-ico{
        position: absolute;
    top: 0;
    right: 0;
    width: calc(16 / var(--font-size)* 1rem);
    height: 100%;
    display: flex;
    margin-top: 0.4em;
    }
    .faq-accordion-question-ico__label{
        position: relative;
        width: calc(16 / var(--font-size)* 1rem);
        height: calc(16 / var(--font-size)* 1rem);
    }
    .faq-accordion-question-ico__label::before, .faq-accordion-question-ico__label::after{
        content: "";
    display: block;
    position: absolute;
    border-radius: 9999px;
    background-color: var(--black-color);
    transition: all 0.3s;
    }
    .faq-accordion-question-ico__label::before{
        top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: calc(1 / var(--font-size)* 1rem);
    }
    .faq-accordion-question-ico__label::after{
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: calc(1 / var(--font-size)* 1rem);
        height: 100%;
    }
    .is-accordion-active .faq-accordion-question-ico__label::after{
        transform: translateX(-50%) rotate(90deg);
    }
    .faq-accordion-answer{
        padding: calc(10 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
        background-color: var(--primary-color-10);
        border-bottom-right-radius: calc(5 / var(--font-size)* 1rem);
        border-bottom-left-radius: calc(5 / var(--font-size)* 1rem);
    }
    .faq-accordion-answer__inner{
        position: relative;
        /*padding-left:calc(60 / var(--font-size) * 1rem);*/
    }
    /*
    .faq-accordion-answer__inner::before{
        content: "A"counter(number);
        position: absolute;
        left: 0;
        top: 0;
        margin-top: 0.1em;
        font-weight: bold;
        font-size: calc(20 / var(--font-size) * 1rem);
    }
    */
    .faq-accordion-answer-content{

    }
    .faq-accordion-answer-content__in{

    }
    .faq-accordion-answer-content__in .c-txt + .c-txt{
        margin-top: calc(20 / var(--font-size) * 1rem);
    }
    .faq-accordion-answer-content-table{
        margin-top: calc(20 / var(--font-size) * 1rem);
    }
    .bl_bottom-btn{
        margin-top: calc(80 / var(--font-size)* 1rem);
    }

    /* faq-result-list--link */
    .faq-result-list--link{
    }
    .faq-result-list--link-item{
        position: relative;
        cursor: pointer;
        padding: calc(12 / var(--font-size) * 1rem) calc(30 / var(--font-size) * 1rem);
        transition: all 0.3s;
    }
    .faq-result-list--link-item:hover{
        background-color: var(--primary-color-10);
    }
    .faq-link-text{
        position: relative;
        line-height: 1.8;
        display: flex;
    }
    .faq-link-text-num{
        font-weight: bold;
        font-size: calc(16 / var(--font-size) * 1rem);
        line-height: 1.5;
        min-width:  calc(48 / var(--font-size) * 1rem);
    }


}
.faq-result-list--link-item{
    border-bottom: 1px dashed #ccc;
}
.faq-accordion-answer-content__in a{
    color: #104BCD;
    text-decoration: underline;
    word-break: break-all;
}

@media all and (max-width: 767px) {
    .faq-result{
        counter-reset: number 0;
    }
    .faq-accordion__inner{

    }
    .faq-result-list{

    }
    .faq-result-list-item{
        border: 1px solid var(--primary-color-100);
        border-radius: calc(5 / var(--font-size) * 1rem);
    }
    .faq-result-list-item + .faq-result-list-item{
        margin-top: calc(10 / var(--font-size) * 1rem);
    }
    .faq-result-list-item__inner{

    }
    .faq-accordion__head{

    }
    .is-accordion-active .faq-accordion__head{
        border-bottom: 1px solid var(--primary-color-100);
    }
    .faq-accordion-question{
        cursor: pointer;
        padding: calc(14 / var(--font-size) * 1rem) calc(15 / var(--font-size) * 1rem);
    }
    .faq-accordion-question__inner{
        position: relative;
        /*padding-left:calc(35 / var(--font-size) * 1rem);*/
        padding-right:calc(30 / var(--font-size) * 1rem);
    }
    /*
    .faq-accordion-question__inner::before{
        counter-increment: number 1;
        content: "Q"counter(number);
        position: absolute;
        left: 0;
        top: 0;
        margin-top: 0.1em;
        font-weight: bold;
        font-size: calc(16 / var(--font-size) * 1rem);
    }
    */
    .faq-accordion-question-text{
        line-height: 1.5;
        font-size: calc(14 / var(--font-size) * 1rem);
    }
    .faq-accordion-question-text__label{
        display: flex;
    }
    .faq-accordion-question-ico{
        position: absolute;
    top: 0;
    right: 0;
    width: calc(16 / var(--font-size)* 1rem);
    height: 100%;
    display: flex;
    margin-top: 0.4em;
    }
    .faq-accordion-question-ico__label{
        position: relative;
        width: calc(16 / var(--font-size)* 1rem);
        height: calc(16 / var(--font-size)* 1rem);
    }
    .faq-accordion-question-ico__label::before, .faq-accordion-question-ico__label::after{
        content: "";
    display: block;
    position: absolute;
    border-radius: 9999px;
    background-color: var(--black-color);
    transition: all 0.3s;
    }
    .faq-accordion-question-ico__label::before{
        top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: calc(1 / var(--font-size)* 1rem);
    }
    .faq-accordion-question-ico__label::after{
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: calc(1 / var(--font-size)* 1rem);
        height: 100%;
    }
    .is-accordion-active .faq-accordion-question-ico__label::after{
        transform: translateX(-50%) rotate(90deg);
    }
    .faq-accordion__body{

    }
    .faq-accordion-answer{
        padding: calc(10 / var(--font-size) * 1rem) calc(14 / var(--font-size) * 1rem) calc(15 / var(--font-size) * 1rem);
        background-color: var(--primary-color-10);
        border-bottom-right-radius: calc(5 / var(--font-size)* 1rem);
        border-bottom-left-radius: calc(5 / var(--font-size)* 1rem);
    }
    .faq-accordion-answer__inner{
        position: relative;
        /*padding-left: calc(35 / var(--font-size)* 1rem);*/
    }
    /*
    .faq-accordion-answer__inner::before{
        content: "A"counter(number);
        position: absolute;
        left: 0;
        top: 0;
        margin-top: 0.1em;
        font-weight: bold;
        font-size: calc(16 / var(--font-size) * 1rem);
    }
    */
    .faq-accordion-answer-content{

    }
    .faq-accordion-answer-content__in{

    }
    .faq-accordion-answer-content__in .c-txt + .c-txt{
        margin-top: calc(12 / var(--font-size) * 1rem);
    }
    .faq-accordion-answer-content .c-txt{
        --txt-font-size: 14;
        --txt-line-height: 1.5;
    }
    .faq-accordion-answer-content-table{
        margin-top: calc(20 / var(--font-size) * 1rem);
        overflow: hidden;
    }
    .faq-accordion-answer-content-table .c-table-chart__tr .c-txt {
        --txt-font-size: 14;
    }
    .faq-accordion-answer-content-table .c-table{
        margin-left: 0;
        margin-right: 0;
    }
    .faq-accordion-answer-content-table .c-table-chart{
        margin-left: 0;
    }
    .faq-accordion-answer-content-table .c-table-chart::after{
        content: none;
    }
    .faq-accordion-answer .c-link-txt {
        word-wrap:break-word;
    }
    .bl_bottom-btn{
        margin-top: calc(80 / var(--font-size)* 1rem);
    }
    /* faq-result-list--link */
    .faq-result-list--link{
    }
    .faq-result-list--link-item{
        position: relative;
        cursor: pointer;
        padding: calc(10 / var(--font-size) * 1rem) calc(20 / var(--font-size) * 1rem);
        transition: all 0.3s;
    }
    .faq-result-list--link-item:hover{
        background-color: var(--primary-color-10);
    }
    .faq-link-text{
        position: relative;
        line-height: 1.8;
        display: flex;
    }
    .faq-link-text-num{
        font-weight: bold;
        font-size: calc(16 / var(--font-size) * 1rem);
        line-height: 1.5;
        min-width:  calc(48 / var(--font-size) * 1rem);
    }


}


/* お問い合わせの多いご質問 */
@media all and (min-width: 768px), print {
    .top-faq-sec{
        margin-bottom: calc(80 / var(--font-size) * 1rem);
    }
    .top-faq-head{
        text-align: center;
        color: var(--primary-color-100);
    }
    .top-faq-list-item{
        line-height: 1.5;
        margin-top: calc(12 / var(--font-size) * 1rem);
        transition: all 0.3s;
    }
    .top-faq-list-item + .top-faq-list-item{
        padding-top: calc(12 / var(--font-size) * 1rem);
        border-top: 1px dashed #ccc;
    }
    .top-faq-list-item:hover{
        color: var(--primary-color-100);
    }
    .top-faq-sec .c-submit-box__in{
        border-radius: calc(20 / var(--font-size) * 1rem);
    }
    .top-faq-list-item-text{
        display: flex;
    }
    .top-faq-list-item-num{
        display: inline;
        flex-grow: 0;
        min-width: calc(48 / var(--font-size) * 1rem);
        font-weight: 700;
    }
}
@media all and (max-width: 767px) {
    .top-faq-sec{
        margin-bottom: calc(50 / var(--font-size) * 1rem);
    }
    .top-faq-head{
        text-align: center;
        color: var(--primary-color-100);
        font-size: calc(20 / var(--font-size) * 1rem);
    }
    .top-faq-list-item{
        line-height: 1.5;
        margin-top: calc(12 / var(--font-size) * 1rem);
        transition: all 0.3s;
    }
    .top-faq-list-item + .top-faq-list-item{
        padding-top: calc(12 / var(--font-size) * 1rem);
        border-top: 1px dashed #ccc;
    }
    .top-faq-list-item:hover{
        color: var(--primary-color-100);
    }
    .top-faq-sec .c-submit-box__in{
        border-radius: calc(20 / var(--font-size) * 1rem);
    }
    .top-faq-list-item-text{
        display: flex;
    }
    .top-faq-list-item-num{
        display: inline;
        flex-grow: 0;
        min-width: calc(56 / var(--font-size) * 1rem);
        font-weight: 700;
    }
    
}

/* お問い合わせ詳細ページ */
@media all and (min-width: 768px), print {
    .top-faq-list--detail .top-faq-list-item{
        margin-top: 0;
    }
    .top-faq-list--detail .top-faq-list-item-text {
        line-height: 1.8;
    }
    .top-faq-list--detail .top-faq-list-item:hover{
        color: var(--black-color);
    }
    .c-txt-link{
        color: var(--primary-color-100);
    }
    .bl-q + .bl-a{
        margin-top: calc(28 / var(--font-size) * 1rem);
    }
    .bl-q{
        padding: 0 calc(40 / var(--font-size) * 1rem);

    }
    .bl-a{
        border-top: 1px solid var(--primary-color-100);
        padding: calc(28 / var(--font-size) * 1rem) calc(40 / var(--font-size) * 1rem) calc(28 / var(--font-size) * 1rem) calc(88 / var(--font-size) * 1rem);
        background: var(--house-color-10);
    }
    .bl-a.registration-a{
        background: var(--registration-color-10);
    }
    .top-faq-sec-detail .c-submit-box__in{
        padding: 0;
        overflow: hidden;
    }
    .top-faq-sec-detail .c-submit-box__body{
        padding-bottom: 0;
    }
}
@media all and (max-width: 767px) {
    .top-faq-list--detail .top-faq-list-item{
        margin-top: 0;
    }
    .top-faq-list--detail .top-faq-list-item-text {
        line-height: 1.8;
        flex-direction: column;
    }
    .top-faq-list--detail .top-faq-list-item:hover{
        color: var(--black-color);
    }
    .c-txt-link{
        color: var(--primary-color-100);
    }
    .bl-q + .bl-a{
        margin-top: calc(24 / var(--font-size) * 1rem);
    }
    .bl-q{
        padding: 0  calc(24 / var(--font-size) * 1rem);
    }
    .bl-a{
        border-top: 1px solid var(--primary-color-100);
        padding: calc(24 / var(--font-size) * 1rem);
        background: var(--house-color-10);
    }
    .bl-a.registration-a{
        background: var(--registration-color-10);
    }
    .top-faq-sec-detail .c-submit-box__in{
        padding: 0;
        overflow: hidden;
    }
    .top-faq-sec-detail .c-submit-box__body{
        padding-bottom: 0;
    }
}
.bl-a a{
    /* color: #104BCD;
    text-decoration: underline; */
}
.top-faq-list--detail .bl-a .top-faq-list-item-text {
    font-weight: bold;
}


@media all and (min-width: 768px), print {
    .c-disc-header__body{
        display: flex;
    }
    .c-disc-header__num {
        font-size: calc(var(--header-font-size) / var(--font-size) * 1rem);
        font-weight: 700;
        line-height: 1.5;
        min-width: calc(35 / var(--font-size) * 1rem);
    }
    .c-disc-header__in::before:not(.ico--disc){
        display: none;
    }
    .anc-head{
        padding-top: calc(90 / var(--font-size) * 1rem);
        margin-top: calc(-90 / var(--font-size) * 1rem);
    }
    .tab-panel-item {
        margin-bottom: calc(90 / var(--font-size) * 1rem);
    }
}
@media all and (max-width: 767px){
    .c-disc-header__in:not(+.ico--disc){
        padding-left: 0;
    }
    .c-disc-header__body{
        display: flex;
    }
    .c-disc-header__num {
        font-size: calc(var(--header-font-size) / var(--font-size) * 1rem);
        font-weight: 700;
        line-height: 1.5;
        min-width: calc(35 / var(--font-size) * 1rem);
    }
    .c-disc-header__in::before:not(.ico--disc){
        display: none;
    }
    .anc-head{
        padding-top: calc(70 / var(--font-size) * 1rem);
        margin-top: calc(-70 / var(--font-size) * 1rem);
    }
    .tab-panel-item {
        margin-bottom: calc(50 / var(--font-size) * 1rem);
    }
}

.faq-result-list-item.past-projects-house{
    background: var(--house-color-10);
    border: 1px solid var(--house-color-100);
}
.faq-result-list-item.past-projects-housingcomplex{
    background: var(--housingcomplex-color-10);
    border: 1px solid var(--housingcomplex-color-100);
}
.faq-result-list-item.past-projects-registration{
    background: var(--registration-color-10);
    border: 1px solid var(--registration-color-100);
}
.past-projects-house .is-accordion-active .faq-accordion__head {
    border-bottom: 1px solid var(--house-color-100);
}
.past-projects-housingcomplex .is-accordion-active .faq-accordion__head {
    border-bottom: 1px solid var(--housingcomplex-color-100);
}
.past-projects-registration .is-accordion-active .faq-accordion__head {
    border-bottom: 1px solid var(--registration-color-100);
}

[data-page="archive"] .faq-accordion-answer {
    background-color: #fff;
}
[data-page="archive"] .faq-accordion-question-text{
    font-weight: 700;
}
[data-page="archive"] .is-accordion-active .faq-accordion-question-text__label{
    color: var(--black-color);
}
.is-accordion-active .faq-accordion-question-text__label{
    color: var(--primary-color-100);
}

@media (max-width: 767px) {
    .house-qre-faq .tab-list{
        padding-left:0;
        padding-right: 0;
    }
    .house-qre .house-img-content .img-scroll__body{
        max-width: 600px;
    }
}
.sub{
    font-size: 0.75rem;
}
.is-accordion-active .faq-accordion-question-text{
    color: #4AAEB7;
}

.tab--faq .l-page-sec__content + .l-page-sec__content{
    margin-top: calc(10 / var(--font-size)* 1rem);
}