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

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

    /* header */
    header.header .gnb-floor > .inner,
    header.header .sub-floor > .inner {
        max-width: 96vw;
        display: grid;
        grid-template-columns: 250px 800px 180px;
    }
    header.header .gnb-floor nav.gnb ul.menu li.menu-item-has-children a { font-size:16px }
}


/*---태블릿 ~ PC -----------------------------------------------------------*/
@media (max-width: 1400px) {
    section { max-width:100vw; overflow-x:hidden; }
    .bg-attached { background-attachment:unset; background-size:cover !important; }
    .inner { width: 100%; }

    /* header */
    header.header .gnb-floor .inner {
        max-width: 100vw;
        grid-template-columns: 55vw 60px;
        justify-content: space-between;
    }
    header.header .sub-floor,
    header.header img.mohw,
    header.header nav.gnb { display: none; }

    header.header .gnb-floor > .inner a.logo { aspect-ratio: 3 / 1;
        max-height: 60px; }
    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 img.logo { width: 280px;}

    #quickmenu { display: none;}


    /* 모바일메뉴 */
    #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: 55vw 60px;
        justify-content: space-between;
        border-bottom: 1px solid #eee;
        background-color: var(--primary);
    }
    #mobile-menu > .menu-area div.title a.home {
        display: block;
        width: 55vw;
        aspect-ratio: 3 / 1;
        max-height: 60px;
        background-image: url('./img/logo-fff.png');
        background-repeat: no-repeat;
        background-position: left center;
        background-size: contain;
    }
    #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-fff.svg');
        background-size: 30%;
        background-repeat: no-repeat;
        background-position: center;
    }

    #mobile-menu div.menu-main-menu-container { overflow-y: auto; }
    #mobile-menu div.menu-main-menu-container::-webkit-scrollbar { width: 5px; height: 5px; }
    #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: transparent; }

    #mobile-menu ul.menu > li.menu-item { display:block; background-color: #fff; 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: #333;
        font-size: 1em;
        opacity: 1.0;
        padding: 1rem 1.5rem;
        border-bottom: 1px solid rgba(200,200,200,.1);
    }
    #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: 80% auto;
        background-position: center;
        background-image: url('./img/arrow-menutoggle-dark.svg');
    }
    #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;
        border: 1px solid rgba(200,200,200,.1);
    }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu li a {
        display: block;
        color: #666;
        font-size: 1em;
        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); }


    /* - - - - - 01. 메인비주얼  */
    section.main-visual .swiper-slide {
        aspect-ratio: 1 / 1;
    }
    section.main-visual .swiper-slide .inner .text-box {
        margin-top: 40px;
        width: 100%;
        min-height: 100%;
        border-radius: 0;
        padding: 8vw;
        background-color: rgba(17,63,132,.3);
    }
    section.main-visual .swiper-slide.mv3 .inner .text-box { background-color: rgba(8, 97, 97, .8); }
    section.main-visual .swiper-slide .text-box .mv-title p + h3 { line-height: 1.3; margin:0.1em auto 1em; }
    section.main-visual .swiper-slide .text-box .mv-desc { padding: 0 1em; width:90%; margin:0 auto; }


    section.main-visual .control {
        width: 30vw;
        min-width: 200px;
        max-width: 300px;
        height: 60px;
        left: 50%;
        transform: translate(-60%, 22vh);
    }
    section.main-visual .control .arrow-box {
        position: absolute;
        right: 0;
        top: 0;
        display: flex;
        flex-direction: row;
        transform: translate(130%, 0);
    }
    section.main-visual .control .swiper-pagination { transform: translateY(-80%); }


    /* - - - - - 02. 원장님소개  */
    section.main-doctor .unit.doctor-grid {
        grid-template-columns: 1fr;
        align-items:center;
        grid-gap: 30px;
    }
    section.main-doctor .unit.doctor-grid > div.img { display: none; }


    /* - - - - - 03. 중점진료센터  */
    section.main-center div.unit {
        width: 86%;
        grid-gap: 8px;
    }
    section.main-center div.unit .center-grid,
    section.main-center div.unit .center-grid + .center-grid {
        display: grid;
/*        grid-template-columns: 1fr;*/
        grid-gap: 8px;
    }
    section.main-center div.unit .center-grid > div,
    section.main-center div.unit .center-grid > div:hover { height: 30vw;  }

    /* - - - - - 04. (*) 치료의차이  */
    section.main-differ {
        background-size: 170%;
        background-position: right bottom;
        padding-bottom: 57%;
    }
    section.main-differ .title-zone {
        width: 100%;
        padding: 0 8vw;
    }
    section a.btn-icon-link {
        width: fit-content;
        margin: 0 auto;
        font-size: 1.1em;
    }
    section.main-differ div.p-wrap {  margin: 25px 0;  }

    /* - - - - - 05. 비수술맞춤치료센터  */
    section.main-nonsurgery > .inner { padding: 5em 0 8em }
    section.main-nonsurgery .unit > .card > .txt { padding:1.5em; justify-content:center; }
    section.main-nonsurgery .unit > .card > .txt::before { font-size: 0.9em; }
    section.main-nonsurgery .unit > .card > .txt h5 { font-size: 1.3em; }
    section.main-nonsurgery .unit > .card > .txt h5 + p { font-size: 0.8em; }
    /* scrollText */
    section.main-nonsurgery .scrollText {
        background-size: auto 2em;
        animation: scrollTextBg 30s linear infinite;
        height: 5em;
    }



    /* - - - - - 07. (*) 오시는길  */
    section.main-locate {}
    section.main-locate .unit.locate-info {
        width: 90%;
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 40px;
    }
    section.main-locate .unit.locate-info > div.info {
        order: 2;
        width: 92%;
        margin: 0 auto;
        grid-template-columns: 1fr 1fr;
    }
    section.main-locate .unit.locate-info > div.info h6 {
        border-left: 3px solid var(--primary);
        font-size: 1.3em;
        width: fit-content;
        margin: 0 auto;
    }
    section.main-locate .unit.locate-info > div.info dl {
        display: grid;
        grid-template-columns: 6em auto;
        align-items: center;
        grid-gap: 1em;
        padding: 1em;
        position: relative;
        font-size: 1.6vw;
    }
    section.main-locate .unit.locate-info > div.info dl.time::before {
        width: 100%;
        height: 5em;
        top: 3em;
    }

    section.main-locate .unit.locate-info > div.info div.links {
        width: 94%;
        margin: 0.5em auto 0;
        display: grid;
        grid-gap: 5px;
        grid-template-columns: 1fr 1fr;
        font-size: 1.6vw;
    }
    section.main-locate a.btn-square-map { padding: 0.8em 1.5em; width: 100%; }
    section.main-locate a.btn-square-map::before { width:1.25em }


    section.main-locate .unit.locate-info > div.locate {
        order: 1;
        grid-gap: 10px;
    }
    section.main-locate .unit.locate-info > div.locate .map-label {
        grid-gap: 0.5em;
        padding: 1.5em 2em;
        border-radius: 10px;
        margin-top: 0.75em;
        background-image: url('./img/icon-map-locate.svg');
        background-repeat: no-repeat;
        background-size: 1em;
        background-position: left 2.5em center;
        text-indent: 1.5em;
    }
    section.main-locate .unit.locate-info > div.locate .map-label::before { display: none; }

    section.main-locate a.btn-icon-link {
        grid-column: 1 / span 2;
        padding: 0.8em 2.5em;
        font-size: 1.1em;
        margin: -0.8em auto 0;
        width: 100%;
    }

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

    /* 서브 헤더 */
    section.sub-header { --inner : 100vw; overflow-x: unset;}
    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; }

    /* 효과 - 텍스트 채우기 */
    section.sub .text-fill div.fill {
        height: 2.3em;
        max-width: unset;
    }

    /* 효과 스크롤텍스트(서브페이지) */
    section.effect .scrollText {
        margin: 30px 0;
        background-size: auto 1.5em;
        animation: scrollTextBg 25s linear infinite;
        height: 2em;
    }

    /* 텍스트 스타일링 */
    /* 일반섹션 타이틀존 정렬 */
    section.sub div.title-zone.txt-left {
        padding: 0 8vw;
    }
    section.sub div.title-zone.txt-left * {
        text-align: left !important;
        width: fit-content;
        margin-right: auto;
    }

    /* 일반섹션 타이틀 yellow */
    section.sub div.title-zone h4.title {
        font-size: 1.5em;
    }
    /* 일반섹션 서브타이틀 국문 lime */
    section.sub .title-zone p.subtitle {
        font-size: 1em;
        font-weight: 500;
    }
    /* 인트로섹션 서브타이틀 국문 (fill 이펙트 위쪽) cyan */
    section.sub.intro .title-zone p.intro-subtitle {
        font-size: 1em;
        font-weight: 500;
    }
    /* 일반섹션 서브타이틀 영문 red*/
    section.sub div.title-zone .eng {
        font-size: 0.9em;
    }
    /* 일반섹션 서브타이틀 영문 대문자 magenta */
    section.sub div.title-zone .eng.upper {
        font-size: 0.8em
    }
    /* 일반섹션 타이틀 아래 문구 */
    section.sub div.title-zone p.desc {
        font-weight: 400;
        font-size: 1em;
    }
    section.sub div.title-zone.txt-left p.desc { width:90% }

    /*  노란색 라벨  */
    section.sub span.label {
        padding: 0.4em 0.8em;
        border-radius: 0.25em;
        font-size: 1em;
    }
    /* 섹션 / 유닛 내부 소제목 */
    section.sub div.unit h5 { font-size: 1.2em; }




    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 00 병원소개
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    section.sub.intro.about .inner { padding:8vw 8vw 0 }

    /* - - - - - 서브페이지 : 의료진소개 (sub00-doctor.php) */
    section.sub.intro.about.doctor {
        background-position: right -30% bottom -50px;
        background-size: 70%;
    }
    section.sub.intro.about.doctor .inner { padding-bottom:30% }

    /* 믿음직한 의료진 */
    section.sub.doctor div.title-zone h4.txt-left { text-align:center; }
    section.sub.doctor div.unit.doctor-grid {
        margin-top: 20px;
        grid-gap: 30px;
        grid-template-columns: 1fr;
    }
    section.sub.doctor div.unit.doctor-grid .img.sticky {
        position: static;
        background-size: 60%;
        background-position: center top 20px;
        aspect-ratio: 4 / 3;
    }
    section.sub.doctor div.unit.doctor-grid .txt {
        grid-gap: 30px;
        justify-content: center;
    }
    section.sub.doctor div.unit.doctor-grid .txt span.label {
        margin: 0 auto 0.8em;
        display: block;
        width: fit-content;
    }
    section.sub.doctor div.unit.doctor-grid .txt h5 { font-size: 1.5em; text-align: center;}
    section.sub.doctor div.unit.doctor-grid .txt h5 small {
        font-weight: normal;
        letter-spacing: -0.025em;
        font-size: 0.8em;
    }
    /* 진료시간 테이블 */
    section.sub.doctor table.schedule {
        border-radius: 10px;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
    }
    section.sub.doctor table.schedule tr > * {
        padding: 0.7em 1em;
    }

    /* 약력 */
    section.sub.doctor div.career {
        background-color: #F8F8F6;
        border-radius: 10px;
        padding: 8vw;
        gap: 20px;
    }
    section.sub.doctor div.career ul {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 0.5em;
    }
    section.sub.doctor div.career ul li {
        color: #484848;
    }
    section.sub.doctor div.career ul li strong {
        font-size: 1.1em;
    }

    /* 새한의 5가지 진료철칙 */
    section.sub.doctor.bg-dark .unit.principle-icon {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: center;
        grid-gap: 15px;
    }
    section.sub.doctor.bg-dark .unit.principle-icon > div {
        padding: 0;
        width: 24vw;
    }
    section.sub.doctor.bg-dark .unit.principle-icon > div + div { border-left: 0; }
    section.sub.doctor.bg-dark .unit.principle-icon > div img { width: 60%; }
    section.sub.doctor.bg-dark .unit.principle-icon > div img + p { font-size: 1em };




    /* - - - - - 서브페이지 : 장비소개 (sub00-doctor.php) */
    section.sub.about.equip {}
    section.sub.about.equip .unit {}
    /* 장비 탭버튼
    section.sub.equip div.tabs {
        width: 100%;
        padding: 0 10vw 20px;
        margin: 0 auto;
        overflow-x: scroll;
    }*/

    /* 장비 탭부분 슬라이드 */
    section.sub.about.equip .tab-slide-wrapper { position:relative; }
