@charset "utf-8";

.container {
    min-height: calc(100vh - 290px);
    padding-left: 0;
    padding-right: 0;
}

.wrap {
    width: 1760px;
    margin: 0 auto;
}

.px-100px {
    padding-left: 100px;
    padding-right: 100px;
}

.pe-100px {
    padding-right: 100px;
}

.web-menu-wrapper {
    display: flex;
    font-size: 1.25rem;
    align-items: center;
    flex: 1;
    justify-content: space-between;
    padding: 0 240px;
}

.web-menu-wrapper div {
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s;
    padding: 10px 15px;
}

.web-menu-wrapper div:hover {
    color: #0F967D;
    font-weight: 600;
}

.web-menu-button {
    display: flex;
    align-items: center;
    padding: 10px 0 10px 10px;
}

.web-content-wrapper {

    margin: 0 auto;
    padding: 0 50px;
}

.top-contents {
    width: 100%;
    height: 730px;
    background-color: #F4FAF9;
}

.top-contents .swiper {
    padding-top: 50px;
    padding-bottom: 30px;
}

.top-contents .swiper-slide {
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 540px;
    align-items: flex-end;
    justify-content: center;
    text-align: center;
    position: relative !important;
    cursor: pointer;
}

.top-contents .swiper-slide img {
    display: block;
    width: 100%;
    height: 540px;
    border-radius: 8px;
}

.top-contents .swiper-slide .text-overlay {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(255, 255, 255, 0.7);
    padding: 10px 15px;
    box-sizing: border-box;
    border-radius: 0 0 8px 8px;
}

.top-contents .swiper-slide .title {
    font-size: 32px;
    margin-top: 5px;
    opacity: 0.8;
    color: #555;
    letter-spacing: -0.5px;
}

.top-contents .swiper-slide .price {
    font-size: 28px;
    color: #111;
    font-weight: bold;
}

.price_point {
    display: inline-block;
    width: 29px;
    height: 29px;
    line-height: 28px;
    font-size: 18px;
    color: #fff;
    margin-right: 3px;
    border-radius: 5px;
    vertical-align: text-bottom;
    text-align: center;
}

.red_box {
    background: #D82B2B;
}

.blue_box {
    background: #2B59D8;
}

.green_box {
    background: #075B4B;
}

.slash {
    padding: 0 3px;
}

.top-contents .swiper-slide .top-left-text {
    width: 130px;
    height: 68px;
    line-height: 68px;
    position: absolute;
    top: 36px;
    left: 0;
    background: #F47D3C;
    color: white;
    font-size: 24px;
    font-weight: bold;
    box-sizing: border-box;
    border-radius: 0 5px 5px 0;
}

.swiper-button-next,
.swiper-button-next2 {
    width: 40px !important;
    background: url("../images/swiper_next.png") no-repeat 50% center;
    background-size: 100%;
    position: absolute !important;
    right: 500px !important;
}

.swiper-button-prev,
.swiper-button-prev2 {
    width: 40px !important;
    background: url("../images/swiper_prev.png") no-repeat 50% center;
    background-size: 100%;
    position: absolute !important;
    left: 500px !important;
    bottom: 50%;
} 

.swiper-button-next2::after,
.swiper-button-next::after,
.swiper-button-prev2::after,
.swiper-button-prev::after {
    display: none;
}

/* 플로팅 메뉴 전체 스타일 */
.floating-menu {
    position: fixed;
    bottom: 15%;
    right: 50px;
    width: 100px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 0;
    z-index: 999;
}

