/* ui */
#gnb_1dul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 34px;
}

#gnb_1dul .gnb_1dli {
    text-align: center;
}

#gnb_1dul .gnb_1da {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    text-decoration: none;
    color: #111;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
}

#gnb_1dul .gnb_icon {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #f5faf5;
    overflow:hidden
}

#gnb_1dul .gnb_icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#gnb_1dul .gnb_1da:hover .gnb_text {
    color: #d91c24;
}



/* 기본 서브 */
.is-sub #container_wr {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 0;
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 30px;
}
.is-sub #container {
    width:100%;
    padding-right:30px;
    border-right:1px solid #e7f3ff
}

/* 본문 */
.is-sub #container #content {
    min-width: 0;
}

/* 우측 사이드 */
.sub-sidebar {
    width: 260px;
}

/* 메인만 100% */
.is-main #container {
    max-width: none;
    width: 100%;
    padding: 0 10px;
    display: block;
}
.is-main #aside {
    display:none
}


/* head */
.today-date-box {
    position: absolute;
    right: 24px;
    top: 35px;
    text-align: right;
    line-height: 1.35;
    white-space: nowrap;
}
.today-date-box span {
    display: block;
    font-size: 12px;
    color: #888;
    font-family: Georgia, serif;
    margin-bottom:5px
}
.today-date-box strong {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    color: #111;
    font-weight: 700;
    letter-spacing: 0.03em;
}

/* 헤더 기준점 */
#hd_wrapper,
#hd {
    position: relative;
}

/* 모바일에서는 숨김 */
@media (max-width: 768px) {
    .today-date-box {
        display: none;
    }
}


/* .main-hero-banner {
    position: relative;
    width: 880px;
    margin: 0 auto 40px;
    border-radius: 60px;
    background: linear-gradient(135deg, #f5f9e8, #ffffff);
    box-shadow: 0 16px 36px rgba(0,0,0,0.05);
    background: url('/img/main_banner.png') center 40%;
    background-repeat: repeat;
    background-size: auto;
    overflow: hidden;
    background-size: 110%;
    background-repeat: no-repeat;
    height: 110px;
    z-index:2;
}
.main-hero-banner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 70px;
}
.main-hero-banner a {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    flex-direction: column;
    height:100%;
    padding: 28px 50px;
    text-decoration: none;
    color: #111;
    z-index: 3;
}

.main-hero-banner strong {
    font-size: 17px;
    font-weight: 600;
    color:#fff
}
.main-hero-banner span {
    font-size: 12px;
    color: rgba(255,255,255,0.8);
    font-weight: 700;
} */


.main-hero-banner {
    position: relative;
    max-width: 880px;
    height: 110px;
    margin: 34px auto 44px;
    border-radius: 999px;
    overflow: hidden;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
}
.main-hero-slide {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 50px;
    color: #fff;
    text-decoration: none;
    opacity: 0;
    visibility: hidden;
    transform: scale(1.02);
    transition:
        opacity 0.8s ease,
        visibility 0.8s ease,
        transform 1.2s ease;
}
.main-hero-slide.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    z-index: 1;
}
.main-hero-slide strong {
    display: block;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: -0.045em;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.25);
}
.main-hero-slide span {
    display: block;
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
    opacity: 0.95;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.25);
}
/* .main-hero-slide:nth-child(1) {
    background:
        linear-gradient(90deg, rgba(173, 152, 110, 0.72), rgba(173, 152, 110, 0.18)),
        url("/img/banner/banner_01.png") center / cover no-repeat;
}
.main-hero-slide:nth-child(2) {
    background:
        linear-gradient(90deg, rgba(42, 88, 70, 0.72), rgba(42, 88, 70, 0.18)),
        url("/img/banner/banner_02.png") center / cover no-repeat;
        background-size:110%;
}
.main-hero-slide:nth-child(3) {
    background:
        linear-gradient(90deg, rgba(92, 64, 48, 0.72), rgba(92, 64, 48, 0.18)),
        url("/img/banner/banner_03.png") center / cover no-repeat;
} */


.main-hero-urticaria {
    background:
        linear-gradient(90deg, rgba(173, 152, 110, 0.72), rgba(173, 152, 110, 0.18)),
        url("/img/banner/banner_01.png") center / cover no-repeat;
}

.main-hero-rhinitis {
    background:
        linear-gradient(90deg, rgba(42, 88, 70, 0.72), rgba(42, 88, 70, 0.18)),
        url("/img/banner/banner_02.png") center / cover no-repeat;
    background-size: 110%;
}

