.m3-oc-c1094-wrapper {
    color: var(--pls-object-primary);
    * {
        box-sizing: border-box;
    }
    .title-l {
        font-size: var(--pls-font-size-l);
        font-weight: var(--pls-font-weight-bold);
        margin-bottom: var(--pls-spacing-l);
        span {
            &.result-number {
                font-weight: var(--pls-font-weight-bold);
                color: var(--pls-gray-700);
                font-size: var(--pls-font-size-s);
                > span {
                    margin-left: 5px;
                    font-size: var(--pls-font-size-l);
                    font-weight: var(--pls-font-weight-bold);
                }
            }
        }
    }
    .title-m {
        font-size: var(--pls-font-size-l);
        font-weight: var(--pls-font-weight-bold);
        margin-bottom: var(--pls-spacing-m);
    }
}


/* 開業トップ *******************************************************/
.m3-oc-c1094-search {
    margin-bottom: var(--pls-spacing-l);
    .search-tab {
        display: flex;
        gap: var(--pls-spacing-xxs);
        li {
            width: 200px;
            padding: 6px 0;
            background: var(--pls-basic-white);
            gap: var(--pls-spacing-xxs);
            text-align: center;
            border-radius: var(--pls-border-radius-m) var(--pls-border-radius-m) 0 0;
            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: #7992D8;
                border-top: 1px solid #7992D8;
                border-left: 1px solid #7992D8;
                border-right: 1px solid #7992D8;
                border-bottom: none;
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    color: var(--pls-blue-800);
                    border-top: 1px solid var(--pls-blue-800);
                    border-left: 1px solid var(--pls-blue-800);
                    border-right: 1px solid var(--pls-blue-800);
                }
                &.selected {
                    background: var(--pls-blue-800);
                    border-top: none;
                    border-left: none;
                    border-right: none;
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            &.tab-train {
                color: #8ACDEE;
                border-top: 1px solid #8ACDEE;
                border-left: 1px solid #8ACDEE;
                border-right: 1px solid #8ACDEE;
                border-bottom: none;
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    color: var(--pls-sky-600);
                    border-top: 1px solid var(--pls-sky-600);
                    border-left: 1px solid var(--pls-sky-600);
                    border-right: 1px solid var(--pls-sky-600);
                }
                &.selected {
                    background: var(--pls-sky-600);
                    border-top: none;
                    border-left: none;
                    border-right: none;
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            &.tab-recommend {
                color: #88CCC7;
                border-top: 1px solid #88CCC7;
                border-left: 1px solid #88CCC7;
                border-right: 1px solid #88CCC7;
                border-bottom: none;
                .icon-search {
                    fill: currentColor;
                }
                &:hover {
                    cursor: pointer;
                    color: var(--pls-teal-600);
                    border-top: 1px solid var(--pls-teal-600);
                    border-left: 1px solid var(--pls-teal-600);
                    border-right: 1px solid var(--pls-teal-600);
                }
                &.selected {
                    background: var(--pls-teal-600);
                    border-top: none;
                    border-left: none;
                    border-right: none;
                    color: var(--pls-basic-white);
                    &:hover {
                        pointer-events: none;
                    }
                }
            }
            /*
            &::after {
                content: " ";
                position: absolute;
                display: block;
                width: 100%;
                height: 100%;
                border-radius: var(--pls-border-radius-m) var(--pls-border-radius-m) 0 0;
                background: var(--pls-white-alpha-200);
                opacity: 0;
                transition: all 0.3s;
                top: 0;
                left: 0;
            }
            &:hover {
                cursor: pointer;
                &::after {
                    opacity: 1;
                }
            }
            */

        }
    }
    .search-panel {
        font-size: var(--pls-font-size-xs);
        font-weight: var(--pls-font-weight-bold);
        background: var(--pls-basic-white) url(/clinic/img/c1094_bg-search-map.png) no-repeat center center / 355px 358px;
        border-right: 1px solid var(--pls-gray-300);
        border-bottom: 1px solid var(--pls-gray-300);
        border-left: 1px solid var(--pls-gray-300);
        padding: var(--pls-font-size-l) 0;
        .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: 702px;
            @media (min-width: 1280px) {
                width: 862px;
            }
            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: #E26A00;
                    border-radius: var(--pls-border-radius-s);
                    border-top: none;
                    border-right: none;
                    border-left: none;
                    border-bottom: 3px solid #A2490E;
                    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 {
            border-top: 4px solid var(--pls-blue-800);
            .area-link {
                background: var(--pls-blue-800);
            }
        }
        &.search-train {
            border-top: 4px solid var(--pls-sky-600);
            .area-link {
                background: var(--pls-sky-600);
            }
        }
        &.recommend {
            border-top: 4px solid var(--pls-teal-600);
            background: var(--pls-basic-white);
            padding: 0;
        }
    }
}
.m3-oc-c1094-special {
    display: flex;
    flex-wrap: wrap;
    gap: var(--pls-spacing-m);
    margin-bottom: var(--pls-spacing-l);
    > div{
        width: calc((100% - 16px) / 2);
        line-height: 1;
        a {
            display: block;
            position: relative;
            &::after {
                content: " ";
                position: absolute;
                display: block;
                width: 100%;
                height: 100%;
                border-radius: var(--pls-border-radius-m) var(--pls-border-radius-m) 0 0;
                background: var(--pls-white-alpha-200);
                opacity: 0;
                transition: all 0.3s;
                top: 0;
                left: 0;
                line-height: 1;
            }
            &:hover {
                cursor: pointer;
                &::after {
                    opacity: 1;
                }
            }
        }
    }
}
.m3-oc-c1094-new-arrival {
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-m);
    margin-bottom: var(--pls-spacing-l);
    > div {
        width: 100%;
        a {
            width: 100%;
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-m);
            background: var(--pls-basic-white) url(/clinic/img/c1094_arrow-gray-1.svg) no-repeat 99% center / 32px 32px;
            padding: 24px 48px 24px 16px;
            border-radius: var(--pls-border-radius-m);
            border: 1px solid var(--pls-gray-200);
            text-decoration: none;
            color: var(--pls-hover-primary);
            position: relative;
            &::after {
                content: " ";
                position: absolute;
                top: 0;
                left: 0;
                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;
            }
            &:hover {
                &::after {
                    opacity: 1;
                }
            }
            .estate-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);
                }
            }
            .keisho-tag-area {
                display: inline-flex;
                gap: var(--pls-spacing-xxs);
                flex-wrap: wrap;
                span {
                    background: var(--pls-blue-100);
                    color: var(--pls-blue-800);
                    font-size: var(--pls-font-size-xs);
                    line-height: 1;
                    padding: 5px 6px;
                    text-align: center;
                }
            }
            .estate-content {
                display: flex;
                gap: var(--pls-spacing-m);
                justify-content: space-between;
                align-items: flex-start;
                .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%;
                    }
                }
                .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);
                            }
                        }
                    }
                }
                &.keisho {
                    .thumbnail {
                        width: 137px;
                        height: auto;
                        background: transparent;
                    }
                    .estate-info {
                        gap: 12px;
                    }
                }
            }
            .campaign {
                background: var(--pls-yellow-100);
                padding: 6px 12px;
                display: flex;
                align-items: center;
                color: var(--pls-orange-600);
                font-size: var(--pls-font-size-s);
                .item {
                    width: 200px;
                    display: inline-flex;
                    align-items: center;
                    gap: 4px;
                    font-weight: var(--pls-font-weight-bold);
                }
            }
            &:visited {
                .estate-head {
                    .tag-area{
                        span {
                            &.new {
                                color: var(--pls-basic-white);
                            }
                            &.type {
                                color: var(--pls-gray-700);
                            }
                        }
                    }
                    .name {
                        color: var(--pls-object-primary);
                    }
                }
                .keisho-tag-area {
                    span {
                        color: var(--pls-blue-800);
                    }
                }
                .estate-info {
                    color: var(--pls-object-primary);
                }
                .campaign {
                    color: var(--pls-orange-600);
                }
            }
        }
    }
}
.m3-oc-c1094-new-arrival-more {
    margin-bottom: var(--pls-spacing-l);
    button {
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        gap: var(--pls-spacing-xxs);
        width: 264px;
        padding: 12px 0;
        border: 1px solid var(--pls-gray-500);
        border-radius: var(--pls-border-radius-s);
        background: var(--pls-basic-white);
        text-align: center;
        color: var(--pls-object-primary);
        font-weight: bold;
        font-size: var(--pls-font-size-base);
        transition: all .3s;
        &.open-content {
            img {
                transform: rotate(-180deg);
            }
        }
        &::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;
            }
        }
    }
}
.m3-oc-c1094-search-btn {
    margin-bottom: var(--pls-spacing-l);
    a {
        display: block;
        width: 310px;
        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);
        position: relative;
        border-bottom: 3px solid var(--pls-blue-800);
        &::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;
            }
        }
    }
}
.m3-oc-c1094-campaign-terms {
    padding: var(--pls-spacing-l);
    background: var(--pls-basic-white);
    margin-bottom: var(--pls-spacing-l);
}
.m3-oc-c1094-go-top {
    display: flex;
    justify-content: right;
    a {
        display: inline-flex;
        align-items: center;
        justify-content: left;
        color: var(--pls-blue-600);
        gap: 10px;
        font-size: var(--pls-font-size-s);
        &:hover {
            text-decoration: underline;
        }
        &:visited {
            color: var(--pls-blue-600);
        }
    }
}

