@charset "utf-8";
/*
    친효스킨 Ver 1.16
    제작자 : 친절한효자손
    블로그 : 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');
}

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


/* =================공통 시작================= */
* {
    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 */
    }
}
/* =================공통 끝================= */


/* ========== 새로운 글쓰기 에디터 시작 ========== */
/* 티스토리 본문 이미지 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > figure.imageblock {
    margin: 25px auto 20px !important;
    text-align: center !important;
}

/* 본문 이미지 테두리 (새로운 글쓰기 에디터) */
.tt_article_useless_p_margin > figure.imageblock span img {
    display: block !important;
    margin: 0 !important;
    outline: 1px solid #ccc !important;
}

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

/* 더보기 및 접기 (새로운 글쓰기 에디터) */
.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 !important;
    margin: 20px 0 !important;
    border: none !important;
    width: 100% !important;
    height: 100% !important;
    font-family: 'NanumGothic' !important;
}

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

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

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

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

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

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

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

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

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

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

.tt_article_useless_p_margin > figure.fileblock a:hover div.desc div.size {
    background-color: #FF5544 !important;
    background-color: var(--mouseHoverColor) !important;
    filter: brightness(0.8) !important;
    -webkit-filter: brightness(0.8) !important;
    -moz-filter: brightness(0.8) !important;
    -ms-filter: brightness(0.8) !important;
    -o-filter: brightness(0.8) !important;
}
/* ========== 새로운 글쓰기 에디터 끝 ========== */


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

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

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

/* 파랑 DIV박스 */
.rgyBG-Blue,
.rBLUE,
.rBE {
    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-weight: 400;
    font-size: 18px;
    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';
    font-weight: 400;
    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;
    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;
}

.rgyTextBox2 > p {
    position: relative;
    width: 100%;
    padding: 5px 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: 5px;
    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 끝 */

/* 친효애드온 : 관련글 모듈 마크3 시작 */
.rgyTextBox3 {
    padding: 10px;
    border: 1px solid #eee;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.rgyTextBox3 > p {
    overflow: hidden;
    width: 100%;
    padding-bottom: 5px !important;
    background-color: #F6F6F6;
}

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

.rgyTextBox3 > p > a::before {
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: normal;
    margin-right: 10px;
    margin-left: 3px;
    color: #222;
}

.rgyTextBox3 > p > a::after {
    content: " ";
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #f00;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform-origin: left;
    -webkit-transform-origin: left;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
}

.rgyTextBox3 > p:hover a::after {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
}
/* 관련글 모듈 마크3 끝 */

/* 친효애드온 : 관련글 모듈 마크4 시작 */
.rgyTextBox4 {
    padding: 10px;
    border: 1px solid #eee;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.rgyTextBox4 > p {
    overflow: hidden;
    width: 100%;
    background-color: #F6F6F6;
}

.rgyTextBox4 > p > a {
    display: block;
    width: 100%;
    padding: 5px;
    color: #222;
}

.rgyTextBox4 > p > a::before {
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: normal;
    margin-right: 10px;
    margin-left: 3px;
    color: #222;
}

.rgyTextBox4 > p:hover {
    border-radius: 5px;
    background-color: #FF5544;
    background-color: var(--mouseHoverColor);
    box-shadow: 4px 4px 10px 0.1px rgba(0, 0, 0, 0.7);
    -webkit-box-shadow: 4px 4px 10px 0.1px rgba(0, 0, 0, 0.7);
    transform: scale(1.01);
    -webkit-transform: scale(1.01);
}

.rgyTextBox4 > p:hover a,
.rgyTextBox4 > p:hover > a::before {
    color: #fff;
}
/* 관련글 모듈 마크4 끝 */

/* 친효애드온 : 관련글 마크5 시작 */
.rgyTextBox5 {
    padding: 10px;
    border: 1px solid #eee;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    z-index: 5;
}

.rgyTextBox5 > p {
    position: relative;
    width: 100%;
    padding: 5px 0;
    border-radius: 10px;
    background-color: #FF5544;
    z-index: 10;
}

.rgyTextBox5 > p::after {
    content: " ";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #F6F6F6;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    z-index: 15;

}

.rgyTextBox5 > p:hover::after {
    transform: rotateX(90deg);
    -webkit-transform: rotateX(90deg);
}

.rgyTextBox5 > p > a {
    position: relative;
    display: block;
    width: 100%;
    padding: 5px;
    color: #222;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    z-index: 20;
}

.rgyTextBox5 > 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;
}

.rgyTextBox5 > p:hover > a,
.rgyTextBox5 > p:hover > a::before {
    color: #fff;
}
/* 관련글 모듈 마크5 끝 */

/* 친효애드온 : 관련글 글꼴 설정 */
.rgyTextBox,
.rgyTextBox2,
.rgyTextBox3,
.rgyTextBox4,
.rgyTextBox5 {
    font-family: "NanumGothic";
}

/* 관련글 소제목 마크1 */
.rgyTextBox > span,
.rgyTextBox2 > span,
.rgyTextBox3 > span,
.rgyTextBox4 > span,
.rgyTextBox5 > span {
    display: block;
    padding-left: 5px;
    margin-bottom: 10px;
    color: #888;
}

.rgyTextBox > span::before,
.rgyTextBox2 > span::before,
.rgyTextBox3 > span::before,
.rgyTextBox4 > span::before,
.rgyTextBox5 > span::before {
    margin-right: 7px;
    content: "\f055";
    font-family: "FontAwesome";
    font-weight: normal;
    font-size: 20px;
    color: #888;
    vertical-align: middle;
}
/* ============= 친효애드온 끝 ============= */


