/*
Theme Name: 속시원탑내과
Author: Jeymedi
Author URI: http://jeymedidesign.dothome.co.kr
Description: 속시원탑내과 웹사이트 테마
Version: 1.0.0
*/

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    LAYOUT
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

body { overflow-x:hidden; }
.inner {
    max-width: var(--inner);
    margin: 0 auto;
    position: relative;
}
.inner.wide {
    max-width: 100vw;
    padding-bottom: 0;
}

/* quickmenu */
#quickmenu {
    --width: 100px;
    display: block;
    width: var(--width);
    position: fixed;
    z-index: 998;
    right: 3vh;
    bottom: calc(50% - 400px);
    transform: scale(0.88);
    transition: bottom ease 0.5s;
}
#quickmenu.on {
    bottom: 3vh;
}


#quickmenu::before {
    content: '';
    width: 100%;
    display: block;
    aspect-ratio: 1 / 1;
    background-image: url('./img/quickmenu-before.png');
    background-size: cover;
    background-color: #6DF4D6;
    overflow: hidden;
    border-radius: 50%;
    box-shadow: 0 5px 15px rgba(114, 124, 187, .15);
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
#quickmenu.on::before {
    margin: 0 auto -20px;
}
#quickmenu .wrap {
    background-color: #fff;
    border-radius: 10em;
    overflow: hidden;
    position: relative;
    padding-top: 40px;
    padding-bottom: var(--width);
    margin: 1em auto 0;
    transition: all ease 0.6s;
    box-shadow: 0 10px 15px rgba(114, 124, 187, .2);
}
#quickmenu.on .wrap  {
    background-color: transparent;
    padding: 0;
    box-shadow: 0 10px 15px rgba(114, 124, 187, 0);
}
#quickmenu .wrap .flex.col {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 8px;
    overflow: hidden;
    max-height: 60vh;
    visibility: visible;
    opacity: 1;
    transition: max-height ease 0.6s;
}
#quickmenu.on .wrap .flex.col {
    max-height: var(--width);
    visibility: hidden;
    opacity: 0;
}
#quickmenu .wrap .flex.col a.link {
    text-align: center;
    font-size: 0.95em;
    font-weight: 500;
}
#quickmenu .wrap .flex.col a.link img {
    display: block;
    width: 3em;
    margin: 0 auto;
}

#quickmenu .wrap a.quick-toggle {
    display: block;
    cursor: pointer;
    background-color: #E2E2E2;
    width: 66%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    position: absolute;
    bottom: 13px;
    left: 18%;
    background-size: 35%;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(./img/quick-toggle.svg);
    transform: rotate(0);
    transform-origin: center;
    transition: all ease 0.6s;
}
#quickmenu.on .wrap a.quick-toggle {
    transform: rotate(-135deg);
}




/* header */
header.header {
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 99;
    --on : #7fffe2;
}
header.header > .logo-floor {
    z-index: 3;
    background-color: rgba(255, 255, 255, .8);
    backdrop-filter: blur(20px);
    transition: all ease-in-out 0.3s;
}
header.header:hover > .logo-floor {
    background-color: rgba(255, 255, 255, 1);
}
header.header > .logo-floor .inner {
    width: var(--inner);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
    height: 9em;
    transition: height ease 0.3s;
}
header.header > .logo-floor a.logo {
    max-width: 25em;
    padding: 1.5em 3em 0.5em 0;
    transition: all ease 0.3s;
}



header.header > .logo-floor a.tel {
    position: absolute;
    right: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    border: 3px solid #2191ff;
    background-color: #fff;
    grid-gap: 0.5em;
    border-radius: 5em;
    font-size: 1.4em;
    padding: 0.25em 1.2em;
    transition: all ease 0.3s;
}
header.header > .logo-floor a.tel span {
    font-weight: 800;
    color: var(--secondary);
}
header.header > .logo-floor a.tel span.number {
    font-size: 1em;
    color: var(--dark);
    font-weight: 600;
}


header.header.on > .logo-floor .inner { height: 6em; }
header.header.on > .logo-floor a.logo { max-width: 18em; padding: 1.0em 3em 0.5em 0; }
header.header.on > .logo-floor a.tel { font-size: 1.3em; }


header.header > .gnb-floor {
    position: relative;
    z-index: 3;
    background-color: var(--primary);
    overflow: hidden;
}
header.header > .gnb-floor ul.sub-menu { display:none; }
header.header ul.menu {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
}
header.header ul.menu > li {
    display: grid;
    justify-content: center;
    width: 12em;
    position: relative;
}
/*header.header .gnb-floor ul.menu > li + li::before {
    content: '';
    display: block;
    width: 1px;
    height: 1em;
    position: absolute;
    left: -1px;
    top: calc(50% - 0.5em);
    border-left: 1px solid rgba(0, 0, 0, .5);
}*/

header.header ul.menu > li:nth-child(5),
header.header ul.menu > li:nth-child(6) { width: 14em; }


header.header > .gnb-floor ul.menu > li > a {
    display: block;
    position: relative;
}
header.header > .gnb-floor ul.menu > li > a::after {
    content: '';
    display: grid;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 100%;
    transition: all ease 0.3s;
    color: var(--on);
    background-color: var(--primary);
}
header.header > .gnb-floor ul.menu > li:nth-child(1) > a::after { content: '병원소개'; }
header.header > .gnb-floor ul.menu > li:nth-child(2) > a::after { content: '건강검진센터'; }
header.header > .gnb-floor ul.menu > li:nth-child(3) > a::after { content: '내시경검사'; }
header.header > .gnb-floor ul.menu > li:nth-child(4) > a::after { content: '영상검사'; }
header.header > .gnb-floor ul.menu > li:nth-child(5) > a::after { content: '내과질환클리닉'; }
header.header > .gnb-floor ul.menu > li:nth-child(6) > a::after { content: '예방접종/영양수액'; }

header.header > .gnb-floor ul.menu > li.on > a::after,
header.header > .gnb-floor ul.menu > li:hover > a::after { top: 0; }


header.header > .gnb-floor ul.menu a {
    padding: 1.25em 0;
    color: #fff;
    font-size: 1.25em;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
}
header.header.on > .gnb-floor ul.menu a { padding: 1.2em 0; }


header.header > .gnb-floor ul.menu li.current-menu-parent a {
    color: var(--on);
}

header.header .sub-floor {
    position: relative;
    z-index: -1;
    background-color: #fff;
    background-color: #fbfcfe;
    border-bottom: 1px solid #e4edf9;
    overflow: hidden;
    visibility: hidden;
    width: 100vw;
    transform: translateY(-300px);
    transition: all ease-in-out 0.5s;
    box-shadow: 0 5px 60px -10px rgba(40, 77, 182, .12);
}
header.header .sub-floor.on { visibility: visible; }