/* 検索結果一覧 *******************************************************/
.m3-oc-c1094-search-main {
    display: flex;
    justify-content: space-between;
    gap: var(--pls-spacing-m);
    .left-content {
        width: calc(100% - 246px);
        display: flex;
        flex-direction: column;
    }
    .right-content {
        width: 230px;
        display: grid;
        flex-direction: column;
        grid-template-columns: 230px;
        grid-template-rows: auto 1fr;
        gap: var(--pls-spacing-s);
    }
    @media (min-width: 1280px) {
        .left-content {
            width: calc(100% - 306px);
        }
        .right-content {
            width: 290px;
            grid-template-columns: 290px;
        }
    }
}

.m3-oc-c1094-search-list-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-top: 8px;
    margin-bottom: 24px;
    .balloon {
        > div {
            position: relative;
            background-color: var(--pls-basic-white);
            color: var(--pls-gray-700);
            font-weight: var(--pls-font-weight-bold);
            padding: 10px 15px 12px;
            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;
            }
        }
    }
    .select-sorting {
        display: flex;
        align-items: center;
        gap: var(--pls-spacing-xs);
        span {
            font-size: var(--pls-font-size-s);
            color: var(--pls-gray-700);
        }
        .pls-select {
            width: 180px;
            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);
            font-size: var(--pls-font-size-s);
            line-height: 1.7;
        }
    }
    .result-number {
        text-align: right;
        font-weight: var(--pls-font-weight-bold);
        color: var(--pls-gray-700);
        font-size: var(--pls-font-size-s);
        gap: 5px;
        span {
            margin-left: 5px;
            font-size: var(--pls-font-size-l);
            font-weight: var(--pls-font-weight-bold);
        }
    }
}