/* 메뉴 아이템 스타일 */
.floating-menu .menu-item {
    width: 100%;
    text-align: center;
    padding: 20px 0;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* 아이콘 스타일 */
.floating-menu .menu-item img {
    margin-bottom: 5px;
}

/* 구분선 */
.floating-menu .divider {
    width: 75%;
    height: 1px;
    background: #E0E0E0;
}

/* TOP 버튼 스타일 */
.floating-menu .top-button {
    position: absolute;
    bottom: -24px;
    width: 50px;
    height: 50px;
    background: #298170;
    color: white;
    font-size: 16px;
    font-weight: bold;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: background 0.3s;
}

.floating-menu .top-button:hover {
    background: #255D48;
}


/* Icon Bounce */
.hvr-icon-bounce {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.hvr-icon-bounce .hvr-icon {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
.hvr-icon-bounce:active .hvr-icon,
.hvr-icon-bounce:focus .hvr-icon,
.hvr-icon-bounce:hover .hvr-icon {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

.bottom-contents {
    display: flex;
    gap: 24px;
    margin: 160px auto 100px;
}

.list_view {
    width: 150px;
    height: 60px;
    border: 1px solid #ccc;
    color: #9D9D9D;
    font-size: 1.125rem;
}
.card-right {
    display: flex;
    align-items: center;
    gap: 20px;
}

#recommend-wrapper {
    margin-bottom: 50px;
}

.col-6 {
    width: 24% !important;
}

.card {
    letter-spacing: -0.5px;
    border-radius: 0;
}

.card.news {}

.card.contact {
    display: flex;
}

.card.contact .row {
    padding: 70px 40px;
    /* padding-bottom: 20px; */
}

.card.contact .contact-info {
    margin-top: 30px;
    font-size: 22px;
}

/* 카드 제목 */
.contact .card-header,
.listing .card-header,
.news .card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 32px;
    font-weight: 500;
    margin-bottom: 10px;
    border-bottom: none;
    padding: 20px 40px;
}
.listing .card-header {
    padding: 20px 0;
    margin-top: 20px;
}

.col {
    /* width: 332px;
    flex-basis: 332px; */
}

.c_gap {
    gap: 22px;
}

.c_hover {
    cursor: pointer;
}

.c_hover:hover .card-img-top {
    transform: scale(1.2);
}

.custom-col {
    width: calc((100% - 88px) / 5) !important;
    max-width: calc((100% - 88px) / 5);
}

.img_box {
    display: inline-block;
    width: 100%;
    height: 260px;
    overflow: hidden;
}

.card-img-top {
    width: 100%;
    height: 100%;
    transition: all 0.3s linear;
}

.card-body p:nth-child(1) {
    font-size: 18px;
    padding: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.card-title {
    font-size: 24px;
}
.card-title span {
    letter-spacing: -1px;
}
.grey_ex span {
    display: inline-block;
    /*width: 54px;*/
    height: 32px;
    line-height: 32px;
    background: #F5F5F5;
    text-align: center;
    color: #555;
}

.grey_ex span:last-child {
    margin-left: 6px;
}

.grey_ex span:empty {
    display: none;
}

.c_divider {
    position: relative;
    display: inline-block;
    padding-right: 16px;
}

.c_divider::after {
    content: "";
    width: 1px;
    height: 12px;
    background: #ddd;
    position: absolute;
    bottom: 50%;
    transform: translateX(-50%);
    left: 8px;

}

/* 구분선 */
.bottom-contents .divider {
    /* width: 100%;
	height: 2px;
	background: #0F967D;
	margin-bottom: 10px; */
}

.news {
    width: 748px !important;
    height: 340px;
    padding: 40px 34px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 20px;
}
.news .card-header {
    padding: 0 5px 36px;
    border-bottom: 2px solid #075B4B;
    box-sizing: border-box;
}

.news-item {
    display: flex;
    align-items: center;
    padding: 36px 30px;
    border-bottom: 1px solid #ddd;
    font-size: 22px;
    box-sizing: border-box;
}

.news-item:last-child {
    border-bottom: none;

}

.news-item span:last-child {
    text-overflow: ellipsis;
    display: inline-block;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
}

.news-item a {
    width: calc(100% - 100px);
}

.news-label {
    width: 72px;
    background: #075B4B;
    color: white;
    border-radius: 20px;
    box-sizing: border-box;
    margin-right: 25px;
    text-align: center;
    font-weight: 500;
    padding-bottom: 5px;
}

/* 상담문의 */
.contact {
    width: 628px;
    height: 340px;
    border: 1px solid #ddd;
    border-radius: 20px;
}

.contact-info-wrapper {
    flex: 1;
    padding: 40px;
}

.contact-info {
    font-size: 16px;
    margin: 10px 0;
}

/* 전화 아이콘 */
.contact-icon {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    display: flex;
}

.contact-icon img {}

.more {
    color: #555;
    font-size: 20px;
    text-decoration: none;
    font-weight: 400;
}
.more img {
    height: 15px;
    padding-left: 3px;
    vertical-align: initial;

}

.flow_banner {
    overflow: hidden;
    display: flex;
    max-width: 100%;
    margin: 0 auto;
}

.flow_banner .list {
    display: flex;
    list-style: none;
    padding-left: 0;
}

.flow_banner .list > li {
    margin: 0 5px;
    cursor: pointer;
}

.flow_banner .list > li img {
    width: 195px;
    height: 80px;
}

@keyframes flowRolling {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* 회사소개 */
.intro {
    color: #075B4B;
    position: relative;
}

.card-header.intro {
    margin-top: 80px;
    font-size: 32px;
    font-weight: 500;
    border-bottom: 2px solid #ddd;
}

.intro::after {
    content: '';
    width: 130px;
    height: 2px;
    background: #075B4B;
    position: absolute;
    bottom: -2px;
    left: 0;
    z-index: 1;
}

.intro-body {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

.intro-write {
    width: 680px;
    padding-left: 20px;
    text-align: justify;
    font-size: 22px;
    line-height: 1.8;
}

.intro-write h3 {
    font-weight: bold;
    padding-bottom: 20px;
    line-height: 1.6;
}

.intro-photo {
    height: 428px;
    border: 1px solid #ddd;
    border-radius: 20px;
}

.intro-photo img{
    width: 680px;
    border-radius: 20px;
}

.staff_box {
    margin-top: 140px;
}

.ceo {
    width: 680px;
    height: 635px;
    border: 1px solid #ddd;
    border-radius: 18px;
    box-sizing: border-box;
    padding: 63px 50px;
}

.name_txt {
    font-size: 32px;
    font-weight: bold;
    margin-top: 30px;
    padding-left: 110px;
    box-sizing: border-box;
}

.name_txt span {
    font-size: 28px;
    color: #848484;
    font-weight: 500;
}
.call_txt {
    font-size: 24px;
    margin-top: 10px;
    padding-left: 110px;
    box-sizing: border-box;
}

.staff {
    width: 680px;
    display: flex;
    flex-direction: column;
    gap: 20px; /* 요소 간 간격 설정 */
    height: auto; /* 고정 높이 제거 */
}

.s_box {
    width: 680px;
    height: 198px;
    border: 1px solid #ddd;
    border-radius: 18px;
    display: flex;
}
.s_box img {
    /* width: 187px; */
    height: 178px;
    display: inline-block;
    margin-left: 90px;
    margin-top: 19px;
}

.s_box .name_txt {
    margin-top: 64px;
    font-size: 30px;
}

.s_box .name_txt span {
    font-size: 26px;
}

.s_box .call_txt {
    font-size: 22px;
}

#map {
    width: 100%;
    height: 400px;
    margin-top: 30px;
}

.map {
    width: 1100px;
    margin: 0 auto;
}

.map_header {
    display: flex;
    justify-content: space-between;
    margin-top: 64px;
    margin-bottom: 50px;
}

.map_header h3 {
    font-size: 24px;
}

.office_btn {
    width: 120px;
    height: 48px;
    line-height: 48px;
    background: #075B4B;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    border-radius: 5px;
    letter-spacing: -1px;
}

.office_btn img {
    display: inline-block;
    padding: 5px 8px 10px 5px;
}

.map_content .m_row {
    display: flex;
}

.m_row {
    padding: 30px 20px;
    border-top: 1px solid #EBEBEB;
}

.m_row p {
    font-size: 18px;
}

.m_row p span {
    display: inline-block;
    color: #999;
    margin-right: 30px;
}

.map_ico {
    width: 125px;
    font-size: 20px;
    letter-spacing: -1px;
    margin-right: 43px;
}

.map_ico img {
    display: inline-block;
    margin-right: 10px;
    vertical-align: sub;
    box-sizing: border-box;
}

.owner_info p span {
    width: 84px;
}

.time-info p span {
    width: 50px;
}

/* 매물 상세 */

.d_header {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 10px;
}

.d_header h2 {
    font-weight: 400;
}

.green_txt {
    position: relative;
    font-weight: 500;
    color: #075B4B;
}

/* .green_txt::after {
	content: '';
	width: 111px;
	height: 2px;
	background: #298170;
	position: absolute;
	bottom: -6px;
	left: 0;
	z-index: 1;
} */
 
.d_head_right {
    display: flex;
}
.number_txt {
    font-size: 20px;
    font-weight: 400;
    color: #555555;
    /*margin-left: 14px;*/

}

.price_txt {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 0;
    margin-right: 20px;
}

.n_btn {
    width: 100px;
    height: 45px;
    background:#00DE5A;
    text-align: center;
    font-weight: 500;
    font-size:  1.125rem;
    border-radius: 8px;
}

.n_btn:hover {
    background: #17b75e;
}
.npay_btn img {
    height: 20px;
}
.blog_btn img {
    height: 24px;
}

/* 갤러리 슬라이드 */
.gallery_box {
    width: 100%;
    height: 100%;
    margin-top: 24px;
    overflow: hidden;
}

.gallery_box .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    background-size: cover;
    background-position: center;
}

.gallery_box .swiper-slide img {
    display: block;
    width: 100%;
    height: 100px;
    object-fit: cover;
}

.main_swiper {
    width: 100%;
    height: 600px;
    position: relative;
}

.main_swiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}

.main_swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sub_swiper {
    width: 100%;
    height: 216px;
    margin-left: auto;
    margin-right: auto;
}

.sub_swiper .swiper-slide {
    background-size: cover;
    background-position: center;
}

.main_swiper {
    width: 100%;
}

.sub_swiper {
    box-sizing: border-box;
    padding: 20px 0 0;
}

.sub_swiper .swiper-slide {
    width: 216px;
    height: 100%;
    opacity: 0.4;
    margin-right: 20px;
}

.sub_swiper .swiper-slide-thumb-active {
    opacity: 1;
}

.sub_swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.swiper_btn_next {
    position: absolute !important;
    right: 10px !important;
}
.swiper_btn_prev {
    position: absolute !important;
    left: 10px !important;
}

.base_box {
    font-size: 18px;
    font-weight: 400;
}

.base-contents,
.explan_contents,
.map_contents,
.option_contents {
    margin-top: 100px;
}

.txt_header {
    margin-bottom: 50px !important;
    font-size: 32px;
    font-weight: 500;
}

.b_row {
    padding: 30px 100px;
    border-top: 1px solid #ddd;
    box-sizing: border-box;
    align-items: center;
}
.base_box .b_row:last-child {
    border-bottom: 1px solid #ddd;
}

.col_title {
    width: 140px;
    margin-right: 50px;
    font-weight: 500;
}

.rotate_icon {
    padding: 5px 8px;
    margin-left: 5px;
    background: #ebebeb;
    font-size: 14px;
    color: #666;
    border-radius: 5px;
    vertical-align: top !important;
}

/* Icon Spin */
.hvr-icon-spin {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.hvr-icon-spin .hvr-icon {
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
}
.hvr-icon-spin:active .hvr-icon,
.hvr-icon-spin:focus .hvr-icon,
.hvr-icon-spin:hover .hvr-icon {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
}

.option_box {
    width: 1216px;
    margin: 0 auto;
}

.o_gap {
    gap: 48px;
    margin-bottom: 30px;
}

.o_gap .col {
    width: 110px;
    height: 110px;
    flex: none;
}

.explan_box {
    width: 100%;
    height: 490px;
    background: #F3F8F7;
    padding: 30px 50px;
    font-size: 18px;
}

.map_box {
    width: 100%;
}

/* 매물검색 리스트 */
.serch_contents {
    width: 100%;
    height: 350px;
    background: #F4FAF9;
}

.s_header h2 {
    padding-top: 80px;
    font-size: 46px;
    text-align: center;
}

.list_filter {
    margin-top: 50px;
}

.list_contents {
    margin-top: 100px;
}

.list_more_btn,
.regis_more_btn {
    margin: 0 auto;
}
.list_more_btn button,
.regis_more_btn button,
.qna_btn button {
    width: 150px;
    height: 60px;
    border: 1px solid #075B4B;
    font-size: 20px;
    color: #075B4B;
    font-weight: 555;
    text-align: center;
    margin-top: 70px;
    box-sizing: border-box;
}

#load-more-btn:hover .spinner-border.text-success {
    color: white;
}
/* Back Pulse */
@-webkit-keyframes hvr-back-pulse {
    50% {
        background-color: rgba(7, 91, 75, 0.75);
    }
}
@keyframes hvr-back-pulse {
    50% {
        background-color: rgba(7, 91, 75, 0.75);
    }
}
.hvr-back-pulse {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    overflow: hidden;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
}
.hvr-back-pulse:hover {
    -webkit-animation-name: hvr-back-pulse;
    animation-name: hvr-back-pulse;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    background-color: #075B4B;
    background-color: #075B4B;
    color: white;
}
.listing_txt {
    display: flex;
    justify-content: space-between;
    align-content: center;
    align-items: center;
}

.total_txt {
    font-size: 1.25rem;
    color: #555;
    font-weight: 400;
}

.total_num {
    font-weight: 600;
}

/* 부동산 소식 */
.news_box {
    margin-top: 50px;
}

.news_search {
    width: 970px;
    height: 80px;
    margin: 0 auto;
    box-sizing: border-box;
}

.news_search form {
    justify-content: center;
    width: 100%;
    position: relative;
}

.news_search form label {
    width: 100%;
}

.news_search input {
    width: 100%;
    height: 80px;
    border-radius: 50px;
    padding: 0 100px 0 50px;
    box-sizing: border-box;
}

.news_sch_btn {
    width: 60px;
    height: 60px;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    background: #075B4B;
    color: #fff !important;
    padding: 0;
    font-size: 1.375rem;
}

.news_sch_btn:hover {
    background: #075B4B;
    color: #fff;
}

.form-control::placeholder {
    font-size: 1.25rem;
    color: #999;
    font-weight: 400;
}

.news_table,
.qna_table {
    margin: 80px 0;
    border-top: 1px solid #075B4B;
    font-size: 1.125rem;
}

.news_table table,
.qna_table table {
    table-layout: fixed;
    /* 열 너비를 내용에 따라 자동 조정 */
    width: 100%;
    /* 테이블이 컨테이너에 맞게 확장 */
}

.news_table table tr td,
.news_table table tr th,
.qna_table table tr td,
.qna_table table tr th {
    padding: 26px;
}

.table_point {
    background: #F3F8F7;
}

.table-hover {
    background: #F3F8F7 !important;
}

.word-break {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.page-item {
    border-radius: 100%;
}
.page-item:last-child {
    margin-right: none !important;
}
.page-link {
    width: 40px;
    height: 40px;
    color: #666;
    border-radius: 100% !important;
    border-color: #dddddd !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.pagination {
    gap: 10px;
}
.pagination .page-item.active .page-link {
    background: #075B4B;
    border: none;
    color: #fff;
    font-weight: 500;

}
.page-link:hover {
    background: #F3F8F7;
    color: #0F967D;
    font-weight: 500 !important;
}

/* 부동산소식 상세 */
.news_detail_box {
    margin-top: 60px;
}

.news_detail_top {
    padding: 30px;
    border-top: 1px solid #075B4B;
    border-bottom: 1px solid #ddd;
}
.news_detail_top h3 {
    margin-bottom: 24px;
}

.detail_info {

    color: #666;
}
.detail_info dl {
    display: flex;
    gap: 20px;
    margin-bottom: 0;
}
.detail_info dl:last-child {
    margin-top: 8px;
}
.detail_info dl dt {
    font-weight: 400 !important;
}

.detail_info dl dd {
    margin-bottom: 0;
    position: relative;
}

.detail_info dl dd::before {
    content: '';
    width: 1px;
    height: 12px;
    background: #ddd;
    position: absolute;
    top: 50%;
    left: -10px;
    transform: translateY(-50%);
}

.news_detail_con {
    min-height: 600px;
    padding: 30px;
    font-size: 18px;
    border-bottom: 1px solid #ddd;
}
.news_detail_con figure {
    display: flex;
    justify-content: center;
}
.news_detail_con img {
    max-width: 1400px;
    justify-content: center;
}

.news_list_btn {
    display: inline-block;
    width: 150px;
    height: 60px;
    line-height: 60px;
    border: 1px solid #075B4B;
    font-size: 20px;
    color: #075B4B;
    font-weight: 555;
    text-align: center;
    margin-top: 70px;
    box-sizing: border-box;
}

/* 의뢰하기 */
.request_table {
    margin-top: 60px;
    border-top: 1px solid #075B4B;
    font-size: 1.125rem;
    table-layout: fixed;
}
.request_table .table {
    border-bottom: 1px solid #ddd;
}

.request_table th {
    background: #F3F8F7;
    text-align: left !important;
    font-weight: 600;
}

.request_table td,
.request_table th {
    padding: 20px 30px;
}

.request_table .form-control{
    height: 48px;
}

.request_table .form-select{
    width: 20%;
    height: 48px;
    border: 1px solid #dee2e6;
    font-size: 1.125rem;
}
#prchsPrnmntYmd,
#vstYmd {
    width: 20%;
}

#dtlRqst {
    min-height: 350px;
}

/* 문의 */
.qna_box {
    margin-top: 50px;
}
.qna_table {
    margin-top: 30px;
}
.qna_btn button {
    /* margin-top: 0; */
}
.qna_btn button a {
    display: block;
}

.badge_complete, .badge_progress {
    width: 65px;
    padding: 10px 0;
    border-radius: 100px;
}

.badge_complete {
    background: #DEF3EF;
    color: #075B4B;
}

.badge_progress {
    background: #DFECFF;
    color: #2B59D8;
}
#resultTable th tr th, #resultTable th tr td {
    align-content: center;
}
.qna_list_btn, .qna_save_btn {
    width: 150px;
    height: 60px;
    line-height: 60px;
    font-size: 20px;
    font-weight: 555;
    text-align: center;
    margin-top: 70px;
    box-sizing: border-box;
}
.qna_list_btn {
    border: 1px solid #0F967D;
    color: #075B4B;
}
.qna_save_btn {
    background: #075B4B;
    color: #fff;
}

