/* 開業物件検索トップ *******************************************************/
.m3-oc-c985-search {
    margin-bottom: var(--pls-spacing-l);
    display: flex;
    width: 100%;
    .search-tab {
        display: flex;
        width: 200px;
        flex-direction: column;
        gap: var(--pls-spacing-xs);
        li {
            padding: 14px 0;
            background: var(--pls-basic-white);
            gap: var(--pls-spacing-xxs);
            text-align: center;
            border-radius: var(--pls-border-radius-m) 0 0 var(--pls-border-radius-m);
            align-items: center;
            display: flex;
            justify-content: center;
            gap: 6px;
            color: var(--pls-basic-white);
            font-weight: var(--pls-font-weight-bold);
            font-size: var(--pls-font-size-s);
            transition: all .3s;
            position: relative;
            img {
                margin-right: var(--pls-spacing-xxs);
            }
            span {
                font-weight: var(--pls-font-weight-bold);
                font-size: var(--pls-font-size-l);
            }
            &.tab-area {
                color: var(--pls-blue-800);
                border-top: 1px solid var(--pls-blue-800);
                border-left: 1px solid var(--pls-blue-800);
                border-right: none;
                border-bottom:1px solid var(--pls-blue-800);
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    background: var(--pls-surface-accent-light);
                }
                &.selected {
                    background: var(--pls-blue-800);
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            &.tab-train {
                color: var(--pls-sky-600);
                border-top: 1px solid var(--pls-sky-600);
                border-left: 1px solid var(--pls-sky-600);
                border-right: none;
                border-bottom: 1px solid var(--pls-sky-600);
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    background: var(--pls-sky-100);
                }
                &.selected {
                    background: var(--pls-sky-600);
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            &.tab-map {
                color: #42AF42;
                border-top: 1px solid #42AF42;
                border-left: 1px solid #42AF42;
                border-right: none;
                border-bottom: 1px solid #42AF42;
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    background: var(--pls-green-50);
                }
                &.selected {
                    background: #42AF42;
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            &.tab-recommend {
                color: var(--pls-teal-600);
                border-top: 1px solid var(--pls-teal-600);
                border-left: 1px solid var(--pls-teal-600);
                border-right: none;
                border-bottom: 1px solid var(--pls-teal-600);
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    background: var(--pls-teal-100);
                }
                &.selected {
                    background: var(--pls-teal-600);
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
        }
    }
    .search-panel {
        width: calc(100% - 200px);
        font-size: var(--pls-font-size-xs);
        font-weight: var(--pls-font-weight-bold);
        border: 1px solid var(--pls-gray-500);
        padding: 25px 29px;
        .region-container {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            grid-template-rows: repeat(2, 1fr);
            grid-column-gap: 10px;
            grid-row-gap: 60px;
            margin: 0 auto;
            width: calc(100% - 58px);
            grid-template-areas:
            "chugoku kinki hokuriku . tohoku"
            "kyushu . shikoku tokai kanto";
            .tohoku { grid-area: tohoku; }
            .kanto { grid-area: kanto; }
            .hokuriku { grid-area: hokuriku; }
            .tokai { grid-area: tokai; }
            .kinki { grid-area: kinki; }
            .shikoku { grid-area: shikoku; }
            .chugoku { grid-area: chugoku; }
            .kyushu { grid-area: kyushu; }
        }
        .area-link-wrapper {
            width: 100%;
            position: relative;
            .area-link {
                border-radius: var(--pls-border-radius-s);
                padding: var(--pls-spacing-xs);
                &.bottom {
                    width: 100%;
                    position: absolute;
                    bottom: 0;
                    left: 0;
                }
                .area-link-head {
                    text-align: center;
                    color: var(--pls-basic-white);
                    margin-bottom: 10px;
                }
                ul {
                    width: 100%;
                    display: flex;
                    flex-wrap: wrap;
                    gap: 6px;
                    li {
                        display: block;
                        width: calc((100% - 6px) / 2);
                        a {
                            display: block;
                            background: var(--pls-basic-white);
                            border-radius: var(--pls-border-radius-s);
                            text-align: center;
                            color: var(--pls-object-primary);
                            padding: 6px 0;
                            position: relative;
                            &::after {
                                content: " ";
                                position: absolute;
                                display: block;
                                width: 100%;
                                height: 100%;
                                border-radius: var(--pls-border-radius-s);
                                background: var(--pls-hover-primary);
                                opacity: 0;
                                transition: all 0.3s;
                                top: 0;
                                left: 0;
                            }
                            &:hover {
                                &::after {
                                    opacity: 1;
                                }
                            }
                        }
                    }
                }
            }
        }
        .recommend-estate-wrapper {
            padding: 16px 24px 24px;
            .pls-checkbox input[type="checkbox"] {
                width: 16px;
                min-width: 16px;
                height: 16px;
                margin: 0.25rem 0 0;
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
                cursor: pointer;
                background: #ffffff;
                background: var(--pls-surface-primary);
                border: 1px solid rgba(46, 52, 72, 0.14118);
                border: 1px solid var(--pls-border-strong);
                border-radius: 2px;
                outline: none;
                &:checked {
                    background: var(--pls-surface-accent);
                    border-color: var(--pls-surface-accent);
                    &::before {
                        position: absolute;
                        top: 0;
                        left: 4px;
                        display: block;
                        width: 6px;
                        height: 10px;
                        content: "";
                        border: solid #ffffff;
                        border-width: 0 2px 2px 0;
                        transform: rotate(45deg);
                    }
                }
            }
            .all-check-balloon {
                span {
                    display: inline-flex;
                    gap: var(--pls-spacing-xxs);
                    align-items: center;
                    position: relative;
                    background-color: var(--pls-basic-white);
                    color: var(--pls-object-primary);
                    font-weight: var(--pls-font-weight-bold);
                    padding: 10px 15px 10px 12px;
                    margin-bottom: var(--pls-spacing-s);
                    border-radius: 5px;
                    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
                    &::after {
                        content: '';
                        position: absolute;
                        width: 0;
                        height: 0;
                        bottom: -10px;
                        left: 10px;
                        border-style: solid;
                        border-width: 12px 10px 0 10px;
                        border-color: #ffffff transparent transparent transparent;
                    }
                    input[type="checkbox"] {
                        margin-top: -1px;
                    }
                    label {
                        font-size: var(--pls-font-size-s);
                    }
                }
            }
            .top-recommend-estate-list {
                display: flex;
                flex-direction: column;
                gap: var(--pls-spacing-xs);
                margin-bottom: var(--pls-spacing-l);
                .m3-oc-c1094-estate-box {
                    background: var(--pls-basic-white);
                    border-radius: var(--pls-border-radius-m);
                    border: 1px solid var(--pls-gray-300);
                    display: flex;
                    align-items: center;
                    .check-area {
                        width: 40px;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        background: var(--pls-gray-300);
                        align-self: stretch;
                        border-radius: var(--pls-border-radius-m) 0 0 var(--pls-border-radius-m);
                    }
                    .estate-link-content {
                        display: block;
                        width: calc(100% - 40px);
                        background: url(/clinic/img/c1094_arrow-gray-1.svg) no-repeat 99% center / 32px 32px;
                        position: relative;
                        .link-detail {
                            display: block;
                            width: 100%;
                            padding: 16px 48px 16px 16px;
                            position: relative;
                            &.keisho {
                                padding: 16px 48px 16px 16px;
                            }
                            &::after {
                                content: " ";
                                position: absolute;
                                display: block;
                                width: 100%;
                                height: 100%;
                                border-radius: var(--pls-border-radius-s);
                                background: var(--pls-white-alpha-500);
                                opacity: 0;
                                transition: all 0.3s;
                                top: 0;
                                left: 0;
                            }
                            &:hover {
                                &::after {
                                    opacity: 1;
                                }
                            }
                            &:visited {
                                .estate-info {
                                    info-head {
                                        .tag-area {
                                            span {
                                                &.new {
                                                    color: var(--pls-basic-white);
                                                }
                                                &.type {
                                                    color: var(--pls-gray-700);
                                                }
                                            }
                                        }
                                        .name {
                                            color: var(--pls-object-primary);
                                        }
                                    }
                                    .info-content {
                                        color: var(--pls-object-primary);
                                    }
                                }
                            }
                            .estate-info {
                                width: 100%;
                                display: flex;
                                flex-direction: column;
                                gap: var(--pls-spacing-m);
                                font-weight: var(--pls-font-weight-regular);
                                .info-head {
                                    .tag-area{
                                        display: inline-flex;
                                        align-items: center;
                                        gap: var(--pls-spacing-xs);
                                        margin-bottom: var(--pls-spacing-xxs);
                                        span {
                                            display: inline-block;
                                            padding: 2px 8px;
                                            font-size: 11px;
                                            font-weight: var(--pls-font-weight-bold);
                                            border-radius: 30px;
                                            &.new {
                                                background: var(--pls-red-600);
                                                color: var(--pls-basic-white);
                                            }
                                            &.type {
                                                background: var(--pls-gray-200);
                                                color: var(--pls-gray-700);
                                            }
                                        }
                                    }
                                    .name {
                                        font-size: var(--pls-font-size-l);
                                        font-weight: var(--pls-font-weight-bold);
                                        color: var(--pls-object-primary);
                                    }
                                }
                                .info-content {
                                    display: flex;
                                    align-items: flex-start;
                                    gap: var(--pls-spacing-m);
                                    justify-content: space-between;
                                    .thumbnail {
                                        width: 137px;
                                        height: 102px;
                                        background: var(--pls-gray-200);
                                        display: flex;
                                        align-items: center;
                                        justify-content: center;
                                        img {
                                            display: block;
                                            max-width: 100%;
                                            max-height: 100%;
                                        }
                                        &.keisho {
                                            width: 137px;
                                            height: auto;
                                            background: transparent;
                                            img {
                                                width: 100%;
                                                height: auto;
                                            }
                                        }
                                    }
                                    .estate-info {
                                        width: calc(100% - 153px);
                                        display: flex;
                                        flex-direction: column;
                                        gap: 6px;
                                        color: var(--pls-object-primary);
                                        .address {
                                            font-size: var(--pls-font-size-base);
                                            font-weight: var(--pls-font-weight-bold);
                                        }
                                        .access {
                                            font-size: var(--pls-font-size-s);
                                        }
                                        dl {
                                            width: 100%;
                                            font-size: var(--pls-font-size-s);
                                            border: 1px solid var(--pls-gray-300);
                                            > div {
                                                margin-bottom: 0;
                                                display: flex;
                                                width: 100%;
                                                border-bottom: 1px solid var(--pls-gray-300);
                                                &:last-of-type {
                                                    border-bottom: none;
                                                }
                                                dt {
                                                    padding: 8px 12px;
                                                    width: 123px;
                                                    background: var(--pls-gray-50);
                                                    font-weight: var(--pls-font-weight-bold);
                                                    border-right: 1px solid var(--pls-gray-300);
                                                    display: flex;
                                                    align-items: top;
                                                }
                                                dd {
                                                    padding: 8px 12px;
                                                    width: calc(100% - 123px);
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            .inquiry-area {
                .check-error {
                    text-align: center;
                    color: var(--pls-object-warning);
                    font-size: var(--pls-font-size-s);
                    margin-bottom: var(--pls-spacing-m);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-weight: var(--pls-font-weight-regular);
                    gap: 6px;
                    &::before {
                        content: " ";
                        width: 20px;
                        height: 20px;
                        background: url(/clinic/img/c1094_icon-warning.svg) no-repeat left top / cover;
                    }
                }
                button {
                    display: block;
                    width: 400px;
                    margin: 0 auto;
                    text-align: center;
                    color: var(--pls-basic-white) !important;
                    font-weight: var(--pls-font-weight-bold);
                    font-size: var(--pls-font-size-base);
                    padding: 12px 0;
                    background: var(--pls-blue-600);
                    border-radius: var(--pls-border-radius-s);
                    border: none;
                    position: relative;
                    &::after {
                        content: " ";
                        position: absolute;
                        display: block;
                        width: 100%;
                        height: 100%;
                        background: var(--pls-white-alpha-500);
                        opacity: 0;
                        transition: all 0.3s;
                        left: 0;
                        top: 0;
                        border-radius: var(--pls-border-radius-s);
                    }
                    &:hover {
                        &::after {
                            opacity: 1;
                        }
                    }
                }
            }
        }
        &.search-area {
            background: var(--pls-basic-white) url(/clinic/img/c1094_bg-search-map.png) no-repeat center center / 355px 358px;
            .area-link {
                background: var(--pls-blue-800);
            }
        }
        &.search-train {
            background: var(--pls-basic-white) url(/clinic/img/c985_bg-search-map-skyblue.png) no-repeat center center / 355px 358px;
            .area-link {
                background: var(--pls-sky-600);
            }
        }
        &.search-map {
            background: var(--pls-basic-white) url(/clinic/img/c985_bg-search-map-lightgreen.png) no-repeat center center / 355px 358px;
            .area-link {
                background: #42AF42;
            }
        }
        &.recommend {
            background: var(--pls-basic-white);
            padding: 0;
        }
    }
}

/* 検索結果一覧 *******************************************************/
.advanced-search-panel {
    .map-search-link {
        border: none;
        line-height: 1;
        background: transparent;
        a {
            display: block;
            width: 100%;
            height: 100%;
            position: relative;
            border-radius: var(--pls-border-radius-m);
            img {
                margin: 0;
            }
            &::after {
                content: " ";
                position: absolute;
                display: block;
                width: 100%;
                height: 100%;
                border-radius: var(--pls-border-radius-m);
                background: var(--pls-white-alpha-500);
                opacity: 0;
                transition: all 0.3s;
                top: 0;
                left: 0;
            }
            &:hover {
                &::after {
                    opacity: 1;
                }
            }
        }
    }
}

.m3-oc-c1094-wrapper {
    .map-title {
        display: flex;
        justify-content: space-between;
        margin-bottom: var(--pls-spacing-l);
        h1 {
            font-size: var(--pls-font-size-l);
            font-weight: var(--pls-font-weight-bold);
        }
        a {
            &.back-top-list {
                text-align: right;
                font-size: var(--pls-font-size-s);
                &:hover {
                    text-decoration: underline;
                }
                &:visited {
                    color: var(--pls-object-link);
                }
            }
        }
    }
}
.m3-oc-c985-search-main {
    .c985-oc-map-search-area {
        width: 100%;
        height: 600px;
        display: flex;
        justify-content: center;
        margin-bottom: var(--pls-spacing-l);
        .map-area {
            width: calc(100% - 200px);
            overflow: hidden;
            > div {
                position: relative;
                .mesh-pin p {
                    width: 50px;
                    height: 50px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    background: var(--pls-basic-white);
                    border: 3px solid var(--pls-blue-600);
                    border-radius: 50%;
                    color: var(--pls-blue-600);
                    font-size: var(--pls-font-size-base);
                    font-weight: var(--pls-font-weight-bold);
                    text-align: center;
                }
                .marker-pin {
                    position: absolute;
                    background: none;
                    border: none;
                    padding: 0;
                    cursor: pointer;
                    outline: none;
                    .pin-outer {
                        fill: var(--pls-red-600);
                        stroke: none;
                    }
                    .pin-inner {
                        fill: var(--pls-basic-white);
                    }
                    &.is-active {
                        .pin-outer {
                            fill: var(--pls-basic-white);
                            stroke: var(--pls-red-600);
                            stroke-width: 2px;
                        }
                        .pin-inner {
                            fill: var(--pls-red-600);
                        }
                    }
                }
                .estate-balloon-wrapper {
                    position: absolute;
                    width: 240px;
                    filter: drop-shadow(0 2px 4px var(--pls-scrim-primary));
                    &:hover .detail-link a {
                        text-decoration: underline;
                    }
                    .balloon-content {
                        background: var(--pls-basic-white);
                        border-radius: var(--pls-border-radius-m);
                        position: relative;
                        &::after {
                            content: '';
                            position: absolute;
                            width: 0;
                            height: 0;
                            border-style: solid;
                            left: 50%;
                            transform: translateX(-50%);
                            background-color: transparent;
                            z-index: 2;
                        }
                    }
                    &.is-bottom {
                        .balloon-content::after {
                            bottom: -15px;
                            border-width: 16px 12px 0 12px;
                            border-color: var(--pls-basic-white) transparent transparent transparent;
                        }
                    }
                    &.is-top {
                        .balloon-content::after {
                            top: -15px;
                            border-width: 0 12px 16px 12px;
                            border-color: transparent transparent var(--pls-basic-white) transparent;
                        }
                    }
                    &.is-left {
                        .balloon-content::after {
                            left: -15px;
                            top: 50%;
                            transform: translateY(-50%);
                            border-width: 12px 16px 12px 0;
                            border-color: transparent var(--pls-basic-white) transparent transparent;
                        }
                    }
                    &.is-right {
                        .balloon-content::after {
                            left: auto;
                            right: -15px;
                            top: 50%;
                            transform: translateY(-50%);
                            border-width: 12px 0 12px 16px;
                            border-color: transparent transparent transparent var(--pls-basic-white);
                        }
                    }
                    .detail-link {
                        padding: var(--pls-spacing-xs) var(--pls-spacing-s);
                        border-bottom: 1px solid var(--pls-gray-300);
                        a {
                            color: var(--pls-object-link);
                            font-size: var(--pls-font-size-s);
                            &:visited {
                                color: var(--pls-object-link);
                            }
                        }
                    }
                    .estate-outline {
                        padding: var(--pls-spacing-xs) var(--pls-spacing-s);
                        .info {
                            display: flex;
                            flex-direction: column;
                            gap: var(--pls-spacing-xxs);
                            margin-bottom: var(--pls-spacing-xs);
                            > div {
                                display: inline-flex;
                                align-items: flex-start;
                                font-size: var(--pls-font-size-xs);
                                gap: 6px;
                                width: 100%;
                                font-weight: var(--pls-font-weight-bold);
                                .icon-mark {
                                    font-weight: var(--pls-font-weight-regular);
                                    background: var(--pls-gray-300);
                                    padding: var(--pls-spacing-xxs);
                                    font-size: var(--pls-font-size-xs);
                                    line-height: 1;
                                }
                                .cost {
                                    color: var(--pls-red-600);
                                    font-weight: var(--pls-border-radius-m);
                                }
                            }
                        }
                        p {
                            font-size: var(--pls-font-size-xs);
                            line-height: 1.5;
                        }
                    }
                }
                .detail-select-wrapper {
                    position: absolute;
                    top: 0;
                    right: 0;
                    width: 230px;
                    height: 100%;
                    z-index: 10;
                    > div {
                        position: relative;
                        width: 100%;
                        height: 100%;
                        .select-content {
                            position: absolute;
                            right: 0;
                            width: 100%;
                            border-radius: var(--pls-border-radius-m) 0 0 var(--pls-border-radius-m);
                            background: var(--pls-surface-accent-light);
                            padding: var(--pls-spacing-s) var(--pls-spacing-s) var(--pls-spacing-m);
                            box-shadow: 0 2px 4px var(--pls-scrim-primary);
                            .item {
                                font-weight: var(--pls-font-weight-bold);
                                font-size: var(--pls-font-size-s);
                                margin-bottom: 6px;
                            }
                            &.subjects {
                                top: 136px;
                            }
                            &.estate-type {
                                top: 213px;
                            }
                            &.estate-cost {
                                top: 290px
                            }
                            &.estate-size {
                                top: 368px;
                            }
                            &.special-conditions {
                                top: 58px;
                            }
                            &.campaign {
                                top: 475px;
                            }
                            .select-subjects {
                                display: flex;
                                column-gap: var(--pls-spacing-xs);
                                row-gap: 2px;
                                flex-wrap: wrap;
                                .pls-checkbox {
                                    width: calc((100% - 8px) / 2);
                                    font-size: 13px;
                                }
                            }
                            .select-type {
                                display: flex;
                                flex-direction: column;
                                row-gap: 2px;
                                .pls-checkbox {
                                    width: 100%;
                                    font-size: 13px;
                                }
                            }
                            .estate-type-caution {
                                margin-top: var(--pls-spacing-xxs);
                                font-size: var(--pls-font-size-xs);
                            }
                            .estate-info {
                                display: flex;
                                flex-direction: column;
                                row-gap: 6px;
                                font-size: 13px;
                                .estate-info-inner {
                                    .pls-radio {
                                            font-size: 13px;
                                        }
                                        .pls-checkbox {
                                            font-size: 13px;
                                        }
                                    .pulldown-area {
                                        display: flex;
                                        justify-content: space-between;
                                        align-items: center;
                                        .pls-select {
                                            width: calc((100% - 20px) / 2);
                                            max-width: 360px;
                                            height: auto;
                                            margin: 0;
                                            box-shadow: none;
                                            background-color: #FFF;
                                            color: var(--pls-gray-alpha-900);
                                            padding: 9px 6px;
                                            border-radius: 4px;
                                            border: 1px solid var(--pls-border-strong);
                                            line-height: 1.7;
                                            &:focus-visible {
                                                outline: none;
                                                border: 1px solid var(--pls-sky-600);
                                            }
                                        }
                                    }
                                }
                            }
                            .special-conditions {
                                display: inline-flex;
                                flex-wrap: wrap;
                                gap: 6px;
                                .pls-selectButton {
                                    font-size: 13px;
                                    padding: 2px 6px;
                                    min-height: auto;
                                    input {
                                        display: none;
                                    }
                                }
                            }
                            .champaign-check {
                                .pls-checkbox {
                                    margin-bottom: 6px;
                                    font-size: 13px;
                                }
                                .link-to-terms {
                                    padding: var(--pls-spacing-xs) 0;
                                    a {
                                        color: var(--pls-object-link);
                                        font-size: var(--pls-font-size-xs);
                                        &::after {
                                            content: " ";
                                            display: inline-block;
                                            vertical-align: middle;
                                            width: 18px;
                                            height: 18px;
                                            background: url(/clinic/img/icon-arrow-blue.svg) no-repeat left top;
                                            background-size: cover;
                                            margin: -3px 0 0 2px;
                                        }
                                        &:hover {
                                            text-decoration: underline;
                                        }
                                        &:visited {
                                            color: var(--pls-object-link);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            #map {
                width: 100%;
                height: 100%;
            }
        }
        .detail-search-panel {
            width: 200px;
            background: var(--pls-basic-white);
            .header-count {
                width: 100%;
                height: 136px;
                background: #DBE9FE;
                display: flex;
                align-items: center;
                > div {
                    width: 100%;
                    padding: 0 var(--pls-spacing-s);
                    line-height: 1;
                    .total-count {
                        width: 100%;
                        margin-bottom: var(--pls-spacing-m);
                        display: flex;
                        align-items: end;
                        justify-content: space-between;
                        font-weight: var(--pls-font-weight-bold);
                        font-size: var(--pls-font-size-base);
                        div {
                            &:last-of-type {
                                text-align: right;
                                span {
                                    font-weight: var(--pls-font-weight-bold);
                                    font-size: var(--pls-font-size-xxl);
                                    color: var(--pls-object-accent-dark);
                                }
                            }
                        }
                    }
                    .sub-count {
                        width: 100%;
                        margin-bottom: 6px;
                        display: flex;
                        align-items: end;
                        justify-content: space-between;
                        font-size: var(--pls-font-size-xs);
                        line-height: 1;
                        div {
                            &:last-of-type {
                                text-align: right;
                                span {
                                    font-weight: var(--pls-font-weight-bold);
                                    font-size: var(--pls-font-size-base);
                                }
                            }
                        }
                    }
                    .link-unreleased-estate {
                        text-align: right;
                        line-height: 1;
                        a {
                            color: var(--pls-object-link);
                            font-size: var(--pls-font-size-xs);
                            &::after {
                                content: " ";
                                display: inline-block;
                                vertical-align: middle;
                                width: 18px;
                                height: 18px;
                                background: url(/clinic/img/icon-arrow-blue.svg) no-repeat left top;
                                background-size: cover;
                                margin: -3px 0 0 2px;
                            }
                        }
                    }
                }
            }
            .detail-search-select {
                width: 100%;
                height: 464px;
                list-style: none;
                margin: 0;
                padding: 0;
                display: flex;
                flex-direction: column;
                gap: 0;
                li {
                    position: relative;
                    height: calc(464px / 6);
                    display: block;
                    border-top: 1px solid var(--pls-gray-500);
                    border-left: 3px solid var(--pls-blue-800);
                    background: var(--pls-basic-white);
                    padding: 0 var(--pls-spacing-s) 0 var(--pls-spacing-l);
                    transition: all 0.3s;
                    &::before {
                        content: " ";
                        display: block;
                        position: absolute;
                        left: 5px;
                        top: 50%;
                        transform: translateY(-50%);
                        width: 12px;
                        height: 12px;
                        background: url(/clinic/img/c985_icon-arrow-bk.svg) no-repeat left top / cover;
                    }
                    &.open {
                        background: var(--pls-surface-accent-light);
                        border-left: none;
                        &::before {
                            transform: translateY(-50%) rotate(180deg) ;
                        }
                    }
                    &:hover {
                        background: var(--pls-surface-accent-light);
                        cursor: pointer;
                    }
                    > div {
                        display: flex;
                        flex-direction: column;
                        width: 100%;
                        height: 100%;
                        justify-content: center;
                        gap: 6px;
                        .item {
                            font-weight: var(--pls-font-weight-bold);
                            color: var(--pls-blue-800);
                            font-size: var(--pls-font-size-xs);
                        }
                        p {
                            font-size: var(--pls-font-size-s);
                            line-height: 1.3;
                            white-space: nowrap;
                            overflow: hidden;
                            text-overflow: ellipsis;
                            &.unselected {
                                color: var(--pls-gray-500);
                            }
                        }
                    }
                }
            }
        }
    }
    .m3-oc-c985-map-caution {
        font-size: var(--pls-font-size-xs);
        color: var(--pls-gray-700);
        margin-bottom: var(--pls-spacing-l);
    }
    .m3-oc-c985-other-estate-info {
        .title {
            font-size: var(--pls-font-size-l);
            font-weight: bold;
            margin-bottom: var(--pls-spacing-l);
        }
        ul {
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: var(--pls-spacing-m);
            li {
                display: block;
                width: calc((100% - 32px) / 3);
                a {
                    display: block;
                    width: 100%;
                    border-radius: var(--pls-border-radius-m);
                    border: 1px solid var(--pls-gray-300);
                    color: var(--pls-object-primary);
                    background: var(--pls-basic-white);
                    padding: var(--pls-spacing-m);
                    position: relative;
                    &::after {
                        content: " ";
                        position: absolute;
                        display: block;
                        width: 100%;
                        height: 100%;
                        border-radius: var(--pls-border-radius-m);
                        background: var(--pls-white-alpha-500);
                        opacity: 0;
                        transition: all 0.3s;
                        top: 0;
                        left: 0;
                    }
                    &:hover {
                        &::after {
                            opacity: 1;
                        }
                    }
                    div {
                        &.estate-number {
                            display: flex;
                            font-weight: var(--pls-font-weight-bold);
                            align-items: center;
                            gap: var(--pls-spacing-m);
                            margin-bottom: var(--pls-spacing-s);
                            .thumbnail {
                                width: 100px;
                                img {
                                    width: 100%;
                                    height: auto;
                                }
                            }
                            .number {
                                width: calc(100% - 116px);
                                font-weight: var(--pls-font-weight-bold);
                                font-size: var(--pls-font-size-l);
                                span {
                                    font-size: 2rem;
                                    font-weight: var(--pls-font-weight-bold);
                                }
                                p {
                                    font-weight: var(--pls-font-weight-bold);
                                    font-size: var(--pls-font-size-base);
                                    display: flex;
                                    gap: 4px;
                                }
                            }
                        }
                        &.link-text {
                            text-align: center;
                            span {
                                color: var(--pls-object-link);
                                font-weight: var(--pls-font-weight-regular);
                                &::after {
                                    content: "";
                                    display: inline-block;
                                    vertical-align: middle;
                                    width: 18px;
                                    height: 18px;
                                    margin: -4px 0 0 var(--pls-spacing-xs);
                                    background: url(/clinic/img/icon-arrow-blue.svg) no-repeat left top / cover;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

.pls-checkbox input[type=checkbox].input-checkbox {
    width: 16px;
    min-width: 16px;
    height: 16px;
    border: 1px solid var(--pls-border-strong);
    border-radius: 2px;
    outline: none;
    margin: 0.25rem 0 0
}

.pls-checkbox input[type=checkbox].input-checkbox:checked {
    background: var(--pls-surface-accent);
    border-color: var(--pls-surface-accent)
}

.pls-checkbox input[type=checkbox].input-checkbox:checked::before {
    position: absolute;
    top: 1px;
    left: 4px;
    display: block;
    width: 6px;
    height: 10px;
    content: "";
    border-right: 2px solid var(--pls-basic-white);
    border-bottom: 2px solid var(--pls-basic-white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg)
}

.pls-checkbox input[type=checkbox].input-checkbox:disabled {
    background: #C6C6CA;
    border-color: #C6C6CA
}

.pls-checkbox input[type=checkbox].input-checkbox:disabled:before {
    position: absolute;
    top: 6px;
    left: 2px;
    display: block;
    width: 10px;
    height: 2px;
    content: "";
    background: var(--pls-basic-white)
}