.m3-oc-c1094-search-list {
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-m);
    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;
            height: 100%;
            border-radius: var(--pls-border-radius-m) 0 0 var(--pls-border-radius-m);
            align-self: stretch;
            display: flex;
            justify-content: center;
            align-items: center;
            background: var(--pls-gray-300);
            .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);
                    }
                }
                &:disabled {
                    background: var(--pls-gray-500);
                }
            }
        }
        .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 82px 16px;
                @media (max-width: 1279px) {
                    padding: 16px 48px 126px 16px;
                }
                position: relative;
                &.keisho {
                    padding: 16px 48px 106px 16px;
                    @media (max-width: 1279px) {
                        padding: 16px 48px 126px 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);
                            }
                        }
                        .keisho-tag-area {
                            span {
                                color: var(--pls-blue-800);
                            }
                        }
                        .info-content {
                            color: var(--pls-object-primary);
                        }
                        .campaign {
                            color: var(--pls-orange-600);
                        }
                    }
                }
                .estate-info {
                    width: 100%;
                    display: flex;
                    flex-direction: column;
                    gap: var(--pls-spacing-m);
                    .info-head {
                        .tag-area {
                            position: relative;
                            display: 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);
                                }
                                &.limited-tag {
                                    position: absolute;
                                    top: 0;
                                    right: 0;
                                    display: inline-block;
                                    padding: 6px 4px;
                                    border: 1px solid var(--pls-red-600);
                                    border-radius: var(--pls-border-radius-s);
                                    color: var(--pls-red-600);
                                    font-size: var(--pls-font-size-xxs);
                                    font-weight: var(--pls-font-weight-bold);
                                    line-height: 1;
                                }
                            }
                        }
                        .name {
                            font-size: var(--pls-font-size-l);
                            font-weight: var(--pls-font-weight-bold);
                            color: var(--pls-object-primary);
                        }
                    }
                    .keisho-tag-area {
                        display: inline-flex;
                        gap: var(--pls-spacing-xxs);
                        flex-wrap: wrap;
                        span {
                            background: var(--pls-blue-100);
                            color: var(--pls-blue-800);
                            font-size: var(--pls-font-size-xs);
                            line-height: 1;
                            padding: 5px 6px;
                            text-align: center;
                        }
                    }
                    .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);
                                    }
                                }
                            }
                        }
                    }
                    .campaign {
                        background: var(--pls-yellow-100);
                        padding: 6px 12px;
                        display: flex;
                        align-items: center;
                        font-size: var(--pls-font-size-s);
                        color: var(--pls-orange-600);
                        .item {
                            width: 200px;
                            display: inline-flex;
                            align-items: center;
                            gap: 4px;
                            font-weight: var(--pls-font-weight-bold);
                        }
                    }
                }
            }
            .link-form {
                position: absolute;
                bottom: 16px;
                left: 50%;
                transform: translateX(-50%);
                a {
                    display: block;
                    width: 310px;
                    height: 50px;
                    margin: 0 auto;
                    background: #E26A00;
                    border-radius: var(--pls-border-radius-s);
                    text-align: center;
                    font-weight:var(--pls-font-weight-bold);
                    color: var(--pls-basic-white);
                    font-size: var(--pls-font-size-base);
                    line-height: 50px;
                    border-bottom: 3px solid #A2490E;
                    position: relative;
                    span {
                        font-size: var(--pls-font-size-xs);
                    }
                    &::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;
                        }
                    }
                    &:visited {
                        color: var(--pls-basic-white);
                    }
                }
                .keisho-note {
                    margin-top: var(--pls-spacing-xs);
                    text-align: center;
                    color: var(--pls-gray-700);
                    font-size: var(--pls-font-size-xs);
                }
            }
        }
        &.limited {
            .estate-link-content {
                .link-detail {
                    .estate-info {
                        .info-content {
                            .estate-info {
                                position: relative;
                                .address,
                                .access,
                                dl {
                                    filter: blur(8px);
                                }
                                .overlay-message {
                                    position: absolute;
                                    left: 0;
                                    top: 0;
                                    width: 100%;
                                    height: 100%;
                                    > div {
                                        width: 100%;
                                        height: 100%;
                                        display: flex;
                                        text-align: center;
                                        justify-content: center;
                                        align-items: center;
                                        color: var(--pls-object-accent-dark);
                                        font-weight: bold;
                                        font-size: var(--pls-font-size-base);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    .m3-oc-c987-appeal {
        width: 100%;
        height: 222px;
        background: url(/clinic/img/c987_blurred-bg-pc.png) no-repeat left top;
        background-size: cover;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        @media (min-width: 1280px) {
            height: 271px;
        }
        .leadText {
            text-align: center;
            font-size: var(--pls-font-size-l);
            font-weight: var(--pls-font-weight-bold);
            margin-bottom: var(--pls-spacing-m);
            text-shadow: 0 0 8px var(--pls-basic-white);
            strong {
                font-weight: var(--pls-font-weight-bold);
                color: var(--pls-blue-600);
            }
        }
        a {
            display: block;
            width: 290px;
            padding: 18px 0;
            background: var(--pls-blue-600);
            border-radius: 5px;
            text-align: center;
            font-weight: var(--pls-font-weight-bold);
            color: var(--pls-basic-white);
            font-size: var(--pls-font-size-l);
            line-height: 1;
            position: relative;
            &::after {
                content: " ";
                position: absolute;
                display: block;
                width: 100%;
                height: 100%;
                border-radius: 5px;
                left: 0;
                top: 0;
                background-color: var(--pls-white-alpha-500);
                opacity: 0;
                transition: all 0.3s;
            }
            &:hover {
                &::after {
                    opacity: 1;
                }
            }
            &:visited {
                color: var(--pls-basic-white);
            }
        }
    }
}

.m3-oc-c1094-pagenation {
    margin-bottom: var(--pls-spacing-l);
    ul {
        margin: 0 auto;
        li {
            a {
                position: relative;
                color: var(--pls-object-primary);
                span {
                    top: 50%;
                    left: 50%;
                    transform: translateX(-50%) translateY(-50%);
                }
                &:visited {
                    color: var(--pls-object-primary);
                }
            }
            .pls-pagerButton.disabled {
                pointer-events: none;
                span {
                    opacity: .5;
                }
            }
            .pls-pagerButton.--current {
                a {
                    color: var(--pls-object-link);
                }
            }
        }
    }
}

.advanced-search-panel {
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-s);
    .item {
        color: var(--pls-gray-700);
        font-weight: var(--pls-font-weight-bold);
        &::before {
            content: " ";
            display: inline-block;
            vertical-align: middle;
            width: 24px;
            height: 24px;
            margin: -4px 4px 0 0;
            background: url(/clinic/img/c1094_icon-glass.svg) no-repeat left top / cover;
        }
    }
    > div {
        border-radius: var(--pls-border-radius-m);
        border: 1px solid var(--pls-gray-200);
        background: var(--pls-basic-white);
        button {
            border: 1px solid var(--pls-gray-300);
            border-radius: var(--pls-border-radius-s);
            color: var(--pls-object-primary);
            font-size: var(--pls-font-size-s);
            font-weight: var(--pls-font-weight-bold);
            background: var(--pls-basic-white);
            text-align: center;
            padding: 8px;
            margin: 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;
                }
            }
        }
        &.area-select {
            padding: 16px 12px;
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-s);
            .area-select-inner {
                display: flex;
                flex-direction: column;
                gap: 6px;
            }
            .area-selected {
                display: flex;
                justify-content: space-between;
                align-items: center;
                > div {
                    width: calc(100% - 70px);
                    font-size: var(--pls-font-size-s);
                }
                button {
                    width: 70px;
                }
            }
            .area-not-select {
                button {
                    width: 100%;
                }
            }
        }
        &.route-select {
            padding: 16px 12px;
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-s);
            .route-select-inner {
                display: flex;
                flex-direction: column;
            }
            .route-area-selected {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding-bottom: 6px;
                border-bottom: 1px solid var(--pls-gray-300);
                > div {
                    width: calc(100% - 70px);
                    font-size: var(--pls-font-size-s);
                }
                button {
                    width: 70px;
                }
            }
            .route-selected {
                padding: var(--pls-spacing-xs) 0;
                border-bottom: 1px solid var(--pls-gray-300);
                font-size: var(--pls-font-size-s);
            }
            .route-change {
                display: flex;
                justify-content: space-between;
                gap: var(--pls-spacing-xs);
                button {
                    width: calc((100% - 8px) / 2);
                }
            }
        }
        &.change-method {
            padding: 16px 12px;
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-s);
            .change-method-inner {
                display: flex;
                flex-direction: column;
                gap: 6px;
                button{
                    width: 100%;
                    &.selected {
                        border: 1px solid var(--pls-blue-600);
                        color: var(--pls-blue-600);
                        background: var(--pls-active-primary);
                    }
                }
            }
        }
        &.detail-search {
            padding: 16px 12px;
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-m);
            > div {
                .item-s {
                    font-weight: var(--pls-font-weight-bold);
                    font-size: var(--pls-font-size-s);
                    margin-bottom: 6px;
                }
                .select-subjects {
                    display: flex;
                    column-gap: var(--pls-spacing-xs);
                    row-gap: 2px;
                    flex-wrap: wrap;
                    .pls-checkbox {
                        width: calc((100% - 8px) / 2);
                    }
                }
                .select-type {
                    display: flex;
                    flex-direction: column;
                    row-gap: 2px;
                    .pls-checkbox {
                        width: 100%;
                    }
                }
                .estate-info {
                    display: flex;
                    flex-direction: column;
                    row-gap: 6px;
                    .estate-info-inner {
                        .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);
                                font-size: var(--pls-font-size-s);
                                line-height: 1.7;
                                &:focus-visible {
                                    outline: none;
                                    border: 1px solid var(--pls-sky-600);
                                }
                            }
                        }
                    }
                }
                .special-conditions {
                    display: inline-flex;
                    flex-wrap: wrap;
                    gap: var(--pls-spacing-xs);
                    .pls-selectButton {
                        font-size: var(--pls-font-size-s);
                        padding: var(--pls-spacing-xs);
                        min-height: auto;
                        input {
                            display: none;
                        }
                    }
                }
                .champaign-check {
                    .pls-checkbox {
                        margin-bottom: 6px;
                    }
                    .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);
                            }
                        }
                    }
                }
            }
        }
    }
}