.main-hero-hemorrhoid {
    background:
        linear-gradient(90deg, rgba(92, 64, 48, 0.72), rgba(92, 64, 48, 0.18)),
        url("/img/banner/banner_03.png") center / cover no-repeat;
}



/* ==============================
   Main Intro Section
============================== */



/* ==============================
   Main 2 Column Grid
============================== */

.main-content-grid {
    display: grid;
    /* grid-template-columns: repeat(2, minmax(0, 1fr)); */
    grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
    gap: 24px;
    /* max-width: 1150px; */
    margin: 0 auto;
    /* padding: 0 15px; */
}

.main-content-grid .main-board-box,
.main-content-grid .main-gallery-box {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}


/* ==============================
   Common Board Box
============================== */

.main-board-box {
    background: #fff;
    border: 1px solid #eceef2;
    border-radius: 16px;
    overflow: hidden;
    /* margin-bottom: 10px; */
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.main-board-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    /* background: #fafafa; */
}

.main-board-head strong {
    font-size: 16px;
    font-weight: 700;
    color: #000;
    flex-shrink: 0;
}

.main-board-body {
    padding: 20px 20px 30px;
    text-align: center;
}

.main-board-body ul {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-board-body li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    font-size: 15px;
    line-height: 1.6;
    padding: 2px 0;
}

.main-board-body li::before {
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 50%;
    /* background: #7ef03d; */
    background: #d91c24;
    flex-shrink: 0;
}

.main-board-body li a {
    flex: 1;
    min-width: 0;
    font-size: 15px;
    color: #595b59;
    text-align: left;
    text-decoration: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.main-board-body li a:hover {
    color: #000;
    text-decoration: underline;
}

.main-board-body li a + span,
.main-cate-panel li span {
    font-size: 12px;
    color: #888;
    flex-shrink: 0;
}

.main-board-body li.empty,
.main-cate-panel li.empty {
    color: rgba(0, 0, 0, 0.5);
}

.main-board-body li.empty::before,
.main-cate-panel li.empty::before {
    display: none;
}


/* ==============================
   Tab Board
============================== */

.main-tab-board .main-board-head {
    align-items: center;
}

.main-cate-list {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.main-cate-tab {
    position:relative;
    border: 0;
    background: transparent;
    color: #666;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
    cursor: pointer;
}
.main-cate-tab::before {
    content: "";
    display: none;
    position: absolute;
    top: 7px;
    right: -4px;
    width: 1px;
    height: 15px;
    -webkit-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    transform: skewX(-15deg);
    background-color: #ddd;
}

.main-cate-tab:hover {
    color: #d91c24;
}

.main-cate-tab.active {
    /* background: #d91c24; */
    color: #000;
    font-weight: 600;
}

.main-cate-panel {
    display: none;
}

.main-cate-panel.active {
    display: block;
}

.main-cate-panel ul {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 4px 0;
    margin: 0;
    padding: 0;
    list-style: none;
}


/* ==============================
   More Button
============================== */

.main-more-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 170px;
    height: 42px;
    margin-top: 34px;
    padding: 0 24px;
    border: 1px solid #f9f9f9;
    background: #fafafa;
    border-radius: 999px;
    color: #111;
    font-size: 15px;
    text-decoration: none;
    transition: 0.25s;
}

.main-more-link::after {
    content: "›";
    margin-left: 12px;
    font-size: 20px;
    line-height: 1;
    margin-top: -6px;
}

.main-more-link:hover {
    background: #d91c24;
    border-color: #d91c24;
    color: #fff;
}


/* ==============================
   Gallery Box
============================== */

.main-gallery-box {
    position: relative;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
    overflow: hidden;
}

.main-gallery-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 20px;
}

.main-gallery-box .main-more-link {
    position: absolute;
    top: 0;
    right: 20px;
}

.main-gallery-item {
    display: block;
    text-decoration: none;
}

.main-gallery-item .thumb {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 3px;
    background: #f3f3f3;
}

