@font-face {
  font-family: "RIDIBatang";
  src: url("./images/RIDIBatang.woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
:root {
    --font-family-base: 'RIDIBatang','AppleSDGothicNeo-Regular', "맑은 고딕", "Malgun Gothic", sans-serif;
    --sidebar-lg-size: 0.89rem;
    --lg-blue-base: #0a60e1;
    --lg-light-dark: #3f3f3f;
    font-size: 17px;
    color: #000
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background-color: #f2f2f2
}

body {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overflow-y: scroll;
    font-weight: 400;
    font-family: var(--font-family-base);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1rem;
    line-height: 1.25;
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
figure {
    margin: 0;
    padding: 0
}

header,
footer,
section,
article,
aside,
nav,
hgroup,
details,
menu,
figure,
figcaption {
    display: block
}

button,
input[type=submit],
input[type=reset],
input[type=button] {
    overflow: visible;
    cursor: pointer;
    outline: none !important
}

input[type=text],
input[type=email],
input[type=password],
input[type=submit],
textarea {
    -webkit-appearance: none
}

input,
select,
textarea,
button {
    font-family: var(--font-family-base);
    border-radius: 0
}

button {
    overflow: visible;
    margin: 0;
    padding: 0;
    border: 0;
    background: #fff0
}

ul li {
    list-style: none
}

img,
fieldset {
    border: none;
    vertical-align: top
}

hr {
    display: none
}

a,
a:link {
    text-decoration: none;
    color: #000
}

a:hover,
a:focus {
    color: var(--lg-blue-base)
}

#wrap {
    padding: 0 1.5px
}

#acc-nav {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 0
}

#acc-nav a {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin-left: -1px;
    margin-bottom: -1px;
    text-align: center;
    font-weight: 700;
    font-size: .875rem;
    color: #000;
    white-space: nowrap
}

#acc-nav a:focus,
#acc-nav a:hover,
#acc-nav a:active {
    width: 100%;
    height: auto;
    padding: 10px 0;
    background: #000;
    color: #fff;
    z-index: 1000
}

#header {
    margin-top: 3.3px
}

#header .inner {
    position: relative;
    max-width: 1080px;
    margin: 0 auto;
    background: #fff;
    padding: 6px 0;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

#header .nav-top {
    color: #000;
    font-weight: 600;
    margin-left: 35px
}

.sidebar-2 .nav-top {
    display: none
}

#header ul li {
    list-style: none;
    float: left;
    margin-right: 15px;
    padding: 8px
}

#header .b-title {
    padding-left: 32px;
    font-family: var(--font-family-base);
    font-weight: 800;
    font-size: 1.5rem;
    line-height: 32px;
    letter-spacing: -.2px;
    color: #333
}

#header .b-title a {
    text-decoration: none;
    color: #333;
    vertical-align: top;
    white-space: nowrap; /* 수정 - 모바일 블로그 제목 개행안되도록 */
}

#header .b-title img {
    width: auto;
    height: 32px
}

#header .util {
    display: flex;
    flex-direction: row-reverse;
    gap: 15px;
    margin: 0 20px 0 auto
}

#header .util .search {
    display: flex;
    gap: 10px;
    right: 26px;
    position: relative;
    float: left;
    overflow: hidden;
    width: 32px;
    background-color: #fff;
    box-sizing: border-box;
    transition: width 0.5s;
    -webkit-transition: width 0.5s
}

#header .util .search:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 20;
    width: 32px;
    height: 32px;
    border: 1px solid #eee;
    border-radius: 50%;
    text-indent: -999em;
    background: #fff url(./images/ico_package.png) no-repeat 0 0;
    vertical-align: top;
    box-sizing: border-box;
    outline: none;
    cursor: pointer
}

#header .util .search input {
    width: 32px;
    height: 32px;
    padding: 5px 15px;
    border: 0;
    background-color: #fff0;
    font-size: .875em;
    line-height: 1;
    outline: none;
    box-sizing: border-box
}

#header .util .search input:focus {
    border-color: #484848
}

#header .util .search input::placeholder {
    color: #969696
}

#header .util .search button {
    position: absolute;
    top: 1px;
    right: 1px;
    z-index: 10;
    width: 30px;
    height: 30px;
    text-indent: -999em;
    border: 1px solid #eee;
    border-radius: 50%;
    background: #fff url(./images/ico_package.png) no-repeat -1px -1px;
    vertical-align: top;
    outline: none
}

#header .util .search.on {
    width: 200px
}

#header .util .search.on:before {
    content: none
}

#header .util .search.on input {
    display: block;
    width: 100%;
    border: 1px solid #eee;
    border-radius: 32px
}

#header .util .search.on button {
    border-color: #fff0
}

#header .util .profile {
    position: relative;
    float: left;
    margin-left: 14px
}

#header .util .profile button {
    display: block;
    overflow: hidden;
    width: 32px;
    height: 32px;
    border: 1px solid #eee;
    border-radius: 50%
}

#header .util .profile img {
    width: 100%;
    height: 100%
}

#header .util .profile nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 30;
    width: 96px;
    margin: 0 0 0 -48px;
    padding-top: 12px
}

#header .util .profile ul {
    box-shadow: 1px 1px 3px rgb(0 0 0 / .1)
}

#header .util .profile ul li a {
    display: block;
    margin-top: -1px;
    border: 1px solid #eee;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
    font-size: .875em;
    line-height: 2.3125rem;
    color: #777
}

#header .util .profile ul li a:focus,
#header .util .profile ul li a:hover {
    background-color: #fafafa;
    color: #333
}

#header .util .menu {
    display: none
}

#gnb {
    -ms-overflow-style: none
}

#gnb::-webkit-scrollbar {
    display: none
}

#gnb ul {
    display: flex;
    width: 100% !important
}

#gnb ul li {
    padding: 0 5px
}

#gnb ul li a:hover,
#gnb ul li.current a {
    color: var(--lg-blue-base);
    text-decoration: none
}

#container {
    background-color: #f2f2f2;
    position: relative
}

#container .content-wrap {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0
}

#container .content-wrap:before {
    content: "";
    position: absolute;
    top: 0;
    left: 49.3%;
    z-index: 10;
    width: 0;
    height: 100%;
    margin-left: 255px;
    background-color: #f2f2f2
}

#container .content-wrap:after {
    content: "";
    clear: both;
    display: block;
    height: 0;
    visibility: hidden
}

#content {
    float: left;
    width: 72.3%;
    padding: 2px 0 60px;
    box-sizing: border-box
}

#content>.inner:after {
    content: "";
    clear: both;
    display: block;
    height: 0;
    visibility: hidden
}

#content>div>div.entry-content>div.inner {
    margin-bottom: 50px
}

#aside {
    float: right;
    width: 27%;
    padding: 7px 0 32px;
    box-sizing: border-box;
    top: -6px
}

#aside .close,
#aside .profile {
    display: none
}

#footer {
    padding: 38px 0 28px;
    border-top: 1px solid #eee
}

#footer .inner {
    position: relative;
    max-width: 1080px;
    margin: 0 auto
}

#footer p {
    margin-bottom: 10px;
    font-size: .875em;
    color: #777
}

#footer p a,
#footer p a:hover {
    color: #777
}

#footer .order-menu a {
    display: inline-block;
    margin-bottom: 23px;
    font-size: .8125rem;
    vertical-align: middle;
    color: var(--lg-light-dark);
}

#footer .order-menu a:hover,
#footer .order-menu a:focus {
    color: #333
}

#footer .order-menu a:before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    margin: 0 20px 2px 15px;
    background-color: #d2d2d2;
    vertical-align: middle
}

#footer .order-menu a:first-child::before {
    content: none
}

#footer .page-top {
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    border: 1px solid #eee;
    border-radius: 50%;
    background: #fff url(./images/ico_package.png) no-repeat -100px -200px;
    text-indent: -999em
}

#footer .page-top:focus,
#footer .page-top:hover {
    background-color: #757575;
    background-position-x: -150px
}

#tt-body-index .main-slider {
    display: block
}

#tt-body-index #content {
    padding-bottom: 43px
}

#tt-body-tag .tags {
    margin-top: 0
}

.admin {
    margin: 10px 0
}

.admin a {
    padding: 3px 6px;
    background-color: var(--lg-light-dark);
    border-radius: 3px;
    font-size: 13px;
    color: white !important
}

.main-slider {
    display: none;
    position: relative;
    top: -1px;
    z-index: 20;
    overflow: hidden;
    width: 100%;
    background-color: #cbcbcb
}

.main-slider ul {
    position: relative
}

.main-slider ul li {
    display: table;
    width: 100%;
    height: 340px;
    background-position: 50% 50%;
    background-size: cover
}

.main-slider ul li a {
    display: table;
    width: 100%;
    height: 100%;
    text-decoration: none;
    background-color: rgb(0 0 0 / .15)
}

.main-slider ul li .inner {
    display: table-cell;
    vertical-align: middle
}

.main-slider ul li .box {
    display: block;
    max-width: 910px;
    margin: 0 auto;
    padding: 0 24px 6px
}

.main-slider ul li .text {
    display: block;
    overflow: hidden;
    max-width: 65%;
    text-overflow: ellipsis;
    font-weight: 300;
    font-size: 2.125rem;
    line-height: 1.2352;
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.main-slider ul li .btn {
    display: block;
    width: 118px;
    height: 35px;
    margin-top: 32px;
    border-radius: 35px;
    line-height: 35px;
    background-color: #fff;
    color: var(--lg-light-dark);
}

.main-slider ul li .btn:hover {
    background-color: #04beb8;
    color: #fff
}

.main-slider .prev,
.main-slider .next {
    display: none
}

.main-slider .paging {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 10;
    margin-left: 447px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%)
}

.main-slider .paging button {
    display: block;
    width: 8px;
    height: 8px;
    margin: 10px 0;
    text-indent: -999em;
    border-radius: 50%;
    background-color: rgb(255 255 255 / .4)
}