.m3-oc-c974-bana {
    a {
        display: block;
        position: relative;
        span {
            &.bana-close {
                content: " ";
                display: block;
                position: absolute;
                right: 4px;
                top: 4px;
                display: block;
                width: 22px;
                height: 22px;
                z-index: 1;
            }
        }
        &::after {
            content: " ";
            position: absolute;
            display: block;
            width: 100%;
            height: 100%;
            background: var(--pls-white-alpha-500);
            opacity: 0;
            transition: all 0.3s;
            top: 0;
            left: 0;
        }
        &:hover {
            &::after {
                opacity: 1;
            }
        }
    }
}

.m3-oc-c1094-summary-inquiry {
    position: fixed;
    z-index: 20;
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--pls-gray-alpha-700);
    padding: var(--pls-spacing-s) 0;
    .inner {
        display: flex;
        justify-content: center;
        align-items: stretch;
        gap: 20px;
        .balloon-number-count {
            display: flex;
            align-items: center;
            justify-content: center;
            min-width: 120px;
            border-radius: var(--pls-border-radius-s);
            position: relative;
            padding: 10px 12px;
            background-color: var(--pls-basic-white);
            color: var(--pls-object-primary);
            font-size: var(--pls-font-size-s);
            b {
                font-size: var(--pls-font-size-base);
                font-weight: var(--pls-font-weight-bold);
            }
            &::after {
                content: " ";
                display: block;
                position: absolute;
                right: -14px;
                top: 50%;
                transform: translateY(-50%);
                background: #ffffff;
                height: calc(tan(60deg) * 20px / 2);
                width: 14px;
                clip-path: polygon(0 0, 100% 50%, 0 100%);
            }
        }
        .inquiry-btn {
            width: 420px;
            a {
                display: block;
                margin: 0 auto;
                padding: 13px 0;
                background: #E26A00;
                border-radius: var(--pls-border-radius-s);
                border-bottom: 3px solid #A2490E;
                text-align: center;
                font-weight: var(--pls-font-weight-bold);
                color: var(--pls-basic-white);
                font-size: var(--pls-font-size-base);
                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;
                    }
                }
                &:visited {
                    color: var(--pls-basic-white);
                }
            }
        }
    }
}

