@charset "utf-8";

/* ==========================================================================
   p-rent-archive-residential
   ========================================================================== */

.p-rent-filter-spec-label .m-icon-layout {
    color: #6246ea;
}

.p-rent-filter-spec-label .m-icon-facility {
    color: #ca8a04;
}

.p-rent-filter-checkbox input[type="checkbox"]:checked+.p-rent-filter-checkbox-text::before {
    background-color: #6246ea;
    border-color: #6246ea;
    box-shadow: inset 0 0 0 3px #ffffff;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media screen and (max-width: 1024px) {

    .p-rent-filter-area-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .p-rent-filter-area-card.m-tobu {
        grid-column: span 1;
    }

    .p-rent-filter-area-card-body,
    .p-rent-filter-area-card.m-tobu .p-rent-filter-area-card-body {
        grid-template-columns: repeat(3, 1fr);
    }

    .p-rent-filter-spec-row {
        flex-direction: column;
    }

    .p-rent-filter-spec-row.m-range-group .p-rent-filter-spec-cell:first-of-type,
    .p-rent-filter-spec-row.m-triple-group .p-rent-filter-spec-cell {
        border-right: none;
        border-bottom: 1px solid #ebedf2;
    }

    .p-rent-filter-spec-row.m-triple-group .p-rent-filter-spec-cell:last-of-type {
        border-bottom: none;
    }

    .p-rent-filter-footer {
        flex-direction: column-reverse;
        align-items: stretch;
        gap: 20px;
    }

    .p-rent-filter-submit-wrapper {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }

    .p-rent-filter-submit-btn,
    .p-rent-filter-clear-btn {
        justify-content: center;
        width: 100%;
    }

    .p-rent-filter-count-box {
        text-align: center;
    }
}

@media screen and (max-width: 768px) {

    .p-rent-filter-area-card-head {
        font-size: 16px;
        padding: 14px 16px;
    }

    .p-rent-filter-area-card-body,
    .p-rent-filter-area-card.m-tobu .p-rent-filter-area-card-body {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        padding: 14px;
    }

    .p-rent-filter-chip-text {
        padding: 10px 8px;
        font-size: 14px;
        line-height: 1.4;
    }

    .p-rent-filter-chip-text::before {
        width: 13px;
        height: 13px;
    }

    .p-rent-filter-spec-cell {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        padding: 18px 16px;
    }

    .p-rent-filter-spec-label {
        width: 100%;
        font-size: 15px;
    }

    .p-rent-filter-spec-control {
        width: 100%;
    }

    .p-rent-filter-spec-control.m-range {
        display: grid;
        grid-template-columns: 1fr auto 1fr auto;
        gap: 8px;
        align-items: center;
    }

    .p-rent-filter-select-wrapper {
        width: 100%;
    }

    .p-rent-filter-select {
        height: 42px;
        font-size: 15px;
    }

    .p-rent-filter-spec-control.m-inline {
        gap: 12px 16px;
    }

    .p-rent-filter-checkbox-text {
        font-size: 14px;
    }

    .p-rent-filter-submit-btn,
    .p-rent-filter-clear-btn {
        min-height: 48px;
        font-size: 15px;
    }

    .p-rent-filter-count-box {
        font-size: 15px;
    }

    .p-rent-filter-count-num {
        font-size: 22px;
    }
}

@media screen and (max-width: 480px) {

    .p-rent-filter-area-card-body,
    .p-rent-filter-area-card.m-tobu .p-rent-filter-area-card-body {
        grid-template-columns: 1fr;
    }

    .p-rent-filter-chip-text {
        font-size: 14px;
    }

    .p-rent-filter-spec-control.m-range {
        grid-template-columns: 1fr;
    }

    .p-rent-filter-range-wave,
    .p-rent-filter-unit {
        justify-self: flex-start;
    }

    .p-rent-filter-spec-control.m-inline {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .p-rent-filter-checkbox {
        width: 100%;
    }

    .p-rent-filter-checkbox-text {
        width: 100%;
    }
}