/*    section.sub.about.equip .tab-slide-wrapper::after {
        content: '';
        display: block;
        position: absolute;
        width: 100vw;
        height: 1.5em;
        top: 0;
        background: linear-gradient(90deg, #FFF 10%, transparent 15%, transparent 85%, #fff 90%);
        z-index: 1;
    }*/
    section.sub.about.equip .equip-tabs {
        width: 80vw;
        padding: 0;
        margin: 0 10vw;
        overflow: hidden;
    }

    section.sub.about.equip .equip-tabs .swiper-wrapper {
        width: 100%;
    }

    section.sub.about.equip .equip-tabs .swiper-slide { width:fit-content; }
    section.sub.about.equip .equip-tabs .swiper-slide span {
        display: block;
        width: fit-content;
        margin: 0 auto;
        text-align: center;
    }
    section.sub.about.equip .tab-button-prev,
    section.sub.about.equip .tab-button-next {
        display: block;
        top: 0;
        visibility: visible;
        opacity: 0.6;
        z-index: 12;
    }


    section.sub.about.equip .tab-slide-wrapper::before,
    section.sub.about.equip .tab-slide-wrapper::after {
        content: '';
        display: block;
        position: absolute;
        width: 12vw;
        height: 2em;
        top: 0;
        z-index: 2;
/*        border: 1px dashed red;*/
    }

    section.sub.about.equip .tab-slide-wrapper::before { left:0; background: linear-gradient(90deg, #fff 80%, transparent 100%); }
    section.sub.about.equip .tab-slide-wrapper::after { right:0; background: linear-gradient(-90deg, #fff 80%, transparent 100%); }

    section.sub.about.equip .swiper-button-disabled { opacity:0.2 }






/*    section.sub.equip div.tabs > div.button-wrapper { width: 110vw; }*/
    /* 장비 탭 내부 */
    section.sub.equip .grid-inner {
        margin-top: 20px;
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
    section.sub.equip .grid-inner > .img { border-radius: 0; }
    section.sub.equip .grid-inner > .txt { padding: 0 10vw; }
    section.sub.equip .grid-inner > .txt p.desc { font-size: 1.05em; }


    /* - - - - - 서브페이지 : 병원 둘러보기 (sub00-doctor.php) */
    /* - - - - - 서브페이지 : 진료시간 / 오시는길 (sub00-info.php) */
    section.sub.about.locate > .inner { padding-top:50px }
    section.sub.about.locate #address {
        width: 100%;
    }
    section.sub.about.locate #address .tooltip {
        font-size: 3vw;
        padding: 0.4em 1em;
        right: 0;
        transform: translate(0%, 50%);
    }
    section.sub.about.locate #address:active .tooltip,
    section.sub.about.locate #address:hover .tooltip {
        transform: translate(0%, 50%);
    }
    section.sub.about.locate #address img { width: 1em; transform: translate(0.1em, 10%); }
    section.sub.about.locate div.links {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-top: 15px;
        grid-gap: 8px;
    }
    section.sub.about.locate div.links a.btn-square-map { width:100%; padding: 0.8em 1.5em; justify-content:center;  }
    section.sub.about.locate #map {
        aspect-ratio: 16 / 9;
        border: 1px solid #ddd;
        background-color: #fafafa;
        border-radius: 5px;
    }
    section.sub.about.locate div.unit.info-grid {
        display: grid;
        grid-template-columns: 1fr 3fr;
        grid-gap: 20px 10px;
    }
    section.sub.about.locate div.unit.info-grid h5 { font-size:1.2em }

    section.sub.about.locate div.unit.info-grid table { transform:translateY(-1vw); width:100% }
    section.sub.about.locate div.unit.info-grid table tr > * {
        padding: 0.35em 1em;
        line-height: 1.8;
        font-weight: 600;
        margin-bottom: 0.5em;
    }
    section.sub.about.locate div.unit.info-grid a.number {
        font-size: 2em;
        line-height: 1.0;
        transform: translateX(0.5em);
    }


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 01 중점진료센터
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 중점진료센터 인트로 */
    section.sub.center.intro .divider {
        height: 30px;
        margin: 20px auto -30px;
    }
    /* 중점진료센터 원인 */
    section.sub.center.cause {
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center;
        background-color: var(--bg);
    }
    /* 중점진료센터, 교정센터 공통  */
    section.sub div.unit.cause-grid,
    section.sub.center.cause div.unit.cause-grid,
    section.sub.correction.effect div.unit.cause-grid {
        width: 82vw;
        grid-template-columns: 1fr 1fr;
        grid-gap: 10px;
    }
    section.sub div.unit.cause-grid > div {
        padding: 5vw;
        border-radius: 10px;
        background-color: rgba(255, 255, 255, .7);
    }
    section.sub div.unit.cause-grid > div p.txt-secondary {
        grid-gap: 2px;
        font-size: 1.1em;
        margin-bottom: 0.5em;
    }
    section.sub div.unit.cause-grid > div p.txt-secondary::before { width: 20px; }
    section.sub div.unit.cause-grid > div p.txt-secondary + p { padding:0 1em }


    /* 중점진료센터 질환 (== 탭슬라이드) */
    /* 주요질환 탭버튼 */
    section.sub.disease.tab-slide div.tabs {
        padding: 6px;
        width: fit-content;
        max-width: 70vw;
        margin: 0 auto 30px; /*탭 <-> 슬라이드 간격*/
        overflow-x: scroll;
    }
    section.sub div.tabs::-webkit-scrollbar { width: 0; height: 0; }
    section.sub div.tabs::-webkit-scrollbar-thumb { background-color: transparent; }
    section.sub div.tabs::-webkit-scrollbar-track { background-color: transparent; }

    section.sub.disease.tab-slide div.tabs > div.button-wrapper {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        width: fit-content;
        grid-gap: 0;
    }
    section.sub.disease.tab-slide div.tabs button.tab-button { padding: 0.6em 1em; white-space:nowrap;}
    /* 주요질환 탭 내부 */
    section.sub.disease div.unit { overflow: visible; }
    section.sub.disease .grid-inner {
        grid-template-columns: 1fr;
        grid-gap: 50px;
    }
    section.sub.disease .grid-inner > .img { aspect-ratio: 53 / 43; }
    section.sub.disease .grid-inner > .txt {
        padding: 0 10vw;
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
    section.sub.disease .grid-inner > .txt h5 { font-size: 1.3em }
    section.sub.disease .grid-inner > .txt p.desc {
        font-weight: 400;
        line-height: 1.7;
        padding-right: 0;
        margin-bottom: 1em;
    }
    section.sub.disease .grid-inner > .txt div.grid.half {
        grid-template-columns: 1fr;
        grid-gap: 20px; /* 원인 <-> 증상 간격*/
    }
    section.sub.disease .grid-inner > .txt div.grid.half > div { grid-template-columns: 4em auto; }

    section.sub.disease .grid-inner > .txt div.grid.half span.label { text-align: center;}
    section.sub.disease .grid-inner > .txt div.grid.half ul li {
        display: grid;
        grid-template-columns: 1em auto;
        color: var(--labeltxt);
        font-weight: 600;
    }
    section.sub.disease .grid-inner > .txt div.grid.half ul li + li {
        margin-top: 0.5em;
    }
    section.sub.disease .grid-inner > .txt div.grid.half ul li::before {
        content: '\00b7';
        color: inherit;
        font-weight: 800;
        font-size: 1.2em;
        line-height: 1.0;
    }

    /* 왜 새한이어야 할까요?  */
    section.sub.why .wrap.flex {
        width: 100vw;
        grid-template-columns: 1fr;
        grid-gap: 30px;
        padding: 50px 0;
        margin:0;
    }
    section.sub.why .wrap.flex .slide-box {
        margin: 0;
        overflow: hidden;
    }
    section.sub.why .slide-box .why-slide { padding-right: 0; }
    section.sub.why .slide-box .swiper-slide { padding: 0; }
    section.sub.why .slide-box .swiper-slide h5 {font-size: 1.3em;}
    section.sub.why .slide-box .swiper-slide h5 + p {
        font-weight: 400;
        line-height: 1.7;
        margin-bottom: 1em;
    }
    section.sub.why .control {
        margin-top: 10px;
    }
    section.sub.why .control .swiper-scrollbar {
        width: 50vw;
        margin: 0 auto;
        left: 0;
        position: relative;
    }
    section.sub.why .control .swiper-scrollbar-drag {
        background-color: #222;
    }

    /* 유의사항 FAQ  */
    section.sub.faq div.unit.faq-list { width: 90%; }
    section.sub.faq div.unit.faq-list .faq { border-radius:10px; padding:1.5em; max-height:4em }
    section.sub.faq div.unit.faq-list .faq + .faq { margin-top:0.5em }

    section.sub.faq div.unit.faq-list .faq .question p { white-space:nowrap; text-overflow:ellipsis; overflow:hidden; width:96% }
    section.sub.faq div.unit.faq-list .faq.active .question p { white-space:normal; text-overflow:unset; overflow:unset; }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 03 교정센터
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 새한 통증 진단 및 치료 */
    section.sub.repeat.paincare {}
    section.sub.repeat.paincare .inner {
        padding-bottom: 40px;
    }
    section.sub.repeat.paincare div.unit {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    section.sub.repeat.paincare div.unit > div,
    section.sub.repeat.paincare div.unit > div:hover {
        width: 100%;
        aspect-ratio: unset;
        border-radius: 15px;
        grid-gap: 0.8em;
        box-shadow: unset;
        padding: 4em 1em;
    }
    section.sub.repeat.paincare div.unit > div h5 { font-size: 1.3em; }
    section.sub.repeat.paincare div.unit > div p { padding: 0 1em; }


    /* 교정치료방법 (3개 그리드) */
    section.sub div.unit.correction-grid {
        grid-template-columns: 1fr;
        grid-gap: 40px;
        justify-content: center;
        align-items: flex-start;
        width: fit-content;
        max-width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
    section.sub div.unit.correction-grid > div {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 40px;
        align-items: center;
        justify-content: flex-start;
    }
    section.sub div.unit.correction-grid > div p {
        text-align: left;
        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 -6px rgba(0,0,0,.01);
        background-color: var(--primary);
        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(255, 255, 255, .1); }

    #quickmenu-m > a.call { background-image:url('./img/quick-m-call.svg') }
    #quickmenu-m > a.book { background-image:url('./img/quick-m-book.svg') }
    #quickmenu-m > a.map { background-image:url('./img/quick-m-map.svg') }
    #quickmenu-m > a.blog { background-image:url('./img/quick-m-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: 30%;
        background-image: url('./img/top-mobile.svg');
    }




/*     footer*/
    footer.footer * { font-size:3vw }
    footer.footer > .inner {
        padding: 60px 8vw 100px;
        grid-gap: 20px;
    }

    /* 푸터로고 */
    footer.footer img.logo { width: 50%;}

    /* 푸터메뉴 */
    footer.footer .footer-menu { order:4 }
    footer.footer ul.menu { gap: 1em; }
    footer.footer ul.menu li.menu-item { display:block; }


    /* 푸터인포 */
    footer.footer ul.info {
        grid-gap: 0.5em 1.5em;
        padding: 0 5vw;
    }
    footer.footer ul.info li {
        font-weight: 400;
    }
    /* 푸터링크 */
    footer.footer div.links {
        grid-gap: 5px;
    }
    /* 지도버튼 */
    a.btn-square-map {
        border-radius: 5px;
        padding: 1em 1.5em;
        grid-gap: 6px;
        align-items: center;
    }
    a.btn-square-map::before { width: 20px; }
    /* copyright */
    footer.footer .copyright {
        font-size: 0.8em;
        font-weight: 400;
        order: 5;
        text-align: center;
    }







    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        MAINPAGE : 메인페이지
     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* - - - - - 01. 메인비주얼  */
    section.main-visual .swiper-slide {
        aspect-ratio: 2 / 3;
        background-position: right 40% center;
    }


    section.main-visual .swiper-slide .text-box p.eng { font-size:3vw }
    section.main-visual .swiper-slide .text-box .mv-title::after { margin:1em auto 0 }
    section.main-visual .swiper-slide .text-box .mv-title p { font-size:4.5vw }
    section.main-visual .swiper-slide .text-box .mv-title p + h3 {  font-size:6.6vw }
    section.main-visual .swiper-slide .text-box .mv-desc { font-size:3.5vw }
    section.main-visual .swiper-slide.mv2 .text-box .mv-desc { width:100%;}


    /* - - - - - 02. 원장님소개  */
    section.main-doctor > .inner { padding:40px 0 60px }
    section.main-doctor .unit.doctor-grid > div.txt .title-zone {
        padding: 0;
    }
    section.main-doctor .unit.doctor-grid > div.txt .title-zone * { }
    section.main-doctor .unit.doctor-grid > div.txt .title-zone p.txt-primary {
        margin: 1em 0;
/*        font-size: 4.2vw;*/
    }
    section.main-doctor .unit.doctor-grid > div.txt .career-zone {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 1em;
        margin: 0 auto 30px;
    }
    section.main-doctor .unit.doctor-grid > div.txt .career-zone ul li {
        font-size: 1em;
        opacity: 0.4;
    }
    section.main-doctor .unit.doctor-grid > div.txt .more-zone div.photo-grid { grid-gap: 5px; }


    /* - - - - - 03. 중점진료센터  */
    section.main-center::before,
    section.main-center::after { aspect-ratio: 3 / 1; }
    section.main-center div.unit {
        width: 75%;
        grid-gap: 8px;
    }
    section.main-center div.unit .center-grid,
    section.main-center div.unit .center-grid + .center-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 8px;
    }
    section.main-center div.unit .center-grid > div,
    section.main-center div.unit .center-grid > div:hover {
        height: 80px;
        border-radius: 10px;
        box-shadow: none;
        transition: none;
    }

    section.main-center div.unit .center-grid > div a {
        justify-content: center;
        align-items: flex-start;
        gap: 0;
        padding: 0 30px;
    }
    section.main-center div.unit .center-grid > div a p { font-size:4vw }
    section.main-center div.unit .center-grid > div::before,
    section.main-center div.unit .center-grid > div:hover::before {
        background-color: rgba(0,0,0,.2);
        transition: unset;
    }

    /* - - - - - 04. (*) 치료의차이  */

    /* - - - - - 05. 비수술맞춤치료센터  */
    section.main-nonsurgery > .inner {
        padding: 5em 0 8em;
    }
    section.main-nonsurgery .unit {
        width: 80%;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        grid-gap: 20px;
    }
    section.main-nonsurgery .unit > .card.init,
    section.main-nonsurgery .unit > .card:hover,
    section.main-nonsurgery .unit > .card {
        aspect-ratio: 1.3 / 1;
        transform : none;
        border-radius: 10px;
        transition: none;
        box-shadow: 0 30px 40px -5px rgba(20,40,100,.4);
        filter: opacity(1);
    }

    section.main-nonsurgery .unit > .card > .txt {
        padding: 1.5em;
        justify-content: center;
    }
    section.main-nonsurgery .unit > .card > .txt h5 + p {
        max-width: 55%;
        font-size: 0.9em;
        margin: 1em 0 2em
    }
    section.main-nonsurgery .unit > .card > .txt h5 + p + img { width:3em }


    section.main-nonsurgery .unit > .card:hover > .img,
    section.main-nonsurgery .unit > .card > .img {
        background-size: cover;
        background-position: center;
        width: 35%;
        border-radius: 0;
/*        border-left: 2px solid #3070F4;*/
        border-left: 0;
        transform: translateX(0);
        transition: none;
    }
    /* scrollText */
    section.main-nonsurgery .scrollText {
        background-size: auto 1.5em;
        animation: scrollTextBg 20s linear infinite;
        height: 5em;
    }

    /* - - - - - 06. 둘러보기  */
    section.main-preview > .inner {
        margin-bottom: 50px;
        padding-bottom: 50px;
    }
    section.main-preview .slide-box {
        width: 100vw;
        margin: 30px auto 0;
        overflow: hidden;
    }
    section.main-preview .swiper-slide,
    section.main-preview .swiper-slide.swiper-slide-active { transform: scale(1.0); }
    section.main-preview .control {
        width: 60vw;
        height: 30px;
        left: 45%;
        bottom: 0;
        transform: translate(-50%, 0) scale(0.8);
    }
    section.main-preview .control .arrow-box {
        transform: translate(120%, -20%);
    }
    section.main-preview .control .swiper-pagination {
        transform: translateY(0.25em);
    }
    section.main-preview .control .progress-box {
        width: 60%;
        position: relative;
        z-index: 11;
        left: 50%;
        top: 40%;
        transform: translate(-50%, 0);
    }
    section.main-preview .control .autoplay-progress {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 10;
        width: 100%;
        height: 3px;
        background-color: rgba(0, 0, 0, 0.1);
    }
    section.main-preview .control .autoplay-progress svg {
        --previewprogress: 0;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 10;
        width: 100%;
        stroke-width: 2px;
        stroke: #222;
        fill: none;
        stroke-dashoffset: calc(100 * (1 - var(--previewprogress)));
        stroke-dasharray: 100;
    }




    /* - - - - - 07. (*) 오시는길  */
    section.main-locate .unit.locate-info > div.info {
        order: 2;
        width: 92%;
        margin: 0 auto;
        grid-template-columns: 1fr;
    }
    section.main-locate .unit.locate-info > div.info h6 {
        border-left: 3px solid var(--primary);
        font-size: 1.3em;
        width: fit-content;
        margin: 0 auto;
    }
    section.main-locate .unit.locate-info > div.info dl { font-size: 3.8vw; grid-gap:1em 0.5em }
    section.main-locate .unit.locate-info > div.info dl.time::before {
        width: 100%;
        height: 40%;
        top: 20%;
    }
    section.main-locate .unit.locate-info > div.info div.links {
        font-size: 0.9em;
    }
    section.main-locate .unit.locate-info > div.locate .map-label { font-size: 4vw; }
    section.main-locate a.btn-icon-link {
        grid-column: 1;
        padding: 0.8em 2.5em;
        font-size: 1.1em;
        margin: -0.8em auto 0;
        width: 90%;
    }

    section.main div.title-zone .eng { font-size:2.5vw }
    section.main div.title-zone .main-title { font-size: 1.5em; }
    section.main div.title-zone .main-title span { font-size: inherit; }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        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; }/*모바일*/


    /* 효과 - 텍스트 채우기 */
    section.sub .text-fill div.fill { font-size: 3.4vw;/*모바일*/ }


    /* 일반섹션 서브타이틀 영문 대문자 magenta */
    section.sub div.title-zone .eng.upper {
        font-size: 2.5vw;/*모바일*/
    }


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 00 병원소개
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

    /* - - - - - 서브페이지 : 의료진소개 (sub00-doctor.php) */
    section.sub.intro.about.doctor {
        background-position: right -20vw bottom -10vw;
        background-size: 110vw;
    }
    section.sub.intro.about.doctor .inner { padding-bottom:80vw }


    /* 진료시간 테이블 */
    section.sub.doctor table.schedule tr > * {
        font-size: 3.3vw;/*모바일*/
    }
    section.sub.doctor table.schedule thead th {
        font-size: 3.5vw;/*모바일*/
    }
    /* 약력 */
    section.sub.doctor div.career ul li {
        font-size: 3.5vw;/*모바일*/
    }

    /* - - - - - 서브페이지 : 장비소개 (sub00-doctor.php) */
    section.sub.equip div.tabs > div.button-wrapper { width: 104vw; }

    /* - - - - - 서브페이지 : 진료시간 / 오시는길 (sub00-info.php) */
    section.sub.about.locate div.unit.info-grid table tr > * {
        font-size: 3.5vw;/*모바일*/
    }

    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 01 중점진료센터
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 중점진료센터, 교정센터 공통  */
    section.sub div.unit.cause-grid,
    section.sub.center.cause div.unit.cause-grid,
    section.sub.correction.effect div.unit.cause-grid {
        width: 82vw;
        grid-template-columns: 1fr;
        grid-gap: 10px;
    }

    /* 중점진료센터 질환 (== 탭슬라이드) */
    /* 주요질환 탭버튼 */
    section.sub.disease.tab-slide div.tabs {
        max-width: 90vw;
        border-radius: 10px;
        overflow: hidden;
        width: 80%;
        margin: 0 auto 20px;
    }
    section.sub.disease.tab-slide div.tabs > div.button-wrapper {
        font-size: 3.5vw;
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        border-radius: 5px;
        gap: 5px 0;
    }
    section.sub.disease.tab-slide div.tabs button.tab-button { border-radius:8px }


    /* - - - - - 서브페이지 : 척추 (sub01-spine.php) */
    /* - - - - - 서브페이지 : 어깨 (sub01-shoulder.php) */
    /* - - - - - 서브페이지 : 팔꿈치 (sub01-elbow.php) */
    /* - - - - - 서브페이지 : 손목/발목 (sub01-joint.php) */
    /* - - - - - 서브페이지 : 무릎 (sub01-knee.php) */
    /* - - - - - 서브페이지 : 백신/예방접종 (sub01-vaccine.php) */


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 02 비수술맞춤치료센터
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* - - - - - 서브페이지 : 도수물리치료 (sub02-.php) */
    /* - - - - - 서브페이지 : 재활치료 (sub02-.php) */
    /* - - - - - 서브페이지 : 재생주사치료 (sub02-.php) */


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 03 교정센터
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 새한 통증 진단 및 치료 */
    section.sub.repeat.paincare div.unit > div,
    section.sub.repeat.paincare div.unit > div:hover { aspect-ratio: 3 / 2; }
    section.sub.repeat.paincare div.unit > div h5 { font-size: 5vw; }

    /* 교정치료방법 (3개 그리드) */
    section.sub div.unit.correction-grid {
        grid-template-columns: 1fr;
        grid-gap: 40px;
        width: 80%;
        margin: 30px auto 0;
    }
    section.sub div.unit.correction-grid > div {
        display: flex;
        flex-direction: column;
        grid-gap: 1.5em;
        align-items: center;
        justify-content: center;
    }
    section.sub div.unit.correction-grid > div img { display:block; width:80%; margin:0 auto; }
    section.sub div.unit.correction-grid > div p {
        text-align: center;
    }


    /* - - - - - 서브페이지 : 척추측만증 (sub03-.php) */
    /* - - - - - 서브페이지 : 휜다리 (sub03-.php) */
    /* - - - - - 서브페이지 : 일자목/거북목 (sub03-.php) */
    /* - - - - - 서브페이지 : 골반비대칭 (sub03-.php) */
    /* - - - - - 서브페이지 : 평발(편평족) (sub03-.php) */
    /* - - - - - 서브페이지 : 턱관절 비대칭 (sub03-.php) */


    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUBPAGE : 04 영양수액
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* - - - - - 서브페이지 : 영양수액 (sub04-iv.php) */



}