.m3-oc-c1094-search-not-found {
    width: 100%;
    background: var(--pls-basic-white);
    border: 1px solid var(--pls-gray-300);
    border-radius: 6px;
    padding: var(--pls-spacing-m) var(--pls-spacing-s);
    font-weight: var(--pls-font-weight-bold);
    margin-bottom: var(--pls-spacing-s);
    text-align: center;

}

.m3-oc-c1111-seo-content {
    padding-top: 40px;
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-l);
    > div {
        h2 {
            font-weight: bold;
            font-size: var(--pls-font-size-base);
            margin-bottom: var(--pls-spacing-m);
        }
        .link-content {
            display: flex;
            flex-direction: column;
            gap: var(--pls-spacing-xs);
            ul {
                display: inline-flex;
                column-gap: var(--pls-spacing-s);
                row-gap: var(--pls-spacing-xxs);
                flex-wrap: wrap;
                li {
                    a {
                        font-size: var(--pls-font-size-s);
                        color: var(--pls-object-link);
                        text-decoration: none;
                        &:hover {
                            text-decoration: underline;
                        }
                        &:visited {
                            color: var(--pls-object-link);
                        }
                    }
                }
            }
        }
    }
}

/* 物件詳細画面 ******************************************************************/
.m3-oc-c1094-adbox {
    padding: var(--pls-spacing-l);
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-m);
    background: var(--pls-basic-white);
    margin-bottom: var(--pls-spacing-m);
    .tag-date-area {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        .tag-area {
            display: inline-flex;
            align-items: center;
            gap: var(--pls-spacing-xs);
            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);
                }
            }
        }
        .update {
            text-align: right;
            font-size: var(--pls-font-size-xs);
        }
    }
    .estate-name {
        font-size: var(--pls-font-size-l);
        font-weight: var(--pls-font-weight-bold);
    }
    .campaign {
        .content {
            width: 100%;
            background: var(--pls-yellow-100);
            padding: 6px 12px;
            display: flex;
            align-items: center;
            font-size: var(--pls-font-size-s);
            color: var(--pls-orange-600);
            margin-bottom: var(--pls-spacing-xs);
            .item {
                width: 200px;
                display: inline-flex;
                align-items: center;
                gap: 4px;
                font-weight: var(--pls-font-weight-bold);
            }
        }
        .link-to-terms {
            text-align: right;
            color: var(--pls-object-link);
            font-size: var(--pls-font-size-s);
            text-align: right;
            &::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-switch-tab {
        display: flex;
        li {
            display: block;
            width: 50%;
            border-bottom: 1px solid var(--pls-gray-500);
            color: var(--pls-gray-500);
            text-align: center;
            padding: 12px;
            font-size: var(--pls-font-size-base);
            position: relative;
            &.active {
                border-bottom: 3px solid var(--pls-blue-800);
                color: var(--pls-blue-800);
                font-weight: var(--pls-font-weight-bold);
            }
            &::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 {
                cursor: pointer;
                &::after {
                    opacity: 1;
                }
            }
        }
    }
    .m3-oc-c1094-estate-pr {
        border-radius: var(--pls-border-radius-m);
        border: 1px solid var(--pls-blue-300);
        padding: 20px 24px;
        font-size: var(--pls-font-size-s);
        .item {
            color: var(--pls-blue-600);
            font-weight: var(--pls-font-weight-bold);
            margin-bottom: 10px;
        }
    }
    .cv-area {
        padding: 40px 0;
        display: flex;
        justify-content: center;
        gap: 20px;
    }
    .cv-area-map {
        padding: var(--pls-spacing-m) 0;
        display: flex;
        justify-content: center;
        gap: 20px;
    }
    .estate-info {
        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: 12px 16px;
                    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: flex-start;
                }
                dd {
                    padding: 12px 16px;
                    width: calc(100% - 123px);
                    .map {
                        margin-top: 10px;
                        position: relative;
                        #map {
                            width: 100%;
                            height: 150px;
                        }
                        button {
                            display: block;
                            position: absolute;
                            right: 10px;
                            bottom: 20px;
                            width: 154px;
                            padding: 10px 0;
                            border-radius: 100px;
                            border: 1px solid var(--pls-gray-500);
                            text-align: center;
                            color: var(--pls-object-link);
                            background: #fff;
                            font-size: 14px;
                            line-height: 1;
                            font-weight: bold;
                            margin: 0;
                            transition: all 0.3s;
                            filter: drop-shadow(0px 6px 9px rgba(51, 51, 64, 0.1)) drop-shadow(0px 0px 20px rgba(51, 51, 64, 0.08));
                            &:hover {
                                background: var(--pls-blue-100);
                            }
                        }
                    }
                    .pr-point {
                        display: flex;
                        flex-wrap: wrap;
                        column-gap: var(--pls-spacing-xs);
                        row-gap: var(--pls-spacing-xxs);
                        li {
                            width: calc((100% - 16px) / 3);
                            position: relative;
                            padding-left: 13px;
                            box-sizing: border-box;
                            &::before {
                                content: "";
                                position: absolute;
                                display: block;
                                width: 8px;
                                height: 8px;
                                border-radius: 50%;
                                background: var(--pls-blue-300);
                                left: 0;
                                top: 50%;
                                transform: translateY(-50%);
                            }
                        }
                    }
                }
                &.column-2 {
                    display: flex;
                    > div {
                        width: 50%;
                        display: flex;
                        &:first-of-type {
                            dd {
                                border-right: 1px solid var(--pls-gray-300);
                            }
                        }
                    }
                }
            }
        }
    }
    .estate-map-large {
        #map {
            width: 100%;
            height: 600px;
        }
    }
    .company-info {
        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);
                dt {
                    padding: 12px 16px;
                    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: center;
                }
                dd {
                    padding: 12px 16px;
                    width: calc(100% - 123px);
                    .name {
                        font-weight: var(--pls-font-weight-bold);
                    }
                    a {
                        &:hover {
                            text-decoration: underline;
                        }
                        &:visited {
                            color: var(--pls-object-link);
                        }
                    }
                }
            }
        }
    }
    .caution {
        font-size: var(--pls-font-size-xs);
        color: var(--pls-gray-700);
    }
}

