@import url("../../../fonts/GmarketSans/GmarketSans.css");
/* font-family:'Gmarket Sans'; */

.block {
    display: block;
}

.m_color {
    color: #0C82FE;
}

.img_box img {
    width: 100%;
}

/* intro */
.intro_bg {
    z-index: 2000;
    position: fixed;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    background-color: #001E3D;
    background-image: url(../images/intro/img_bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
}

.intro_area {
    z-index: 2000;
    position: fixed;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    text-align: center;
    padding: 10vh 0 4vh;
    box-sizing: border-box;
    overflow-y: scroll;
}

.intro_area .p_color {
    color: #FFA048;
}

.intro_area .intro_con h1 {
    font-family: 'Gmarket Sans';
    font-size: 5.5rem;
    line-height: 1.2;
    color: #fff;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 1vh;
    animation: textBling .8s ease-in-out alternate infinite;
}

.intro_area .intro_con .img_box {
    width: 60%;
    margin: 0 auto;
}

.intro_area .intro_con .img_box ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    padding: 3.4vh 10%;
    border-radius: 1000px;
    border: 2px solid #FFA048;
    background: rgba(0, 0, 0, .5);
}

.intro_area .intro_con .img_box ul li {
    padding: 0 5%;
    box-sizing: border-box;
    position: relative;
}

.intro_area .intro_con .img_box ul li::after {
    content: '';
    display: block;
    width: 1px;
    height: 76%;
    background: #fff;
    position: absolute;
    top: 12%;
    right: 0;
}

.intro_area .intro_con .img_box ul li:last-child:after {
    display: none;
}

.intro_area .intro_con .img_box ul li p {
    font-family: 'Gmarket Sans';
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.5;
    letter-spacing: -0.063rem;
    color: #fff;
}

.intro_area .intro_con .img_box ul li p span {
    display: block;
}

.intro_area .intro_con .btn_box {
    width: 50%;
    display: flex;
    gap: 16px;
    margin: 0 auto;
    margin-top: 4.5vh;
}

.intro_area .intro_con .btn_box li {
    width: 45%;
}

.intro_area .intro_con .btn_box li a {
    display: block;
    padding: 2.5vh 0;
    text-align: center;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: -0.125rem;
    border-radius: 260px;
}

.intro_area .intro_con .btn_box li a.btn_intro_main {
    background: #D8D8D8;
    box-shadow: 0 4px 5px rgba(0, 0, 0, .7), inset 0 0 10px #fff;
}

.intro_area .intro_con .btn_box li a.btn_intro_more {
    background: #FFA048;
    box-shadow: 0 4px 5px rgba(0, 0, 0, .7), inset 0 0 10px #FF832F;
}

.intro_area .intro_con .btn_box li a span {
    position: relative;
}

.intro_area .intro_con .btn_box li a span::after {
    content: '';
    display: inline-block;
    width: 10px;
    height: 16px;
    background: url(../images/intro/arrow.png) center no-repeat;
    background-size: contain;
    margin-left: 1rem;
    vertical-align: middle;
}

.intro_area .intro_con .notice {
    font-size: 1.125rem;
    line-height: 1.75rem;
    letter-spacing: -0.063rem;
    color: rgba(255, 255, 255, .4);
    margin-top: 5.5vh;
}

@keyframes textBling {
    from {
        text-shadow: 0 4px 8px rgba(0, 0, 0, .7), 2px 2px 5px #FFA048;
    }

    to {
        text-shadow: 0 4px 8px rgba(0, 0, 0, .7), 2px 2px 10px #FFA048;
    }
}

.intro_area .btn_intro_close {
    width: 60px;
    height: 60px;
    position: fixed;
    top: 9vh;
    right: 6vw;
    z-index: 2001;
}

.intro_area .btn_intro_close a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .1);
    border-radius: 50%;
    position: absolute;
    transform: rotate(0);
    transition: all .2s;
}

.intro_area .btn_intro_close a span {
    display: block;
    width: 50%;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -25%;
    margin-top: -1px;
}

.intro_area .btn_intro_close a span:nth-of-type(1) {
    transform: rotate(45deg);
}

.intro_area .btn_intro_close a span:nth-of-type(2) {
    transform: rotate(135deg);
}

@media (hover:hover) {
    .intro_area .btn_intro_close a:hover {
        transform: rotate(360deg);
    }
}


/*  << 20240813 */
/* notice popup */
.notice_popup_bg {
    z-index: 1000;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(1.5px);
}

@supports (-webkit-backdrop-filter: none) {
    .notice_popup_bg {
        -webkit-backdrop-filter: blur(1.5px);
    }
}

.notice_popup {
    z-index: 1001;
    position: fixed;
    left: calc(50% - 280px);
    transform: translateX(-50%);
    top: 22%;
}

/*.notice_popup {z-index: 1001; position: fixed; left: 20%; transform: translateX(-50%); top: 14%;}*/

.notice_popup .close_btn_top {
    z-index: 1001;
    position: absolute;
    right: -17px;
    top: -17px;
    width: 35px;
    height: 35px;
    background: url(../images/btn_round_close.png) center no-repeat;
    background-size: contain;
}

.notice_popup .mySwiper {
    width: 480px;
    height: 520px;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.notice_popup .mySwiper .swiper-wrapper .swiper-slide a {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.notice_popup .mySwiper .swiper-wrapper .swiper-slide a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
}

.notice_popup .swiper-horizontal>.swiper-pagination-bullets,
.notice_popup .swiper-pagination-bullets.swiper-pagination-horizontal,
.notice_popup .swiper-pagination-custom,
.notice_popup .swiper-pagination-fraction {
    display: inline-block;
    width: auto;
    bottom: auto;
    top: 10px;
    left: 10px;
}

.notice_popup .swiper-pagination {
    width: auto;
    font-size: 14px;
    padding: 6px 10px;
    box-sizing: border-box;
    color: #fff;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 100px;
}

/* .notice_popup .swiper-horizontal>.swiper-pagination-bullets,
.notice_popup .swiper-pagination-bullets.swiper-pagination-horizontal {width: auto; bottom: auto; top: 20px; right: 18px; text-align: right;}
.notice_popup .swiper-pagination-bullet,
.notice_popup .swiper-pagination-bullet-active {background: #fff !important;} */

.notice_popup .notice_bottom {
    background: #fff;
    border-radius: 0px 0px 12px 12px;
    padding: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.notice_popup .notice_bottom input[type="checkbox"] {
    appearance: none;
    margin: 0;
    position: relative;
}

.notice_popup .notice_bottom label {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid #5F6367;
    border-radius: 4px;
    vertical-align: middle;
    cursor: pointer;
    white-space: nowrap;
    position: relative;
    line-height: 18px;
}

.notice_popup .notice_bottom label::after {
    content: '';
    width: 80%;
    height: 80%;
    background: url(../../theme01/common/images/btn_check_gray.png) center no-repeat;
    background-size: contain;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.notice_popup .notice_bottom label span {
    display: block;
    padding-left: 28px;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px;
    line-height: 1.1;
    letter-spacing: -1px;
    color: #5F6367;
}

.notice_popup .notice_bottom a {
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    text-align: right;
    letter-spacing: -1px;
    color: #5F6367;
    position: relative;
    padding-right: 28px;
}

.notice_popup .notice_bottom a::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #5F6367;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -0.5px;
    transform: rotate(45deg);
}

.notice_popup .notice_bottom a::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #5F6367;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -0.5px;
    transform: rotate(-45deg);
}

/* notice popup2 */
.notice_popup_bg2 {
    z-index: 1000;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(1.5px);
}

@supports (-webkit-backdrop-filter: none) {
    .notice_popup_bg2 {
        -webkit-backdrop-filter: blur(1.5px);
    }
}

.notice_popup2 {
    z-index: 1001;
    position: fixed;
    left: calc(50% + 280px);
    transform: translateX(-50%);
    top: 22%;
}

.notice_popup2 .close_btn_top2 {
    z-index: 1001;
    position: absolute;
    right: -17px;
    top: -17px;
    width: 35px;
    height: 35px;
    background: url(../images/btn_round_close.png) center no-repeat;
    background-size: contain;
}

.notice_popup2 .mySwiper {
    width: 480px;
    height: 520px;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.notice_popup2 .mySwiper .swiper-wrapper .swiper-slide a {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
}

.notice_popup2 .mySwiper .swiper-wrapper .swiper-slide a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
}

.notice_popup2 .swiper-horizontal>.swiper-pagination-bullets,
.notice_popup2 .swiper-pagination-bullets.swiper-pagination-horizontal,
.notice_popup2 .swiper-pagination-custom,
.notice_popup2 .swiper-pagination-fraction {
    display: inline-block;
    width: auto;
    bottom: auto;
    top: 10px;
    left: 10px;
}

.notice_popup2 .swiper-pagination {
    width: auto;
    font-size: 14px;
    padding: 6px 10px;
    box-sizing: border-box;
    color: #fff;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 100px;
}

.notice_popup2 .notice_bottom {
    background: #fff;
    border-radius: 0px 0px 12px 12px;
    padding: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.notice_popup2 .notice_bottom input[type="checkbox"] {
    appearance: none;
    margin: 0;
    position: relative;
}

.notice_popup2 .notice_bottom label {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid #5F6367;
    border-radius: 4px;
    vertical-align: middle;
    cursor: pointer;
    white-space: nowrap;
    position: relative;
    line-height: 18px;
}

.notice_popup2 .notice_bottom label::after {
    content: '';
    width: 80%;
    height: 80%;
    background: url(../../theme01/common/images/btn_check_gray.png) center no-repeat;
    background-size: contain;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.notice_popup2 .notice_bottom label span {
    display: block;
    padding-left: 28px;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px;
    line-height: 1.1;
    letter-spacing: -1px;
    color: #5F6367;
}

.notice_popup2 .notice_bottom a {
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    text-align: right;
    letter-spacing: -1px;
    color: #5F6367;
    position: relative;
    padding-right: 28px;
}

.notice_popup2 .notice_bottom a::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #5F6367;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -0.5px;
    transform: rotate(45deg);
}

.notice_popup2 .notice_bottom a::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #5F6367;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -0.5px;
    transform: rotate(-45deg);
}

/*  20240813 >> */

/* visual */
.visual {
    /* height: calc(100vh - 100px);*/
    font-size: 0;
    overflow: hidden;
    position: relative;
    margin-top: 100px;
}

/*.visual .swiper-container ul.swiper-wrapper {height: 100vh;}*/
.visual .swiper-container ul.swiper-wrapper li {
    position: relative;
    /* height: 100%;*/
}

.visual .swiper-container ul.swiper-wrapper li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.visual .swiper-container ul.swiper-wrapper li .text_box {
    width: 100%;
    position: absolute;
    top: 18%;
    left: 16.66%;
    z-index: 10;
    color: #fff;
}

.visual .swiper-container ul.swiper-wrapper li .text_box p {
    font-size: 64px;
    font-weight: 600;
    line-height: 78px;
    letter-spacing: -2px;
}

.visual .swiper-container ul.swiper-wrapper li .text_box p.sub_top {
    letter-spacing: -1px;
    font-size: 32px;
    line-height: 1.5;
    margin-bottom: .5em;
    color: #000;
    margin-left: 10px;
    margin-right: 10px;
}

.visual .swiper-container ul.swiper-wrapper li .text_box .btn_move {
    display: inline-block;
    padding: 0 36px;
    border: 1px solid #fff;
    border-radius: 260px;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -1px;
    color: #fff;
    margin-top: 28px;
    line-height: 58px;
    height: 60px;
    box-sizing: border-box;
}

.visual .swiper-container ul.swiper-wrapper li .notice_text {
    text-align: right;
    position: absolute;
    bottom: 2%;
    right: 7%;
}

.visual .swiper-container ul.swiper-wrapper li .notice_text p {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: -1px;
    color: rgba(255, 255, 255, .8);
}


.visual .swiper-container ul.swiper-wrapper li .text_box p span.sub_text {
    display: block;
    font-size: 30px;
    line-height: 140%;
    margin-top: 20px;
    color: #000;
    font-weight: 400;
}

/* hover */
@media (hover:hover) {
    .visual .swiper-container ul.swiper-wrapper li .text_box .btn_move:hover {
        color: #161718;
        border: 1px solid #fff;
        background: #fff;
    }
}

.visual .swiper-pagination {
    position: absolute;
    left: 16.66%;
    top: auto;
    bottom: 10%;
}

.visual .swiper-pagination ul {
    display: inline-flex;
}

.visual .swiper-pagination ul li {
    display: flex;
    align-items: center;
    margin-right: 10px;
}

.visual .swiper-pagination ul li .num {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    line-height: 1em;
    cursor: pointer;
}

.visual .swiper-pagination ul li .prog {
    width: 0;
    height: 2px;
    background: rgba(255, 255, 255, .3);
    margin: 0;
    position: relative;
    transition: all 0.7s ease;
}

.visual .swiper-pagination ul li .prog>div {
    width: 0;
    height: 100%;
    background: #fff;
}

.visual .swiper-pagination ul li.on .prog {
    width: 83px;
    margin: 0 10px 0 20px;
}

.visual .swiper-pagination ul li.on .prog>div {
    width: 100%;
    animation: prog 3.5s linear;
}

.visual .swiper-pagination ul.paused li.on .prog>div {
    animation-play-state: paused;
}

@keyframes prog {
    0% {
        width: 0;
    }

    100% {
        width: 100%
    }
}

.visual #slideVisualCtr {
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url('../images/btn_wht_pause.png') center no-repeat;
    background-size: contain;
    text-indent: -9999em;
    vertical-align: inherit;
    border: none;
    cursor: pointer;
}