header.header .sub-floor ul.menu > li.menu-item-has-children > a { display:none; }
header.header .sub-floor ul.sub-menu {
    width: inherit;
    background-color: #fff;
    border-right: 1px dotted #e4edf9;
    padding: 10px;
}
header.header .sub-floor ul.menu > li:first-child ul.sub-menu { border-left:1px solid #e4edf9 }
header.header .sub-floor ul.menu > li:last-child ul.sub-menu { border-right: 1px solid #e4edf9; }


header.header .sub-floor ul.sub-menu li {}
/*header.header .sub-floor ul.sub-menu li:first-child { padding-top:1em }*/
/*header.header .sub-floor ul.sub-menu li:last-child { padding-bottom:1.5em }*/

header.header .sub-floor ul.sub-menu li a {
    display: block;
    text-align: center;
    padding: 0.25em;
    color: #444;
    border-radius: 5px;
    font-size: 1.05em;
    font-family: var(--p);
}
header.header .sub-floor ul.sub-menu li a:hover {
    color: #264dd9;
    background-color: #eff4fb;
}
header.header .sub-floor ul.sub-menu li.current-menu-item a {
    color: var(--primary);
    font-weight: 700;
    background-color: #eff4fb;
}


/* 푸터 */
footer.footer {
    background-color: #1C2050;
}
footer.footer * { color : rgba(255, 255, 255, .8);}
footer.footer .inner {
    padding: 100px 0 80px;
    font-size: 15px;
}
footer.footer .inner > .flex,
footer.footer .inner > p.copyright { padding:0 10px }
footer.footer img.logo { width:240px }
footer.footer div.divider { width:100%; height:1px; border-bottom:1px solid rgba(255, 255, 255, .5); margin:50px auto  }

footer.footer .p-wrap {
    margin-top: 2em;
}
footer.footer .p-wrap p + p { margin-top: 0.5em; }
footer.footer .p-wrap p b { color:#fff }
footer.footer .p-wrap p span { margin-left:0.25em }
footer.footer .p-wrap p span + b { margin-left:1em }

footer.footer .right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
footer.footer .sns {
    display: flex;
    grid-gap: 1em;
    margin-bottom: 2em;
}
footer.footer .sns a img {
    width: 3em;
}
footer.footer .sns a {
    display: flex;
    border-radius: 10px;
    overflow: hidden;
    transition: all ease 0.4s;
    box-shadow: 0 0 10px rgba(255, 255, 255, .0) ;
}
footer.footer .sns a:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 10px -3px rgba(255, 255, 255, .3) ;
}

footer.footer .footer-menu ul.menu {
    display: flex;
    flex-direction: row;
    align-items: center;
}
footer.footer .footer-menu ul.menu > li {
    padding: 0 1.25em;
}

footer.footer .footer-menu ul.menu > li:last-child {
    padding-right: 0;
}
footer.footer .footer-menu ul.menu > li + li {
    border-left: 2px solid rgba(255, 255, 255, .3);
}
footer.footer .footer-menu ul.menu > li a:hover {
    color: #fff;
}
footer.footer .inner > p.copyright {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 300;
    color: rgba(255, 255, 255, .5);
}




/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    common elements
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
section .inner {
    padding: 160px 0;
}
section div.title-zone {}
section div.title-zone p.eng.uppercase {
    color: var(--secondary);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    text-align: center;
    font-weight: 500;
    font-size: 13px;
}
section div.title-zone > div.title {
    margin-top: 1em;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    grid-gap: 1em;
}
section div.title-zone > div.title img { height:4em }
section div.title-zone > div.title h3 {
    font-size: 3.3em;
    font-weight: 400;
    letter-spacing: -0.05em;
}
section div.title-zone > div.title h3 b {
    color: var(--primary);
    font-weight: 800;
    letter-spacing: -0.025em;
}
section div.title-zone > div.title h3 b span {
    color: var(--secondary);
}












/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    MAIN PAGE
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* main-visual */
section.main-visual {
    margin-top: 10vh;
    position: relative;
}
section.main-visual .swiper-slide {
    width: 100vw; height: 100vh;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100%;
    background-attachment: fixed;
    background-color: #f8f8f5;
}
section.main-visual .swiper-slide.mv1 { background-image:url('./img/mv1.jpg') }
section.main-visual .swiper-slide.mv2 { background-image:url('./img/mv2.jpg') }
section.main-visual .swiper-slide.mv3 { background-image:url('./img/mv3.jpg') }

section.main-visual .inner {
    width: 75vw;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 100%;
}
section.main-visual .mv1 .inner {
    align-items: flex-end;
}

section.main-visual div.txt {
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-gap: 30px;
}
section.main-visual div.txt > p.eng.uppercase {
    text-transform: uppercase;
    letter-spacing: 0.15em;
    text-align: center;
    font-weight: 500;
    font-size: 13px;
}
section.main-visual div.txt > p.title {
    font-weight: 700;
    font-size: 3.1vw;
    line-height: 1.3;
}
section.main-visual div.txt > p.title span { color:var(--secondary); }
section.main-visual div.txt > p.title small {
    font-weight: 600;
    font-family: var(--p);
    font-size: 0.5em;
}
section.main-visual div.txt > p b.red { color: #f84949; }
section.main-visual div.txt > p.subtitle {
    font-size: 1.2vw;
    margin-top: 1.25em;
}
section.main-visual div.txt > p.img img {
    width: 10vw;
    margin-left: 1vw;
}



section.main-visual .swiper-slide.swiper-slide-active div.txt p {
    animation-name: welcomeText;
    animation-duration: 1s;
    animation-fill-mode: both;
    filter: opacity(0);
    transform: translateX(2em);
}
@keyframes welcomeText {
    0% { transform: translateX(2em); filter: opacity(0); }
    100% {transform: translateX(0); filter: opacity(1); }
}
section.main-visual .swiper-slide.swiper-slide-active div.txt p.eng { animation-delay:0.5s }
section.main-visual .swiper-slide.swiper-slide-active div.txt p.title { animation-delay:0.8s }
section.main-visual .swiper-slide.swiper-slide-active div.txt p.subtitle { animation-delay:1.1s }
section.main-visual .swiper-slide.swiper-slide-active div.txt p.img { animation-delay:1.2s }

section.main-visual .swiper-pagination {
    bottom: 10vh;
}
section.main-visual .swiper-pagination .swiper-pagination-bullet {
    width: 4vw;
    height: 100%;
    border-radius: 0;
    opacity: 0.5;
    background-color: transparent;
    color: rgba(50, 60, 90, .5);
    border-bottom: 3px solid rgba(50, 60, 90, .5);
    transition: all ease 0.5s;
}
section.main-visual .swiper-pagination .swiper-pagination-bullet::before {
    font-size: 12px;
    letter-spacing: 0.05em;
}
section.main-visual .swiper-pagination .swiper-pagination-bullet:nth-child(1)::before { content: '01'; }
section.main-visual .swiper-pagination .swiper-pagination-bullet:nth-child(2)::before { content: '02'; }
section.main-visual .swiper-pagination .swiper-pagination-bullet:nth-child(3)::before { content: '03'; }

section.main-visual .swiper-pagination .swiper-pagination-bullet span { bottom:0 }

section.main-visual .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
}




/* 메인클리닉 */
section.main-clinic {}
section.main-clinic div.clinic-grid {
    width: 86%;
    margin: 50px auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 15px;
}
section.main-clinic div.clinic-grid > a {
    display: flex;
    background-color: #e4edf9;
    border-radius: 25px;
    overflow: hidden;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border: 1px solid rgba(255, 255, 255, .5);
    transition: all ease 0.4s;
}
section.main-clinic div.clinic-grid > a:hover {
/*    transform: translateY(-10px);*/
    box-shadow: 0 0 25px -5px rgba(40, 77, 182, .3);
}

section.main-clinic div.clinic-grid > a > .overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0;
    transition: all ease 0.3s;
    border-radius: inherit;
    box-shadow: 0 0 30px rgba(40, 77, 182, 0) inset;
}
section.main-clinic div.clinic-grid > a:hover > .overlay {
    opacity: 1;
    background-color: rgba(255, 255, 255, .2);
    box-shadow: 0 0 35px rgba(40, 77, 182, .2) inset;
}

section.main-clinic div.clinic-grid > a > .text {
    position: relative;
    z-index: 1;
    padding: 45px;
    width: 100%;
}
section.main-clinic div.clinic-grid > a > .text span.arrow {
    width: 2em;
    aspect-ratio: 1 / 1;
    display: block;
    margin: 0 0 80px auto;
    background-repeat: no-repeat;
    background-size: 90%;
    background-position: center;
    background-image: url('./img/arrow-main-clinic.svg');
}
section.main-clinic div.clinic-grid > a > .text p { color:var(--navy); padding-left:10px }
section.main-clinic div.clinic-grid > a > .text p.eng.uppercase {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.15em;
}
section.main-clinic div.clinic-grid > a > .text p.subject {
    font-size: 2em;
    font-weight: 700;
    letter-spacing: 0.1em;
}

/*effect 3*/
section.main-clinic div.clinic-grid.effect > a {
    background-size: 110%;
    box-shadow: none;
}
section.main-clinic div.clinic-grid.effect > a:hover {
    background-size: 120%;
}
section.main-clinic div.clinic-grid.effect > a > .overlay {
    box-shadow: none;
    background-color: var(--secondary);
}
section.main-clinic div.clinic-grid.effect > a:hover > .overlay {
    opacity: 0.5;
}
section.main-clinic div.clinic-grid.effect > a:hover > .text p { transition:all ease 0.3s }
section.main-clinic div.clinic-grid.effect > a:hover > .text p { color:#fff }
section.main-clinic div.clinic-grid.effect > a:hover > .text span.arrow {
/*    background-image: url('./img/arrow-main-clinic-mint.svg');*/
}





/* 메인의료진 */
section.main-doctor {}
section.main-doctor .doctor-grid {
    width: 70%;
    margin: 40px auto;
    padding: 60px 0;
    background-image: url('./img/main-doctor-temp.png');
    background-repeat: no-repeat;
    background-position: right top;
/*    background-size: auto 110%;*/
    background-size: 60%;
    background-position:  right top 10%;
}
section.main-doctor .doctor-grid .doctor-name {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    grid-gap: 0.5em;
    font-size: 2.2em;
    margin-bottom: 0.5em;
}
section.main-doctor .doctor-grid .doctor-name b {
    font-size: 1.2em;
}
section.main-doctor .doctor-grid .doctor-name small {
    font-weight: 500;
}
section.main-doctor .doctor-grid .doctor-name small::before {
    content: '|';
    margin-right: 0.75em;
}
section.main-doctor .doctor-grid .label-gradient {
    background: linear-gradient(90deg, #1F31EB 0%, #128AFF 100% );
    border-radius: 3em;
    color: #FCFF03;
    padding: 0.3em 2em;
    width: fit-content;
    font-size: 1.3em;
    font-weight: 500;
}
section.main-doctor .doctor-grid ul.career { font-size:1.2em; margin: 2em 0}
section.main-doctor .doctor-grid ul.career li {
    color: var(--navy);
    line-height: 1.5;
    margin-bottom: 0.25em;
}
section.main-doctor .doctor-grid ul.career li::before {
    content: '\00B7';
    font-weight: 800;
    margin-right: 0.25em;
    color: var(--primary);
}
section a.btn-moreview {
    display: block;
    width: fit-content;
    border-radius: 4em;
    color: var(--secondary);
    background-color: #E4F0FF;
    font-weight: 600;
    padding: 0.5em 2em;
    font-size: 1.3em;
    margin: 1em 0;
    transition: all ease 0.3s;
}
section a.btn-moreview:hover {
    background-color: var(--secondary);
    color: #fff;
}

section a.btn-moreview i {
    display: inline-block;
    width: 0.75em;
    height: 0.75em;
    margin-left: 1em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url('./img/arrow-more-secondary.svg');
}
section a.btn-moreview:hover i {
    transition: all ease 0.3s;
    background-image: url('./img/arrow-more-fff.svg');
}
/* 자세히보기 민트 */
section a.btn-moreview.mint {
    color: var(--navy);
    background-color: #6df4d6;
}
section a.btn-moreview.mint:hover {
    background-color: var(--navy);
    color: #6df4d6;
}
section a.btn-moreview.mint i {
    background-image: url('./img/arrow-more-navy.svg');
}
section a.btn-moreview.mint:hover i {
    background-image: url('./img/arrow-more-mint.svg');
}




/* 메인5대암 */
section.main-fivecancer {}
section.main-fivecancer .inner.half {
    padding: 80px 0;
    grid-template-columns: 1fr 1.4fr;
}
section.main-fivecancer .inner.half div.blank {
    background-image: url('./img/main-fivecancer.png');
    background-repeat: no-repeat;
    background-position: center;
}
section.main-fivecancer .inner.half div.text {
    display: flex;
    flex-direction: column;
    align-items: center;
}
section.main-fivecancer .inner.half .title-zone img { height: 70px }
section.main-fivecancer .inner.half .title-zone .title h3 {
    font-weight: 500;
}
section.main-fivecancer .inner.half .title-zone .title h3 b {
    color: inherit;
}
section.main-fivecancer .inner.half .title-zone .title h3 b span {
    color: #f84140;
}
section.main-fivecancer .inner.half .title-zone + p.txt-center {
    font-size: 1.2em;
    margin: 1em auto 2em;
}
section.main-fivecancer .inner.half .icon-text-wrap {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 1em;
    margin-bottom: 1em;
}
section.main-fivecancer .inner.half .icon-text-wrap p {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-weight: 600;
    grid-gap: 0.25em;
}

/* 메인특별함 */
section.main-special {}
section.main-special div.label-group.pluslist {
    display: grid;
    grid-gap: 1em;
}
section.main-special div.label-group.pluslist > p {
    background-color: #fff;
    border-radius: 3em;
    font-size: 1em;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
    position: relative;
    padding: 1em 3em;
    font-size: 1.2em;
    text-align: center;
}
section.main-special div.label-group.pluslist > p::before {
    content: '+';
    display: block;
    background-color: var(--secondary);
    color: #fff;
    width: 1.3em; height: 1.3em;
    line-height: 1.4;
    font-size: 1.5em;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    left: -0.35em;
    top: 0.55em;
}
section.main-special .inner > p.txt-center {
    font-size: 1.2em;
}
section.main-special div.flex.row {
    margin: 60px auto ;
    grid-gap: 60px;
    background-repeat: no-repeat;
    background-position: right bottom;
    background-image: url('./img/symbol-op09.svg');
}



/* 메인의료장비  */
section.main-equip {}
section.main-equip a.btn-moreview.mint {
    margin: 2em 0 0;
}
section.main-equip div.title-zone > div.title h3 {
    line-height: 1.3;
}
section.main-equip .inner.grid {
    display: grid;
    grid-template-columns: 1fr 2fr;
    align-items: stretch;
    grid-gap: 0;
    margin: 0 0 0 5vw;
    padding: 0;
}
section.main-equip .inner.grid .txt-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4em 0;
}
section.main-equip .inner.grid .txt-box .p-wrap {
    margin-top: 3em;
}
section.main-equip .inner.grid .txt-box .p-wrap p {
    color: var(--navy);
    text-align: center;
}


section.main-equip .inner.grid .slide-box {
    margin: 7em 0;
    overflow: hidden;
}
section.main-equip .inner.grid .slide-box .swiper-wrapper {
    padding: 2em;
}
section.main-equip .inner.grid .slide-box .equip-slide {
    padding-bottom: 1em;
    padding-right: 20vw;
}

section.main-equip .inner.grid .slide-box .swiper-slide .img {
    aspect-ratio: 3 / 4;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    background-color: #F5F5F5;
    border-radius: 1em;
    margin-bottom: 1em;
    border: 2px solid #fff;
    transition: all ease 0.3s;
}
section.main-equip .inner.grid .slide-box .swiper-slide.swiper-slide-active .img {
    border-color: var(--secondary);
}

section.main-equip .inner.grid .slide-box .swiper-slide h4 {
    padding: 0 1em;
    font-size: 1.3em;
    text-transform: uppercase;
    letter-spacing: 0;
    font-weight: 600;
    display: flex;
    flex-direction: column;
}
section.main-equip .inner.grid .slide-box .swiper-slide h4 span {
    font-size: 0.8em;
    font-weight: 400;
    color: inherit;
}

section.main-equip .inner.grid .slide-box .swiper-scrollbar {
    background-color: rgba(114, 124, 187, .15);
    width: 80%;
}
section.main-equip .inner.grid .slide-box .swiper-scrollbar-drag {
    background-color: var(--navy);
}



/* 메인둘러보기 */
section.preview {
    position: relative;
}

/* 전체 스와이퍼 wrapper */
section.preview div.preview-swiper-zone {
    max-width: 100vw;
    width: 70%; /* 너비 */
    margin: 60px auto 0;
    overflow: hidden;
}

/* 각 개별 슬라이드(공통) */
section.preview .swiper-slide {
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-size: contain;
    background-position: center;
    border-radius: 40px;
    overflow: hidden;
}

/* 썸네일 슬라이드  */
section.preview .preview-thumbs {
    margin-top: 30px;
    width: 80%;
    margin: 30px  auto 0;
    overflow: hidden;
}
section.preview .preview-thumbs .swiper-slide {
    border-radius: 10px;
    cursor: pointer;
    filter: opacity(0.6);
    transition: filter ease 0.3s;
}
section.preview .preview-thumbs .swiper-slide.swiper-slide-thumb-active {
    filter: opacity(1);
}

/*  버튼스타일링 (공통) */
section.preview .swiper-button-prev,
section.preview .swiper-button-next {
    aspect-ratio: 1 / 1;
    width: 60px; height: unset;
    font-size: 0;
    background-color: rgba(10, 30, 50, 0.5);
    top: 53%;
}
/*  버튼 기본 < > 제거    */
section.preview .swiper-button-prev::after,
section.preview .swiper-button-next::after { color:#fff; font-size: 1vw }

/*  버튼 위치 지정 / 부모(position:relative)를 어디 기준으로 했는지에 따라 다름 */
section.preview .swiper-button-prev { left: 15% }
section.preview .swiper-button-next { right: 15% }


/* 서브 둘러보기 */
section.preview.sub .inner { padding: 50px 0 110px }
section.preview.sub .swiper-button-prev,
section.preview.sub .swiper-button-next { top: 45% }











/* 메인 오시는길 */
section.main-locate {}
section.main-locate .map-zone {
    position: relative;
    margin: 60px auto 0;
    width: 90%;
}
section.main-locate .map-zone #map {
    border: 1px solid #ddd;
    background-color: #fafafa;
    aspect-ratio: 5 / 2;
    border-radius: 40px;
}
section.main-locate .map-zone #map::after {
    content: '지도영역';
    color: #ccc;
    font-size: 2em;
    font-weight: 600;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

section.main-locate .map-zone .address-label {
    position: absolute;
    z-index: 2;
    display: block;
    width: calc(100% - 40px);
    bottom: 20px;
    left: 20px;
    border-radius: 5em;
    background-color: #6df4d6;
    padding: 0.75em 0 ;
    box-shadow: 0 -2px 5px rgba(0, 30, 100, .1) inset;
}
section.main-locate .map-zone .address-label p {
    font-weight: 700;
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 0.75em;
    font-family: var(--p);
    font-size: 1.35em;
    letter-spacing: -0.035em;
}
section.main-locate .map-zone .address-label p img {
    height: 1.25em;
}


/**/
section.main-locate .grid.info-zone {
    width: 85%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 60px;
    align-items: stretch;
}
section.main-locate .grid.info-zone .left,
section.main-locate .grid.info-zone .right {
    display: grid;
    grid-template-columns: 1fr 3fr;
}

section.main-locate .grid.info-zone.parking .left,
section.main-locate .grid.info-zone.parking .right {
    display: block;
}

section.main-locate .grid.info-zone strong,
section.main-locate .grid.info-zone div.info > .grid strong {
    color: var(--dark);
    font-family: var(--pl);
    font-size: 1.6rem;
    font-weight: 800;
    letter-spacing: 0;
}
/* table */
section.main-locate .grid.info-zone table.timetable {
    width: 400px;
}
section.main-locate .grid.info-zone table.timetable * {
/*    letter-spacing: 0;*/
    font-family: var(--pl);
    color: var(--dark);
    font-weight: 500;
    font-size: 1.1rem;
    letter-spacing: -0.1em;
}
section.main-locate .grid.info-zone table.timetable td {
    height: 2rem;
}
section.main-locate .grid.info-zone table.timetable th {
    width: 6em;
    padding-right: 2em;
    font-weight: 600;
    color: var(--navy);
}
section.main-locate .grid.info-zone table.timetable tr::before {
    content: '\00b7';
    display: inline-block;
    margin-inline: 0.2em;
    color: var(--navy);
}
section.main-locate .grid.info-zone div.time table.timetable .txt-caution {
    color: #f73454;
    margin-top: 1.5em;
    letter-spacing: 0.05em;
}

section.main-locate .grid.info-zone div.time table.timetable tr:nth-child(4)::before,
section.main-locate .grid.info-zone div.time table.timetable tr:last-child::before { color:#fff }
section.main-locate .grid.info-zone table.timetable td {
    letter-spacing: 0.05em;
}
section.main-locate .grid.info-zone table.timetable td.number {
    font-weight: 800;
    font-size: 1.6em;
    letter-spacing: 0.05em;
}
section.main-locate .grid.info-zone table.timetable td.number span {
    font-weight: 800;
    font-size: 1.2em;
    color: var(--secondary);
    letter-spacing: 0;
    padding-right: 0.1em;
}
section.main-locate .roughmap-adrs,
section.main-locate .grid.info-zone div.info > .adrs {
    background-color: var(--secondary);
    padding: 25px 60px;
    border-radius: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 0;
}
section.main-locate .roughmap-adrs img,
section.main-locate .grid.info-zone div.info > .adrs img {
    height: 2.5em;
}
section.main-locate .roughmap-adrs strong,
section.main-locate .grid.info-zone div.info > .adrs strong {
    font-weight: 800;
    font-size: 2em;
    letter-spacing: 0;
    line-height: 1.3;
    color: var(--dark);
}





section.main-locate .btn-zone.trio {
    grid-column: 1 / span 2;
    align-items: flex-start;
}
section.main-locate .btn-zone {
    margin: 0;
    grid-gap: 10px;
}
section.main-locate .btn-zone a {
    padding: 0.4em;
    font-size: 1.0em;
    font-weight: 500;
    text-align: center;
}
section.main-locate .btn-zone.trio a { color:#fff; border-radius:3em; display:flex; flex-direction:row; align-items:center; transition:all ease 0.2s }

section.main-locate .btn-zone.trio  a.navermap { background-color:#03CF5D; }
section.main-locate .btn-zone.trio  a.navermap:hover { background-color:#03B25D; }

section.main-locate .btn-zone.trio  a.kakaomap { background-color:#FFCC00; }
section.main-locate .btn-zone.trio  a.kakaomap:hover { background-color:#FFB812; }

section.main-locate .btn-zone.trio  a.tmap { background-color:#2A62AD; }
section.main-locate .btn-zone.trio  a.tmap:hover { background-color:#00449D; }


section.main-locate .btn-zone a::before {
    content: '';
    display: block;
    background-color: #fff;
    border-radius: 5em;
    width: 2.5em;
    height: 2.5em;
    margin-right: 1em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 1.2em;
}
section.main-locate .btn-zone.trio a.navermap::before { background-image:url('./img/btn-icon-navermap.png') }
section.main-locate .btn-zone.trio a.kakaomap::before { background-image:url('./img/btn-icon-kakaomap.png') }
section.main-locate .btn-zone.trio a.tmap::before { background-image:url('./img/btn-icon-tmap.png'); background-size: 1.6em; }


section.main-locate .grid.info-zone.parking .left img {
    display:block;
    width: 60%;
    margin: 80px 80px 0 auto;
}

/* 서브 오시는길(지도) */
section.main-locate.sub .inner { padding:40px 0 100px }





/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SUB TEMPLATE LAYOUT
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

/* 서브 헤더 */
section.sub-header {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    background-color: #C0BFCD;
    background-color: #b6b5c6;
    background-image: url('./img/sub-header-sub00.png');
}
section.sub-header > .inner {
    padding: 100px 0 80px;
}
section.sub-header .page-title-eng {
    color: #fff;
    display: block;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    font-size: 0.9em;
    text-align: center;
    margin-bottom: 0.5em;
}
section.sub-header .page-title {
    color: #fff;
    text-align: center;
    font-size: 3em;
    letter-spacing: 0.025em;
    font-weight: 600;
}


/* 인트로 섹션 제목 */

/* 섹션 제목 */
section.sub .title-zone > *,
section.sub .title-zone > .p-wrap p {
    display: block;
    text-align: center;
    margin: 0 auto;
}
section.sub .title-zone .section-title-eng {
    color: var(--secondary);
    letter-spacing: 0.25em;
    font-weight: 500;
    margin-bottom: 1em;
}

section.sub .title-zone .section-title {
    font-size: 2.8em;
    line-height: 1.3;
}

section.sub .title-zone .section-title span { color:#003789 }


section.sub .tab-intro .title-zone .section-title-eng,
section.sub.sub-intro .title-zone .section-title-eng { color: var(--primary); }

section.sub .tab-intro .title-zone .section-title,
section.sub.sub-intro .title-zone .section-title { font-size:3.3em }

section.sub .tab-intro .title-zone div.p-wrap,
section.sub.sub-intro .title-zone div.p-wrap { width:70%; margin:0 auto; }

section.sub .tab-intro .title-zone div.p-wrap p,
section.sub.sub-intro .title-zone div.p-wrap p { color: var(--navy);}

section.sub .tab-intro .title-zone div.p-wrap::before,
section.sub.sub-intro .title-zone div.p-wrap::before {
    content: '';
    display: block;
    width: 3em;
    height: 2px;
    margin: 2em auto;
    background-color: var(--primary);
}



section.sub p {
    font-size: 1.2em;
    letter-spacing: 0;
    font-weight: 400;
    line-height: 1.8;
}
section.sub p.handwrite {
    font-size: 1.5em;
    letter-spacing: 0.01em;
    line-height: 1.3;
}



/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    SUB PAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

/**/
section.sub .inner > .p-wrap p.txt-center { font-size:1em }

/* /about/doctor/ : 의료진소개 */
section.sub .p-wrap.doctor {
    position: relative;
    width: fit-content;
    margin: 80px auto;
}
section.sub .p-wrap.doctor p.handwrite {
    --secondary : #00b1e4;
    font-size: 2em;
}
section.sub .p-wrap.doctor::before,
section.sub .p-wrap.doctor::after {
    content: '';
    position: absolute;
    display: block;
    width: 1.5em;
    aspect-ratio: 1 / 1;
    background-repeat: no-repeat;
    background-size: 60%;
    background-position: center;
}
section.sub .p-wrap.doctor::before {
    background-image: url('./img/apostrophe-start.svg');
    left:-1em; top:0
}
section.sub .p-wrap.doctor::after {
    background-image: url('./img/apostrophe-end.svg');
    right:-2em; top:50%
}
section.main-doctor.sub > .inner { padding-top:0 }

section.main-doctor.sub .doctor-grid .label-gradient {
    background: none;
    border-radius: 0;
    color: var(--secondary);
    padding: 0;
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: 2em;
}
section.sub.doctor.photo .grid.trio {
    width: 90%;
    grid-gap: 15px;
    margin: 0 auto;
}
section.sub.doctor.photo .grid.trio > div {
    aspect-ratio: 1 / 0.8;
    background-color: #e2e7ed;
}
section.main-doctor.sub .doctor-grid p.career-label {
    width: 8em;
    text-align: center;
    padding: 0.15em;
    border-radius: 1em;
    background-color: var(--primary);
    color: #fff;
    font-weight: 500;
    font-size: 1.0em;
}
section.main-doctor.sub .doctor-grid ul.career {
    margin: 1em 0 2em;
}
section.main-doctor.sub .doctor-grid ul.career li img {
    max-height: 2em;
    transform: translateY(0.35em) translateX(0.35em);
}


/* /about/guide/ : 진료 안내 */
section.sub-intro .flex.row.guide {
    margin: 70px auto 0;
    grid-gap: 40px;
}
section.sub-intro .flex.row.guide p.subject {
    font-weight: 700;
    font-size: 1.8em;
    margin-bottom: 0.25em;
}
section.sub-intro .flex.row.guide p.subject + p {
    font-weight: 500;
    line-height: 1.6;
}

/* 진료안내 그리드 */
section.sub.guide { margin-top:-80px }
section.sub.guide > .inner { padding:100px 0 }
section.sub.guide div.guide-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-start;
    width: 65%;
    margin: 0 auto;
/*    border: 1px solid red;*/
}
section.sub.guide div.guide-grid .img {
    aspect-ratio: 16 / 9;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
}
section.sub.guide div.guide-grid .txt {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding-top: 20px;
}
section.sub.guide div.guide-grid .txt > .number {
    width: 25%;
/*    border: 1px dashed lime;*/
    color: #164fc6;
    font-weight: lighter;
    font-size: 3em;
    text-align: center;
}
section.sub.guide div.guide-grid .txt > .number::before {
    content: '';
    display: block;
    width: 2em;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
/*    border: 1px dashed red;*/
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url(./img/sub-guide-subject-circle.png);
}

section.sub.guide div.guide-grid .txt > .list {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 75%;
    padding: 30px;
}
section.sub.guide div.guide-grid .txt > .number + .list {
    align-items: flex-start;
}

section.sub.guide div.guide-grid .txt p.subject {
    font-size: 2em;
    margin-bottom: 0.25em;
}
section.sub.guide div.guide-grid .txt p.subject b {
    color: #0081ff;

}

section.sub.guide div.guide-grid .txt .p-wrap p {
    font-size: 0.9em;
}
section.sub.guide div.guide-grid .txt .p-wrap p::before {
    content: '\00b7';
    margin-right: 5px;
}
section.sub.guide div.guide-grid .txt .p-wrap.double {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
}


/* /about/soksiwontop/ : 속시원탑내과 */
section.sub.soksiwon {
    background-size: 1px 100%;
    background-repeat: repeat-x;
    background-image: url('./img/sub-about-bggradient.png');
}
section.sub.soksiwon .section-title-eng { margin-bottom:1em }
section.sub.soksiwon .section-title-eng img {
    height: 2.0em;
}
section.sub.soksiwon h3.section-title {
    color: #0b1d8b;
}
section.sub.soksiwon h3.section-title span {
    color: #0081ff;
}
section.sub.soksiwon .title-zone .p-wrap {
    margin: 3em auto 0;
}
section.sub.soksiwon img.radius {
    display: block;
    width: 70%;
    margin: 80px auto;
    border-radius: 30px;
}

section.sub.soksiwon div.line-circle-zone {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
section.sub.soksiwon article {
    margin-top: 150px;
}
section.sub.soksiwon article p.subject.txt-primary {
    color: #0b1d8b;
    font-weight: 700;
    font-size: 2em;
    margin-bottom: 1.5em;

}
section.sub.soksiwon article p.subject.txt-primary span {
    color: var(--secondary);
}

section.sub.soksiwon div.line-circle-zone > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--primary);
    width: 20vw;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    margin: 0 -1vw;
}
section.sub.soksiwon div.line-circle-zone div .before {
    color: var(--secondary);
    font-weight: 600;
    font-size: 1.1em;
}
section.sub.soksiwon div.line-circle-zone div p { text-align: center; line-height: 1.5; }
section.sub.soksiwon div.line-circle-zone div p.circle-title {
    font-size: 1.35em;
    font-weight: 700;
    margin: 0.25em auto 0.5em;
}
section.sub.soksiwon div.line-circle-zone div p.desc {
    font-size: 0.9em;
    opacity: 0.9;
}
section.sub.soksiwon.banner { background-image:none; }
section.sub.soksiwon.banner div.banner {
    width: 80%;
    background-size: cover;
    background-image: url('./img/sub-soksiwon-banner-bg.png');
    background-position: right center;
    border-radius: 10px;
    margin: 150px auto 0;
    padding: 120px 0 100px;
}
section.sub.soksiwon.banner div.banner p.fw300 {
    font-weight: 200;
    line-height: 1.5;
    font-size: 1.5em;
}
section.sub.soksiwon.banner div.banner p.eng.uppercase {
    color: #fff;
    display: block;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    font-size: 0.8em;
    text-align: center;
    margin-top: 2em;
}

/* 건강검진 테이블 */
section.sub table.checkup {
    width: fit-content;
    margin: 60px auto;
    border-spacing: 10px;
}
section.sub table.checkup tr > * {
    font-family: var(--p);
    font-size: 1em;
    padding: 1.25em;
    border-radius: 3px;
    box-shadow: 0 1px 7px rgba(40, 77, 182, .1);
}
section.sub table.checkup tr th { text-align:center; font-weight: 600; }
section.sub table.checkup thead th {
    background-color: var(--secondary);
    color: #fff;
    text-align: center;
}
section.sub table.checkup thead td {
    background-color:#fff;
    text-align: center;
}

section.sub table.checkup tbody th {
    color: #002b6b;
    font-size: 1.1em;
    padding: 1.25em 4em;
    line-height: 1.3;
}
section.sub table.checkup tbody th.depth1 { background-color:#cee2ff; }
section.sub table.checkup tbody th.depth2 { background-color:#a8c8f9; }
section.sub table.checkup tbody th.depth3 { background-color:#7caaef; }

section.sub table.checkup tbody td {
    background-color: #fff;
    padding-right: 5em;
}
section.sub.checkup-basic table.checkup tbody td { width:700px }

/* 건강검진 반복 : 주의사항 */
section.sub.checkup div.checkup-caution {
    width: 75%;
    margin: 60px auto 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 25px;
}
section.sub.checkup div.checkup-caution > div.card-wide {
    background-color: #fff;
    border: 3px solid var(--secondary);
    border-radius: 10px;
    padding: 40px;
    display: grid;
    grid-template-columns: 140px 170px auto;
    grid-gap: 30px;
    align-items: center;
}
section.sub.checkup div.checkup-caution > div.card-wide img {}
section.sub.checkup div.checkup-caution > div.card-wide p.subject {
    font-size: 1.5em;
    font-weight: 700;
    text-align: center;
}
section.sub.checkup div.checkup-caution > div.card-wide p.subject span {
    color: var(--secondary);
}
section.sub.checkup div.checkup-caution > div.card-wide ul {}
section.sub.checkup div.checkup-caution > div.card-wide ul li {
    display: grid;
    grid-template-columns: 1em auto;
    align-items: flex-start;
}
section.sub.checkup div.checkup-caution > div.card-wide ul li + li {
    margin-top: 0.25em;
}
section.sub.checkup div.checkup-caution > div.card-wide ul li::before {
    content: '\00b7';
    font-size: 2em;
    line-height: 0.65;
    color: var(--secondary);
}

/* 건강검진 반복 : 특별함 */
section.sub.checkup-center .p-wrap {
    margin: 60px auto;
}
section.sub.checkup div.checkup-center {
    width: 80%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 15px;
}
section.sub.checkup div.checkup-center > div {
    aspect-ratio: 2 / 3;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;
    border-radius: 30px;
}
section.sub.checkup div.checkup-center > div p {
    text-align: center;
    padding: 2em;
    line-height: 1.4;
}
section.sub.checkup div.checkup-center > div:nth-child(1) { background-image:url('./img/sub-checkup-center01.png') }
section.sub.checkup div.checkup-center > div:nth-child(2) { background-image:url('./img/sub-checkup-center02.png') }
section.sub.checkup div.checkup-center > div:nth-child(3) { background-image:url('./img/sub-checkup-center03.png') }
section.sub.checkup div.checkup-center > div:nth-child(4) { background-image:url('./img/sub-checkup-center04.png') }


/* 건강검진 베이직 진행과정 */
section.sub.checkup-basic.process {}
section.sub.checkup-basic.process .checkup-process {
    display: grid;
    grid-template-columns: 2fr 1.6fr 2fr;
    width: 65%;
    margin: 60px auto;
/*    border: 1px solid lime;*/
    align-items: center;
    background-image: url(./img/checkup-process-bg.png);
    background-size: auto 80%;
    background-position: center;
    background-repeat: no-repeat;
}
section.sub.checkup-basic.process .checkup-process div.blank {
    display: flex;
    align-items: center;
    justify-content: center;
}
section.sub.checkup-basic.process .checkup-process div.blank p {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.4;
}


section.sub.checkup-basic.process .checkup-process div.process {
/*    border: 1px dashed red;*/
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    justify-content: space-between;
    height: 570px;
}
section.sub.checkup-basic.process .checkup-process div.process > div {
    background-color: #009ae2;
    border-radius: 15px;
    display: grid;
    grid-template-columns: 1fr 3fr;
    align-items: center;
    justify-content: center;
    box-shadow: -2px -2px 2px rgba(0, 0, 0, .1) inset;
    padding: 10px;
}
section.sub.checkup-basic.process .checkup-process div.process > div p {
    color: #fff;
}
section.sub.checkup-basic.process .checkup-process div.process > div p small {
    display: block;
    color: yellow;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.025em;
}


section.sub.checkup-basic.process .checkup-process div.process > div:nth-child(even) {  background-color: #0061ce; }
section.sub.checkup-basic.process .checkup-process div.process > div.ll { transform: translateX(-20%);}
section.sub.checkup-basic.process .checkup-process div.process > div.lr { transform: translateX(20%);}


/* 5대암검진항목 */
section.sub.checkup-five {}
section.sub.checkup-five .five-item {
    width: 80%;
    margin: 60px auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    grid-gap: 30px;
}
section.sub.checkup-five .five-item .icon-card {
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: top center;
    background-color: #e9f3fe;
    width: 25%;
    aspect-ratio: 1 / 1;

    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
section.sub.checkup-five .five-item .icon-card p.subject {
    text-align: center;
    font-weight: 700;
    font-size: 1.4em;
    padding-bottom: 1em;
    color: var(--navy);
}
section.sub.checkup-five .five-item .icon-card p.bg-navy {
    background-color: var(--navy);
    padding: 1em;
    text-align: center;
    line-height: 1.3;
}
section.sub.checkup-five .five-item .icon-card p.bg-navy span {
    color: yellow;
}


section.sub.checkup-five .five-item .icon-card:nth-child(1) { background-image:url('./img/sub-icon-cancer-wi.png') }
section.sub.checkup-five .five-item .icon-card:nth-child(2) { background-image:url('./img/sub-icon-cancer-gan.png') }
section.sub.checkup-five .five-item .icon-card:nth-child(3) { background-image:url('./img/sub-icon-cancer-jang.png') }
section.sub.checkup-five .five-item .icon-card:nth-child(4) { background-image:url('./img/sub-icon-cancer-wb.png') }
section.sub.checkup-five .five-item .icon-card:nth-child(5) { background-image:url('./img/sub-icon-cancer-wt.png') }






/* 종합건강검진 */
 section.sub.checkup.tabtable .tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    justify-content: center;
    grid-gap: 0.6em;
    width: 80%;
    margin: 60px auto 30px;
}
section.sub.checkup.tabtable .tab-button {
    padding: 1em;
    font-size: 1.2em;
    text-align: center;
    cursor: pointer;
    background: #b1c9e0;
    color: #fff;
    border: none;
    transition: background 0.3s;
}
section.sub.checkup.tabtable .tab-button.active {
    background: var(--secondary);
    color: #FFF;
    font-weight: 700;
}

section.sub.checkup.tabtable p.tab-title {
    font-size: 2em;
    font-weight: 700;
    margin-bottom: 1em;
}
section.sub.checkup.tabtable .swiper-container {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    overflow: hidden;
}
section.sub.checkup.tabtable .swiper-slide {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #f3f9ff;
    padding: 3em 1em;
    background-repeat: no-repeat;
}
 section.sub.checkup.tabtable table.checkup-tab {
    width: 100%;
    border: 2px solid var(--navy);
    border-collapse: collapse;
}
section.sub.checkup.tabtable table.checkup-tab tr > * {
    padding: 1em;
}
section.sub.checkup.tabtable table.checkup-tab th {
    color: #fff;
    text-align: center;
    min-width: 8em;
}
section.sub.checkup.tabtable table.checkup-tab td {
    background-color: #fff;
    border: 1px solid rgba(0, 68, 157, .15);
}
section.sub.checkup.tabtable table.checkup-tab thead th { background-color:var(--navy); }
section.sub.checkup.tabtable table.checkup-tab tbody th { background-color: #1f81d7 }
section.sub.checkup.tabtable table.checkup-tab tbody th.bg  { background-color: #00bcf7;}

 section.sub.checkup.tabtable table.checkup-tab tbody td {
    border-left: 0;
    color: rgba(0, 0, 0, .8);
 }
 section.sub.checkup.tabtable table.checkup-tab tbody td:last-child {
    padding-right: 2em;
 }

 section.sub.checkup.tabtable table.checkup-tab tbody td.point {
    background-color: #ebffff;
    color: #505b85;
    font-weight: 500;
 }
 section.sub.checkup.tabtable table.checkup-tab tbody td.point.gold {
    background-color: #caedfc;
    background-color: #d6f6ff;
    color: var(--navy);
 }

 section.sub.checkup.tabtable table.checkup-tab tbody td small { opacity:0.6; font-size:0.75em; }

 section.sub.checkup.tabtable table.checkup-tab tbody td .txt-red { font-weight: 700; color:var(--secondary); }
 section.sub.checkup.tabtable table.checkup-tab tbody td .txt-sky { font-weight: 700; color:var(--primary); }






/* 초음파검사 tab-slide */
section.sub.tab-slide > .inner {
    max-width: 100vw;
}
section.sub.tab-slide .tabs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 1em;
    width: 1200px;
    margin: 0 auto 20px;
}
section.sub.tab-slide .tabs .tab-button {
    padding: 1em;
    font-size: 1.1em;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    color: #aaa;
    border:0;
    background: #f7f7f7;
    border-radius: 10px;
    box-shadow: -2px -2px 3px rgba(50, 50, 50, .1) inset;
    transition: all ease 0.2s;
}
section.sub.tab-slide .tabs .tab-button.active {
    background: linear-gradient(0deg, #1f69d6 0%, #0bbafb 90% );
    color: #fff;
}

section.sub.tab-slide .swiper-container { overflow: hidden; }
/* 탭컨텐츠 내부 섹션(article) */
section.sub article {
    width: var(--inner);
    margin: 0 auto;
    padding: 120px 0;
}
section.sub article.wide { width: 100%; }
section.sub article .inner {
    padding: 0;
}

section.sub article .importance {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: fit-content;
    margin: 0 auto;
}

section.sub article .importance img {
}
section.sub article .importance .label-blue {
    background-color: #0074ff;
    color: #fff;
    font-weight: 700;
    font-size: 2em;
    padding: 0.15em 2em;
    border-radius: 3em;
    width: fit-content;
    margin: 1.75em auto 1.25em;
}

section.sub article .p-wrap p { font-size:1.1em;  line-height:1.6 }
section.sub article .p-wrap p + p { margin-top:1.85em;}

section.sub article .img-wrap {
    display: flex;
    flex-direction: row;
    grid-gap: 20px;
    justify-content: center;
    margin: 60px auto;
}

/* 상복부 하복부 초음파 */
section.sub article div.importance .img-wrap img {
    width: 330px;
}
/* 초음파를통해진단가능한질환 */
section.sub article div.disease-wrap {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 40px auto;
    width: 80%;
}
/*section.sub article div.disease-wrap > * { border: 1px dashed lime }*/
section.sub article div.disease-wrap > img {
}
section.sub article div.disease-wrap > .txt {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 1em;
}
section.sub article div.disease-wrap p.title-img {
    text-align: center;;
}
section.sub article div.disease-wrap div.label-group.tags {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: 20px 15px;
}
section.sub article div.disease-wrap div.label-group.tags p {
    width: fit-content;
    padding: 0.2em 1.5em;
    border-radius: 3em;
    font-weight: 500;
    color: #ea0074;
    background-color: #ffdcea;
    letter-spacing: -0.015em;
    font-size: 1.3em;
    font-family: var(--p);
}


/* 초음파 검사 대상자 */
section.sub article div.target-board {
    width: 65%;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    background-image: url('./img/sub-ultrasound-target-board.png');
    padding: 180px 390px 170px 120px;
}
section.sub article div.target-board ul.checklist {}
section.sub article div.target-board ul.checklist li {
    display: grid;
    grid-template-columns: 2em auto;
    align-items: flex-start;
    justify-content: flex-start;
    grid-gap: 0.25em;
    font-size: 1.2em;
    font-family: var(--p);
}
section.sub article div.target-board ul.checklist li + li {
    margin-top: 0.5em;
}
section.sub article div.target-board ul.checklist li::before {
    content: '';
    display: block;
    width: 2em;
    aspect-ratio: 1 / 1;
    background-repeat: no-repeat;
    background-size: 1.1em;
    background-position: top 20% center;
    background-image: url(./img/check.png);
}

/* 초음파검사장점 */
section.sub article.good div.dash-box {
    width: 70%;
    margin: 60px auto 0;
    padding: 80px ;
    border-radius: 40px;
    border: 2px dashed #344089;
    background-image: url('./img/sub-dashbox-hand.png');
    background-repeat: no-repeat;
    background-size: 150px;
    background-position: right 50px top 40px;
}
section.sub article.good div.dash-box.heart { background-image:url('./img/sub-dashbox-heart.png'); background-size: 70px }
section.sub article.good div.dash-box.selftest { background-image:url('./img/sub-dashbox-selftest.png'); background-position:right 50px bottom 50px; background-size:130px  }

section.sub article.good div.dash-box ul.dotlist li {
    display: grid;
    grid-template-columns: 1em auto;
    font-size: 1.2em;
    font-family: var(--p);
}
section.sub article.good div.dash-box ul.dotlist li + li {
    margin-top: 0.75em;
}
section.sub article.good div.dash-box ul.dotlist li::before {
    content: '\00b7';
    font-size: 2em;
    color: var(--secondary);
    line-height: 0.5;
}

/* repeat 초음파센터의 특별함 */
section.sub.repeat.ultrasound {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
section.sub.repeat.ultrasound .inner > div.special {
    width: 75%;
    margin: 60px auto 0;
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: right bottom;
    padding-bottom: 70px;
}
/* 골밀도검사 */
section.sub.repeat.ultrasound.bmd .inner > div.special {
    width: 90%;
    background-size: 45%;
    background-position: left center;
    padding: 40px 0 10px 46%;
}

section.sub.repeat.ultrasound .inner > div.special p.big {
    font-size: 3em;
    color: #cedcf5;
    font-weight: 700;
}
section.sub.repeat.ultrasound .inner > div.special div.p-wrap {
    margin: 1em 0 4em;
}
section.sub.repeat.ultrasound .inner > div.special div.p-wrap p {
    font-family: var(--p);
    --secondary: #0074ff;
}

section.sub.repeat.ultrasound .inner > div.special div.p-wrap p + p {
    margin-top: 1.5em;
}

section.sub.repeat.ultrasound .inner > div.special .circle-plus {
    grid-gap: 20px;
}
section.sub.repeat.ultrasound .inner > div.special .circle-plus > div {
    width: 190px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    border: 2px solid var(--secondary);
    background-color: #fff;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
section.sub.repeat.ultrasound .inner > div.special .circle-plus > div::before {
    content: '+';
    background-color: var(--secondary);
    display: block;
    width: 1.6em;
    font-size: 1.2em;
    font-weight: 500;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    position: absolute;
    color: #fff;
    line-height: 1.6em;
    top: -0.8em;
    left: calc(50% - 0.8em);
}
section.sub.repeat.ultrasound .inner > div.special .circle-plus > div img {
    height: 40%;
    transform: translateY(5%);
}




/* 유방촬영검사 진단 */
section.sub div.between-plus {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 50px;
    width: 80%;
    margin: 60px auto ;
}
section.sub div.between-plus > div.circle {
    width: 24%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    position: relative;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;
    grid-gap: 0.5em;
}
section.sub div.between-plus > div.circle + div.circle::before {
    content: '+';
    line-height: 1.0;
    text-align: center;
    display: block;
    color: #bababa;
    font-size: 3em;
    position: absolute;
    width: 50px;
    height: 50px;
    top: calc(50% - 25px);
    left: -52px;
}

section.sub div.between-plus > div.circle .before {
    font-size: 0.8em;
    color: #fff;
    margin-top: -0.5em;
}
section.sub div.between-plus > div.circle p.txt-white {
    font-size: 1.75em;
    font-weight: 600;
    text-align: center;
    line-height: 1.3;
}
section.sub.bone div.between-plus > div.circle p.txt-white small {
    color: inherit;
    display: block;
    text-align: center;
}


/* 내시경검사 : 검사주기 */
section.sub.endoscopy.cycle > .inner { padding:5vw; }
section.sub.endoscopy.cycle p.subject {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    grid-gap: 0.5em;
    font-size: 2em;
    font-weight: 600;
    margin-bottom: 0.5em;
}
section.sub.endoscopy.cycle p.subject img {
    height: 1.5em;
}
section.sub.endoscopy.cycle p.subject + div.p-wrap p {
    font-size: 1.2em;
    font-family: var(--p);
    font-weight: 300;
}
section.sub.endoscopy.cycle p.subject + div.p-wrap p b {
    font-weight: 500;
}

/* 내시경검사 : 진단가능한 질병 */
section.sub.endoscopy .disease-circle-list {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 65%;
    margin: 80px auto 0;
    grid-gap: 50px 40px;
}
section.sub.endoscopy .disease-circle-list > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 1em;
    text-align: center;
}
section.sub.endoscopy .disease-circle-list > div p {
    text-align: center;
    font-weight: 600;
    letter-spacing: -0.025em;
    font-size: 1.5em;
}


/* 부위별 용종절제술 */
section.sub.polyp div.polyp-part {
    width: 70%;
    margin: 60px auto;
}
section.sub.polyp div.polyp-part > div.part {
    border-radius: 50em;
    background-color: #f5f5f5;
    padding: 2em;
    display: grid;
    grid-template-columns: 230px auto;
    align-items: center;
    justify-content: flex-start;
    grid-gap: 3em;
    margin-bottom: 2em;
}
section.sub.polyp div.polyp-part > div.part .txt p.subject {
    color: #003ebb;
    font-weight: 700;
    font-size: 1.75em;
    margin-bottom: 0.8em;
}
section.sub.polyp div.polyp-part > div.part .txt p.subject span { color: #0074ff; }
section.sub.polyp div.polyp-part > div.part .txt div.p-wrap p + p { margin-top:1em }

/* 용종절제술 주의사항 */
section.sub.polyp div.caution-box-wrap {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 4em;
    margin: 100px auto 0;
    width: 60%;
}
section.sub.polyp div.caution-box-wrap > div {
    position: relative;
    border-radius: 2em;
    background-color: #f7f7f7;
    padding: 1em 3em 3em;
}
section.sub.polyp div.caution-box-wrap > div p.subject.label {
    width: 60%;
    margin: 0 auto;
    transform: translateY(-2em);
    color: #fff;
    font-size: 1.3em;
    padding: 0.25em;
    border-radius: 3em;
    background-color: #2b3784;
    text-align: center;
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist {
    width: 85%;
    margin: 0 auto;
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist li {
    display: grid;
    grid-template-columns: 1em auto;
    align-items: center;
    justify-content: flex-start;
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist li p {
    font-size: 1em;
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist li small {
    font-size: 0.8em;
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist li::before {
    content: '\00b7';
    font-size: 2em;
    line-height: 0.65;
    color: var(--primary);
}
section.sub.polyp div.caution-box-wrap > div ul.dotlist li + li {
    margin-top: 0.25em;
}


/* 내과질환 ; 고혈압 */
section.sub-intro.hypertension .rowtocol {
    display: flex;
    flex-direction: row;
    grid-gap: 2em;
    align-items: center;
    justify-content: center;
    margin: 40px auto 0;
}
section.sub-intro.hypertension .rowtocol > div {
    display: grid;
    grid-template-columns: 7em auto;
    grid-gap: 1em;
    align-items: center;
    justify-content: flex-start;
}
section.sub-intro.hypertension .rowtocol > div.blue { --point: #0074ff; }
section.sub-intro.hypertension .rowtocol > div.red { --point: #fe483a; }

section.sub-intro.hypertension .rowtocol > div p.label {
    display: inline-block;
    padding: 0.25em;
    border-radius: 3em;
    text-align: center;
    color: var(--point);
    font-weight: 700;
    border: 3px solid var(--point);
}
section.sub-intro.hypertension .rowtocol > div p.label + p {}
section.sub-intro.hypertension .rowtocol > div p.label + p b { color:var(--point); }


section.sub.internal .title-zone + .img.hypertension {
    margin: 60px auto 0;
    width: 80%;
}
section.sub.internal .title-zone + .img.hypertension img.pc {}
section.sub.internal .title-zone + .img.hypertension img.m {}





/* 내과질환 블루캡슐 */
section.sub.internal div.capsule-wrap {
    width: 66%;
    margin: 60px auto 0;
}
section.sub.internal div.capsule-wrap > div {
    border-radius: 50em;
    background-color: #0074ff;
    padding: 1.5em;
    display: grid;
    grid-template-columns: 200px auto;
    align-items: center;
    justify-content: flex-start;
    grid-gap: 1.75em;
    margin-bottom: 2em;
}
section.sub.internal div.capsule-wrap > div .txt p.subject {
    color: #fff;
    font-weight: 700;
    font-size: 1.5em;
    margin-bottom: 0.5em;

}
section.sub.internal div.capsule-wrap > div .txt p.subject span { color: #fcff00; font-family: var(--p); }
section.sub.internal div.capsule-wrap > div .txt div.p-wrap p { font-size:1.1em; }
section.sub.internal div.capsule-wrap > div .txt div.p-wrap p + p { margin-top:1em }
section.sub.internal div.capsule-wrap > div .txt div.p-wrap p b { color: #fffbbc; }



section.sub .prevent-list {
    width: 65%;
    margin: 60px auto 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-content: center;
    grid-gap: 1.5em 3em;
}
section.sub .prevent-list > div {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    grid-gap: 1em;
    border-radius: 3em;
    background-color: #f7f7f7;
}
section.sub .prevent-list > div .before {
    width: 3em;
    height: 3em;
    border-radius: 50%;
    font-size: 1.5em;
    font-family: var(--p);
    color: #fff;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #2b3784;
}



/* 합병증 카드형태 */
section.sub div.complication-card {
    display: flex;
    flex-direction: row;
    grid-gap: 3em;
    margin: 60px auto 0;
    align-items: flex-start;
    justify-content: center;
}
section.sub div.complication-card > div {
    border-radius: 1em;
    border: 2px solid #2b3784;
    background-color: #2b3784;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr;
    width: 30%;
}
section.sub div.complication-card > div img {
    width: 100%;
}
section.sub div.complication-card > div p.bg-white {
    width: 100%;
    padding: 0.35em;
    text-align: center;
    font-weight: 700;
    font-size: 1.5em;
    border-top: 2px solid #2b3784;
    color: #2b3784;
}
section.sub div.complication-card > div div.p-wrap {
    height: 12em;
    display: grid;
    justify-content: center;
    align-items: center;
}
section.sub div.complication-card > div div.p-wrap p {
    padding: 2em;
}


/* 고지혈증 인트로 이미지*/
section.sub-intro.lipidemia div.img-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: center;
    align-items: center;
    width: 60%;
    margin: 60px auto;
    grid-gap: 10px;
}
/* 고지혈증 테이블 이미지  */
section.sub.lipidemia div.table-wrapper {
    margin: 60px auto 0;
    width: 66%;
}

/* 위장질환 발생원인 */
section.sub .stomach-cause {
    margin: 80px auto 0;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    grid-gap: 80px;
}
section.sub .stomach-cause img { width:24%; margin-top:50px }

section.sub .stomach-cause .cause-list {}
section.sub .stomach-cause .cause-list > div {}
section.sub .stomach-cause .cause-list > div p.label-caution-red {
    background-color: #fa334a;
    color: #fff;
    font-size: 1.5em;
    font-weight: 500;
    padding: 0.3em 1em 0.3em 2.5em;
    border-radius: 3em;
    background-repeat: no-repeat;
    background-size: auto 65%;
    background-position: left 10px center;
    background-image: url('./img/label-caution-red.svg');
}
section.sub .stomach-cause .cause-list > div .p-wrap {
    padding: 1em 1em 2em 3em;
}
section.sub .stomach-cause .cause-list > div .p-wrap p {
    font-size:1em;
    line-height: 1.5;
}


/* 천식알레르기비염 발생원인 */
section.sub .stomach-cause.allergy {
    align-items: center;
}
section.sub .stomach-cause.allergy > img { width: auto; margin-top:0}
section.sub .stomach-cause.allergy .cause-list > div p.label-caution-icon {
    color: #fff;
    font-size: 1.5em;
    font-weight: 500;
    padding: 0.3em 0;
    border-radius: 3em;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    grid-gap: 0.5em;
    text-indent: 0;
}
section.sub .stomach-cause.allergy .cause-list > div p.label-caution-icon > img { width:auto; height:1.2em; margin:0 0 0 -1em }


/* 천식알레르기비염 증상 */
section.sub .symptom-list {
    margin: 60px auto 0;
    max-width: 60%;
    width: fit-content;
}
section.sub .symptom-list > p {
    background-color: #f7f7f7;
    border-radius: 3em;
    display: grid;
    grid-template-columns: 2.5em auto;
    align-items: center;
    justify-content: flex-start;
    padding: 0.75em 3em 0.75em 2em;
}
section.sub .symptom-list > p + p {
    margin-top: 1em;
}
section.sub .symptom-list > p::before {
    content: '';
    display: block;
    width: 2em;
    aspect-ratio: 1 / 1;
    background-image: url(./img/check-blue.png);
    background-size: 60%;
    background-position: center;
    background-repeat: no-repeat;
}

/* doctor said */
section.doctorsaid div.title-zone {
    background-image: url('./img/doctor-said.png');
    background-size: 140px;
    background-repeat: no-repeat;
    background-position: left bottom;
    padding-left: 200px;
    width: fit-content;
    margin: 0 auto;
}
section.doctorsaid div.box {
    border-radius: 30px;
    padding: 70px 120px;
    width: fit-content;
    margin: 60px auto 0;
}



/* 과민성대장증후군 원인 */
section.sub .blue-label-group {
    width: 60%;
    margin: 80px auto 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: 20px 15px;
}
section.sub .blue-label-group > div {
    background-color: #0074ff;
    padding: 0.5em 2em;
    display: flex;
    flex-direction: row;
    align-items: center;
    grid-gap: 0.5em;
    border-radius: 3em;
}
section.sub .blue-label-group > div:nth-child(even) { background-color:#0350ab; }

section.sub .blue-label-group > div p {
    font-weight: 600;
    font-size: 1.4em;
    color: #fff;
    font-family: var(--p);
}
section.sub .blue-label-group > div .before {
    color: #fff607;
    font-size: 1.0em;
}


/* 과민성대장증후군 캡슐 */
section.sub.internal.ibs div.capsule-wrap { width:60%; }
section.sub.internal.ibs div.capsule-wrap + .p-wrap { margin-top:5em }



/* 간 건강수칙 */
section.sub .card-quater {
    width: 80%;
    margin: 60px auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 30px;
}
section.sub .card-quater > div {
    display: flex;
    flex-direction: column;
    grid-gap: 1em;
    align-items: center;
    justify-content: flex-start;
}
section.sub .card-quater > div p.subject {
    font-size: 1.5em;
    font-weight: 700;
    margin-top: 0.5em;
}
section.sub .card-quater > div p.desc {
    font-size: 1em;
}


/* 예방접종 인트로 */
section.sub.iv .importance {}
section.sub.iv .importance p.subject {
    font-size: 2.5em;
    color: #0074ff;
    margin: 1em auto 0.8em;
    font-weight: 700;
}
section.sub.iv .importance .number-list {}
section.sub.iv .importance .number-list div {
    display: grid;
    grid-template-columns: 2em auto;
    align-items: flex-start;
    justify-content: flex-start;
}
section.sub.iv .importance .number-list div .before {
    color: #0074ff;
    font-weight: 600;
    font-family: var(--p);
    line-height: 2.0;
}
section.sub.iv .importance .number-list div p { font-size:1.1em }


/* 예방접종 종류 */
section.sub.iv .type-half {
    margin: 60px auto 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 100px;
}
section.sub.iv .type-half > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 1.5em;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 300px;
    aspect-ratio: 1 / 1;
}
section.sub.iv .type-half > div img {
    width: 50px;
    transform: translateX(5px);
}
section.sub.iv .type-half > div p {
    font-weight: 700;
    font-size: 2.25em;
    line-height: 1.0;
    text-align: center;
}
section.sub.iv .type-half > div:nth-child(1) p { color:#111173; }
section.sub.iv .type-half > div:nth-child(2) p { color:#ec257e; }

/* 예방접종 유리가루 (board) */
section.sub article div.paragraph-board {
    width: 70%;
    margin: 80px auto 0;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    background-image: url('./img/sub-paragraph-board.png');
    padding: 170px 360px 160px 120px;
}

/* 영양수액 종류 */
section.sub.iv .disease-circle-list {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 80%;
    margin: 80px auto 0;
    grid-gap: 80px 50px;
}
section.sub.iv .disease-circle-list > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 1em;
    text-align: center;
}
section.sub.iv .disease-circle-list > div p {
    text-align: center;
    font-weight: 600;
    letter-spacing: -0.025em;
    font-size: 1.5em;
}
section.sub.iv .disease-circle-list > div p span { color:#0074ff }


/* 영양수액 처방 (step) */
section.sub.iv .nutrient-step {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 20px;
    width: 75%;
    margin: 100px auto 60px;
}
section.sub.iv .nutrient-step > div {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: center;
    align-items: center;
    padding: 30px;
    background-color: #fff;
    border: 2px solid #2b3784;
    border-radius: 25px;
}
section.sub.iv .nutrient-step > div > img {
    display: block;
    width: 70%;
    margin: -70px auto 20px;
}
section.sub.iv .nutrient-step > div p.uppercase {
    font-weight: 500;
    font-size: 1.0em;
    letter-spacing: 0.2em;
    text-align: center;
}
section.sub.iv .nutrient-step > div p.uppercase::after {
    content: '';
    display: block;
    width: 1px;
    height: 16px;
    background-color: var(--secondary);
    margin: 10px auto 20px;
}
section.sub.iv .nutrient-step > div p.subject {
    font-size: 1.3em;
    font-weight: 600;
    text-align: center;
    line-height: 1.3;
}

/*영양수액 장점*/
section.sub.iv .img-with-list {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    grid-gap: 60px;
    margin: 60px auto;
    width: 80%;
}
section.sub.iv .img-with-list .symptom-list {
    margin: 0;
    max-width: 100%;
    width: 80%;
}
section.sub.iv .img-with-list .symptom-list p {
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}















/* 탭컨텐츠 내부임을 표시 (추후삭제)
section.sub.tab-slide.ultrasound .swiper-slide { border: 1px solid magenta; position:relative; }
section.sub.tab-slide.ultrasound .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 }
*/