.main-gallery-item .thumb img,
.main-gallery-item .thumb .youtube-thumb {
    display: block;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.main-gallery-item .thumb .youtube-thumb-wrap {
    display: block;
    width: 100%;
    height: 100%;
}

.main-gallery-item p {
    margin-top: 8px;
    font-size: 14px;
    color: #3a3a3a;
    font-weight: 600;
    letter-spacing: -0.7px;
}


/* ==============================
   Notice
============================== */

.health-notice {
    width: 1000px;
    max-width: calc(100% - 30px);
    margin: 0 auto;
    padding: 15px 30px;
    /* background: #f9fbfd; */
    color: #9099a2;
    font-size: 15px;
    line-height: 1.7;
    text-align: center;
    letter-spacing: -0.03em;
    border-radius: 1rem;
}


/* ==============================
   Responsive
============================== */

@media (max-width: 900px) {
    /* .main-content-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    } */
}


/* ==============================
   Trislab Style Main Tab Board
   left thumbnail list + right text list
============================== */

.main-trislab-body {
    padding: 22px;
    text-align: left;
}

.main-trislab-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.main-trislab-thumb-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

.main-trislab-thumb-item {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.main-trislab-thumb {
    width: 180px;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 6px;
    background: #f3f3f3;
    border: 1px solid #eee;
}

.main-trislab-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.main-trislab-thumb-item p {
    margin: 0;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 500;
    color: #222;
    letter-spacing: -0.04em;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.main-trislab-thumb-text {
    min-width: 0;
}

.main-trislab-thumb-text p {
    margin: 0;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 500;
    color: #222;
    letter-spacing: -0.04em;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.main-trislab-thumb-text span {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    color: #999;
}
.bottom-area {
    border-top: 1px solid #f4f4f4;
    padding: 22px 0 0;
    margin-top: 30px;
}


.main-trislab-text-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-trislab-text-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 6px 0;
    font-size: 15px;
    line-height: 1.5;
}

.main-trislab-text-list li::before {
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 50%;
    /* background: #7ef03d; */
    background: #d91c24;
    flex-shrink: 0;
}

.main-trislab-text-list li a {
    flex: 1;
    min-width: 0;
    color: #333;
    text-decoration: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    letter-spacing: -0.035em;
}

.main-trislab-text-list li span {
    flex-shrink: 0;
    font-size: 12px;
    color: #999;
}

.main-trislab-thumb-item:hover img {
    transform: scale(1.04);
}

.main-trislab-thumb-item:hover .main-trislab-thumb-text p,
.main-trislab-text-list li a:hover {
    color: #d91c24;
    text-decoration: underline;
}

.main-trislab-text-list li.empty {
    color: #999;
}

.main-trislab-text-list li.empty::before {
    display: none;
}

.main-trislab-board .main-more-link {
    display: flex;
    width: 180px;
    margin: 0 auto;
}


/* ==============================
   Random Recommendation Slider
============================== */

.main-random-card-box {
    min-height: 432px;
}

.main-random-card-box .main-board-head {
    background: #fff;
    padding: 20px 22px 10px;
}

.main-random-card-box .main-board-head strong {
    color: #000;
}

.main-random-slider {
    overflow: hidden;
    padding: 12px 12px;
}

.main-random-track {
    display: flex;
    transition: transform 0.35s ease;
    will-change: transform;
}

.main-random-slide {
    flex: 0 0 100%;
    min-width: 100%;
    padding:0 12px
}

.main-random-slide a {
    display: block;
    color: inherit;
    text-decoration: none;
}

.main-random-thumb {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 12px;
    overflow: hidden;
    background: #f3f3f3;
    border: 1px solid #eee;
}

.main-random-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.main-random-text {
    padding-top: 14px;
}

.main-random-text h3 {
    margin: 0;
    font-size: 17px;
    line-height: 1.45;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.045em;

    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.main-random-text p {
    margin: 10px 0 0;
    font-size: 14px;
    line-height: 1.6;
    color: #777;
    letter-spacing: -0.035em;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.main-random-slide a:hover .main-random-thumb img {
    transform: scale(1.04);
}

.main-random-slide a:hover h3 {
    color: #d91c24;
}

.main-random-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 12px 0 12px;
    margin-top:10px;
}

.main-random-nav button {
    width: 34px;
    height: 34px;
    border: 1px solid #e5e7eb;
    border-radius: 50%;
    background: #fff;
    color: #555;
    /* font-size: 24px;
    line-height: 1; */
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.main-random-nav button:hover {
    border-color: #d91c24;
    color: #d91c24;
}
.main-random-nav button .icon {
    display: flex;
    align-items: center;
    justify-content: center;
}
.main-random-nav button .icon i {
    font-size:16px;
    line-height:20px;
    color:#888
}

.main-random-count {
    font-size: 1rem;
    color: #c9c9c9;
}

.main-random-count b {
    color: #737373;
    font-weight: 700;
}

.main-random-count em {
    font-style: normal;
}

.main-random-empty {
    padding: 40px 0;
    color: #999;
    font-size: 14px;
    text-align: center;
}


.main-trislab-page {
    display: none;
}

.main-trislab-page.active {
    display: block;
}

.main-cate-divider {
    color: #d5d5d5;
    font-size: 14px;
    margin: 0 4px;
}

.main-trislab-bottom-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid #f0f0f0;
}

.main-trislab-page-prev,
.main-trislab-page-next {
    width: 34px;
    height: 34px;
    border: 1px solid #e5e7eb;
    border-radius: 50%;
    background: #fff;
    color: #555;
    /* font-size: 24px;
    line-height: 1; */
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.main-trislab-page-prev:hover,
.main-trislab-page-next:hover {
    border-color: #d91c24;
    color: #d91c24;
}

.main-trislab-page-prev .icon,
.main-trislab-page-next .icon {
    display:flex;
    align-items: center;
    justify-content: center;
}
.main-trislab-page-prev .icon i,
.main-trislab-page-next .icon i {
    font-size:16px;
    line-height:20px;
    color:#888
}

.main-trislab-more-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 150px;
    height: 38px;
    padding: 0 20px;
    background: #fafafa;
    border-radius: 999px;
    color: #111;
    font-size: 15px;
    text-decoration: none;
    transition: .25s;
}

.main-trislab-more-link::after {
    content: "›";
    margin-left: 10px;
    font-size: 20px;
    line-height: 1;
    margin-top: -5px;
}

.main-trislab-more-link:hover {
    background: #d91c24;
    color: #fff;
}



.main-trislab-page-count {
    font-size: 1rem;
    color: #c9c9c9;
}

.main-trislab-page-count b {
    color: #737373;
    font-weight: 700;
}

.main-trislab-page-count em {
    font-style: normal;
}

.main-tab-more-list {
    margin-left: auto;
    flex-shrink: 0;
}

.main-tab-more {
    display: none;
    font-size: 14px;
    color: #888;
    text-decoration: none;
    white-space: nowrap;
}

.main-tab-more.active {
    display: inline-flex;
    align-items: center;
}

.main-tab-more::after {
    content: "›";
    margin-left: 8px;
    font-size: 18px;
    line-height: 1;
    margin-top: -3px;
    text-decoration: none;
}

.main-tab-more:hover {
    color: #d91c24;
    /* text-decoration: underline; */
}
.main-tab-more:hover::after {
    text-decoration: none;
}

/* 추가 */
/* .main-tab-more {
    text-decoration: none;
}

.main-tab-more:hover {
    text-decoration: none;
} */

.main-tab-more:hover .main-tab-more-text {
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* .main-tab-more::after {
    content: "›";
    margin-left: 8px;
    font-size: 18px;
    line-height: 1;
    margin-top: -3px;
    text-decoration: none;
} */













/* aside */
#aside {
    width: 100%;
    margin:0;
    position:static;
    height:auto
}
.aside-post-box {
    /* margin-bottom: 28px; */
    padding: 20px 0;
    border-radius: 8px;
    background: #fff;
}
.aside-post-box h3 {
    margin: 0 0 15px;
    font-size: 15px;
    font-weight: 700;
}
.aside-post-box ul {
    margin: 0;
    padding: 0;
    border-radius: 10px;
    overflow: hidden;
}
.aside-post-box li {
    position:relative;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.45;
    padding:0 20px;
    /* border-bottom:1px solid #e7f3ff; */
    background:#fafafa;
    transition: ease-in-out .3s;
}
.aside-post-box li:hover {
    /* background:#feffe7; */
    /* background: linear-gradient(135deg, #fff4f4 0%, #ffecef 55%, #fff8f2 100%); */
    background: linear-gradient(135deg, #fff7f7 0%, #fff0f2 55%, #fffaf5 100%);
}
.aside-post-box li:hover a {
    font-weight:600
}
/* .aside-post-box li::before {
    content: counter(post-num);
    position: absolute;
    left: 10px;
    top: 50%;
    font-weight: 700;
    color: #111;
    transform: translateY(-50%);
    background: #fff;
    width: 24px;
    height: 24px;
    text-align: center;
    border-radius: 15px;
    line-height: 21px;
    font-size: 12px;
    border:1px solid#f2eaea
} */
.aside-post-box li:last-child {
    border:none
}
.aside-post-box li a {
    position:relative;
    color: #222;
    text-decoration: none;
    display:flex;
    flex-direction: column;
    /* padding-top:25px; */
    /* text-indent:25px; */
}
/* .aside-post-box li a span {
    display:inline-block;
    float:left;
    margin:0;
    font-size:11px;
    background:#fff1f2;
    position:absolute;
    top:0;
    padding:3px 10px;
    border-radius:3px;
    display:none
} */
.aside-cate {
    display: inline-block;
    margin-right: 5px;
    color: #e60012;
    font-size: 12px;
    font-weight: 700;
    display:none
}
.aside-popular ul {
    /* counter-reset: rank; */
}

.aside-popular ul li {
    position: relative;
    /* padding-left: 40px; */
    padding:0;
    font-size:14px;
    background:#fff;
    border:none;
    letter-spacing: -0.23px;
    border-radius:12px;
    /* counter-increment: rank; */
    transition: ease-in-out .3s
}

.aside-popular ul li:hover {
    background: linear-gradient(135deg, #fff7f7 0%, #fff0f2 55%, #fffaf5 100%);
}
.aside-popular ul li:hover a {
    font-weight:600
}
.aside-popular ul li::before {
    /* content: counter(rank); */
    position: absolute;
    left: 10px;
    top: 15px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    border-radius: 50%;
    background: #fff;
    border:1px solid#f2eaea;
    color: #000;
    font-size: 12px;
    font-weight: 700;
    z-index:23
    /* transform: translateY(-50%); */
}
.aside-popular ul li:nth-child(1)::before {
    color:#e60012;
}
.aside-popular ul li:nth-child(2)::before {
    color:#e60012;
}
.aside-popular ul li:nth-child(3)::before {
    color:#e60012;
}
.aside-popular ul li:nth-child(n+4)::before {
    background:#fff;
    color:#888
}
/* 실제 순위 번호 고정 */
.aside-popular ul li:nth-child(1)::before { content: "1"; }
.aside-popular ul li:nth-child(2)::before { content: "2"; }
.aside-popular ul li:nth-child(3)::before { content: "3"; }
.aside-popular ul li:nth-child(4)::before { content: "4"; }
.aside-popular ul li:nth-child(5)::before { content: "5"; }
.aside-popular ul li:nth-child(6)::before { content: "6"; }
.aside-popular ul li:nth-child(7)::before { content: "7"; }
.aside-popular ul li:nth-child(8)::before { content: "8"; }
.aside-popular ul li:nth-child(9)::before { content: "9"; }
.aside-popular ul li:nth-child(10)::before { content: "10"; }

.aside-post-box.aside-latest {

}
/* .aside-post-box.aside-popular ul {
    max-height: 210px;
    overflow-y: hidden;
    padding-right: 4px;
} */
.aside-post-box.aside-latest ul {
    max-height: 310px;
    overflow-y: hidden;
    padding-right: 4px;
}
/* .aside-post-box.aside-popular:hover ul, */
.aside-post-box.aside-latest:hover ul {
    overflow-y: auto;
}
/* .aside-popular ul li, */
.aside-latest ul li {
    display:flex;
    align-items: center;
    height:70px;
    letter-spacing: -0.23px;
    border-radius:12px
}
.aside-latest ul li {
    margin-bottom:10px;
}
/* .aside-popular ul li:hover, */
.aside-latest ul li:hover {
    letter-spacing: -0.23px;
}

.aside-latest ul li a:hover {
    text-decoration: underline;
}

/* .aside-latest .aside-desc,
.aside-recommend .aside-desc {
  display: none;
} */

/* 기본적으로 사이드 본문 요약은 숨김 */
#aside .aside-desc {
  display: none;
}

/* PC 인기글 active에서만 본문 요약 노출 */
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active .aside-desc {
  display: block;
}

.aside-post-box .empty {
    color: #aaa;
}
#bo_sch {
    border:0
}
.aside-post-box.aside-popular ul::-webkit-scrollbar,
.aside-post-box.aside-latest ul::-webkit-scrollbar {
  width: 6px;
}
.aside-post-box.aside-popular ul::-webkit-scrollbar-thumb,
.aside-post-box.aside-latest ul::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
}
.aside-post-box.aside-popular ul::-webkit-scrollbar-thumb,
.aside-post-box.aside-latest ul::-webkit-scrollbar-track {
  background: transparent;
}

/* 자동 롤링 */
/* .aside-post-box.aside-popular ul {
  scroll-behavior: smooth;
} */
.aside-post-box.aside-popular li {
  transition: background-color 0.3s ease;
}
.aside-post-box.aside-popular li a {
  /* display: block; */
  /* padding: 8px 10px; */
}
/* 현재 강조되는 글 */
.aside-post-box.aside-popular li.is-active {
  /* background: #fbf7ff; */
  /* background: linear-gradient(135deg, #f3ecff 0%, #fff0f8 60%, #fff8fb 100%); */
  background: linear-gradient(135deg, #fff4f4 0%, #ffecef 55%, #fff8f2 100%);
  /* border:1px solid #fbe9ec */
}

.aside-post-box.aside-popular li.is-active a {
  color: #d91c24;
  font-weight: 700;
}



/* PC 많이 읽은 글 TOP10 - 2개씩 롤링 */
#aside .aside-post-box.aside-popular.popular-pc-rolling {
  overflow: hidden;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling ul {
  position: relative;
  overflow: hidden;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling li {
  display: none;
  margin-bottom:10px;
  background:#fafafa;
  transform: translate3d(0, 12px, 0);
  opacity: 0;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-visible {
  display: flex;
  opacity: 1;
  transform: translate3d(0, 0, 0);
  animation: popularItemIn 0.55s cubic-bezier(0.19, 1, 0.22, 1) both;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active {
  /* background: #fbf7ff; */
  background: linear-gradient(135deg, #fff4f4 0%, #ffecef 55%, #fff8f2 100%);
}
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active a {
  animation: popularTextUp 0.7s cubic-bezier(0.19, 1, 0.22, 1) both;
}

/* #aside .aside-post-box.aside-popular li.is-active a {
  animation: popularTextUp 0.7s cubic-bezier(0.19, 1, 0.22, 1) both;
} */

@keyframes popularItemIn {
  0% {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes popularTextUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* PC 인기글 롤링 - 제목/본문 구조 */
#aside .aside-post-box.aside-popular.popular-pc-rolling li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  min-width: 0;
  height: 100%;
  text-decoration: none;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling .aside-cate {
  display: none;
}

#aside .aside-post-box.aside-popular.popular-pc-rolling .aside-title {
  display: block;
  font-size: .88rem;
  font-weight: 700;
  color: #222;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 15px 16px;
  border-radius: 12px;
  text-indent: 21px;
}
#aside .aside-post-box.aside-popular.popular-pc-rolling .aside-title:hover {
    text-decoration: underline;
}
#aside .aside-post-box.aside-popular.popular-pc-rolling .aside-desc {
  display: none;
  margin-top: 0;
  font-size: .85rem;
  font-weight: 400;
  line-height: 1.45;
  color: #ff7070;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0;
  height: auto;
  margin: 1rem;
}

/* active 된 글에서만 본문 요약 노출 */
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active .aside-desc {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  animation: popularDescUp 0.75s cubic-bezier(0.19, 1, 0.22, 1) both;
}
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active .aside-title {
    border: 1px solid #e349a7;
    /* background:#fff; */
    border: 1px solid transparent;
    background:
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(135deg, #d91c24 0%, #ff6b6f 45%, #f3969b 100%) border-box;

    color: #d91c24;
    box-shadow:
        0 2px 5px rgba(217, 28, 36, 0.10),
        0 1px 0 rgba(255, 255, 255, 0.9) inset;
}
/* active 된 글은 본문이 들어가니까 높이 조금 키움 */
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-active {
  min-height: 95px;
}

/* active 아닌 글은 제목만 */
#aside .aside-post-box.aside-popular.popular-pc-rolling li.is-visible:not(.is-active) {
  /* min-height: 60px; */
}

@keyframes popularDescUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}








/* webzine */
.webzine-wrap #bo_gall .gall_li {
    border:1px solid #e8ebf7;
    border-radius: 1rem;
}
.webzine-wrap #bo_gall .gall_box {
    margin:0;
}
.webzine-wrap #bo_gall .gall_con {
    display:flex;
    flex-direction: column;
    height:100%;
}

.webzine-wrap #bo_gall .gall_con .gall_con_web {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding:1rem 1rem;
    border-bottom: 1px solid #e8ebf7;
}


.webzine-wrap #bo_gall #gall_ul {
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    margin:0;
    flex-wrap: wrap;
}
.webzine-wrap .gall_row .col-gn-2 {
    width:calc(100% / 2 - 15px);
    margin:0;
    padding:0;
    margin-bottom:30px
}
.webzine-wrap #bo_gall #gall_ul::after {
    display:none
}
.webzine-wrap #bo_gall .gall_img {
    width: 140px;
    height: 90px !important;
    flex: 0 0 140px;
    border:0
}