.main-slider .paging .current {
    background-color: rgb(255 255 255)
}

.cover-thumbnail-2 {
    position: relative;
    overflow: hidden;
    width: 100%
}

.cover-thumbnail-2 h2 {
    margin-bottom: 1px;
    border-bottom: 1px solid #eee;
    font-weight: 500;
    font-size: 1em;
    color: var(--lg-light-dark);
}

.cover-thumbnail-2 ul li {
    overflow: hidden;
    margin: 0 0 7px 0;
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.cover-thumbnail-2 ul li a {
    display: block;
    text-decoration: none
}

.cover-thumbnail-2 ul li a:hover .title,
.cover-thumbnail-2 ul li a:focus .title {
    text-decoration: underline
}

.cover-thumbnail-2 ul li figure {
    float: left;
    width: 168px;
    margin-right: 37px
}

.cover-thumbnail-2 ul li figure img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    box-sizing: border-box
}

.cover-thumbnail-2 ul li .title {
    display: block;
    overflow: hidden;
    max-width: 95%;
    margin-bottom: 20px;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.45rem;
    font-weight: 600;
    color: #2f2f2f;
    line-height: 1.4;
    text-decoration-line: none !important
}

.cover-thumbnail-2 ul li .title:hover {
    color: #085fe1
}

.cover-thumbnail-2 ul li .excerpt {
    display: block;
    overflow: hidden;
    max-width: 95%;
    margin-bottom: 20px;
    text-overflow: ellipsis;
    font-size: .875rem;
    line-height: 1.5rem;
    color: #5f5f5f;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.cover-thumbnail-2 ul li .meta {
    display: block;
    font-size: .83em;
    color: #1a4d9a
}

.cover-thumbnail-2 ul li .meta span:before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    margin: 0 8px 0 5px;
    background-color: #d2d2d2;
    vertical-align: middle
}

.cover-thumbnail-2 ul li .meta span:first-child:before {
    content: none
}

.cover-thumbnail-2 .more {
    display: block;
    width: 100%;
    margin: 28px 0;
    text-align: center;
    font-size: 1.1rem;
    color: #000
}

.post-header {
    padding-top: 4px
}

.post-header h1 {
    margin-bottom: 18px;
    font-size: 1rem;
    line-height: 1.375
}

#tt-body-archive .post-header span:before {
    content: "'"
}

#tt-body-archive .post-header span:after {
    content: "' 에 등록된 글"
}

#tt-body-tag .post-header span:before {
    content: "#"
}

#tt-body-search .post-header span:before {
    content: "'"
}

#tt-body-search .post-header span:after {
    content: "'의 검색결과"
}

.post-header h1 em {
    margin-left: 7px;
    font-style: normal;
    color: #04beb8
}

.post-item {
    float: left;
    width: 31.081081081081081%;
    margin: 0 0 58px 3.378378378378378%
}

.post-item:nth-child(3n+1) {
    clear: both;
    margin-left: 0
}

.post-item .thum {
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    height: 0;
    margin-bottom: 5px;
    padding-bottom: 60.869565217391304%;
    background-color: #f8f8f8
}

.post-item .thum img {
    width: 100%;
    height: auto;
    transform: translateY(-25%);
    -webkit-transform: translateY(-25%);
    -ms-transform: translateY(-25%)
}

.post-item .title {
    width: 95%;
    line-height: 1.4;
    margin-bottom: 20px;
    font-size: 1.33rem;
    font-weight: 600;
}

.post-item .excerpt {
    overflow: hidden;
    max-width: 95%;
    margin-bottom: 15px;
    text-overflow: ellipsis;
    font-size: .8125em;
    line-height: 1.5rem;
    color: #999;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.post-item h2 a {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.post-item .meta {
    display: block;
    font-size: .75em;
    color: #999
}

.post-item .meta span:before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    margin: 0 8px 0 5px;
    background-color: #d2d2d2;
    vertical-align: middle
}

.post-item .meta span:first-child:before {
    content: none
}

.post-item.protected .thum:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 34px;
    height: 47px;
    margin: -24px 0 0 -17px;
    background: url(./images/ico_package.png) no-repeat 0 -120px;
    background-size: 120px auto
}

.not-found {
    display: block;
    padding: 30px;
    margin: 5px 0 7px 0;
}

.not-found li {
    position: relative;
    padding-left: 10px;
    font-size: .9375em;
    line-height: 2
}

.not-found li:before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    width: 2px;
    height: 2px;
    background-color: #999
}

.not-found .tag,
.not-found .category,
.not-found .archive {
    display: none
}

#tt-body-tag .not-found ul,
#tt-body-category .not-found ul,
#tt-body-archive .not-found ul {
    display: none
}

#tt-body-tag .not-found .tag,
#tt-body-category .not-found .category,
#tt-body-archive .not-found .archive {
    display: block
}

.pagination {
    margin: 25px 0;
    text-align: center
}

.pagination a {
    display: inline-block;
    margin: 0 12px;
    font-size: .875em;
    line-height: 1.5rem;
    vertical-align: top;
    color: #999
}

.pagination .selected {
    color: #333
}

.pagination .prev,
.pagination .next {
    width: 22px;
    height: 22px;
    border: 1px solid #eee;
    border-radius: 50%;
    background: url(./images/ico_package.png) no-repeat 0 -50px;
    text-indent: -999em
}

.pagination .next {
    background-position-x: -50px
}

.pagination .view-more {
    display: block;
    margin: 0;
    padding: 12px 0 11px;
    border: 1px solid #eee;
    text-align: center;
    font-size: .875em;
    color: #999
}

div.inner>div.tags {
    margin-bottom: 5px;
    font-size: 0;
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

div.inner>div.tags a {
    color: #fff;
    background-color: #313131;
    border: none
}

div.inner>div.tags a:hover,
div.inner>div.tags a:focus {
    background-color: #04beb8;
    text-decoration-line: none
}

.tags:after {
    content: "";
    clear: both;
    display: block;
    height: 0;
    visibility: hidden
}

.tags h2 {
    margin-bottom: 15px;
    font-weight: 600;
    font-size: 16px
}

.tags a {
    display: inline-block;
    margin: 0 8px 12px 0;
    padding: 0 17px;
    border: 1px solid #eee;
    border-radius: 32px;
    font-size: 14px;
    line-height: 30px;
    vertical-align: middle;
    color: var(--lg-light-dark);
}

.tags a:hover,
.tags a:focus {
    color: #333
}

.page-nav {
    margin: 52px 0 60px 0;
    padding: 23px 0 20px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
}

.page-nav a {
    display: block;
    overflow: hidden;
    padding-left: 58px;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .875em;
    line-height: 2.125rem;
    color: var(--lg-light-dark);
}

.page-nav a:hover,
.page-nav a:focus {
    color: #333
}

.page-nav a strong {
    float: left;
    width: 58px;
    margin-left: -58px;
    font-weight: 400;
    color: #999
}

.page-nav a strong:after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 5px;
    margin: 0 8px;
    background: url(./images/ico_package.png) no-repeat -150px -50px;
    vertical-align: middle
}