.visual #slideVisualCtr.play {
    background-image: url('../images/btn_wht_play.png')
}

/* 기존 visual */
/* .visual {margin-top: 28px;}
.visual .mySwiper {position: relative;}
.visual .swiper-slide {position: relative;}
.visual .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal {bottom: 30%; left: 16.66%; width: auto; }
.visual .banner_bg {background:url('../images/visual_new.png') bottom right no-repeat; background-size: cover; width: 100%; height: calc(100vh - 28px);}
.visual .video_box {width: 100%; position: relative;}
.visual .imgBG {width: 100%;}
.visual .visual_text {position: absolute; top: 50%; transform: translateY(-50%); left: 16.66%;}
.visual .visual_text p strong {font-weight: 700; font-size: 58px; line-height: 74px; letter-spacing: -0.04em;}
.visual .visual_text p:last-of-type {font-weight: 300; font-size: 24px; line-height: 36px;}
.visual .scroll_down {position: absolute; left: 50%; transform: translateX(-50%); bottom: 103px;}
.visual .scroll_down a {display: inline-block; font-family: 'Inter'; font-size: 20px; line-height: 24px; text-align: center; color: #161718;
    animation: bounce_scroll 1s infinite alternate; -webkit-animation: bounce_scroll 1s infinite alternate;}
.visual .scroll_down a span {display: block;}
.visual .scroll_down a .img_box {width: 12px; height: 12px; background: url(../images/btn_scroll_down_mo.png) center no-repeat; background-size: contain; margin: 0 auto;}
.visual .scroll_down a img {margin: 0 auto;}
@keyframes bounce_scroll {
    0% { top: 0; }
    25% { top: -10px; transform: scale(1.1); }
    40% { top: 0; transform: scale(1); }
    100% { top: 10px; }
} */
/* visual 영상 */
.visual.vimeo.pc_ver {
    margin-top: 28px;
    width: 100%;
    height: calc(100vh - 28px);
    overflow: hidden;
}

.visual.vimeo.pc_ver .swiper-slide {
    background: url(../images/visual_bg.png) center no-repeat;
    background-size: cover;
}

.visual.vimeo.pc_ver .banner_video_cover {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100vh - 28px);
    z-index: 2;
}

.visual.vimeo.pc_ver .banner_video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 50.25%;
    z-index: 1;
}

.visual.vimeo.pc_ver .banner_video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}


/* 유튜브 미니 사이즈 롤링배너용 */
.visual .video_ytb {
    width: 33%;
    padding-top: calc(441/600 * 33%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    transform: translateY(-37%);
    left: 50%;
}

.visual .visual_doctor .video_ytb {
    left: 50%;
}

.visual .video_ytb>div {
    width: 88%;
    padding-top: calc(315/560 * 88%);
    border-radius: 20px;
    overflow: hidden;
    position: absolute;
    top: 2%;
    left: 35%;
}

.visual .video_ytb iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.video_vm {
    position: relative;
    width: 70%;
    padding-top: 56.25%;
    /* 16:9 비율 */
}

.video_container {
    position: absolute;
    top: -15%;
    left: 65%;
    width: 50%;
    height: 50%;
}

.video_container iframe {
    width: 80%;
    height: 80%;
}

/*비메오 picture 아래*/
.visual .video_vm {
    position: absolute;
    width: 60%;
    padding-top: calc(441/600 * 68%);
    top: auto;
    bottom: 10%;
    transform: translate(-52%, 0);
    left: 54%;
}

.visual .video_vm>div {
    width: 60%;
    padding-top: calc(315/560 * 60%);
    border-radius: 20px;
    top: 22%
}

/* #content */
#content {
    overflow: hidden;
}

h2.hidden~section h3 {
    font-size: 62px;
    line-height: 76px;
    letter-spacing: -2px;
    text-align: center;
    margin-bottom: 40px;
}

h2.hidden~section h3 span {
    display: block;
    font-size: .4em;
    letter-spacing: -1px;
    font-weight: 500;
}

.recommend .inner {
    display: flex;
    flex-direction: column;
    gap: 120px;
    padding: 80px 16.66% 120px;
}

.recommend .inner .banner_con ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.recommend .inner .banner_con ul li a {
    display: block;
    width: 100%;
    padding-top: calc(280/630 * 100%);
    border-radius: 20px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: relative;
}

.recommend .inner .banner_con ul li:nth-child(1) a {
    background-image: url(../images/img_content_banner01.png);
}

.recommend .inner .banner_con ul li:nth-child(2) a {
    background-image: url(../images/img_content_banner02.png);
}

.recommend .inner .banner_con ul li a .text_box {
    position: absolute;
    bottom: 44px;
    left: 6%;
    color: #fff;
}

.recommend .inner .banner_con ul li a .text_box.mo_ver {
    display: none;
}

.recommend .inner .banner_con ul li a .text_box strong {
    display: block;
    font-size: 44px;
    line-height: 56px;
    letter-spacing: -1px;
    margin-bottom: 8px;
}

.recommend .inner .banner_con ul li a .text_box strong .total_num {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}

.recommend .inner .banner_con ul li a .text_box strong .point {
    position: relative;
}

.recommend .inner .banner_con ul li a .text_box strong .point::before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.recommend .inner .banner_con ul li a .text_box strong p {
    font-size: 20px;
    letter-spacing: -1px;
}