.webzine-wrap #bo_gall .gall_img a {
    display: block;
    width: 100%;
    height: 100%;
}
.webzine-wrap #bo_gall .gall_img a .no_image {
    width:90px;
    height:90px;
    border-radius:50%;
    overflow: hidden;
    line-height: 90px !important;
    font-size: 12px;
    background: #f0f4f6;
}
.webzine-wrap #bo_gall .gall_img img, 
.webzine-wrap #bo_gall .gall_img video {
    object-fit: cover;
    height:100% !important;
    /* border-radius:50%; */
}
.webzine-wrap #bo_gall .gall_text_href {
    margin:0;
}
.webzine-wrap #bo_gall .gall_text_href a {
    display:flex;
    align-items: center;
    font-size:17px;
    line-height:1.4;
    font-weight:600;
    color:#333;
    letter-spacing: -0.03em;
}
.webzine-wrap #bo_gall .gall_text_href a i {
    position:absolute;
    top:20px;
    right:20px;
    font-size:12px;
    color:#e72665
}
.webzine-wrap #bo_gall .gall_info {
    width:100%;
    height:50px;
    line-height: 50px;
    padding: 0 20px;
    background: #fafbff;
    border-radius: 0 0 1rem 1rem;
    overflow: hidden;
}
.webzine-wrap #bo_gall .bo_tit .new_icon {
    font-size:0.527em;
    position: absolute;
    top: 20px;
    left: 146px;
    border-radius: 8px;
}
.webzine-wrap #bo_gall .bo_cnt {
    padding: 0;
    margin:20px;
    font-size: 14px;
    line-height:1.4;
    color: #758a9e;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 2줄까지만 */
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.writer-signature{
    margin-top:40px;
    padding:20px;
    border-radius:16px 16px 0 0;
    background:#fbfbfb;
    font-size:13px;
    font-weight:600;
    line-height:1.8;
    color:rgba(0 0 0 / 50%);
    border:1px solid #f4f4f4;
}
.writer-profile{
    margin-top:0;
    padding:24px;
    border-radius:0 0 16px 16px;
    background:#fbfbfb;
    border:1px solid #f4f4f4;
    border-top:0;
    font-size:14px;
    line-height:1.7;
    color:rgba(0 0 0 / 55%);
    margin-bottom:30px;
}