.related-articles {
    margin-bottom: 5px;
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.related-articles h2 {
    margin-bottom: 15px;
    font-weight: 600;
    font-size: 1em
}

.related-articles ul {
    display: inline-block;
    width: 101.621621621621622%;
    margin-left: -1.621621621621622%;
    vertical-align: top
}

.related-articles ul li {
    float: left;
    width: 25%;
    padding-left: 1.621621621621622%;
    box-sizing: border-box
}

.related-articles ul li:first-child {
    margin-left: 0
}

.related-articles ul li a {
    color: var(--lg-light-dark);
}

.related-articles ul li a:hover,
.related-articles ul li a:focus {
    color: #333
}

.related-articles ul li figure {
    display: block;
    width: 100%;
    height: 0;
    margin-bottom: 9px;
    padding-bottom: 68.181818181818182%;
    background-color: #f8f8f8
}

.related-articles ul li figure img {
    width: 100%;
    height: auto
}

.related-articles ul li .title {
    max-width: 95%;
    text-overflow: ellipsis;
    font-size: .875em;
    line-height: 1.4;
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.entry-content h1 {
    clear: both;
    margin: 29px 0 22px;
    font-size: 1.65em;
    line-height: 1.4;
}

.entry-content h1 a {
    color: inherit
}

/*
.entry-content h2 {
    clear: both;
    margin: 29px 0 22px;
    font-size: 1.5em;
    font-weight: 900 !important;
    line-height: 1.5;
}
*/
/* .entry-content 내부의 모든 h2에 적용 */
.entry-content h2 {
    clear: both !important;
    margin: 1.15em 0 0.6em 0 !important;
    font-size: 1.5em !important;
    font-weight: 900 !important;
    line-height: 40px !important;
    position: relative !important;
    text-shadow: 0 -1px rgba(0,0,0,0.6) !important;
    background: linear-gradient(to right,#2780bb 50%,#2a2a72) !important;
    border: 1px solid #fff !important;
    padding: 10px 15px !important;
    color: white !important;
    border-radius: 5px !important;
    box-shadow: inset 0 0 5px rgba(53,86,129, 0.5) !important;
}

/*  --> h2 태그 앞에 파란 막대 주석 처리 
.entry-content h2:not(form.protected_form h2)::before {
    display: inline-block;
    content: "";
    width: 6px;
    height: 20px;
    background-color: var(--lg-blue-base);
    border-radius: 8px;
    margin-right: 16px
}
*/

/*
.entry-content h3 {
    clear: both;
    margin: 55px 0 22px;
    font-size: 1.3125em;
    font-weight: 700 !important;
    line-height: 1.5;
}
*/
/* .entry-content 내부의 모든 h3에 적용 */
.entry-content h3 {
    margin: 1.2em 0 0.6em 0 !important;
    font-size: 1.45em !important; /* h2와 비슷한 크기 */
    font-weight: 700 !important;
    color: #2a2a72 !important;
    padding: 12px 15px !important; /* 내부 여백 확대 */
    border-left: 5px solid #2780bb !important;
    background: linear-gradient(to right, rgba(39,128,187,0.1), rgba(42,42,114,0.05)) !important;
    text-shadow: 0 -1px 1px rgba(0,0,0,0.1) !important;
    border-radius: 4px !important; /* 부드러운 느낌 */
}


/*
.entry-content h4 {
    clear: both;
    margin: 29px 0 22px;
    font-weight: 400;
    font-size: 1.125em;
    line-height: 1.5;
}
*/
/* .entry-content 내부의 모든 h4에 적용 */
.entry-content h4 {
    margin: 1em 0 0.5em 0 !important;
    font-size: 1.35em !important;  /* 가독성 있게 증가 */
    font-weight: 600 !important;
    color: #2a2a72 !important;
    border-bottom: 1px dashed #a3c5e8 !important;
    padding-bottom: 6px !important; /* 하단 여백 증가 */
    letter-spacing: 0.3px !important;
}

/* 밑줄 스타일  */
.entry-content u {
    text-decoration: none;
    display: inline;
    background: linear-gradient(to bottom, transparent 85%, hsla(100, 60%, 75%, 0.5) 15%);
    padding: 0 2px;
    color: inherit;
}

.entry-content p {
    word-break: break-all;
    font-size: 20px;   /* 추가 20px */
    line-height: 2.2;  /* 1.7 -> 2.2 (yhm 2024.09.18) */     
}

.entry-content p img {
    max-width: 100%;
    height: auto
}

.entry-content figure {
    margin-top: 8px !important
}

.entry-content hr {
    display: block;
    height: 0;
    border: 0;
    border-bottom: 1px solid #000
}

.entry-content pre {
    word-break: break-all;
    white-space: pre-wrap;
    word-wrap: break-word
}

.entry-content ul {
    list-style: disc;
    margin-bottom: 40px;
    padding: revert
}

.entry-content ul li {
    position: relative;
    margin-bottom: 10px;
    font-size: 20px; /* 17px -> 19px -> 20 px (yhm 2025.04.05)*/
    line-height: 2; /* 1.5714 -> 2 (yhm 2024.09.19)*/
    color: #666;
    list-style: inherit
}

.entry-content ol {
    list-style: decimal inside;
    margin-bottom: 22px
}

.entry-content ol li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 16px;
    font-size: 1.2em; /* 0.9375em -> 1.2em (yhm 2024.09.19)*/
    line-height: 2;     /* 1.5714 -> 2 (yhm 2024.09.19)*/
    color: #666;
    text-indent: -15px;
    list-style: inherit
}

/* OL 하위의 UL 글꼴 크기를 본문(20px)으로 재설정 (2025.07.13) */
.entry-content ol ul li {
  font-size: 20px;      /* 또는 1em */
  line-height: 2;       /* 필요하다면 line-height도 맞춰 주세요 */
}

.entry-content img.alignleft {
    float: left;
    margin: 0 22px 22px 0
}

.entry-content img.aligncenter {
    display: block;
    margin: 0 auto 22px
}

.entry-content img.alignright {
    float: right;
    margin: 0 0 22px 22px
}

.entry-content blockquote {
    margin-bottom: 40px;
    padding: 16px 20px;
    border-left: 4px solid #e6e6e6
}

.entry-content blockquote p {
    margin: 22px 0 0;
    color: #444; /* 수정 -> 약간 연한 어두운 회색(#444) */    
}

.entry-content blockquote p:first-child {
    margin-top: 0
}

/*
.entry-content table {
    width: 100%;
    margin-bottom: 22px;
    border: 1px solid #e6e6e6;
    border-collapse: collapse;
    text-align: center;
    font-size: .9375em;
    line-height: 1.5714;
    color: #222   
}

.entry-content table thead th {
    padding: 7px 0 11px;
    border-left: 1px solid #e6e6e6
}

.entry-content table tbody td {
    padding: 7px 0 11px;
    border-left: 1px solid #e6e6e6;
    border-top: 1px solid #e6e6e6
}
*/

/* --- 테이블  커스텀 스타일 적용 시작 */
.entry-content table {
    width: 100% !important;
    border-collapse: separate !important;      /* 셀 분리 */
    border-spacing: 0 !important;              /* 셀 사이 여백 제거 */
    margin: 25px 0 !important;
    border: 2px solid #999 !important;         /* 확실한 외곽 테두리 */
    border-radius: 6px !important;
    color: #222 !important;
    background-color: #fcfcfc !important;      /* 완전 흰색보다 대비감 살짝 줌 */
}

.entry-content table th,
.entry-content table td {
    padding: 12px 16px !important;
    text-align: center !important;
    border: 1px solid #ccc !important;         /* 셀 구분선 */
}

/* 헤더 */
.entry-content table th {
    background: none !important;
    background-color: #f2f2f2 !important;
    color: #222 !important;
    font-weight: 600 !important;
}

/* 홀짝 줄 배경 */
.entry-content table tbody tr:nth-child(odd) td {
    background-color: #fafafa !important;
}
.entry-content table tbody tr:nth-child(even) td {
    background-color: #ffffff !important;
}
/* --- 테이블  커스텀 스타일 적용 끝 */



.entry-content input {
    height: 36px;
    padding: 0 10px;
    border: 1px solid #e6e6e6;
    font-size: .875em;
    line-height: 1.25;
    color: #666;
    box-sizing: border-box;
    vertical-align: middle
}

.entry-content .protected_form {
    margin-bottom: 40px;
    padding: 120px 0 200px;
    border-bottom: 1px solid #7a583a;
    text-align: center
}

.entry-content .protected_form input {
    width: 200px;
    margin-bottom: 10px;
    vertical-align: top
}

.entry-content .cap1 {
    text-align: center;
    font-size: .875em;
    font-style: italic
}

.entry-content .iframe-wrap {
    position: relative;
    height: 0;
    padding-bottom: 56.25%
}

.entry-content .iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.entry-content .protected_form {
    display: block;
    width: 100%;
    padding: 98px 0 120px;
    text-align: center
}

.entry-content .protected_form h2 {
    margin: 0 0 8px;
    font-weight: 600;
    font-size: 1.625em;
    line-height: 2.125rem;
    color: var(--lg-light-dark);
}

.entry-content .protected_form p {
    margin-bottom: 34px;
    font-weight: 300;
    font-size: 1em;
    line-height: 1.75;
    color: #999
}

.entry-content .protected_form input {
    width: 183px;
    padding: 0 23px;
    border: 1px solid #eee;
    font-size: .9125em;
    line-height: 2.125rem
}

.entry-content .protected_form input:focus {
    border-color: #484848
}

.entry-content .protected_form .btn {
    margin-left: 5px
}

.comments {
    margin-bottom: 25px;
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.comments h2 {
    margin-bottom: 15px;
    font-weight: 600;
    font-size: 1em
}

.comments h2 .count {
    margin-left: 4px;
    color: #04beb8
}

.comment-list {
    margin-bottom: 60px;
    border-top: 1px solid #eee
}

.comment-list ul li {
    display: inline-block;
    width: 100%;
    padding: 32px 0 28px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
    box-sizing: border-box
}

.comment-list .tt_more_preview_comments_wrap {
    padding: 0;
    border: 0
}

.comment-list .tt_more_preview_comments_text {
    display: block;
    margin: -1px 0 0;
    padding: 12px 0 11px;
    border: 1px solid #eee;
    text-align: center;
    font-size: .875em;
    color: #999
}

.comment-list .tt_more_preview_comments_text:hover {
    text-decoration: underline
}

.comment-list ul li .author-meta {
    position: relative;
    margin-bottom: 7px;
    padding: 2px 0 0 60px;
    font-size: .8125em;
    color: #999
}

.comment-list ul li .author-meta a {
    color: #999
}

.comment-list ul li .author-meta a:before,
.comment-list ul li .author-meta span:before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    margin: 0 7px 0 5px;
    background-color: #e3e3e3;
    vertical-align: middle
}

.comment-list ul li .author-meta .nickname {
    font-weight: 700;
    color: var(--lg-light-dark);
}

.comment-list ul li .author-meta .nickname a {
    color: var(--lg-light-dark);
}

.comment-list ul li .author-meta .avatar {
    float: left;
    width: 46px;
    margin: -2px 0 0 -60px;
    border: 1px solid #eee;
    border-radius: 50%
}

.comment-list ul li .author-meta .control {
    position: absolute;
    top: 0;
    right: -9px;
    border-bottom: 0
}

.comment-list ul li .author-meta .control button {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(./images/ico_package.png) no-repeat -141px 5px;
    text-indent: -999em
}

.comment-list ul li .author-meta .control .link {
    display: none;
    position: absolute;
    top: 100%;
    left: -65px;
    width: 70px;
    text-align: center
}

.comment-list ul li .author-meta .control .link a {
    display: block;
    margin-top: -1px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    text-decoration: none;
    font-size: .875em;
    line-height: 1.5rem;
    color: #333
}

.comment-list ul li .author-meta .control .link a:focus,
.comment-list ul li .author-meta .control .link a:hover {
    background-color: #fafafa;
    color: #222
}

.comment-list ul li .author-meta .nickname:before,
.comment-list ul li .author-meta .nickname a:before,
.comment-list ul li .author-meta .control:before,
.comment-list ul li .author-meta .control a:before {
    content: none
}

.comment-list ul li p {
    max-width: 85%;
    padding: 0 0 0 60px;
    font-size: .875em;
    line-height: 1.3125rem;
    color: #777;
    box-sizing: border-box
}

.comment-list ul li .reply {
    display: inline-block;
    margin-top: 10px;
    font-size: .8125rem;
    color: #999
}

.comment-list ul li ul {
    margin: 28px 0 -32px 0;
    padding: 26px 0 21px;
    border-top: 1px solid #eee;
    background-color: #fafafa
}

.comment-list ul li ul li {
    padding: 14px 0 15px 60px;
    border-bottom: 0
}

.comment-list ul li ul li .author-meta {
    margin-bottom: 8px
}

.comment-list ul li ul li .author-meta .control {
    right: 15px
}

.comment-list ul li ul li .author-meta .avatar {
    width: 42px
}

.comment-list ul li ul li p {
    max-width: 80%
}

.comment-list ul li ul .tt_more_preview_comments_wrap {
    display: block
}

.comment-list ul li ul .tt_more_preview_comments_text {
    margin-bottom: 16px;
    border-top: 0;
    border-left: 0;
    border-right: 0
}

.comment-list ul li ul .tt_more_preview_comments_text:first-child {
    margin-top: -24px;
    padding: 12px 0 11px
}

.comment-form {
    position: relative;
    margin-bottom: 10px
}

.comment-form .field {
    overflow: hidden;
    margin-bottom: -1px
}

.comment-form .field input[type=text],
.comment-form .field input[type=password] {
    float: left;
    width: 50%;
    padding: 12px 16px;
    border: 1px solid #eee;
    font-size: .875em;
    color: #777;
    box-sizing: border-box
}

.comment-form .field input:first-child {
    border-right: none
}

.comment-form textarea {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    padding: 16px 100px 16px 16px;
    border: 1px solid #eee;
    font-size: .875em;
    color: #777;
    box-sizing: border-box;
    resize: none
}

.comment-form input::-webkit-input-placeholder,
.comment-form textarea::-webkit-input-placeholder {
    color: #999
}

.comment-form .secret {
    position: absolute;
    left: 0;
    bottom: 8px
}

.comment-form .secret input {
    display: none
}

.comment-form .secret label {
    display: inline-block;
    font-size: .8125em;
    line-height: 1.25rem;
    color: #666;
    outline: none;
    cursor: pointer
}

.comment-form .secret label:before {
    content: "";
    display: inline-block;
    width: 19px;
    height: 18px;
    margin-right: 12px;
    border: 1px solid #e1e1e1;
    vertical-align: top;
    background-color: #fff
}

.comment-form .secret input[type=checkbox]:checked+label:before {
    background: url(./images/ico_package.png) no-repeat -47px 4px
}

.comment-form .submit {
    text-align: right
}

.comment-form .submit button {
    background-color: #333;
    color: #fff
}

.comment-form .submit button:hover,
.comment-form .submit button:focus {
    background-color: #04beb8
}

.back {
    background: #fff;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 10px
}

.lg-content {
    display: block;
}

.lg-toc {
    border: 1px solid #ededed;
    margin-bottom: 45px;
    padding: 20px 30px 10px 30px;
    background-color: #f5f5f5;
    border-radius: 5px
}

.lg-toc ul {
    list-style: none;
    padding: 0 !important;
    margin: 5px 0 12px 0 !important;
}

.lg-toc ul li {
    margin-bottom: 6px;
}

.lg-toc ul ul li {
    padding-left: 20px;
}

.lg-toc a {
    font-size: 1.1rem;  /* 수정 0.93rem -> 1rem */
    text-decoration: none;
    color: #222 !important;
    transition: color 0.3s ease;
}

.lg-toc a:hover {
    color: var(--lg-blue-base) !important;
    font-weight: 600;
}

.lg-toc p {
    clear: both;
    font-weight: 700;
    font-size: 1.2rem;
}

.toc-header {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 10px;
}

.toc-header p {
    margin: 0;
    font-weight: bold;
}

.toc-toggle {
    cursor: pointer;
    user-select: none;
    padding: 0 5px;
    position: relative;
    left: 6px;
    font-size: .8rem;
    transform: rotate(-90deg);
}

.sidebar a:hover {
    color: #085fe1 !important
}

.sidebar h2 {
    margin-bottom: 9px;
    font-size: 17px;
    font-weight: 700;
    color: #000
}

.sidebar .sidebar-1,
.sidebar .sidebar-2,
.sidebar .sidebar-3 {
    margin-bottom: 7px;
    padding: 30px 25px !important
}

.sidebar .sidebar-1>*:not(:last-child) {
    margin-bottom: 25px
}

.sidebar .sidebar-2>*:not(:last-child),
.sidebar .sidebar-3>*:not(:last-child) {
    margin-bottom: 42px
}

.sidebar .sidebar-1 .revenue_unit_wrap,
.sidebar .sidebar-2 .revenue_unit_wrap,
.sidebar .sidebar-3 .revenue_unit_wrap {
    margin-top: 0 !important;
}

.sidebar .sidebar-1>*:last-child:not(.revenue_unit_wrap),
.sidebar .sidebar-2>*:last-child,
.sidebar .sidebar-3>*:last-child {
    margin-bottom: 0
}

.sidebar ul li {
    padding: 4px 0 5px;
}

.sidebar .category ul li ul {
    padding-top: 8px
}

.sidebar .category ul li ul li ul {
    overflow: hidden;
    margin-bottom: -4px;
    padding-top: 6px
}

.sidebar .category ul li ul li ul li {
    position: relative;
    padding: 3px 0 3px 9px;
    font-size: .8125rem
}

.sidebar .category ul li ul li ul li:before {
    content: "";
    position: absolute;
    bottom: 7px;
    left: 0;
    width: 2px;
    height: 100%;
    background-color: #eee
}

.sidebar .category ul li ul li ul li:first-child:before {
    top: 7px;
    bottom: auto
}

.sidebar .category ul li ul li ul li a {
    color: #999
}

.sidebar .notice a,
#side-menu a,
.category_list a {
    font-size: var(--sidebar-lg-size)
}

.sidebar .recent-comment ul li a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: var(--sidebar-lg-size)
}

.sidebar .post-list ul li {
    overflow: hidden;
    margin-bottom: 20px;
    padding: 0
}

.sidebar .post-list ul li:hover {
    text-decoration-line: none !important
}

.sidebar .post-list ul li img {
    border-radius: 10px;
    width: 100%;
    height: auto;
    margin-bottom: 15px
}

.sidebar .post-list ul li a {
    display: block;
    overflow: hidden;
    text-decoration: none !important
}

.sidebar .post-list ul li .title {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-size: var(--sidebar-lg-size) !important;
    line-height: 1.4
}

.sidebar .post-list ul li .date {
    display: block;
    padding: 6px 0 20px;
    font-size: .75rem;
    line-height: 1;
    border-bottom: 1px solid #ebebeb
}

.sidebar .social-list h2 {
    margin-bottom: 18px
}

.sidebar .social-list .tab-list {
    overflow: hidden;
    width: 100%
}

.sidebar .social-list ul li {
    margin-bottom: 15px;
    padding: 0 0 0 48px
}

.sidebar .social-list ul li a {
    display: block;
    text-decoration: none
}

.sidebar .social-list ul li a:hover .text {
    text-decoration: underline
}

.sidebar .social-list ul li .avatar {
    float: left;
    overflow: hidden;
    width: 40px;
    height: 40px;
    margin-left: -48px;
    border-radius: 50%
}

.sidebar .social-list ul li .title {
    display: block
}

.sidebar .social-list ul li .date {
    display: block;
    margin-top: 6px;
    font-size: .75rem;
    color: #777
}

#aside .tags a {
    float: none;
    margin: 0 4px 0 0;
    padding: 0;
    border: 0;
    font-size: .8125em;
    line-height: 2;
    color: var(--lg-light-dark);
}

