.m { display:none; }
#mobile-menu { display:none }

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    MEDIA QUERY
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/*---PC (wide)-----------------------------------------------------------*/
@media (max-width: 1600px) {
    section { max-width:100vw;}
    .bg-attached { background-attachment:unset; background-size:cover !important; }
/*    .inner { width: 100%; }*/
    .inner { width: 80%; --inner: 1500px }

    /* header */
    header.header .gnb-floor > .inner,
    header.header .sub-floor > .inner {
        max-width: 96vw;
        display: grid;
        grid-template-columns: 200px auto;
    }
    header.header .gnb-floor nav.gnb ul.menu li a { font-size:15px }
}


/*---태블릿 ~ PC -----------------------------------------------------------*/
@media (max-width: 1400px) {

     body{
        --logo-mobile-width: 130px;
        --logo-mobile-gtc: 130px 60px;
    }

    section { max-width:100vw; overflow: hidden;}
    .bg-attached { background-attachment:unset; background-size:cover !important; }
    .inner { width: 100%; }

    /* header */
    header.header.on .gnb-floor { background-color:rgba(0, 0, 0, 0.2); }
    header.header .gnb-floor .inner {
        max-width: 100vw;
        grid-template-columns: var(--logo-mobile-gtc);
        justify-content: space-between;
        padding-left: 8px;
    }
    header.header .sub-floor,
    header.header nav.gnb { display: none; }

    header.header .gnb-floor > .inner a.logo { aspect-ratio: 3 / 1; max-height: 50px; }
    header.header .gnb-floor div.menu-btn {
        width: inherit;
        aspect-ratio: 1 / 1;
        transition: background ease 0.5s;
    }
    header.header .gnb-floor div.menu-btn a#menu-btn {
        display: flex;
        width: 100%;
        height: 100%;
        background-image: url(./img/menu-bar.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 30%;
        transition: background ease 0.5s;
    }
/*    header.header .gnb-floor div.menu-btn a#menu-btn {  }*/
/*    div.sub-breadcrumb nav.breadcrumb > ul { width:70% }*/


    /* footer */
    footer.footer > .inner {
        padding: 1.5em 6vw;
    }
    footer.footer > .inner p { font-size: 0.8em; }
    footer.footer > .inner p.copyright { font-size:0.7em }



    /* 모바일메뉴 */
    #mobile-menu {
        display: block;
        visibility: hidden;
        position: fixed;
        opacity: 0;
        max-width: 100vw;
        z-index: -1;
        font-size: 1.0em;
        transition: all ease 0.4s;

        top: 0; left: 0;
        width: 100vw; height: 100vh;
        opacity: 0;
    }
    #mobile-menu.on { visibility: visible; opacity: 1; z-index: 99999;}
    #mobile-menu > .menu-area,
    #mobile-menu > .close-area { width: 100vw; }
    #mobile-menu > .close-area {
        height: 100vh;
        background-color:rgba(0, 0, 0,.7);
        top: 0;
        position: absolute;
        cursor: pointer;
        z-index: -1;
        left: 0;
    }
    #mobile-menu > .menu-area {
        height: auto;
        position: absolute;
        right: 0;
        display: flex;
        flex-direction: column;
        overscroll-behavior:none;