/* =========== 애드센스 관련 시작 =========== */
#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 {
    word-break: break-all;
    -webkit-word-break: break-all;
    padding: 20px;
    border: 1px solid #E5E5E5;
    border: 1px solid var(--subColor);
    font-family: "RIDIBatang", serif;
    font-size: 17px;
    line-height: 1.6em;
}

#contents .article h1,
#contents .article h2,
#contents .article h3,
#contents .article h4,
#contents .article h5,
#contents .article h6 {
    padding: 2px 5px 4px;
    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 div.tt_article_useless_p_margin > p {
    text-align: justify;
}

/* 본문 이미지 스타일 (구버전 글쓰기 에디터) */
#contents .article div.tt_article_useless_p_margin > p > span.imageblock {
    margin: 20px 0 7px;
}

/* 본문 이미지 테두리 (구버전 글쓰기 에디터) */
#contents .article div.tt_article_useless_p_margin > p > span.imageblock > img,
#contents .article div.tt_article_useless_p_margin > p > span.imageblock > span > img {
    display: block;
    padding: 0;
    margin: 0;
    outline: 1px solid #ccc;
}

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

/* 본문 슬라이드쇼 이미지 (구버전 글쓰기 에디터) */
#contents .article figure.imageslideblock {
    margin-bottom: -15px !important;
}

#contents .article figure.imageslideblock > div.image-container {
    width: 100% !important;
    height: auto !important;
    background-color: transparent !important;
}

#contents .article figure.imageslideblock > div.mark {
    position: relative;
    top: -14px;
}

/* 본문 표 이미지 (구버전 글쓰기 에디터) */
#contents .article table.txc-table {
    width: 100%;
    border-spacing: 0;
}

#contents .article table.txc-table > tbody > tr {
}

#contents .article table.txc-table > tbody > tr > td {
}

#contents .article table.txc-table > tbody > tr > td > p > span.imageblock {
    width: 100% !important;
}

#contents .article table.txc-table img {
    width: 100%;
    height: 100%;
    vertical-align: middle;
    border: none;
}

/* 본문 하이퍼링크 : 기본 색상 */
.tx-link {
    color: #4271C9;
}

/* 본문 하이퍼링크 : 마우스 올라갔을 때 색상 */
.tx-link:hover {
    color: #FF5544;
}

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

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

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

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

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

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

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

#contents .article .moreless_fold::before {
    content: "▼"
}

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

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

#contents .article .moreless_fold::after {
    content: "더 보기"
}

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

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

/* 본문 더보기 접기 업데이트 버전 */
#contents .article .tt_article_useless_p_margin > button.btn_more,
#contents .article .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;
}

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

#contents .article .tt_article_useless_p_margin > button.btn_more::before,
#contents .article .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;
}

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

#contents .article .moreless_content {
    padding: 0 20px;
    background-color: #F6F6F6;
}

/* 본문 첨부파일 스타일변경 시작 */
#contents .article .rgyImg-File > p > span.imageblock > a,
#contents .article .tt_article_useless_p_margin > p > span.imageblock > a,
#contents .article .tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a,
#contents .article .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;
}

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

#contents .article .rgyImg-File > p > span.imageblock > a::before,
#contents .article .tt_article_useless_p_margin > p > span.imageblock > a::before,
#contents .article .tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a::before,
#contents .article .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;
}

#contents .article .rgyImg-File > p > span.imageblock > a img,
#contents .article .tt_article_useless_p_margin > p > span.imageblock > a img,
#contents .article .tt_article_useless_p_margin > .rgyImg > p > span.imageblock > a img,
#contents .article .tt_article_useless_p_margin > .rgyImg > .rgyImg-File > p > span.imageblock::after {
    display: none !important;
}

/* 본문 기타 */
#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.15);
    -webkit-filter: brightness(1.15);
}

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

/* ============= 본문 관련글 시작 ============= */
#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 .comment-h3 {
    padding: 5px 0;
}

#contents .comment h3 {
    padding-bottom: 6px;
    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.CommentSecretWrap {
    padding: 5px 0 10px;
    font-size: 12px;
    color: #333;
}

#contents .comment .commentWrite p.CommentSecretWrap .checkbox {
    margin-right: 2px;
    vertical-align: middle;
}

#contents .comment .commentWrite p.CommentSecretWrap .checkbox:checked ~ span.rgyCommentSecretCheck {
    display: inline-block;
}

#contents .comment .commentWrite p.CommentSecretWrap span.rgyCommentSecretCheck {
    display: none;
    margin-left: 7px;
    color: #f00;
}

#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 {
    word-break: break-all;
    -webkit-word-break: break-all;
    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 div.guestSecretWrap {
    margin: 5px 0;
    font-size: 12px;
    color: #333;
}

#contents .guest .guestWrite div.guestSecretWrap .checkbox {
    margin-right: 2px;
    vertical-align: middle;
}

#contents .guest .guestWrite div.guestSecretWrap .checkbox:checked ~ span.rgyGuestSecretCheck {
    display: inline-block;
}

#contents .guest .guestWrite div.guestSecretWrap span.rgyGuestSecretCheck {
    display: none;
    margin-left: 7px;
    color: #f00;
}

#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 {
    word-break: break-all;
    -webkit-word-break: break-all;
    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;
}
/* ============= 방명록 끝 ============= */

/* 댓글, 방명록 리스트 p태그 안 img 이모티콘*/
.rp_admin > p > img,
.guest_admin > p > img {
    vertical-align: text-bottom;
}
/* ============ 본문 콘텐츠 끝 ============ */


/* ============ 사이드바 시작 ============ */
#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;
    }
}
/* ======== 반응형 미디어 쿼리 끝 ======== */


/*
    https://rgy0409.tistory.com
    e-mail : rgy0409@gmail.com
*/