#aside .tags a:after {
    content: ", "
}

#aside .tags a:last-child:after {
    content: none
}

#aside .tags a:hover,
#aside .tags a:focus {
    color: #333
}

.sidebar .count {
    margin-bottom: 46px
}

.sidebar .count p {
    margin-bottom: 6px;
    font-size: .91em
}

.sidebar .count .total {
    margin: 14px 0;
    font-weight: 700;
    font-size: 1.875em;
    color: var(--lg-light-dark);
}

.sidebar .social-channel {
    margin-bottom: 48px
}

.sidebar .social-channel ul {
    display: flex;
    justify-content: center;
    overflow: hidden;
    width: 100%
}

.sidebar .social-channel ul li {
    float: left;
    margin-left: 10px;
    padding: 0
}

.sidebar .social-channel ul li:first-child {
    margin-left: 0
}

.sidebar .social-channel ul li a {
    display: block;
    width: 34px;
    height: 34px;
    border: 1px solid #eee;
    border-radius: 50%;
    text-indent: -999em;
    background: url(./images/ico_package.png) no-repeat 0 -100px
}

.sidebar .social-channel ul li.youtube a {
    background-position-x: -50px
}

.sidebar .social-channel ul li.instagram a {
    background-position-x: -100px
}

.sidebar .social-channel ul li.twitter a {
    background-position-x: -150px
}

.sidebar .social-channel ul li a:focus,
.sidebar .social-channel ul li a:hover {
    background-color: #757575;
    background-position-y: -150px
}

.sidebar .tab-ui h2 a.current {
    color: #085fe1;
    font-size: 18px;
    font-weight: 700;
    text-decoration-line: none
}

.sidebar .tab-ui h2 a:before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 5px;
    margin: 0 10px;
    vertical-align: middle;
    background: url(./images/ico_package.png) no-repeat -100px -50px
}

.sidebar .tab-ui h2 a:first-child:before {
    content: none
}

#dimmed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 300;
    width: 100%;
    height: 100%;
    background-color: rgb(0 0 0 / 69%)
}

.mobile-menu {
    overflow: hidden;
    height: 100%
}

.slide-wrap {
    overflow: hidden
}

#content .another_category {
    margin: 60px 0 57px !important
}