/*        background-color: rgba(40, 40, 40, .8);*/
        box-shadow: 0 0 30px rgba(0, 0, 0, .1);
    }
    #mobile-menu > .menu-area div.title {
        padding: 0;
        max-width: 100vw;
        grid-template-columns: var(--logo-mobile-gtc);
        justify-content: space-between;
        background-color: #fff;
    }
    #mobile-menu > .menu-area div.title a.home {
        display: block;
        aspect-ratio: unset;
        height: 60px;
        background-image: url('./img/logo-header.svg');
        background-repeat: no-repeat;
        background-position: left 8px center;
        background-size: var(--logo-mobile-width);
    }
    #mobile-menu > .menu-area div.title a.close-btn {
        position: absolute;
        width: 60px;
        height: 60px;
        right: 0; top: 0;
        background-image: url('./img/menu-close.svg');
        background-size: 30%;
        background-repeat: no-repeat;
        background-position: center;
    }

    #mobile-menu div.menu-main-menu-container { overflow-y: auto; max-height:90vh }
    #mobile-menu div.menu-main-menu-container::-webkit-scrollbar { width: 3px; height: 3px; }
    #mobile-menu div.menu-main-menu-container::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,.2); }
    #mobile-menu div.menu-main-menu-container::-webkit-scrollbar-track { background-color: #fff; }

    #mobile-menu ul.menu { background-color:#fff }
    #mobile-menu ul.menu > li.menu-item { display:block; transition:all ease 0.5s; overflow:hidden; }
    #mobile-menu ul.menu > li.menu-item > a {
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        font-weight: 500;

        color: var(--secondary);
        letter-spacing: 0.06em;
        font-size: 1.2em;
        opacity: 1.0;
        padding: 1rem 1.5rem;
    }
    #mobile-menu ul.menu li.menu-item-has-children > a::after {
        content: '';
        display: inline-block;
        width: 1em; height: 1em;
        margin-left: auto;
        background-repeat: no-repeat;
        background-size: auto 80% ;
        background-position: center;
        background-image: url('./img/menu-arrow-down.svg');
        transform: scale(1, 1);
    }
    #mobile-menu ul.menu li.menu-item-has-children.on > a::after {
        transform: scale(-1, -1);
    }

    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu {
        display: flex;
        flex-direction: column;
        width: 100%;
        overflow-y: hidden;
        visibility: hidden;
    }
    #mobile-menu ul.menu li.menu-item-has-children.on ul.sub-menu {
        display: block;
        visibility: visible;

        background-color: #f6f6f6;
        padding: 0.5em 0;
    }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu li a {
        display: block;
        color: #666;
        font-size: 1.05em;
        padding: 0.5em 2em;
        background-color: inherit;
    }
    #mobile-menu ul.menu li.current-menu-item > a,
    #mobile-menu ul.menu li.menu-item-has-children.on > a,
    #mobile-menu ul.menu li.menu-item.current-menu-item a { color:var(--primary); background-color:inherit; }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu li.current-menu-item a { color: var(--primary); background-color:rgba(0, 0, 0, .05); }








    /* quickmenu */
    #quickmenu {
        right: 10px;
        bottom: 20px;
        transform: scale(0.8);
        transform-origin: right bottom;
    }
    #quickmenu a {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 2.5em 1.5em 3em;
        border-radius: 5em;
        gap: 5px;
        box-shadow: 7px 5px 10px rgba(0,0,0,.2);
    }










    /* 메인비주얼 외 공통 */
    section > .inner {
        --inner : 100%;
        max-width: 100vw;
        padding: 100px 0;
    }
    /* 섹션 제목영역 */
    section .title-zone { align-items: center; }
    section .title-zone * { text-align: center; }

    /* 섹션 부제목  */
    section .title-zone p.sub { font-size: 0.8em; }

    /* 섹션 제목  */
    section .title-zone .section-title { font-size: 1.5em }
    section .title-zone .section-title span { font-size: inherit; }
    section .title-zone .p-wrap p { font-size: 1.0em; padding: 0 1em; line-height: 1.7}

    /* 유닛 */
    section .unit,
    section .unit.ml,
    section .unit.img { margin: 40px auto; }
    section .unit.unit90,
    section .unit.unit80,
    section .unit.unit70,
    section .unit.unit60,
    section .unit.unit50 { width: 90%; }

    /* 유닛 이미지 정렬 */
    section .unit.img.duo { gap:10px }
    section > div.scrollText {
        animation: scrollTextBg 20s linear infinite;
        height: 2em;
    }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        MAINPAGE : 메인페이지
     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* - - - - - 01. 메인비주얼  */
    section.main-visual { }
    section.main-visual .swiper-slide {
        width: 100vw;
        height: unset;
        aspect-ratio: 2 / 3;
    }
    section.main-visual .swiper-slide .inner {
        padding: 20px 8vw 0;
    }

    section.main-visual .swiper-slide h3.mv-title,
    section.main-visual .swiper-slide.mv2 h3.mv-title { font-size:2.25em }

    section.main-visual .swiper-slide .inner .mv-circle { flex-wrap: wrap; width: 90%; gap: 0 1em}
    section.main-visual .swiper-slide .inner .mv-circle div { width: 30vw; max-width: 9em; padding: 1em}
    section.main-visual .swiper-slide .inner .mv-circle div p { font-size: 1.1em; line-height:1.3 }


    /* - - - - - - - - - - - - */
    section.main-card {}
    section.main-card .unit.color-card {
        gap: 1px;
        width: 100%;
    }
    section.main-card .unit.color-card > div {
        width: 44vw;
        border-radius: 1em;
    }

    /* - - - - - - - - - - - - */
    section.main-better {
        background-attachment: unset;
    }
    section.main-better .inner.flex {
        padding: 8vw;
        flex-direction: column;
        gap: 30px;
    }
    section.main-better .title-zone {
        max-width: 750px;
        align-items: flex-start;
    }
    section.main-better .title-zone * { text-align:left; }
    section.main-better .title-zone .section-title + p { margin-top:1em }




    /* - - - - - - - - - - - - */
    section.main-clinic {}

    section.main-clinic .clinic-swiper {
        overflow: hidden;
        margin-top: 3em;
        position: relative;
    }
    section.main-clinic .swiper-slide {
        aspect-ratio:1 / 1;
    }
    section.main-clinic .swiper-slide > div {
    }
    section.main-clinic .swiper-slide > div > a { padding: 2.5em 3em; }

    /* - - - - - - - - - - - - */
    section.main-board {}
    section.main-board .unit.latest {
        width: 94%;
        grid-template-columns: 1fr;
        gap: 40px;
    }
    section.main-board .unit.latest > div { }
    section.main-board .unit.latest > div h5 { font-size: 1.1em; background-image: none; }


    /* - - - - - - - - - - - - */
    section.main-locate {
        margin-top: 50px;
    }
    section.main-locate .inner {
        position: static;
        padding: 0;
    }
    section.main-locate .inner > div {
        width: 100%;
    }

    section.main-locate .box {
        position: static;
        top: unset;
        right: unset;
        padding: 0 1em;
    }
    section.main-locate .box > div {
        padding: 2em 0;
        width: 100%;
    }
    section.main-locate .map {
        aspect-ratio: 1 / 1;
    }




























    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 레이아웃 / 공통요소
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    section > .inner { padding: 60px 0; }

    /* 서브 헤더 */
    section.sub-header { --inner : 100vw; }
    section.sub-header > .inner { padding: 80px 0 0; }
    section.sub-header .sub-header-title {
        padding: 30px 0 40px;
        width: 85%;
    }
    section.sub-header div.sub-header-title h2 { font-size: 1.6em }
    section.sub-header div.sub-header-title p.desc {
        margin-top: 1em;
        font-size: 1em;
        line-height: 1.6;
        font-weight: 400;
    }


    /* 서브 브레드크럼 */
    div.sub-breadcrumb nav.breadcrumb > ul { width: 90%; margin-left:3% }
    div.sub-breadcrumb nav.breadcrumb > ul li.home {
        width: 30px;
        aspect-ratio: 1 / 1;
        background-size: 30%;
        background-position: center;
    }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children {
        position: relative;
        padding: 0 1em;
    }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children > a { font-size: 1em; }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children > a.on::after { transform: rotate(180deg) translateY(0); }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children ul.sub-breadcrumb-menu {
        top: 20px;
        left: 1em;
        border-radius: 6px;
    }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children ul.sub-breadcrumb-menu li a { font-size: 1em; padding: 0.75em 1.25em; }

    /* 서브 */
    section.sub {
        --inner : 100vw;
    }
    section .unit { margin: 30px auto 0; }
    section .unit.unit90,
    section .unit.unit80,
    section .unit.unit70,
    section .unit.unit60,
    section .unit.unit50 { width: 80%; }
    section.sub .unit.img { margin:30px auto; }


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 레이아웃 / 공통요소
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 서브 헤더 */
    section.sub-header {
        margin-top: 60px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        background-attachment: unset;
    }
    section.sub-header > .inner {
        justify-content: center;
        height: 240px;
        padding: 0;
    }
    section.sub-header h1 {
        font-size: 1.8em;
    }
    section.sub-header h1::after {
        width: 4em;
        height: 2px;
        margin: 0.35em auto;
    }
    section.sub-header h2 {
        font-size: 1.5em;
    }


    /* 탭 메뉴 전체 컨테이너 */
    section.sub.sub-tab {}
    .sibling-tabs {
        grid-template-columns: 1fr;
/*        grid-template-columns: 1fr 1fr;*/
    }
    /* 기본 탭 스타일 */
    .sibling-tabs li a { font-size: 1.2em; font-weight: 500; }
    /* 마우스 올렸을 때 현재 활성화된 페이지 탭 */
    .sibling-tabs li a:hover {
        background-color: #508CC9;
        color: #fff;
    }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
    section.sub .unit.img {
        width: 100%;
    }
    /*section.sub .unit.img img { border: 1px solid red }*/


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
    /* qna */
    section.qna .inner { padding:0 }
    section.qna .qna-container {
      margin: 30px auto 0;
      width: 96%;
    }
    section.qna .accordion button {
        background-size: 0.5em;
    }


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
    section.qna.main-board .qna-container { margin-top:0 }


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
    /*Before After*/
    section.sub .unit.beforeafter {
        width: 90%;
        max-width: 600px;
        grid-template-columns: 1fr;
        gap: 30px;
    }
    section.sub .unit.beforeafter .txt { padding: 1.5em 0.5em; }
    section.sub .unit.beforeafter .txt p {  line-height: 1.6; }



}



