@charset "utf-8";
/* 친효스킨 Ver 1.15 */
/* 제작자 : 친절한효자손 */
/* 블로그 : https://rgy0409.tistory.com */
/* e-mail : rgy0409@gmail.com */

:root {
    --mainColor: #555;    /* 메인 색상 */
    --subColor: #E5E5E5;    /* 서브 색생 */
    --mouseHoverColor: #FF5544;    /* 마우스 올렸을 때 변하는 색상 */
    --contentsLocation: right;    /* right: 사이드바 왼쪽, 본문 오른쪽 (기본값) || left: 사이드바 오른쪽, 본문 왼쪽 */
    --containerLocation: auto;    /* none: 블로그 왼쪽정렬 || auto: 블로그 가운데정렬 (기본값) */
}

@font-face {
    font-family: "RIDIBatang";
    font-style: normal;
    font-weight: normal;
    src: url('./images/RIDIBatang.otf');
}


/* =================공통 시작================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font: 17px 'Nanum Gothic', sans-serif;
}

a {
    text-decoration: none;
    color: #404040;
}

li {
    list-style: none;
}

/* 빈 공간 추가 */
.rgy-empty {
    padding: 10px;
}

/*접근성*/
.sr-only {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    clip: rect(0, 0, 0, 0);
}

/*최상단 최하단 빈공간*/
#topEmpty,
#bottomEmpty {
    height: 20px;
}

/* 최상단 최하단 애드센스 넣을 경우 : 0 입력 */
@media (min-width: 768px) {
    #topEmpty,
    #bottomEmpty {
        height: 20px; /* 기본값: 20px */
    }
}
/* =================공통 끝================= */


/* ====== 티스토리 오리지널 클래스값 시작 ====== */
/* 본문 링크 */
.tx-link {
    color: #4271C9;
}

.tx-link:hover {
    color: #FF5544;
}

/* 본문 인용구 스타일 */
.tx-quote-tistory {
    margin-left: 10px;
    border-left: 10px solid #4271C9;
}

.tx-quote-tistory p {
    margin-left: 10px;
}

.tx-quote-tistory p a {
    color: #4271C9;
}

.tx-quote-tistory p a:hover {
    color: #FF5544;
    border-bottom: 1px solid #FF5544;
}

/* 더보기 및 접기 스타일 변경 (구버전) */
.moreless_fold,
.moreless_top,
.moreless_bottom {
    display: block;
    position: relative;
    color: #fff;
    border-radius: 20px;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.2s;
}

.moreless_fold:hover,
.moreless_top:hover,
.moreless_bottom:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

.moreless_fold::before,
.moreless_top::before,
.moreless_bottom::before {
    display: block;
    position: absolute;
    top: 0;
    left: 15px;
    font-size: 20px;
    line-height: 40px;
}

.moreless_fold::before {
    content: "▼"
}

.moreless_top::before,
.moreless_bottom::before {
    content: "▲";
}

.moreless_fold::after,
.moreless_top::after,
.moreless_bottom::after {
    display: block;
    position: absolute;
    top: 0;
    left: 40px;
    line-height: 40px;
}

.moreless_fold::after {
    content: "더 보기"
}

.moreless_top::after,
.moreless_bottom::after {
    content: "접기";
}

.moreless_fold > span,
.moreless_top > span,
.moreless_bottom > span {
    position: relative;
    display: block;
    height: 40px;
    border-radius: 20px;
    text-align: right;
    z-index: 2000;
    opacity: 0;
}

/* 더보기 접기 업데이트 버전 */
.tt_article_useless_p_margin > button.btn_more,
.tt_article_useless_p_margin > div.moreless_content > button.btn_less {
    width: auto;
    height: auto;
    padding: 5px 15px;
    margin: 10px 0;
    border: none;
    border-radius: 20px;
    font-size: 15px;
    line-height: normal;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
    cursor: pointer;
    outline: none;
    transition: all 0.2s;
}

.tt_article_useless_p_margin > div.moreless_content > button.btn_less {
    margin: 20px 0;
    transition: all 0.2s;
}

.tt_article_useless_p_margin > button.btn_more::before,
.tt_article_useless_p_margin > div.moreless_content > button.btn_less::before {
    padding-right: 0;
    margin-right: 5px;
    font-size: 15px;
    line-height: 0;
    vertical-align: baseline;
}

.tt_article_useless_p_margin > button.btn_more:hover,
.tt_article_useless_p_margin > div.moreless_content > button.btn_less:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

.moreless_content {
    padding: 0 20px;
    background-color: #F6F6F6;
}
/* 더보기 및 접기 스타일 변경 끝*/

/* 첨부파일 스타일변경 시작 */
.rgyImg-File > p > span.imageblock > a,
.tt_article_useless_p_margin > p > span.imageblock > a,
.tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a,
.tt_article_useless_p_margin > .rgyImg > .rgyImg-File > p > span.imageblock > a {
    display: inline-block;
    padding: 15px 20px;
    border-radius: 10px;
    font-family: 'NanumGothic';
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    text-transform: uppercase;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.15s;
}

.rgyImg-File > p > span.imageblock > a:hover,
.tt_article_useless_p_margin > p > span.imageblock > a:hover,
.tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a:hover,
.tt_article_useless_p_margin > .rgyImg > .rgyImg-File > p > span.imageblock > a:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

.rgyImg-File > p > span.imageblock > a::before,
.tt_article_useless_p_margin > p > span.imageblock > a::before,
.tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a::before,
.tt_article_useless_p_margin > .rgyImg > .rgyImg-File > p > span.imageblock > a::before {
    display: inline-block;
    margin-right: 10px;
    box-sizing: border-box;
    content: "\f019";
    font-family: FontAwesome;
    font-size: 30px;
    font-weight: normal;
    vertical-align: middle;
}

.rgyImg-File > p > span.imageblock > a img,
.tt_article_useless_p_margin > p > span.imageblock > a img,
.tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a img,
.tt_article_useless_p_margin > .rgyImg > .rgyImg-File > p > span.imageblock::after,
.txc-table img {
    display: none !important;
}
/* 첨부파일 스타일변경 끝 */