.link-to-kaigyo-top {
    text-align: right;
    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);
        }
    }
}

.same-area-estate {
    margin-bottom: 56px;
    a {
        display: block;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        gap: var(--pls-spacing-xxs);
        width: 264px;
        padding: 12px 0;
        border: 1px solid var(--pls-gray-500);
        border-radius: var(--pls-border-radius-s);
        background: var(--pls-basic-white);
        text-align: center;
        color: var(--pls-object-primary) !important;
        font-weight: bold;
        font-size: var(--pls-font-size-base);
        transition: all .3s;
        &::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;
            }
        }
        &:visited {
            color: var(--pls-object-primary) !important;
        }
    }
}

.recommend-estate-list {
    display: flex;
    flex-direction: column;
    gap: var(--pls-spacing-m);
    margin-bottom: 56px;
    .estate-link-content {
        background: var(--pls-basic-white) url(/clinic/img/c1094_arrow-gray-1.svg) no-repeat 99% center / 32px 32px;
        border: 1px solid var(--pls-blue-200);
        border-radius: var(--pls-border-radius-m);
        .link-detail {
            display: block;
            width: 100%;
            padding: var(--pls-spacing-l) 48px var(--pls-spacing-l) var(--pls-spacing-l);
            position: relative;
            &::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);
                        }
                    }
                    .keisho-tag-area {
                        span {
                            color: var(--pls-blue-800);
                        }
                    }
                    .info-content {
                        color: var(--pls-object-primary);
                    }
                    .campaign {
                        color: var(--pls-orange-600);
                    }
                }
            }
            .estate-info {
                width: 100%;
                display: flex;
                flex-direction: column;
                gap: var(--pls-spacing-m);
                .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);
                    }
                }
                .keisho-tag-area {
                    display: inline-flex;
                    gap: var(--pls-spacing-xxs);
                    flex-wrap: wrap;
                    span {
                        background: var(--pls-blue-100);
                        color: var(--pls-blue-800);
                        font-size: var(--pls-font-size-xs);
                        line-height: 1;
                        padding: 5px 6px;
                        text-align: center;
                    }
                }
                .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);
                                }
                            }
                        }
                    }
                }
                .campaign {
                    background: var(--pls-yellow-100);
                    padding: 6px 12px;
                    display: flex;
                    align-items: center;
                    font-size: var(--pls-font-size-s);
                    color: var(--pls-orange-600);
                    .item {
                        width: 200px;
                        display: inline-flex;
                        align-items: center;
                        gap: 4px;
                        font-weight: var(--pls-font-weight-bold);
                    }
                }
            }
        }
    }
}
.m3-oc-c1094-appeal {
    width: 100%;
    height: 300px;
    background: url(/clinic/img/c1094_blurred-bg-pc.png) no-repeat left top;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    @media (min-width: 1280px) {
        height: 367px;
    }
    .lead-text {
        text-align: center;
        font-size: var(--pls-font-size-l);
        font-weight: var(--pls-font-weight-bold);
        margin-bottom: var(--pls-spacing-m);
        text-shadow: 0 0 8px var(--pls-basic-white);
        strong {
            font-weight: var(--pls-font-weight-bold);
            color: var(--pls-blue-600);
        }
    }
    a {
        display: block;
        width: 290px;
        padding: 18px 0;
        background: #E26A00;
        border-radius: 5px;
        border-bottom: 3px solid #A2490E;
        text-align: center;
        font-weight: var(--pls-font-weight-bold);
        color: var(--pls-basic-white);
        font-size: var(--pls-font-size-l);
        line-height: 1;
        position: relative;
        &:after {
            content: " ";
            position: absolute;
            display: block;
            width: 100%;
            height: 100%;
            border-radius: 5px;
            left: 0;
            top: 0;
            background-color: var(--pls-white-alpha-500);
            opacity: 0;
            transition: all 0.3s;
        }
        &:hover {
            &::after {
                opacity: 1;
            }
        }
        &:visited {
            color: var(--pls-basic-white);
        }
    }
}