.fa-lock {
    color: #075B4B;
}

/* 문의하기 form */
.form-control {
    font-size: 1.125rem !important;
}
.col-md-3 input::placeholder {
    font-size: 18px !important;
}

.qna_form_table {
    margin-top: 60px;
    border-top: 1px solid #075B4B;
    font-size: 1.125rem;
    table-layout: fixed;
}
.qna_form_table .table {
    border-bottom: 1px solid #ddd;
}

.qna_form_table th {
    background: #F3F8F7;
    text-align: left !important;
    font-weight: 600 !important;
}

.qna_form_table td,
.qna_form_table th {
    padding: 20px 30px;
}

.qna_form_table .form-control {
    height: 48px;
}

.qna_form_table .form-select{
    width: 20%;
    height: 48px;
    border: 1px solid #dee2e6;
    font-size: 1.125rem;
}
.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused) {
    border-color: #ddd !important;
}

/* 문의 답변 */
.qna_detail_box {
    margin-top: 60px;
}

.qna_detail_top {
    padding: 30px;
    border-top: 1px solid #075B4B;
    border-bottom: 1px solid #ddd;
}

.qna_detail_top h3, .qna_reply_top h3 {
    margin-bottom: 24px;
}

.qna_detail_con {
    min-height: 600px;
    padding: 30px;
    font-size: 18px;
    border-bottom: 1px solid #ddd;
}
.nqna_detail_con figure {
    display: flex;
    justify-content: center;
}
.qna_detail_con img {
    max-width: 1400px;
    justify-content: center;
}