/* ========== 새로운 글쓰기 에디터 시작 ========== */
/* 티스토리 본문 이미지 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > figure.imageblock span img {
    margin: 20px 0 0;
    outline: 1px solid #ccc;
}

.tt_article_useless_p_margin > figure.imageblock figcaption {
    padding: 10px;
    outline: 1px solid #ccc;
    text-align: center;
    font-style: italic;
    color: #555;
    word-break: break-word;
    caption-side: bottom;
    background-color: #eee;
}

/* 더보기 및 접기 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > div > a.btn-toggle-moreless {
    padding: 3px 20px;
    border-radius: 20px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.2s;
}

.tt_article_useless_p_margin > div > a.btn-toggle-moreless:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

.tt_article_useless_p_margin > div > div.moreless-content {
    padding: 10px;
    margin: 10px 0;
    background-color: #eee;
}

/* 본문 리스트 스타일 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > ul {
    margin-left: 30px;
}

.tt_article_useless_p_margin > ol {
    margin-left: 30px;
    list-style-type: decimal !important;
}

.tt_article_useless_p_margin > ol > li {
    list-style: inherit !important;
}

/* 본문 인용구1 스타일 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > blockquote[data-ke-style='normal'] {
    border-left: 20px solid #eee;
    padding: 10px 5px;
}

/* 본문 링크 삽입 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > p > a {
    color: #1d67b1;
    font-weight: bold;
}

.tt_article_useless_p_margin > p > a:hover {
    color: #FF5544;
    color: var(--mouseHoverColor);
    text-decoration: underline;
}

/* 본문 맨 아래 공감버튼 관련 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > div.container_postbtn {
    padding: 35px 0 10px;
}

/* 코드블럭 (새로운 글쓰기 에디터)*/
.tt_article_useless_p_margin > pre {
    padding: 10px;
    color: #fff;
    background-color: #333;
    word-break: break-all;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* 첨부파일 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > figure.fileblock {
    position: static;
    margin: 20px 0;
    border: none;
    width: 100%;
    height: 100%;
    font-family: 'NanumGothic';
}

.tt_article_useless_p_margin > figure.fileblock a {
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    display: inline-block;
    height: auto;
    border-radius: 10px;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.2s;
}

.tt_article_useless_p_margin > figure.fileblock a:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

.tt_article_useless_p_margin > figure.fileblock a::after,
#tt-body-page figure.fileblock a::after {
    display: none;
}

.tt_article_useless_p_margin > figure.fileblock a div.image {
    display: none;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc {
    position: static;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc::after {
    background-image: none;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc div.filename {
    height: auto;
    padding: 5px 10px;
    margin: 0;
    color: #fff;
    text-overflow: clip;
    white-space: normal;
    overflow: visible;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc div.filename span.name {
    display: inline-block;
    max-width: 100%;
    height: 100%;
    font-size: 12px;
    font-weight: bold;
    vertical-align: middle;
    text-overflow: clip;
    white-space: nowrap;
    overflow: visible;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc div.filename span.name::before {
    margin-right: 10px;
    content: "\f019";
    font-family: "FontAwesome";
    font-size: 17px;
    font-weight: normal;
    color: #fff;
    vertical-align: middle;
}

.tt_article_useless_p_margin > figure.fileblock a div.desc div.size {
    height: auto;
    margin-top: -5px;
    border-radius: 0 0 10px 10px;
    font-size: 11px;
    color: #fff;
    text-align: center;
    background-color: #555;
    background-color: var(--mainColor);
    filter: brightness(0.8);
    -webkit-filter: brightness(0.8);
    -moz-filter: brightness(0.8);
    -ms-filter: brightness(0.8);
    -o-filter: brightness(0.8);
    transition: all 0.2s;
}

.tt_article_useless_p_margin > figure.fileblock a:hover div.desc div.size {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
    filter: brightness(0.8);
    -webkit-filter: brightness(0.8);
    -moz-filter: brightness(0.8);
    -ms-filter: brightness(0.8);
    -o-filter: brightness(0.8);
}
/* ========== 새로운 글쓰기 에디터 끝 ========== */
/* ======== 티스토리 오리지널 클래스값 끝 ======== */


/* ============= 친효애드온 시작 ============= */
/* 친효애드온: 커스텀 DIV박스 */
.rgyBG {
    padding: 10px 15px;
    border-radius: 10px;
    color: #eee;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
}

/* 검정 DIV박스 */
.rgyBG-Black {
    background-color: #333;
}

/* 빨강 DIV박스 */
.rgyBG-Red {
    background-color: #FF5544;
}

/* 파랑 DIV박스 */
.rgyBG-Blue {
    background-color: #007AAE;
}

/* 친효애드온 : 사이드바 배지 시작 */
.rgyBadge {
    display: inline-block;
    margin-left: 5px;
    width: 8px;
    height: 8px;
    line-height: 8px;
    border-radius: 50%;
    background-color: #FF5544;    /* 배지 색상 */
    transition: all 0.2s;
}

#sidebar aside .rgy-sidebar-title li a:hover .rgyBadge,
#sidebar aside .rgy-sidebar-content li a:hover .rgyBadge,
#sidebar aside .rgy-sidebar-content-recommend li a:hover .rgyBadge {
    transform: scale(1.35);
    -webkit-transform: scale(1.35);
}
/* 사이드바 배지 끝 */

/* 친효애드온: 형광펜모드 - 본문 글씨 두껍게 스타일 시작 */
.tt_article_useless_p_margin > p > b {
    padding: 2px 5px;
    border-radius: 3px;
    font-weight: normal; /*폰트 굵기 해제*/
    color: rgba(0, 0, 0, 0.8); /*폰트 색상*/
    background-color: rgba(80, 255, 0, 0.3); /*형광펜 - 백그라운드 색상*/
}
/* 형광펜모드 - 본문 글씨 두껍게 끝 */

/* 친효애드온 : TOP버튼 시작 */
#topBtn {
    display: none;
    position: fixed;
    right: 0;
    bottom: 80px;
    transform: scale(0.7);
    -webkit-transform: scale(0.7);
    transform-origin: right bottom;
    -webkit-transform-origin: right bottom;
}

#topBtn ul li {
    position: relative;
    width: 50px;
    height: 50px;
    margin: 5px;
    font-size: 25px;
    line-height: 50px;
    text-align: center;
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#topBtn ul li:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

#topBtn ul li:hover .topBtn-exp {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
}

#topBtn ul li a {
    display: block;
    color: #fff;
}

#topBtn ul li a.rgyTop {
    font-size: 33px;
    cursor: pointer;
}

#topBtn ul li div.topBtn-exp {
    position: absolute;
    right: 50px;
    top: 3.5px;
    width: 100px;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    transform-origin: right;
    -webkit-transform-origin: right;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#topBtn ul li > div .topBtn-exp1 {
    position: absolute;
    width: 90px;
    border-radius: 5px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

#topBtn ul li > div .topBtn-exp2 {
    position: absolute;
    top: 50%;
    right: 0;
    width: 0;
    height: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 15px solid #555;
    border-left: 15px solid var(--mainColor);
}
/* TOP버튼 끝 */

/* 친효애드온 : 본문 중간 수동 링크 */
.rgyLink a {
    display: block;
    padding: 5px 0;
    margin: 5px 10px;
    font-family: 'NanumGothic';
    font-size: 17px;
    color: #2775a5;
    text-decoration: none;
}

.rgyLink a:hover {
    color: #333;
    background: -moz-linear-gradient(left, rgba(221, 221, 221, 0.65) 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(221, 221, 221, 0.65) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgba(221, 221, 221, 0.65) 0%, rgba(255, 255, 255, 0) 100%);
}