.m3-oc-c1094-bottom-btn-area {
    p {
        text-align: center;
        color: var(--pls-basic-white);
        font-size: var(--pls-font-size-s);
        font-weight: var(--pls-font-weight-bold);
        margin-bottom: var(--pls-spacing-xs);
    }
    .m3-oc-c1094-bottom-action {
        display: flex;
        justify-content: center;
        gap: 20px;
    }
}

.detail-cv-btn {
    display: block;
    border-radius: var(--pls-border-radius-s);
    text-align: center;
    font-weight: var(--pls-font-weight-bold);
    &.second {
        width: 336px;
        padding: 12px;
        border: 1px solid #E26A00;
        border-bottom: 3px solid #E26A00;
        background: var(--pls-basic-white);
        font-size: var(--pls-font-size-l);
        color: #E26A00;;
        position: relative;
        span {
            font-size: var(--pls-font-size-s);
        }
        &.size-s {
            width: 310px;
            padding: 12px 8px;
            font-size: var(--pls-font-size-m);
            span {
                font-size: var(--pls-font-size-s);
            }
        }
        &: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;
            }
        }
        &:visited {
            color: #E26A00;;
        }
    }
    &.primary {
        width: 336px;
        padding: 12px;
        background: #E26A00;
        font-size: var(--pls-font-size-l);
        color: var(--pls-basic-white);
        border-bottom: 3px solid #A2490E;
        position: relative;
        span {
            font-size: var(--pls-font-size-s);
        }
        &::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;
            }
        }
        &:visited {
            color: var(--pls-basic-white);
        }
    }
}