#content .another_category h4 {
    margin: 0 0 13px !important;
    ;
    padding: 0 !important;
    border-bottom: 0 !important;
    font-size: 1.2em !important;
    color: #000 !important;
    font-weight: 800 !important
}

#content .another_category table {
    margin: 13px 0 0 !important;
    border: 0
}

#content .another_category th {
    padding: 10px 0 !important;
    font-size: 1.1rem !important;
    color: #333 !important;
    border-bottom: 1px solid #f2f2f2
}

#content .another_category th a {
    font-weight: 400;
    color: #333 !important;
    border: 0 !important
}

#content .another_category th a.current {
    font-weight: 700 !important;
    color: #085fe1 !important
}

#content .another_category td {
    display: none;
    padding: 2px 0 !important;
    border: 0;
    font-size: 0.75rem !important
}

.container_postbtn {
    margin: 53px 0 55px;
    padding: 0 !important
}

.absent_post:before {
    content: "죄송합니다만 \A글을 찾지 못했습니다.";
    display: block;
    margin-bottom: 7px;
    font-weight: 700;
    font-size: 1.75em;
    line-height: 1.285714285714286;
    color: var(--lg-light-dark);
    white-space: pre
}

.absent_post {
    padding: 98px 0 !important;
    background: none !important;
    font-weight: normal !important;
    font-size: 1em !important;
    line-height: 1.75;
    color: #999 !important
}

.cnb-ad {
    min-height: 280px;
    margin-bottom: 35px
}

.layout-aside-left #content {
    float: right
}

.layout-aside-left #container .content-wrap:before {
    margin-left: -256px
}

.layout-aside-left #aside {
    float: left;
    margin-left: 0
}

.list-type-vertical .post-item {
    margin-bottom: 38px
}

.list-type-vertical .post-item .thum {
    margin-bottom: 3px;
    padding-bottom: 130.434782608695652%
}

.list-type-vertical .post-item .thum img {
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0)
}

.list-type-vertical .post-item .title {
    margin-bottom: 5px
}

.list-type-vertical .post-item .excerpt,
.list-type-vertical .post-item .meta .comment {
    display: none
}

.list-type-vertical .post-item .meta span:before {
    content: none
}

.list-type-thumbnail .post-header {
    display: none;
    margin-bottom: 28px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eee
}

.list-type-thumbnail .post-header h1 {
    margin-bottom: 0
}

.list-type-thumbnail .post-item {
    float: none;
    overflow: hidden;
    width: auto;
    margin: 7px 0;
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.list-type-thumbnail .post-item:first-child {
    margin: 5px 0 7px
}

.list-type-thumbnail .post-item .thum {
    display: inline;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0
}

.list-type-thumbnail .post-item .thum img {
    float: left;
    width: 156px;
    height: auto;
    margin-right: 30px;
    border-radius: 10px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0)
}

.list-type-thumbnail .post-item.protected .thum {
    float: left;
    width: 168px;
    height: auto;
    margin-left: 57px;
    border: 1px solid #f1f1f1;
    background-color: #f8f8f8
}

.list-type-thumbnail .post-item .excerpt {
    overflow: hidden;
    height: 3.75rem;
    margin-bottom: 20px;
    font-size: .875em;
    line-height: 1.25rem
}

.list-type-thumbnail .post-item .meta .comment {
    display: none
}

.list-type-thumbnail .post-item .meta span:before {
    content: none
}

.list-type-text .post-header {
    margin-bottom: 38px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eee
}

.list-type-text .post-header h1 {
    margin-bottom: 0
}

.list-type-text .post-item {
    float: none;
    overflow: hidden;
    width: 100%;
    margin: 0 0 35px
}

.list-type-text .post-item .thum {
    display: none
}

.list-type-text .post-item .title {
    max-width: 96%;
    margin-bottom: 10px;
    padding-top: 0;
    font-size: 1em
}

.list-type-text .post-item .excerpt {
    max-width: 96%;
    margin-bottom: 20px;
    font-size: .875em;
    line-height: 1.25rem
}

.list-type-text .post-item .meta .comment {
    display: none
}

.list-type-text .post-item .meta span:before {
    content: none
}

.list-type-text .pagination {
    margin-top: 36px
}

@media only screen and (-webkit-min-device-pixel-ratio:1.5) {

    #header .util .search:before,
    #header .util .search button,
    #footer .page-top,
    .page-nav a strong:after,
    .entry-content .protected_form h2:before,
    .comment-list ul li .author-meta .control button,
    .comment-form .secret input[type=checkbox]:checked+label:before,
    .sidebar .social-channel ul li a,
    .sidebar .tab-ui h2 a:before {
        background-image: url(./images/ico_package_2x.png);
        background-size: 200px auto
    }

    .post-item.protected .thum:before {
        background-image: url(./images/ico_package_2x.png);
        background-size: 120px auto
    }
}

@media screen and (max-width:1445px) {
    .menu_toolbar {
        display: none
    }
}

@media screen and (max-width:1080px) {

    #header h1,
    #footer {
        padding-left: 24px;
        padding-right: 24px
    }

    #header .util {
        right: 24px
    }

    #header .util .profile nav {
        left: auto;
        right: 0;
        margin: 0
    }

    #container .content-wrap:before {
        left: 72.7%;
        margin-left: 0
    }

    .layout-aside-left #container .content-wrap:before {
        left: 27.3%;
        margin-left: 0
    }

    .main-slider .paging {
        left: auto;
        right: 20px;
        margin-left: 0
    }
}

.inner .entry-content {
    margin: 5px 0;
    background: #fff;
    padding: 35px 27px 1px 27px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.another_category {
    border: none !important
}

.enter-page {
    font-size: 14px;
    padding: 4px;
    color: #000;
    width: 23%;
    border: 1px solid #c4c4c4;
    border-radius: 5px;
    margin-top: 36px
}

.enter-page:hover {
    color: #fff;
    border: 1px solid #000;
    background-color: #000
}

.inner .revenue_unit_wrap {
    max-width: 100% !important
}

.another_category th {
    line-height: 1.6 !important
}

.bf-breadcrumb .bf-breadcrumb-items {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
    list-style: none;
    font-size: 15px
}

.bf-breadcrumb .bf-breadcrumb-item:not(.bf-breadcrumb-end):after {
    content: '\00BB';
    margin: 0 3px 0 3px;
    color: #929292;
    font-size: 11px;
    align-self: center
}

.bf-breadcrumb .bf-breadcrumb-item a,
.bf-breadcrumb .bf-breadcrumb-item span {
    color: #525252;
    display: inline-block
}

li.bf-breadcrumb-item {
    display: contents;
    font-size: 14px !important
}

.revenue_unit_item adfit {
    height: 0 !important;
    min-height: 90px !important
}

.og-text .google-auto-placed.ap_container {
    display: none !important;
}

figure[data-ke-type='opengraph'] div.og-text {
    background-color: #f3f3f3;
    padding: 30px 30px 0 30px;
    border-radius: 0 5px 5px 0;
    left: 150px
}

figure[data-ke-type='opengraph'] a,
#tt-body-page figure[data-ke-type='opengraph'] a {
    border: none;
    height: 150px
}

figure[data-ke-type='opengraph'] div.og-image {
    width: 150px;
    border-radius: 5px 0 0 5px
}

figure[data-ke-type='opengraph'] div.og-text p.og-title,
#tt-body-page figure[data-ke-type='opengraph'] div.og-text p.og-title {
    font-family: var(--font-family-base);
    font-weight: bold !important;
    margin-bottom: 20px !important
}

figure[data-ke-type='opengraph'] div.og-text p.og-desc,
#tt-body-page figure[data-ke-type='opengraph'] div.og-text p.og-desc {
    color: #464646;
    font-family: var(--font-family-base);
    line-height: 1.4;
    -webkit-line-clamp: 2;
    display: -webkit-box
}

figure[data-ke-type='opengraph'] div.og-text p.og-host,
#tt-body-page figure[data-ke-type='opengraph'] div.og-text p.og-host {
    display: none
}

figure[data-ke-type="video"] {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden
}

figure[data-ke-type="video"] iframe,
figure[data-ke-type="video"] object,
figure[data-ke-type="video"] embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.buy {
    display: inline-block;
    border-radius: 6px;
    background-color: #f4511e;
    border: none;
    color: #FFF;
    text-align: center;
    font-size: 22px;
    padding: 8px;
    transition: all 0.5s;
    cursor: pointer;
    margin: 5px 5px 20px 5px;
    width: 60%
}

.buy span {
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s
}

.buy span:after {
    content: '\00bb';
    position: absolute;
    opacity: 0;
    top: 0;
    right: -20px;
    transition: 0.5s
}

.buy:hover span {
    padding-right: 25px
}

.buy:hover span:after {
    opacity: 1;
    right: 0
}

.product-img {
    columns: 2
}

.meta .author:after {
    content: " \00b7"
}

.link_tit {
    margin-bottom: 7px;
    font-size: 17px;
    font-weight: 700;
    color: #000
}

#content .another_category h4 a {
    color: #1960CA !important
}

.post-item .meta {
    color: #1a4d9a
}

.idx-category:after {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    margin: 0 8px 0 5px;
    background-color: #1a4d9a;
    vertical-align: middle
}

.revenue_unit_wrap.position_list {
    width: auto !important;
    margin: 7px 0 0 !important;
    background: #fff;
    padding: 5px !important;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

div[data-ke-type='moreLess'].open .moreless-content,
#tt-body-page div[data-ke-type='moreLess'].open .moreless-content {
    margin: 15px 0 50px 0;
    background-color: #fafafa;
    border-radius: 5px;
    border: 1.3px dashed #b4b4b4;
    padding: 25px
}

#content>.revenue_unit_wrap {
    margin: 5px 0 0 !important
}

.tt-box-total {
    display: none !important
}

.pre-next {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 5px;
    margin-bottom: 5px
}