.rgyLink a::before {
    content: "\f0da";
    font-family: "FontAwesome";
    margin: 0 10px;
}
/* 본문 중간 수동 링크 끝 */

/* 친효애드온 : TIP박스 */
.rgyInfo {
    position: relative;
    border: 3px solid #FF5544;
    border-radius: 10px;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 20px;
    font-family: 'NanumGothic';
    text-align: justify;
}

.rgyInfo .rgyInfo-circle {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    line-height: 50px;
}

.rgyInfo .rgyInfo-circle > div {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    box-sizing: border-box;
    text-align: center;
}

.rgyInfo .rgyInfo-circle .topDiv {
    font-size: 18px;
    color: #fff;
    z-index: 10;
    background-color: #FF5544;
}

.rgyInfo .rgyInfo-circle .bottomDiv {
    z-index: 9;
    border: 5px solid #FF5544;
    animation: rgyAni01 1s infinite;
}

.rgyInfo .rgyInfo-circle .bottomDiv2 {
    z-index: 8;
    border: 5px solid #FF5544;
    animation: rgyAni01 1s 0.25s infinite;
}

@keyframes rgyAni01 {
    0% {
        transform: scale(1, 1);
        opacity: 1;
    }

    100% {
        border: 0.5px solid white;
        transform: scale(1.5, 1.5);
        opacity: 0;
    }
}

.rgyInfo .rgyInfo-text {
    display: table;
    min-height: 70px;
    margin-left: 80px;
    margin-right: 5px;
}

.rgyInfo .rgyInfo-text p {
    display: table-cell;
    vertical-align: middle;
    font-size: 15px;
    line-height: 1.4;
}

.rgyInfo .rgyInfo-text p::before {
    font-family: "FontAwesome";
    content: "\f105";
    margin-right: 5px;
    margin-left: 2px;
}
/*TIP박스 끝*/

/* 친효애드온 : 엑셀표 스타일 */
#rgyTable {
    width: 100%;
    margin: 0 auto;
    border-collapse: collapse;
    border: 2px solid black;
    text-align: center;
}

#rgyTable tr,
#rgyTable th,
#rgyTable td {
    border: 1px solid black;
    padding: 5px;
}

#rgyTable tr:nth-child(2n+1) {
    background: #ffff9f;
}

#rgyTable th {
    border-bottom: 2px solid black;
    font-size: 20px;
    background: yellow;
}
/* 엑셀표 스타일 끝 */

/* 친효애드온 : 관련글 모듈 마크1 시작 */
.rgyTextBox {
    overflow: hidden;
    padding: 10px;
    box-shadow: 0 0 5px 0 #888;
}

.rgyTextBox > p {
    overflow: hidden;
    width: 100%;
    background: -moz-linear-gradient(left, rgba(255, 0, 0, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(255, 0, 0, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(255, 0, 0, 1) 0%, rgba(255, 255, 255, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fFF554400', endColorstr='#00ffffff', GradientType=1);
    /* IE6-9 */
}

.rgyTextBox > p a {
    display: block;
    width: 100%;
    height: auto;
    padding: 5px;
    color: #555;
    transform-origin: right;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transition: all 0.12s;
    -webkit-transition: all 0.12s;
    -moz-transition: all 0.12s;
    -ms-transition: all 0.12s;
    -o-transition: all 0.12s;
    background-color: #F6F6F6;
}

.rgyTextBox > p a::before {
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: normal;
    margin-right: 10px;
    color: #222;
    opacity: 1;
    transition: all 0.12s;
    -webkit-transition: all 0.12s;
    -moz-transition: all 0.12s;
    -ms-transition: all 0.12s;
    -o-transition: all 0.12s;
}

.rgyTextBox > p:hover a {
    box-sizing: border-box;
    font-weight: bold;
    color: #222;
    transform: scaleX(0.97);
    -webkit-transform: scaleX(0.97);
    -moz-transform: scaleX(0.97);
    -o-transform: scaleX(0.97);
    -ms-transform: scaleX(0.97);
    background-color: #ddd;
}

.rgyTextBox > p:hover a::before {
    opacity: 0;
}
/* 관련글 모듈 마크1 끝 */

/* 친효애드온 : 관련글 모듈 마크2 시작 */
.rgyTextBox2 {
    padding: 10px;
    border: 1px solid #eee;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    z-index: 5;
    font-family: 'NanumGothic';
}

.rgyTextBox2 > p {
    position: relative;
    width: 100%;
    padding: 2px 0;
    background-color: #F6F6F6;
    z-index: 10;
}

.rgyTextBox2 > p::after {
    content: " ";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform-origin: left;
    -webkit-transform-origin: left;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    z-index: 15;
}

.rgyTextBox2 > p:hover::after {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
}

.rgyTextBox2 > p > a {
    position: relative;
    display: block;
    width: 100%;
    padding: 3px;
    color: #222;    /*글씨 색상*/
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    z-index: 20;
}

.rgyTextBox2 > p > a::before {
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: normal;
    margin-right: 10px;
    margin-left: 3px;
    color: #222;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    z-index: 20;
}

.rgyTextBox2 > p:hover > a,
.rgyTextBox2 > p:hover > a::before {
    color: #fff;
}
/* 관련글 모듈 마크2 끝 */
/* ============= 친효애드온 끝 ============= */


/* =========== 애드센스 관련 시작 =========== */
#topAdss {
    display: none;
}

@media (min-width: 1200px) {
    #topAdss {
        display: block !important;
    }
}

#topAdss,
#bottomAdss {
    max-width: calc(1200px - 40px); /* 본문 가로 크기 변경 시, 1200px 부분도 똑같이 수정할 것 */
    margin: 20px auto;
    padding: 0 20px;
}

@media (min-width: 1200px) {
    #topAdss,
    #bottomAdss {
        padding: 0;
    }
}
/* =========== 애드센스 관련 끝 =========== */


/* =========== 인덱스 페이지 시작 =========== */
.index-list-content {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    margin: 0 20px 20px;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
}

.index-list-content:hover {
    border: 1px solid #FF5544;
    border: 1px solid var(--mouseHoverColor);
}

.index-list-content .index-list-content-inner {
    padding: 10px;
    /*flex 정렬*/
    display: flex;
    align-items: center;
}

.index-list-content .index-list-content-inner::after {
    content: "";
    display: block;
    clear: both;
}

.index-list-content .index-list-content-inner .index-inner-left {
    display: block;
}

.index-list-content .index-list-content-inner .index-inner-left .rgy-index-img {
    position: absolute;
    z-index: 9;
}

.index-list-content .index-list-content-inner .index-inner-left .rgy-index-img2 {
    position: relative;
}