/* 下固定ボタンのCSS調整（m3-oc-pc-estate.css 内の要素を上書きで一旦調整） **********************************************************/
#fixed-btn {
    background: var(--pls-gray-alpha-700);
    &.m_fixed {
        padding: var(--pls-font-size-s) 0;
    }
}


/* sliderのCSS調整（index.bundle.css 内の要素を上書きで一旦調整） **********************************************************/
.photo-slider {
    width: 500px;
    margin: 0 auto 8px;
    border: none;
    position: relative;
    .counter {
        border-radius: 20px;
    }
    .btn-expand {
        border-radius: 20px;
    }
}
.slider-pager {
    width: 442px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    .pager-prev,
    .pager-next {
        .btn {
            border: none;
            box-shadow: none;
            &:hover {
                cursor: pointer;
                background-color: #fff;
            }
        }
    }
}

/* 詳細検索モーダルのCSS調整（list.bundle.css 内の要素上書き） ***************************************/
.modalWrapper {
    .modal__heading {
        padding: 12px 16px;
    }
    .prefecture-select__line__area {
        padding: var(--pls-spacing-xs);
    }
    .prefecture-select__line__links {
        padding: 8px 16px;
        display: inline-flex;
        flex-wrap: wrap;
        column-gap: 16px;
    }
    .modal__bottom-close {
        width: 100%;
        text-align: center;
        padding: 16px 0;
        border-top: 1px solid var(--pls-gray-300);
    }
    .search-btn-area {
        margin-bottom: var(--pls-spacing-m);
        &.modal-bottom {
            margin-bottom: 0;
            .left-button-area .back-btn {
                padding: 11px 0;
            }
        }
        .search-btn {
            padding: var(--pls-spacing-s) 0;
            border-bottom: 3px solid var(--pls-gray-700);
            &.on {
                border-bottom: 3px solid var(--pls-blue-800);
            }
        }
    }
    .detail-select__area-all {
        padding: var(--pls-spacing-xs);
    }
    .detail-select__link-area {
        margin-bottom: var(--pls-spacing-m);
    }
}

/* 物件詳細 写真スライダーのCSS調整（list.bundle.css 内の要素上書き） ***************************************/
.photo-slider-expand {
    .counter {
        border-radius: 20px;
    }
    .close-btn-expand {
        border-radius: 20px;
    }
    ul {
        padding: 24px 80px;
        height: 100%;
        box-sizing: border-box;
        position: relative;
        li {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            height: 100%;
            img {
                max-width: 100%;
                max-height: 100%;
            }
        }
    }
}