.post_np {
    background: #fff;
    padding: 20px 30px;
    border-top: 1px solid #eaeaea;
    border-left: 1px solid #eaeaea;
    box-shadow: 3px 4px 9px .1px #eaeaea;
    border-radius: 11px
}

.post_np a:hover {
    text-decoration-line: none !important;
    color: #085fe1 !important
}

.np_thumb_left {
    float: left;
    border-radius: 6px
}

.np_thumb_right {
    float: right;
    border-radius: 6px
}

.np_desc {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    padding-bottom: 10px
}

.p_title {
    font-size: 16px;
    line-height: 1.5;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.pre-next>div:nth-child(1)>a>div>.p_title {
    text-align: left
}

.pre-next>div:nth-child(2)>a>div>.p_title {
    text-align: right
}

.another_category th span {
    display: none
}

.container_postbtn {
    justify-content: center
}

.container_postbtn .postbtn_like {
    padding: 0 !important;
    border: none !important
}

.container_postbtn .postbtn_like button:hover {
    background-color: #e9e9e9;
    border-radius: 10px
}

.container_postbtn .postbtn_like>div {
    border-radius: 10px;
    background-color: #f5f5f5
}

.container_postbtn .postbtn_like>div:not(.wrap_btn_etc) {
    margin-right: 6px
}

.container_postbtn .postbtn_like>div>button {
    height: 49px;
    padding: 0 18px
}

.container_postbtn .btn_menu_toolbar {
    width: 80px !important;
    height: 49px !important;
    border: 1px solid #f5f5f5 !important;
    border-radius: 10px !important;
    background-color: #f5f5f5 !important;
    padding-top: 2px !important
}

.container_postbtn .btn_menu_toolbar:hover {
    background-color: #e9e9e9 !important;
    border-radius: 10px !important
}

.open-cmt {
    display: block;
    background-color: #f7f7f7;
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 11px
}

.open-cmt span {
    font-weight: 700;
    color: var(--lg-blue-base)
}

.tt-list-reply {
    border-bottom: none !important
}

.tt_box_namecard {
    border-radius: 11px
}

.tt_box_namecard .tt_desc {
    color: var(--lg-light-dark) !important
}

@media screen and (max-width:767px) {
    #header h1 {
        position: relative;
        z-index: 10;
        padding: 24px;
        background-color: #fff
    }

    #header .util {
        top: 0;
        right: 0;
        width: 77%;
        padding: 24px 20px 24px 0;
        box-sizing: border-box
    }

    #header .util,
    #header .util .search.on {
        width: 100%
    }

    #header .util .search {
        float: right
    }

    #header .util .search.on {
        right: 26px;
        z-index: 20;
        width: 60%
    }

    #header .util .search.on input {
        float: right;
        width: 100%
    }

    #header .util .profile {
        display: none
    }

    #header .util .menu {
        position: absolute;
        top: 22px;
        right: 20px;
        display: inline-block;
        width: 30px;
        height: 30px;
        border: 1px solid #eee;
        border-radius: 50%;
        text-indent: -999em;
        outline: none
    }

    #header .b-title {
        padding-left: 20px;
        width: 100%;
        font-size: 1.22rem
    }

    #header .nav-top {
        display: none
    }

    #header .util .menu span,
    #header .util .menu:before,
    #header .util .menu:after,
    #aside .close:before,
    #aside .close:after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 16px;
        height: 1px;
        margin: 0 0 0 -8px;
        background-color: #7f7f7f;
        transition: transform .5s;
        -webkit-transition: transform .5s
    }

    #header .util .menu:before {
        margin-top: -6px
    }

    #header .util .menu:after {
        margin-top: 6px
    }

    #header .inner {
        max-width: 98.6%;
        padding: 0;
        height: 75px;
        box-shadow: 1px 1px 1px .1px #eaeaea
    }

    #gnb {
        height: 69px
    }

    #gnb ul {
        margin-left: 0
    }

    #gnb ul li {
        padding: 0 24px
    }

    #gnb ul li a {
        padding: 25px 0 24px
    }

    #container .content-wrap {
        width: 98.6%;
        padding: 0
    }

    #container .content-wrap:before {
        content: none
    }

    #content {
        float: none;
        width: auto;
        padding: 0 0 30px
    }

    #aside {
        position: fixed !important;
        top: 0;
        right: -278px;
        z-index: 400;
        float: none;
        overflow: auto;
        width: 278px;
        height: 100%;
        padding: 14px 12px 10px;
        background-color: #fff;
        box-sizing: border-box;
        -webkit-transition: left .5s, right .5s;
        transition: left .5s, right .5s
    }

    #aside .close {
        position: absolute;
        top: 18px;
        right: 13px;
        z-index: 300;
        display: inline-block;
        width: 30px;
        height: 30px;
        text-indent: -999em;
        outline: none
    }

    #aside .close span {
        display: none
    }

    #aside .close:before {
        transform: rotate(-45deg)
    }

    #aside .close:after {
        transform: rotate(45deg)
    }

    #aside .profile {
        display: block;
        position: relative;
        margin-bottom: -40px
    }

    #aside .profile:before {
        content: "";
        position: absolute;
        top: 0;
        left: -24px;
        z-index: 0;
        width: 100%;
        height: 100%;
        padding: 0 24px;
        background-color: #f5f5f5
    }

    #aside .profile ul {
        position: relative;
        z-index: 10;
        text-align: center
    }

    #aside .profile ul li {
        display: inline-block;
        padding: 16px 0 18px;
        font-size: .875em;
        color: var(--lg-light-dark);
        vertical-align: middle
    }

    #aside .profile ul li a {
        display: inline-block;
        vertical-align: middle
    }

    #aside .profile ul li:before {
        content: "";
        display: inline-block;
        width: 1px;
        height: 7px;
        margin: 0 20px 0 16px;
        background: url(./images/ico_package_2x.png) -100px -50px;
        background-size: 200px auto;
        vertical-align: middle
    }

    #aside .profile ul li:first-child:before {
        content: none
    }

    #footer {
        padding: 32px 24px 26px
    }

    #footer p {
        margin-bottom: 11px;
        font-size: .8125em;
        text-align: center
    }

    #footer .order-menu {
        margin-bottom: 29px
    }

    #footer .order-menu a {
        display: block;
        margin-bottom: 0;
        line-height: 1.75rem
    }

    #footer .order-menu a:before {
        content: none
    }

    #tt-body-index #content {
        padding: 0
    }

    #tt-body-index #content>.inner:first-child {
        padding-top: 40px
    }

    #tt-body-index.list-type-text #content>.inner:first-child {
        padding-top: 36px
    }

    #tt-body-index .pagination {
        margin: 17px 20px 40px
    }

    #tt-body-page #content {
        padding-left: 0;
        padding-right: 0
    }

    #tt-body-tag .tags,
    #tt-body-guestbook #content {
        padding-left: 0;
        padding-right: 0
    }

    #tt-body-guestbook .post-header {
        margin: 0 24px 28px
    }

    .mobile-menu #aside {
        background-color: #fff0;
        right: 0
    }

    .main-slider ul li {
        height: 400px
    }

    .main-slider ul li .inner {
        padding-bottom: 40px;
        vertical-align: bottom
    }

    .main-slider ul li .text {
        max-width: 100%;
        font-weight: 300;
        font-size: 1.75em;
        line-height: 2.25rem;
        -webkit-line-clamp: 3
    }

    .main-slider ul li .btn {
        margin-top: 15px
    }

    .main-slider .paging {
        top: 40px;
        left: 0;
        right: auto;
        bottom: 20px;
        width: 100%;
        height: 8px;
        padding: 0 19px;
        text-align: left;
        box-sizing: border-box
    }

    .main-slider .paging button {
        display: inline-block;
        margin: 0 5px;
        vertical-align: top
    }

    .cnb-ad {
        min-height: 325px
    }

    .cover-thumbnail-2 {
        width: auto;
        margin: 0
    }

    .cover-thumbnail-2 h2 {
        display: none;
        font-weight: 600
    }

    .cover-thumbnail-2 ul li {
        padding: 17px 18px;
        margin: 0 0 5px 0
    }

    .cover-thumbnail-2 ul li figure {
        width: 98px;
        margin-right: 17px
    }

    .cover-thumbnail-2 ul li .title {
        padding-top: 0;
        font-size: 1.11em;
        color: #000;
        font-weight: 600
    }

    .cover-thumbnail-2 ul li .excerpt {
        margin-bottom: 9px;
        overflow: hidden;
        max-width: 95%;
        text-overflow: ellipsis;
        font-size: .875em;
        line-height: 1.2rem;
        color: #737373;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical
    }

    .cover-list {
        width: auto;
        margin: 0;
        padding: 37px 24px 12px;
        border-top: 8px solid #f5f5f5
    }

    .cover-list h2 {
        margin-bottom: 28px;
        font-weight: 600
    }

    .cover-list .more {
        top: 37px;
        right: 24px
    }

    .cover-list ul li {
        margin-bottom: 26px
    }

    .cover-list ul li .title {
        margin-bottom: 8px;
        font-size: 1em
    }

    .cover-list ul li .excerpt {
        margin-bottom: 9px;
        -webkit-line-clamp: 4
    }

    .cover-event {
        width: auto;
        margin: 0;
        padding: 37px 24px 24px;
        border-top: 8px solid #f5f5f5
    }

    .cover-event h2 {
        font-weight: 600
    }

    .cover-event ul {
        display: block;
        width: auto;
        margin-left: 0
    }

    .cover-event ul li {
        float: none;
        width: auto;
        margin-bottom: 16px;
        padding-left: 0
    }

    .cover-event ul li a {
        padding-bottom: 43.382352941176471%
    }

    .cover-event ul li .title {
        -webkit-line-clamp: 3
    }

    .cover-event ul li .more {
        display: none
    }

    .post-header {
        padding-top: 2px
    }

    .post-item {
        float: none;
        ;
        width: auto !important;
        margin-left: 0;
        margin-bottom: 30px
    }

    .post-item .thum {
        margin-bottom: 7px
    }

    .post-item .title {
        margin-bottom: 12px
    }

    .post-item .excerpt {
        margin-bottom: 12px
    }

    .pagination {
        margin-bottom: 0;
        display: flex;
        justify-content: space-evenly
    }

    .pagination a {
        margin: 0 5px
    }

    .list-type-vertical .post-item {
        margin-bottom: 30px
    }

    .list-type-vertical .post-item .title {
        margin-bottom: 7px
    }

    .list-type-thumbnail .post-item .thum img {
        width: 96px
    }

    .list-type-thumbnail .post-item .title {
        width: 100%;
        margin-bottom: 13px;
        padding-top: 3px;
        font-size: 1.125rem;
        white-space: normal; /* 수정 - 모바일 글목록 제목 안잘리게 */
    }

    .list-type-thumbnail .post-item .excerpt {
        margin-bottom: 11px;
        line-height: 1.3;
        height: 2.2rem;
        -webkit-line-clamp: 2
    }

    .list-type-thumbnail .post-item.protected .thum {
        width: 96px;
        height: 128px;
        margin-left: 25px
    }

    .list-type-text .post-header {
        margin-bottom: 28px
    }

    .list-type-text .post-item {
        margin-bottom: 26px
    }

    .list-type-text .post-item .title {
        margin-bottom: 10px
    }

    .list-type-text .post-item .excerpt {
        margin-bottom: 12px;
        -webkit-line-clamp: 4
    }

    .list-type-text .pagination {
        margin-top: 30px
    }

    .inner .entry-content {
        padding: 35px 17px 1px 17px !important
    }

    .entry-content p {
        line-height: 2.5rem; /* 1.625rem -> 2.5rem (yhm 2024.09.18) */
    }

    .entry-content figure {
        margin-top: 6px !important
    }

    .entry-content .protected_form input {
        width: 163px
    }

    #content .another_category {
        margin: 40px 0 37px !important;
        padding: 0
    }

    .container_postbtn {
        margin: 35px 0 37px
    }

    .tags {
        margin: 5px 0
    }

    .page-nav {
        margin: 32px 24px 32px;
        padding: 25px 0 25px
    }

    .page-nav a {
        line-height: 1.6875rem
    }

    .related-articles {
        margin: 5px 0
    }

    .related-articles h2 {
        margin-bottom: 19px
    }

    .related-articles ul {
        width: 103.571428571428571%;
        margin-left: -3.571428571428571%
    }

    .related-articles ul li {
        width: 50%;
        margin-bottom: 15px;
        padding-left: 3.448275862068966%
    }

    .related-articles ul li figure {
        margin-bottom: 9px
    }

    .related-articles ul li .title {
        height: 2.8em;
        white-space: normal;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden
    }

    .comments {
        margin: 0 0 25px 0
    }

    .comments,
    div.inner>div.tags,
    .post_np,
    .related-articles {
        padding: 20px
    }

    .comments iframe {
        position: absolute;
        bottom: 0;
        left: 0
    }

    .comment-list {
        margin-bottom: 32px;
        border: 0
    }

    .comment-list>ul>.tt_more_preview_comments_wrap {
        margin-top: 21px;
        padding: 0 24px
    }

    .comment-list ul li {
        padding: 34px 0 28px
    }

    .comment-list ul li .author-meta {
        margin-bottom: 6px;
        padding-right: 35px
    }

    .comment-list ul li .author-meta .avatar {
        width: 30px;
        height: 30px;
        margin-left: -42px
    }

    .comment-list ul li .author-meta .nickname {
        font-weight: 400
    }

    .comment-list ul li .author-meta .control {
        top: -2px;
        right: 13px
    }

    .comment-list ul li .author-meta,
    .comment-list ul li p {
        max-width: none;
        padding: 0 66px
    }

    .comment-list ul li ul {
        margin-top: 27px;
        padding: 19px 0 12px
    }

    .comment-list ul li ul li {
        padding: 15px 0 16px
    }

    .comment-list ul li ul li p {
        max-width: none
    }

    .comment-list ul li ul li .author-meta {
        margin-bottom: 6px
    }

    .comment-list ul li ul li .author-meta .avatar {
        width: 30px
    }

    .comment-form {
        margin-bottom: 30px;
        padding: 0 24px
    }

    .comment-form textarea {
        padding-right: 32px
    }

    .comment-form .secret {
        left: 24px
    }

    .layout-aside-left #content {
        float: none
    }

    #tt-body-index.promotion-mobile-hide .main-slider {
        display: none
    }

    #content .another_category th {
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        line-height: 2.2 !important
    }

    .enter-page {
        font-size: 0.82rem !important;
        padding: 3.5px !important;
        width: 23% !important;
        margin-top: 12px !important
    }

    .list-type-thumbnail .post-item .thum img {
        margin-right: 17px
    }

    .list-type-thumbnail .post-item {
        padding: 17px 18px;
        margin: 5px 0 !important
    }

    .product-img {
        columns: 1 !important
    }

    figure[data-ke-type='opengraph'] div.og-text p.og-host,
    #tt-body-page figure[data-ke-type='opengraph'] div.og-text p.og-host {
        display: none
    }

    figure[data-ke-type='opengraph'] a,
    #tt-body-page figure[data-ke-type='opengraph'] a {
        height: 110px
    }

    figure[data-ke-type='opengraph'] div.og-text p.og-title,
    #tt-body-page figure[data-ke-type='opengraph'] div.og-text p.og-title {
        margin-bottom: 13px !important
    }

    #tt-body-index .post-header {
        padding-top: 36px;
        padding-left: 24px
    }

    .sidebar .sidebar-1>*:not(.revenue_unit_wrap) {
        padding: 7px 0
    }

    .sidebar-2 .nav-top {
        display: block;
        margin-bottom: 36px
    }

    .sidebar .sidebar-1,
    .sidebar .sidebar-2,
    .sidebar .sidebar-3 {
        box-shadow: none;
    }

    .entry-content h1 {
        letter-spacing: -1px
    }

    .pre-next {
        grid-template-columns: unset !important
    }

    .post_np:nth-child(1) {
        margin-bottom: 5px
    }

    .nav-top>span {
        font-size: 18px;
        color: #000;
        font-weight: 700
    }

    .revenue_unit_wrap.position_list {
        overflow: hidden !important;
        word-break: break-all !important
    }

    figure[data-ke-type='opengraph'] div.og-image {
        width: 88px
    }
}