.index-list-content .index-list-content-inner .index-inner-left .rgy-index-img,
.index-list-content .index-list-content-inner .index-inner-left .rgy-index-img2 {
    float: left;
    width: 120px;
    height: 120px;
    margin-right: 15px;
    outline: 1px solid #ccc;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    filter: contrast(0.9);
    -webkit-filter: contrast(0.9);
}

.index-list-content:hover .rgy-index-img,
.index-list-content:hover .rgy-index-img2 {
    filter: contrast(1) !important;
    -webkit-filter: contrast(1) !important;
}

.index-list-content .index-list-content-inner .index-inner-right {
    float: right;
    width: calc(100% - 135px);
    padding-top: 5px;
    padding-bottom: 5px;
}

.index-list-content .index-list-content-inner .index-inner-right a.link_post {
    display: inline-block;
}

.index-list-content .index-list-content-inner .index-inner-right a.link_post h3.tit_post {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    word-wrap: break-word;
    font-size: 15px;
    color: #254b80;
}

.index-list-content .index-list-content-inner .index-inner-right a.link_post p.txt_post {
    display: none;
}

.index-list-content .index-list-content-inner .index-inner-right .detail_info {
    padding-top: 10px;
    font-size: 10px;
}

.index-list-content .index-list-content-inner .index-inner-right .detail_info i {
    margin-right: 5px;
    vertical-align: middle;
}

.index-list-content .index-list-content-inner .index-inner-right .detail_info a.link_cate {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 5px;
    color: #555;
}

.index-list-content .index-list-content-inner .index-inner-right .detail_info span.txt_bar {
    display: inline-block;
    color: #aaa;
}

.index-list-content .rgy-index-more {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 0;
    height: 0;
    border-left: 40px solid transparent;
    border-bottom: 30px solid #555;
    border-bottom: 30px solid var(--mainColor);
    color: #fff;
}

.index-list-content:hover .rgy-index-more {
    border-left: 40px solid transparent;
    border-bottom: 30px solid #FF5544;
    border-bottom: 30px solid var(--mouseHoverColor);
}

.index-list-content .rgy-index-more i {
    position: absolute;
    right: 5px;
    bottom: -27px;
    font-size: 12px;
    color: #fff;
}

/* 인덱스 페이지 인피드 애드센스 */
.rgy-index-infeedAdsense {
    margin: 0 20px 20px;
}
/* =========== 인덱스 페이지 끝 =========== */


/* ============= 페이징 시작 ============= */
#contents .paging-wrap {
    display: block;
    width: 100%;
    min-height: 20px;
    margin: 20px 0;
    text-align: center;
}

#contents .paging-wrap .paging {
    display: inline-block;
    margin: 0;
    font-size: 13px;
}

#contents .paging-wrap .paging > a {
    color: #555;
    color: var(--mainColor);
}

#contents .paging-wrap .paging .numbox .num {
    padding: 0 5px;
    color: #555;
    color: var(--mainColor);
}

#contents .paging-wrap .paging .numbox .num .selected {
    margin: 0 -5px;
    padding: 0 5px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}
/* ============= 페이징 끝 ============= */


/* ============= 헤더 시작 ============= */
header {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    border-bottom: 1px solid #fff;
    z-index: 10;
    background-color: #555;
    background-color: var(--mainColor);
}

header .blog-title {
    width: 50%;
    margin-left: 10px;
    font-size: 0.5em;
    line-height: 60px;
}

header .blog-title h1 {
    color: #fff;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

header .blog-title a {
    color: #fff;
}

header .mobile-category {
    position: absolute;
    top: 50%;
    right: 55px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

header .mobile-category a {
    display: block;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
}

header .mobile-btn {
    position: absolute;
    display: block;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    font-size: 35px;
    color: #fff;
    cursor: pointer;
}

header .menu {
    display: none;
    z-index: 5;
    width: 100%;
    background-color: #555;
    background-color: var(--mainColor);
}

header .menu::after {
    content: "";
    display: block;
    clear: both;
}

header .menu .search {
    padding: 10px;
    text-align: center;
    border-bottom: 1px solid #fff;
}

header .menu .search input {
    border: 0;
    vertical-align: middle;
    background-color: #fff;
}

header .menu .search input:focus {
    outline: none;
}

header .menu .search input[type="text"] {
    width: 80%;
    height: 30px;
    padding: 5px;
    border-radius: 5px;
    font-size: 15px;
}

header .menu .search i {
    margin-left: 3px;
    font-size: 25px;
    color: #fff;
    vertical-align: middle;
    cursor: pointer;
}

header .menu .button {
    padding: 10px;
}

header .menu .button::after {
    content: "";
    display: block;
    clear: both;
}

header .menu .button ul {
    text-align: center;
}

header .menu .button ul li {
    display: inline-block;
    width: 15%;
}

header .menu .button a {
    display: block;
    padding: 5px;
    font-size: 20px;
    color: #fff;
    text-align: center;
    border-radius: 10px;
}

header .menu .button a:hover {
    border-radius: 10px;
    color: #555;
    color: var(--mainColor);
    background-color: #fff;
}
/* ============= 헤더 끝 ============= */


/* ====== 콘테이너: 본문+사이드바 시작 ====== */
#container {
    margin-top: 0;
}

#container::after {
    content: "";
    display: block;
    clear: both;
}

/* ========== 본문 콘텐츠 시작 ========== */
/* 보호글 */
#contents .entryProtected {
    text-align: center;
}

#contents .entryProtected h2 {
    padding: 10px;
    font-size: 20px;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
}

#contents .entryProtected span.date {
    display: block;
    padding: 5px;
    font-size: 12px;
    color: #777;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
    border-bottom: 1px solid #E5E5E5;
    border-bottom: 1px solid var(--subColor);
}

#contents .entryProtected span.date::before {
    content: "\f017";
    font-family: "Font Awesome 5 Free";
    margin-right: 3px;
    font-weight: 500;
    font-size: 10px;
    vertical-align: middle;
}

#contents .entryProtected p.entryProtected_txt {
    padding: 20px;
    color: #FF5544;
}

#contents .entryProtected p.entryProtected_btn {
    padding: 0 20px 20px;
    color: #555;
    color: var(--mainColor);
    border-bottom: 1px solid #E5E5E5;
    border-bottom: 1px solid var(--subColor);
}

#contents .entryProtected p.entryProtected_btn label {
    font-size: 12px;
    vertical-align: middle;
}

#contents .entryProtected p.entryProtected_btn input:focus {
    outline: none;
}

#contents .entryProtected p.entryProtected_btn input.entryProtected_password {
    width: 150px;
    height: 25px;
    padding: 5px;
    border: 1px solid #aaa;
    border-radius: 5px;
    vertical-align: middle;
}

#contents .entryProtected p.entryProtected_btn input.entryProtected_submit {
    width: 40px;
    height: 25px;
    border: 1px solid #aaa;
    border-radius: 5px;
    font-size: 12px;
    vertical-align: middle;
    background-color: #E5E5E5;
}