/* 넓은 PC 화면에서만 sticky */
@media (min-width: 1400px) and (min-height:880px) {
  #aside {
    position: sticky;
    top: 0;
    max-height: calc(100vh - 20px);
    overflow-y: auto;
  }
  #aside::-webkit-scrollbar {
    width: 6px;
  }
  #aside::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
  }
  #aside::-webkit-scrollbar-track {
    background: transparent;
  }
  .aside-post-box.aside-latest ul {
    max-height:240px
  }
}

/* 모바일 */
@media (max-width: 768px) {
    
}




/* reset */
#gnb #gnb_1dul li:last-child {
    float:right;
}
#gnb .gnb_mnal {
    display:none
}
.cmt_btn span.total::after {
    background:#d91c24
}
.cmt_btn span.total {
    color:#d91c24
}
.bo_v_cate {
    background:#f5fbec;
    color:#A8C918;
}
.tbl_wrap table, .tbl_head01 thead th {
    border:none;
}
.tbl_head01 thead th, .tbl_head01 thead th a {
    color:rgba(0 0 0 / 50%)
}
#bo_v_share .btn {
    visibility: hidden;
}
#bo_v_info {
    border:none !important
}
.more_opt li i {
    margin-left:10px
}
#top_btn:hover {
  border-color: #ff1720;
  background: #ff1720;
}
#bo_list_total {
    margin-left:20px
}
.se2_quote3 {
    padding: 1.2rem !important;
    border-radius: 12px;
    border-color: #fdf0f1 !important;
    background: #fff9f9;
    border-style: solid !important;
    font-weight: bold;
}
.se2_quote4 {
    font-weight:600;
    padding:1.2rem !important;
    border-width:2px !important;
    background:rgba(217, 236, 176, 0.07);
    border-radius:12px
}
.se2_quote5 {
    font-weight: 600;
    padding: 1.2rem !important;
    border-width: 1px !important;
    background: rgba(233, 170, 203, 0.05) !important;
    border-radius: 12px;
    border-color: #ffeaf5 !important;
    border-style: solid !important;
}
/* .se2_quote8 {
    padding:1.2rem !important;
    border-radius:12px;
    border-color: #fdf0f1 !important;
    background: #fff9f9 !important;
    border-width:2px !important;
    font-weight:600;
} */
.se2_quote10 {
    padding:1.2rem !important;
    border-radius:12px;
    background:#fff9fe !important;
    border-color:#f7eefd !important
}
.se2_quote8 {
    position: relative;
    z-index: 0;
    padding: 1.2rem !important;
    border-radius: 12px;
    border: 0 !important;
    background: #fff9f9 !important;
    font-weight: 600;
    overflow: hidden;
}

