.m { display:none; }
#mobile-menu,
#menu-btn { display: none; }


/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    MEDIA QUERY
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media (min-width: 1921px)  {
}

@media (min-width: 1081px) and (max-width: 1500px) {
    .inner { width:100%; }
}

/* mobile */
@media screen and (max-width: 1080px) {
    body { font-size:3.5vw; }
    .pc { display:none !important; }
    .m { display:block; }
    .inner { width: 100%; }
    section.sub { --inner: 90vw }

    header, footer,
    #section-wrapper { width:100vw; overflow-x:hidden; }

    header.header.upside .inner a.logo {
        background-position: left 15px center;
        aspect-ratio: 294 / 40;
        background-size: auto 50%;
    }
    header.downside { display:none !important; }
    header.header.subpage { background-color: #fff; border-bottom:1px solid #E7E6E5; }
    header.header.upside.subpage .inner a.logo { background-image: url(./img/logo-header.svg); }
    nav.gnb { display:none; }

    /* 메뉴 버튼  */
    #menu-btn {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 60px;
        aspect-ratio: 1 / 1;
        cursor: pointer;
        position: absolute;
        right: 0;
    }
    #menu-btn > div {
        display: flex;
        width: 25px;
        aspect-ratio: 1 / 0.75;
        flex-direction: column;
        align-items: flex-end;
        justify-content: space-between;
        transition: all ease 0.5s;
    }
    #menu-btn span {
        display: inline-block;
        width: inherit;
        height: 3px;
        border-radius: 3px;
        background-color: var(--secondary);
        transition: all ease 0.5s;
    }
    #menu-btn span:nth-child(even) { width: 80%; }

    #menu-btn.on span:nth-child(1) { opacity:0; transform:scaleX(0); transform-origin:right }
    #menu-btn.on span:nth-child(2) { transform:rotate(135deg) scaleX(1.0) translateX(-1px); }
    #menu-btn.on span:nth-child(3) { transform-origin:right; transform:rotate(45deg) scaleX(0.8) translateX(-3px); }


    /* 모바일메뉴 */
    #mobile-menu {
        display: block;
        visibility: hidden;
        position: fixed;
        top: 0;
        right: 0;
        opacity: 0;
        max-width: 100vw;
        width: 100vw;
        height: calc( 100% - 65px );
        top: 65px;
        z-index: 99;
        font-size: 1.0em;
        transition: all ease 0.4s;
        background-color: rgba(0, 0, 0,.3);
    }
    #mobile-menu.on {
        visibility: visible;
        opacity: 1;
        z-index: 99999;
    }


    #mobile-menu > .menu-area {
        width: 100vw;
        position: absolute;
        right: 0;
        display: flex;
        flex-direction: column;
        overscroll-behavior:none;
        background-color: #fff;
    }
    #mobile-menu > .menu-area div.title.m .grid.trio {
        width: inherit;
        border: 1px solid #EDEAE7;
        border-left: 0;
        border-right: 0;
        padding: 5vw 0;
    }
    #mobile-menu > .menu-area div.title.m .grid.trio > a {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        font-size: 3.5vw;
        grid-gap: 5px;
    }
    #mobile-menu > .menu-area div.title.m .grid.trio > a + a {
        border-left: 1px solid #F2E9DF;
    }
    #mobile-menu > .menu-area div.title.m .grid.trio > a img {
        height: 5vw;
    }


    #mobile-menu div.menu-main-menu-container {
        height: 100%;
        max-height: 80vh;
        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; }
    #mobile-menu ul.menu > li.menu-item > a {
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        font-size: 4vw;
        color: #4e4e4e;
        font-weight: 500;
        opacity: 1.0;
        padding: 1rem 1.5rem;
        border-bottom: 1px solid #EDEAE7;
    }
    #mobile-menu ul.menu li.menu-item-has-children > a::after {
        content: '';
        display: inline-block;
        width: 1em; height: 0.8em;
        margin-left: auto;
        background-repeat: no-repeat;
        background-size: 80% auto;
        background-position: center;
        background-image: url('./img/arrow-menutoggle.svg');
        transform: scale(-1, -1);
        filter: grayscale(1.0) brightness(1.2);
    }
    #mobile-menu ul.menu li.current-menu-item > a,
    #mobile-menu ul.menu li.menu-item-has-children.on > a {
        font-weight: 600;
        opacity: 1;
    }
    #mobile-menu ul.menu li.menu-item-has-children.on > a::after,
    #mobile-menu ul.menu li.menu-item-has-children.current-menu-item > a::after {
        transform: scale(1, 1);
        filter: grayscale(0);
    }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu {
        width: 100%;
        display: flex;
        flex-direction: column;
        height: fit-content;
        max-height: 0;
        overflow-y: hidden;
        transition: max-height linear 0.5s;
    }
    #mobile-menu ul.menu li.menu-item-has-children.on ul.sub-menu {
        max-height: 50vh;
        background-color: #F9F6F2;
        padding: 0.5em 0;
        border-bottom: 1px solid #EDEAE7;
    }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu li a {
        display: block;
        width: 100%;
        font-size: 3.75vw;
        padding: 0.35em 3em;
    }
    #mobile-menu ul.menu li.menu-item-has-children ul.sub-menu li.current-menu-item a {
        font-weight: 600;
        opacity: 1;
    }
    #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(--secondary); }



    #quickmenu {
        right: 15px;
        top: unset;
        bottom: 5vw;
        height: 100px;
    }
    #quickmenu > a {
        display: block;
        width: 40px;
        aspect-ratio: 1 / 1;
        background-color: var(--secondary);
        border-radius: 50%;
        color: #fff;
        box-shadow: 0 3px 10px rgba(0, 0, 0, .1);

        background-repeat: no-repeat;
        background-position: center;
        background-size: 100%;
        cursor: pointer;
    }
    #quickmenu > a.quick-blog,
    #quickmenu > a.quick-top { display: none; }




    /* footer */
    footer.footer * {
        font-size: 3.5vw;
        text-align: center;
    }
    footer.footer .inner {
        padding: 30px 0;
        grid-template-columns: 1fr;
        justify-content: center;
        align-items: center;
        grid-gap: 20px;
    }
    footer.footer .inner img {
        display: block;
        width: 30%;
        margin: 0 auto;
    }
    footer.footer .inner > div {
        grid-gap: 30px;
    }
    footer.footer .inner > div .info-p-wrap {
        display: grid;
        grid-gap: 10px;
    }
    footer.footer .inner > div .info-p-wrap p:first-child br.m { display:none; }
    footer.footer .inner > div .info-p-wrap br.m + b {
        margin-left: 0.5em;
    }
    footer.footer .inner > div .footer-menu ul.menu {
        justify-content: center;
    }
    footer.footer .copyright p {
        font-size: 2.8vw;
    }









    /* 푸터메뉴 */
    div.section-wrapper.footer .elementor-widget-container > p { padding: 0.3em 2em; line-height: 1.7; font-size: 0.86em; color:var(--dark); }
    .section-wrapper.footer table.table { margin:2em auto; }
    .section-wrapper.footer table.table tbody td { border: 1px dashed rgba(10, 10, 10, 0.1); }
    .section-wrapper.footer .table-wrapper table.table { margin:0 auto; }
    .section-wrapper.footer .table-wrapper table.table tr > * { padding: 0.35em 1.5em; }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        common elements
     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    section .inner { padding: 60px 0; }
    section div.title-zone p.eng.uppercase {
        font-size: 2.2vw;
    }
    section div.title-zone > div.title {
        margin-top: 1em;
        grid-gap: 0.5em;
    }
    section div.title-zone > div.title img { height:2em }
    section div.title-zone > div.title h3 {
        font-size: 6vw;
    }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE
     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

    section.main-visual {
        width: 100vw;
        height: unset;
        aspect-ratio: 9 / 16;
        overflow: hidden;
    }

    @keyframes float {
        0% { transform: translatey(-5px); }
        50% { transform: translatey(-15px); }
        100% { transform: translatey(-5px); }
    }

    section.main-visual .frame {
        /*  아치 프레임  */
        width: 100vw;
        height: 60vw;
        left: 50%;
        transform: translate(-50%, -50%);
        top: 64vw;

        background-size: 180vw;
        background-position: top center;

    }
    /* 배경 & 텍스트 */
    section.main-visual div.mvA {
        position: absolute;
        width: 100vw;
        height: 100%;
        overflow: hidden;
    }
    section.main-visual div.mvA div.txt {
        position: absolute;
        width: 80vw;
        left: 50%;
        transform: translateX(-50%);
        bottom: unset;
        top: 110vw;
    }
    section.main-visual div.mvA div.txt span.name {
        font-size: 2.5vw;
        text-align: center;
        margin-bottom: 1em;
    }
    section.main-visual div.mvA div.txt p.mv-msg {
        font-size: 5.5vw;
        line-height: 1.32;
        text-align: center
    }

    section.main-visual div.mvA .swiper-slide {
        background-position: center;
    }
    section.main-visual div.mvA .swiper-slide,
    section.main-visual div.mvA .swiper-slide .txt {
        opacity:0;
        visibility:hidden;
        transition: all ease 0.6s;
    }

    section.main-visual div.mvA .swiper-slide.swiper-slide-active .txt p.mv-msg {
         transform: translateY(10px); opacity:0;
         animation: mvText 0.5s ease-in-out 0.5s both;
     }
    @keyframes mvText {
        0% { transform: translateY(10px); opacity:0 }
        100% { transform: translateY(0); opacity:1 }
    }

    /* 써클이미지 */
    section.main-visual div.mvB {
        position: absolute;
        width: 60vw;
        aspect-ratio: 1 / 1;
    /*    border: 1px solid red;*/
        left: 50%;
        top: 38%;
        transform: translateX(-50%) translateY(-50%);
        z-index: 99;
    }
    section.main-visual div.mvB .swiper-slide {
        aspect-ratio: 1 / 1;
        border-radius: 50%;
        overflow: hidden;
        background-size: cover;
        border: 1px solid tan;
        position: relative;
        transition: opacity ease 0.5s;
    }
    section.main-visual div.mvB .swiper-slide.swiper-slide-active {
    }

    section.main-visual div.mvB .swiper-slide .circle {
        overflow: hidden;
        position: relative;
        top: 100%;
        height: 0;
        transition: all ease 1s;
        transition-delay: 0.5s;
    }
    section.main-visual div.mvB .swiper-slide.swiper-slide-active .circle {
        height: 100%;
        top: 0;
    }




    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
         서브페이지 공통요소
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    section .inner {
        padding: 60px 0;
    }
    section .title-zone { padding: 0 5vw }
    section .title-zone p.name { font-size: 2.25vw; }
    section .title-zone p.section-title {
        font-size: 5vw;
    }
    section .title-zone .p-wrap { padding: 0 5vw; }

    section .unit {
        margin: 30px auto 0;
    }
    section .unit.unit90 { width:90% }
    section .unit.unit80 { width:80% }
    section .unit.unit70 { width:80% }
    section .unit.unit60 { width:80% }
    section .unit.unit50 { width:80% }

    /* 유닛 다음 설명글 있는 경우 */
    section.sub > .inner .unit + .p-wrap {
        margin: 2em auto 0;
    }
    section.sub > .inner .unit + .p-wrap p { font-size:3.5vw; padding:0 5vw }


    /* 더보기 버튼 */
    section a.btn-moreview {
        font-size: 3.3vw;
        width: 13em;
        padding: 1em;
    }
    section a.btn-moreview::after { transform: scale(0.6); }


    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 메인클리닉
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.main-clinic .bentogrid {
        width: 85%;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: unset;
        grid-gap: 5px;
    }
    section.main-clinic .bentogrid > div,
    section.main-clinic .bentogrid > div:hover {
        border: unset;
        border-radius: 18px;
        box-shadow: unset;
    }
    section.main-clinic .bentogrid > div a {
        padding: 20px;
        justify-content: center;
        background-color: rgba(0, 0, 0, .2);
    }
    section.main-clinic .bentogrid > div a p {
        font-size: 4vw;
        line-height: 1.0;
        text-shadow: 0 2px 10px rgba(0,0,0,.25);
    }
    section.main-clinic .bentogrid > div a p span {
        display: block;
        font-size: 3vw;
        line-height: 1.4;
    }
    section.main-clinic .bentogrid > div:nth-child(1),
    section.main-clinic .bentogrid > div:nth-child(2),
    section.main-clinic .bentogrid > div:nth-child(3),
    section.main-clinic .bentogrid > div:nth-child(4),
    section.main-clinic .bentogrid > div:nth-child(5),
    section.main-clinic .bentogrid > div:nth-child(6) {
        grid-column: unset;
        grid-row: unset;
        aspect-ratio: 4 / 3;
    }
    section.main-clinic .bentogrid > div:hover a p { transform: unset; }
    section.main-clinic .bentogrid > div:hover { border-color: inherit; box-shadow: unset; }


    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 메인 암검진
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.main-cancer .img-txt {
        width: 90%;
        grid-gap: 3vw;
    }
    section .img-txt > div {
        grid-gap: 5px;
    }
    section.main-cancer .img-txt > div div.img {
        aspect-ratio: 1 / 1;
        width: 24vw;
        padding: 10%;
        background-position: top center;
    }
    section.main-cancer .img-txt > div p.txt-secondary {
        font-size: 4.5vw;
    }



    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 메인 치료 건수
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.main-counter .inner.wide { padding: 0; }
    section.main-counter div.case-wrap {
        position: relative;
        --height: 120vw;
    }
    section.main-counter div.case-wrap .case {
        width: 108vw;
        height: calc( var(--height) * 0.5 );
        position: static;
    }
    section.main-counter div.case-wrap .case > div[style] {
        position: static;
        width: 100vw;
        transform:skew(0);
    }
    section.main-counter div.case-wrap .case .txt,
    section.main-counter div.case-wrap .case.endoscope .txt,
    section.main-counter div.case-wrap .case.surgery .txt {
        width: 100%;
        margin: 0 auto;
        display: grid;
        grid-template-columns: auto 10em;
        align-items: center;
        justify-content: center;
    }
    section.main-counter div.case-wrap .case .txt p.subject {
        letter-spacing: -0.035em;
        font-weight: 700;
        font-size: 4.5vw;
    }
    section.main-counter div.case-wrap .case .txt p .num_action { font-size: 8vw; }
    section.main-counter div.case-wrap .case .txt p small { font-size: 3vw; }
    section.main-counter div.case-wrap .case .txt p:last-child { grid-column:1 / span 2; transform:translateY(-0.75em); }

    /* 내시경  */
    section.main-counter div.case-wrap .case.endoscope,
    section.main-counter div.case-wrap .case.endoscope.on {
        transform: skewX(0) translate(0, 0);
    }
    section.main-counter div.case-wrap .case.endoscope .txt {
        margin-left: 0;
        transform: translateY(-10vw);
    }
    section.main-counter div.case-wrap .case.endoscope > div[style],
    section.main-counter div.case-wrap .case.endoscope.on > div[style]{
        background-size: 160%;
        background-position: right bottom;
    }
    section.main-counter div.case-wrap .case.surgery > div[style],
    section.main-counter div.case-wrap .case.surgery.on > div[style]{
        background-size: 160%;
        background-position: top 10% center;
    }
    /* 절제술  */
    section.main-counter div.case-wrap .case.surgery,
    section.main-counter div.case-wrap .case.surgery.on {
        transform: skewX(0) translate(0, 0);
    }
    section.main-counter div.case-wrap .case.surgery .txt {
        margin-right: 0;
        transform: translateY(10vw);
    }
    section.main-counter div.counter-circle {
        background-color: #fff;
        width: 55vw;
        box-shadow: 0 0 10px rgba(255, 255, 255, .8);
        grid-gap: 10px;
        z-index: 2;
    }
    section.main-counter div.counter-circle .img { font-size: 3vw; }
    section.main-counter div.counter-circle .img img { width:50%; }
    section.main-counter div.counter-circle p { font-size: 3.3vw; }
    section.main-counter::after {
        content: '';
        display: block;
        width: 200vw;
        height: 3px;
        background-color: #fff;
        position: absolute;
        top: 50%;
    }




    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 메인 진료철학
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.main-think { margin-top: 80px; }
    section.main-think .unit.think-thm {
        grid-gap: 20px;
    }
    section.main-think .unit.think-thm > button {
        width: 70px;
        box-shadow: 0 2px 15px rgba(190, 186, 174, .4);
    }
    section.main-think .unit.think-thm > button img { width:70%; }
    /*  */
    section.main-think .think-swiper {
        margin: 30px auto 0;
    }
    section.main-think .think-swiper .control {
        width: 120px;
        grid-gap: 10px;
        padding: 10px 15px;
        border-radius: 100px;
        box-shadow: none;
        bottom: -30px;
        left: 50%;
        transform: translateX( -50% );
    }
    /**/
    section.main-think .think-swiper .swiper-slide {
        padding: 8vw;
        border-radius: 30px;
        aspect-ratio: 5 / 4;
        overflow: hidden;
        justify-content: center;
    }
    section.main-think .think-swiper .swiper-slide.m-position {
        background-position: right center;
    }

    section.main-think .think-swiper .swiper-slide::before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        left: 0;
        bottom: 0;
        position: absolute;
        z-index: 1;
        background-color: rgba(20,20,20,.5);
    }
    section.main-think .think-swiper .swiper-slide .txt {
        position: relative;
        z-index: 1;
    }
    section.main-think .think-swiper .swiper-slide .txt p {
        font-size: 3.5vw;
        text-align: center;
    }
    section.main-think .think-swiper .swiper-slide .txt p.subject {
        font-size: 4vw;
        margin-bottom: 0.5em;
    }




    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 메인 의료진
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.main-doctor {
        --inner : 100vw
    }
    section.main-doctor .title-wrap {
        width: 90%;
        margin: 50px auto 40px;
        grid-template-columns: 60px auto;
        align-items: center;
        justify-content: center;
        grid-gap: 20px;
    }
    section.main-doctor .title-wrap > div .flex {
        grid-gap: 1.5em;
        align-items: flex-start;
    }
    section.main-doctor .title-wrap > div .flex img { height: 2em }
    section.main-doctor .title-wrap > div .flex p.label { font-size: 3.5vw; }
    section.main-doctor .title-wrap > div p.txt-left {
        padding: 1em 5vw 0 0;
        font-size: 3.5vw;
    }
    /**/
    section.main-doctor .orange-zone {
        position: relative;
        margin-top: 0;

        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-content: center;

        background-image: none;
    }
    section.main-doctor .orange-zone::after {
        width: 100vw;
        height: 60%;
        top: unset;
        left: 50%;
        bottom: 0;
        transform: translate(-50%, 0);
    }
    section.main-doctor .orange-zone > div.img {
        order: 1;
        width: 60%;
        margin: 0 auto;
        box-shadow: none;
    }
    section.main-doctor .orange-zone > div.txt { order: 2; }
    section.main-doctor .orange-zone > div.txt div.deco p.deco { display:none; }
    section.main-doctor .orange-zone > div.txt div.content { padding: 10vw 8vw 15vw; }
    section.main-doctor .orange-zone > div.txt p { text-align:center; }
    section.main-doctor .orange-zone > div.txt div.content p.doctor-name { font-size: 5vw; }
    section.main-doctor .orange-zone > div.txt div.content p.doctor-name b { font-size: 6vw; }
    section.main-doctor .orange-zone > div.txt div.content div.p-wrap {  font-size: 4vw; }
    section.main-doctor .orange-zone a.btn-moreview {
        font-size: 3.3vw;
        width: 13em;
        padding: 1em;
        margin: 0 auto;
    }


    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 둘러보기 (공통요소)
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.interior {
        max-width: 100vw;
    }
    section.interior .slide-box {
        margin: 30px auto 0;
        padding-bottom: 90px;
    }
    section.interior .swiper-slide {
        box-shadow: 0 10px 20px -5px rgba(100, 100, 100, 0.35);
    }
    section.interior .swiper-slide.swiper-slide-active {
        transform: scale(0.9);
    }
    section.interior .slide-box div.control {
        width: 90vw;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    section.interior .slide-box div.control > div {
        display: grid;
        grid-template-columns: 1fr 3fr 1fr;
    }
    section.interior .slide-box div.control > div > a {
        aspect-ratio: 2 / 1;
        background-size: 90%;
    }



    /* - - - - - - - - - - - - - - - - - - - - - -
        MAIN PAGE : 오시는길 (공통요소)
    - - - - - - - - - - - - - - - - - - - - - -  */
    section.locate .unit {
        grid-template-columns: 1fr;
    }
    section.locate .unit > #map {
        aspect-ratio: 2 / 1;
        order: 1;
    }
    section.locate .unit > .info-zone {
        order: 2;
        grid-gap: 2em;
        padding: 12vw 8vw;
    }
    section.locate .unit > .info-zone > p.subject {
        text-align: center;
        font-size: 6vw;
    }
    section.locate .unit > .info-zone > div > p.unit-title {
        font-size: 5vw;
        line-height: 1.2;
        text-align: center;
    }
    section.locate .unit > .info-zone > div > p.unit-title .number {
       font-size: 6vw;
    }
    section.locate .timetable {
        padding: 10px 5px;
        width: fit-content;
        margin: 0 auto;
    }
    section.locate .timetable th,
    section.locate .timetable td {
        text-align: justify;
        line-height: 0.5;
        font-size: 4vw;
    }
    section.locate .timetable table th {
        font-weight: 500;
        padding-right: 2em;
    }
    section.locate .timetable table td {
        letter-spacing: 0.07em;
    }
    section.locate .unit > .info-zone > div > .info-time-wrap p.txt-red {
        font-size: 3.5vw;
        text-align: center;
    }

    section.locate .unit > .info-zone > div.links {
        justify-content: center;
        grid-gap: 10px;
        margin-top: 20px;
    }
    section.locate .unit > .info-zone > div.links a {
        width: 15em;
        font-size: 1em;
    }








    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUB TEMPLATE LAYOUT
     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 서브 헤더 */
    section.sub-header > .inner { padding: 50px 0; }
    section.sub-header .page-title-eng { font-size: 2.25vw; }
    section.sub-header .page-title { font-size: 6vw; }

    /* 서브페이지 타이틀 (공통) */
    section.sub .title-zone { padding: 0  }
    section.sub .title-zone p.title {
        font-size: 5.25vw;
        margin: 1em 0;
    }
    section.sub .title-zone p.title i { font-weight: 400; }
    section.sub .title-zone .p-wrap { margin: 0 auto; }
    section.sub .title-zone .p-wrap p { font-size: 3.5vw; }


    /* 서브페이지 인트로 */
    section.sub.intro > .inner {
        padding: 30px 0;
    }
    section.sub div.sub-intro {
        width: 100%;
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
    section.sub div.sub-intro div.img {
        width: 80%;
        border-radius: 20px;
        box-shadow: 0 2px 10px -5px rgba(100, 100, 100, 0.5);
        margin: 0 auto;
    }
    section.sub div.sub-intro .title-zone p { text-align:center; }



    /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        SUB PAGE
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
    /* 공통요소 */
    /* 슬로건 repeat-slogan */
    section.sub.repeat-slogan {
        background-image:url(./img/repeat-slogan-bg-m.jpg);
    }
    section.sub.repeat-slogan .inner {
        padding: 50px 0 ;
    }
    section.sub.repeat-slogan .unit {
        display: flex;
        flex-direction: column;
        justify-content: center;
        grid-gap: 10px;
    }
    section.sub.repeat-slogan .unit > img {
        width: 30%;
        order: 1;
    }
    section.sub.repeat-slogan .title-zone { order:2 }
    section.sub.repeat-slogan .title-zone p { text-align: center; }
    section.sub.repeat-slogan .title-zone p.name {
        font-size: 2.5vw;
        letter-spacing: 0.2em;
        color: var(--secondary);
        color: rgba(255,132,64, .8);
    }
    section.sub.repeat-slogan .title-zone p.title img {
        display: inline-block;
        height: 4.6vw;
    }
    section.sub.repeat-slogan .title-zone .p-wrap p { font-size:3.5vw }

    /* 초음파 검사 방법 */
    section.repeat-howto.ultrasound > .inner {
        padding: 40px 0 60px;
    }
    section.repeat-howto.ultrasound .unit.howto-ultrasound {
        margin: 0 auto;
        width: 90%;
        flex-direction: column;
        grid-gap: 10px;
    }
    section.repeat-howto.ultrasound .unit.howto-ultrasound .howto > div {
        padding: 5vw;
        grid-template-columns: 3em auto;
        grid-gap: 1em;

    }
    section.repeat-howto.ultrasound .unit.howto-ultrasound .howto > div .before {
        width: 2.75em;
        border: 4px solid #FFE4D5;
        box-shadow: 0 0 0 3px #fff;
    }
    section.repeat-howto.ultrasound .unit.howto-ultrasound .howto > div + div {
        border-top: 1px dashed #aaa;
    }
    section.repeat-howto.ultrasound .unit.howto-ultrasound .howto > div p {
        font-size: 3.5vw;
        padding-right: 0;
    }


    /* 장비 repeat-equip-endoscopy, ultrasound */
    section.sub.repeat-equip .unit.equip-rainbow {
        grid-gap: 30px;
    }
    section.sub.repeat-equip .unit.equip-rainbow > img { width: 60%; }
    section.sub.repeat-equip .unit.equip-rainbow .p-wrap p.subject {
        font-size: 4.5vw; line-height: 1.3;
        padding: 0 10vw;
    }
    section.sub.repeat-equip .unit.equip-rainbow .p-wrap p.subject + p { font-size:3.5vw; }
    section.sub.repeat-equip .unit.equip-grid {
        width: 90%;
        margin: 30px auto 0;
        grid-template-columns: 1fr;
    }
    section.sub.repeat-equip .unit.equip-grid > div {
        display: grid;
        grid-template-columns: 1fr 2.5fr;
        align-items: center;
        grid-gap: 0.5em;
        padding: 2em 5vw;
    }
    section.sub.repeat-equip .unit.equip-grid > div > img {
        width: 60%;
        grid-row: 1 / span 2;
    }
    section.sub.repeat-equip .unit.equip-grid > div + div {
        border-left: 0;
        border-top: 1px solid #c4c4c4;
    }
    section.sub.repeat-equip .unit.equip-grid > div p.subject {
        font-size: 4vw;
        text-align: left;
    }
    section.sub.repeat-equip .unit.equip-grid > div p.subject + p {
        font-size: 3.5vw;
        text-align: left;
    }


    /* 검진/검사 주의사항 repeat-caution checkup, endoscopy */
    section.sub.repeat-caution {}
    section.sub.repeat-caution > .inner {
        padding: 40px 0;
    }
    section.sub.repeat-caution .title-zone p.title {
        line-height: 1.0;
    }
    section.sub.repeat-caution .title-zone p.title img {
        width: 50px;
        display: block;
    }
    section.sub.repeat-caution .unit {
        width: 100%;
        border-radius: 30px;
        padding: 8vw 8vw 3vw;
    }
    section.sub.repeat-caution .unit .caution-grid {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        justify-content: flex-start;
        padding: 0 0 8vw;
    }
    section.sub.repeat-caution .unit .caution-grid + .caution-grid {
        border-top: 1px solid #ebebeb;
        padding-top: 8vw;
    }

    section.sub.repeat-caution .unit div.subject { grid-gap: 0.5em; }
    section.sub.repeat-caution .unit div.subject img { width: 5em; }
    section.sub.repeat-caution .unit div.subject img + p { font-size: 4.25vw; }

    section.sub.repeat-caution .unit ul.dot { width: 100%; margin-top: 1em}
    section.sub.repeat-caution .unit ul.dot li {
        font-size: 3.5vw;
    }
    section.sub.repeat-caution .unit ul.dot li p small {
        font-size: 3vw;
    }

    /* 시스템 repeat-system endoscopy, ultrasound, iv, internal */
    section.sub.repeat-system {
/*        background-size: 270vw;*/
/*        background-position: right 30% top;*/

        background-image: url('./img/repeat-system-bg-m.png');
    }
    section.sub.repeat-system .title-zone {
        margin-bottom: 40px;
    }



    /* 서브페이지 : 의료진소개 (sub00-doctor.php) */
    section.sub-doctor .orange-zone {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 10px;
        align-items: center;
        justify-content: center;
    }
    section.sub-doctor .orange-zone > div.img {
        width: 70%;
        box-shadow: 0 2px 15px rgba(0, 0, 0, .2);
        margin: 0 auto;
    }
    section.sub-doctor .orange-zone > div.txt {
        width: 100%;
        display: grid;
        grid-gap: 0;
        align-items: flex-start;
    }

    section.sub-doctor .orange-zone > div.txt > .p-wrap {
        order: 1;
        margin: 30px auto 20px;
    }
    section.sub-doctor .orange-zone > div.txt > .p-wrap p { text-align:center; }
    section.sub-doctor .orange-zone > div.txt > .p-wrap p.txt-primary { font-size: 4vw; }
    section.sub-doctor .orange-zone > div.txt > .p-wrap p.name { font-size: 6vw; }
    section.sub-doctor .orange-zone > div.txt > .p-wrap p.name-eng { font-size: 3vw; }
    section.sub-doctor .orange-zone > div.txt > p.doctor-slogan {
        font-size: 4.25vw;
        text-align: center;
        order: 2;
        margin: 0 auto 30px;
    }
    section.sub-doctor .orange-zone > div.txt > .grid.half {
        grid-template-columns: 1fr;
        grid-gap: 20px;
        width: fit-content;
        margin: 0 auto 50px;
        order: 3;
    }
    section.sub-doctor .orange-zone > div.txt > .grid.half p { font-size: 4vw }
    section.sub-doctor .orange-zone > div.txt > .grid.half ul li { font-size:3.5vw }

    section.sub-doctor + .main-counter + section.repeat-slogan {
        margin-top: 60px;
    }



    /* 서브페이지 : 둘러보기 (sub00-preview.php) */
    section.door-open > .inner {
        padding: 30px 0;
    }
    section.door-open div.door {
        width: 85%;
    }
    section.door-open div.door p {
        width: 70vw;
        font-size: 4vw;
    }
    section.door-open div.door::before,
    section.door-open div.door::after {
        width: 10px;
        height: 60px;
        border: 8px solid var(--primary);
    }
    section.door-open div.door::before { border-right: 0; }
    section.door-open div.door::after { border-left:0 }


    section.sub .unit.equipments,
    section.sub.equip .unit.equipments {
        width: 90%;
        grid-template-columns: 1fr 1fr;
        grid-gap: 10px;
    }
    section.sub .unit.equipments > div {
        border-radius: 10px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, .1);
    }
    section.sub .unit.equipments > div .img {
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        aspect-ratio: 1 / 0.9;
    }
    section.sub .unit.equipments > div .bg-primary p {
        font-size: 4vw;
    }
    section.sub.equip .unit.equipments > div .bg-primary p {
        font-size: 3.0vw;
    }



    /* 서브페이지 : 국가예방접종 (sub05-vaccine.php) */
    section.sub.vaccine-tab {
        margin: 50px 0;
    }
    section.sub.vaccine-tab > .inner {
        padding: 40px 0;
    }

    section.sub.vaccine-tab .tabs {
/*        display: grid;*/
/*        grid-template-columns: repeat(3, 1fr);*/
/*        grid-gap: 0;*/
        width: 75vw;
        margin: 0 auto 30px;
        padding: 6px;
        border-radius: 20px;
        grid-gap: 5px;
    }
    section.sub.vaccine-tab .tabs .tab-button {
        padding: 0.25em 0.75em 0.2em;
        font-size: 3.5vw;
        border-radius: 3em;
    }
    section.sub.vaccine-tab .swiper-slide { padding: 10px; }
    section.sub.vaccine-tab .swiper-slide article {
        padding: 0;
        box-shadow: none;
        border-radius: 0;
        border: 0;
    }
    section.sub.vaccine-tab article .vaccine-about {
        grid-template-columns: 1fr;
        grid-gap: 15px;
        width: 100%;
    }
    section.sub.vaccine-tab article .vaccine-about div.img {
        border-radius: 12px;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt {
        grid-gap: 10px;
        width: 96%;
        margin: 0 auto;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt p.name {
        font-size: 4.25vw;
        text-align: center;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt p.name + p {
        font-size: 3.3vw;
        text-align: center;
        line-height: 1.5;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt p.name + p + p {
        font-size: 3.5vw;
        text-align: justify;
        text-align-last: center;
        word-break: break-all;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt div.hashtag { margin-top: 10px }
    section.sub.vaccine-tab article .vaccine-about div.txt div.hashtag p.subject {
        font-size: 4vw;
        text-align: center;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt div.hashtag .tab-wrap {
        justify-content: center;
        grid-gap: 0.25em;
    }
    section.sub.vaccine-tab article .vaccine-about div.txt div.hashtag .tab-wrap p {
        padding: 0.2em 0.8em;
        font-size: 3.25vw;
    }
/**/
    section.sub.vaccine-tab article .vaccine-info {
        width: 96%;
        margin: 50px auto 20px;
    }
    section.sub.vaccine-tab article .vaccine-info > p.title {
        font-size: 4vw;
        justify-content: center;
        text-indent: 0;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half {
        grid-template-columns: 1fr;
        grid-gap: 15px;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half > div {
        display: grid;
        grid-template-columns: 1fr 2fr;
        align-items: center;
        grid-gap: 15px;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half > div > div {
        border-radius: 1em;
        font-size: 3.5vw;
        font-weight: 600;
        height: 100%;
        min-height: unset;
        padding: 0.75em;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half > div > ul.dot {
        padding: 1em 0;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half > div > ul.dot li {
        font-size: 3.3vw;
        line-height: 1.5;
        grid-template-columns: 0.75em auto;
    }
    section.sub.vaccine-tab article .vaccine-info > .grid.half > div > ul.dot li p small { font-size:0.9em }


    /* 서브페이지 : 국가건강검진 (sub01-national.php) */
    /* 공통요소 검진 테이블  */
    section.sub.checkup .unit.checkup-wrap {
        width: 96%;
        margin: 30px auto;
    }
    section.sub.checkup .unit.checkup-wrap > div {
        border-width: 2px;
        grid-template-columns: 1fr;
        border-left: 0;
    }
    section.sub.checkup .unit.checkup-wrap > div + div {
        margin-top: 15px;
    }
    section.sub.checkup .unit.checkup-wrap > div div {
        font-size: 3.5vw;
        padding: 3vw;
    }
    section.sub.checkup .unit.checkup-wrap > div div.th {
        font-size: 3.5vw;
        padding: 0.75em;
    }
    section.sub.checkup .unit.checkup-wrap.personal > div div.th {
        /*  개인종합검진 높이 맞추기  */
        padding: 0.75em;
    }
    section.sub.checkup .unit.checkup-wrap > div div p.subject {
        font-size: 3.8vw;
    }
    section.sub.checkup .unit.checkup-wrap > div div p { text-align: center; }
    section.sub.checkup .unit.checkup-wrap.personal > div div p {
        /*  개인종합검진 */
        text-align: justify;
        word-break: break-all;
    }
    section.sub.checkup .fullimg.personal { width:90% }


    /* 서브페이지 : 3대암검진 (sub01-cancer.php) */
    section.sub .unit.cancer-trio {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
    section.sub .unit.cancer-trio > div { width:36vw }
    section.sub .unit.cancer-trio > div .img {
        background-position: top center;
        aspect-ratio: 5 / 4;
    }
    section.sub .unit.equipments > div .bg-primary {
        padding: 0.25em;
    }


    /* 아이콘 탭 */
    section.cancer-tab .unit.cancer-thm {
        grid-gap: 20px;
    }
    section.cancer-tab .unit.cancer-thm > button {
        width: 70px;
        box-shadow: 0 2px 15px rgba(190, 186, 174, .4);
    }
    section.cancer-tab .unit.cancer-thm > button img { width:80%; }

    section.cancer-tab .msg-box {
        border: 2px solid var(--secondary);
        padding: 8vw;
        border-radius: 5em;
        background-size: auto 80%;
        width: 90%;
    }
    /*  */
    section.cancer-tab {
        width: 100vw;
        overflow: hidden;
    }
    section.cancer-tab .cancer-swiper {
        margin: 0 auto;
    }
    section.cancer-tab .cancer-swiper .control {
        width: 90px;
        grid-gap: 5px;
        padding: 8px;
        border-radius: 100px;
        top: 36vw;
        left: 70%;
        transform: translateX(0);
        box-shadow: 0 2px 10px rgba(0, 0, 0, .1);
    }
    section.cancer-tab .cancer-swiper .control > div {
        box-shadow: none;
    }
    /**/
    section.cancer-tab > .inner {
        padding: 30px 0 60px;
    }
    section.cancer-tab .swiper-slide {
        max-width: 100vw;
        overflow: hidden;
    }
    section.cancer-tab .swiper-slide div.cancer-img {
        height: unset;
        width: 80%;
        margin: 30px auto;
        border-radius: 15px;
        box-shadow: 0 3px 15px rgba(0, 0, 0, .1);
    }
    section.cancer-tab .swiper-slide div.cancer-info {
        width: 100%;
        margin: 0 auto;
    }
    section.cancer-tab .swiper-slide div.cancer-info > p.subject {
        font-weight: 700;
        font-size: 6vw;
    }
    section.cancer-tab .swiper-slide div.cancer-info .cancer-grid-table {
        grid-template-columns: 1fr;
        grid-gap: 24px;
        width: 90%;
        margin: 20px auto;
    }
    section.cancer-tab .swiper-slide div.cancer-info .cancer-grid-table > div {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 5px;
        align-items: center;
        justify-content: center;
    }
    section.cancer-tab .swiper-slide div.cancer-info .cancer-grid-table > div p.th {
        height: auto;
        padding: 0.6em;
        font-size: 4vw;
    }
    section.cancer-tab .swiper-slide div.cancer-info .cancer-grid-table > div p.th + p {
        font-size: 3.5vw;
        text-align: justify;
        word-break: break-all;
        text-align-last: center;
        padding: 1em 5vw;
    }



    /* 서브페이지 : 소화기질환 (sub04-digestive.php) */
    /* 원형 라벨 공통요소 */
    section.sub .unit.graphic-circles {
        grid-template-columns: 1fr;
        grid-gap: 30px;
        width: 90%;
    }
    section.sub .unit.graphic-circles .img {
        text-align: center;
        padding: 0 10vw;
    }
    section.sub .unit.graphic-circles .circles {
        grid-gap: 10px;
    }
    section.sub .unit.graphic-circles .circles p {
        width: 30vw;
        font-size: 3.75vw;
        box-shadow: 0px 2px 6px rgba(100, 100, 100, 0.2);
    }

    /* 예방법 */
    section.sub.internal.prevent > .inner {
        padding: 30px 0 100px;
    }
    section.sub.internal div.unit.prevent-box .prevent-list {
        width: 100%;
        grid-template-columns: 1fr;
        grid-gap: 10px;
    }
    section.sub.internal div.unit.prevent-box .prevent-list div {
        font-size: 3.5vw;
    }






    /* 서브페이지 : 고혈압 (sub04-hypertension.php) */
    /* 고혈압 진단기준 */
    section.sub .table-wrapper table.internal {
        max-width: 120vw;
        min-width: 117vw;
    }
    section.sub .table-wrapper table.internal tr > * {
        padding: 0.5em 1em;
        border-bottom: 1px solid #eee;
        font-size: 3.5vw;
    }
    section.sub .table-wrapper table.internal.hypertension tr > * {
        /* 고혈압 진단기준  */
        min-width: unset;
    }

    /* 고혈압 전조증상
    이미지, 라벨리스트: !공통 */
    section.sub .unit.img-title-list {
        grid-template-columns: 1fr;
    }
    section.sub .unit.img-title-list .title-list { order:1 }
    section.sub .unit.img-title-list > img { order:2 }
    section.sub .unit.img-title-list .title-zone.hypertension  {
        width: 100%;
        grid-template-columns: 3em auto;
        margin-bottom: 2em;
    }
    section.sub .unit.img-title-list .label-list {
        width: 100%;
        margin: 0 auto 30px;
        grid-gap: 10px;
    }
    section.sub .unit.img-title-list .label-list p {
        padding: 0.6em 1em;
        line-height: 1.5;
        font-size: 3.5vw;
        border: 2px solid #ededed;
    }


    /* 서브페이지 : 당뇨 (sub04-diabetes.php) */
    /* 공통 */
    section.sub .unit.img-txt-half {
        grid-gap: 20px;
        width: 86%;
    }
    section.sub .unit.img-txt-half > img {
        display: block;
        margin: 0 auto;
        width: 90%;
    }
    section.sub .unit.img-txt-half div.txt-half {
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
    section.sub .unit.img-txt-half div.txt-half > div {
        border-radius: 30px;
        padding: 30px;
    }
    section.sub .unit.img-txt-half div.txt-half > div p.subject {
        font-size: 4.5vw;
        margin-bottom: 0.6em;
    }
    section.sub .unit.img-txt-half div.txt-half > div p.subject + p {
        font-size: 3.5vw;
    }
    section.sub .unit.img-txt-half div.txt-half > div .tag-wrap {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        grid-gap: 0.5em;
        margin-top: 20px;
    }
    section.sub .unit.img-txt-half div.txt-half > div .tag-wrap p {
        font-size: 3.3vw;
    }
    section.sub .unit.img-txt-half div.txt-half > div .tag-wrap p::before {
        content: '#';
        color: #FFB900;
        font-weight: 500;
        margin-right: 0.10em;
    }
    /*  당뇨합병증  */
    section.sub .unit.fullimg.diabetes-compli { width:90% }

    /* 당뇨의심 */
    section.sub.tail > .inner { padding:0 0 120px }
    section.sub.tail > .inner > p.arrow {
        font-size: 4vw;
        line-height: 1.36;
    }
    section.sub .unit.diabetes-doubt {
        width: 90%;
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 8px;
    }
    section.sub .unit.diabetes-doubt > div {
        border-radius: 20px;
        padding: 5vw 8vw;
        box-shadow: 0 6px 30px -10px rgba(100, 100, 100, 0.3);
    }
    section.sub .unit.diabetes-doubt > div p {
        font-size: 3.5vw;
    }
    section.sub .unit.diabetes-doubt > div p.txt-secondary {
        font-size: 3.7vw;
        margin-bottom: 0.5em;
    }




    /* 서브페이지 : 고지혈증 (sub04-hyperlipidemia.php) */
    section.sub .unit.crstr-table {
        width: 100vw;
    }
    section.sub .unit.crstr-table div {
        padding: 0.65em ;
        line-height: 1.35;
        font-size: 3.3vw;
    }
    section.sub .unit.crstr-table div img {
        width: 100%;
    }


    /* 서브페이지 : 간질환 종류 (sub04-liver.php) */
    section.sub .unit.liver-type {
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
    section.sub .unit.liver-type > div {
        border-radius: 20px;
    }
    section.sub .unit.liver-type > div p.subject {
        font-size: 4vw;
    }
    section.sub .unit.liver-type > div .p-wrap {
        padding: 8vw;
        aspect-ratio: unset;
        display: block;
    }
    section.sub .unit.liver-type > div .p-wrap p {
        font-size: 3.5vw;
    }


    /* 주의메시지 내과 */
    section.sub.caution.internal {
        padding: 60px 8vw 50px;
        margin: 80px auto 100px;
    }
    section.sub.caution.internal p.caution {
        font-size: 4.5vw;
        line-height: 1.5;
    }
    section.sub.caution.internal p.caution::before {
        width: 60px;
    }



    /* 서브페이지 : 골밀도검사 (sub04-bone.php) */
    /* 골밀도 검사는 왜 필요할까요/ */
    section.sub.internal.bmd {}
    section.sub.internal.bmd .fullimg {
        margin: 40px auto 0;
    }
    section.sub.internal.bmd .p-wrap.m {
        padding: 8vw 5vw;
    }
    section.sub.internal.bmd .p-wrap.m p {
        text-align: center;
    }

    /* 골밀도 검사대상 */
    section.sub.internal .unit.img-title-list.bmd {
        grid-gap: 30px;
        background-image: none;
    }
    section.sub.internal .unit.img-title-list.bmd > img {
        width: 40%;
        display: block;
        margin: 0 auto;
    }
    section.sub.internal .unit.img-title-list.bmd .title-zone p { text-align: center; }
    section.sub.internal .unit.img-title-list.bmd .dot-list::before{
        left: 4px;
        height: 90%;
    }
    section.sub.internal .unit.img-title-list.bmd .dot-list {
        margin-top: 30px;
    }
    section.sub.internal .unit.img-title-list.bmd .dot-list p {
        font-size: 3.5vw;
        grid-template-columns: 1.75em auto;
        align-items: flex-start;
    }
    section.sub.internal .unit.img-title-list.bmd .dot-list p::before {
        width: 9px;
        margin-top: 6px;
    }


    /* 서브페이지 : 금연클리닉 (sub04-smoking.php) */
    /* 금연클리닉 프로그램 */
    section.sub.internal .unit.smoking-program {
        grid-gap: 30px;
    }
    section.sub.internal .unit.smoking-program > div {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
    section.sub.internal .unit.smoking-program img {
        width: 80%;
        display: block;
        margin: 0 auto;
    }
    section.sub.internal .unit.smoking-program p.subject {
        font-size: 4vw;
        text-align: center;
        margin-bottom: 0.35em;
    }
    section.sub.internal .unit.smoking-program ul.dot {
        margin: 0 auto;
        width: fit-content;
        max-width: 90%;
    }
    section.sub.internal .unit.smoking-program ul.dot li {
        font-size: 3.5vw;
    }
    section.sub.internal .unit.smoking-program ul.dot li + li {
        margin-top: 10px;
    }

    /* 금연클리닉 지원절차 */
    section.sub.internal .unit.smoking-step {
        flex-wrap: wrap;
        margin: 80px auto 40px;
    }
    section.sub.internal .unit.smoking-step > div {
        box-shadow: 0 -5px 40px -10px rgba(0, 0, 0, .1);
        width: 90%;
        aspect-ratio: 1 / 1;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        grid-gap: 10px;
        margin-top: -6vw;
        margin-left: 0;
    }
    section.sub.internal .unit.smoking-step > div p {
        text-align: center;
    }
    section.sub.internal .unit.smoking-step > div p.subject {
        font-size: 4vw;
    }
    section.sub.internal .unit.smoking-step > div p.subject + p {
        font-size: 3.5vw;
    }
    section.sub.internal .unit.smoking-step > div .before {
        font-size: 4vw;
        border: 3px solid var(--point);
        top: 0;
    }


    /* 서브페이지 : 비만클리닉 (sub04-obesity.php) */
    /* 허리둘레 */
    section.sub.internal.obesity .unit.img img {
        width: 40%;
    }
    section.sub .unit.crstr-table.obesity-table {
        margin-top: 10px;
        grid-template-columns: repeat(4, 1fr);
    }






    /* 검진 탭 */
     section.sub.checkup.tabtable {
        --inner: 100vw;
     }
     section.sub.checkup.tabtable .tabs {
        grid-gap: 6px;
        width: 80%;
        margin: 30px auto 30px;
    }
    section.sub.checkup.tabtable .tab-button {
        padding: 0.75em;
        font-size: 3.5vw;
    }
    section.sub.checkup.tabtable p.tab-title {
        font-size: 4.5vw;
    }
    section.sub.checkup.tabtable .swiper-slide {
        padding: 10px 0;
    }
    section.sub.checkup.tabtable table.internal {
        min-width: 90vw;
        max-width: 120vw;
        margin: 0 5vw;
    }
    section.sub.checkup.tabtable table.internal tr > * {
        font-size: 3.1vw;
        line-height: 1.6;
    }
    section.sub.checkup.tabtable table.internal tr th { line-height:1.3 }
     section.sub.checkup.tabtable table.internal tbody td span.txt-secondary {
        font-weight: 600;
        font-size: 1.3em;
        line-height: 0;
     }



    /* 서브페이지 : 수액 종류 (sub05-nutrition.php) */
    section.sub .unit.swag-type {
        width: 100%;
        grid-gap: 15px 10px;
        align-items: stretch;
    }
    section.sub .unit.swag-type > div {
        width: 41vw;
        border-radius: 15px;
        border-width: 1px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, .1);
    }
    section.sub .unit.swag-type > div .txt {
        padding: 1em;
    }
    section.sub .unit.swag-type > div:nth-child(1) .txt div.subject,
    section.sub .unit.swag-type > div:nth-child(2) .txt div.subject,
    section.sub .unit.swag-type > div:nth-child(3) .txt div.subject,
    section.sub .unit.swag-type > div:nth-child(4) .txt div.subject,
    section.sub .unit.swag-type > div:nth-child(7) .txt div.subject{
        height: 2em;
    }
    section.sub .unit.swag-type > div:nth-child(5) .txt div.subject,
    section.sub .unit.swag-type > div:nth-child(6) .txt div.subject {
        height: 3em;
    }
    section.sub .unit.swag-type > div .txt div.subject p {
        font-size: 4vw;
    }
    section.sub .unit.swag-type > div .p-wrap {
        height: unset;
        margin-top: 0.5em;
    }
    section.sub .unit.swag-type > div .p-wrap p {
        font-size: 3.3vw;
        line-height: 1.5;
    }




    /* 탭컨텐츠 내부임을 표시 (추후삭제)
    section.sub.tab-slide .swiper-slide { border: 1px solid magenta; position:relative; }
    section.sub.tab-slide .swiper-slide::after { content:'탭 내부 영역'; display:block; background-color:rgba(255,0,255,.15); color:magenta; padding: 1em; position:absolute; z-index:1; top:0; left:5vw; height:100%; border: 1px solid magenta; border-top:0; border-bottom:0 }*/
    section.sub.tab-slide .swiper-slide { border: 0; }
    section.sub.tab-slide .swiper-slide::after { display: none;}

}