/* 검색결과 */
#contents .searchList {
    padding: 7px 0;
    margin-bottom: 20px;
    border-top: 1px solid #555;
    border-top: 1px solid var(--subColor);
    border-bottom: 1px solid #555;
    border-bottom: 1px solid var(--subColor);
    text-align: center;
    color: #888;
}

#contents .searchList h3 {
    font-size: 1em !important;
}

#contents .searchList span {
    color: #222;
}

/*공지사항 글*/
#contents .entryNotice .titleWrap .date {
    display: block;
    padding: 10px 0;
    font-size: 12px;
    color: #777;
}

#contents .entryNotice .titleWrap .date::before {
    content: "\f017";
    font-family: "Font Awesome 5 Free";
    font-weight: 500;
    font-size: 10px;
    vertical-align: middle;
}

/* 본문 타이틀 상단 */
#contents {
    width: 100%;
}

#contents .titleWrap {
    text-align: center;
}

/* 본문 타이틀 제목 */
#contents .titleWrap h2 {
    padding: 20px 10px;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
    border-bottom: 1px solid #E5E5E5;
    border-bottom: 1px solid var(--subColor);
    font-size: 20px;
}

#contents .titleWrap .into_titlewrap {
    width: 100%;
    color: #888;
}

/* 본문 타이틀 카테고리 + 작성날짜 */
#contents .titleWrap .into_titlewrap > div {
    display: inline-block;
    padding: 10px 5px;
    font-size: 12px;
}

#contents .titleWrap .into_titlewrap > div i {
    margin-right: 5px;
    vertical-align: middle;
}

#contents .titleWrap .into_titlewrap .category a,
#contents .titleWrap .into_titlewrap .date {
    color: #777;
}

/* 본문 타이틀 관리자 메뉴 (수정/공개/비공개/관련글/삭제) */
#contents .titleWrap .into_titlewrap .admin {
    display: block;
    width: 100%;
    padding: 10px 0;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
    color: #333;
}

#contents .titleWrap .into_titlewrap .admin a {
    display: inline-block;
    color: #FF5544;
}

#contents .titleWrap .into_titlewrap .admin a:not(:first-child)::before {
    content: "|";
    padding-right: 5px;
}

/* 진짜본문 (article_rep_desc) */
#contents .article {
    font-family: "RIDIBatang";
    padding: 20px;
    line-height: 1.6em;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
}

#contents .article h1,
#contents .article h2,
#contents .article h3,
#contents .article h4,
#contents .article h5,
#contents .article h6 {
    padding: 2px 5px;
    margin: 20px 0;
    border-bottom: 3px solid #555;
    border-left: 15px solid #555;
    color: #555;
    line-height: 1.2;
}

#contents .article h1 {
    font-size: 1.5em;
}

#contents .article h2 {
    font-size: 1.3em;
}

#contents .article h3 {
    font-size: 1.1em;
}

#contents .article h4 {
    font-size: 0.9em;
}

#contents .article h5 {
    font-size: 0.7em;
}

#contents .article h6 {
    font-size: 0.5em;
}

/* 본문 이미지 스타일 */
#contents .article span.imageblock {
    margin: 20px 0 7px;
}

#contents .article span.imageblock img {
    display: block;
    padding: 0;
    margin: 0;
    outline: 1px solid #ccc;
}

#contents .article span.imageblock .cap1 {
    padding: 10px;
    margin-bottom: 10px;
    font-style: italic;
    font-size: 14px;
    color: #555;
    outline: 1px solid #ccc;
    background-color: #eee;
}

#contents .article-bottom {
    margin: 0 20px;
}

#contents .article .another_category {
    font: 15px 'Nanum Gothic', sans-serif;
}

#contents .article .another_category h4 {
    border-left: none;
    font-size: 17px;
}

/* 태그 시작 */
#contents .tagTrail {
    padding: 10px;
    margin: 20px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
}

#contents .tagTrail .tagText {
    font-weight: bold;
    font-size: 13px;
    color: #555;
}

#contents .tagTrail a {
    padding: 5px;
    font-size: 12px;
    color: #888;
}

#contents .tagTrail a::before {
    content: "#";
}
/* 태그 끝 */

/* ====== 친효애드온: 본문 공유 모듈 시작 ====== */
#contents .rgyShare {
    margin: 20px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

#contents .rgyShare h3 {
    padding: 10px;
    font-size: 13px;
    font-weight: normal;
    color: #333;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    background-color: #E5E5E5;
    background-color: var(--subColor);
}

#contents .rgyShare .rgyShare-inner {
    padding: 10px;
    text-align: center;
}

#contents .rgyShare .rgyShare-inner > a {
    display: inline-block;
    width: 30px;
    margin: 0 5px;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#contents .rgyShare .rgyShare-inner > a:hover {
    filter: brightness(1.2);
    -webkit-filter: brightness(1.2);
}

#contents .rgyShare .rgyShare-inner > a > img {
    width: 100%;
}
/* ====== 본문 공유 모듈 끝 ====== */

/* ============= 본문관련글 시작 ============= */
#contents .area_related {
    padding: 10px;
    margin: 20px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
}

#contents .area_related .tit_related {
    display: block;
    padding: 0 10px 5px;
    border-bottom: 1px solid #E5E5E5;
    border-bottom: 1px solid var(--subColor);
    font-weight: bold;
    font-size: 13px;
    color: #555;
}

#contents .area_related .list_related {
    display: block;
    margin-top: 10px;
}

#contents .area_related .list_related li a.link_related {
    position: relative;
    display: block;
    margin: 15px 0;
    padding: 10px;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
}

#contents .area_related .list_related li a.link_related:last-child {
    margin-bottom: 5px;
}

#contents .area_related .list_related li a.link_related:hover {
    border: 1px solid #FF5544;
    border: 1px solid var(--mouseHoverColor);
}

#contents .area_related .list_related li a.link_related:hover .link-more {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

#contents .area_related .list_related li a.link_related::after {
    content: "";
    display: block;
    clear: both;
}

#contents .area_related .list_related li a.link_related .link-related-left {
    float: left;
    margin-right: 10px;
}

#contents .area_related .list_related li a.link_related span.thumb_related .thumb-related-img {
    width: 80px;
    height: 80px;
    outline: 1px solid #E5E5E5;
    outline: 1px solid var(--subColor);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

#contents .area_related .list_related li a.link_related .link-related-right {
    width: 100%;
    padding: 10px 0;
}

#contents .area_related .list_related li a.link_related .link-related-right .txt_related {
    display: block;
    font-size: 12px;
    font-weight: bold;
}

#contents .area_related .list_related li a.link_related .link-related-right .date_related {
    display: block;
    font-size: 10px;
    padding: 5px 0;
    color: #aaa;
}

#contents .area_related .list_related li a.link_related .link-related-right .date_related .fa-clock {
    font-size: 10px;
    margin-right: 5px;
    vertical-align: middle;
}