.se2_quote8::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    border-radius: inherit;
    background: conic-gradient(
        from 0deg,
        #fdf0f1,
        #ffd9dc,
        #f3a0a6,
        #ffd9dc,
        #fdf0f1
    );
    animation: quoteBorderSpin 6s linear infinite reverse;
}

.se2_quote8::after {
    content: "";
    position: absolute;
    inset: 2px;
    z-index: -1;
    border-radius: 10px;
    background: #fff9f9;
}

@keyframes quoteBorderSpin {
    to {
        transform: rotate(360deg);
    }
}

.se2_quote9 {
    padding:1.2rem !important;
    border-radius:12px;

    border-color: #fdf0f1 !important;
    background: #fff9f9;
}
.se2_quote9 p {
    color:rgb(233,125,129) !important;
    font-weight:600;
}




/* gallery */
.youtube-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 20px 0 30px;
    border-radius: 6px;
    overflow: hidden;
    background: #000;
}
.youtube-wrap iframe {
    width: 100%;
    height: 100%;
    display: block;
}
.youtube-thumb-wrap {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.youtube-thumb-wrap::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 54px;
    height: 38px;
    transform: translate(-50%, -50%);
    background: rgba(255, 0, 0, .9);
    border-radius: 12px;
    pointer-events: none;
    transition: .25s;
}
.youtube-thumb-wrap::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-35%, -50%);
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 15px solid #fff;
    z-index: 2;
    pointer-events: none;
}
.youtube-thumb-wrap:hover::after {
    transform: translate(-50%, -50%) scale(1.08);
}
#bo_gall .gall_img {
    border-radius: 7px;
}
#bo_gall .gall_img a {
    display: block;
    width: 100%;
    height: 100%;
}
#bo_gall .gall_img .youtube-thumb-wrap {
    display: block;
    width: 100%;
    height: 100%;
}
#bo_gall .gall_img .youtube-thumb-wrap img.youtube-thumb {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