.news_detail_box {
    margin-top: 60px;
}

.qna_reply_top {
    background: #F3F8F7;
    padding: 30px;
    border-bottom: 1px solid #ddd;
}
.qna_reply_con {
    height: auto;
    padding: 30px;
    font-size: 18px;
    border-bottom: 1px solid #ddd;
}

.pc_layout {
    display: flex;
    height: 100%;
}
.fixed-header, .fixed-nav {
    position: fixed;
}
.fixed-header {
    top: 0;
    width: 100%;
    z-index: 1000;
}
.fixed-footer {
    width: 100%;
}
.fixed-nav {
    top: 92px; /* header height */
    height: calc(100% - 92px);
    position: sticky;
    margin-top: 92px;
}

.scrollable-content {
    margin-top: 92px; /* header height */
    width: calc(100% - 300px);
    overflow-y: auto;
    height: calc(100% - 92px);
}
mark.search-highlight {
    background-color: rgba(255, 255, 0, 0.5);
    color: inherit; /* 원래 글자색 유지 */
    padding: 0;
    margin: 0;
    border-radius: 2px;
    font-weight: inherit; /* 원래 글자 굵기 유지 */
    display: inline;
    line-height: inherit; /* 원래 줄 높이 유지 */
    box-decoration-break: clone; /* 줄바꿈 시 스타일 유지 */
}