/* customer button 스타일 set 2024.09.23 */
/* custom_button_style_3: 주황색 */
.custom_button_style_3 {
  background-color: #e67e22;
  padding: 15px 30px;
  font-size: 22px;
  font-weight: bold;
  width: 70%;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.4);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  color: white !important;
}
.custom_button_style_1:hover {
  background-color: #d35400;
  box-shadow: 0 8px #a84300;
  transform: translateY(-2px);
}

/* custom_button_style_2: 파란색 */
.custom_button_style_2 {
  background-color: #3498db;
  padding: 15px 30px;
  font-size: 22px;
  font-weight: bold;
  width: 70%;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.4);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  color: white !important;
}
.custom_button_style_2:hover {
  background-color: #2980b9;
  box-shadow: 0 8px #21618c;
  transform: translateY(-2px);
}

/* custom_button_style_1: 보라색 */
.custom_button_style_1 {
  background-color: #9b59b6;
  padding: 15px 30px;
  font-size: 22px;
  font-weight: bold;
  width: 70%;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.4);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  color: white !important;
}
.custom_button_style_1:hover {
  background-color: #8e44ad;
  box-shadow: 0 8px #733d85;
  transform: translateY(-2px);
}

/* custom_button_style_4: 초록색 */
.custom_button_style_4 {
  background-color: #1e8449; /* 약간 더 어두운 초록색 */
  padding: 15px 30px;
  font-size: 22px;
  font-weight: bold;
  width: 70%;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.4);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  text-decoration: none;
  text-align: center;
  color: #f0f0f0 !important; /* 연한 회색 폰트 */
}
.custom_button_style_4:hover {
  background-color: #186c39;
  box-shadow: 0 8px #145429;
  transform: translateY(-2px);
}
/* custom_button_style_5: 빨간색 */
.custom_button_style_5 {
  background-color: #e74c3c;
  padding: 15px 30px;
  font-size: 22px;
  font-weight: bold;
  width: 70%;
  box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.4);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  transition: all 0.3s ease;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  color: white !important;
}
.custom_button_style_5:hover {
  background-color: #c0392b;
  box-shadow: 0 8px #962d22;
  transform: translateY(-2px);
}

table td .custom_button_style_1 {
  padding: 0; /* 테이블 안의 버튼은 padding을 0으로 설정 */
  width: 100%; /* 테이블 셀 너비에 맞게 버튼 크기 설정 */
}
table td .custom_button_style_2 {
  padding: 0; /* 테이블 안의 버튼은 padding을 0으로 설정 */
  width: 100%; /* 테이블 셀 너비에 맞게 버튼 크기 설정 */
}
table td .custom_button_style_3 {
  padding: 0; /* 테이블 안의 버튼은 padding을 0으로 설정 */
  width: 100%; /* 테이블 셀 너비에 맞게 버튼 크기 설정 */
}
table td .custom_button_style_4 {
  padding: 0; /* 테이블 안의 버튼은 padding을 0으로 설정 */
  width: 100%; /* 테이블 셀 너비에 맞게 버튼 크기 설정 */
}
table td .custom_button_style_5 {
  padding: 0; /* 테이블 안의 버튼은 padding을 0으로 설정 */
  width: 100%; /* 테이블 셀 너비에 맞게 버튼 크기 설정 */
}


/* 코드블럭 복사 버튼 스타일 시작 */