#bo_v_atc img, #bo_v_atc p img {
    display: block;
    max-width: min(100%, 720px);
    height: auto;
    margin: 24px 0;
}
#bo_gall .gall_img img, #bo_gall .gall_img video {
    width:100%
}
#bo_v_atc img[src*="comic"] {
    max-width: 100%;
}
#bo_v_atc p.comic img {
    max-width:100%
}


/* mobile */
.owl-carousel .owl-item img{
    border-radius:6px
}
.lt {
    margin:15px 0;
    border-radius:10px;
    overflow:hidden;
}
.lt ul {
    border:none
}
.lt ul li {
    border:none
}
.lt .lt_more {
    display:none
}
.lt .lt_title {
    padding:15px 15px 15px
}

#container_title{
    box-shadow:none;
    background: #fafbff;
    /* border: 1px solid #f3f4fd; */
    padding: 2rem 1.5rem;
    border-radius: 16px;
}
#ol_after_hd {
    background:none
}
#ol_after_hd strong {
    color:#000
}
#ol_after_private {
    background:#fff;
    padding:0;
    width:calc(100% - 20px);
    margin:15px auto;
    border-radius:10px;
    border:none;
}
#ol_after_private li {
    border:none
}





#ol_after_hd .btn_admin {
    color:#000;
    background:none;
}
#ol_after_btn a {
    color:#000;
    background:none;
    padding:0;
    margin-right:20px
}
.gnb_2dul {
    padding:1rem 0;
    background:#fbfbfb
}
#hd_nb {
    width: calc(100% - 20px);
    margin: 15px auto;
    border-radius: 10px;
    overflow: hidden;
    border:none
}
#hd_nb .hd_nb1,#hd_nb .hd_nb2,#hd_nb .hd_nb3 {
    border:none
}


#bo_vc, .bo_vc_w {
    background:none
}

.view_is_list {
    border:none;
    margin:0
}





/* 모바일 */
@media (max-width: 768px) {


    
    .main-cate-panel ul {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .main-cate-panel li {
        font-size: 14px;
    } 

    #bo_cate #bo_cate_on {
    color:#d91c24
    }
    #bo_cate #bo_cate_on::after {
        background:#d91c24;
        height:1px
    }
    .bo_cate_link {
        color:#d91c24 !important;
        background:#eaeed7
    }
    #bo_v > header {
        border:none
    }
    #bo_v_info {
        color:#cdcdcd
    }
    .sv_member {
        color:#b8b8b8;
    }
    .lt .lt_date {
        color:#c7c7c7
    }
    .lt ul li:hover a.lt_tit {
        color:#d91c24
    }
    .bo_v_cate {
        background:#f5fbec;
        color:#d91c24;
    }
    
}