/* 팝업 */
.popup {
    max-width: 700px;
    /* height: 800px; */
    background: #075B4B;
    padding: 10px 10px 10px 10px;
    border-radius: 10px;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%) !important;
    margin: 0 !important;
}
.modal-content {
    max-height: 720px;
    background: #fff;
    padding: 50px 30px;
    border-radius: 10px !important;
    overflow-x: scroll;
}
.popup-title {
    font-size: 26px;
    font-weight: bold;
    color: #075B4B;
    text-align: center;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #075B4B;
}

.swiper-wrapper p {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 0 !important;
}
.swiper-wrapper img {
    width: 100%;
    height: 350px;
    background-size: cover;
}

.swiper-slide .image_resized {
    width: 100% !important; 
}

.modal-footer {
    margin-top: 5px !important;
    border-top: none !important;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
}

.pop-check {
    color: #fff;
    font-size: 18px;
    font-weight: 500;
}

.form-check-input {
    width: 20px !important;
    height: 20px !important;
}

.modal_btn {
    position: absolute;
    top: -20px;
    right: -25px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 100%;
    background: #075B4B;
    text-align: center;
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    pointer-events: auto !important;
}

.pop-slide-box {
    max-height: 50vh;
    /* scrollbar-width: none;
    -ms-overflow-style: none;
    overflow-y: auto; */
}

.pop-pointer {
    position: static !important;
    pointer-events: auto !important;
}

.pop-button-background {
    background: none !important;
    height: auto !important;
    margin-top: 0 !important;
}

.pop-modal-content {
    scrollbar-width: none;
    overflow: hidden;
}

.modal-footer .fas {
    color: #fff;
}

.swiper-button-prev3 .fa-chevron-left, .swiper-button-next3 .fa-chevron-right {
    width: 20px !important;
    text-align: center;
    padding-top: 9px !important;
}
.fa-pause, .fa-play {
    text-align: center;
    font-size: 15px;
}