.recommend .inner .banner_con ul li a .notice {
    color: #4589D0;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: -1px;
    position: absolute;
    bottom: 26px;
    right: 6%;
}

.recommend .inner .recommend_con h3 {
    color: #161718;
}

.recommend .inner .recommend_con ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.recommend .inner .recommend_con ul li a {
    display: block;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
}

.recommend .inner .recommend_con ul li:nth-child(1) a {
    background-color: #D8EAFF;
}

.recommend .inner .recommend_con ul li:nth-child(2) a {
    background-color: #FFF8B8;
}

.recommend .inner .recommend_con ul li:nth-child(3) a {
    background-color: #D0F7FA;
}

.recommend .inner .recommend_con ul li:nth-child(4) a {
    background-color: #E4E7FF;
}

.recommend .inner .recommend_con ul li a::after {
    content: '';
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    padding-top: calc(240/350 * 100%)
}

.recommend .inner .recommend_con ul li:nth-child(1) a::after {
    width: 100%;
    ;
    background-image: url(../images/img_content01.png);
    background-position: center;
}

.recommend .inner .recommend_con ul li:nth-child(2) a::after {
    width: 80%;
    background-image: url(../images/img_content02.png);
    background-position: center right;
    float: right;
}

.recommend .inner .recommend_con ul li:nth-child(3) a::after {
    width: 80%;
    background-image: url(../images/img_content03.png);
    background-position: center right;
    float: right;
}

.recommend .inner .recommend_con ul li:nth-child(4) a::after {
    width: 80%;
    background-image: url(../images/img_content04.png);
    background-position: center right;
    float: right;
}

.recommend .inner .recommend_con ul li a p {
    font-size: 34px;
    font-weight: 700;
    line-height: 42px;
    letter-spacing: -1px;
    padding: 40px 10% 12px;
    color: #161718;
}

.recommend .inner .recommend_con ul li a p span {
    display: block;
    font-size: 24px;
    font-weight: 400;
}

.branch-changwon .recommend .inner .recommend_con ul {
    grid-template-columns: repeat(3, 1fr);
}

.branch-changwon .recommend .inner .recommend_con ul li:nth-child(2) a {
    background-color: #D0F7FA;
}

.branch-changwon .recommend .inner .recommend_con ul li:nth-child(2) a::after {
    width: 80%;
    background-image: url(../images/img_content03.png);
    background-position: center right;
    float: right;
}

.branch-changwon .recommend .inner .recommend_con ul li:nth-child(3) a {
    background-color: #E4E7FF;
}

.branch-changwon .recommend .inner .recommend_con ul li:nth-child(3) a::after {
    width: 80%;
    background-image: url(../images/img_content04.png);
    background-position: center right;
    float: right;
}

.recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate a p::after {
    content: '';
    font-size: 34px;
    color: #161718;
    font-weight: 700;
    background-image: url(../images/N.png);
    background-repeat: no-repeat;
    background-position: right 8px;
    /* 위로 5px 더 올림 */
    background-size: auto 30px;
    padding-right: 45px;
    padding-top: 9px;
    /* 위쪽 공간 확보 */

}


.review {
    background: #013770;
    position: relative;
}

.review::before {
    content: 'REAL';
    font-family: 'Montserrat', sans-serif;
    font-size: 230px;
    font-weight: 700;
    letter-spacing: -2px;
    color: rgba(255, 255, 255, .05);
    text-transform: uppercase;
    position: absolute;
    top: 63px;
    left: -27px;
}

.review::after {
    content: 'REVIEW';
    font-family: 'Montserrat', sans-serif;
    font-size: 230px;
    font-weight: 700;
    letter-spacing: -2px;
    color: rgba(255, 255, 255, .05);
    text-transform: uppercase;
    position: absolute;
    bottom: -63px;
    right: -84px;
}

.review .inner {
    padding: 100px 0 80px;
}

.review .inner h3 {
    color: #fff;
}

.review .inner ul li {
    cursor: pointer;
}

.review .inner ul li .img_box {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}

/* .review .inner ul li .img_box img:nth-of-type(1) {border-radius: 20px 0 0 20px;}
.review .inner ul li .img_box img:nth-of-type(2) {border-radius: 0 20px 20px 0;} */
.review .inner ul li .img_box .dimmed {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .85);
    border-radius: 20px;
}

.review .inner ul li .img_box .dimmed .text_box {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
    font-size: 32px;
    line-height: 47px;
    letter-spacing: -1px;
}

.review .inner ul li .img_box .dimmed .text_box .btn_login {
    display: inline-block;
    height: 61px;
    line-height: 61px;
    padding: 0 50px;
    margin-top: 64px;
    text-align: center;
    font-size: 28px;
    letter-spacing: -1px;
    border-radius: 999px;
    border: 1px solid #0C82FE;
    background: #fff;
}

.review .inner ul li>.text_box {
    font-size: 32px;
    letter-spacing: -1px;
    text-align: center;
    color: #fff;
    margin-top: 32px;
}

.review .mySwiper {
    position: relative;
}

.review .swiper-button-prev,
.review .swiper-button-next {
    color: #fff;
}

.review .swiper-button-prev {
    left: 24%;
}

.review .swiper-button-next {
    right: 24%;
}

.review .twentytwenty-handle {
    width: 64px;
    height: 64px;
    background: #0C82FE;
    top: 100%;
    margin-top: -74px;
    margin-left: -32px;
    border: none;
}