/*---모바일 ----------------------------------------------------------------*/
@media screen and (max-width: 480px) {
    * { font-size:14px }

    .pc { display:none !important; }
    .m { display:block; }

    #quickmenu-m {
        width: 100vw;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        position: fixed;
        bottom: -1px;
        left: 0;
        z-index: 999;
        box-shadow: 0 -3px 10px -3px rgba(0,0,0,.1);
/*        background-color: var(--primary);*/
        background-color: #f9f9f9;
        padding: 12px 10px;
        height: 65px;
        box-sizing: border-box;
    }
    #quickmenu-m > a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
/*        color: #fff;*/
        font-size: 3vw;
        background-size: auto 20px;
        background-position: top center;
        background-repeat: no-repeat;
    }
    #quickmenu-m > a + a { border-left:1px solid rgba(0, 0, 0, .1); }

    #quickmenu-m > a.call { background-image:url('./img/icon/quick-call.svg') }
    #quickmenu-m > a.book { background-image:url('./img/icon/quick-locate.svg') }
    #quickmenu-m > a.map { background-image:url('./img/icon/quick-kakao.svg') }
    #quickmenu-m > a.nbook { background-image:url('./img/icon/quick-nbook.svg') }
    #quickmenu-m > a.blog { background-image:url('./img/icon/quick-blog.svg') }


    #quickmenu-m div.topbtn {
        position: absolute;
        background-color: #fff;
        box-shadow: 0 5px 10px rgba(0,0,0,.15);
        border-radius: 50%;
        aspect-ratio: 1 / 1;
        width: 40px;
        right: 10px;
        top: -10px;
        transform: translateY(-100%);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 110%;
        background-image: url('./img/top.svg');
    }



    /* copyright */
    footer.footer .copyright { font-size: 3vw; }










    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 레이아웃 / 공통요소
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 서브 브레드크럼 */
    div.sub-breadcrumb nav.breadcrumb ul li.has-children { font-size: 3.3vw;/*모바일*/ }
    div.sub-breadcrumb nav.breadcrumb ul li.has-children ul.sub-breadcrumb-menu li { font-size: 3vw; }/*모바일*/




}