#contents .area_related .list_related li a.link_related .link-more {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 5px;
    font-size: 10px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}
/* ============= 본문관련글 끝 ============= */

/* ============= 댓글 시작 ============= */
/* 댓글 갯수 */
#contents .re-count {
    margin: 30px 0 20px;
}

#contents .re-count span a {
    padding: 10px;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#contents .re-count span a:hover {
    color: #fff;
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

/* 댓글 남기기 */
#contents .comment {
    display: block;
    padding: 10px;
    margin: 10px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
}

#contents .comment h3 {
    display: block;
    padding: 10px 0;
    font-weight: bold;
    font-size: 13px;
    color: #555;
}

#contents .comment .commentWrite .re3-options p {
    margin-bottom: 5px;
}

#contents .comment .commentWrite .re3-options p input {
    padding: 5px;
    border: 1px solid #777;
    border-radius: 5px;
    color: #777;
}

#contents .comment .commentWrite .re3-options p input:focus {
    outline: none;
}

#contents .comment .commentWrite p.secretWrap {
    padding: 5px 0 10px;
    font-size: 11px;
    color: #333;
}

#contents .comment .commentWrite p.secretWrap .checkbox {
    vertical-align: middle;
}

#contents .comment .commentWrite textarea {
    width: 100%;
    min-height: 50px;
}

#contents .comment .commentWrite .reBtn {
    display: block;
    padding: 10px;
    border: none;
    margin-left: auto;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
    cursor: pointer;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#contents .comment .commentWrite .reBtn:hover {
    color: #fff;
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

/* 댓글 리스트 */
#contents .commentList .rgy-reply {
    display: flex;
    flex-direction: column-reverse;
    -webkit-flex-direction: column-reverse;
}

#contents .commentList .rgy-reply > li {
    margin: 10px 0;
}

#contents .commentList .rgy-rewrite-window {
    padding: 10px 10px 20px;
    margin: 10px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
    background-color: #FAFAFA;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-window-top::after {
    content: "";
    display: block;
    clear: both;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-img {
    float: left;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-img .re-image {
    width: 60px;
    height: 60px;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info {
    float: left;
    margin-left: 10px;
    margin-top: 10px;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-name {
    font-size: 15px;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-name img,
#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-name a,
#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-name span {
    vertical-align: middle;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-date {
    display: block;
    margin-top: 5px;
    font-size: 11px;
    color: #777;
    vertical-align: middle;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-date::before {
    content: "\f017";
    font-family: "Font Awesome 5 Free";
    font-weight: 500;
    font-size: 10px;
    vertical-align: middle;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-date a {
    margin-left: 10px;
    color: #FF5544;
}

#contents .commentList .rgy-rewrite-window .rgy-rewrite-info .re-name img {
    display: none;
}

#contents .commentList .rgy-rewrite-window p {
    padding: 5px 0;
    font-size: 15px;
    line-height: 25px;
}

#contents .commentList .rgy-rewrite-window .re-control {
    display: block;
}

#contents .commentList .rgy-rewrite-window .re-control::after {
    content: "";
    display: block;
    clear: both;
}

#contents .commentList .rgy-rewrite-window .re-control .re-btn {
    float: right;
    margin-top: 10px;
}

#contents .commentList .rgy-rewrite-window .re-control .re-btn a {
    padding: 10px;
    border-radius: 5px;
    font-size: 13px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

#contents .commentList .rgy-rewrite-window .re-control .re-btn a:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

#contents .commentList .rgy-rewrite-window .re-control .re-btn a.write {
    margin-left: 10px;
}

/* 댓글에 대한 답글 리스트 */
#contents .commentList .rgy-rewrite-window2 {
    position: relative;
    padding-left: 50px;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
    background-color: #FFF;
}

#contents .commentList .rgy-rewrite-window2 .rgy-div-re-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-bottom: 50px solid transparent;
    border-left: 50px solid #555;
    border-left: 50px solid var(--mainColor);
}

#contents .commentList .rgy-rewrite-window2 .rgy-div-re-icon i {
    position: absolute;
    top: 5px;
    left: -43px;
    color: #fff;
    font-size: 20px;
}

/* 이전 댓글 더 보기 시작 */
#contents .commentList .tt_more_preview_comments_wrap {
    margin: 20px;
}

#contents .commentList .tt_more_preview_comments_wrap .tt_more_preview_comments_text {
    padding: 10px 20px;
    border-radius: 20px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#contents .commentList .tt_more_preview_comments_wrap .tt_more_preview_comments_text:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}
/* 이전 댓글 더 보기 끝 */
/* ============= 댓글 끝 ============= */


/* ============= 방명록 시작 ============= */
/* 방명록 알림 */
.rgy-guest-info {
    padding: 20px;
    margin-bottom: 20px;
    font-size: 13px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

/* 방명록 남기기 시작 */
#contents .guest {
    padding: 10px;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
}

#contents .guest .guest-title {
    padding-bottom: 7px;
    margin-bottom: 20px;
    border-bottom: 1px solid #555;
    border-bottom: 1px solid var(--subColor);
    text-align: center;
}

#contents .guest h3 {
    padding: 5px;
    font-weight: bold;
    font-size: 17px;
    color: #333;
}

#contents .guest .guestList > ol > li:not(:last-child) {
    margin-bottom: 25px;
}

#contents .guest .guestWrite .guest3-options div {
    margin-bottom: 10px;
}

#contents .guest .guestWrite .guest3-options div input {
    width: 200px;
    padding: 5px;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
    border-radius: 5px;
}

#contents .guest .guestWrite .guest3-options div input:focus {
    outline: none;
}

#contents .guest .guestWrite .rgy-guestbook-secret {
    margin: 5px 0;
}

#contents .guest .guestWrite textarea {
    width: 100%;
    min-height: 50px;
}

#contents .guest .guestWrite .guestBtn {
    display: block;
    padding: 10px;
    border: none;
    margin-left: auto;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
    cursor: pointer;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
}

#contents .guest .guestWrite .guestBtn:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

/* 방명록 리스트 */
#contents .guestList .rgy-rewrite-window {
    padding: 10px 10px 20px;
    margin: 10px 0;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
    background-color: #FAFAFA;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-window-top {
    margin-bottom: 10px;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-window-top::after {
    content: "";
    display: block;
    clear: both;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info {
    margin: 10px;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .name img {
    width: 60px;
    height: 60px;
    vertical-align: middle;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .name a {
    margin-left: 5px;
    font-size: 17px;
    color: #224ea2;
    vertical-align: middle;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .name span {
    vertical-align: middle;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .date {
    margin-left: 10px;
    font-size: 11px;
    color: #777;
    vertical-align: middle;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .date::before {
    content: "\f017";
    font-family: "Font Awesome 5 Free";
    font-weight: 500;
    vertical-align: middle;
}

#contents .guestList .rgy-rewrite-window .rgy-rewrite-info .date a {
    margin-left: 10px;
    color: #FF5544;
}

#contents .guestList .rgy-rewrite-window p {
    padding: 5px 0;
    font-size: 15px;
    line-height: 25px;
}

#contents .guestList .rgy-rewrite-window .re-control {
    display: block;
}

#contents .guestList .rgy-rewrite-window .re-control::after {
    content: "";
    display: block;
    clear: both;
}

#contents .guestList .rgy-rewrite-window .re-control .re-btn {
    float: right;
    margin-top: 10px;
}

#contents .guestList .rgy-rewrite-window .re-control .re-btn a {
    padding: 10px;
    border-radius: 5px;
    font-size: 13px;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

#contents .guestList .rgy-rewrite-window .re-control .re-btn a.write {
    margin-left: 10px;
}