/* 일반 텍스트 내의 code 태그 스타일 */
html code, body code {
  font-family: "RIDIBatang", Courier, monospace; /* 고정폭 폰트 적용 */
  font-size: 0.95em; /* 폰트 크기를 살짝 줄여 가독성 향상 */
  font-weight: bold; /* 볼드체 적용 */
  color: #333; /* 진한 회색으로 코드 강조 */
  background-color: #f7f7f7; /* 밝은 회색 배경 */
  padding: 2px 4px; /* 텍스트 주변 패딩 */
  border-radius: 4px; /* 테두리를 살짝 둥글게 */
  border: 1px solid #e0e0e0; /* 연한 회색 테두리 */
  word-break: break-all; /* 코드가 길 경우 줄바꿈 */
}

/* 기본 pre 설정 (PC 환경) */
pre {
    position: relative;
    overflow: hidden; /* PC에서는 스크롤바를 숨김 */
    display: block;
    line-height: normal; 
    padding: 0px; /* 코드블럭 padding 20px -> 0px */
    margin-top: 10px;
    margin-bottom: 10px;
    box-sizing: border-box; /* 패딩 포함 */
    width: 100%; /* 코드블럭 너비를 전체로 확장 */
    max-width: 100%; /* 최대 너비를 100%로 제한 */  
    /*white-space: pre-wrap;*/ /* PC 환경에서 줄바꿈 허용 */
    white-space: pre; /* 각 줄이 개행되도록 유지하면서, 줄 내 자동 줄바꿈 방지 */
    word-wrap: break-word; /* 단어가 길 경우 자동으로 줄바꿈 */
}

/* 기본 pre code 설정 (PC 환경) */
pre code {
    line-height: 23px;
    margin: 0;
    font-size: 1.1em; /* 코드블럭 폰트 */
    font-weight: 600;
    letter-spacing: -0.6pt;
    border-radius: 3px;
    /*white-space: pre-wrap;*/ /* PC 환경에서 줄바꿈 허용 */
    white-space: pre; /* 각 줄이 개행되도록 유지하면서, 줄 내 자동 줄바꿈 방지 */
    min-height: 50px;
}

/* 모바일 환경 스타일 */
@media (max-width: 768px) {
  pre {
    overflow-x: auto; /* 모바일에서 수평 스크롤 허용 */
    white-space: pre; /* 줄 내 자동 wrap 방지, 줄바꿈 유지 */
  }
  pre code {
    font-size: 0.95em; /* 모바일에서 폰트 크기를 약간 더 작게 설정 */
    white-space: pre; /* 각 줄이 개행되도록 유지하면서, 줄 내 자동 줄바꿈 방지 */
  }
}

/* 스크롤바 스타일 설정 */
pre::-webkit-scrollbar {
    height: 12px; /* 수평 스크롤바 높이 */
    width: 12px; /* 수직 스크롤바 너비 */
}

pre::-webkit-scrollbar-track {
    background: #555; /* 스크롤바 트랙 배경 색상 (어두운 회색) */
    border-radius: 10px; /* 스크롤바 트랙 모서리 둥글기 */
}

pre::-webkit-scrollbar-thumb {
    background: #f0f0f0; /* 스크롤바 손잡이 색상 (밝은 흰색 계열) */
    border-radius: 10px; /* 스크롤바 손잡이 모서리 둥글기 */
    border: 2px solid #555; /* 손잡이 주변에 트랙과 같은 색 테두리 추가 */
}

pre::-webkit-scrollbar-thumb:hover {
    background: #ffffff; /* 스크롤바 손잡이 hover 시 색상 (완전 흰색) */
    border: 2px solid #666; /* Hover 시 손잡이 테두리 색 변경 */
}


/* 코드가 한 줄일 때 높이를 두 줄만큼 유지 */
pre:only-child {
    min-height: 50px; /* 한 줄일 때 코드 블럭의 최소 높이 */
}

/* 코드블럭 버튼 애니메이션 */
@keyframes copy-btn-ani {
  25% { transform: rotate(0deg) scale(1.05); }
  50% { transform: rotate(0deg) scale(1); }
  75% { transform: rotate(0deg) scale(1.05); }
}

/* 코드블럭 복사 버튼 스타일 */
.copy-btn {
  position: absolute;
  right: 20px; /* 더 안쪽으로 위치 */
  top: 10px; /* 항상 상단에 고정 */
  transform: translateY(0); /* 중앙 정렬 해제 */
  background: #ffcc00; /* 원래 노란색 버튼 배경색 */
  border-radius: 6px; /* 버튼 모서리 둥글기 */
  padding: 4px 12px; /* 크기 축소 */
  color: #1d2f3e; /* 어두운 글자 색 */
  font-weight: 600;
  cursor: pointer;
  opacity: 0.15; /* 기본 투명도 (약간 보이도록 조정) */
  transition: opacity 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

.copy-btn:hover {
  background: #ffd633; /* hover 시 더 밝은 노란색 */
  color: #1d2f3e; /* hover 시 글자 색 유지 */
  opacity: 1; /* hover 시 완전 불투명 */
}

/* 코드블럭 호버 시 버튼 불투명도 높이기 */
pre:hover .copy-btn,
pre .copy-btn:focus {
  opacity: 0.8; /* 평소보다 조금 더 보이게 설정 */
}

/* 기존 코드블럭 애니메이션 및 움직임 제거 */
@keyframes copy-btn-ani {
  /* 애니메이션은 제거된 상태 */
}

/* 툴팁 스타일 */
.tooltipped:after {
  position: absolute;
  z-index: 999999;
  overflow: visible;
  display: block;
  line-height: normal;
  white-space: nowrap;
  margin: 0px;
  font: normal 14px/1.5;
  color: #fff;
  text-align: center;
  pointer-events: none;
  content: attr(aria-label);
  background: #1d2f3e;
  border-radius: 8px;
  padding: 5px;
  -webkit-font-smoothing: subpixel-antialiased;
}

.tooltipped {
  position: absolute; /* 위치 조정 */
  bottom: -30px; /* 원하는 위치 */
  left: 50%; /* 가운데 정렬 */
  transform: translateX(-50%); /* 가운데 정렬 */
  background-color: #1a1a1a; /* 배경색 */
  color: white; /* 글자색 */
  padding: 5px 10px; /* 여백 조절 */
  border-radius: 5px; /* 테두리 둥글기 */
  font-size: 12px; /* 글자 크기 */
  transition: opacity 0.3s ease-in-out; /* 투명도 전환 */
}

.tooltipped-s:after,
.tooltipped-n:after {
  right: 50%;
  transform: translateX(50%);
  color: #f0faff;
  background-color: #1d2f3e;
}

.tooltipped-w:after {
  right: 100%;
  transform: translateY(50%);
}

.tooltipped-e:after {
  left: 100%;
  transform: translateY(50%);
}

/* 불필요한 애니메이션 제거 */
.tooltipped:before {
  display: none;
}

/* 코드블럭 복사 버튼 스타일 종료 */






/* ── OG 카드 애니메이션 & 스타일 강화 start ── */
figure[data-ke-type='opengraph'],
#tt-body-page figure[data-ke-type='opengraph'] {
  position: relative;           /* 번쩍 효과를 위한 기준 */
  overflow: hidden;             /* 빛줄기 바깥 부분 가리기 */
  will-change: transform, box-shadow, border-color;  
  cursor: pointer;              
  border: 2px solid #c3c9ff;    /* ← 기본 테두리 추가 */
  border-radius: 5px;           /* ← 원하시면 조정 */
  transition:
    transform 0.25s ease-out,
    box-shadow 0.25s ease-out,
    border-color 0.25s ease-out; /* ← 테두리 색 전환 속도 */
}

/* 호버 시: 살짝 커지며 떠오르기 */
figure[data-ke-type='opengraph']:hover,
#tt-body-page figure[data-ke-type='opengraph']:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 12px 24px rgba(0,0,0,0.15);
  border-color: #5a63ff;        /* ← 호버 시 진해지는 테두리 색 */
}

/* 클릭(마우스 누름) 시: 반대로 눌린 듯 들어가기 */
figure[data-ke-type='opengraph']:active,
#tt-body-page figure[data-ke-type='opengraph']:active {
  transform: translateY(0px) scale(0.98);
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* ── OG 카드 애니메이션 & 스타일 강화 end ── */

/* ── OG 카드 메탈릭-샤인 효과 ─────────────────────────── */
figure[data-ke-type='opengraph'],
#tt-body-page figure[data-ke-type='opengraph'] {
  position: relative;           /* 번쩍 효과를 위한 기준 */
  overflow: hidden;             /* 빛줄기 바깥 부분 가리기 */
}

/* 빛줄기 정의 */
figure[data-ke-type='opengraph']::after,
#tt-body-page figure[data-ke-type='opengraph']::after {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;                  /* 시작 위치 (왼쪽 밖)  */
  width: 50%;
  height: 100%;
  background: linear-gradient(
      120deg,
      rgba(255,255,255,0) 30%,
      rgba(255,255,255,0.7) 50%,
      rgba(255,255,255,0) 70%
  );
  transform: skewX(-25deg);     /* 사선으로 기울여 메탈 느낌 */
  opacity: 0.9;                 /* 광도 조절 */
  animation: og-shine 4.5s infinite cubic-bezier(.4,0,.2,1);   /* ← 4.5초로 ↑ */
  
  pointer-events: none;         /* 클릭 방해 X */
}

/* 애니메이션 키프레임 */
@keyframes og-shine {
  0%   { left: -150%; }
  60%  { left: 150%; }          /* 카드 끝까지 지나가기 */
  100% { left: 150%; }
}

/* 카드 위로 확실히 올라오도록 z-index만 부여 */
figure[data-ke-type='opengraph']::after,
#tt-body-page figure[data-ke-type='opengraph']::after {
  z-index: 5;    /* 자식들보다 크면 OK. 숫자는 아무거나 ↑ */
}
