@charset "utf-8";

.video-wrap {max-width:1200px; margin: auto; padding: 60px 0; background:#f4f4f4;}
.video-container {position:relative;padding-bottom:56.25%;height:0;overflow:hidden;}
.video-container iframe,
.video-container object,
.video-container embed,
.video-container img,
.video-container video{position: absolute;top:0;left:0;width:100%;height:100%; object-fit: cover;}

/* 검색 */
.board-search {margin-bottom:80px; flex-wrap: wrap; display: flex; justify-content: space-between; gap: 10px; align-items: center;}
.board-search.mg { margin-bottom: 20px; }
.board-search.end { justify-content: flex-end;}
.board-search .fx { display: flex; align-items: center; gap: 15px; }
.board-search .total { font-size: 15px; font-weight: 400; color: #484848; line-height: 1em; }
.board-search .cate-sel { display: flex; align-items: center; gap: 20px; }
.board-search .cate-sel select { min-width: 200px; height: 60px; border-radius: 30px; background-color: #f4f4f4; border: none; color: #2c2c2c; font-weight: 700; padding: 6px 30px;}
.board-search .cate select { border-radius: 8px; }
.board-search .search { display: flex; gap: 10px; }
.board-search .search .input { height: 60px; border-radius: 30px; border-color: #eee; width: 420px; padding: 6px 30px; font-weight: 400; }
.board-search .search .input::placeholder { color: #a8a8a8; }
.board-search .search .btns { width: 142px; height: 60px; border-radius: 30px; background: #121212; display: flex; align-items: center; justify-content: center; color: #fff; font-size: var(--font-size18); font-weight: 700; border: none; }
 
/* 리스트 */
.board-list table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686;}
.board-list table thead th {height:53px; padding:9px 5px; color:#333; font-size:16px; font-weight:700; line-height:1.5em; background:#fafafa; border-bottom:1px solid #ddd;}
.board-list table tbody td {height:53px; padding:9px 5px; color:#505050; font-size:16px; font-weight:400; line-height:1.5em; text-align:center; border-bottom:1px solid #ddd;}
.board-list table tbody td.subject {text-align:left; padding-left:15px;}
.board-list table tbody td img {vertical-align:middle; margin:-.2em 2px 0;}
.board-list table tbody td a:hover {text-decoration:underline;}
.board-list table tbody tr:hover td {background-color:#fafafa;}
.board-list .label {color:#fff; font-weight:600; display:inline-block; padding:0 13px; font-size:14px; background:var(--color-primary); border-radius:8px;}
.board-list .comment {color:var(--color-primary); font-size:.85em; font-weight:700; line-height:1em;}
.board-list .goods-name {color:#242424; font-weight:700;}
.board-list table tbody .form-link { color:#fff; font-weight:600; display:inline-block; padding:2px 13px; font-size:14px; background:var(--color-primary); border-radius:15px;}
.board-list table tbody .form-link:hover { text-decoration: none; background: #242424; }
.board-list table tbody tr.end .label {background: #aaa; }
.board-list table tbody tr.end .form-link {background: #aaa; color: #fff; pointer-events: none;}

.board-list-m {display:none; border-top:2px solid #868686;}
.board-list-m li {padding:14px 0; border-bottom:1px solid #ddd;}
.board-list-m li img {vertical-align:middle; margin:-.2em 2px 0; height:16px;}
.board-list-m li.none {padding:40px 0; text-align:center; color:#999;}
.board-list-m .label {display:inline-block;vertical-align:middle;margin:-.2em 4px 0 0;padding:0 6px;color:#fff;background:var(--color-primary);font-weight:500;font-size:12px;line-height:22px;border-radius:4px;}
.board-list-m .tit {color:#333; font-size:15px; font-weight:700; line-height:1.4em; letter-spacing:-.03em;}
.board-list-m .info {color:#888; font-size:12px; font-weight:400; line-height:1.3em; margin-top:7px;}
.board-list-m .info span {margin-right:10px;}
.board-list-m .comment {color:var(--color-primary); font-size:.85em; font-weight:700; line-height:1em;}
.board-list-m .store-name {color:#333; font-size:17px; font-weight:700; line-height:1.4em; letter-spacing:-.03em;}
.board-list-m .store-addr {font-size:14px; font-weight:400; line-height:1.3em; color:#505050; margin-top:4px;}
.board-list-m .btns {margin-top:12px;}
.board-list-m .btns .btn-map {line-height:28px; margin-right:4px;}
.board-list-m .goods-name {color:#505050; font-size:15px; font-weight:700; line-height:1.3em; margin-bottom:4px;}
.board-list-m .info a { display:inline-block;vertical-align:middle;margin:-.2em 4px 0 0;padding:0 6px;color:#fff;background:var(--color-primary);font-weight:500;font-size:12px;line-height:22px;border-radius:4px;}
.board-list-m li.end .label { background: #aaa; }
.board-list-m li.end .info a { color: #fff; background: #aaa; pointer-events: none;}

/* 갤러리 */
.gallery-list { padding: 40px 0; border-top: 2px solid #686868; border-bottom: 1px solid #ddd;}
.gallery-list ul {display:flex; flex-wrap:wrap; gap: 39px; }
.gallery-list ul li {text-align:left; width: calc(100%/3 - 26px);}
.gallery-list ul li.none {width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}
.gallery-list ul li a { position: relative; display: block; overflow: hidden; }

/* news */
.news-list {border-top:2px solid #868686;}
.news-list ul li {display:flex; padding:20px 0; border-bottom:1px solid #ddd; align-items: center ;}
.news-list .thumb {width:240px; margin-right:20px;}
.news-list .thumb a {display:block; position:relative; padding-bottom:75%; overflow:hidden;}
.news-list .thumb a img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.news-list .thumb a:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08);}
.news-list .info {flex:1 1 auto; min-width:0; width:1%;}
.news-list .tit {color:#2c2c2c; font-size:18px; font-weight:700; line-height:1.4em; max-height:1.4em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap;}
.news-list .txt {margin-top:10px; font-size:16px; line-height:1.5em; max-height:4.5em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical;}
.news-list .date {margin-top:13px; color:#777; font-size:14px; line-height:1.3em;}
.news-list ul li.none {display:block; width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}

.event-list {padding:40px 0 0; border-top:2px solid #868686; border-bottom:1px solid #ddd;}
.event-list ul {display:flex; flex-wrap:wrap; margin:0 -15px;}
.event-list ul li {width:33.33333333%; padding:0 15px; margin-bottom:45px; text-align:center;}
.event-list ul li a {display:block; position:relative; background:#fff;}
.event-list ul li .thumb {position:relative; height:0; padding-bottom:55%; margin-bottom:12px; overflow:hidden;}
.event-list ul li .thumb img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.event-list ul li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08);}
.event-list ul li .tit {color:#333; font-size:16px; font-weight:500; line-height:1.4em;}
.event-list ul li .date {color:#767676; font-size:14px; line-height:1.3em; margin-top:6px;}
.event-list ul li.none {width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}
.event-list ul li.ended .ended-txt {position:absolute; top:0; left:0; right:0; bottom:0; display:flex; align-items:center; color:#fff; background:rgba(0,0,0,.4);}
.event-list ul li.ended .ended-txt p {width:100%;}
.event-list ul li.ended .tit {color:#767676;}
.event-list ul li.ended .date {color:#767676;}

.faq {border-top:2px solid #454545;}
.faq ul li {border-bottom:1px solid #ddd;}
.faq ul li:last-child {margin-bottom:0;}
.faq .tit {color:#333; font-size:16px; font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.faq .tit a {position:relative; display:flex; align-items:center; padding:12px 60px 12px 12px; text-decoration:none !important; transition:none;}
.faq .tit a:after {content:""; position:absolute; right:20px; top:20px; display:inline-block; width:14px; height:14px; border-right:2px solid #aaa; border-bottom:2px solid #aaa; transform:rotate(45deg);}
.faq .cnt {display:none; position:relative; padding:23px 30px 23px 63px; color:#505050; font-size: 16px; }
.faq .cnt .buttons {margin-bottom:0;}
.faq .q {display:inline-block; margin-right:15px; flex:0 0 38px; width:38px; height:38px; text-align:center; color:#fff; font-size:18px; font-weight:600; line-height:38px; background:var(--color-primary); border-radius:100%;}
.faq li.active {position:relative;}
.faq li.active .tit {background:#f4f4f4;}
.faq li.active .tit a:after {transform:rotate(-135deg); margin-top:6px; border-color:#555;}
.faq .none {padding:70px 0; text-align:center; color:#999;}

.cal-wrap { padding-top: 80px; border-top: 2px solid #eee; margin-top: 80px; }
.calendar-flex { display: flex; }
.calendar-flex .cal-info { flex: 1 1 auto; min-width: 0; width: 1%; padding-right: 60px; }
.calendar-flex .cal-program { width: 380px; }
.calendar-head { margin-bottom: 60px; display: flex; align-items: center; gap: 24px; }
.calendar-head h3 { font-size: var(--font-size36); font-weight: 800; color: #2c2c2c; line-height: 1.38em; }
.calendar-head .btns { display: flex; gap: 20px; }
.calendar-head .cal-btn {display:inline-block; vertical-align:middle; width:12px; height:20px; overflow:hidden; text-indent:-999em; background-position:50% 50%; background-repeat:no-repeat; background-size: contain; position: relative; top: -3px; }
.calendar-head .cal-prev {background-image:url("/images/sub/cal-prev.png");}
.calendar-head .cal-prev:hover { background-image: url(../images/sub/cal-prev-c.png);}
.calendar-head .cal-next {background-image:url("/images/sub/cal-next.png");}
.calendar-head .cal-next:hover { background-image: url(../images/sub/cal-next-c.png);}
.calendar table {width:100%; table-layout:fixed; border-collapse:separate; border-spacing:20px 0px;}
.calendar table th { text-align:left; color:#676767; font-size:16px; line-height:1.5em; font-weight: 700; padding-bottom: 4px;}
.calendar table td {height:160px; padding:12px 0; vertical-align:top; color:#2c2c2c; font-size:14px; line-height:1.35em; letter-spacing:-.03em; font-weight: 800; border-top: 2px solid #eee; transition: .2s;}
.calendar table tr th:first-child,
.calendar table tr td:first-child .cal-date {color:#F33A3A;}
.calendar table tr th:last-child,
.calendar table tr td:last-child .cal-date {color:#2C80FF;}
.calendar ul li {position:relative; padding-left:10px; margin-bottom:10px;}
.calendar ul li:last-child {margin-bottom:0;}
.calendar ul li:before {content:""; position:absolute; top:6px; left:0; width:4px; height:4px; background:var(--color-primary); border-radius:100%;}
.calendar ul li a {display:block; line-height:1.4em; letter-spacing:-.03em; max-height:2.8em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-size: 14px; color: #505050; font-weight: 400; }
.calendar ul li a:hover { color: var(--color-primary);}
.calendar .cal-date {line-height:1.35em; font-weight:800; color:#2c2c2c; margin-bottom:12px; font-size: 28px; transition: .2s;}
.calendar .cal-holiday .cal-date {color:#ea4044 !important;}
.calendar .cal-blank .cal-date { color: #ccc !important; }
.calendar table tr td:hover { border-color: var(--color-primary);}
.calendar table tr td:hover .cal-date { color: var(--color-primary) !important ;}
.cal-program .inner { background: #f6f6f6; padding: 30px 24px; border-radius: 24px; }
.cal-program .inner h4 { margin-bottom: 24px; font-size: var(--font-size18); font-weight: 700; color: #878787; }
.cal-program .inner h4 .date { display: inline-block; padding-left: 10px; color: #2c2c2c; }
.cal-pro-wrap { overflow: auto; height: 680px; padding-right: 10px; }
.cal-pro-wrap::-webkit-scrollbar { width: 5px; border-radius: 5px; overflow: hidden;}
.cal-pro-wrap::-webkit-scrollbar-thumb { background: #505050; border-radius: 5px; }
.cal-pro-wrap::-webkit-scrollbar-track { background: #ddd; border-radius: 5px; }
.cal-pro-wrap .none { text-align: center; height: 680px; display: flex; align-items: center; justify-content: center;}
.cal-pro-wrap .col { margin-bottom: 8px; background: #fff; padding: 20px 24px; border-radius: 16px; background: #fcfcfc; }
.cal-pro-wrap .col:last-child { margin-bottom: 0; }
.cal-pro-wrap .col .tit { padding-left: 14px; position: relative; font-size: var(--font-size18); font-weight: 700; color: #2c2c2c; line-height: 1.55em; }
.cal-pro-wrap .col .tit::before { content: ""; position: absolute; left: 0; width: 6px; height: 6px; border-radius: 6px; background: var(--color-primary); top: 9px;}
.cal-pro-wrap .col ul { margin: 16px 0 20px;}
.cal-pro-wrap .col ul li { display: flex; font-size: 14px; color: #2c2c2c; line-height: 1.42em; font-weight: 400; margin-bottom: 8px; }
.cal-pro-wrap .col ul li:last-child { margin-bottom: 0; }
.cal-pro-wrap .col ul li .tt { width: 66px; color: #a8a8a8; font-weight: 700; }
.cal-pro-wrap .col ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; }
.cal-pro-wrap .col .view { line-height: 1.5em; font-size: 14px; color: var(--color-primary); border: 1px solid var(--color-primary); display: flex; align-items: center; justify-content: center; font-weight: 700; width: 90px; height: 33px; border-radius: 17px; transition: .3s;}
.cal-pro-wrap .col a:hover .view { background: var(--color-primary); color: #fff; }

/* 글작성 */
.board-white table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686; border-bottom:1px solid #868686; font-size:16px; line-height:1.5em; letter-spacing:-.03em;}
.board-white table th {padding:12px 20px; border:1px solid #eee; background:#fafafa; font-weight:700; color:#333333; }
.board-white table td {padding:12px 20px; border:1px solid #eee; color:#505050;}
.board-white tr th:first-child,
.board-white tr td:first-child {border-left:0;}
.board-white tr th:last-child,
.board-white tr td:last-child {border-right:0;}
.board-white tr:last-child th,
.board-white tr:last-child td {border-bottom:0;}
.board-white .item {display:inline-block; margin-right:16px;}
.board-white .item:last-child {margin-right:0;}
.board-white .editor {border:0; padding:12px 0;}
.board-white .editor iframe,
.board-white .editor textarea {display:block; width:100%; vertical-align:middle;}
.board-white + .buttons {margin-top:50px;}

.board-form table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #121212; border-bottom:1px solid #ddd; font-size:16px; line-height:1.5em; letter-spacing:-.03em;}
.board-form table th {padding:8px 15px; border:1px solid #ddd; background:#fafafa; font-weight:600; color:#2c2c2c; height: 88px; }
.board-form table td {padding:20px; border:1px solid #ddd; color:#454545; font-weight: 400; }
.board-form tr th:first-child,
.board-form tr td:first-child {border-left:0;}
.board-form tr th:last-child,
.board-form tr td:last-child {border-right:0;}
.board-form tr:last-child th,
.board-form tr:last-child td {border-bottom:0;}
.board-form + .buttons {margin-top:50px;}
.board-form .input { height: 48px; font-size: 15px; font-weight: 400; color: #505050; border-radius: 8px; }
.board-form .input::placeholder { color: #878787; }
.board-form .input[type="date"] { color: #878787; }
.board-form .item-fx { display: flex; flex-wrap: wrap; gap: 10px 40px; align-items: center;}

.captcha-wrap {display:flex; gap:6px; height:60px;}
#kcaptcha_image {height:100%; cursor:pointer; border-radius: 8px; }

.files-upload {max-width:600px;}
.files-upload-group { margin-bottom: 10px; }
.files-upload-group:last-child { margin-bottom: 0; }
.files-upload-input {display:flex;}
.files-upload-input .input {flex:1 1 auto; min-width:0; width:1%;}
.files-upload-input .files-upload-btns {display:flex;}
.files-upload-input .files-upload-btns a { height: 56px; line-height: 54px; border-radius: 4px; padding: 0 27px; margin-left: 5px; }
.files-upload-text {display:flex; margin-top:7px;}
.files-upload-text .upfiles-alt {display:flex; align-items:center; background:#fafafa; padding:0 15px; font-size:15px; border:1px solid #ddd; border-right:0;}
.files-upload-text .input {flex:1 1 auto; min-width:0; width:1%;}

.form-agree {margin:40px 0;}
.form-agree h3 {color:#2c2c2c; font-size:18px; font-weight:700; letter-spacing:-.03em; line-height:1.5em; margin-bottom:18px;}
.form-agree dd {padding:12px 0 0 0; color:#686868; font-size:15px; line-height:1.5em; text-align:center;}
.form-agree .scroll-box {padding:15px 10px; color:#505050; font-size:14px; font-weight:400; line-height:1.4em; background:#fafafa; border:1px solid #ddd; border-radius: 8px; }
.form-agree .check {text-align:center; color:#505050; font-size:16px; line-height:1.5em; margin-top:20px;}
.form-agree .check a {display:inline-block; background:#fff; margin-left:6px; padding:0 10px; font-size:12px; line-height:26px; letter-spacing:-.03em; border:1px solid #ddd; font-weight: 500;}

/* 상세보기 */
.board-view {border-top:2px solid #868686;}
.board-view-tit {padding:16px 16px; border-bottom:1px solid #ddd;}
.board-view-tit h3 {color:#333; font-size:20px; font-weight:500; line-height:1.3em; letter-spacing:-.015em;}
.board-view-tit.tc { text-align: center; }
.board-view-tit.tc h3 { font-weight: 600; color: #242424; letter-spacing: -.03em;}
.board-view-info {padding:13px 16px; color:#767676; font-size:15px; line-height:1.3em; border-bottom:1px solid #ddd; overflow:hidden;}
.board-view-info strong {color:#333; font-weight:500;}
.board-view-info .name {float:left; margin-right:15px;}
.board-view-info .date {float:left;}
.board-view-info .hit {float:right;}
.board-view-info .hit strong {margin-right:5px;}
.board-view-files {position:relative; text-align:right; margin-top:10px; font-size:14px; line-height:1.5em;}
.board-view-files > a {text-decoration:none;}
.board-view-files img {vertical-align:middle; margin-top:-.2em;}
.board-view-files .ico-down {vertical-align:middle; margin-left:4px;}
.board-view-files .num {color:var(--color-primary);}
.board-view-files .fileLayer {display:none; position:absolute; margin-top:2px; right:0; text-align:left; font-size:12px; font-weight:300; line-height:24px; border:1px solid #f0f0f0; background:#f7f7f7; padding:9px 29px 9px 11px; z-index:5;}
.board-view-files .fileLayer a {display:block; text-decoration:none;}
.board-view-files .fileLayer .divClose {position:absolute; display:inline-block; top:5px; right:5px; line-height:0;}
.board-view-files .fileLayer .divClose img {margin-top:0;}
.board-view-cnt {padding:15px 16px 60px; border-bottom:1px solid #ddd;}
.board-view-cnt ul {list-style-type:disc; margin-left:1.25em;}
.board-view-cnt ol {list-style-type:decimal; margin-left:1em;}

/* 이전글,다음글 */
.board-prev-next {border-top:1px solid #ddd; border-bottom:1px solid #ddd; font-size:16px; line-height:1.5em;}
.board-prev-next dl {display:flex; padding:12px 16px;}
.board-prev-next dt {width:90px; color:#333; font-weight:500;}
.board-prev-next dt:after {content:""; display:inline-block; vertical-align:middle; margin:-.2em 0 0 10px;}
.board-prev-next dd {color:#505050; flex:1 1 auto; min-width:0; width:1%;}
.board-prev-next dd a {display:inline-block; vertical-align:top; max-width:100%; height:1.5em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap;}
.board-prev-next dd a:hover {text-decoration:underline;}
.board-prev-next .prev {border-bottom:1px solid #eee;}
.board-prev-next .prev dt:after {border-left:5px solid transparent; border-right:5px solid transparent; border-bottom:5px solid #aaa;}
.board-prev-next .next dt:after {border-left:5px solid transparent; border-right:5px solid transparent; border-top:5px solid #aaa;}

/* 버튼 */
.buttons {margin:20px 0;}
.buttons:after {content:" "; display:block; clear:both;}
.buttons .cen {text-align:center;} 
.buttons .cen .btn-pack {margin:0 3px;}
.buttons .fr {float:right;}
.buttons .fl {float:left;}
.buttons a {text-decoration:none;}
.buttons a,.buttons input {vertical-align:top;}
.buttons + .paginate {margin-top:20px;}
.buttons.m0 { margin: 0; }

.btn-pack {display:inline-block;overflow:visible;position:relative;margin:0;padding:0 10px;background:#fafafa;color:#333;border:1px solid #ddd;text-align:center;text-decoration:none !important;vertical-align:top;white-space:nowrap;cursor:pointer;}
.btn-pack.focus {background:var(--color-primary); border:1px solid var(--color-primary); color:#fff;}
.btn-pack.dark {background:#555555; border:1px solid #555555; color:#fff;}
.btn-pack.dark2 {background:#121212; border:1px solid #121212; color:#fff;}
.btn-pack.dark3 { background:#333; border:1px solid #333; color:#fff;}
.btn-pack.border {background:#fff; border:1px solid var(--color-primary); color:var(--color-primary); font-weight: 500;}
.btn-pack.border2 {background:#fff; border:1px solid #ddd; color:#242424; font-weight: 500;}
.btn-pack.small {height:30px;padding:0 15px;line-height:28px;font-size:13px;}
.btn-pack.medium {height:44px;padding:0 20px;line-height:43px;font-size:16px;}
.btn-pack.large {min-width:130px; height:50px;padding:0 40px;line-height:48px;font-size:18px;font-weight:500; letter-spacing: -1px;}
.btn-pack.xlarge {min-width:180px; height:60px;padding:0 40px;line-height:58px;font-size:20px;font-weight:500;}
.btn-pack.comment {width:120px; height:90px;padding:0;font-size:20px;font-weight:500;background:#fff;color:var(--color-primary);border:1px solid var(--color-primary);}
.btn-pack.sm { min-width: 160px; font-size: 16px; font-weight: 700; border-radius: 8px; }
.btn-pack.bdrs { min-width: 230px; font-weight: 800; border-radius: 8px; height: 74px; line-height: 72px; border-radius: 37px; }

.btn-map {display:inline-block; padding:0 15px; color:#505050; font-size:14px; font-weight:500; line-height:32px; letter-spacing:-.03em; border-radius:30px; background:#fff; border:1px solid #ddd; text-align:center; text-decoration:none !important;}
.btn-map:hover {color:#fff; background:var(--color-primary); border-color:var(--color-primary);}

/* 페이지목록 */
.paginate {margin-top:40px;text-align:center;}
.paginate a,  
.paginate strong{display:inline-block;padding:0;margin:0 3px;width:38px;height:38px;font-size:15px;font-weight:700;line-height:38px;color:#676767;border-radius:100%;text-decoration:none;text-align:center;vertical-align:middle;}  
.paginate strong{color:#676767; background: #f1f1f1; border: 1px solid #f1f1f1;} 
.paginate a:focus,
.paginate a:hover {background-color:#f4f4f4;}
.paginate a.direction{background-position:50% 50%;background-repeat:no-repeat;}
.paginate a.direction span {font-size:0;line-height:0;text-indent:-999px;}
.paginate a.direction.first {background-image:url("/images/bbs/btn_first.png");}
.paginate a.direction.prev {background-image:url("/images/bbs/btn_prev.png"); margin-right:20px;}
.paginate a.direction.next {background-image:url("/images/bbs/btn_next.png"); margin-left:20px;}
.paginate a.direction.last {background-image:url("/images/bbs/btn_last.png");}
.paginate a.direction.disabled {display:none;}

/* 코멘트 */
.comment-area {margin-top:50px;}
.comment-total {margin-bottom:15px; color:#333; font-size:16px; font-weight:400; line-height:1.3em;}
.comment-total strong {font-size:1.5em;}
.comment-write {padding:20px; border:1px solid #ddd; background:#f4f4f4;}
.comment-write .byte {font-size:14px; line-height:1.3em; color:#505050; letter-spacing:0; margin-bottom:10px;}
.comment-write .write {display:flex;}
.comment-write .write textarea {flex:1 1 auto; min-width:0; width:1%; height:90px; resize:none; margin-right:15px;}
.comment-item {border-bottom:1px solid #e5e5e5; padding:20px 0;}
.comment-item.comment-reply {padding-left:40px; background:url("/images/bbs/icon_reply.png") 10px 18px no-repeat;}
.comment-box {position:relative;}
.comment-info {font-size:15px; font-weight:400; line-height:1.5em; margin-bottom:2px;}
.comment-info .name {font-weight:500; color:#333; margin-right:8px;}
.comment-info .date {color:#878787; font-family:"Arial",sans-serif; font-size:12px; letter-spacing:0;}
.comment-link {margin-top:10px; color:#878787; font-size:14px; font-weight:300; line-height:1.3em;}
.comment-link a:hover {text-decoration:underline;}
.comment-txt {color:#505050; font-size:15px; line-height:1.7em;}
.comment-ctr {position:absolute; top:0; right:0; color:#878787; font-size:14px; font-weight:300; line-height:1.5em;}
.comment-ctr a:hover {text-decoration:underline;}
.comment-ctr .bar {display:inline-block; width:1px; height:11px; background:#ddd; margin:0 5px;}
.comment-input {border:1px solid #ddd; padding:15px;}
.comment-input .byte {font-size:12px; line-height:1.3em; color:#878787; letter-spacing:0; margin-bottom:8px;}
.comment-input textarea {display:block; width:100%; height:54px; border:0; padding:0 !important; resize:none;}
.comment-input .btns {text-align:right; margin-top:5px;}
.comment-password {display:flex;}
.comment-password .input {flex:1 1 auto; min-width:0; width:1%; max-width:180px;}

/* 비밀번호 */
.board-password {max-width:480px; text-align:center; margin:30px auto; padding:50px 40px; border:1px solid #ddd; border-radius:10px;}
.board-password dt {color:#333; font-size:16px; font-weight:500; padding-bottom:27px;}
.board-password dd {display:flex; align-items:center;}
.board-password dd label {color:#505050; font-size:15px; font-weight:400; margin-right:13px;}
.board-password dd .input {flex:1 1 auto; min-width:0; width:1%; margin-right:4px;}

/* 매장안내 */
.store-search {display:flex; align-items:center; width:100%; padding:60px 15%; border:1px solid #ddd; margin-bottom:80px; border-radius: 24px; }
.store-search .map-area {width:320px; margin-left:2%; margin-right:8%;}
.store-search .map-img {position:relative; padding-bottom:155%;}
.store-search .map-img svg {position:absolute; top:0; left:0; width:100%; height:100%;}
.store-search .map-img svg .active {fill:#cccccc;}
.store-search .map-img .local {position:absolute; display:block; text-align:center; color:#333; padding:0 12px; font-size:14px; font-weight:600; line-height:24px; letter-spacing:-.03em; background:#fff; border:1px solid #333; border-radius:30px; transform:translate(-50%,-50%); z-index:2;}
.store-search .map-img .local.hover {background: var(--color-primary); color: #fff; border: 1px solid var(--color-primary);}
.store-search .map-img .local.active {background: var(--color-primary); color: #fff; border: 1px solid var(--color-primary);}
.store-search .map-img .local.seoul {top:17%; left:26%;}      /* 서울 */
.store-search .map-img .local.busan {top:67.2%; left:88%;}    /* 부산 */
.store-search .map-img .local.daegu {top:51%; left:76%;}      /* 대구 */
.store-search .map-img .local.incheon {top:23.5%; left:9%;}   /* 인천 */
.store-search .map-img .local.gwangju {top:67%; left:18%;}    /* 광주 */
.store-search .map-img .local.daejeon {top:46.5%; left:48%;}  /* 대전 */
.store-search .map-img .local.ulsan {top:60.5%; left:91%;}    /* 울산 */
.store-search .map-img .local.sejong {top:40.3%; left:45.3%;} /* 세종 */
.store-search .map-img .local.gyeonggi {top:27%; left:35.2%;} /* 경기 */
.store-search .map-img .local.gangwon {top:19%; left:59%;}    /* 강원 */
.store-search .map-img .local.chungbuk {top:33%; left:49%;}   /* 충북 */
.store-search .map-img .local.chungnam {top:42%; left:22%;}   /* 충남 */
.store-search .map-img .local.jeonbuk {top:56%; left:33%;}    /* 전북 */
.store-search .map-img .local.jeonnam {top:76%; left:25%;}    /* 전남 */
.store-search .map-img .local.gyeongbuk {top:42%; left:69%;}  /* 경북 */
.store-search .map-img .local.gyeongnam {top:64%; left:58%;}  /* 경남 */
.store-search .map-img .local.jeju {top:92%; left:16%;}       /* 제주 */
.store-search .search-area {flex:1 1 auto; min-width:0; width:1%;}
.store-search .search-area h3 {color:#2c2c2c; font-size:18px; font-weight:700; line-height:1.4em; letter-spacing:-.03em; margin-bottom:40px;}
.store-search .search-area dl {display:flex; align-items:center; margin-top:15px;}
.store-search .search-area dl dt {width:90px; color:#2c2c2c; font-size:16px; font-weight:600; line-height:1.4em; letter-spacing:-.03em;}
.store-search .search-area dl dd {display:flex; flex:1 1 auto; min-width:0; width:1%;}
.store-search .search-area input.input {width:calc(100% - 94px); margin-right:5px; border-radius: 8px; height: 48px;}
.store-search .search-area select.input {width:calc(50% - 50px); margin-right:5px; border-radius: 8px; height: 48px; }
.store-search .search-area .btn-pack.medium {width:90px; padding:0; height: 48px; line-height: 46px; border-radius: 8px; }

/* 검색결과 */
.result-top {margin-bottom:30px; color:#333; font-size:20px; font-weight:500; line-height:1.3em;}
.result-top .word {color:#d12a07;}
.result-top .num {color:#2e6bdb;}
.result-group {border-top:1px solid #ddd; padding:30px 0;}
.result-group h3 {margin:0 0 20px; color:#333; font-size:18px; font-weight:500; line-height:1.3em;}
.result-group h3 span {color:#7d7d7d; font-size:14px; font-weight:normal;}
.result-group dl {margin:0 0 20px;}
.result-group dl dt {font-size:16px; line-height:1.5em; letter-spacing:-.03em; color:#1861c3;}
.result-group dl dt a:hover {text-decoration:underline;}
.result-group dl dd {margin-top:5px; font-size:14px; line-height:1.5em; color:#505050; max-height:3em; overflow:hidden; text-overflow:ellipsis; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.result-group dl dd.date {color:#999; font-size:13px;}
.result-group .gall {display:flex; flex-wrap:wrap; margin:0 -10px;}
.result-group .gall li {width:33.3333%; text-align:center; padding:0 10px; margin-bottom:30px;}
.result-group .gall li a {display:block; text-decoration: none!important;}
.result-group .gall li .thumb {position:relative; padding-bottom:100%; margin-bottom:15px; overflow:hidden;}
.result-group .gall2 li .thumb { padding-bottom: 65%; }
.result-group .gall li .thumb img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain;}
.result-group .gall2 li .thumb img { object-fit: cover; width: 100% !important;}
.result-group .gall li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08);}
.result-group .gall li .tit {color:#121212; font-size:15px; line-height:1.4em; font-weight: 600; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.result-group .gall li .price {color:#f03b3b; font-size:14px; font-weight:500; line-height:1.3em; margin-top:4px;}
.result-group .more {text-align:right;}
.result-group .more a {font-size:15px; color:#767676; text-decoration:underline;}

/* 교구재 */
.book-list { padding-bottom: 40px; }
.book-list ul {display:flex; flex-wrap:wrap; gap: 100px 21px;}
.book-list ul li {width: calc(100%/3 - 14px);}
.book-list ul li a { display: block; }
.book-list ul li a:hover .book-thumb .view { opacity: 1; }

/* 교육신청 - 프로그램 안내 */
.program-list { padding-bottom: 40px; }
.program-list ul { display: flex; flex-wrap: wrap; gap: 100px 21px;}
.program-list ul li {width: calc(100%/3 - 14px);}
.program-list ul li a { display: block; }
.program-list ul li .thumb { position: relative; width: 100%; }
.program-list ul li .thumb>a { position: relative; padding-bottom: 65%; overflow: hidden; border-radius: 24px; display: block; }
.program-list ul li .thumb img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.program-list ul li .thumb .view { position: absolute; width: 80px; height: 80px; right: 24px; bottom: 24px; background: url(../images/main/sec3-view.png) center no-repeat; background-size: contain; transition: .3s; opacity: 0; }
.program-list ul li .ctr { line-height: 1.5em; color: #a8a8a8; font-weight: 700; margin: 34px 0 16px;}
.program-list ul li .tit { font-size: var(--font-size28); font-weight: 800; line-height: 1.5em; color: #2c2c2c; padding-bottom: 24px; margin-bottom: 28px; border-bottom: 1px solid #eee;}
.program-list ul li dl { display: flex; margin-bottom: 12px; line-height: 1.5em; }
.program-list ul li dl:last-child { margin-bottom: 0; }
.program-list ul li dl dt { width: 82px; color: #a8a8a8; font-weight: 700; }
.program-list ul li dl dd { flex: 1 1 auto; min-width: 0; width: 1%; color: #2c2c2c; font-weight: 400; }
.program-list ul li .btns { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 40px; }
.program-list ul li .btns a { display: flex; align-items: center; justify-content: center; width: calc(100%/2 - 4px); height: 58px; background: #f4f4f4; font-size: var(--font-size18); line-height: 1em; color: #676767; font-weight: 800; border-radius: 30px;}
.program-list ul li .btns a:hover { background: var(--color-primary); color: #fff; box-shadow: -4px -4px 0 0 rgba(0, 0, 0, 0.20) inset; }
.program-list ul li .thumb>a:hover .view { opacity: 1; }

/* 교구재, 교육신청 공통 상세페이지 */
.product-top { margin-bottom: 80px; }
.product-top .depth-nav span { display: inline-block; padding-right: 20px; position: relative; font-size: var(--font-size18); line-height: 1.77em; color: #a8a8a8; }
.product-top .depth-nav span:first-child { color: var(--color-primary); }
.product-top .depth-nav span:first-child::after { content: ""; position: absolute; right: 8px; width: 1px; height: 10px; background: #dfdfdf; top: 9px; }
.product-top .depth-nav span:last-child { padding-right: 0; }
.product-top .title { margin-top: 24px; font-size: 42px; font-weight: 800; color: #2c2c2c; line-height: 1.33em; }
.product-summary { display: flex; gap: 80px; }
.product-summary>div { width: calc(100%/2 - 40px);}
.product-summary .image.book>div { padding-bottom: 128%; display: block; position: relative; overflow: hidden; border-radius: 32px; }
.product-summary .image.program>div { padding-bottom: 65%; display: block; position: relative; overflow: hidden; border-radius: 24px; }
.product-summary .image>div img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.product-summary .info { display: flex; flex-direction: column; justify-content: space-between; padding: 24px 0;}
.product-summary .info .tit { font-size: var(--font-size18); font-weight: 700; color: #676767; line-height: 1.77em; }
.product-summary .info .cnt { font-size: var(--font-size20); font-weight: 400; line-height: 1.7em; color: #2c2c2c; margin: 16px 0;}
.product-summary .info .txt2 { margin-bottom: 40px; font-weight: 700; color: #878787; line-height: 1.5em; }
.product-summary .info ul li { display: flex; padding: 30px 0; font-size: var(--font-size18); line-height: 1.77em; align-items: center; border-bottom: 1px solid #eee;}
.product-summary .info ul li:last-child { border: none; }
.product-summary .info ul li .tit { width: 120px; } 
.product-summary .info ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; color: #2c2c2c; font-weight: 400; }
.product-summary .info .btns { display: flex; gap: 9px; flex-wrap: wrap;}
.product-summary .info .btns a { display: flex; align-items: center; justify-content: center; width: calc(100%/3 - 6px); height: 74px; border-radius: 37px; gap: 10px; font-size: var(--font-size20); line-height: 1.5em; font-weight: 800; }
.product-summary .info .btns .btn1 { color: #676767; border: 2px solid #eee;}
.product-summary .info .btns .btn2 { color: var(--color-primary); background: #e6f6f7; }
.product-summary .info .btns .btn3 { color: #fff; background: var(--color-primary); }
.product-detail h3 { font-size: var(--font-size36); line-height: 1.38em; color: #2c2c2c; font-weight: 800; margin-bottom: 60px; }
.pd-tbl-wrap { overflow: auto;}
.pd-tbl { width: 100%; border-collapse: collapse; border-top: 2px solid #2c2c2c;}
.pd-tbl tr { border-bottom: 1px solid #dfdfdf;}
.pd-tbl tr th { border-right: 1px solid #dfdfdf; font-size: var(--font-size18); line-height: 1.55em; font-weight: 700; color: #2c2c2c; padding: 24px 10px 21px; background: #fafafa; }
.pd-tbl tr th:last-child { border: none; }
.pd-tbl tr td { border-right: 1px solid #dfdfdf; line-height: 1.75em; font-weight: 400; padding: 16px 10px 13px; text-align: center; }
.pd-tbl tr td:last-child { border: none; }
.pd-tbl tr td.fw { font-weight: 700; color: #a8a8a8; }
.pd-tbl tr td.bd { border-right: 1px solid #dfdfdf;}
.pd-tbl-span { display: block; line-height: 1.5em; font-weight: 700; color: #878787; margin-top: 33px; }