#contents .guestList .rgy-rewrite-window .re-control .re-btn a:hover {
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
}

/* 방명록에 대한 답글 리스트 */
#contents .guestList .rgy-rewrite-window2 {
    position: relative;
    padding-left: 50px;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
    background-color: #FFF;
}

#contents .guestList .rgy-rewrite-window2 .rgy-div-re-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-bottom: 50px solid transparent;
    border-left: 50px solid #555;
    border-left: 50px solid var(--mainColor);
}

#contents .guestList .rgy-rewrite-window2 .rgy-div-re-icon i {
    position: absolute;
    top: 5px;
    left: -45px;
    color: #fff;
}
/* ============= 방명록 끝 ============= */
/* ============ 본문 콘텐츠 끝 ============ */


/* ============ 사이드바 시작 ============ */
#sidebar {
    padding: 0 20px;
}

#sidebar > aside > div:not(:last-child) {
    margin-bottom: 20px;
}

/* 사이드바 모듈 제목 */
#sidebar aside .rgy-sidebar-title {
    width: 100%;
    border: 1px solid #555;
    border: 1px solid var(--mainColor);
}

#sidebar aside .rgy-sidebar-title > h3 {
    padding: 5px;
    font-size: 15px;
    font-weight: normal;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

/* 사이드바 모듈 내용 */
#sidebar aside .rgy-sidebar-content ul,
#sidebar aside .rgy-sidebar-content-recommend ul {
    padding: 5px;
}

#sidebar aside .rgy-sidebar-content li,
#sidebar aside .rgy-sidebar-content-recommend li {
    font-size: 14px;
    padding: 5px;
    margin: 5px 0;
}

#sidebar aside .rgy-sidebar-content li a {
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

#sidebar aside .rgy-sidebar-content li a:hover,
#sidebar aside .rgy-sidebar-content-recommend li a:hover {
    color: #FF5544;
    color: var(--mouseHoverColor);
}

#sidebar aside .rgy-sidebar-content li a::before,
#sidebar aside .rgy-sidebar-content-recommend li a::before {
    content: "\f105";
    font-family: "FontAwesome";
    margin-right: 5px;
}

/* 추천글 모듈 내용 */
#sidebar aside .rgy-sidebar-content-recomand li a {
    display: block;
    vertical-align: middle;
}

/* 블로그정보 */
#sidebar aside .blogInfo li img {
    width: 100%;
}

#sidebar aside .blogInfo li.blogInfo-text {
    padding-top: 15px;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
}

#sidebar aside .blogInfo li.blogInfo-text p:first-child {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #172f7c;
}

#sidebar aside .blogInfo li.blogInfo-text p:last-child {
    padding-top: 5px;
}

/* 글보관함 */
#sidebar aside .archive li .archive-date {
    padding-right: 5px;
}

/* 태그클라우드 */
#sidebar aside .tagbox ul {
    padding: 5px;
}

#sidebar aside .tagbox li {
    display: inline-block;
    font-size: 14px;
    padding: 3px;
}

#sidebar aside .tagbox li a::before {
    content: "#";
}

#sidebar aside .tagbox li a:hover {
    color: #FF5544;
    color: var(--mouseHoverColor);
}

/* 달력 */
#sidebar aside .calendar .calendar-inner {
    padding: 5px;
}

#sidebar aside .calendar .calendar-inner .tt-calendar {
    width: 100%;
    padding: 5px;
    border-collapse: collapse;
    font-size: 14px;
    text-align: center;
}

#sidebar aside .calendar .calendar-inner .cal_month {
    padding: 5px 0 10px;
    margin: 0;
    font-size: 17px;
    text-align: center;
}

#sidebar aside .calendar .calendar-inner .cal_month a:nth-child(2) {
    font-weight: bold;
}

#sidebar aside .calendar .calendar-inner .tt-calendar thead tr th.cal_week1,
#sidebar aside .calendar .calendar-inner .tt-calendar thead tr th.cal_week2 {
    padding: 5px 0;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
    border-bottom: 1px solid #E5E5E5;
    border-bottom: 1px solid var(--subColor);
}

#sidebar aside .calendar .calendar-inner .tt-calendar tbody tr.cal_week td {
    padding: 3px;
    color: #999;
}

#sidebar aside .calendar .calendar-inner .tt-calendar tbody tr.cal_week td a.cal_click {
    color: #000;
    font-weight: bold;
}

/* 카운터 */
#sidebar aside .counter li.rgy-counter-list::before {
    content: "\f105";
    font-family: "FontAwesome";
    margin-right: 5px;
}

#sidebar aside .counter li.rgy-counter-list .total {
    font-weight: bold;
}

/* ============ 카테고리 시작 ============ */
/* 카테고리 새글 표시 */
.rgy-category-new {
    padding: 1px 4px;
    border-radius: 50%;
    color: #fff;
    background-color: #FF5544;
}

#sidebar aside .aside_category .tt_category {
    padding: 3px;
    font-size: 14px;
}

#sidebar aside .aside_category .tt_category .link_tit {
    position: relative;
    display: block;
    font-weight: bold;
    padding: 5px 5px 7px;
}

#sidebar aside .aside_category .tt_category .sub_category_list {
    margin-bottom: 5px;
}

/* 대메뉴 */
#sidebar aside .aside_category .tt_category .category_list .link_item {
    position: relative;
    display: block;
    padding: 8px 5px 5px;
    border-top: 1px solid #E5E5E5;
    border-top: 1px solid var(--subColor);
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

#sidebar aside .aside_category .tt_category .category_list .link_item::before {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    margin-right: 5px;
    font-weight: 900;
    font-size: 16px;
}

/* 소메뉴 */
#sidebar aside .aside_category .tt_category .sub_category_list .link_sub_item {
    position: relative;
    display: block;
    padding: 5px 2px;
    margin-left: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

#sidebar aside .aside_category .tt_category .sub_category_list li .link_sub_item::before {
    content: "\f105";
    font-family: "FontAwesome";
    margin-right: 5px;
}

