@charset "utf-8";
@import url("default.css");


/** s 기본 세팅 **/
:root {
	--main-color: #007BFF; /* 블루 */
	--main-medium-color: #0062CC; /* 중간 블루 */
	--main-dark-color: #004EA3; /* 다크 블루 */

	--background-color: #ffffff; /* 화이트 */

	--white-color: #ffffff; /* 화이트 */
	--black-color: #000000; /* 블랙 */
	--red-color:#DC143C; /* 레드 */

	--main-font-color: #000000; /* 블랙 */
	--sub-font-color: #6C7585; /* 회색 */

	--line-color:#DEE2E6; /*라인컬러*/

	--font-size-25: 25px;
	--font-size-20: 20px;
	--font-size-18: 18px;
	--font-size-17: 17px;
	--font-size-16: 16px;
	--font-size-15: 15px;
	--font-size-14: 14px;
	--font-size-13: 13px;
	--font-size-12: 12px;
	--font-size-11: 11px;

	--font-bold-600:600;
	--font-bold-500:500;

	--device: "desktop";

	--sub-menu-bg:#ffffff;
	--board-line-color:#000000;
}


body.dark-theme {
	--main-color: #1E1E1E;       /* 밝은 블루 */
	--main-medium-color: #1E3A5F; /* 중간 블루 */
	--main-dark-color: #2a4365;   /* 다크 블루 */

	--main-color--lightblue: #60A5FA; /* 추가 밝은 블루 */

	--background-color: #121212;  /* 다크 배경 */
	--white-color: #ffffff;
	--black-color: #000000;
	--red-color: #DC143C;

	--main-font-color: #d9d9d9;   /* 글자 밝게 */
	--sub-font-color: #aaaaaa;    /* 회색 글자 */

	--line-color: #333333;        /* 라인 어둡게 */
	--dark-line-color: #cccccc;        /* 라인 어둡게 */
	--dark-line-color2: #444444;        /* 라인 어둡게 */

	--sub-menu-bg:#121212;
	--board-line-color:#ffffff;


	.logo img											{ content: url("../img/main/logo_dark-theme.png"); }
	.floating_new										{ background:var(--main-color--lightblue); }
	.btn_login											{ background:var(--main-medium-color); }
	.btn_login:hover									{ background:var(--main-dark-color); }
	.top_wrap .top_search .btn_search					{ color:var(--dark-line-color);  }
	.m_top_wrap .m_btn_search							{ background:var(--main-medium-color); color:var(--dark-line-color); border-radius:0 5px 5px 0; padding: 0 0 3px 5px; }
	.top_wrap .search-box								{ display: flex; align-items: center; border: 2px solid var(--dark-line-color2); max-width: 300px; }
	.m_top_wrap .m_search-box input						{ border: 1px solid var(--dark-line-color2); border-right:0; }
	.photo_gradient										{ z-index:1; position:absolute; right:0; top:0px; bottom:0; width:50px; height:calc(100%); background: linear-gradient(to left, rgba(18, 18, 18, 1) 0%, rgba(18, 18, 18, 0) 100%); }
	hr.hr::after										{ background:var(--main-color--lightblue); }
	hr.sub_hr::after									{ background:var(--main-color--lightblue); }

	.login_box [type="checkbox"],
	.fs_login_box [type="checkbox"],
	.loginPage_login_box [type="checkbox"]				{ border: max(1px, 0.1em) solid var(--dark-line-color2); }
	.login_box [type="checkbox"]::before,
	.fs_login_box [type="checkbox"]::before,
	.loginPage_login_box [type="checkbox"]::before		{ background: var(--dark-line-color2); }
	.login_box [type="checkbox"]:checked,
	.fs_login_box [type="checkbox"]:checked,
	.loginPage_login_box [type="checkbox"]:checked		{ background-color: var(--main-medium-color); border-color: var(--main-medium-color); }
	.login_box [type="checkbox"]:checked::before,
	.fs_login_box [type="checkbox"]:checked::before,
	.loginPage_login_box [type="checkbox"]:checked::before	{ background-color: white; left: 1em; }

	.ad_line											{ border:1px solid var(--dark-line-color2); }
	.ad_text_01 a										{ color: #bb86fc; }
	.ad_text_02	a										{ color:#ffa31a; }

	.paging_wrap .paging_prev:hover,
	.paging_wrap .paging_next:hover						{ background: var(--main-medium-color); color: var(--white-color); }
	.paging_wrap .paging_num							{ display: flex; margin: 0; }
	.paging_wrap .paging_num a							{ display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; text-decoration: none; color: var(--main-font-color); background-color: var(--sub-menu-bg); border-top: 1px solid var(--line-color); border-bottom: 1px solid var(--line-color); border-right: 1px solid var(--line-color); transition: background 0.3s, color 0.3s; }
	.paging_wrap .paging_num a:first-child				{ border-left: 1px solid var(--line-color); }
	.paging_wrap .paging_num a:last-child				{ border-right: none; }
	.paging_wrap .paging_num a:hover					{ background: var(--main-medium-color); color: var(--white-color);}
	.paging_wrap .paging_num a.active					{ background-color: var(--main-medium-color); color: var(--white-color); font-weight: var(--font-bold-600); }
	.btn_confirm										{ background:var(--main-medium-color); }

	.member_wrap .member_btn							{ background:var(--main-medium-color); border:1px solid var(--main-medium-color); }
	.member_wrap .member_btn:hover						{ background:var(--main-dark-color); }
	#modalConfirm										{ background-color: var(--main-medium-color);  }

}


.ad_line												{ border:1px solid #DDDDDD; }
.ad_text_01 a											{ color:blue; font-weight:bold; }
.ad_text_02	a											{ color:green; font-weight:bold; }

#theme-toggle											{ display: inline-flex; align-items: center; font-size: var(--font-size-14); color: var(--main-font-color); background: none; border: none; cursor: pointer; padding: 0; line-height: 1; }
#theme-icon												{ font-size: var(--font-size-16); line-height: 1; vertical-align: middle; }
.theme-label											{ line-height: 1;  vertical-align: middle; }



.mobile													{ display:none ; }
.desktop												{ display:block ; }
#mask													{ display:none; background: var(--black-color); position: fixed; left: 0; top: 0; z-index: 12; width: 100%; height: 100%; opacity: 0.8; }

#toast-message											{ position: fixed; bottom: -100px; left: 50%;  width: 300px; max-width: 90%; white-space: normal; word-wrap: break-word; text-align: center; transform: translateX(-50%); background-color: var(--black-color); color: var(--white-color); padding: 12px 20px; border-radius: 8px; font-size: var(--font-size-15); opacity: 0; z-index: 20; pointer-events: none; }
#toast-message.show										{ bottom: 30px;  opacity: 1; }

.space-between											{ display: flex; justify-content: space-between; align-items: center; position: relative; }
.space-between a:hover									{ color:var(--red-color); }
.row													{ display: flex; flex-direction: row; }
.column													{ display: flex; flex-direction: column; }
.align-flex-end											{ display: flex; align-items:flex-end; }
.justify-flex-end										{ display: flex; justify-content: flex-end; }
.grid													{ display:grid; }
.gap5													{ display:flex; gap:5px !important; align-items: center; }
.gap10													{ gap:10px !important; align-items: center; }




.one_ellipsis											{ overflow: hidden; white-space: nowrap; text-overflow: ellipsis; word-break: break-all; }
.two_ellipsis											{ overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-height:50px; line-height:25px; }
.table-ellipsis											{ display: table; table-layout: fixed; width: 100%;	white-space: nowrap; }
.table-ellipsis > *										{ display: table-cell; overflow: hidden; text-overflow: ellipsis; }
.pointer												{ cursor:pointer; }
.ellipsis_auto_height									{ min-height:auto; }

.m_b_5													{ margin-bottom:5px; }
.m_b_10													{ margin-bottom:10px; }
.m_b_15													{ margin-bottom:15px; }
.m_b_20													{ margin-bottom:20px; }
.m_b_30													{ margin-bottom:30px; margin-top:10px;}

.m_t_5													{ margin-top:5px; }
.m_t_10													{ margin-top:10px; }
.m_t_15													{ margin-top:15px; }
.m_t_20													{ margin-top:20px; }
.m_t_30													{ margin-top:30px; }

.m_r_10													{ margin-right:10px; }
.m_left_10												{ margin-left:10px; }

.p_l_10													{ padding-left:10px; }
.p_r_10													{ padding-right:10px; }

.p_b_10													{ padding-bottom:10px; }

body													{ background:var(--background-color); color:var(--main-font-color); }
.wrap													{ width:100%; margin:0 auto; overflow: hidden; }

/** e 기본 세팅 **/

.fa														{ padding-right:6px; } /*폰트 아이콘*/

/* s 상단 메뉴 관련 */
.top_wrap												{ width:100%; box-shadow: 0px 5px 5px -2px rgba(0,0,0,0.07); }
.m_top_wrap .m_logo										{ display: flex; justify-content:center; padding:13px 0; background:var(--main-color); }
.m_top_wrap .m_logo a									{ display: inline-block;  }

.top_wrap .top_s_menu									{ width:1100px; margin:0 auto; display: flex; justify-content: space-between; height:39px; flex-wrap: wrap; align-items: flex-end; }
.top_wrap .top_s_menu ul								{ display: flex; padding: 0 0 2px 0; margin: 0; list-style: none; }
.top_wrap .top_s_menu li								{ display: flex; align-items: center; }
.top_wrap .top_s_menu li a								{ display: block; font-size: var(--font-size-14); color: var(--main-font-color); text-decoration: none; }
.top_wrap .top_s_menu li:after							{ display: inline-block; margin: 0; content: "|"; padding: 0 9px; color: #CCC; }
.top_wrap .top_s_menu li:last-child:after				{ content: ""; }

.top_wrap .top_search									{ width:1100px; margin:0 auto; display: flex; align-items: center; gap:20px; padding:20px 0; background: url("../img/main/header.png") no-repeat right bottom; }
.top_wrap .top_search .btn_search						{ width:50px; height:40px; font-size: var(--font-size-25); color:var(--main-color); }

.top_wrap .search-box									{ display: flex; align-items: center; border: 2px solid var(--main-color); max-width: 300px; }
.top_wrap .search-box input								{ border: none; outline: none; flex: 1; height:40px; padding:0 50px 0 15px; font-size:var(--font-size-16); color:var(--main-font-color); }

.m_top_wrap .m_search-box								{ display: flex; align-items: center; padding:14px; }
.m_top_wrap .m_search-box input							{ border: 1px solid var(--line-color); border-right:0; outline: none; flex: 1; height:36px; padding:5px 15px; border-radius:5px 0 0 5px; font-size:var(--font-size-15);  }
.m_top_wrap .m_btn_search								{ width:36px; height:36px; font-size:var(--font-size-15); background:var(--main-color); color:var(--white-color); border-radius:0 5px 5px 0; padding: 0 0 3px 0;}

.blind													{ position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); border: 0; white-space: nowrap; }

.nav-bar												{ background: var(--main-color);  }
.nav-bar .main-menu										{ width: 1100px; display: flex; list-style: none; margin: 0 auto; padding: 0; }
.nav-bar .main-menu .home								{ position: relative; color: var(--white-color); background:var(--main-medium-color); }
.nav-bar .main-menu .home a								{ padding: 13px 20px; width: 100%; height: 100%; color: var(--white-color); text-decoration: none; font-size:var(--font-size-18); }
.nav-bar .main-menu .home a:hover						{ background: var(--main-dark-color); }

.nav-bar .main-menu .menu-item							{ position: relative; flex: 1; }
.nav-bar .main-menu .menu-item > a						{ display: block; padding: 13px 20px; color: var(--white-color); text-decoration: none; text-align: center; font-size:var(--font-size-17); }
.nav-bar .main-menu .menu-item > a:hover				{ background: var(--main-dark-color); }
.nav-bar .main-menu .is_active			{ background: var(--main-dark-color); }
.nav-bar .main-menu .menu-item:hover > a:not(:hover)	{ background: var(--main-medium-color); }
.nav-bar .main-menu .menu-item .sub-menu				{ position: absolute; top: 100%; left: 0; width: 100%; background: var(--sub-menu-bg); list-style: none; margin: 0; box-shadow: 0 8px 16px rgba(0,0,0,0.07); z-index: 100; max-height: 0; overflow: hidden; opacity: 0; pointer-events: none; transition: max-height 500ms ease, opacity 500ms ease; }
.nav-bar .main-menu .menu-item:hover .sub-menu,
.nav-bar .main-menu .menu-item.open .sub-menu			{ max-height: 600px; opacity: 1; pointer-events: auto; }
.nav-bar .main-menu .sub-menu li a						{ padding: 10px 15px; color: var(--main-font-color); font-size:var(--font-size-15);  text-decoration: none; white-space: nowrap; border-bottom: 1px solid var(--line-color); }
.nav-bar .main-menu .sub-menu li a:hover				{ font-weight: 600; color:var(--red-color); }
.nav-bar .main-menu .sidebar							{ position: relative; color: var(--white-color); }
.nav-bar .main-menu .sidebar a							{ padding: 13px 20px; width: 100%; height: 100%; color: var(--white-color); text-decoration: none; font-size:var(--font-size-18); }
.nav-bar .main-menu .sidebar a:hover					{ background: var(--main-medium-color); }

.m_menu, .m_sub_menu									{ display: flex; list-style: none; margin: 0 auto; padding: 0; background: var(--main-color); padding:10px; }
.m_menu	li, .m_sub_menu li								{ text-align:center; display: inline-block; padding:0 5px; }
.m_menu	li a, .m_sub_menu li a							{ padding:5px 10px; font-size:var(--font-size-16); color:var(--white-color); display: inline-block; }
.m_menu .is_active	a, .m_sub_menu .is_active	a		{ background:var(--white-color); border-radius:5px; color:var(--main-color); font-weight:var(--font-bold-600);}
/* e 상단 메뉴 관련 */


/* s 컨텐츠 */
.contents_wrap											{ display: flex; gap: 25px; width: 1100px;  margin:0 auto; padding:25px 0; /*flex-wrap: nowrap;*/ }
.contents_wrap > .left-content							{ flex: 0 1 820px; max-width: 820px; min-width: 300px;  }
.contents_wrap > .right-content							{ flex: 1; }

.login_box												{ display: flex; flex-direction: column; }
.idpw_icon												{ display:flex; align-items: center; justify-content: center; color:#6C757D; background:var(--line-color); width:40px; height:34px; border-radius:5px 0 0 5px; border:1px solid var(--line-color); border-right:0; }

.idpw_icon .fa											{ padding-right: 0 !important; color:var(--sub-font-color); }
.in_input												{ background:var(--background-color); color: var(--main-font-color); width:100%; height:34px; padding:10px; font-size: var(--font-size-15); border:1px solid var(--line-color); border-radius:0 5px 5px 0; outline: none; }
.btn_login												{ background:var(--main-color); padding:10px; color:var(--white-color); font-size:var(--font-size-18); border-radius:5px;}
.btn_login:hover										{ background:var(--main-medium-color); }

.fs_login_box											{ display: flex; flex-direction: column; padding:15px; }



/** 2026-02-03 ***/
.login_box label,
.fs_login_box label,
.loginPage_login_box label								{ display: inline-flex; align-items: center; gap: 5px; cursor: pointer; font-size: var(--font-size-14); }

.login_box [type="checkbox"],
.fs_login_box [type="checkbox"],
.loginPage_login_box [type="checkbox"]					{ appearance: none; position: relative; border: max(1px, 0.1em) solid #ADB5BD; border-radius: 10px; width: 31px; height: 16px; }
.login_box [type="checkbox"]::before,
.fs_login_box [type="checkbox"]::before,
.loginPage_login_box [type="checkbox"]::before			{ content: ""; position: absolute; left: 0; width: 14px; height: 14px; border-radius: 50%; transform: scale(0.8); background: #ADB5BD; transition: left 250ms linear; }
.login_box [type="checkbox"]:checked,
.fs_login_box [type="checkbox"]:checked,
.loginPage_login_box [type="checkbox"]:checked			{ background-color: var(--main-color); border-color: var(--main-color); }
.login_box [type="checkbox"]:checked::before,
.fs_login_box [type="checkbox"]:checked::before,
.loginPage_login_box [type="checkbox"]:checked::before	{ background-color: white; left: 1em; }

.loginPage_login_box									{ display: flex; flex-direction: column; padding:15px; max-width:400px; min-width:300px; margin:0 auto; }
.loginPage_login_box .section-title .title-text			{ font-size: var(--font-size-25); color:var(--main-color); font-weight:var(--font-bold-600); text-align:center; }

.btn_home												{ display: flex; flex-direction: column; align-items: center; }
.btn_home a:hover										{ color:var(--red-color); }

/** 2026-02-03 끝 ***/



#switch													{ position: absolute; appearance: none; -webkit-appearance: none; -moz-appearance: none; }
.switch_label											{ position: relative; cursor: pointer; display: inline-block; width: 50px; height: 26px; margin-right:10px; border: 1px solid var(--black-color); border-radius: 18px; transition: 0.2s; }
.switch_label:hover										{ }
.onf_btn												{ position: absolute; top: 3px; left: 3px; display: inline-block; width: 18px; height: 18px; border-radius: 18px; background: var(--sub-font-color); transition: 0.2s; }
#switch:checked+.switch_label							{ background: var(--main-color); border: 1px solid var(--main-color); }
#switch:checked+.switch_label:hover						{  }
#switch:checked+.switch_label .onf_btn					{ left: 26px; background: var(--main-font-color); }

input[type=checkbox].css-checkbox						{ position:absolute; z-index:-1000; left:-1000px; overflow:hidden; clip: rect(0 0 0 0); height:1px; width:1px; margin:-1px; padding:0; border:0; }
input[type=checkbox].css-checkbox
+ label.checkbox-label									{ position:relative; padding-left:50px; height:24px; display:inline-block; background-repeat:no-repeat; background-position:0 0; vertical-align:middle; cursor:pointer; -webkit-transition-property: none; -moz-transition-property: none; -o-transition-property: none; transition-property: none; }
input[type=checkbox].css-checkbox:checked
+ label.checkbox-label									{ background-position: 0 -24px; -webkit-transition-property: none; -moz-transition-property: none; -o-transition-property: none; transition-property: none; }
label.checkbox-label									{ background-image:url(../img/main/icon_checkbox.png); -webkit-touch-callout:none; -webkit-user-select:none; -khtml-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; }
.checkbox-label span									{ position:absolute; left:30px; top:1px; width:80px; min-width:50px; }


.h-bar													{ display:inline-block;	width:1px; height:1.0rem; margin:-1px 0.15rem 0; background:#aaa; vertical-align:middle !important; }
.join_text												{ display: inline-flex; align-items: center; gap: 3px; }
.join_text a											{ font-size: var(--font-size-14);  }
.more-plus::before										{ content: "+"; font-weight:normal !important; color:#ccc; }

.section-title											{ margin: 0; }
.section-title a										{ display: flex; justify-content: space-between; align-items: center; text-decoration: none; font-size: var(--font-size-18); font-weight: var(--font-bold-600); color: var(--main-font-color); }
.section-title .title-text								{ font-size: var(--font-size-20); }
.section-title .icon									{ font-size: var(--font-size-16); color: var(--main-font-color); }
.section-title a:hover .title-text,
.section-title a:hover .icon							{ color: var(--red-color); }


.list_title-text										{ font-size: var(--font-size-15); }
.list_title-text span									{ font-weight: var(--font-bold-600); }


hr														{ border: none; margin:0; }
hr.hr::before											{ width:100%; height:1px; content: ""; position:absolute; left:0; bottom:1px; line-height:1px; background:var(--line-color); }
hr.hr													{ display:block; position:relative; height:3px; border: none; line-height:1px; margin: 10px 0; }
hr.hr::after											{ width:60px; height:3px; content: ""; position:absolute; left:0; bottom:0; line-height:1px; background:var(--main-color); }

hr.sub_hr::before										{ width:100%; height:1px; content: ""; position:absolute; left:0; bottom:1px; line-height:1px; background:var(--line-color) }
hr.sub_hr												{ display:block; position:relative; height:3px; border: none; line-height:1px; margin: 10px 0; }
hr.sub_hr::after										{ width:100%; height:3px; content: ""; position:absolute; left:0; bottom:0; line-height:1px; background:var(--main-color); }

hr.default												{ display:block; position:relative; height:1px; width:100%; border: none; line-height:1px; background:var(--line-color); margin: 10px 0; }
hr.dashed												{ display:block; position:relative; width:100%; border-width:1px 0 0 0; line-height:1px; border-color:var(--black-color); border-style:dashed; margin: 10px 0; }

.card_one												{ grid-template-columns: repeat(1, 1fr); gap:16px; }
.card_one .inner										{ display:flex; gap:16px; }
.card_one .item_img_wrap								{ width:35%; flex-shrink: 0; }
.card_one .grid_card_ct_area							{ flex-grow: 1; }


.card_two												{ grid-template-columns: repeat(2, 1fr); gap:25px; }
.card_two .grid_card_ct_area							{ padding:0 0 10px 0; }

.card_three												{ grid-template-columns: repeat(3, 1fr); gap:16px; }
.card_three .grid_card_ct_area							{ padding:0 0 10px 0; }

.card_four												{ grid-template-columns: repeat(4, 1fr); gap:16px; }
.card_four .grid_card_ct_area							{ padding:0 0 10px 0; }

.item_img												{ position:relative; width: 100%; height: 0; padding-top: 56.25%; overflow:hidden; border-radius:5px; } /* 56.25-> 100% : 56.25% = 16 : 9 사이즈 계산 */
.item_img .thumb										{ position:absolute; top: 50%; left: 50%; width:100%; height:100%; transform: translate(-50%, -50%); object-fit:cover; }
/*.thumb.lazy[src*="gif파일명"]								{ width: 50px; height: 50px; object-fit: contain; display: inline-block; }*/


.card_title												{ display:flex; align-items: center; padding:10px 0; }
.card_title a											{ font-size:var(--font-size-17); font-weight:var(--font-bold-500); color:var(--main-font-color); }
.card_title a:hover										{ color:var(--red-color); }
.card_title_big a										{ font-size:var(--font-size-20); font-weight:var(--font-bold-500); color:var(--main-font-color); }

.card_tag												{ display:flex; align-items: center; gap:5px; flex-wrap:wrap; }
.card_tag a												{ padding:5px 10px; color:var(--white-color); background:var(--black-color); border-radius:5px; }

.card_date												{ display: flex; align-items: center; gap: 15px; color: var(--sub-font-color); font-size: var(--font-size-14); }
.card_date a											{ display: inline-flex; align-items: center; color: var(--sub-font-color); font-size: var(--font-size-14); line-height: 1; }
.card_date a:hover										{ color: var(--black-color); }

/*2026-01-31 수정*/
.icon_x													{ display: flex; align-items: center; flex-direction: row; position: absolute; padding:5px; z-index:2; top:8px; right:8px; border-radius:5px; line-height: 1; width:28px; height:28px; border-radius:5px; fill:var(--white-color); background:rgba(0,0,0,0.6); }
.icon_x:hover											{ fill:var(--white-color); background:var(--black-color) !important; border-radius:5px; }
/*2026-01-31 수정 끝*/

.card_text												{ color:var(--main-font-color); }
.card_text a											{ color:var(--main-font-color); }

.btn_bookmark_all_del									{ margin-left:5px; font-size:var(--font-size-15); background:var(--red-color); color:var(--white-color); height: 36px; line-height: 34px; padding:0 16px; border-radius: 5px; }

.floating_time											{ display: flex; align-items: center; flex-direction: row; position: absolute; padding:5px 6px; right:8px; bottom:8px; font-weight:var(--font-bold-500); color:var(--white-color); background:rgba(0,0,0,0.6); font-size:var(--font-size-12); border-radius:5px; line-height: 1; }
.floating_new											{ z-index:2; background:var(--main-color); top: -11px; letter-spacing:1px; width: 140px; padding: 20px 0 3px; right: -60px; font-size: var(--font-size-11); color:#fff; position: absolute; text-align: center; font-weight:normal; transform: rotate(45deg); -o-transform: rotate(45deg); -ms-transform: rotate(45deg);	-moz-transform: rotate(45deg);	-webkit-transform: rotate(45deg); }

.recent_title a											{ line-height:30px }
.recent_date											{ width:100px; text-align:right; color:var(--sub-font-color); font-size:var(--font-size-14); }

.photo_wrap												{ width: 100%; position:relative; }
.photo_slide											{ display:flex; }
.photo_slide .item_img									{ position:relative; width: 100%; height: 0; padding-top: 56.25%; overflow:hidden; border-radius:5px; } /*56.25-> 100% : 56.25% = 16 : 9 사이즈 계산법*/
.photo_slide .item_img .thumb							{ position:absolute; top: 50%; left: 50%; width:100%; height:100%; transform: translate(-50%, -50%); object-fit:cover; }
.photo_slide .grid_card_ct_area							{ padding:15px 0; }
.photo_gradient											{ z-index:1; position:absolute; right:0; top:0px; bottom:0; width:50px; height:calc(100%); background: linear-gradient(to left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%); }


.contents_wrap > .view_left								{ float: left; width: calc(100% - 400px); }
.contents_wrap > .view_right							{ margin-left: calc(100% - 400px); }
.contents_wrap > .view_right .right_content				{ float: left; position:relative; width:100%; padding:0 0 10px 16px; }

.d_selectBox											{ color:var(--main-font-color); padding:0 15px; border: 1px solid var(--line-color); width: 100%; height:40px; background: url(../img/main/icon_arrow.png) no-repeat 100% 50% var(--background-color); -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 3px; }


/** s 셀렉트 박스 **/
.select_box												{ display:flex; align-items: center; justify-content: end; padding:0; }
.nice-select											{ font-size: var(--font-size-15); color:var(--white-color); background-color: var(--main-color); border-radius: 5px; font-weight: normal; height: 36px; line-height: 36px; outline: none; padding-left: 15px; padding-right: 35px; position: relative; text-align: left !important; -webkit-tap-highlight-color: transparent; clear: both; cursor: pointer; display: block; float: left; font-family: inherit; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; white-space: nowrap; width: auto; }
/*.nice-select:hover										{ border-color: #dbdbdb; }
.nice-select:active, .nice-select.open, .nice-select:focus	{ border-color: var(--sub-font-color); }*/
.nice-select:after										{ border-bottom: 2px solid var(--white-color); border-right: 2px solid var(--white-color); content: ''; display: block; height: 8px; margin-top: -6px; pointer-events: none; position: absolute; right: 15px; top: 50%; -webkit-transform-origin: 66% 66%; -ms-transform-origin: 66% 66%; transform-origin: 66% 66%; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); -webkit-transition: all 0.15s ease-in-out; transition: all 0.15s ease-in-out; width: 8px; }
.nice-select.open:after									{ -webkit-transform: rotate(-135deg); -ms-transform: rotate(-135deg); transform: rotate(-135deg); }
.nice-select.open .list									{ opacity: 1; pointer-events: auto; -webkit-transform: scale(1) translateY(0); -ms-transform: scale(1) translateY(0); transform: scale(1) translateY(0); }
.nice-select.disabled									{ background:var(--sub-font-color); border-color: var(--white-color); color: var(--white-color); pointer-events: none; }
.nice-select.disabled:after								{ border-color: var(--white-color); }
.nice-select.wide										{ width: 100%; }
.nice-select.wide .list									{ left: 0 !important; right: 0 !important; }
.nice-select.right										{ float: right; }
.nice-select.right .list								{ left: auto; right: 0; }
.nice-select.small										{ font-size: var(--font-size-13); height: 36px; line-height: 34px; }
.nice-select.small:after								{ height: 4px; width: 4px; }
.nice-select.small .option								{ line-height: 34px; min-height: 34px; }
.nice-select .list										{ background-color: var(--main-color); border-radius: 5px; box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11); margin-top: 4px; opacity: 0; overflow: hidden; padding: 0; pointer-events: none; position: absolute; top: 100%; left: 0; -webkit-transform-origin: 50% 0; -ms-transform-origin: 50% 0; transform-origin: 50% 0; -webkit-transform: scale(0.75) translateY(-21px); -ms-transform: scale(0.75) translateY(-21px); transform: scale(0.75) translateY(-21px); -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out; transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out; z-index: 9; }
.nice-select .list:hover .option:not(:hover)			{ background-color: transparent !important; }
.nice-select .option									{ cursor: pointer; font-weight: 400; line-height: 40px; list-style: none; min-height: 40px; outline: none; padding-left: 18px; padding-right: 29px; text-align: left; -webkit-transition: all 0.2s; transition: all 0.2s; }
.nice-select .option:hover, .nice-select .option.focus,
.nice-select .option.selected.focus						{ background-color: var(--main-medium-color); }
.nice-select .option.selected							{ font-weight: var(--font-bold-500); }
.nice-select .option.disabled							{ background-color: transparent; color: var(--sub-font-color); cursor: default; }
.no-csspointerevents .nice-select .list					{ display: none; }
.no-csspointerevents .nice-select.open .list			{ display: block; }
/** e 셀렉트 박스 **/

/** s 페이징 */
.paging_wrap											{ display: flex; justify-content: center; align-items: center; padding: 20px 0; border-top: 1px solid var(--line-color); width: 100%; font-size: var(--font-size-14); }
.paging_wrap .paging_prev,
.paging_wrap .paging_next								{ display: flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; padding: 0; border: 1px solid var(--line-color); cursor: pointer; color: var(--main-font-color); background-color: var(--sub-menu-bg); transition: background 0.3s; }
.paging_wrap .paging_prev								{ border-right: none; border-radius: 5px 0 0 5px; }
.paging_wrap .paging_next								{ border-left: 1px solid var(--line-color); border-radius: 0 5px 5px 0; }

.paging_wrap .paging_prev .fa,
.paging_wrap .paging_next .fa							{ padding:0; }

.paging_wrap .paging_prev:hover,
.paging_wrap .paging_next:hover							{ background: var(--main-color); color: var(--white-color); }
.paging_wrap .paging_num								{ display: flex; margin: 0; }
.paging_wrap .paging_num a								{ display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; text-decoration: none; color: var(--main-font-color); background-color: var(--sub-menu-bg); border-top: 1px solid var(--line-color); border-bottom: 1px solid var(--line-color); border-right: 1px solid var(--line-color); transition: background 0.3s, color 0.3s; }
.paging_wrap .paging_num a:first-child					{ border-left: 1px solid var(--line-color); }
.paging_wrap .paging_num a:last-child					{ border-right: none; }
.paging_wrap .paging_num a:hover						{ background: var(--main-color); color: var(--white-color);}
.paging_wrap .paging_num a.active						{ background-color: var(--main-color); color: var(--white-color); font-weight: var(--font-bold-600); }
/** e 페이징 **/


.pf_wrap													{ position:relative; width:calc(100% + 6px); margin-left:-3px; /*margin:0 auto;*/ padding:4px 0; display:inline-block;}
.pf_wrap div												{ float: left; position:relative; width:calc(100% / var(--pf-columns)); padding:3px; }
.pf_wrap div img											{ width:100%; }
.pf_wrap .pf-list-count div									{ float: left; position:relative; width:calc(100% / 2); padding:3px; }
.pf_wrap .pf-list-count-2 div								{ float: left; position:relative; width:calc(100% / 2); padding:3px; }
.pf_wrap .pf-top-sub div									{ float: left; position:relative; width:calc(100% / 1); padding:3px; }
.pf_wrap .pf-vertical-list div								{ float: left; position:relative; width:calc(100% / 1); padding:3px; }
.pf_wrap:has(.pf-top-sub)									{ display: none;}



/* s 모바일 */
/*2026-01-31 수정*/
.hamburger_position										{ position: absolute; top:3px; left:3px; width:40px; height:40px; color:#fff; font-size:ver(--font-size-18); z-index:1; }
/*2026-01-31 수정 끝*/

/*.hamburger_position:hover								{ background:var(--black-color); border-radius: 50%; }*/
.hamburger												{ padding:10px 0 0 11px; position:relative; display: inline-block; cursor: pointer; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; }
.hamburger:hover										{ opacity: 1; }
.hamburger.is-active:hover								{ opacity: 1; }
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after			{ background-color: var(--main-font-color); }
.hamburger-box											{ width:25px; height:16px; display: inline-block; position: relative; }

.hamburger-inner										{ display: block; top: 50%; margin-top: -2px; }
.hamburger-inner, .hamburger-inner::before,
.hamburger-inner::after									{ width: 18px; height:1px; background-color:var(--white-color); border-radius: 2px; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
.hamburger-inner::before, .hamburger-inner::after		{ content: ""; display: block; }
.hamburger-inner::before								{ top: -6px; }
.hamburger-inner::after									{ bottom: -6px; }
.hamburger--collapse .hamburger-inner					{ top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse .hamburger-inner::after			{ top: -12px; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
.hamburger--collapse .hamburger-inner::before			{ transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse.is-active .hamburger-inner			{ transform: translate3d(0, -5px, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.hamburger--collapse.is-active .hamburger-inner::after	{ top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
.hamburger--collapse.is-active .hamburger-inner::before	{ top: 0; transform: rotate(-90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }
/* e 모바일 */


/* 모바일 & 데스크탑 좌우측 슬라이드 아코디언 메뉴 */
.fsmenu													{ position: fixed; top: 0; width: 280px; height: 100%; background: var(--sub-menu-bg); z-index: 13; box-shadow: 0 0 10px rgba(0,0,0,0.3); overflow: hidden; transition: transform 0.4s cubic-bezier(0.13, 0.13, 0.02, 1.07), opacity 0.3s ease; opacity: 0; pointer-events: none; }
.fsmenu .fsmenu--container								{ width:100%; height:100%; padding:0 0 90px 0; right: 0; overflow-y: auto; scrollbar-width:thin; }
.fsmenu_logo											{ padding:13px 15px; background:var(--main-color); color:var(--white-color); font-size:var(--font-size-18); }
.fs_title_menu											{ flex-grow:1; text-align:center; background:var(--main-medium-color); line-height:40px; color:var(--white-color); }
.fs_title_menu a										{ color:var(--white-color); }
.fs_title_menu:hover									{ background:var(--main-dark-color); }
.fsmenu.left											{ left: 0; transform: translateX(-100%); }
.fsmenu.right											{ right: 0; transform: translateX(100%); }
.fsmenu.is-active										{ transform: translateX(0); opacity: 1; pointer-events: auto; }
.fsmenu.close-menu										{ opacity: 0; pointer-events: none; }

.fsmenu--list-element label								{ cursor: pointer; }
.fsmenu--list-element a, .fsmenu--list-element label	{ display: block; color: var(--main-font-color); padding:13px 16px; border-bottom:1px solid var(--line-color); }
.fsmenu--list-element a:focus,
.fsmenu--list-element a:hover,
.fsmenu--list-element label:focus,
.fsmenu--list-element labtsmsep el:hover				{ /*background:var(--black-color); border-radius: 8px; */ }
.fsmenu--list-element.is_active > label,
.fsmenu--list-element.is_active > a 					{	color: var(--red-color);	font-weight: 700;}

.group-list a, .group-list label						{ color:var(--main-font-color); font-size:var(--font-size-15); padding:10px 10px 10px 30px; background:var(--sub-menu-bg); }
.group-list a:focus, .group-list a:hover,
.group-list label:focus, .group-list label:hover		{ /*background:var(--background-color);*/ color:var(--red-color); }
.group-list > li.is_active > a							{ /*background:var(--background-color);*/ color:var(--red-color); }
.sub-group-list a, .sub-group-list label				{ padding-left: 60px; background: #353535; }
.sub-group-list a:focus,
.sub-group-list a:hover,
.sub-group-list label:focus,
.sub-group-list label:hover								{ background: #232323; }
.sub-sub-group-list a, .sub-sub-group-list label		{ padding-left: 90px; background: #454545; }
.sub-sub-group-list a:focus,
.sub-sub-group-list a:hover,
.sub-sub-group-list label:focus,
.sub-sub-group-list label:hover							{ background: var(--black-color); }
.group-list, .sub-group-list, .sub-sub-group-list		{ font-size:var(--font-size-15); height: auto; max-height: 0; overflow: hidden; -webkit-transition: max-height .5s ease-in-out; transition: max-height .5s ease-in-out;  }

.fsmenu--list input[type=checkbox]:checked + label + ul	{ max-height: 1000px; }
label > span											{ float: right; transition: transform .65s ease; -webkit-transition: -webkit-transform .65s ease; }
.fsmenu--list input[type=checkbox]:checked + label > span	{ -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }


.owl-theme .owl-nav										{ position:relative; text-align:center; -webkit-tap-highlight-color: transparent; }
.owl-theme .owl-nav [class*='owl-']						{ color: var(--main-font-color); font-size: var(--font-size-14); margin: 5px; padding: 4px 7px; background: #D6D6D6; display: inline-block; cursor: pointer; border-radius: 3px; }
.owl-theme .owl-nav [class*='owl-']:hover				{ background: #869791; color: var(--main-font-color); text-decoration: none; }
.owl-theme .owl-nav .disabled							{ opacity: 0 ; cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots				{ margin-top: 10px; }
.owl-theme .owl-dots									{ text-align: center; -webkit-tap-highlight-color: transparent; }
.owl-theme .owl-dots .owl-dot							{ display: inline-block; zoom: 1; *display: inline; }
.owl-theme .owl-dots .owl-dot span						{ width: 10px; height: 10px; margin: 5px 7px; background: #D6D6D6; display: block; -webkit-backface-visibility: visible; transition: opacity 200ms ease; border-radius: 30px; }
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span				{ background: #869791; }

.owl-carousel											{ display: none; width:100%; -webkit-tap-highlight-color: transparent; position: relative; }
.owl-carousel .owl-stage								{ position: relative; -ms-touch-action: pan-Y; touch-action: manipulation; -moz-backface-visibility: hidden; }
.owl-carousel .owl-stage:after							{ content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
.owl-carousel .owl-stage-outer							{ position: relative; overflow: hidden; -webkit-transform: translate3d(0px, 0px, 0px); }
.owl-carousel .owl-wrapper,.owl-carousel .owl-item		{ -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; -ms-backface-visibility: hidden; -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); }
.owl-carousel .owl-item									{ position: relative; min-height: 1px; float: left; -webkit-backface-visibility: hidden; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; }
.owl-carousel .owl-item img								{ /*width: 100%; */}
.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled						{ display: none; }
.owl-prev												{ position: absolute; top:0; left:-10px; width:40px; height:40px; background:var(--background-color); border-radius:50%; display:flex; align-items: center; justify-content: center; }
.owl-next												{ position: absolute; top:0; right:-10px; width:40px; height:40px; background:var(--background-color); border-radius:50%; display:flex; align-items: center; justify-content: center;}
.owl-prev:hover, .owl-next:hover						{ background:var(--black-color); border: 3px solid rgb(255,255,255,0.1); }
.owl-carousel .owl-nav .owl-prev.disabled,
.owl-next.disabled										{ display:none; }

.owl-carousel.owl-loaded								{ display: block; }
.owl-carousel.owl-loading								{ opacity: 0; display: block; }
.owl-carousel.owl-hidden								{ opacity: 0; }
.owl-carousel.owl-refresh .owl-item						{ visibility: hidden; }
.owl-carousel.owl-drag .owl-item						{ -ms-touch-action: pan-y; touch-action: pan-y; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.owl-carousel.owl-grab									{ cursor: move; cursor: grab; }
.owl-carousel.owl-rtl									{ direction: rtl; }
.owl-carousel.owl-rtl .owl-item							{ float: right; }

.no-js .owl-carousel									{ display: block; }
.owl-carousel .animated									{ animation-duration: 1000ms; animation-fill-mode: both; }
.owl-carousel .owl-animated-in							{ z-index: 0; }
.owl-carousel .owl-animated-out							{ z-index: 1; }
.owl-carousel .fadeOut									{ animation-name: fadeOut; }

@keyframes fadeOut										{ 0% { opacity: 1; } 100% { opacity: 0; } }
.owl-height												{ transition: height 500ms ease-in-out; }
.owl-carousel .owl-item .owl-lazy						{ opacity: 0; transition: opacity 400ms ease; }
.owl-carousel .owl-item .owl-lazy[src^=""],
.owl-carousel .owl-item .owl-lazy:not([src])			{ max-height: 0; }
.owl-carousel .owl-item img.owl-lazy					{ transform-style: preserve-3d; }
.owl-carousel .owl-video-wrapper						{ position: relative; height: 100%; background: #000; }
.owl-carousel .owl-video-play-icon						{ position: absolute; height: 80px; width: 80px; left: 50%; top: 50%; margin-left: -40px; margin-top: -40px; background: url("owl.video.play.png") no-repeat; cursor: pointer; z-index: 1; -webkit-backface-visibility: hidden; transition: transform 100ms ease; }\
.owl-carousel .owl-video-play-icon:hover				{ -ms-transform: scale(1.3, 1.3); transform: scale(1.3, 1.3); }
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon	{ display: none; }
.owl-carousel .owl-video-tn								{ opacity: 0; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; transition: opacity 400ms ease; }
.owl-carousel .owl-video-frame							{ position: relative; z-index: 1; height: 100%; width: 100%; }


/* s 하단사업자***/
footer													{ display:flex; flex-direction: column; align-items: center; justify-content: center; width:100%; }
.copyright_nav											{ width:1100px; margin:0 auto; display: flex; justify-content: flex-end; border-top:1px solid var(--line-color); border-bottom:1px solid var(--line-color);  }
.copyright_nav a										{ padding: 10px 0; font-weight:var(--font-bold-500); }
.copyright_text											{ font-size:var(--font-size-15); text-align:center;  padding:40px 0 30px 0; }
.copyright_text span									{ font-weight:var(--font-bold-500); }


#topBtn													{ display:flex; align-items: center; justify-content: center; position: fixed; color:var(--white-color); right: 16px; bottom: 20px; cursor: pointer; display:none; z-index:12; width:42px; height:42px; background:rgba(0,0,0,0.6);  border-radius:50%; text-align:center; }
#topBtn:hover											{ background:var(--main-color); }
#topBtn	i												{ font-size:ver(--font-size-18); line-height:40px; padding:0; }


/**** s 게시판 *****/
.btn_write												{ background:var(--main-color); padding:8px 15px; border:0; border-radius:5px; color:var(--white-color) !important; }
.btn_write:hover										{ background:var(--main-medium-color); }
.board_title											{ font-size:var(--font-size-25); font-weight:var(--font-bold-600); line-height:35px; }
.book_mark												{ display:flex; align-items: center; gap:5px; padding:8px 15px; background:var(--black-color); border-radius:5px; color:var(--white-color); }
.book_mark i											{ display: block; font-size: var(--font-size-18); line-height: 1; }
.book_mark.active										{ background:var(--red-color); }

.board_view_wrap										{  }
.board_view_wrap .view_date,
.board_view_wrap .view_date a							{ display:flex; align-items: center; gap:15px; color:var(--sub-font-color); font-size:var(--font-size-14); }
.board_view_wrap .view_date a:hover						{ color:var(--black-color); }
.board_view_wrap .view_ct								{ /*display:flex;*/ padding:20px 0; }

.list_board_search										{ display:none; position: absolute; left:0; bottom:-3px; width:100%; background:var(--sub-menu-bg); }
.list_board_search .search_bar							{ display: flex; align-items: center; width: 100%; border-radius: 8px; }
.list_board_search .btn_back							{ flex: 0 0 60px; height: 40px; line-height:1; display: inline-block;  vertical-align: middle; color:var(--main-font-color); }

.board_view_wrap .fa-reply								{ transform: scale(-1, -1); } /*상하좌우 반전*/
.board_view_wrap .re_title								{ font-size:var(--font-size-16); }
.list_board_search .search_btn							{ flex: 0 0 60px; height: 40px; border: none; border-radius: 0 5px 5px 0; font-size: var(--font-size-18); cursor: pointer; background:var(--main-color);  color:var(--white-color); }
.board_view_bottom										{ display:flex; align-items: center; justify-content: center; gap:5px; }

.list_board_search .search_input						{ flex-grow: 1; height: 40px; padding: 0 12px; font-size:  var(--font-size-16); border: 1px solid var(--line-color); background:var(--sub-menu-bg); border-radius: 5px 0 0 5px; }
.search-button											{ font-size: var(--font-size-18); color:var(--main-font-color); }

.board_list .title_box									{ font-size:var(--font-size-15); border-top:3px solid var(--board-line-color); border-bottom:1px solid var(--board-line-color); border-right:0; border-left:0; text-align:center; }
.board_list .title_box li								{ display:flex; align-items: center; height:50px; font-weight:var(--font-bold-500); }
.board_list .b_num										{ flex-shrink:0; width:70px; }

.board_list .b_check									{ flex-shrink:0; width:40px; }
.board_list_bottom .btn_del								{ position:absolute; left:60px; background:var(--red-color); padding:5px 10px; border:0; border-radius:3px; color:#fff; }
.board_list_bottom .btn_del:disabled					{ border: 0; background:var(--sub-font-color); color: var(--white-color); }
.board_list .b_status									{ flex-shrink:0; width:70px; }
.board_list .b_status.f_red								{ color:var(--red-color); }

.board_list .b_name										{ flex-shrink:0; width:70px; }
.board_list .b_title									{ flex-grow: 1; font-weight:var(--font-bold-500); }
.board_list .b_date										{ flex-shrink:0; width:110px; }

.board_list .list_data									{ color:var(--sub-font-color); font-size:var(--font-size-14); }
.board_list .list_data li								{ display:flex; align-items: center; border-bottom:1px solid var(--line-color); text-align:center; height:70px; }
.board_list .txt_left									{ text-align:left; }

.board_list_bottom										{ display:flex; align-items: center; justify-content: flex-end; position:relative; height:70px; }

.board_write_wrap > li									{ display:flex; padding:10px 0; border-bottom:1px solid var(--line-color); justify-content: flex-start; align-items: center; }
.board_write_wrap .b_title_column						{ flex-shrink:0; width:150px; font-weight:var(--font-bold-500); }
.input_write_full										{ background:var(--background-color); color: var(--main-font-color); width:100%; height:40px; padding:15px; font-size: var(--font-size-15); border:1px solid var(--line-color); border-radius:5px; outline: none; }
.board_write_check_box									{ position:relative; min-width:120px; height:40px; padding:8px 15px; }

.board_write_bottom										{ display:flex; align-items: center; height:70px; gap:10px; }
.btn_cancel												{ flex-grow: 1; font-size:var(--font-size-16); border:1px solid var(--line-color); padding:15px; border-radius:5px; color:var(--main-font-color); font-weight:var(--font-bold-500); }
.btn_confirm											{ flex-grow: 1; background:var(--main-color); font-size:var(--font-size-16); padding:15px; border:0; border-radius:5px; color:var(--white-color); font-weight:var(--font-bold-500); }

.filebox												{ flex: 1; }
.filebox .upload-name									{ float: left; background:var(--background-color); color: var(--main-font-color); width:calc(100% - 80px);  height:40px; padding-left:20px; font-size: var(--font-size-15); border:1px solid var(--line-color); border-radius:5px 0 0 5px; outline: none;}
.filebox label											{ float: left; display: inline-block; color: var(--white-color); background: var(--main-color); cursor: pointer; height: 40px; max-width:80px; padding:10px 25px; border: 0; border-left:0; border-radius:0 5px 5px 0; }
.filebox input[type="file"]								{ position: absolute; width: 0; height: 0; padding: 0; overflow: hidden; border: 0; }


.se2_container *,
.se2_container *:before,
.se2_container *:after									{ -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; -ms-transition: none !important; transition: none !important; }

.domainSelect											{ height:40px; line-height:40px; }
.email-form												{ display: flex; gap: 5px; align-items: center; font-size: var(--font-size-14); }
.email_error											{ float: left; color: var(--red-color); }

/**** e 게시판 *****/


/* s 회원관련 ***/
.member_wrap											{ width:700px; margin:0 auto; display:flex; align-items: center; flex-direction: column; justify-content: center; margin-bottom:30px; }
.member_wrap .member_title								{ font-size:var(--font-size-25); font-weight:var(--font-bold-600); line-height:60px; margin:0; text-align:center; }
.member_wrap .member_s_title							{ color:var(--sub-font-color); font-size:var(--font-size-15); margin:0; text-align:center; margin-bottom:20px; }
.member_wrap ul											{ width: 100%; padding: 0; margin: 0; list-style: none; }
.member_wrap .member_m_title							{ font-size:var(--font-size-15); font-weight:var(--font-bold-500); margin:15px 0 10px 0;}

.member_wrap .member_btn								{ margin-top:20px; position:relative; font-size:var(--font-size-16); width:100%; background:var(--main-color); border:1px solid var(--main-color); border-radius:5px; color:var(--white-color); font-weight:500; line-height:50px; }
.member_wrap .member_btn:hover							{ background:var(--main-medium-color); }
.member_wrap .check										{ margin-top:5px; font-size:var(--font-size-14); color:var(--red-color); font-weight:var(--font-bold-500); }
/* e 회원관련 ***/


/* s  기본 얼럿 대신 쓸수 있게 ***/
.modal-overlay											{ display: none; position: fixed; inset: 0; background-color: rgba(0, 0, 0, 0.8); backdrop-filter: blur(5px);  z-index: 15; }
.modal-box												{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background-color: var(--background-color); color: var(--main-font-color); padding: 24px 28px; width: 320px; max-width: 90vw; border-radius: 12px; box-shadow: 0 12px 24px rgba(0,0,0,0.7); text-align: center; font-size: var(--font-size-15); font-weight: var(--font-bold-600); user-select: none; }
.modal-message											{ margin-bottom: 24px; font-size: var(--font-size-15); line-height: 1.4; font-weight: 400; color: var(--main-font-color); }
.modal-buttons											{ display: flex; justify-content: center; gap: 10px; }
.modal-buttons button									{ padding: 8px 18px; font-size: var(--font-size-15); border-radius: 6px; border: none; cursor: pointer; font-weight: 500; width:100%; user-select: none; }
#modalCancel											{ background-color: transparent; color: var(--sub-font-color); border: 1px solid var(--line-color); }
#modalConfirm											{ background-color: var(--main-color); color: var(--white-color); }
/* e  기본 얼럿 대신 쓸수 있게 ***/


@media only screen and	( max-width: 1517px ) {

}

@media only screen and	( max-width: 1217px ) {

}

@media only screen and	( max-width: 1100px ) {
	.top_wrap .top_s_menu								{ width:100%; }
	.top_wrap .top_search								{ width:100%; }
	.nav-bar .main-menu									{ width: 100%; }
	.nav-bar											{ width: 100%; }
	.contents_wrap										{ width: 100%; padding:15px 10px; }
	.copyright_nav										{ width:100%;  justify-content: center; }
	.card_four											{ grid-template-columns: repeat(3, 1fr); }
	.pf_wrap div											{ width:calc(100% / var(--pf-columns)) !important; }
	.pf_wrap .pf-list-count div								{ width:calc(100% / 2) !important; }
	.pf_wrap .pf-list-count-2 div							{ width:calc(100% / 2) !important; }
	.pf_wrap .pf-vertical-list div							{ width:calc(100% / 1) !important; }
	.pf_wrap												{ width:calc(100% + 6px); margin-left:-3px; }
}

/****************************/
@media only screen and	( max-width: 750px ) {
	:root												{ --device: "mobile"; }
	.mobile												{ display:block !important; }
	.desktop											{ display:none !important; }
	.contents_wrap										{ flex-wrap: nowrap; flex-direction: column; }
	.contents_wrap > .left-content						{ flex: 1; max-width: 100%; min-width: 100%; }
	.contents_wrap > .right-content						{ flex: 1; }
	.card_two											{ grid-template-columns: repeat(1, 1fr); }
	.card_three											{ grid-template-columns: repeat(1, 1fr); }
	.card_four											{ grid-template-columns: repeat(1, 1fr); }
	.card_one .inner									{ flex-direction: column; align-items: center; gap:5px; padding-bottom:15px; }
	.card_one .item_img_wrap							{ width:100%; }

	.board_list .b_num,
	.board_list .b_date									{ display:none; }
	.board_list_bottom .btn_del							{ left:0; }
	.board_write_check_box								{ padding:8px 0; }
	.board_write_wrap > li								{ flex-direction: column; align-items: stretch; }

	.board_write_wrap .b_title_column					{ width: 100%; margin-bottom: 5px; }

	/*.se2_container iframe								{ display: none; }
	.se2_container textarea								{ display: block !important; padding:15px; border-radius:5px; border: 1px solid var(--line-color); background:transparent; color:var(--main-font-color); }*/
	.member_wrap										{ width:100%; }

	#theme-toggle										{ color: #fff; position: absolute; top:15px; right:15px; z-index:1; }
	#theme-icon											{ color: #fff; }
	.theme-label										{ color: #fff; }

	.pf_wrap div											{ width:calc(100% / 2) !important; }
	.pf_wrap .pf-list-count div								{ width:calc(100% / 1) !important; }
	.pf_wrap .pf-list-count-2 div							{ width:calc(100% / 2) !important; }
	.pf_wrap .pf-top-sub div								{ width:calc(100% / 1) !important; }
	.pf_wrap .pf-vertical-list div							{ width:calc(100% / 2) !important; }
	.pf_wrap:has(.pf-top-sub)								{ display: block;}
}


@media only screen and	( max-width: 550px ) {
	.grid_card_four										{ grid-template-columns: repeat(1, 1fr); }

}


@media only screen and	( max-width: 480px ) {

}


/******************************************************************************/
/* pf 관련 추가 */
.top-wrap {
	width: 100%;
	margin-bottom: 4px;
}

/* 공통 링크/이미지 */
.gm a,
.gp a,
.tm a,
.pm a,
.pp a,
.mm a,
.mp a,
.bm a,
.bp a,
.sg a {
	display: block;
	width: 100%;
}

.gm a img,
.gp a img,
.tm a img,
.pm a img,
.pp a img,
.mm a img,
.mp a img,
.bm a img,
.bp a img,
.sg a img {
	width: 100%;
	height: auto;
	display: block;
}

/* top */
.gm {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
	width: 100%;
}

.gp {
	display: none;
	grid-template-columns: repeat(4, 1fr);
	gap: 4px;
	width: 100%;
}

.tm {
	display: block;
	width: 100%;
}

/* player */
.pm {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 4px;
	width: 100%;
}

.pp {
	display: none;
	gap: 4px;
}

/* middle */
.mm {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
	width: 100%;
}

.mp {
	display: none;
	gap: 4px;
}

.mp a {
	flex: 1;
}

/* bottom */
.bm {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
	width: 100%;
}

.bp {
	display: none;
	gap: 4px;
}

.bp a {
	flex: 1;
}

/* side */
.sm {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
}

.sp {
	display: none;
}

/* 태블릿 */
@media (min-width: 480px) and (max-width: 767px) {
	.gm {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* PC */
@media (min-width: 768px) {
	.gm {
		display: none;
	}

	.gp {
		display: grid;
	}

	.tm {
		display: none;
	}

	.pm {
		display: none;
	}

	.mm {
		display: none;
	}

	.pp {
		display: flex;
	}

	.mp {
		display: flex;
	}

	.bm {
		display: none;
	}

	.bp {
		display: flex;
	}

	.sm {
		display: none;
	}

	.sp {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 4px;
	}
}

.movie-bunny-embed {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	background: #000;
	overflow: hidden;
}
.movie-bunny-embed iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
/* =========================================================
   Pagination: first / prev / numbers / next / last
   ========================================================= */

.paging_wrap .paging_first,
.paging_wrap .paging_prev,
.paging_wrap .paging_next,
.paging_wrap .paging_last {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    min-width: 32px;
    height: 32px;
    padding: 0;
    box-sizing: border-box;
    border: 1px solid var(--line-color);
    background-color: var(--sub-menu-bg);
    color: var(--main-font-color);
    text-decoration: none;
    cursor: pointer;
    transition: background .2s, color .2s;
}

/* 처음 */
.paging_wrap .paging_first {
    border-radius: 5px 0 0 5px;
    border-right: 0;
}

/* 이전 */
.paging_wrap .paging_prev {
    border-radius: 0;
    border-right: 0;
}

/* 다음 */
.paging_wrap .paging_next {
    border-radius: 0;
    border-left: 0;
}

/* 마지막 */
.paging_wrap .paging_last {
    border-radius: 0 5px 5px 0;
    border-left: 0;
}

.paging_wrap a.paging_first:hover,
.paging_wrap a.paging_prev:hover,
.paging_wrap a.paging_next:hover,
.paging_wrap a.paging_last:hover {
    background: var(--main-color);
    color: var(--white-color);
}

/* 첫/마지막 페이지에서 비활성 버튼도 칸은 유지 */
.paging_wrap .disabled {
    opacity: .35;
    cursor: default;
    pointer-events: none;
}

/* 숫자와 좌우 버튼을 하나의 컨트롤처럼 연결 */
.paging_wrap .paging_num {
    display: flex;
    margin: 0;
}

.paging_wrap .paging_num a {
    box-sizing: border-box;
}

/* 모바일 */
@media (max-width: 767px) {
    .paging_wrap .paging_first,
    .paging_wrap .paging_prev,
    .paging_wrap .paging_next,
    .paging_wrap .paging_last,
    .paging_wrap .paging_num a {
        width: 30px;
        min-width: 30px;
        height: 32px;
    }
}

