@charset "utf-8";

/* ==========================================================================
   p-rent-archive-business
   ========================================================================== */

.p-rent-filter-spec-label .m-icon-use {
    color: #2563eb;
}

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

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

@media screen and (max-width: 1024px) {
    .p-rent-filter-area-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .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;
    }

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

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

    .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);
        padding: 14px;
        gap: 8px;
    }

    .p-rent-filter-chip-text {
        padding: 9px 8px;
        font-size: 16px;
    }

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

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

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

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

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