#sidebar aside .aside_category .tt_category .c_cnt {
    display: inline-block;
    position: absolute;
    right: 0;
    margin-right: 5px;
    font-weight: normal;
}

#sidebar aside .aside_category .tt_category a:hover {
    color: #FF5544;
    color: var(--mouseHoverColor);
}
/* ============ 카테고리 끝 ============ */
/* ============ 사이드바 끝 ============ */
/* ======= 콘테이너: 본문+사이드바 끝 ======= */


/* ============= 푸터 시작 ============= */
footer #footer {
    text-align: center;
    color: #fff;
    background-color: #555;
    background-color: var(--mainColor);
}

footer #footer p {
    font-size: 12px;
}

footer #footer p.copyright {
    padding: 17px 0 5px;
}

footer #footer p.designby {
    padding-bottom: 15px;
}

footer #footer p a {
    color: #ff0;
}
/* ============= 푸터 끝 ============= */


/* ======== 반응형 미디어 쿼리 시작 ======== */
@media (min-width:420px) {
    .index-list-content .index-list-content-inner .index-inner-right a.link_post h3.tit_post {
        font-size: 17px;
    }

    .index-list-content .index-list-content-inner .index-inner-right a.link_post p.txt_post {
        display: block;
        margin: 15px 0;
        font-size: 13px;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        word-wrap: break-word;
        line-height: 1.2;
        height: 2.4em;
    }

    .index-list-content .index-list-content-inner .index-inner-right .detail_info {
        padding: 0;
        font-size: 12px;
    }
    
    header .menu .search {
        float: left;
        width: 40%;
        text-align: left;
        border-bottom: none;
    }

    header .menu .search input[type="text"] {
        width: 70%;
    }

    header .menu .button {
        float: right;
        width: 60%;
    }

    header .menu .button ul {
        float: right;
        width: 240px;
    }

    header .menu .button ul li {
        float: left;
        width: 40px;
    }
}

@media (min-width:500px) {
    #contents .area_related .list_related li a.link_related .link-related-left {
        margin-right: 15px;
    }

    #contents .area_related .list_related li a.link_related span.thumb_related .thumb-related-img {
        width: 100px;
        height: 100px;
    }

    #contents .area_related .list_related li a.link_related .link-related-right .txt_related {
        font-size: 17px;
    }

    #contents .area_related .list_related li a.link_related .link-related-right .date_related {
        font-size: 12px;
        padding: 15px 0;
    }

    #contents .area_related .list_related li a.link_related .link-more {
        position: absolute;
        right: 0;
        bottom: 0;
        padding: 10px;
        font-size: 12px;
    }
}

@media (min-width:600px) {
    #contents .rgyShare .rgyShare-inner > a {
        width: 40px;
    }

    #contents .rgyShare .rgyShare-inner > a > span {
        font-size: 12px;
    }
}

@media (min-width:768px) {
    .tt_article_useless_p_margin > figure.fileblock a div.desc div.filename {
        padding: 15px 20px;
    }
    
    .tt_article_useless_p_margin > figure.fileblock a div.desc div.filename span.name {
        font-size: 20px;
    }
    
    .tt_article_useless_p_margin > figure.fileblock a div.desc div.filename span.name::before {
        font-size: 30px;
    }
    
    .tt_article_useless_p_margin > figure.fileblock a div.desc div.size {
        font-size: 13px;
    }
    
    .index-list-content .index-inner-right {
        padding: 10px 0;
    }

    .index-list-content .rgy-index-more {
        border-left: 60px solid transparent;
        border-bottom: 50px solid #555;
        border-bottom: 50px solid var(--mainColor);
    }

    .index-list-content:hover .rgy-index-more {
        border-left: 60px solid transparent;
        border-bottom: 50px solid #FF5544;
        border-bottom: 50px solid var(--mouseHoverColor);
    }

    .index-list-content .rgy-index-more i {
        right: 10px;
        bottom: -45px;
        font-size: 15px;
    }
    
    header .blog-title {
        margin-left: 20px;
        font-size: 0.7em;
    }
    
    #contents {
        margin-top: 0;
    }

    #contents .rgyShare .rgyShare-inner > a {
        margin: 0 10px;
    }

    #contents .paging-wrap .paging {
        font-size: 17px;
    }
}

@media (min-width:1000px) {
    header .mobile-category,
    header .mobile-btn {
        display: none;
    }

    header .menu {
        position: absolute;
        display: block !important;
        top: 0;
        right: 20px;
        height: 60px;
        border-bottom: 1px solid #fff;
        width: 470px;
    }

    header .menu .search {
        width: 200px;
        padding: 14px 0;
        text-align: left;
    }

    header .menu .search input[type="text"] {
        width: 160px;
    }

    header .menu .button {
        width: 270px;
        padding: 14px 0;
    }

    #container {
        max-width: 1200px; /* 본문 가로 크기 */
        margin-right: auto;
        margin-left: auto;
        margin-left: var(--containerLocation);
    }

    #contents {
        float: right;
        float: var(--contentsLocation);
        width: calc(100% - 300px);
    }

    #contents .article-bottom {
        margin: 0 10px;
    }

    #contents .rgyShare .rgyShare-inner > a {
        width: 50px;
        margin: 0 15px;
    }

    #sidebar {
        float: left;
        width: 300px;
    }
    
    #topBtn {
        right: 10px;
        transform: scale(1);
        -webkit-transform: scale(1);
    }
}

@media (min-width:1100px) {
    #contents {
        width: calc(100% - 320px);
    }
    
    #sidebar {
        width: 320px;
    }
}

@media (min-width:1200px) {
    #contents {
        width: calc(100% - 340px);
    }
    
    #contents .article-bottom {
        margin: 0;
    }
    
    #sidebar {
        width: 340px;
    }
}
/* ======== 반응형 미디어 쿼리 끝 ======== */


/* 친효스킨 Ver 1.15 */
/* 제작자 : 친절한효자손 */
/* 블로그 : https://rgy0409.tistory.com */
/* e-mail : rgy0409@gmail.com */

    .btn{
      text-decoration: none;
      font-size:2rem;
      color:white;
      padding:10px 20px 10px 20px;
      margin:20px;
      display:inline-block;
      border-radius: 10px;
      transition:all 0.1s;
      text-shadow: 0px -2px rgba(0, 0, 0, 0.44);
      font-family: 'Lobster', cursive;
    }
    .btn:active{
      transform: translateY(3px);
    }
    .btn.blue{
      background-color: #1f75d9;
      border-bottom:5px solid #165195;
    }
    .btn.blue:active{
      border-bottom:2px solid #165195;
    }
    .btn.red{
      background-color: #ff521e;
      border-bottom:5px solid #c1370e;
    }
    .btn.red:active{
      border-bottom:2px solid #c1370e;
    }
    .btn.green{
      background-color: #1fafda;
      border-bottom:5px solid #009999;
    }
    .btn.green:active{
      border-bottom:2px solid #009999;
    }