.review .twentytwenty-left-arrow,
.review .twentytwenty-right-arrow {
    border: none;
    width: 18px;
    height: 16px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.review .twentytwenty-left-arrow {
    background-image: url(../images/arrow_left_wht.png);
}

.review .twentytwenty-right-arrow {
    background-image: url(../images/arrow_right_wht.png);
}

.review .twentytwenty-horizontal .twentytwenty-handle:before {
    margin-bottom: 35px;
}

.review .twentytwenty-horizontal .twentytwenty-handle::after {
    margin-top: 35px;
}

.review .swiper-scrollbar {
    display: none;
}

.review .inner .btn_more {
    display: inline-block;
    border-radius: 260px;
    background: #fff;
    height: 80px;
    line-height: 80px;
    padding: 0 60px;
    margin: 60px auto 0;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: -1px;
    text-align: center;
    color: #161718;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}

/* 정보석 영상 팝업 */
.popup_bg {
    background: rgba(0, 0, 0, 0.9);
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    display: none;
}

.popup_area {
    width: 50%;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    display: none;
}

.popup_area .btn_close {
    display: inline-block;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1001;
}

.popup_area .btn_close span {
    display: inline-block;
    width: 40px;
    height: 4px;
    background: #fff;
    border-radius: 4px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -2px -20px;
}

.popup_area .btn_close span:nth-of-type(1) {
    transform: rotate(45deg);
}

.popup_area .btn_close span:nth-of-type(2) {
    transform: rotate(-45deg);
}

.popup_area .popup_con {
    position: relative;
}

.popup_area .popup_con .inner {
    position: relative;
    width: 100%;
    padding-top: 50%;
    margin: 0 auto;
}


.knowhow .inner {
    padding: 100px 5%;
}

.knowhow .inner .tab_area {
    width: 100%;
    margin: 40px auto 48px;
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.knowhow .inner .tab_area li a {
    display: block;
    font-size: 24px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: -1px;
    color: #AAADB0;
    padding: 21px 30px;
    box-sizing: border-box;
    border-radius: 50px;
    border: 1px solid #E2E2E2;
    background: #fff;
}

.knowhow .inner .tab_area li a.on {
    color: #fff;
    border: 1px solid #001E3D;
    background: #001E3D;
}

/* hover */
@media (hover:hover) {
    .knowhow .inner .tab_area li a:hover {
        color: #fff;
        border: 1px solid #001E3D;
        background: #001E3D;
    }
}

.knowhow .inner .tab_con {
    width: 60%;
    margin: 0 auto;
}

.knowhow .inner .tab_con li {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.knowhow .inner .tab_con li .img_box {
    width: 53%;
}

.knowhow .inner .tab_con li .text_box {
    width: 45%;
}

.knowhow .inner .tab_con li .text_box strong.m_color {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    margin-bottom: 1em;
}

.knowhow .inner .tab_con li .text_box p {
    font-size: 44px;
    font-weight: 700;
    line-height: 56px;
    letter-spacing: -1px;
    color: #161718;
}

.knowhow .inner .tab_con li .text_box p .m_color {
    display: block;
}

.knowhow .inner .btn_more {
    display: inline-block;
    border-radius: 260px;
    background: #0C82FE;
    height: 80px;
    line-height: 80px;
    padding: 0 60px;
    margin: 60px auto 0;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: -1px;
    text-align: center;
    color: #fff;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}


.figure {
    background: #0C82FE;
    color: #fff;
}

.figure .inner {
    padding: 100px 16.66% 120px;
}

.figure .inner ul {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 60px;
}

.figure .inner ul li .icon {
    display: block;
    width: 50%;
    padding-top: 50%;
    margin: 0 auto 50px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.figure .inner ul li .text_box {
    text-align: center;
}

.figure .inner ul li .text_box p {
    font-size: 24px;
    letter-spacing: -1px;
}

.figure .inner ul li .text_box strong {
    font-size: 66px;
    letter-spacing: -1px;
}

.figure .inner ul li .text_box strong .sm_text {
    font-size: .3em;
    vertical-align: middle;
}

.figure .inner ul li .text_box strong .num_text {
    font-family: 'Montserrat', sans-serif;
}

.figure .inner ul li .text_box .conditions {
    display: block;
    font-size: 16px;
    letter-spacing: -1px;
    color: #A4D0FF;
    margin-top: 10px;
}


.youtube .inner {
    padding: 100px 16.66%;
}

.youtube .inner h3 .m_color {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    letter-spacing: 0;
}

.youtube .mySwiper {
    position: relative;
    margin: 60px 0 74px;
}

.youtube .mySwiper li a {
    display: block;
}

.youtube .mySwiper .img_box {
    margin-bottom: 22px;
}

.youtube .mySwiper .img_box img {
    border-radius: 20px;
}

.youtube .mySwiper .text_box .icon {
    display: inline-block;
    width: 42px;
    height: 42px;
    vertical-align: middle;
    margin-right: 12px;
    background: url(../images/btn_youtube_account.png) no-repeat center;
    background-size: contain;
}

.youtube .mySwiper .text_box p {
    font-size: 26px;
    letter-spacing: -1px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #161718;
}

.youtube .swiper-scrollbar {
    display: block;
    background: #DFE0E2;
}

.youtube .swiper-scrollbar-drag {
    background: #0C82FE;
}

.youtube .swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar .swiper-scrollbar-horizontal {
    height: 3px;
}

.youtube .swiper-horizontal>.swiper-scrollbar,
.review .swiper-scrollbar.swiper-scrollbar-horizontal {
    width: 100%;
    position: absolute;
    left: 50%;
    bottom: -70px;
    z-index: 50;
    height: 3px;
    transform: translateX(-50%);
}

.youtube .inner .btn_more {
    display: inline-block;
    border-radius: 260px;
    background: #0C82FE;
    height: 80px;
    line-height: 80px;
    padding: 0 60px;
    margin: 60px auto 0;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: -1px;
    text-align: center;
    color: #fff;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}


.contact {
    width: 100%;
    height: auto;
    background-image: url(../images/img_contact_bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.contact .inner {
    padding: 100px 16.66% 120px;
}

.contact .inner h3 .m_color {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    letter-spacing: 0;
}

.contact .inner .partition {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 20px;
    margin-top: 60px;
}

.contact .inner .partition .notice_area {
    width: 50%;
    padding: 60px 5%;
    box-sizing: border-box;
    background: #fff;
    border-radius: 20px;
    position: relative;
}

.contact .inner .partition .notice_area h4 {
    font-size: 44px;
    line-height: normal;
    letter-spacing: -1px;
    color: #161718;
}

.contact .inner .partition .notice_area h4 span {
    display: block;
    font-weight: 400;
    font-size: 24px;
    line-height: 1em;
    color: #474A4D;
    margin-bottom: .2em;
}

.contact .inner .partition .notice_area .btn_notice {
    display: block;
}

.contact .inner .partition .notice_area .notice_title {
    font-size: 28px;
    letter-spacing: -1px;
    margin: 40px 0 18px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.contact .inner .partition .notice_area .notice_title span {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    vertical-align: middle;
    color: #fff;
    border-radius: 260px;
    background: #0C82FE;
    padding: 0 8px 2px;
    text-transform: uppercase;
}

.contact .inner .partition .notice_area .notice_con {
    font-size: 20px;
    line-height: 32px;
    letter-spacing: -1px;
    color: #909498;
    margin-bottom: 24px;
    text-overflow: ellipsis;
    overflow: hidden;
    word-break: break-word;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.contact .inner .partition .notice_area .notice_date {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    color: #909498;
}

.contact .inner .partition .notice_area .btn_more {
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 60px;
    right: calc(5% + 30px);
    background: url(../images/arrow_right.png) center no-repeat;
    background-size: contain;
}

.contact .inner .partition .btn_area {
    width: 50%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.contact .inner .partition .btn_area li a {
    display: block;
    height: 100%;
    padding: 30px 5%;
    box-sizing: border-box;
    background: #fff;
    border-radius: 20px;
    text-align: center;
}

.contact .inner .partition .btn_area li a .icon {
    display: inline-block;
    width: 35%;
    padding-top: 35%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.contact .inner .partition .btn_area li a p {
    font-size: 28px;
    line-height: normal;
    letter-spacing: -1px;
    color: #161718;
}


.branch_banner .inner {
    padding: 100px 16.66%;
    position: relative;
}

.branch_banner .inner .mySwiper {
    overflow: hidden;
}

.branch_banner .inner .mySwiper ul li {
    border-radius: 20px;
    overflow: hidden;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    padding: 60px 10%;
    box-sizing: border-box;
    color: #fff;
}

.branch_banner .inner .mySwiper ul li p span {
    display: block;
    font-size: 26px;
    line-height: normal;
    letter-spacing: -2px;
}

.branch_banner .inner .mySwiper ul li p strong {
    font-size: 44px;
    line-height: normal;
    letter-spacing: -1px;
}

.branch_banner .inner .mySwiper ul li .btn_more {
    display: inline-block;
    height: 60px;
    line-height: 60px;
    margin-top: 20px;
    padding: 0 20px;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -1px;
    color: #fff;
    border-radius: 260px;
    border: 1px solid #fff;
}

.branch_banner .inner .mySwiper ul li .btn_more .mo_ver {
    display: none;
}

.branch_banner .swiper-button-prev,
.branch_banner .swiper-button-next {
    width: 60px;
    height: 60px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.branch_banner .swiper-button-prev {
    background-image: url(../images/btn_prev.png);
    left: calc(16.66% - 90px);
}

.branch_banner .swiper-button-next {
    background-image: url(../images/btn_next.png);
    right: calc(16.66% - 90px);
}

.branch_banner .swiper-button-prev:after,
.branch_banner .swiper-button-next:after {
    font-size: 0;
}

.branch_banner .swiper-pagination {
    display: none;
}


/* PC (해상도 1740px ~ 1860px) */
@media screen and (max-width:1860px) {

    /* visual */
    .visual .swiper-container ul.swiper-wrapper li .text_box {
        left: 12%;
    }

    .visual .swiper-pagination {
        left: 12%;
    }

    /* content */
    .recommend .inner {
        padding: 80px 12% 120px;
    }

    .review .inner ul li .img_box .dimmed .text_box {
        font-size: 22px;
        line-height: 1.3em;
    }

    .review .inner ul li .img_box .dimmed .text_box .btn_login {
        height: 58px;
        line-height: 58px;
        padding: 0 40px;
        margin-top: 30px;
        font-size: 20px;
    }

    .figure .inner {
        padding: 100px 12% 120px;
    }

    .youtube .inner {
        padding: 100px 12%;
    }

    .contact .inner {
        padding: 100px 12% 120px;
    }

    .branch_banner .inner {
        padding: 100px 12%;
    }

    .branch_banner .inner .mySwiper ul li p span {
        font-size: 22px;
    }

    .branch_banner .inner .mySwiper ul li p strong {
        font-size: 32px;
    }

    .branch_banner .swiper-button-prev {
        left: calc(12% - 90px);
    }

    .branch_banner .swiper-button-next {
        right: calc(12% - 90px);
    }
}

/* PC (해상도 1540px ~ 1740px) */
@media screen and (max-width:1740px) {

    /* visual */
    .visual .swiper-container ul.swiper-wrapper li .text_box {
        left: 8%;
    }

    .visual .swiper-pagination {
        left: 8%;
    }

    /* content */
    .recommend .inner {
        padding: 80px 8% 120px;
    }

    .figure .inner {
        padding: 100px 8% 120px;
    }

    .youtube .inner {
        padding: 100px 8%;
    }

    .contact .inner {
        padding: 100px 8% 120px;
    }
}

/* PC (해상도 1540px ~ 1680px) */
@media screen and (max-width: 1680px) {}

/* PC (해상도 1440px ~ 1540px) */
@media screen and (max-width:1540px) {

    /* intro */
    .intro_area .intro_con .img_box {
        width: 90%;
    }

    .intro_area .intro_con .btn_box {
        width: 90%;
    }

    .intro_area .intro_con .btn_box li {
        width: 50%;
    }

    /* << 20240813 */
    /* notice popup */
    .notice_popup {
        left: calc(50% - 230px);
        top: 22%;
    }

    .notice_popup .close_btn_top {
        right: -17px;
        top: -17px;
        width: 35px;
        height: 35px;
    }

    .notice_popup .mySwiper {
        width: 440px;
        height: 475px;
    }

    /* notice popup2 */
    .notice_popup2 {
        left: calc(50% + 230px);
        top: 22%;
    }

    .notice_popup2 .close_btn_top {
        right: -17px;
        top: -17px;
        width: 35px;
        height: 35px;
    }

    .notice_popup2 .mySwiper {
        width: 440px;
        height: 475px;
    }

    /* 20240813 >> */

}


/* PC (해상도 1058px ~ 1440px) */
@media screen and (max-width:1440px) {

    /* .visual */
    /* .visual .scroll_down {bottom: 151px;} */
    .visual .swiper-container ul.swiper-wrapper li .text_box {
        left: 6%;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p {
        font-size: 52px;
        line-height: 1.3em;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p.sub_top {
        font-size: 32px;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box .btn_move {
        font-size: 22px;
    }

    .visual .swiper-pagination {
        left: 6%;
    }

    /* content */
    h2.hidden~section h3 {
        font-size: 52px;
        line-height: 1.2em;
    }

    .recommend .inner {
        padding: 80px 6% 120px;
    }

    .recommend .inner .banner_con ul li a .text_box strong {
        font-size: 32px;
        line-height: 1.3em;
    }

    .recommend .inner .recommend_con ul li a p {
        font-size: 26px;
        line-height: 1.3em;
    }

    .recommend .inner .recommend_con ul li a p span {
        font-size: 18px;
        line-height: 1.3em;
    }

    .knowhow .inner .tab_area li a {
        font-size: 24px;
        padding: 16px 30px;
    }

    .knowhow .inner .tab_con li .text_box p {
        font-size: 32px;
        line-height: 1.3em;
    }

    .knowhow .inner .btn_more {
        font-size: 24px;
        padding: 0 60px;
    }

    .figure .inner {
        padding: 100px 6% 120px;
    }

    .youtube .inner {
        padding: 100px 6%;
    }

    .contact .inner {
        padding: 100px 6% 120px;
    }
}

/* 태블릿 (해상도 769px ~ 1024px) */
@media screen and (max-width:1024px) {

    /* intro */
    .intro_bg {
        width: 100%;
    }

    .intro_area {
        width: 100%;
        height: calc(var(--vh, 1vh) * 100);
        padding: 10vh 0 2vh;
    }

    .intro_area .intro_con h1 {
        width: 100%;
        font-size: 4.375rem;
        margin-bottom: 2vh;
    }

    .intro_area .intro_con h1 i {
        display: block;
    }

    .intro_area .intro_con .img_box {
        width: 90%;
    }

    .intro_area .intro_con .img_box ul {
        padding: 3.4vh 4%;
        border-radius: 30px;
    }

    .intro_area .intro_con .img_box ul li {
        padding: 0 5%;
    }

    .intro_area .intro_con .img_box ul li::after {
        height: 76%;
        top: 12%;
    }

    .intro_area .intro_con .img_box ul li p {
        font-size: 1.625rem;
    }

    .intro_area .intro_con .btn_box {
        width: 85%;
        gap: 12px;
    }

    .intro_area .intro_con .btn_box li a {
        padding: 2vh 0;
        font-size: 1.75rem;
    }

    .intro_area .intro_con .notice {
        font-size: .8rem;
        line-height: 1.5;
        margin-top: 5vh;
        text-align: center;
    }

    .intro_area .btn_intro_close {
        width: 40px;
        height: 40px;
        top: 40px;
        right: 40px;
    }


    /* 유튜브 미니 사이즈 롤링배너용 */
    .visual .video_ytb {
        position: absolute;
        width: 78%;
        padding-top: calc(441/600 * 67%);
        top: auto;
        bottom: 10%;
        transform: translate(-52%, 0);
    }

    .visual .visual_doctor .video_ytb {
        left: 50%;
    }

    .visual .video_ytb>div {
        width: 80%;
        padding-top: calc(315/560 * 80%);
        border-radius: 20px;
    }

    .video_vm {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        /* 16:9 비율 */
    }

    .video_container {
        position: absolute;
        top: 70%;
        left: 40%;
        width: 70%;
        height: 70%;
    }

    .video_container iframe {
        width: 80%;
        height: 80%;
    }

    /*비메오 picture 아래*/
    .visual .video_vm {
        position: absolute;
        width: 80%;
        padding-top: calc(441/600 * 144%);
        top: auto;
        bottom: 10%;
        transform: translate(-52%, 0);
        left: 53%;
    }

    .visual .video_vm>div {
        width: 80%;
        padding-top: calc(315/560 * 80%);
        border-radius: 20px;
    }

    /* << 20240813 */
    /* notice popup */
    .notice_popup {
        left: calc(50% - 170px);
        transform: translate(-50%, -25vh);
        top: 50vh;
    }

    .notice_popup .mySwiper {
        width: 330px;
        height: 357px;
    }

    .notice_popup .close_btn_top {
        display: none;
    }

    .notice_popup .notice_bottom {
        padding: 8px 12px;
    }

    .notice_popup .notice_bottom label span {
        font-size: 12px;
        line-height: 16px;
        letter-spacing: 0;
        padding-left: 24px;
    }

    .notice_popup .notice_bottom label {
        width: 16px;
        height: 16px;
        line-height: 18px;
    }

    .notice_popup .notice_bottom a {
        font-size: 12px;
        padding-right: 14px;
    }

    .notice_popup .notice_bottom a::before {
        width: 11.5px;
    }

    .notice_popup .notice_bottom a::after {
        width: 11.5px;
    }

    .notice_popup .swiper-pagination {
        font-size: 12px;
        padding: 4px 8px;
    }

    /* notice popup2 */
    .notice_popup2 {
        left: calc(50% + 170px);
        transform: translate(-50%, -25vh);
        top: 50vh;
    }

    .notice_popup2 .mySwiper {
        width: 330px;
        height: 357px;
    }

    .notice_popup2 .close_btn_top2 {
        display: none;
    }

    .notice_popup2 .notice_bottom {
        padding: 8px 12px;
    }

    .notice_popup2 .notice_bottom label span {
        font-size: 12px;
        line-height: 16px;
        letter-spacing: 0;
        padding-left: 24px;
    }

    .notice_popup2 .notice_bottom label {
        width: 16px;
        height: 16px;
        line-height: 18px;
    }

    .notice_popup2 .notice_bottom a {
        font-size: 12px;
        padding-right: 14px;
    }

    .notice_popup2 .notice_bottom a::before {
        width: 11.5px;
    }

    .notice_popup2 .notice_bottom a::after {
        width: 11.5px;
    }

    .notice_popup2 .swiper-pagination {
        font-size: 12px;
        padding: 4px 8px;
    }

    /* 20240813 >>  */


    /* visual */
    .visual {
        height: calc(var(--vh, 1vh) * 100 - 100px);
        margin-top: 100px;
    }

    .visual .swiper-container ul.swiper-wrapper li {
        height: calc(var(--vh, 1vh) * 100 - 100px);
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box {
        top: 8%;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p {
        font-size: 48px;
        line-height: 62px;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p.sub_top {
        font-size: 30px;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p .block {
        display: inline;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box .btn_move {
        padding: 0 30px;
        line-height: 50px;
        height: 52px;
        font-size: 18px;
    }

    .visual .swiper-container ul.swiper-wrapper li .notice_text {
        width: 100%;
        text-align: center;
        right: 50%;
        transform: translateX(50%);
    }

    .visual .swiper-container ul.swiper-wrapper li .notice_text p {
        font-size: 12px;
    }

    .visual .swiper-pagination {
        left: 50%;
        transform: translateX(-50%);
        top: calc(100% - 170px);
        bottom: auto;
        ;
    }

    .visual .swiper-pagination ul li.on .prog {
        width: 60px;
        margin: 0 5px 0 10px;
    }

    .visual .swiper-pagination ul li .num {
        font-size: 18px;
        letter-spacing: -2px;
    }

    /* 기존 visual */
    /* .visual {margin-top: 100px;}
    .visual .visual_text {left: 5%;}
    .visual .visual_text p strong {font-size: 60px; line-height: 68px;}
    .visual .visual_text p:last-of-type {margin-top: 10px;}
    .visual .banner_bg {background:url('../images/visual_tb.png') top 32% right no-repeat; background-size: cover; height: calc(var(--vh, 1vh) * 100 - 100px);}
    .visual .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal {left: 5%; }
    .visual .scroll_down {bottom: 171px;} */

    /* visual 영상 */
    .visual.vimeo.tab_ver {
        margin-top: 100px;
        width: 100%;
        /* height: calc(100vh - 100px); */
        height: calc(var(--vh, 1vh) * 100 - 100px);
        overflow: hidden;
    }

    .visual.vimeo.tab_ver .swiper-slide {
        background: url(../images/visual_bg_tab.png) center no-repeat;
        background-size: cover;
    }

    .visual.vimeo.tab_ver .banner_video_cover {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: calc(100vh - 100px);
        z-index: 2;
    }

    .visual.vimeo.tab_ver .banner_video {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: calc(817 / 640 * 100%);
        z-index: 1;
    }

    .visual.vimeo.tab_ver .banner_video iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }



    /* content */
    h2.hidden~section h3 {
        font-size: 38px;
        line-height: 1em;
        letter-spacing: -1px;
        margin-bottom: 60px;
    }

    .recommend .inner {
        display: flex;
        flex-direction: column;
        gap: 80px;
        padding: 60px 5% 80px;
    }

    .recommend .inner .banner_con ul {
        grid-template-columns: repeat(1, 1fr);
    }

    .recommend .inner .banner_con ul li a {
        padding-top: calc(240/680 * 100%);
        background-size: cover;
        background-position: top left;
    }

    .recommend .inner .banner_con ul li a .text_box strong {
        font-size: 38px;
        line-height: 46px;
        margin-bottom: 8px;
    }

    .recommend .inner .recommend_con ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .recommend .inner .recommend_con ul li a::after {
        padding-top: calc(240/350 * 100%)
    }

    .recommend .inner .recommend_con ul li:nth-child(1) a::after {
        width: 100%;
        ;
        background-image: url(../images/img_content01.png);
        background-position: center;
    }

    .recommend .inner .recommend_con ul li:nth-child(2) a::after {
        width: 80%;
        background-image: url(../images/img_content02.png);
        background-position: center right;
        float: right;
    }

    .recommend .inner .recommend_con ul li:nth-child(3) a::after {
        width: 80%;
        background-image: url(../images/img_content03.png);
        background-position: center right;
        float: right;
    }

    .recommend .inner .recommend_con ul li:nth-child(4) a::after {
        width: 80%;
        background-image: url(../images/img_content04.png);
        background-position: center right;
        float: right;
    }

    .recommend .inner .recommend_con ul li a p {
        font-size: 28px;
        padding: 40px 10% 24px;
    }

    .recommend .inner .recommend_con ul li a p span {
        font-size: 20px;
    }

    /* 정보석 영상 팝업 */
    .popup_area {
        width: 90%;
    }

    .popup_area .popup_con .inner {
        padding-top: 56%;
    }

    .popup_area .btn_close {
        top: -40px;
    }

    .review::before {
        font-size: 190px;
        top: 64px;
        left: -76px;
    }

    .review::after {
        font-size: 190px;
        bottom: -80px;
        right: -130px;
    }

    .review .inner {
        padding: 80px 0 100px;
    }

    .review .inner ul li .img_box .dimmed .text_box {
        font-size: 24px;
    }

    .review .inner ul li .img_box .dimmed .text_box .btn_login {
        margin-top: 60px;
        font-size: 24px;
    }

    .review .inner ul li>.text_box {
        font-size: 24px;
        margin-top: 28px;
    }

    .review .swiper-button-prev {
        top: 45%;
        left: 9.5%;
    }

    .review .swiper-button-next {
        top: 45%;
        right: 9.5%;
    }

    .review .twentytwenty-handle {
        width: 50px;
        height: 50px;
        margin-top: -64px;
        margin-left: -26px;
    }

    .review .twentytwenty-left-arrow,
    .review .twentytwenty-right-arrow {
        width: 15px;
        height: 14px;
    }

    .review .twentytwenty-left-arrow {
        margin-left: -14px;
    }

    .review .twentytwenty-right-arrow {
        margin-right: -14px;
    }

    .review .twentytwenty-horizontal .twentytwenty-handle:before {
        margin-bottom: 28px;
    }

    .review .twentytwenty-horizontal .twentytwenty-handle::after {
        margin-top: 28px;
    }

    .review .inner .btn_more {
        height: 60px;
        line-height: 60px;
        padding: 0 40px;
        font-size: 20px;
    }


    .knowhow .inner {
        padding: 80px 5%;
    }

    .knowhow .inner .tab_area {
        margin: 60px auto 44px;
        /* display: grid; */
        gap: 8px;
        justify-content: center;
        flex-wrap: wrap;
    }

    .knowhow .inner .tab_area li a {
        font-size: 18px;
        padding: 17.5px 20px;
    }

    .knowhow .inner .tab_con {
        width: 80%;
    }

    .knowhow .inner .tab_con li {
        flex-direction: column;
    }

    .knowhow .inner .tab_con li .img_box {
        width: 100%;
    }

    .knowhow .inner .tab_con li .text_box {
        width: 100%;
        text-align: center;
    }

    .knowhow .inner .tab_con li .text_box strong.m_color {
        display: none;
    }

    .knowhow .inner .tab_con li .text_box p {
        font-size: 28px;
        line-height: 40px;
    }

    .knowhow .inner .tab_con li .text_box p .m_color {
        display: inline;
    }

    .knowhow .inner .btn_more {
        height: 60px;
        line-height: 60px;
        padding: 0 40px;
        margin: 60px auto 0;
        font-size: 20px;
    }


    .figure .inner {
        padding: 80px 5% 100px;
    }

    .figure .inner ul {
        width: 80%;
        grid-template-columns: repeat(2, 1fr);
        row-gap: 60px;
        margin: 60px auto 0;
    }

    .figure .inner ul li .icon {
        margin: 0 auto 20px;
    }

    .figure .inner ul li .text_box p {
        font-size: 20px;
    }

    .figure .inner ul li .text_box strong {
        font-size: 48px;
    }

    .figure .inner ul li .text_box strong .sm_text {
        font-size: .4em;
    }

    .figure .inner ul li .text_box .conditions {
        font-size: 14px;
        margin-top: 22px;
    }


    .youtube .inner {
        padding: 80px 5%;
    }

    .youtube .mySwiper {
        margin: 60px 0 40px;
    }

    .youtube .mySwiper .img_box {
        margin-bottom: 16px;
    }

    .youtube .mySwiper .text_box .icon {
        width: 36px;
        height: 36px;
    }

    .youtube .mySwiper .text_box p {
        font-size: 20px;
    }

    .youtube .swiper-scrollbar {
        display: block;
        background: #DFE0E2;
    }

    .youtube .swiper-scrollbar-drag {
        background: #0C82FE;
    }

    .youtube .swiper-horizontal>.swiper-scrollbar,
    .swiper-scrollbar .swiper-scrollbar-horizontal {
        height: 2px;
    }

    .youtube .swiper-horizontal>.swiper-scrollbar,
    .review .swiper-scrollbar.swiper-scrollbar-horizontal {
        height: 2px;
        bottom: -40px;
    }

    .youtube .inner .btn_more {
        height: 60px;
        line-height: 60px;
        padding: 0 40px;
        margin: 60px auto 0;
        font-size: 20px;
    }


    .contact {
        background-image: url(../images/img_contact_bg_tab.png);
    }

    .contact .inner {
        padding: 80px 5%;
    }

    .contact .inner .partition {
        flex-direction: column;
    }

    .contact .inner .partition .notice_area {
        width: 100%;
        padding: 50px 5%;
    }

    .contact .inner .partition .notice_area h4 {
        font-size: 32px;
    }

    .contact .inner .partition .notice_area h4 span {
        font-size: 20px;
    }

    .contact .inner .partition .notice_area .notice_title {
        font-size: 24px;
        margin: 40px 0 14px;
    }

    .contact .inner .partition .notice_area .notice_title span {
        font-size: 14px;
        padding: 0 8px 2px;
    }

    .contact .inner .partition .notice_area .notice_con {
        font-size: 18px;
        line-height: 26px;
        margin-bottom: 18px;
    }

    .contact .inner .partition .notice_area .btn_more {
        top: 50px;
        right: 5%;
    }

    .contact .inner .partition .btn_area {
        width: 100%;
        grid-template-columns: repeat(4, 1fr);
    }

    .contact .inner .partition .btn_area li a {
        padding: 26px 5%;
    }

    .contact .inner .partition .btn_area li a .icon {
        width: 60%;
        padding-top: 60%;
        margin-bottom: 8px;
    }

    .contact .inner .partition .btn_area li a p {
        font-size: 20px;
    }


    .branch_banner .inner {
        padding: 100px 5% 132px;
    }

    .branch_banner .inner .mySwiper ul li {
        padding: 50px 5%;
        background-position: center right 22%;
    }

    .branch_banner .inner .mySwiper ul li p span {
        font-size: 20px;
    }

    .branch_banner .inner .mySwiper ul li p strong i {
        display: block;
    }

    .branch_banner .inner .mySwiper ul li .btn_more {
        height: 52px;
        line-height: 52px;
        padding: 0 30px;
        font-size: 20px;
    }

    .branch_banner .swiper-button-prev,
    .branch_banner .swiper-button-next {
        display: none;
    }

    .branch_banner .swiper-pagination {
        display: block;
    }

    .branch_banner .swiper-horizontal>.swiper-pagination-bullets,
    .branch_banner .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: 100px;
    }
}

/* 모바일 가로, 모바일 세로 (해상도 375px ~ 768px)*/
@media screen and (max-width:768px) {
    .wrap {
        min-width: 375px;
    }

    /* intro */
    .intro_bg {
        height: 100%;
    }

    .intro_area {
        padding: 7vh 0 2vh;
    }

    .intro_area .intro_con h1 {
        font-size: 2.5rem;
        margin-bottom: 0;
    }

    .intro_area .intro_con .img_box {
        width: 100%;
        margin-top: -1.5vh;
    }

    .intro_area .intro_con .img_box ul {
        width: 90%;
        margin: 0 auto;
        flex-direction: column;
        padding: 2vh 12%;
        box-sizing: border-box;
        border-radius: 30px;
    }

    .intro_area .intro_con .img_box ul li {
        width: 100%;
        padding: 0 0 1.5vh;
        margin-bottom: 1.5vh;
        border-bottom: 1px solid #fff;
    }

    .intro_area .intro_con .img_box ul li:last-child {
        padding: 0;
        margin: 0;
        border: none;
    }

    .intro_area .intro_con .img_box ul li::after {
        display: none;
    }

    .intro_area .intro_con .img_box ul li p {
        font-size: 1.25rem;
    }

    .intro_area .intro_con .img_box ul li p span {
        display: inline;
    }

    .intro_area .intro_con .img_box ul li p i {
        display: block;
    }

    .intro_area .intro_con .btn_box {
        width: 90%;
        flex-direction: column-reverse;
        gap: 10px;
        margin-top: 1.538vh;
    }

    .intro_area .intro_con .btn_box li {
        width: 100%;
    }

    .intro_area .intro_con .btn_box li a {
        padding: 1.5vh 0;
        font-size: 1.3rem;
    }

    .intro_area .intro_con .btn_box li a span::after {
        width: 8px;
        height: 14px;
    }

    .intro_area .intro_con .notice {
        font-size: 0.7rem;
        margin-top: 1.538vh;
    }

    .intro_area .intro_con .notice i {
        display: block;
    }

    .intro_area .btn_intro_close {
        width: 36px;
        height: 36px;
        top: 20px;
        right: 20px;
    }


    /* << 20240813 */

    /* notice popup */
    /* .notice_popup {width: 330px; position: relative; left: 50%; transform: translate(-50%, 0); top: 0; margin-top: 5vh;} */
    .notice_popup {
        width: 330px;
        position: absolute;
        left: 50%;
        transform: translate(-50%, 0);
        top: 1vh;
    }

    .notice_popup .mySwiper {
        width: 330px;
        height: 357px;
    }

    .notice_popup .notice_bottom {
        padding: 8px 12px;
    }

    .notice_popup .notice_bottom label {
        width: 16px;
        height: 16px;
        line-height: 18px;
    }

    .notice_popup .notice_bottom a {
        font-size: 12px;
        padding-right: 14px;
    }

    .notice_popup .notice_bottom a::before {
        width: 11.5px;
    }

    .notice_popup .notice_bottom a::after {
        width: 11.5px;
    }

    .notice_popup .swiper-pagination {
        font-size: 12px;
        padding: 4px 8px;
    }

    /* notice popup2 */
    /* .notice_popup2 {width: 330px; position: relative; left: 50%; transform: translate(-50%, 0); top: 0; margin-top: 5vh;} */
    .notice_popup2 {
        width: 330px;
        position: absolute;
        left: 50%;
        transform: translate(-50%, 0);
        top: calc(423px + 1vh);
    }

    .notice_popup2.on {
        top: 1vh;
    }

    .notice_popup2 .mySwiper {
        width: 330px;
        height: 357px;
    }

    .notice_popup2 .notice_bottom {
        padding: 8px 12px;
    }

    .notice_popup2 .notice_bottom label {
        width: 16px;
        height: 16px;
        line-height: 18px;
    }

    .notice_popup2 .notice_bottom a {
        font-size: 12px;
        padding-right: 14px;
    }

    .notice_popup2 .notice_bottom a::before {
        width: 11.5px;
    }

    .notice_popup2 .notice_bottom a::after {
        width: 11.5px;
    }

    .notice_popup2 .swiper-pagination {
        font-size: 12px;
        padding: 4px 8px;
    }

    /* 20240813 >> */


    /* visual */
    .visual {
        height: calc(var(--vh, 1vh) * 100 - 130px);
        margin-top: 59px;
    }

    .visual .swiper-container ul.swiper-wrapper li {
        height: calc(var(--vh, 1vh) * 100 - 130px);
    }

    .visual .swiper-container ul.swiper-wrapper li img {
        height: auto;
        object-fit: contain;
        object-position: center bottom;
        position: absolute;
        bottom: 0;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box {
        top: 8%;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p {
        font-size: 28px;
        line-height: 38px;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p span.sub_text {
        font-size: 20px
    }


    .visual .swiper-container ul.swiper-wrapper li .text_box p.sub_top {
        font-size: 25px;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box p i {
        display: block;
    }

    .visual .swiper-container ul.swiper-wrapper li .text_box .btn_move {
        padding: 0 24px;
        line-height: 38px;
        height: 40px;
        font-size: 14px;
        margin-top: 13px;
    }

    .visual .swiper-pagination {
        width: 100%;
        top: calc(100% - 30px);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: nowrap;
    }

    .visual .swiper-container ul.swiper-wrapper li .notice_text {
        bottom: 5%;
    }

    .visual .swiper-container ul.swiper-wrapper li .notice_text p {
        font-size: 10px;
    }

    .visual .swiper-container ul.swiper-wrapper li .notice_text p i {
        display: block;
    }

    .visual .swiper-pagination ul li .num {
        font-size: 14px;
        font-weight: 600;
    }

    /* .visual #slideVisualCtr {vertical-align: bottom;} */

    /* 기존 visual */
    /* .visual {margin-top: 102px;}
    .visual .banner_bg {background:url('../images/visual_mo.png') top right no-repeat; background-size: cover; height: calc(var(--vh, 1vh) * 100 - 101px);}
    .visual .visual_text {top: 40%;}
    .visual .visual_text p strong {font-size: 30px; line-height: 34px;}
    .visual .visual_text p:last-of-type {font-size: 12px; line-height: 18px; margin-top: 4px;}
    .visual .scroll_down {bottom: 28px;}
    .visual .scroll_down a {font-size: 12px; line-height: 15px;}
    .visual .scroll_down a img {width: 12px; height: 12px;} */

    /* visual 영상 */
    .visual.vimeo.mo_ver {
        margin-top: 102px;
        width: 100%;
        /* height: calc(100vh - 102px); */
        height: calc(var(--vh, 1vh) * 100 - 101px);
        overflow: hidden;
    }

    .visual.vimeo.mo_ver .swiper-slide {
        background: url(../images/visual_bg_mo.png) center no-repeat;
        background-size: cover;
    }

    .visual.vimeo.mo_ver .banner_video_cover {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: calc(var(--vh, 1vh) * 100 - 100px);
        z-index: 2;
    }

    .visual.vimeo.mo_ver .banner_video {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: calc(986 / 640 * 100%);
        z-index: 1;
    }

    .visual.vimeo.mo_ver .banner_video iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }


    /* 유튜브 미니 사이즈 롤링배너용 ㅌ*/
    .visual .video_ytb {
        position: absolute;
        width: 78%;
        padding-top: calc(441/600 * 83%);
        top: auto;
        bottom: -3%;
        transform: translate(-57%, 0);
    }

    .visual .visual_doctor .video_ytb {
        left: 50%;
    }

    .visual .video_ytb>div {
        width: 88%;
        padding-top: calc(315/560 * 88%);
        border-radius: 20px;
        left: 27%;
    }

    .video_vm {
        position: relative;
        width: 80%;
        padding-top: 56.25%;
        /* 16:9 비율 */
    }

    .video_container {
        position: absolute;
        top: -10%;
        left: 55%;
        width: 50%;
        height: 50%;
    }

    .video_container iframe {
        width: 80%;
        height: 80%;
    }

    /* 비메오 picture 아래 */
    .visual .video_vm {
        position: absolute;
        width: 92%;
        padding-top: calc(441/600 * 73%);
        top: auto;
        bottom: 14%;
        transform: translate(-52%, 0);
        left: 34%;
    }

    .visual .video_vm>div {
        width: 80%;
        padding-top: calc(315/560 * 80%);
        border-radius: 20px;
    }

    /* content */
    h2.hidden~section h3 {
        font-size: 34px;
        margin-bottom: 40px;
    }

    h2.hidden~section h3 span {
        font-size: .5em;
    }

    .recommend .inner {
        flex-direction: column-reverse;
        gap: 30px;
        padding: 30px 5%;
    }

    .recommend .inner .banner_con ul {
        gap: 8px;
    }

    .recommend .inner .banner_con ul li a {
        padding-top: calc(100/327 * 100%);
        border-radius: 10px;
    }

    .recommend .inner .banner_con ul li:nth-child(1) a {
        background-image: url(../images/img_content_banner01_mo.png);
    }

    .recommend .inner .banner_con ul li:nth-child(2) a {
        background-image: url(../images/img_content_banner02_mo.png);
    }

    .recommend .inner .banner_con ul li a .text_box {
        display: none;
    }

    .recommend .inner .banner_con ul li a .text_box.mo_ver {
        display: block;
        bottom: 50%;
        transform: translateY(50%);
    }

    .recommend .inner .banner_con ul li a .text_box strong {
        font-size: 20px;
        line-height: 23px;
        margin-bottom: 0;
    }

    .recommend .inner .banner_con ul li a .text_box strong .point {
        position: relative;
    }

    .recommend .inner .banner_con ul li a .text_box strong .point::before {
        width: 4px;
        height: 4px;
    }

    .recommend .inner .banner_con ul li a .text_box strong p {
        display: none;
    }

    .recommend .inner .banner_con ul li a .notice {
        font-size: 14px;
        line-height: 1em;
        bottom: 20px;
    }

    .recommend .inner .recommend_con {
        position: relative;
    }

    .recommend .inner .recommend_con h3 {
        position: absolute;
        clip: rect(0 0 0 0);
        width: 1px;
        height: 1px;
        margin: -1px;
        overflow: hidden;
    }

    .recommend .inner .recommend_con ul {
        gap: 8px;
    }

    .recommend .inner .recommend_con ul li a {
        border-radius: 10px;
    }

    .recommend .inner .recommend_con ul li a::after {
        padding-top: calc(240/350 * 90%)
    }

    .recommend .inner .recommend_con ul li:nth-child(1) a::after {
        width: 100%;
        background-position: center right;
        float: right;
    }

    .recommend .inner .recommend_con ul li:nth-child(2) a::after {
        width: 100%;
    }

    .recommend .inner .recommend_con ul li:nth-child(3) a::after {
        width: 100%;
    }

    .recommend .inner .recommend_con ul li:nth-child(4) a::after {
        width: 100%;
    }

    .recommend .inner .recommend_con ul li a p {
        font-size: 16px;
        font-weight: 500;
        line-height: 1em;
        padding: 20px 10% 0;
    }

    .recommend .inner .recommend_con ul li a p span {
        display: none;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        /* 2개의 열 생성 */
        gap: 8px;
        /* 기존 모바일 간격 유지 */
    }

    /* [숨기기] 3번째 항목(X파일)을 숨김 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-xfile {
        display: none;
    }

    /* [재배치] 2번째 항목(자가견적)을 첫 번째 줄 전체에 배치 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate {
        grid-column: 1 / 3;
        grid-row: 1 / 2;
    }

    /* [재배치] 1번째 항목(의료진)을 두 번째 줄 왼쪽으로 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-doctor {
        grid-column: 1 / 2;
        grid-row: 2 / 3;
    }

    /* [재배치] 4번째 항목(오시는길)을 두 번째 줄 오른쪽으로 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-location {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
    }


    /* --- 각 항목의 디자인을 새 레이아웃에 맞게 덮어쓰기 --- */

    /* 새 레이아웃 항목들의 공통 스타일 덮어쓰기 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout li a {
        height: 100%;
        display: flex;
        /* 내부 요소 정렬을 위해 flex 사용 */
        padding: 12px 20px;
        /* 상하 12px, 좌우 20px */
        box-sizing: border-box;
        /* 패딩이 크기에 영향을 주지 않도록 */
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout li a p {
        font-size: 0;
        /* 원래 텍스트를 숨겨서 ::before, ::after로 대체 */
        padding: 0;
        line-height: 1.4;
        text-align: left;
        font-weight: 700;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout li a::after {
        /* 기존 이미지 스타일 초기화 */
        display: block;
        content: '';
        /* ::after를 사용하기 위해 content 속성 필수 */
        float: none;
        margin: 0;
        padding-top: 0;
        /* 기존 padding-top 방식 비활성화 */
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
        width: auto;
        /* 너비 자동 조절 */
        height: auto;
        /* 높이 자동 조절 */
    }

    /* 1. '자가 견적' 항목 스타일 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate a {
        background-color: #FFF8B8;
        /* 노란색 배경 */
        justify-content: space-between;
        /* 텍스트와 아이콘 양쪽 정렬 */
        align-items: center;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate a p::before {
        content: '자가견적';
        font-size: 30px;
        color: #161718;
        background-image: url(../images/N.png);
        background-repeat: no-repeat;
        background-position: right 8px;
        /* 위로 5px 더 올림 */
        background-size: auto 30px;
        padding-right: 35px;
        padding-top: 10px;
        /* 위쪽 공간 확보 */

    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate a p::after {
        content: '예상비용 확인하기';
        display: block;
        font-size: 18px;
        font-weight: 500;
        color: #333;
        margin-top: 4px;
        background-image: none; /* N 아이콘 배경 이미지 제거 */
        padding-right: 0;       /* 불필요한 오른쪽 여백 제거 */
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-estimate a::after {
        background-image: url(../images/img_content02.png);
        width: 130px;
        min-width: 130px;
        height: 130px;
    }

    /* 2. '핵심 의료진 소개' 항목 스타일 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-doctor a {
        background-color: #D8EAFF;
        /* 하늘색 배경 */
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-between;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-doctor a p::before {
        content: '핵심 의료진 소개';
        font-size: 18px;
        color: #161718;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-doctor a::after {
        background-image: url(../images/img_content01.png);
        /* 기존 의료진 이미지 재활용 */
        width: 100%;
        height: 100px;
        background-position: right bottom;
        margin-top: 10px;
    }

    /* 3. '오시는 길' 항목 스타일 */
    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-location a {
        background-color: #E4E7FF;
        /* 연보라색 배경 */
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-between;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-location a p::before {
        content: '오시는 길';
        font-size: 18px;
        color: #161718;
    }

    .recommend .inner .recommend_con ul.has-new-mobile-layout .item-location a::after {
        background-image: url(../images/img_content04.png);
        width: 100%;
        height: 80px;
        background-position: right bottom;
        margin-top: 10px;
    }

    /* 정보석 영상 팝업 */
    .popup_area .btn_close span {
        width: 30px;
    }

    .review::before {
        font-size: 100px;
        top: 112px;
        left: -15px;
    }

    .review::after {
        font-size: 100px;
        bottom: -25px;
        right: -84px;
    }

    .review .inner {
        padding: 60px 0;
    }

    .review .inner ul li .img_box .dimmed .text_box {
        font-size: 18px;
    }

    .review .inner ul li .img_box .dimmed .text_box .btn_login {
        height: 35px;
        line-height: 35px;
        margin-top: 25.5px;
        font-size: 15px;
    }

    .review .inner ul li>.text_box {
        font-size: 18px;
        margin-top: 20px;
    }

    .review .swiper-button-prev {
        top: -20px;
        left: calc(95% - 60px);
    }

    .review .swiper-button-next {
        top: -20px;
        right: 5%;
    }

    .review .swiper-button-prev::after,
    .review .swiper-button-next::after {
        font-size: 1em;
        font-weight: 700;
    }

    .review .twentytwenty-handle {
        width: 36px;
        height: 36px;
        margin-top: -48px;
        margin-left: -20px;
    }

    .review .twentytwenty-left-arrow,
    .review .twentytwenty-right-arrow {
        width: 15px;
        height: 14px;
    }

    .review .twentytwenty-left-arrow {
        margin-left: -14px;
    }

    .review .twentytwenty-right-arrow {
        margin-right: -14px;
    }

    .review .twentytwenty-horizontal .twentytwenty-handle:before,
    .review .twentytwenty-horizontal .twentytwenty-handle::after {
        width: 1px;
        margin-left: .5px;
    }

    .review .twentytwenty-horizontal .twentytwenty-handle:before {
        margin-bottom: 21px;
    }

    .review .twentytwenty-horizontal .twentytwenty-handle::after {
        margin-top: 21px;
    }

    .review .swiper-scrollbar {
        display: block;
        background: #fff;
    }

    .review .swiper-scrollbar-drag {
        background: #0C82FE;
        height: 200%;
        top: -2px;
    }

    .review .swiper-horizontal>.swiper-scrollbar,
    .review .swiper-scrollbar.swiper-scrollbar-horizontal {
        width: 90%;
        bottom: -30px;
        height: 2px;
    }

    .review .inner .btn_more {
        height: 44px;
        line-height: 44px;
        padding: 0 30px;
        font-size: 16px;
        margin: 74px auto 0;
    }


    .knowhow .inner {
        padding: 60px 5%;
    }

    .knowhow .inner .tab_area {
        margin: 20px auto;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 6px;
    }

    .knowhow .inner .tab_area li a {
        font-size: 14px;
        padding: 14px 20.5px;
        text-align: center;
    }

    .knowhow .inner .tab_con {
        width: 80%;
    }

    .knowhow .inner .tab_con li .text_box {
        margin-top: 40px;
    }

    .knowhow .inner .tab_con li .text_box p {
        font-size: 24px;
        line-height: 36px;
    }

    .knowhow .inner .tab_con li .text_box p .m_color {
        display: block;
    }

    .knowhow .inner .btn_more {
        height: 40px;
        line-height: 40px;
        padding: 0 30px;
        margin: 40px auto 0;
        font-size: 16px;
    }


    .figure .inner {
        padding: 60px 5% 80px;
    }

    .figure .inner ul {
        width: 90%;
        row-gap: 40px;
        margin: 30px auto 0;
    }

    .figure .inner ul li .icon {
        margin: 0 auto 10px;
    }

    .figure .inner ul li .text_box p {
        font-size: 14px;
    }

    .figure .inner ul li .text_box strong {
        font-size: 34px;
    }

    .figure .inner ul li .text_box strong .sm_text {
        font-size: .4em;
    }

    .figure .inner ul li .text_box .conditions {
        font-size: 12px;
        margin-top: 6px;
    }


    .youtube .inner {
        padding: 60px 5%;
    }

    .youtube .mySwiper {
        margin: 40px 0 32px;
    }

    .youtube .mySwiper .img_box {
        margin-bottom: 12px;
    }

    .youtube .mySwiper .text_box .icon {
        width: 34px;
        height: 34px;
    }

    .youtube .mySwiper .text_box p {
        font-size: 18px;
    }

    .youtube .inner .btn_more {
        height: 40px;
        line-height: 40px;
        padding: 0 30px;
        margin: 40px auto 0;
        font-size: 16px;
    }

    .youtube .swiper-horizontal>.swiper-scrollbar,
    .youtube .swiper-scrollbar.swiper-scrollbar-horizontal {
        bottom: -34px;
        height: 2px;
    }

    .youtube .swiper-scrollbar-drag {
        background: #0C82FE;
        height: 200%;
        top: -2px;
    }


    .contact {
        background-position: left top;
    }

    .contact .inner {
        padding: 60px 5%;
    }

    .contact .inner .partition {
        margin-top: 0;
    }

    .contact .inner .partition .notice_area {
        display: none;
    }

    .contact .inner .partition .btn_area {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .contact .inner .partition .btn_area li a {
        padding: 15px 5%;
    }

    .contact .inner .partition .btn_area li a .icon {
        width: 45%;
        padding-top: 45%;
        margin-bottom: 0;
    }

    .contact .inner .partition .btn_area li a p {
        font-size: 14px;
    }


    .branch_banner .inner {
        padding: 60px 5% 80px;
    }

    .branch_banner .inner .mySwiper ul li {
        padding: 27px 5%;
        background-position: center right 12%;
        display: flex;
        flex-direction: column;
        height: 100%;
        align-items: flex-start;
    }

    .branch_banner .inner .mySwiper ul li p {
        width: 55%;
    }

    .branch_banner .inner .mySwiper ul li p span {
        display: none;
    }

    .branch_banner .inner .mySwiper ul li p strong {
        font-size: 20px;
        line-height: 28px;
        word-break: keep-all;
    }

    .branch_banner .inner .mySwiper ul li .btn_more {
        height: 40px;
        line-height: 40px;
        margin-top: 10px;
        padding: 0 24px;
        font-size: 14px;
    }

    .branch_banner .inner .mySwiper ul li .btn_more .pc_ver {
        display: none;
    }

    .branch_banner .inner .mySwiper ul li .btn_more .mo_ver {
        display: block;
    }

    .branch_banner .swiper-horizontal>.swiper-pagination-bullets,
    .branch_banner .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: 52px;
    }
}