@charset "UTF-8";

@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 100;
	src: url(../fonts/Pretendard-Thin.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Thin.woff2) format("woff2"), url(../fonts/Pretendard-Thin.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 300;
	src: url(../fonts/Pretendard-Light.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Light.woff2) format("woff2"), url(../fonts/Pretendard-Light.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 400;
	src: url(../fonts/Pretendard-Regular.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Regular.woff2) format("woff2"), url(../fonts/Pretendard-Regular.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 500;
	src: url(../fonts/Pretendard-Medium.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Medium.woff2) format("woff2"), url(../fonts/Pretendard-Medium.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 600;
	src: url(../fonts/Pretendard-SemiBold.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-SemiBold.woff2) format("woff2"), url(../fonts/Pretendard-SemiBold.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 700;
	src: url(../fonts/Pretendard-Bold.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Bold.woff2) format("woff2"), url(../fonts/Pretendard-Bold.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 800;
	src: url(../fonts/Pretendard-ExtraBold.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-ExtraBold.woff2) format("woff2"), url(../fonts/Pretendard-ExtraBold.woff) format("woff");
}
@font-face {
	font-family: "Pretendard";
	font-style: normal;
	font-weight: 900;
	src: url(../fonts/Pretendard-Black.eot); /* EI9 호환성 보기 */
	src: local("※"), url(../fonts/Pretendard-Black.woff2) format("woff2"), url(../fonts/Pretendard-Black.woff) format("woff");
}

/* global */
.direct-link {
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 9999;
	height: 1px;
} /* 바로가기 */
.direct-link a {
	position: absolute;
	top: -999px;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 12px;
	color: #fff;
	background: #333;
	text-decoration: none;
	white-space: nowrap;
}
.direct-link a:focus {
	top: 0;
}

.ir_pm {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
} /* Mobile용 사용된 이미지내 의미있는 텍스트의 대체텍스트를 제공할때 */
.ir_wa {
	display: block;
	overflow: hidden;
	position: relative;
	z-index: -1;
	width: 100%;
	height: 100%;
} /* 중요한 이미지 대체텍스트로 이미지off시에도 대체 텍스트를 보여주고자 할때 */
.ir_caption {
	overflow: hidden;
	width: 1px;
	font-size: 1px;
	line-height: 0;
	text-indent: -9999px;
} /* Table caption에 숨김텍스트를 제공할때 */
.screen_out {
	overflow: hidden;
	position: absolute;
	width: 0;
	height: 0;
	line-height: 0;
	text-indent: -9999px;
} /* 대체텍스트가 아닌 접근성을 위한 숨김텍스트를 제공할때 */
.blind, legend, caption {
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

.show {
	display: block;
}

.hide {
	display: none;
}

.line_bar {
	display: block;
	width: 100%;
	margin: 20px 0;
	border: 0;
	border-top: 1px solid #ddd;
}

/* rw reset */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, textarea, p, blockquote, th, td, input, select, textarea, button, main, a, address, caption, cite, dfn, em, var {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

fieldset, img {
	border: 0 none;
}

dl, ul, ol, menu, li {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: "";
	content: none;
}

input, select, textarea, button {
	vertical-align: middle;
	font-size: 100%;
}

input::-ms-clear {
	display: none;
}

button {
	border: 0 none;
	background-color: transparent;
	cursor: pointer;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	background: #fff;
	-webkit-text-size-adjust: none;
}

input:checked[type=checkbox] {
	background-color: #666;
	-webkit-appearance: checkbox;
}

input[type=text], input[type=password], input[type=submit], input[type=search], input[type=tel], input[type=email], html input[type=button], input[type=reset] {
	-webkit-appearance: none;
}

input[type=search]::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

input[type=date] {
	-webkit-appearance: none;
	appearance: none;
	background: #fff;
}

input[type=date]::-webkit-date-and-time-value {
	text-align: left;
}

input[type=date]::before {
	width: 100%;
	content: attr(data-placeholder);
	color: rgba(36, 36, 36, 0.38);
}

input[type=date][value]::before, input[type=date]:focus::before, input[type=date]:valid::before {
	content: normal;
}

body, th, td, input, select, textarea, button {
	font-size: 16px;
	line-height: 22px;
	font-family: "Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", sans-serif;
	color: #575757;
}

a {
	color: #575757;
	text-decoration: none;
}

a:active, a:hover {
	text-decoration: none;
}

a:active {
	background-color: transparent;
}

address, caption, cite, code, dfn, em, var {font-style: normal;font-weight: normal;}

main {display: block;}

img {vertical-align: top;}

/* display */
.block {
	display: block !important;
}

.inline {
	display: inline !important;
}

.inline_block {
	display: inline-block !important;
}

.flex {
	display: flex !important;
}

.inline_flex {
	display: inline-flex !important;
}

.table {
	display: table !important;
}

.table_cell {
	display: table-cell !important;
}

.grid {
	display: grid !important;
}

.inline_grid {
	display: inline-grid !important;
}

.hidden {
	display: none !important;
}

.visible {
	visibility: visible !important;
}

.invisible {
	visibility: hidden !important;
}

.f_wrap {
	flex-wrap: wrap !important;
}

.f_nowrap {
	flex-wrap: nowrap !important;
}

.f_none {
	flex: none !important;
}

.f_auto {
	flex: auto !important;
}

.f_1 {
	flex: 1 !important;
}

@media only screen and (max-width: 767px) {
	.m_hidden_768 {
		display: none !important;
	}
}
@media only screen and (max-width: 1023px) {
	.m_hidden_1024 {
		display: none !important;
	}
}
@media only screen and (max-width: 1439px) {
	.m_hidden_1440 {
		display: none !important;
	}
}
@media only screen and (min-width: 768px) {
	.pc_hidden_768 {
		display: none !important;
	}
}
@media only screen and (min-width: 1024px) {
	.pc_hidden_1024 {
		display: none !important;
	}
}
@media only screen and (min-width: 1440px) {
	.pc_hidden_1440 {
		display: none !important;
	}
}

/* overflow */
.overflow_visible {
	overflow: visible !important;
}

.overflow_hidden {
	overflow: hidden !important;
}

.overflow_auto {
	overflow: auto !important;
}

.overflow_scroll {
	overflow: scroll !important;
}

.overflow_x_auto {
	overflow-x: auto !important;
}

.overflow_y_auto {
	overflow-y: auto !important;
}

.overflow_x_hidden {
	overflow-x: hidden !important;
}

.overflow_y_hidden {
	overflow-y: hidden !important;
}

.overflow_x_visible {
	overflow-x: visible !important;
}

.overflow_y_visible {
	overflow-y: visible !important;
}

.overflow_x_scroll {
	overflow-x: scroll !important;
}

.overflow_y_scroll {
	overflow-y: scroll !important;
}

/* float */
.f_n {
	float: none !important;
}

.f_l {
	float: left !important;
}

.f_r {
	float: right !important;
}

/* position */
.static {
	position: static !important;
}

.relative {
	position: relative !important;
}

.absolute {
	position: absolute !important;
}

.fixed {
	position: fixed !important;
}

.sticky {
	position: sticky !important;
}

/* width */
.w_1\/10 {
	width: 10% !important;
}

.w_1\.5\/10 {
	width: 15% !important;
}

.w_2\/10 {
	width: 20% !important;
}

.w_2\.5\/10 {
	width: 25% !important;
}

.w_3\/10 {
	width: 30% !important;
}

.w_3\.5\/10 {
	width: 35% !important;
}

.w_4\/10 {
	width: 40% !important;
}

.w_4\.5\/10 {
	width: 45% !important;
}

.w_5\/10 {
	width: 50% !important;
}

.w_5\.5\/10 {
	width: 55% !important;
}

.w_6\/10 {
	width: 60% !important;
}

.w_6\.5\/10 {
	width: 65% !important;
}

.w_7\/10 {
	width: 70% !important;
}

.w_7\.5\/10 {
	width: 75% !important;
}

.w_8\/10 {
	width: 80% !important;
}

.w_8\.5\/10 {
	width: 85% !important;
}

.w_9\/10 {
	width: 90% !important;
}

.w_9\.5\/10 {
	width: 95% !important;
}

.w_full {
	width: 100% !important;
}

.w_auto {
	width: auto !important;
}

.w_0 {
	width: 0px !important;
}

.w_5 {
	width: 5px !important;
}

.w_10 {
	width: 10px !important;
}

.w_15 {
	width: 15px !important;
}

.w_20 {
	width: 20px !important;
}

.w_25 {
	width: 25px !important;
}

.w_30 {
	width: 30px !important;
}

.w_35 {
	width: 35px !important;
}

.w_40 {
	width: 40px !important;
}

.w_45 {
	width: 45px !important;
}

.w_50 {
	width: 50px !important;
}

.w_55 {
	width: 55px !important;
}

.w_60 {
	width: 60px !important;
}

.w_65 {
	width: 65px !important;
}

.w_70 {
	width: 70px !important;
}

.w_75 {
	width: 75px !important;
}

.w_80 {
	width: 80px !important;
}

.w_85 {
	width: 85px !important;
}

.w_90 {
	width: 90px !important;
}

.w_95 {
	width: 95px !important;
}

.w_100 {
	width: 100px !important;
}

.w_105 {
	width: 105px !important;
}

.w_110 {
	width: 110px !important;
}

.w_115 {
	width: 115px !important;
}

.w_120 {
	width: 120px !important;
}

.w_125 {
	width: 125px !important;
}

.w_130 {
	width: 130px !important;
}

.w_135 {
	width: 135px !important;
}

.w_140 {
	width: 140px !important;
}

.w_145 {
	width: 145px !important;
}

.w_150 {
	width: 150px !important;
}

.w_155 {
	width: 155px !important;
}

.w_160 {
	width: 160px !important;
}

.w_165 {
	width: 165px !important;
}

.w_170 {
	width: 170px !important;
}

.w_175 {
	width: 175px !important;
}

.w_180 {
	width: 180px !important;
}

.w_185 {
	width: 185px !important;
}

.w_190 {
	width: 190px !important;
}

.w_195 {
	width: 195px !important;
}

.w_200 {
	width: 200px !important;
}

.w_205 {
	width: 205px !important;
}

.w_210 {
	width: 210px !important;
}

.w_215 {
	width: 215px !important;
}

.w_220 {
	width: 220px !important;
}

.w_225 {
	width: 225px !important;
}

.w_230 {
	width: 230px !important;
}

.w_235 {
	width: 235px !important;
}

.w_240 {
	width: 240px !important;
}

.w_245 {
	width: 245px !important;
}

.w_250 {
	width: 250px !important;
}

.w_255 {
	width: 255px !important;
}

.w_260 {
	width: 260px !important;
}

.w_265 {
	width: 265px !important;
}

.w_270 {
	width: 270px !important;
}

.w_275 {
	width: 275px !important;
}

.w_280 {
	width: 280px !important;
}

.w_285 {
	width: 285px !important;
}

.w_290 {
	width: 290px !important;
}

.w_295 {
	width: 295px !important;
}

.w_300 {
	width: 300px !important;
}

.w_305 {
	width: 305px !important;
}

.w_310 {
	width: 310px !important;
}

.w_315 {
	width: 315px !important;
}

.w_320 {
	width: 320px !important;
}

.w_325 {
	width: 325px !important;
}

.w_330 {
	width: 330px !important;
}

.w_335 {
	width: 335px !important;
}

.w_340 {
	width: 340px !important;
}

.w_345 {
	width: 345px !important;
}

.w_350 {
	width: 350px !important;
}

.w_355 {
	width: 355px !important;
}

.w_360 {
	width: 360px !important;
}

.w_365 {
	width: 365px !important;
}

.w_370 {
	width: 370px !important;
}

.w_375 {
	width: 375px !important;
}

.w_380 {
	width: 380px !important;
}

.w_385 {
	width: 385px !important;
}

.w_390 {
	width: 390px !important;
}

.w_395 {
	width: 395px !important;
}

.w_400 {
	width: 400px !important;
}

.w_405 {
	width: 405px !important;
}

.w_410 {
	width: 410px !important;
}

.w_415 {
	width: 415px !important;
}

.w_420 {
	width: 420px !important;
}

.w_425 {
	width: 425px !important;
}

.w_430 {
	width: 430px !important;
}

.w_435 {
	width: 435px !important;
}

.w_440 {
	width: 440px !important;
}

.w_445 {
	width: 445px !important;
}

.w_450 {
	width: 450px !important;
}

.w_455 {
	width: 455px !important;
}

.w_460 {
	width: 460px !important;
}

.w_465 {
	width: 465px !important;
}

.w_470 {
	width: 470px !important;
}

.w_475 {
	width: 475px !important;
}

.w_480 {
	width: 480px !important;
}

.w_485 {
	width: 485px !important;
}

.w_490 {
	width: 490px !important;
}

.w_495 {
	width: 495px !important;
}

.w_500 {
	width: 500px !important;
}

.w_525 {
	width: 525px !important;
}

.w_550 {
	width: 550px !important;
}

.w_575 {
	width: 575px !important;
}

.w_600 {
	width: 600px !important;
}

.w_625 {
	width: 625px !important;
}

.w_650 {
	width: 650px !important;
}

.w_675 {
	width: 675px !important;
}

.w_700 {
	width: 700px !important;
}

.w_725 {
	width: 725px !important;
}

.w_750 {
	width: 750px !important;
}

.w_775 {
	width: 775px !important;
}

.w_800 {
	width: 800px !important;
}

.w_825 {
	width: 825px !important;
}

.w_850 {
	width: 850px !important;
}

.w_875 {
	width: 875px !important;
}

.w_900 {
	width: 900px !important;
}

.w_925 {
	width: 925px !important;
}

.w_950 {
	width: 950px !important;
}

.w_975 {
	width: 975px !important;
}

.w_1000 {
	width: 1000px !important;
}

/* height */
.h_1\/10 {
	height: 10% !important;
}

.h_1\.5\/10 {
	height: 15% !important;
}

.h_2\/10 {
	height: 20% !important;
}

.h_2\.5\/10 {
	height: 25% !important;
}

.h_3\/10 {
	height: 30% !important;
}

.h_3\.5\/10 {
	height: 35% !important;
}

.h_4\/10 {
	height: 40% !important;
}

.h_4\.5\/10 {
	height: 45% !important;
}

.h_5\/10 {
	height: 50% !important;
}

.h_5\.5\/10 {
	height: 55% !important;
}

.h_6\/10 {
	height: 60% !important;
}

.h_6\.5\/10 {
	height: 65% !important;
}

.h_7\/10 {
	height: 70% !important;
}

.h_7\.5\/10 {
	height: 75% !important;
}

.h_8\/10 {
	height: 80% !important;
}

.h_8\.5\/10 {
	height: 85% !important;
}

.h_9\/10 {
	height: 90% !important;
}

.h_9\.5\/10 {
	height: 95% !important;
}

.h_full {
	height: 100% !important;
}

.h_auto {
	height: auto !important;
}

.h_0 {
	height: 0px !important;
}

.h_5 {
	height: 5px !important;
}

.h_10 {
	height: 10px !important;
}

.h_15 {
	height: 15px !important;
}

.h_20 {
	height: 20px !important;
}

.h_25 {
	height: 25px !important;
}

.h_30 {
	height: 30px !important;
}

.h_35 {
	height: 35px !important;
}

.h_40 {
	height: 40px !important;
}

.h_45 {
	height: 45px !important;
}

.h_50 {
	height: 50px !important;
}

.h_55 {
	height: 55px !important;
}

.h_60 {
	height: 60px !important;
}

.h_65 {
	height: 65px !important;
}

.h_70 {
	height: 70px !important;
}

.h_75 {
	height: 75px !important;
}

.h_80 {
	height: 80px !important;
}

.h_85 {
	height: 85px !important;
}

.h_90 {
	height: 90px !important;
}

.h_95 {
	height: 95px !important;
}

.h_100 {
	height: 100px !important;
}

.h_105 {
	height: 105px !important;
}

.h_110 {
	height: 110px !important;
}

.h_115 {
	height: 115px !important;
}

.h_120 {
	height: 120px !important;
}

.h_125 {
	height: 125px !important;
}

.h_130 {
	height: 130px !important;
}

.h_135 {
	height: 135px !important;
}

.h_140 {
	height: 140px !important;
}

.h_145 {
	height: 145px !important;
}

.h_150 {
	height: 150px !important;
}

.h_155 {
	height: 155px !important;
}

.h_160 {
	height: 160px !important;
}

.h_165 {
	height: 165px !important;
}

.h_170 {
	height: 170px !important;
}

.h_175 {
	height: 175px !important;
}

.h_180 {
	height: 180px !important;
}

.h_185 {
	height: 185px !important;
}

.h_190 {
	height: 190px !important;
}

.h_195 {
	height: 195px !important;
}

.h_200 {
	height: 200px !important;
}

.h_205 {
	height: 205px !important;
}

.h_210 {
	height: 210px !important;
}

.h_215 {
	height: 215px !important;
}

.h_220 {
	height: 220px !important;
}

.h_225 {
	height: 225px !important;
}

.h_230 {
	height: 230px !important;
}

.h_235 {
	height: 235px !important;
}

.h_240 {
	height: 240px !important;
}

.h_245 {
	height: 245px !important;
}

.h_250 {
	height: 250px !important;
}

.h_255 {
	height: 255px !important;
}

.h_260 {
	height: 260px !important;
}

.h_265 {
	height: 265px !important;
}

.h_270 {
	height: 270px !important;
}

.h_275 {
	height: 275px !important;
}

.h_280 {
	height: 280px !important;
}

.h_285 {
	height: 285px !important;
}

.h_290 {
	height: 290px !important;
}

.h_295 {
	height: 295px !important;
}

.h_300 {
	height: 300px !important;
}

.h_305 {
	height: 305px !important;
}

.h_310 {
	height: 310px !important;
}

.h_315 {
	height: 315px !important;
}

.h_320 {
	height: 320px !important;
}

.h_325 {
	height: 325px !important;
}

.h_330 {
	height: 330px !important;
}

.h_335 {
	height: 335px !important;
}

.h_340 {
	height: 340px !important;
}

.h_345 {
	height: 345px !important;
}

.h_350 {
	height: 350px !important;
}

.h_355 {
	height: 355px !important;
}

.h_360 {
	height: 360px !important;
}

.h_365 {
	height: 365px !important;
}

.h_370 {
	height: 370px !important;
}

.h_375 {
	height: 375px !important;
}

.h_380 {
	height: 380px !important;
}

.h_385 {
	height: 385px !important;
}

.h_390 {
	height: 390px !important;
}

.h_395 {
	height: 395px !important;
}

.h_400 {
	height: 400px !important;
}

.h_405 {
	height: 405px !important;
}

.h_410 {
	height: 410px !important;
}

.h_415 {
	height: 415px !important;
}

.h_420 {
	height: 420px !important;
}

.h_425 {
	height: 425px !important;
}

.h_430 {
	height: 430px !important;
}

.h_435 {
	height: 435px !important;
}

.h_440 {
	height: 440px !important;
}

.h_445 {
	height: 445px !important;
}

.h_450 {
	height: 450px !important;
}

.h_455 {
	height: 455px !important;
}

.h_460 {
	height: 460px !important;
}

.h_465 {
	height: 465px !important;
}

.h_470 {
	height: 470px !important;
}

.h_475 {
	height: 475px !important;
}

.h_480 {
	height: 480px !important;
}

.h_485 {
	height: 485px !important;
}

.h_490 {
	height: 490px !important;
}

.h_495 {
	height: 495px !important;
}

.h_500 {
	height: 500px !important;
}

.h_525 {
	height: 525px !important;
}

.h_550 {
	height: 550px !important;
}

.h_575 {
	height: 575px !important;
}

.h_600 {
	height: 600px !important;
}

.h_625 {
	height: 625px !important;
}

.h_650 {
	height: 650px !important;
}

.h_675 {
	height: 675px !important;
}

.h_700 {
	height: 700px !important;
}

.h_725 {
	height: 725px !important;
}

.h_750 {
	height: 750px !important;
}

.h_775 {
	height: 775px !important;
}

.h_800 {
	height: 800px !important;
}

.h_825 {
	height: 825px !important;
}

.h_850 {
	height: 850px !important;
}

.h_875 {
	height: 875px !important;
}

.h_900 {
	height: 900px !important;
}

.h_925 {
	height: 925px !important;
}

.h_950 {
	height: 950px !important;
}

.h_975 {
	height: 975px !important;
}

.h_1000 {
	height: 1000px !important;
}

/* min-width */
.min_w_0 {
	min-width: 0 !important;
}

.min_w_25 {
	min-width: 25px !important;
}

.min_w_50 {
	min-width: 50px !important;
}

.min_w_75 {
	min-width: 75px !important;
}

.min_w_100 {
	min-width: 100px !important;
}

.min_w_125 {
	min-width: 125px !important;
}

.min_w_150 {
	min-width: 150px !important;
}

.min_w_175 {
	min-width: 175px !important;
}

.min_w_200 {
	min-width: 200px !important;
}

.min_w_225 {
	min-width: 225px !important;
}

.min_w_250 {
	min-width: 250px !important;
}

.min_w_275 {
	min-width: 275px !important;
}

.min_w_300 {
	min-width: 300px !important;
}

.min_w_325 {
	min-width: 325px !important;
}

.min_w_350 {
	min-width: 350px !important;
}

.min_w_375 {
	min-width: 375px !important;
}

.min_w_400 {
	min-width: 400px !important;
}

.min_w_425 {
	min-width: 425px !important;
}

.min_w_450 {
	min-width: 450px !important;
}

.min_w_475 {
	min-width: 475px !important;
}

.min_w_500 {
	min-width: 500px !important;
}

.min_w_525 {
	min-width: 525px !important;
}

.min_w_550 {
	min-width: 550px !important;
}

.min_w_575 {
	min-width: 575px !important;
}

.min_w_600 {
	min-width: 600px !important;
}

.min_w_625 {
	min-width: 625px !important;
}

.min_w_650 {
	min-width: 650px !important;
}

.min_w_675 {
	min-width: 675px !important;
}

.min_w_700 {
	min-width: 700px !important;
}

.min_w_725 {
	min-width: 725px !important;
}

.min_w_750 {
	min-width: 750px !important;
}

.min_w_775 {
	min-width: 775px !important;
}

.min_w_800 {
	min-width: 800px !important;
}

.min_w_825 {
	min-width: 825px !important;
}

.min_w_850 {
	min-width: 850px !important;
}

.min_w_875 {
	min-width: 875px !important;
}

.min_w_900 {
	min-width: 900px !important;
}

.min_w_925 {
	min-width: 925px !important;
}

.min_w_950 {
	min-width: 950px !important;
}

.min_w_975 {
	min-width: 975px !important;
}

.min_w_1000 {
	min-width: 1000px !important;
}

/* min-height */
.min_h_0 {
	min-height: 0 !important;
}

.min_h_25 {
	min-height: 25px !important;
}

.min_h_50 {
	min-height: 50px !important;
}

.min_h_75 {
	min-height: 75px !important;
}

.min_h_100 {
	min-height: 100px !important;
}

.min_h_125 {
	min-height: 125px !important;
}

.min_h_150 {
	min-height: 150px !important;
}

.min_h_175 {
	min-height: 175px !important;
}

.min_h_200 {
	min-height: 200px !important;
}

.min_h_225 {
	min-height: 225px !important;
}

.min_h_250 {
	min-height: 250px !important;
}

.min_h_275 {
	min-height: 275px !important;
}

.min_h_300 {
	min-height: 300px !important;
}

.min_h_325 {
	min-height: 325px !important;
}

.min_h_350 {
	min-height: 350px !important;
}

.min_h_375 {
	min-height: 375px !important;
}

.min_h_400 {
	min-height: 300px !important;
}

.min_h_425 {
	min-height: 325px !important;
}

.min_h_450 {
	min-height: 350px !important;
}

.min_h_475 {
	min-height: 375px !important;
}

.min_h_400 {
	min-height: 400px !important;
}

.min_h_425 {
	min-height: 425px !important;
}

.min_h_450 {
	min-height: 450px !important;
}

.min_h_475 {
	min-height: 475px !important;
}

.min_h_500 {
	min-height: 500px !important;
}

.min_h_525 {
	min-height: 525px !important;
}

.min_h_550 {
	min-height: 550px !important;
}

.min_h_575 {
	min-height: 575px !important;
}

.min_h_600 {
	min-height: 600px !important;
}

.min_h_625 {
	min-height: 625px !important;
}

.min_h_650 {
	min-height: 650px !important;
}

.min_h_675 {
	min-height: 675px !important;
}

.min_h_700 {
	min-height: 700px !important;
}

.min_h_725 {
	min-height: 725px !important;
}

.min_h_750 {
	min-height: 750px !important;
}

.min_h_775 {
	min-height: 775px !important;
}

.min_h_800 {
	min-height: 800px !important;
}

.min_h_825 {
	min-height: 825px !important;
}

.min_h_850 {
	min-height: 850px !important;
}

.min_h_875 {
	min-height: 875px !important;
}

.min_h_900 {
	min-height: 900px !important;
}

.min_h_925 {
	min-height: 925px !important;
}

.min_h_950 {
	min-height: 950px !important;
}

.min_h_975 {
	min-height: 975px !important;
}

.min_h_1000 {
	min-height: 1000px !important;
}

/* max-width */
.max_w_none {
	max-width: none !important;
}

.max_w_0 {
	max-width: 0 !important;
}

.max_w_25 {
	max-width: 25px !important;
}

.max_w_50 {
	max-width: 50px !important;
}

.max_w_75 {
	max-width: 75px !important;
}

.max_w_100 {
	max-width: 100px !important;
}

.max_w_125 {
	max-width: 125px !important;
}

.max_w_150 {
	max-width: 150px !important;
}

.max_w_175 {
	max-width: 175px !important;
}

.max_w_200 {
	max-width: 200px !important;
}

.max_w_225 {
	max-width: 225px !important;
}

.max_w_250 {
	max-width: 250px !important;
}

.max_w_275 {
	max-width: 275px !important;
}

.max_w_300 {
	max-width: 300px !important;
}

.max_w_325 {
	max-width: 325px !important;
}

.max_w_350 {
	max-width: 350px !important;
}

.max_w_375 {
	max-width: 375px !important;
}

.max_w_400 {
	max-width: 400px !important;
}

.max_w_425 {
	max-width: 425px !important;
}

.max_w_450 {
	max-width: 450px !important;
}

.max_w_475 {
	max-width: 475px !important;
}

.max_w_500 {
	max-width: 500px !important;
}

.max_w_525 {
	max-width: 525px !important;
}

.max_w_550 {
	max-width: 550px !important;
}

.max_w_575 {
	max-width: 575px !important;
}

.max_w_600 {
	max-width: 600px !important;
}

.max_w_625 {
	max-width: 625px !important;
}

.max_w_650 {
	max-width: 650px !important;
}

.max_w_675 {
	max-width: 675px !important;
}

.max_w_700 {
	max-width: 700px !important;
}

.max_w_725 {
	max-width: 725px !important;
}

.max_w_750 {
	max-width: 750px !important;
}

.max_w_775 {
	max-width: 775px !important;
}

.max_w_800 {
	max-width: 800px !important;
}

.max_w_825 {
	max-width: 825px !important;
}

.max_w_850 {
	max-width: 850px !important;
}

.max_w_875 {
	max-width: 875px !important;
}

.max_w_900 {
	max-width: 900px !important;
}

.max_w_925 {
	max-width: 925px !important;
}

.max_w_950 {
	max-width: 950px !important;
}

.max_w_975 {
	max-width: 975px !important;
}

.max_w_1000 {
	max-width: 1000px !important;
}

/* max-height */
.max_h_none {
	max-height: none !important;
}

.max_h_0 {
	max-height: 0 !important;
}

.max_h_25 {
	max-height: 25px !important;
}

.max_h_50 {
	max-height: 50px !important;
}

.max_h_75 {
	max-height: 75px !important;
}

.max_h_100 {
	max-height: 100px !important;
}

.max_h_125 {
	max-height: 125px !important;
}

.max_h_150 {
	max-height: 150px !important;
}

.max_h_175 {
	max-height: 175px !important;
}

.max_h_200 {
	max-height: 200px !important;
}

.max_h_225 {
	max-height: 225px !important;
}

.max_h_250 {
	max-height: 250px !important;
}

.max_h_275 {
	max-height: 275px !important;
}

.max_h_300 {
	max-height: 300px !important;
}

.max_h_325 {
	max-height: 325px !important;
}

.max_h_350 {
	max-height: 350px !important;
}

.max_h_375 {
	max-height: 375px !important;
}

.max_h_400 {
	max-height: 400px !important;
}

.max_h_425 {
	max-height: 425px !important;
}

.max_h_450 {
	max-height: 450px !important;
}

.max_h_475 {
	max-height: 475px !important;
}

.max_h_500 {
	max-height: 500px !important;
}

.max_h_525 {
	max-height: 525px !important;
}

.max_h_550 {
	max-height: 550px !important;
}

.max_h_575 {
	max-height: 575px !important;
}

.max_h_600 {
	max-height: 600px !important;
}

.max_h_625 {
	max-height: 625px !important;
}

.max_h_650 {
	max-height: 650px !important;
}

.max_h_675 {
	max-height: 675px !important;
}

.max_h_700 {
	max-height: 700px !important;
}

.max_h_725 {
	max-height: 725px !important;
}

.max_h_750 {
	max-height: 750px !important;
}

.max_h_775 {
	max-height: 775px !important;
}

.max_h_800 {
	max-height: 800px !important;
}

.max_h_825 {
	max-height: 825px !important;
}

.max_h_850 {
	max-height: 850px !important;
}

.max_h_875 {
	max-height: 875px !important;
}

.max_h_900 {
	max-height: 900px !important;
}

.max_h_925 {
	max-height: 925px !important;
}

.max_h_950 {
	max-height: 950px !important;
}

.max_h_975 {
	max-height: 975px !important;
}

.max_h_1000 {
	max-height: 1000px !important;
}

/* margin */
.m_auto {
	margin: auto !important;
}

.mx_auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

.my_auto {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

.mt_auto {
	margin-top: auto !important;
}

.mr_auto {
	margin-right: auto !important;
}

.mb_auto {
	margin-bottom: auto !important;
}

.ml_auto {
	margin-left: auto !important;
}

.m0 {
	margin: 0 !important;
}

.mx0 {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.my0 {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.mt0 {
	margin-top: 0 !important;
}

.mr0 {
	margin-right: 0 !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.ml0 {
	margin-left: 0 !important;
}

.mpx {
	margin: 1px !important;
}

.mxpx {
	margin-left: 1px !important;
	margin-right: 1px !important;
}

.mypx {
	margin-top: 1px !important;
	margin-bottom: 1px !important;
}

.mtpx {
	margin-top: 1px !important;
}

.mrpx {
	margin-right: 1px !important;
}

.mbpx {
	margin-bottom: 1px !important;
}

.mlpx {
	margin-left: 1px !important;
}

.m5 {
	margin: 5px !important;
}

.mx5 {
	margin-left: 5px !important;
	margin-right: 5px !important;
}

.my5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mr5 {
	margin-right: 5px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.ml5 {
	margin-left: 5px !important;
}

.m10 {
	margin: 10px !important;
}

.mx10 {
	margin-left: 10px !important;
	margin-right: 10px !important;
}

.my10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.m15 {
	margin: 15px !important;
}

.mx15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}

.my15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mr15 {
	margin-right: 15px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.ml15 {
	margin-left: 15px !important;
}

.m20 {
	margin: 20px !important;
}

.mx20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}

.my20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.m25 {
	margin: 25px !important;
}

.mx25 {
	margin-left: 25px !important;
	margin-right: 25px !important;
}

.my25 {
	margin-top: 25px !important;
	margin-bottom: 25px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mr25 {
	margin-right: 25px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.ml25 {
	margin-left: 25px !important;
}

.m30 {
	margin: 30px !important;
}

.mx30 {
	margin-left: 30px !important;
	margin-right: 30px !important;
}

.my30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.m35 {
	margin: 35px !important;
}

.mx35 {
	margin-left: 35px !important;
	margin-right: 35px !important;
}

.my35 {
	margin-top: 35px !important;
	margin-bottom: 35px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mr35 {
	margin-right: 35px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.ml35 {
	margin-left: 35px !important;
}

.m40 {
	margin: 40px !important;
}

.mx40 {
	margin-left: 40px !important;
	margin-right: 40px !important;
}

.my40 {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.m45 {
	margin: 45px !important;
}

.mx45 {
	margin-left: 45px !important;
	margin-right: 45px !important;
}

.my45 {
	margin-top: 45px !important;
	margin-bottom: 45px !important;
}

.mt45 {
	margin-top: 45px !important;
}

.mr45 {
	margin-right: 45px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.ml45 {
	margin-left: 45px !important;
}

.m50 {
	margin: 50px !important;
}

.mx50 {
	margin-left: 50px !important;
	margin-right: 50px !important;
}

.my50 {
	margin-top: 50px !important;
	margin-bottom: 50px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mr50 {
	margin-right: 50px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.ml50 {
	margin-left: 50px !important;
}

.m55 {
	margin: 55px !important;
}

.mx55 {
	margin-left: 55px !important;
	margin-right: 55px !important;
}

.my55 {
	margin-top: 55px !important;
	margin-bottom: 55px !important;
}

.mt55 {
	margin-top: 55px !important;
}

.mr55 {
	margin-right: 55px !important;
}

.mb55 {
	margin-bottom: 55px !important;
}

.ml55 {
	margin-left: 55px !important;
}

.m60 {
	margin: 60px !important;
}

.mx60 {
	margin-left: 60px !important;
	margin-right: 60px !important;
}

.my60 {
	margin-top: 60px !important;
	margin-bottom: 60px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mr60 {
	margin-right: 60px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.ml60 {
	margin-left: 60px !important;
}

.m65 {
	margin: 65px !important;
}

.mx65 {
	margin-left: 65px !important;
	margin-right: 65px !important;
}

.my65 {
	margin-top: 65px !important;
	margin-bottom: 65px !important;
}

.mt65 {
	margin-top: 65px !important;
}

.mr65 {
	margin-right: 65px !important;
}

.mb65 {
	margin-bottom: 65px !important;
}

.ml65 {
	margin-left: 65px !important;
}

.m70 {
	margin: 70px !important;
}

.mx70 {
	margin-left: 70px !important;
	margin-right: 70px !important;
}

.my70 {
	margin-top: 70px !important;
	margin-bottom: 70px !important;
}

.mt70 {
	margin-top: 70px !important;
}

.mr70 {
	margin-right: 70px !important;
}

.mb70 {
	margin-bottom: 70px !important;
}

.ml70 {
	margin-left: 70px !important;
}

.m75 {
	margin: 75px !important;
}

.mx75 {
	margin-left: 75px !important;
	margin-right: 75px !important;
}

.my75 {
	margin-top: 75px !important;
	margin-bottom: 75px !important;
}

.mt75 {
	margin-top: 75px !important;
}

.mr75 {
	margin-right: 75px !important;
}

.mb75 {
	margin-bottom: 75px !important;
}

.ml75 {
	margin-left: 75px !important;
}

.m80 {
	margin: 80px !important;
}

.mx80 {
	margin-left: 80px !important;
	margin-right: 80px !important;
}

.my80 {
	margin-top: 80px !important;
	margin-bottom: 80px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mr80 {
	margin-right: 80px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.ml80 {
	margin-left: 80px !important;
}

.m85 {
	margin: 85px !important;
}

.mx85 {
	margin-left: 85px !important;
	margin-right: 85px !important;
}

.my85 {
	margin-top: 85px !important;
	margin-bottom: 85px !important;
}

.mt85 {
	margin-top: 85px !important;
}

.mr85 {
	margin-right: 85px !important;
}

.mb85 {
	margin-bottom: 85px !important;
}

.ml85 {
	margin-left: 85px !important;
}

.m90 {
	margin: 90px !important;
}

.mx90 {
	margin-left: 90px !important;
	margin-right: 90px !important;
}

.my90 {
	margin-top: 90px !important;
	margin-bottom: 90px !important;
}

.mt90 {
	margin-top: 90px !important;
}

.mr90 {
	margin-right: 90px !important;
}

.mb90 {
	margin-bottom: 90px !important;
}

.ml90 {
	margin-left: 90px !important;
}

.m95 {
	margin: 95px !important;
}

.mx95 {
	margin-left: 95px !important;
	margin-right: 95px !important;
}

.my95 {
	margin-top: 95px !important;
	margin-bottom: 95px !important;
}

.mt95 {
	margin-top: 95px !important;
}

.mr95 {
	margin-right: 95px !important;
}

.mb95 {
	margin-bottom: 95px !important;
}

.ml95 {
	margin-left: 95px !important;
}

.m100 {
	margin: 100px !important;
}

.mx100 {
	margin-left: 100px !important;
	margin-right: 100px !important;
}

.my100 {
	margin-top: 100px !important;
	margin-bottom: 100px !important;
}

.mt100 {
	margin-top: 100px !important;
}

.mr100 {
	margin-right: 100px !important;
}

.mb100 {
	margin-bottom: 100px !important;
}

.ml100 {
	margin-left: 100px !important;
}

/* padding */
.p0 {
	padding: 0 !important;
}

.px0 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.py0 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.pt0 {
	padding-top: 0 !important;
}

.pr0 {
	padding-right: 0 !important;
}

.pb0 {
	padding-bottom: 0 !important;
}

.pl0 {
	padding-left: 0 !important;
}

.ppx {
	padding: 1px !important;
}

.pxpx {
	padding-left: 1px !important;
	padding-right: 1px !important;
}

.pypx {
	padding-top: 1px !important;
	padding-bottom: 1px !important;
}

.ptpx {
	padding-top: 1px !important;
}

.prpx {
	padding-right: 1px !important;
}

.pbpx {
	padding-bottom: 1px !important;
}

.plpx {
	padding-left: 1px !important;
}

.p5 {
	padding: 5px !important;
}

.px5 {
	padding-left: 5px !important;
	padding-right: 5px !important;
}

.py5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.pt5 {
	padding-top: 5px !important;
}

.pr5 {
	padding-right: 5px !important;
}

.pb5 {
	padding-bottom: 5px !important;
}

.pl5 {
	padding-left: 5px !important;
}

.p10 {
	padding: 10px !important;
}

.px10 {
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.py10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pr10 {
	padding-right: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pl10 {
	padding-left: 10px !important;
}

.p15 {
	padding: 15px !important;
}

.px15 {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.py15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pr15 {
	padding-right: 15px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pl15 {
	padding-left: 15px !important;
}

.p20 {
	padding: 20px !important;
}

.px20 {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.py20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.p25 {
	padding: 25px !important;
}

.px25 {
	padding-left: 25px !important;
	padding-right: 25px !important;
}

.py25 {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pr25 {
	padding-right: 25px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.pl25 {
	padding-left: 25px !important;
}

.p30 {
	padding: 30px !important;
}

.px30 {
	padding-left: 30px !important;
	padding-right: 30px !important;
}

.py30 {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pr30 {
	padding-right: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.pl30 {
	padding-left: 30px !important;
}

.p35 {
	padding: 35px !important;
}

.px35 {
	padding-left: 35px !important;
	padding-right: 35px !important;
}

.py35 {
	padding-top: 35px !important;
	padding-bottom: 35px !important;
}

.pt35 {
	padding-top: 35px !important;
}

.pr35 {
	padding-right: 35px !important;
}

.pb35 {
	padding-bottom: 35px !important;
}

.pl35 {
	padding-left: 35px !important;
}

.p40 {
	padding: 40px !important;
}

.px40 {
	padding-left: 40px !important;
	padding-right: 40px !important;
}

.py40 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.p45 {
	padding: 45px !important;
}

.px45 {
	padding-left: 45px !important;
	padding-right: 45px !important;
}

.py45 {
	padding-top: 45px !important;
	padding-bottom: 45px !important;
}

.pt45 {
	padding-top: 45px !important;
}

.pr45 {
	padding-right: 45px !important;
}

.pb45 {
	padding-bottom: 45px !important;
}

.pl45 {
	padding-left: 45px !important;
}

.p50 {
	padding: 50px !important;
}

.px50 {
	padding-left: 50px !important;
	padding-right: 50px !important;
}

.py50 {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pr50 {
	padding-right: 50px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

.pl50 {
	padding-left: 50px !important;
}

.p55 {
	padding: 55px !important;
}

.px55 {
	padding-left: 55px !important;
	padding-right: 55px !important;
}

.py55 {
	padding-top: 55px !important;
	padding-bottom: 55px !important;
}

.pt55 {
	padding-top: 55px !important;
}

.pr55 {
	padding-right: 55px !important;
}

.pb55 {
	padding-bottom: 55px !important;
}

.pl55 {
	padding-left: 55px !important;
}

.p60 {
	padding: 60px !important;
}

.px60 {
	padding-left: 60px !important;
	padding-right: 60px !important;
}

.py60 {
	padding-top: 60px !important;
	padding-bottom: 60px !important;
}

.pt60 {
	padding-top: 60px !important;
}

.pr60 {
	padding-right: 60px !important;
}

.pb60 {
	padding-bottom: 60px !important;
}

.pl60 {
	padding-left: 60px !important;
}

.p65 {
	padding: 65px !important;
}

.px65 {
	padding-left: 65px !important;
	padding-right: 65px !important;
}

.py65 {
	padding-top: 65px !important;
	padding-bottom: 65px !important;
}

.pt65 {
	padding-top: 65px !important;
}

.pr65 {
	padding-right: 65px !important;
}

.pb65 {
	padding-bottom: 65px !important;
}

.pl65 {
	padding-left: 65px !important;
}

.p70 {
	padding: 70px !important;
}

.px70 {
	padding-left: 70px !important;
	padding-right: 70px !important;
}

.py70 {
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}

.pt70 {
	padding-top: 70px !important;
}

.pr70 {
	padding-right: 70px !important;
}

.pb70 {
	padding-bottom: 70px !important;
}

.pl70 {
	padding-left: 70px !important;
}

.p75 {
	padding: 75px !important;
}

.px75 {
	padding-left: 75px !important;
	padding-right: 75px !important;
}

.py75 {
	padding-top: 75px !important;
	padding-bottom: 75px !important;
}

.pt75 {
	padding-top: 75px !important;
}

.pr75 {
	padding-right: 75px !important;
}

.pb75 {
	padding-bottom: 75px !important;
}

.pl75 {
	padding-left: 75px !important;
}

.p80 {
	padding: 80px !important;
}

.px80 {
	padding-left: 80px !important;
	padding-right: 80px !important;
}

.py80 {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.pt80 {
	padding-top: 80px !important;
}

.pr80 {
	padding-right: 80px !important;
}

.pb80 {
	padding-bottom: 80px !important;
}

.pl80 {
	padding-left: 80px !important;
}

.p85 {
	padding: 85px !important;
}

.px85 {
	padding-left: 85px !important;
	padding-right: 85px !important;
}

.py85 {
	padding-top: 85px !important;
	padding-bottom: 85px !important;
}

.pt85 {
	padding-top: 85px !important;
}

.pr85 {
	padding-right: 85px !important;
}

.pb85 {
	padding-bottom: 85px !important;
}

.pl85 {
	padding-left: 85px !important;
}

.p90 {
	padding: 90px !important;
}

.px90 {
	padding-left: 90px !important;
	padding-right: 90px !important;
}

.py90 {
	padding-top: 90px !important;
	padding-bottom: 90px !important;
}

.pt90 {
	padding-top: 90px !important;
}

.pr90 {
	padding-right: 90px !important;
}

.pb90 {
	padding-bottom: 90px !important;
}

.pl90 {
	padding-left: 90px !important;
}

.p95 {
	padding: 95px !important;
}

.px95 {
	padding-left: 95px !important;
	padding-right: 95px !important;
}

.py95 {
	padding-top: 95px !important;
	padding-bottom: 95px !important;
}

.pt95 {
	padding-top: 95px !important;
}

.pr95 {
	padding-right: 95px !important;
}

.pb95 {
	padding-bottom: 95px !important;
}

.pl95 {
	padding-left: 95px !important;
}

.p100 {
	padding: 100px !important;
}

.px100 {
	padding-left: 100px !important;
	padding-right: 100px !important;
}

.py100 {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

.pt100 {
	padding-top: 100px !important;
}

.pr100 {
	padding-right: 100px !important;
}

.pb100 {
	padding-bottom: 100px !important;
}

.pl100 {
	padding-left: 100px !important;
}

/* border */
.border {
	border-width: 1px !important;
}

.border_2 {
	border-width: 2px !important;
}

.border_4 {
	border-width: 4px !important;
}

.border_6 {
	border-width: 6px !important;
}

.border_8 {
	border-width: 8px !important;
}

.border_10 {
	border-width: 10px !important;
}

.border_0 {
	border-width: 0 !important;
}

.border_t_0 {
	border-top-width: 0 !important;
}

.border_r_0 {
	border-right-width: 0 !important;
}

.border_b_0 {
	border-bottom-width: 0 !important;
}

.border_l_0 {
	border-left-width: 0 !important;
}

.border_x_0 {
	border-left-width: 0 !important;
	border-right-width: 0 !important;
}

.border_y_0 {
	border-top-width: 0 !important;
	border-bottom-width: 0 !important;
}

.border_solid {
	border-style: solid !important;
}

.border_dashed {
	border-style: dashed !important;
}

.border_dotted {
	border-style: dotted !important;
}

.border_double {
	border-style: double !important;
}

.border_transparent {
	border-color: transparent !important;
}

.border_current {
	border-color: currentColor !important;
}

.border_black {
	border-color: #000 !important;
}

.border_white {
	border-color: #fff !important;
}

.border_ddd {
	border-color: #ddd !important;
}

.border_fafafa {
	border-color: #fafafa !important;
}

.border_t_transparent {
	border-top-color: transparent !important;
}

.border_t_current {
	border-top-color: currentColor !important;
}

.border_t_black {
	border-top-color: #000 !important;
}

.border_t_white {
	border-top-color: #fff !important;
}

.border_t_ddd {
	border-top-color: #ddd !important;
}

.border_t_fafafa {
	border-top-color: #fafafa !important;
}

.border_r_transparent {
	border-right-color: transparent !important;
}

.border_r_current {
	border-right-color: currentColor !important;
}

.border_r_black {
	border-right-color: #000 !important;
}

.border_r_white {
	border-right-color: #fff !important;
}

.border_r_ddd {
	border-right-color: #ddd !important;
}

.border_r_fafafa {
	border-right-color: #fafafa !important;
}

.border_b_transparent {
	border-bottom-color: transparent !important;
}

.border_b_current {
	border-bottom-color: currentColor !important;
}

.border_b_black {
	border-bottom-color: #000 !important;
}

.border_b_white {
	border-bottom-color: #fff !important;
}

.border_b_ddd {
	border-bottom-color: #ddd !important;
}

.border_b_fafafa {
	border-bottom-color: #fafafa !important;
}

.border_l_transparent {
	border-left-color: transparent !important;
}

.border_l_current {
	border-left-color: currentColor !important;
}

.border_l_black {
	border-left-color: #000 !important;
}

.border_l_white {
	border-left-color: #fff !important;
}

.border_l_ddd {
	border-left-color: #ddd !important;
}

.border_l_fafafa {
	border-left-color: #fafafa !important;
}

.border_x_transparent {
	border-left-color: transparent !important;
	border-right-color: transparent !important;
}

.border_x_current {
	border-left-color: currentColor !important;
	border-right-color: currentColor !important;
}

.border_x_black {
	border-left-color: #000 !important;
	border-right-color: #000 !important;
}

.border_x_white {
	border-left-color: #fff !important;
	border-right-color: #fff !important;
}

.border_x_ddd {
	border-left-color: #ddd !important;
	border-right-color: #ddd !important;
}

.border_x_fafafa {
	border-left-color: #fafafa !important;
	border-right-color: #fafafa !important;
}

.border_y_transparent {
	border-top-color: transparent !important;
	border-bottom-color: transparent !important;
}

.border_y_current {
	border-top-color: currentColor !important;
	border-bottom-color: currentColor !important;
}

.border_y_black {
	border-top-color: #000 !important;
	border-bottom-color: #000 !important;
}

.border_y_white {
	border-top-color: #fff !important;
	border-bottom-color: #fff !important;
}

.border_y_ddd {
	border-top-color: #ddd !important;
	border-bottom-color: #ddd !important;
}

.border_y_fafafa {
	border-top-color: #fafafa !important;
	border-bottom-color: #fafafa !important;
}

.round1\/2 {
	border-radius: 50% !important;
}

.round0 {
	border-radius: 0 !important;
}

.round1 {
	border-radius: 1px !important;
}

.round2 {
	border-radius: 2px !important;
}

.round3 {
	border-radius: 3px !important;
}

.round4 {
	border-radius: 4px !important;
}

.round5 {
	border-radius: 5px !important;
}

.round6 {
	border-radius: 6px !important;
}

.round7 {
	border-radius: 7px !important;
}

.round8 {
	border-radius: 8px !important;
}

.round9 {
	border-radius: 9px !important;
}

.round10 {
	border-radius: 10px !important;
}

.round11 {
	border-radius: 11px !important;
}

.round12 {
	border-radius: 12px !important;
}

.round13 {
	border-radius: 13px !important;
}

.round14 {
	border-radius: 14px !important;
}

.round15 {
	border-radius: 15px !important;
}

.round16 {
	border-radius: 16px !important;
}

.round17 {
	border-radius: 17px !important;
}

.round18 {
	border-radius: 18px !important;
}

.round19 {
	border-radius: 19px !important;
}

.round20 {
	border-radius: 20px !important;
}

.round21 {
	border-radius: 21px !important;
}

.round22 {
	border-radius: 22px !important;
}

.round23 {
	border-radius: 23px !important;
}

.round24 {
	border-radius: 24px !important;
}

.round25 {
	border-radius: 25px !important;
}

.round26 {
	border-radius: 26px !important;
}

.round27 {
	border-radius: 27px !important;
}

.round28 {
	border-radius: 28px !important;
}

.round29 {
	border-radius: 29px !important;
}

.round30 {
	border-radius: 30px !important;
}

.round31 {
	border-radius: 31px !important;
}

.round32 {
	border-radius: 32px !important;
}

.round33 {
	border-radius: 33px !important;
}

.round34 {
	border-radius: 34px !important;
}

.round35 {
	border-radius: 35px !important;
}

.round36 {
	border-radius: 36px !important;
}

.round37 {
	border-radius: 37px !important;
}

.round38 {
	border-radius: 38px !important;
}

.round39 {
	border-radius: 39px !important;
}

.round40 {
	border-radius: 40px !important;
}

.round41 {
	border-radius: 41px !important;
}

.round42 {
	border-radius: 42px !important;
}

.round43 {
	border-radius: 43px !important;
}

.round44 {
	border-radius: 44px !important;
}

.round45 {
	border-radius: 45px !important;
}

.round46 {
	border-radius: 46px !important;
}

.round47 {
	border-radius: 47px !important;
}

.round48 {
	border-radius: 48px !important;
}

.round49 {
	border-radius: 49px !important;
}

.round50 {
	border-radius: 50px !important;
}

/* font */
.fw100 {
	font-weight: 100 !important;
}

.fw200 {
	font-weight: 200 !important;
}

.fw300 {
	font-weight: 300 !important;
}

.fw400 {
	font-weight: 400 !important;
}

.fw500 {
	font-weight: 500 !important;
}

.fw600 {
	font-weight: 600 !important;
}

.fw700 {
	font-weight: 700 !important;
}

.fw800 {
	font-weight: 800 !important;
}

.fw900 {
	font-weight: 900 !important;
}

.fs10 {
	font-size: 10px !important;
}

.fs12 {
	font-size: 12px !important;
}

.fs14 {
	font-size: 14px !important;
}

.fs16 {
	font-size: 16px !important;
}

.fs18 {
	font-size: 18px !important;
}

.fs20 {
	font-size: 20px !important;
}

.fs22 {
	font-size: 22px !important;
}

.fs24 {
	font-size: 24px !important;
}

.fs26 {
	font-size: 26px !important;
}

.fs28 {
	font-size: 28px !important;
}

.fs20 {
	font-size: 20px !important;
}

.fs30 {
	font-size: 30px !important;
}

.fs32 {
	font-size: 32px !important;
}

.fs34 {
	font-size: 34px !important;
}

.fs36 {
	font-size: 36px !important;
}

.fs38 {
	font-size: 38px !important;
}

.fs40 {
	font-size: 40px !important;
}

.fs42 {
	font-size: 42px !important;
}

.fs44 {
	font-size: 44px !important;
}

.fs46 {
	font-size: 46px !important;
}

.fs48 {
	font-size: 48px !important;
}

.fs50 {
	font-size: 50px !important;
}

.lh10 {
	line-height: 10px !important;
}

.lh12 {
	line-height: 12px !important;
}

.lh14 {
	line-height: 14px !important;
}

.lh16 {
	line-height: 16px !important;
}

.lh18 {
	line-height: 18px !important;
}

.lh20 {
	line-height: 20px !important;
}

.lh22 {
	line-height: 22px !important;
}

.lh24 {
	line-height: 24px !important;
}

.lh26 {
	line-height: 26px !important;
}

.lh28 {
	line-height: 28px !important;
}

.lh30 {
	line-height: 30px !important;
}

.lh32 {
	line-height: 32px !important;
}

.lh34 {
	line-height: 34px !important;
}

.lh36 {
	line-height: 36px !important;
}

.lh38 {
	line-height: 38px !important;
}

.lh40 {
	line-height: 40px !important;
}

.lh42 {
	line-height: 42px !important;
}

.lh44 {
	line-height: 44px !important;
}

.lh46 {
	line-height: 46px !important;
}

.lh48 {
	line-height: 48px !important;
}

.lh50 {
	line-height: 50px !important;
}

.lh52 {
	line-height: 52px !important;
}

.lh54 {
	line-height: 54px !important;
}

.lh56 {
	line-height: 56px !important;
}

.lh58 {
	line-height: 58px !important;
}

.lh60 {
	line-height: 60px !important;
}

.lh62 {
	line-height: 62px !important;
}

.lh64 {
	line-height: 64px !important;
}

.lh66 {
	line-height: 66px !important;
}

.lh68 {
	line-height: 68px !important;
}

.lh70 {
	line-height: 70px !important;
}

.lh72 {
	line-height: 72px !important;
}

.lh74 {
	line-height: 74px !important;
}

.lh76 {
	line-height: 76px !important;
}

.lh78 {
	line-height: 78px !important;
}

.lh80 {
	line-height: 80px !important;
}

.lh82 {
	line-height: 82px !important;
}

.lh84 {
	line-height: 84px !important;
}

.lh86 {
	line-height: 86px !important;
}

.lh88 {
	line-height: 88px !important;
}

.lh90 {
	line-height: 90px !important;
}

.lh92 {
	line-height: 92px !important;
}

.lh94 {
	line-height: 94px !important;
}

.lh96 {
	line-height: 96px !important;
}

.lh98 {
	line-height: 98px !important;
}

.lh100 {
	line-height: 100px !important;
}

.white_nowrap {
	white-space: nowrap !important;
}

.white_normal {
	white-space: normal !important;
}

.text_ellipsis {
	text-overflow: ellipsis !important;
}

.text_clip {
	text-overflow: ellipsis !important;
}

.break_all {
	word-break: break-all !important;
}

.keep_all {
	word-break: keep-all !important;
}

/* table */
.table-auto {
	table-layout: auto !important;
}

.table-fixed {
	table-layout: fixed !important;
}

/* align */
.tl {
	text-align: left !important;
}

.tr {
	text-align: right !important;
}

.tc {
	text-align: center !important;
}

.j_center {
	justify-content: center !important;
}

.j_start {
	justify-content: flex-start !important;
}

.j_end {
	justify-content: flex-end !important;
}

.j_around {
	justify-content: space-around !important;
}

.j_between {
	justify-content: space-between !important;
}

.j_evenly {
	justify-content: space-evenly !important;
}

.j_s_center {
	justify-self: center !important;
}

.j_s_start {
	justify-self: flex-start !important;
}

.j_s_end {
	justify-self: flex-end !important;
}

.a_center {
	align-items: center !important;
}

.a_start {
	align-items: flex-start !important;
}

.a_end {
	align-items: flex-end !important;
}

.a_s_center {
	align-self: center !important;
}

.a_s_start {
	align-self: flex-start !important;
}

.a_s_end {
	align-self: flex-end !important;
}

.f_d_col {
	flex-direction: column !important;
}

.f_d_row {
	flex-direction: row !important;
}

.gap0 {
	gap: 0 !important;
}

.c_gap0 {
	column-gap: 0 !important;
}

.r_gap0 {
	row-gap: 0 !important;
}

.gap2 {
	gap: 2px !important;
}

.c_gap2 {
	column-gap: 2px !important;
}

.r_gap2 {
	row-gap: 2px !important;
}

.gap4 {
	gap: 4px !important;
}

.c_gap4 {
	column-gap: 4px !important;
}

.r_gap4 {
	row-gap: 4px !important;
}

.gap5 {
	gap: 5px !important;
}

.c_gap5 {
	column-gap: 5px !important;
}

.r_gap5 {
	row-gap: 5px !important;
}

.gap6 {
	gap: 6px !important;
}

.c_gap6 {
	column-gap: 6px !important;
}

.r_gap6 {
	row-gap: 6px !important;
}

.gap8 {
	gap: 8px !important;
}

.c_gap8 {
	column-gap: 8px !important;
}

.r_gap8 {
	row-gap: 8px !important;
}

.gap10 {
	gap: 10px !important;
}

.c_gap10 {
	column-gap: 10px !important;
}

.r_gap10 {
	row-gap: 10px !important;
}

.gap12 {
	gap: 12px !important;
}

.c_gap12 {
	column-gap: 12px !important;
}

.r_gap12 {
	row-gap: 12px !important;
}

.gap14 {
	gap: 14px !important;
}

.c_gap14 {
	column-gap: 14px !important;
}

.r_gap14 {
	row-gap: 14px !important;
}

.gap15 {
	gap: 15px !important;
}

.c_gap15 {
	column-gap: 15px !important;
}

.r_gap15 {
	row-gap: 15px !important;
}

.gap16 {
	gap: 16px !important;
}

.c_gap16 {
	column-gap: 16px !important;
}

.r_gap16 {
	row-gap: 16px !important;
}

.gap18 {
	gap: 18px !important;
}

.c_gap18 {
	column-gap: 18px !important;
}

.r_gap18 {
	row-gap: 18px !important;
}

.gap20 {
	gap: 20px !important;
}

.c_gap20 {
	column-gap: 20px !important;
}

.r_gap20 {
	row-gap: 20px !important;
}

.gap22 {
	gap: 22px !important;
}

.c_gap22 {
	column-gap: 22px !important;
}

.r_gap22 {
	row-gap: 22px !important;
}

.gap24 {
	gap: 24px !important;
}

.c_gap24 {
	column-gap: 24px !important;
}

.r_gap24 {
	row-gap: 24px !important;
}

.gap25 {
	gap: 25px !important;
}

.c_gap25 {
	column-gap: 25px !important;
}

.r_gap25 {
	row-gap: 25px !important;
}

.gap26 {
	gap: 26px !important;
}

.c_gap26 {
	column-gap: 26px !important;
}

.r_gap26 {
	row-gap: 26px !important;
}

.gap28 {
	gap: 28px !important;
}

.c_gap28 {
	column-gap: 28px !important;
}

.r_gap28 {
	row-gap: 28px !important;
}

.gap30 {
	gap: 30px !important;
}

.c_gap30 {
	column-gap: 30px !important;
}

.r_gap30 {
	row-gap: 30px !important;
}

.gap32 {
	gap: 32px !important;
}

.c_gap32 {
	column-gap: 32px !important;
}

.r_gap32 {
	row-gap: 32px !important;
}

.gap34 {
	gap: 34px !important;
}

.c_gap34 {
	column-gap: 34px !important;
}

.r_gap34 {
	row-gap: 34px !important;
}

.gap35 {
	gap: 35px !important;
}

.c_gap35 {
	column-gap: 35px !important;
}

.r_gap35 {
	row-gap: 35px !important;
}

.gap36 {
	gap: 36px !important;
}

.c_gap36 {
	column-gap: 36px !important;
}

.r_gap36 {
	row-gap: 36px !important;
}

.gap38 {
	gap: 38px !important;
}

.c_gap38 {
	column-gap: 38px !important;
}

.r_gap38 {
	row-gap: 38px !important;
}

.gap40 {
	gap: 40px !important;
}

.c_gap40 {
	column-gap: 40px !important;
}

.r_gap40 {
	row-gap: 40px !important;
}

.gap42 {
	gap: 42px !important;
}

.c_gap42 {
	column-gap: 42px !important;
}

.r_gap42 {
	row-gap: 42px !important;
}

.gap44 {
	gap: 44px !important;
}

.c_gap44 {
	column-gap: 44px !important;
}

.r_gap44 {
	row-gap: 44px !important;
}

.gap45 {
	gap: 45px !important;
}

.c_gap45 {
	column-gap: 45px !important;
}

.r_gap45 {
	row-gap: 45px !important;
}

.gap46 {
	gap: 46px !important;
}

.c_gap46 {
	column-gap: 46px !important;
}

.r_gap46 {
	row-gap: 46px !important;
}

.gap48 {
	gap: 48px !important;
}

.c_gap48 {
	column-gap: 48px !important;
}

.r_gap48 {
	row-gap: 48px !important;
}

.gap50 {
	gap: 50px !important;
}

.c_gap50 {
	column-gap: 50px !important;
}

.r_gap50 {
	row-gap: 50px !important;
}

/* vertical align */
.v_top {
	vertical-align: top !important;
}

.v_middle {
	vertical-align: middle !important;
}

.v_bottom {
	vertical-align: bottom !important;
}

/* text decoration */
.underline {
	text-decoration: underline !important;
}

.line_through {
	text-decoration: line-through !important;
}

.no_underline {
	text-decoration: none !important;
}

/* box-sizing */
.content_box {
	box-sizing: content-box !important;
}

.border_box {
	box-sizing: border-box !important;
}

/* object-fit */
.object_fill {
	object-fit: fill !important;
}

.object_cover {
	object-fit: cover !important;
}

.object_contain {
	object-fit: contain !important;
}

.object_none {
	object-fit: none !important;
}

.color1 {
	color: #eb4141 !important;
}

.color2 {
	color: #F15D12 !important;
}

.color3 {
	color: #F0AD34 !important;
}

.color4 {
	color: #FCF27F !important;
}

.color5 {
	color: #226D00 !important;
}

.color6 {
	color: #007AF3 !important;
}

.color7 {
	color: #1C5BCB !important;
}

.bg_color1 {
	background-color: #eb4141 !important;
}

.bg_color2 {
	background-color: #F15D12 !important;
}

.bg_color3 {
	background-color: #F0AD34 !important;
}

.bg_color4 {
	background-color: #FCF27F !important;
}

.bg_color5 {
	background-color: #226D00 !important;
}

.bg_color6 {
	background-color: #007AF3 !important;
}

.bg_color7 {
	background-color: #1C5BCB !important;
}

.color_black {
	background-color: #000 !important;
}

.color_white {
	background-color: #fff !important;
}

.color_ddd {
	background-color: #ddd !important;
}

.color_858585 {
	background-color: #858585 !important;
}

.color_232323 {
	background-color: #232323 !important;
}

.color_fafafa {
	background-color: #fafafa !important;
}

.color_f9f9f9 {
	background-color: #f9f9f9 !important;
}

.color_f5f5f5 {
	background-color: #f5f5f5 !important;
}

.bg_black {
	background-color: #000 !important;
}

.bg_white {
	background-color: #fff !important;
}

.bg_ddd {
	background-color: #ddd !important;
}

.bg_858585 {
	background-color: #858585 !important;
}

.bg_232323 {
	background-color: #232323 !important;
}

.bg_fafafa {
	background-color: #fafafa !important;
}

.bg_f9f9f9 {
	background-color: #f9f9f9 !important;
}

.bg_f5f5f5 {
	background-color: #f5f5f5 !important;
}

h3, h4, h5, h6, .tit_type1, .tit_type2, .tit_type3 {
	display: flex;
	align-items: baseline;
	gap: 5px;
}
h3 [class*=ico_],
h4 [class*=ico_],
h5 [class*=ico_],
h6 [class*=ico_],
.tit_type1 [class*=ico_],
.tit_type2 [class*=ico_],
.tit_type3 [class*=ico_],
h3 i,
h4 i,
h5 i,
h6 i,
.tit_type1 i,
.tit_type2 i,
.tit_type3 i {
	flex-shrink: 0;
}

h3 {
	/* font-family: "SUITE", sans-serif; */
	font-weight: 800;
	font-size: 24px;
	line-height: 30px;
	color: #000;
}

h4, .tit_type1 {
	font-weight: 800;
	font-size: 26px;
	line-height: 31px;
	color: #000;
}

h5, .tit_type2 {
	font-size: 21px;
	line-height: 25px;
	color: #007AF3;
}

h6, .tit_type3 {
	font-size: 21px;
	line-height: 25px;
	color: #1c1c1c;
}

.tit_type5 {
	font-size: 18px;
	line-height: 25px;
	font-weight: 600;
}

.ico_bullet {
	width: 16px;
	height: 16px;
	background: url(../images/common/ico_bullet.png) 0 0 no-repeat;
	background-size: cover;
}

@media only screen and (min-width: 1024px) {
	h3 {
		font-size: 40px;
		line-height: 50px;
	}
	h4, .tit_type1 {
		font-size: 30px;
		line-height: 35px;
	}
	h5, .tit_type2 {
		font-size: 24px;
		line-height: 28px;
	}
}

.btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	row-gap: 4px;
	min-height: 45px;
	padding: 5px 15px;
	border-radius: 3px;
	font-size: 14px;
	line-height: 18px;
	box-sizing: border-box;
	vertical-align: top;
	transition: opacity 0.3s;
}

.btn[type=submit] {
	border: 0;
}

.btn.sm {
	column-gap: 8px;
	min-height: 30px;
	border-radius: 5px;
	padding: 5px 12px;
	font-size: 14px;
	line-height: 18px;
}

.btn.lg {
	column-gap: 12px;
	min-height: 52px;
	font-size: 16px;
	line-height: 20px;
}

.btn.btn1 {
	border: 1px solid #ddd;
	color: #575757;
	background-color: #fff;
}

.btn.btn2 {
	border: 1px solid #ddd;
	color: #232323;
	background-color: #F9F9F9;
}

.btn.btn3 {
	color: #fff;
	background-color: #1F96FF;
}

.btn.btn4 {
	color: #fff;
	background-color: #1C5BCB;
}

.btn.btn5 {
	color: #fff;
	background-color: #159098;
}

.btn.btn6 {
	color: #fff;
	background-color: #F15D12;
}

.btn.btn7 {
	color: #fff;
	background-color: #646464;
}

.btn.btn8 {
	color: #fff;
	background-color: #2D2D2D;
}

@media only screen and (min-width: 1024px) {
	.btn {
		font-size: 16px;
		line-height: 20px;
	}
	.btn:hover {
		opacity: 0.8;
	}
	.btn.sm {
		font-size: 14px;
	}
	.btn.lg {
		font-size: 18px;
	}
}

/* tab */
.board_search + .tab_comm {
	margin-top: 0;
}

.tab_comm .tab {
	display: flex;
	min-height: 45px;
	border: 1px solid var(--tab-border-color, #ddd);
	border-radius: 5px;
	font-weight: 600;
	color: var(--tab-color, #616161);
	background: var(--tab-bg-color, #fafafa);
}

.list_tab {
	display: none;
	position: absolute;
	top: var(--m-tab-min-height, 45px);
	left: 0;
	right: 0;
	z-index: 100;
	grid-template-columns: 1fr;
	text-align: center;
	margin-top: 5px;
}

.list_tab li .tab {
	border-radius: 0;
}

.list_tab li + li .tab {
	margin-top: -1px;
}

.list_tab a[aria-selected=true],
.list_tab a:hover {
	position: relative;
	z-index: 10;
	border-color: var(--tab-on-border-color, #2073c5);
	font-weight: 700;
	color: var(--tab-on-color, #fff);
	background-color: var(--tab-on-bg-color, #2073c5);
}

.list_tab a[target=_blank]:after {
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-weight: 400;
	content: "\f08e";
}

.list_tab li:first-child .tab {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.list_tab li:last-child .tab {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	word-break: keep-all;
}

.tab_comm {
	position: relative;
	padding-bottom: 50px;
	margin-top: 20px;
}
.tab_comm .tit_tab {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: var(--m-tab-min-height, 45px);
	padding: 5px 34px;
	border: 1px solid var(--m-tab-tit-border-color, #ddd);
	border-radius: var(--m-tab-tit-radius, 5px);
	font-weight: 700;
	font-size: 14px;
	color: var(--m-tab-tit-color, #575757);
	background: var(--m-tab-tit-bg-color, #fafafa);
	text-align: center;
}
.tab_comm .tit_tab:after {
	position: absolute;
	top: 50%;
	right: 15px;
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: inherit;
	transform: translateY(-50%);
	transition: transform 0.3s;
	content: "\f0d7";
}
.tab_comm.on .tit_tab:after {
	transform: translateY(-50%) rotate(180deg);
}

/* type2 */
.tab_comm.type2 .tit_tab {
	background: #fff;
}

.tab_comm.type2 .tab {
	color: #aaa;
	background: #fff;
}

.tab_comm.type2 .list_tab a[aria-selected=true], .tab_comm.type2 .list_tab a:hover {
	border-color: #505050;
	color: #000;
}

/* type3 */
.tab_comm.type3 {
	padding-bottom: 20px;
}

.tab_comm.type3 .tit_tab {
	min-height: 45px;
	border-radius: 23px;
	background: #fff;
}

.tab_comm.type3 .tab {
	background: #fff;
}

.tab_comm.type3 .list_tab {
	top: 50px;
}

.tab_comm.type3 .list_tab a[aria-selected=true], .tab_comm.type3 .list_tab a:hover {
	color: var(--type3-tab-color, #2073C5);
	border-color: currentColor;
}

.tab_comm.type3 .list_tab li:first-child .tab {
	border-radius: 10px 10px 0 0;
}

.tab_comm.type3 .list_tab li:last-child .tab {
	border-radius: 0 0 10px 10px;
}

/* type4 */
.tab_comm.type4 {
	--tab-border-color: #272727;
	--tab-color: #272727;
	--tab-bg-color: #fff;
	--tab-on-border-color: #272727;
	--tab-on-bg-color: #272727;
	--m-tab-tit-border-color: #272727;
	--m-tab-tit-bg-color: #272727;
	--m-tab-tit-color: #fff;
}

/* type5 */
.tab_comm.type5 {
	--m-tab-tit-color: #fff;
	--m-tab-tit-bg-color: #2F51B2;
	--m-tab-tit-border-color: transparent;
	--m-tab-tit-radius: 0;
	--m-tab-min-height: 45px;
	--tab-gap: 0;
	--tab-shadow: none;
	--tab-border-color: #ddd;
	--tab-color: #949494;
	--tab-bg-color: #fff;
	--tab-on-border-color: #ddd;
	--tab-on-color: #2F51B2;
	--tab-on-bg-color: #fff;
}

.tab_comm.type5 .list_tab a[aria-selected=true],
.tab_comm.type5 .list_tab a:hover {
	border-color: #2F51B2;
}

.tab_container .tab_panel {
	display: none;
}

.tab_container .tab_panel.on {
	display: block;
}

@media only screen and (min-width: 1024px) {
	.btn.tab {
		min-height: 60px;
	}
	.tab_comm .tit_tab {
		display: none;
	}
	.list_tab {
		display: grid;
		position: static;
		grid-template-columns: repeat(auto-fill, minmax(var(--pc-tab-min-width, 232px), 1fr));
		gap: var(--tab-gap, 10px);
		margin-top: 0;
	}
	.list_tab li .tab {
		border-radius: 5px;
	}
	.list_tab li + li .tab {
		margin-top: 0;
	}
	.list_tab a[aria-selected=true],
	.list_tab a:hover {
		box-shadow: var(--tab-shadow, 0 5px 10px rgba(47, 81, 178, 0.13));
	}
	/* type_fit */
	.tab_comm.type_fit .list_tab {
		grid-template-columns: repeat(auto-fit, minmax(var(--pc-tab-min-width, 232px), 1fr));
	}
	/* type_center */
	.tab_comm.type_center {
		text-align: center;
	}
	.tab_comm.type_center .list_tab {
		display: inline-grid;
		grid-template-columns: repeat(auto-fit, minmax(var(--pc-tab-min-width, 232px), 1fr));
		justify-content: center;
		align-items: center;
		max-width: 100%;
	}
	/* type2 */
	.tab_comm.type2 .list_tab {
		gap: 0;
		padding: 1px 0 0 1px;
	}
	.tab_comm.type2 .list_tab li {
		margin-left: -1px;
	}
	.tab_comm.type2 .list_tab .tab {
		position: relative;
		z-index: 0;
		margin-top: -1px;
		border-radius: 0;
		box-shadow: none;
	}
	.tab_comm.type2 .list_tab a[aria-selected=true], .tab_comm.type2 .list_tab a:hover {
		border-bottom-color: transparent;
		border-left-color: #ddd;
		border-right-color: #ddd;
	}
	/* type3 */
	.tab_comm.type3 .list_tab .tab {
		box-shadow: none;
	}
	.tab_comm.type3 .list_tab .tab,
	.tab_comm.type3 .list_tab li:first-child .tab,
	.tab_comm.type3 .list_tab li:last-child .tab {
		min-height: 45px;
		border-radius: 23px;
	}
	.tab_comm.type3 .list_tab {
		word-break: keep-all;
	}
	/* type5 */
	.tab_comm.type5 .list_tab {
		padding: 1px 0 0 1px;
	}
	.tab_comm.type5 .list_tab li {
		margin: -1px 0 0 -1px;
	}
	.tab_comm.type5 .list_tab li .tab {
		border-radius: 0;
	}
	.tab_comm.type5 .list_tab a[aria-selected=true],
	.tab_comm.type5 .list_tab a:hover {
		padding-bottom: 6px;
		border-color: #ddd;
		border-top: 2px solid #000;
	}
}

.align_wrap .list + .list {
	padding-top: 0;
}

.list li {
	margin-top: 5px;
	padding-left: 18px;
	font-size: 16px;
	line-height: 24px;
	color: #575757;
	text-indent: -18px;
}

.list + .list {
	padding-top: 20px;
}

.list.no_bullet li {
	padding-left: 0;
	text-indent: 0;
}

.list[class*=type] {
	position: relative;
}

.list[class*=type] > li {
	position: relative;
	padding-left: 14px;
	text-indent: 0;
}

.list[class*=type] > li:before {
	position: absolute;
	top: 9px;
	left: 0;
	width: 6px;
	content: "";
}

.list.type1 > li:before {
	height: 6px;
	border-radius: 50%;
	background-color: #00e58f;
}

.list.type2 > li:before {
	height: 6px;
	border-radius: 50%;
	background-color: #000;
}

.list.type3 > li:before {
	height: 6px;
	border-radius: 50%;
	background-color: #b4b4b4;
}

.list.type4 > li:before {
	top: 11px;
	height: 2px;
	background-color: #00e58f;
}

.list.type5 > li:before {
	top: 11px;
	height: 2px;
	background-color: #000;
}

.list.type6 > li:before {
	top: 11px;
	height: 2px;
	background-color: #b4b4b4;
}

ul .tbl_comm th, ol .tbl_comm th {
	text-align: center;
}

.tbl_comm {
	width: 100%;
	border-top: 1px solid #858585;
	border-bottom: 1px solid #ddd;
	border-spacing: 0;
	border-collapse: collapse;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-word;
}

.tbl_comm .txt_req, .form_wrap .txt_req {
	margin-left: 2px;
	color: #ff3333;
}

.tbl_comm .txt_req:after, .form_wrap .txt_req:after {
	overflow: hidden;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	clip: rect(0 0 0 0);
	content: "필수항목";
}

.tbl_comm th[colspan] + th,
.tbl_comm th + th[rowspan] {
	border-left: 1px solid #ddd;
}

.tbl_comm th, .tbl_comm td {
	padding: 8px 10px;
	height: 58px;
	border-right: 1px solid #ddd;
	background-color: #fff;
	box-sizing: border-box;
}

.tbl_comm th:last-child, .tbl_comm td:last-child {
	border-right: 0;
}

.tbl_comm th:last-child[rowspan], .tbl_comm td:last-child[rowspan] {
	border-left: 1px solid #ddd;
}

.tbl_comm th {
	border-bottom: 1px solid #ddd;
	font-weight: 500;
	color: #232323;
	background-color: #f9f9f9;
}

.tbl_comm td {
	border-top: 1px solid #ddd;
	color: #616161;
	text-align: center;
}

.tbl_comm td[rowspan]:not(:first-child) {
	border-left: 1px solid #ddd;
}

.tbl_comm.td_left td {
	text-align: left;
}

.tbl_comm.td_right td {
	text-align: right;
}

.tbl_comm tr:first-child td {
	border-top: 0;
}

 /* thead,th 왼쪽만 사용하는 경우 noth */
.tbl_comm.noth {
	border-top:none;
}
.tbl_comm.noth tr:first-child th, 
.tbl_comm.noth tr:first-child td {
	border-top: 1px solid #858585;
}

.tbl_comm.type2 {
	border-top-color: #00ad86;
}

.tbl_comm.type2 th {
	background-color: #f8fff9;
}

.tbl_comm.type_noline th, .tbl_comm.type_noline td {
	border-right: none;
}
/*
.tbl_comm tr:hover td {background-color: #f9f9f9;}
.tbl_comm.type2 tr:hover td {background-color: #f8fff9;}
*/

.tbl_comm th[data-label]:before,
.tbl_comm td[data-label]:before {
	content: normal;
}

.tbl_comm th ~ td {
	border-bottom: 1px solid #ddd;
}

.tbl_comm.type_responsive {
	table-layout: auto;
}

.tbl_comm .info_txtbox {
	margin: 10px 0;
	padding: 14px 10px;
	border: 1px dashed #ddd;
	border-radius: 10px;
}

.tbl_comm th.req:after {
	display: inline-block;
	overflow: hidden;
	width: 5px;
	height: 5px;
	margin: 2px 0 0 4px;
	border-radius: 50%;
	background: #ff3333;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	vertical-align: top;
	content: "필수";
}

.tbl_comm.type_form th {
	width: 140px;
}

.tbl_comm tbody tr:not(:first-child) th:first-child {
	border-top: 1px solid #ddd;
}

.d_result_box {
	display: flex;
	justify-content: flex-end;
	padding: 25px 20px 24px;
	border-bottom: 1px solid #ddd;
	background: #F9F9F9;
}

.d_result_box strong {
	font-size: 16px;
	line-height: 24px;
	color: #000;
}

.d_result_box strong em {
	font-weight: 500;
	font-size: 20px;
	line-height: 24px;
	color: #FF0707;
}

@media only screen and (max-width: 1023px) {
	.tbl_comm tr:hover td {
		background: #fff;
	}
	.tbl_comm.type2 tr:hover td {
		background: #fff;
	}
	.tbl_comm th[data-label]:before,
	.tbl_comm td[data-label]:before {
		display: block;
		overflow: hidden;
		font-size: 1px;
		line-height: 0;
		color: transparent;
		content: attr(data-label) " : ";
	}
	.d_result_box {
		padding: 20px 15px 19px;
	}
	.d_result_box strong {
		font-size: 14px;
		line-height: 20px;
	}
	.d_result_box strong em {
		font-size: 18px;
		line-height: 20px;
	}
	.tbl_comm.type_responsive thead {
		display: none;
	}
	.tbl_comm.type_responsive .info_txtbox > div {
		display: inline;
	}
	.tbl_comm.type_responsive tbody tr {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		overflow: hidden;
		padding: 15px 0;
	}
	.tbl_comm.type_responsive tbody tr + tr {
		border-top: 1px solid #ddd;
	}
	.tbl_comm.type_responsive tbody td {
		position: relative;
		margin-left: -1px;
		border: 0;
		height: auto;
		padding: 3px 14px;
		text-align: left;
	}
	.tbl_comm.type_responsive tbody td:before {
		position: absolute;
		top: 50%;
		left: 0;
		width: 1px;
		height: 10px;
		background: #ddd;
		transform: translateY(-50%);
		content: "";
	}
	.tbl_comm.type_responsive .w100 {
		width: 100%;
	}
	.tbl_comm.type_responsive tr:hover td {
		background: none;
	}
	.tbl_comm.type_form {
		table-layout: auto;
	}
	.tbl_comm.type_form thead, .tbl_comm.type_form colgroup {
		display: none;
	}
	.tbl_comm.type_form tr {
		display: flex;
		flex-wrap: wrap;
	}
	.tbl_comm.type_form th {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.tbl_comm.type_form td {
		display: flex;
		align-items: center;
	}
	.tbl_comm.type_form tr th, .tbl_comm.type_form tr td {
		width: 100%;
		border: 0;
		border-top: 1px solid #ddd;
	}
	.tbl_comm.type_form tr:first-child th:first-child {
		border-top: 0;
	}
	.tbl_comm.type_form th, .tbl_comm.type_form td {
		height: auto;
		min-height: 58px;
	}
	.tbl_comm th.req:after {
		margin: -10px 0 0 4px;
	}
}

/* 반응형 table datalist */
.d_list_tbl_area {
	padding: 20px 0;
	border-top: 1px solid #858585;
	border-bottom: 1px solid #ddd;
}

.d_list_tbl {
	word-break: keep-all;
	word-wrap: break-word;
}

.d_list_tbl + .d_list_tbl {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px dashed #ddd;
}

.d_list_tbl .item_list {
	display: flex;
	gap: 4px 10px;
	flex-wrap: wrap;
}

.d_list_tbl .item_list + .item_list {
	padding-top: 5px;
}

.d_list_tbl dt {
	flex: none;
	max-width: 100%;
	margin-right: auto;
	font-weight: 700;
	font-size: 14px;
	line-height: 24px;
	color: #232323;
}

.d_list_tbl dd {
	min-width: 0;
	font-size: 14px;
	line-height: 20px;
	color: #565656;
	text-align: right;
}

@media only screen and (min-width: 1024px) {
	.d_list_tbl_area {
		padding: 0;
	}
	.d_list_tbl {
		display: flex;
	}
	.d_list_tbl .item_list {
		gap: 0;
		min-width: 0;
		flex-direction: column;
		flex-wrap: wrap;
		flex: 1;
	}
	.d_list_tbl .item_list + .item_list {
		padding-top: 0;
	}
	.d_list_tbl .item_list + .item_list dt,
	.d_list_tbl .item_list + .item_list dd {
		border-left: 1px solid #ddd;
	}
	.d_list_tbl dt, .d_list_tbl dd {
		padding: 10px 5px;
		font-size: 16px;
		text-align: center;
	}
	.d_list_tbl dt {
		overflow: hidden;
		width: 100%;
		margin-left: auto;
		white-space: nowrap;
		text-overflow: ellipsis;
		background: #f9f9f9;
	}
	.d_list_tbl dd {
		display: flex;
		justify-content: center;
		align-items: center;
		flex: 1;
		min-height: 0;
		border-top: 1px solid #ddd;
	}
	.d_list_tbl + .d_list_tbl {
		margin-top: 0;
		padding-top: 0;
		border: 0;
	}
	.d_list_tbl + .d_list_tbl .item_list dt {
		padding: 0;
		border: 0;
		font-size: 1px;
		line-height: 0;
		color: transparent;
	}
}

.inp_comm {
	display: inline-flex;
	width: 100%;
	height: 45px;
	padding: 12px 17px;
	border-radius: 3px;
	border: 1px solid #858585;
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	box-sizing: border-box;
	vertical-align: top;
}

.inp_comm::-webkit-input-placeholder {
	opacity: 0.38;
}

.inp_comm::-webkit-input-placeholder {
	opacity: 0.38;
}

.inp_comm::-moz-placeholder {
	opacity: 0.38;
}

.inp_comm:-ms-input-placeholder {
	opacity: 0.38;
}

.inp_comm:-moz-placeholder {
	opacity: 0.38;
}

.inp_comm:focus {
	border-color: #232323;
}

.inp_comm:disabled,
.inp_comm[disabled],
.inp_comm[readonly] {
	border-color: #ddd;
	color: #858585;
	background-color: #f9f9f9;
}

.date_comm {
	flex: 1;
	position: relative;
	max-width: 170px;
	color: #232323;
}

.date_comm input {
	display: inline-flex;
	position: relative;
	width: 100%;
	height: 45px;
	padding: 12px 17px;
	border: 1px solid #858585;
	border-radius: 3px;
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	background-color: #fff;
	vertical-align: top;
	box-sizing: border-box;
}

.date_comm input:disabled,
.date_comm input[disabled],
.date_comm input[readonly] {
	border-color: #ddd;
	color: #858585;
	background-color: #f9f9f9;
}

.date_comm input:disabled + i,
.date_comm input[disabled] + i,
.date_comm input[readonly] + i {
	color: #858585;
}

.date_comm input::-webkit-calendar-picker-indicator {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0);
	color: rgba(0, 0, 0, 0);
	cursor: pointer;
}

.date_comm i {
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);
	pointer-events: none;
}

.file_comm {
	display: flex;
	gap: 10px;
	position: relative;
	width: 100%;
}

.file_comm label {
	min-width: 80px;
	border-radius: 3px;
	cursor: pointer;
}

.file_comm input[type=file]:focus-visible ~ label {
	outline: #265DC5 auto 1px;
}

.file_comm input[type=file] {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -10;
	width: 1px;
	height: 1px;
	padding: 0;
	border: 0;
	opacity: 0.001;
	cursor: pointer;
	clip: rect(0 0 0 0);
	margin: -1px;
	overflow: hidden;
}

.file_comm .inp_comm {
	overflow: hidden;
	text-overflow: ellipsis;
}

.file_comm.add_file {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px dashed #C1C1C1;
}

.file_comm.add_file label {
	background: #E1E1E1;
}

input[type=file] {
	width: 252px;
}

.d_counter_check {
	display: inline-flex;
	overflow: hidden;
	height: 48px;
	border-radius: 3px;
}

.d_counter_check [class*=btn_] {
	width: 48px;
	height: 100%;
	background: #858585;
	font-size: 20px;
	color: #fff;
}

.d_counter_check [class*=btn_]:active {
	background: #2D2D2D;
}

.d_counter_check .num_count {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 66px;
	border-top: 1px solid #858585;
	border-bottom: 1px solid #858585;
}

.d_counter_check .num_count[data-min]:before, .d_counter_check .num_count[data-max]:after {
	display: block;
	overflow: hidden;
	width: 0;
	height: 0;
	font-size: 1px;
	line-height: 0;
	color: transparent;
}

.d_counter_check .num_count[data-min]:before {
	order: 1;
	content: "최소값 : " attr(data-min);
}

.d_counter_check .num_count[data-max]:after {
	order: 2;
	content: "최대값 : " attr(data-max);
}

@media only screen and (min-width: 1024px) {
	.d_counter_check [class*=btn_]:hover {
		background: #2D2D2D;
	}
}

.opt_comm {
	display: inline-flex;
	position: relative;
	width: 100%;
	font-size: 26px;
	vertical-align: top;
}

.opt_comm select {
	width: 100%;
	height: 45px;
	padding: 12px 45px 12px 17px;
	border: 1px solid #858585;
	border-radius: 3px;
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	background-color: #fff;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
	text-overflow: ellipsis;
}

.opt_comm select:disabled,
.opt_comm select[disabled],
.opt_comm select[readonly] {
	border-color: #ddd;
	color: #858585;
	background-color: #f9f9f9;
}

.opt_comm select:disabled + i,
.opt_comm select[disabled] + i,
.opt_comm select[readonly] + i {
	color: #858585;
}

.opt_comm i {
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(calc(-50% - 6px));
	pointer-events: none;
}

.opt_comm.bg_reverse select {
	color: #fff;
	background: #000;
}

.opt_comm.bg_reverse i {
	color: #fff;
}

.item_choice {
	position: relative;
	display: inline-flex;
	vertical-align: top;
}

.item_choice input {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0.001;
}

.item_choice input:checked + label {
	color: var(--font-color, #005EAD);
}

.item_choice input:focus-visible + label {
	outline: #265DC5 auto 1px;
	outline-offset: -1px;
}

.item_choice label {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 2px 10px;
	position: relative;
	min-height: var(--min-height, 45px);
	padding: var(--pdy, 13px) 0 var(--pdy, 13px) var(--pl, 34px);
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	vertical-align: top;
	box-sizing: border-box;
	cursor: pointer;
}

.item_choice label .ico_choice, .item_choice label i {
	position: absolute;
	top: 50%;
	left: 0;
	width: 24px;
	height: 24px;
	font-size: 24px;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 24px 24px;
	transform: translateY(-50%);
}

.item_choice label i {
	font-size: var(--icon-size, 24px);
}

.item_choice.top label {
	align-items: flex-start;
}

.item_choice.top .ico_choice, .item_choice.top i {
	top: var(--icon-top, 14px);
	transform: translateY(0);
}

.item_choice.only .ico_choice, .item_choice.only i {
	left: 50%;
	transform: translate(-50%, -50%);
}

.item_choice.right label {
	padding-left: 0;
	padding-right: var(--pr, 34px);
}

.item_choice.right label .ico_choice, .item_choice.right label i {
	left: auto;
	right: 0;
}

.item_choice.check label .ico_choice {
	background-image: url(../images/common/ico_check.png);
}

.item_choice.check input:checked + label .ico_choice {
	background-image: url(../images/common/ico_check_on.png);
}

.item_choice.check input:checked + label i {
	font-weight: 900;
	color: var(--icon-color, inherit);
}

.item_choice.check input:checked + label i:before {
	content: "\f14a";
}

.item_choice input:disabled + label {
	opacity: 0.6;
	filter: grayscale(1);
	cursor: default;
	pointer-events: none;
}

.item_choice.radio label .ico_choice {
	background-image: url(../images/common/ico_radio.png);
}

.item_choice.radio input:checked + label .ico_choice {
	background-image: url(../images/common/ico_radio_on.png);
}

.item_choice.radio input:checked + label i {
	font-weight: 400;
}

.item_choice.radio input:checked + label i::before {
	content: "\f192";
}

textarea {
	width: 100%;
	min-height: 260px;
	padding: 15px 17px 20px;
	border: 1px solid #858585;
	border-radius: 3px;
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	resize: none;
	box-sizing: border-box;
}

textarea::-webkit-input-placeholder {
	opacity: 0.38;
}

textarea::-moz-placeholder {
	opacity: 0.38;
}

textarea:-ms-input-placeholder {
	opacity: 0.38;
}

textarea:-moz-placeholder {
	opacity: 0.38;
}

textarea:disabled,
textarea[disabled],
textarea[readonly] {
	border-color: #ddd;
	color: #858585;
	background-color: #f9f9f9;
}

.list_accordion > li > a {
	display: block;
	position: relative;
	padding: 20px 50px 20px 20px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-left: 0;
	border-right: 0;
	font-weight: 500;
	font-size: 16px;
	line-height: 20px;
	color: #fff;
	background: #3B48A5;
	transition: all 0.9s;
}

.list_accordion > li > a:after {
	position: absolute;
	top: 50%;
	right: 20px;
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-size: 20px;
	transform: translateY(-50%);
	content: "+";
}

.list_accordion [aria-expanded=true]:after {
	content: "\f068";
}

.list_accordion > li + li > a {
	border-top: 0;
}

.list_accordion > li:first-child > a {
	border-top: 0;
	border-radius: 5px 5px 0 0;
}

.list_accordion > li:last-child > a {
	border-bottom: 0;
	border-radius: 0 0 5px 5px;
}

.list_accordion > li:last-child > [aria-expanded=true] {
	border-radius: 0;
}

.list_accordion [aria-expanded=true] {
	border-bottom: 0;
}

.list_accordion .cont_desc {
	display: none;
	padding: 20px;
	background: #E9EAF5;
}

.list_accordion > li:last-child .cont_desc {
	border-radius: 0 0 5px 5px;
}

/* 아코디언 type2,3 공통 */
.list_accordion.type2 > li > a,
.list_accordion.type3 > li > a {
	border: 0;
	border-top: 1px solid #ddd;
	font-weight: 700;
	color: #333;
	background: #fff;
}

.list_accordion.type2 .cont_desc,
.list_accordion.type3 .cont_desc {
	margin-bottom: 10px;
	background: #F9F9F9;
	border-radius: 0 0 5px 5px;
}

.list_accordion.type2 > li:first-child > a,
.list_accordion.type3 > li:first-child > a,
.list_accordion.type2 > li:last-child > a,
.list_accordion.type3 > li:last-child > a {
	border-radius: 0;
}

.list_accordion.type2 > li:first-child,
.list_accordion.type3 > li:first-child {
	border-top: 2px solid #2D2D2D;
}

.list_accordion.type2 > li:last-child,
.list_accordion.type3 > li:last-child {
	border-bottom: 1px solid #000;
}

.list_accordion.type2 [aria-expanded=true],
.list_accordion.type3 [aria-expanded=true] {
	color: #2F51B2;
}

.list_accordion.type2 > li > a:after,
.list_accordion.type3 > li > a:after {
	color: #848484;
}

.list_accordion.type2 [aria-expanded=true]:after,
.list_accordion.type3 [aria-expanded=true]:after {
	color: #2F51B2;
}

/* 아코디언 type3 */
.list_accordion.type3 > li > a {
	padding-left: 60px;
}

.list_accordion.type3 > li > a:before, .list_accordion.type3 .cont_desc:before {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 50%;
	left: 20px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	font-weight: 700;
	font-size: 16px;
	line-height: 20px;
	color: #fff;
	background: #2F51B2;
	transform: translateY(-50%);
	content: "Q";
}

.list_accordion.type3 .cont_desc {
	position: relative;
	padding-left: 60px;
}

.list_accordion.type3 .cont_desc:before {
	top: 20px;
	opacity: 0;
	background: #333;
	transform: translateY(0);
	transition: all 0.3s;
	content: "A";
}

.list_accordion.type3 [aria-expanded=true] + .cont_desc:before {
	opacity: 1;
}

@media only screen and (min-width: 1024px) {
	/* 아코디언 type2,3 공통 */
	.list_accordion.type2 > li > a,
	.list_accordion.type3 > li > a {
		padding: 26px 60px 25px 30px;
		font-size: 22px;
		line-height: 28px;
	}
	.list_accordion.type2.sm > li > a,
	.list_accordion.type3.sm > li > a {
		padding: 20px 50px 20px 20px;
		font-size: 16px;
		line-height: 20px;
	}
	.list_accordion.type2 .cont_desc,
	.list_accordion.type3 .cont_desc {
		margin-bottom: 20px;
		padding: 30px;
	}
	.list_accordion.type2.sm .cont_desc,
	.list_accordion.type3.sm .cont_desc {
		margin-bottom: 10px;
		padding: 20px;
	}
	/* 아코디언 type3 */
	.list_accordion.type3 > li > a,
	.list_accordion.type3 .cont_desc {
		padding-left: 75px;
	}
	.list_accordion.type3.sm > li > a,
	.list_accordion.type3.sm .cont_desc {
		padding-left: 65px;
	}
	.list_accordion.type3 > li > a:before,
	.list_accordion.type3 .cont_desc:before {
		left: 30px;
		width: 35px;
		height: 35px;
		font-size: 18px;
	}
	.list_accordion.type3.sm > li > a:before,
	.list_accordion.type3.sm .cont_desc:before {
		left: 20px;
		width: 30px;
		height: 30px;
		font-size: 16px;
	}
	.list_accordion.type3 .cont_desc:before {
		top: 30px;
	}
	.list_accordion.type3.sm .cont_desc:before {
		top: 20px;
	}
}
.d_layer_comm {
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.6);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
}

.d_layer_comm.on {
	opacity: 1;
	visibility: visible;
}

.d_layer_comm .inner_layer {
	overflow: auto;
	position: relative;
	max-width: calc(100% - 40px);
	max-height: calc(100% - 150px);
	width: 650px;
	border-radius: 5px;
	background: #fff;
}

.d_layer_comm.sm .inner_layer {
	width: 340px;
}

.d_layer_comm.md .inner_layer {
	width: 520px;
}

.d_layer_comm.lg .inner_layer {
	width: 900px;
}

.d_layer_comm.xlg .inner_layer {
	width: 1350px;
}

.d_layer_comm .layer_head {
	background: #000;
}

.d_layer_comm .layer_head > strong {
	display: block;
	padding: 15px 65px 15px 20px;
	font-size: 16px;
	line-height: 20px;
	color: #fff;
}

.d_layer_comm .layer_body {
	padding: 20px;
}

.d_layer_comm .layer_body > strong {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	padding-bottom: 20px;
	font-weight: 800;
	font-size: 22px;
	line-height: 27px;
	color: #000;
}

.d_layer_comm .list li {
	font-size: 14px;
	line-height: 19px;
}

.d_layer_comm .btn_close {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	width: 55px;
	height: 50px;
}

.d_layer_comm .btn_close:before {
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-size: 28px;
	color: #fff;
	content: "\f00d";
}

.d_layer_comm .layer_body > strong .d_tag {
	flex: none;
	margin-right: 10px;
	padding: 3px 10px;
	border-radius: 6px;
}

.d_layer_comm .d_list_gallery.type_poster {
	grid-template-columns: 1fr;
	padding-top: 0;
}

.d_layer_comm .d_list_gallery.type_poster dl {
	row-gap: 0;
	padding-top: 0;
}

.d_layer_comm .d_list_gallery.type_poster dl.tit_none {
	grid-template-columns: 1fr;
}

.d_layer_comm .d_list_gallery.type_poster dl.tit_none dt {
	position: absolute;
	clip-path: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
}

.d_layer_comm .d_list_gallery.type_poster .wrap_thumb {
	width: 60%;
}

.d_layer_comm .d_list_gallery.type_poster .wrap_thumb + .cont_thumb {
	padding-top: 20px;
}

.d_layer_comm .d_list_gallery.type_poster .cont_thumb {
	padding: 0;
}

.d_layer_comm .d_list_gallery.type_poster .align_wrap + strong {
	padding-top: 10px;
}

.d_layer_comm .d_list_gallery.type_poster strong {
	padding: 0;
	margin-bottom: 10px;
}

.d_layer_comm .d_list_gallery.type_poster strong .d_tag {
	margin-right: 10px;
	padding: 4px 10px 3px;
	border-radius: 5px;
	vertical-align: top;
}

.d_layer_comm .d_list_gallery.type_poster li {
	padding: 0;
	border: 0;
}

.d_layer_comm .d_list_gallery.type_poster :not(.wrap_thumb) + .cont_thumb {
	opacity: 1;
}

@media only screen and (min-width: 768px) {
	.d_layer_comm .d_list_gallery.type_poster li {
		gap: 20px;
		flex-direction: row;
	}
	.d_layer_comm .d_list_gallery.type_poster .wrap_thumb {
		width: 33.051%;
	}
	.d_layer_comm .d_list_gallery.type_poster strong {
		margin-bottom: 15px;
	}
	.d_layer_comm .d_list_gallery.type_poster strong .d_tag {
		padding: 3px 10px 2px;
	}
	.d_layer_comm .d_list_gallery.type_poster .wrap_thumb + .cont_thumb {
		padding-top: 10px;
	}
}
@media only screen and (min-width: 1024px) {
	.d_layer_comm .layer_body {
		padding: 30px;
	}
	.d_layer_comm .layer_head > strong {
		padding: 15px 69px 15px 30px;
		font-size: 20px;
		line-height: 24px;
	}
	.d_layer_comm .layer_body > strong {
		font-size: 26px;
		line-height: 29px;
	}
	.d_layer_comm .list li {
		font-size: 16px;
		line-height: 22px;
	}
	.d_layer_comm .btn_close {
		width: 59px;
		height: 54px;
	}
	.d_layer_comm .d_list_gallery.type_poster li {
		gap: 30px;
	}
	.d_layer_comm .d_list_gallery.type_poster .wrap_thumb + .cont_thumb {
		padding-top: 15px;
	}
	.d_layer_comm .d_list_gallery.type_poster strong {
		line-height: 32px;
		word-break: break-all;
	}
	.d_layer_comm .d_list_gallery.type_poster strong .d_tag {
		padding: 5px 10px 4px;
	}
}
/* 래퍼 */
.loading_on {
	min-height: 150px;
}

.area_loader {
	position: relative;
}

.area_loader .inner_loader {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.area_loader:not(.loading_on) .loader,
.area_loader:not(.loading_on) .loader_dot {
	display: none;
}

/* 로더 box */
.loader_box {
	min-height: 150px;
	display: flex;
	justify-content: center;
	align-items: center;
}

/* 로더 wrapper */
.wrap_loader {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999999;
	background: rgba(255, 255, 255, 0.8);
}

/* 기본 loader */
.loader {
	width: var(--loader-spinner-13-size, 100px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(farthest-side, var(--loader-spinner-13-color, #3068ff) 94%, rgba(0, 0, 0, 0)) top/var(--loader-spinner-13-border, 20px) var(--loader-spinner-13-border, 20px) no-repeat, conic-gradient(rgba(0, 0, 0, 0) 30%, var(--loader-spinner-13-color, #3068ff));
	-webkit-mask: radial-gradient(farthest-side, rgba(0, 0, 0, 0) calc(100% - var(--loader-spinner-13-border, 20px)), #000 0);
	animation: spinner-13 var(--loader-spinner-13-duration, 1s) infinite linear;
}

@keyframes spinner-13 {
	100% {
		transform: rotate(1turn);
	}
}
/* 로더 - dots */
.loader_dot {
	width: var(--loader-dot-7-size, 60px);
	aspect-ratio: 4;
	--_g: no-repeat radial-gradient(circle closest-side,var(--loader-dot-7-color, #2F51B2) 90%,#fff);
	--_v: no-repeat radial-gradient(circle closest-side,var(--loader-dot-7-color, #2F51B2) 90%,#fff);
	--_l: no-repeat radial-gradient(circle closest-side,var(--loader-dot-7-color, #2F51B2) 90%,#fff);
	background: var(--_g) 0% 50%, var(--_v) 50% 50%, var(--_l) 100% 50%;
	background-size: 33.3333333333% 100%;
	animation: dot-l7 var(--loader-dot-7-duration, 1s) infinite linear;
}

@keyframes dot-l7 {
	33% {
		background-size: 33.3333333333% 0%, 33.3333333333% 100%, 33.3333333333% 100%;
	}
	50% {
		background-size: 33.3333333333% 100%, 33.3333333333% 0%, 33.3333333333% 100%;
	}
	66% {
		background-size: 33.3333333333% 100%, 33.3333333333% 100%, 33.3333333333% 0%;
	}
}
.align_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.align_wrap.reverse {
	flex-wrap: nowrap;
	flex-direction: column;
	align-items: normal;
}

.form_wrap {
	overflow: hidden;
	border-top: 1px solid #858585;
	border-bottom: 1px solid #858585;
	background: #fff;
}

.form_wrap dl dt,
.form_wrap dl dd {
	font-size: 16px;
	line-height: 19px;
}

.form_wrap dl dt {
	padding: 27px 14px 0 0;
	font-weight: 500;
	color: #232323;
}

.form_wrap dl dd {
	padding: 14px 14px 14px 0;
	line-height: 45px;
}

.form_wrap dl + dl {
	border-top: 1px solid #ddd;
}

@media only screen and (min-width: 1024px) {
	.form_wrap dl {
		display: flex;
	}
	.form_wrap dl dt {
		flex: 0 0 229px;
		padding: 27px 14px;
	}
	.form_wrap dl dd {
		flex: 1;
		min-width: 0;
		padding: 14px;
	}
}
/* 1024 이상일 때도 모바일 형태 유지 타입 */
.form_wrap.type_col dl {
	display: block;
	padding-left: 14px;
}

.form_wrap.type_col dl dt {
	padding: 27px 14px 0 0;
}

.form_wrap.type_col dl dt .num {
	padding: 0 10px;
	margin-right: 5px;
	border-radius: 2px;
	background-color: #232323;
	color: #fff;
}

.form_wrap.type_col dl dd {
	padding: 14px 14px 14px 0;
}

.form_wrap.type_col dl dd .text {
	background-color: #F9F9F9;
	border-radius: 5px;
	padding: 10px;
	line-height: 1.3;
}

.info_box {
	/* min-height: 140px; */
	padding: 30px 40px;
	border-radius: 10px;
	border: 1px solid #ddd;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 50px 35px;
	box-sizing: border-box;
	word-wrap: break-word;
	word-break: break-all;
}

a > .info_box {
	height: 100%;
}

.info_box[class*=ico_] {
	padding-left: 169px;
}

.info_box.dash {
	border-style: dashed;
	border-color: #858585;
}

.info_box.bg {
	border-color: transparent;
	border-color: transparent;
	background-color: #F9F9F9;
}

.ico_info1 {
	background-size: 62px 68px;
	background-image: url(../images/common/ico_info1.png);
}

.ico_info2 {
	background-size: 62px 57px;
	background-image: url(../images/common/ico_info2.png);
}

.ico_info3 {
	background-size: 62px 53px;
	background-image: url(../images/common/ico_info3.png);
}

.ico_info4 {
	background-size: 62px 53px;
	background-image: url(../images/common/ico_info4.png);
}

.ico_info5 {
	background-size: 62px 62px;
	background-image: url(../images/common/ico_info5.png);
}

.ico_info6 {
	background-size: 81px 62px;
	background-image: url(../images/common/ico_info6.png);
}

.box_wrap {
	display: grid;
	gap: 25px;
	grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
}

@media only screen and (max-width: 490px) {
	.box_wrap {
		grid-template-columns: 1fr;
	}
}
@media only screen and (max-width: 768px) {
	.box_wrap {
		gap: 8px;
	}
	.info_box {
		text-align: center;
		padding-left: 30px;
		padding-right: 30px;
		background-position: center 30px;
	}
	.info_box[class*=ico] {
		padding: 113px 30px 30px;
	}
	.info_box h3,
	.info_box h4,
	.info_box h5,
	.info_box h6,
	.info_box .tit_type1,
	.info_box .tit_type2,
	.info_box .tit_type3 {
		justify-content: center;
	}
}
@media only screen and (max-width: 1000px) {
	.box_wrap {
		gap: 10px;
	}
	.box_wrap .info_box {
		text-align: center;
		padding-left: 30px;
		padding-right: 30px;
		background-position: center 30px;
	}
	.box_wrap .info_box[class*=ico_] {
		padding-top: 113px;
	}
	.box_wrap .info_box h3,
	.box_wrap .info_box h4,
	.box_wrap .info_box h5,
	.box_wrap .info_box h6,
	.box_wrap .info_box .tit_type1,
	.box_wrap .info_box .tit_type2,
	.box_wrap .info_box .tit_type3 {
		justify-content: center;
	}
}
@media only screen and (max-width: 1400px) {
	.box_wrap {
		gap: 15px;
	}
	.box_wrap.wrap3 .info_box {
		text-align: center;
		padding-left: 30px;
		padding-right: 30px;
		background-position: center 30px;
	}
	.box_wrap.wrap3 .info_box[class*=ico_] {
		padding-top: 113px;
	}
	.box_wrap.wrap3 .info_box h3,
	.box_wrap.wrap3 .info_box h4,
	.box_wrap.wrap3 .info_box h5,
	.box_wrap.wrap3 .info_box h6,
	.box_wrap.wrap3 .info_box .tit_type1,
	.box_wrap.wrap3 .info_box .tit_type2,
	.box_wrap.wrap3 .info_box .tit_type3 {
		justify-content: center;
	}
}
@media only screen and (max-width: 1800px) {
	.box_wrap {
		gap: 20px;
	}
	.box_wrap.wrap4 .info_box {
		text-align: center;
		padding-left: 30px;
		padding-right: 30px;
		background-position: center 30px;
	}
	.box_wrap.wrap4 .info_box[class*=ico_] {
		padding-top: 113px;
	}
	.box_wrap.wrap4 .info_box h3,
	.box_wrap.wrap4 .info_box h4,
	.box_wrap.wrap4 .info_box h5,
	.box_wrap.wrap4 .info_box h6,
	.box_wrap.wrap4 .info_box .tit_type1,
	.box_wrap.wrap4 .info_box .tit_type2,
	.box_wrap.wrap4 .info_box .tit_type3 {
		justify-content: center;
	}
}
.content_slide {
	--slide-btn-position: calc(
		(
			var(--slide-btn-height, 56px) +
			var(--slide-dots-padding-top, 20px) +
			var(--slide-dosts-height, 13px)
		) / -2);
	position: relative;
	max-width: var(--slide-width, 400px);
	width: 100%;
}

.content_slide.dots_none {
	--slide-dots-padding-top: 0px;
	--slide-dosts-height: 0px;
}

.content_slide .item_slide {
	vertical-align: top;
}

.content_slide img {
	width: 100%;
	height: var(--slide-height, auto);
	object-fit: contain;
	background: var(--slide-bg-color, #efefef);
}

.content_slide .slick-arrow {
	position: absolute;
	top: 50%;
	z-index: 10;
	width: var(--slide-btn-width, 56px);
	height: var(--slide-btn-height, 56px);
	margin-top: var(--slide-btn-position, -44.5px);
	background: rgba(0, 0, 0, 0.7);
}

.content_slide .slick-arrow:before {
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-weight: 400;
	font-size: var(--slide-btn-icon-size, 26px);
	color: #fff;
}

.content_slide .btn_prev:before {
	content: "\f053";
}

.content_slide .btn_next:before {
	content: "\f054";
}

.content_slide .btn_prev {
	left: 0;
}

.content_slide .btn_next {
	right: 0;
}

.content_slide .slick-dots {
	display: var(--slide-dots-display, flex);
	gap: var(--slide-dots-gap, 10px);
	justify-content: center;
	padding-top: var(--slide-dots-padding-top, 20px);
	line-height: var(--slide-dosts-height, 13px);
}

.content_slide .slick-dots button {
	width: var(--slide-dosts-width, 13px);
	height: var(--slide-dosts-height, 13px);
	border-radius: 50%;
	background: #e2e2e2;
	vertical-align: top;
}

.content_slide .slick-dots .slick-active button {
	background: #404040;
}

.content_slide.type_ratio .item_slide {
	position: relative;
	padding-top: var(--slide-ratio, 56.25%);
}

.content_slide.type_ratio img {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	object-fit: cover;
}

.content_slide.type_desc {
	--slide-btn-position: calc(
		(
			var(--slide-btn-height, 56px) +
			var(--slide-dots-padding-top, 20px) +
			var(--slide-dosts-height, 13px) +
			var(--slide-desc-padding-top, 10px) +
			var(--slide-desc-line-height, 20px) *
			var(--slide-desc-line-number, 1)
		) / -2);
}

.content_slide.type_desc .cont_thumb strong {
	height: calc(var(--slide-desc-line-height, 20px) * var(--slide-desc-line-number, 1));
}

.content_slide .wrap_thumb {
	position: relative;
	overflow: hidden;
}

.content_slide .wrap_thumb strong,
.content_slide .cont_thumb strong {
	display: -webkit-box;
	overflow: hidden;
	padding-top: var(--slide-desc-padding-top, 10px);
	font-weight: var(--slide-desc-font-weight, 700);
	font-size: var(--slide-desc-font-size, 16px);
	line-height: var(--slide-desc-line-height, 20px);
	color: var(--slide-desc-color, #575757);
	-webkit-line-clamp: var(--slide-desc-line-number, 1);
	-webkit-box-orient: vertical;
}

.content_slide .wrap_thumb .dim_cont {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
	content: "";
}

.content_slide .wrap_thumb strong {
	position: absolute;
	bottom: 15px;
	left: 15px;
	right: 15px;
	padding-top: 0;
	color: var(--slide-desc-dim-txt-color, #fff);
}

/* 설명이 긴 슬라이드 */
.wrap_slide_desc_long {
	position: relative;
	--radius: 10px;
}

.wrap_slide_desc_long .slide {
	overflow: hidden;
	position: relative;
	z-index: 10;
	height: 250px;
}

.wrap_slide_desc_long .slick-list,
.wrap_slide_desc_long .slick-track,
.wrap_slide_desc_long .slick-slide > div,
.wrap_slide_desc_long .item_slide {
	height: 100%;
}

.wrap_slide_desc_long .slick-list {
	border-radius: var(--radius) var(--radius) 0 0;
}

.wrap_slide_desc_long .item_slide {
	height: 100%;
	vertical-align: top;
}

.wrap_slide_desc_long .item_slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wrap_slide_desc_long .nav_slide {
	display: none;
	justify-content: flex-end;
	position: relative;
}

.wrap_slide_desc_long .slick-dotted + .nav_slide {
	display: flex;
}

.wrap_slide_desc_long .nav_slide button {
	height: 35px;
}

.wrap_slide_desc_long .nav_slide .btn_action {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	border: 1px solid #000;
	border-top-width: 0;
	font-size: 26px;
	line-height: 1;
	color: #000;
	background: #fff;
}

.wrap_slide_desc_long .nav_slide .btn_action + .btn_action {
	border-left: 0;
}

.wrap_slide_desc_long .wrap_paging button {
	min-width: 60px;
	font-size: 16px;
	line-height: 1;
	color: #fff;
	background: #000;
	letter-spacing: -0.02em;
}

.wrap_slide_desc_long .wrap_paging li {
	display: none;
}

.wrap_slide_desc_long .wrap_paging li.slick-active {
	display: block;
}

.wrap_slide_desc_long .group_slide {
	position: relative;
}

.wrap_slide_desc_long .group_slide:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: var(--radius) var(--radius) 0 0;
	background: var(--slide-desc-long-bg-color, #2292ab);
	pointer-events: none;
	content: "";
}

.wrap_slide_desc_long .txt_desc {
	position: relative;
	padding: 20px 15px;
	font-size: 14px;
	line-height: 22px;
	color: var(--slide-desc-long-txt-color, #fff);
}

.wrap_slide_desc_long .txt_desc strong {
	display: block;
	margin-right: auto;
	font-size: 16px;
	line-height: 20px;
}

.wrap_slide_desc_long .txt_desc p {
	padding-top: 15px;
}

.wrap_slide_desc_long .txt_etc {
	padding-top: 15px;
}

.wrap_slide_desc_long .txt_etc + .txt_etc {
	padding-top: 0;
}

.wrap_slide_desc_long .txt_etc i {
	margin-right: 5px;
}

.wrap_slide_desc_long .desc_slide_more {
	padding: 25px;
	border-radius: 0 0 var(--radius) var(--radius);
	font-size: 14px;
	line-height: 22px;
	color: var(--slide-desc-long-txt-color2, #575757);
	background: var(--slide-desc-long-bg-color2, #f2f2f2);
}

.wrap_slide_desc_long .txt_desc .cate {
	display: inline-flex;
	gap: 5px;
	flex-wrap: wrap;
	vertical-align: top;
}

.wrap_slide_desc_long .txt_desc .cate span {
	padding: 0 7px;
	border-radius: 3px;
	font-size: 14px;
	color: #fff;
	background: #137b91;
}

@media only screen and (min-width: 768px) {
	/* 설명이 긴 슬라이드 */
	.wrap_slide_desc_long .slide {
		height: 300px;
	}
	.wrap_slide_desc_long .group_slide {
		padding: 25px;
	}
	.wrap_slide_desc_long .txt_desc {
		padding: 10px 0;
	}
	.wrap_slide_desc_long .desc_slide_more {
		padding: 30px;
	}
	.wrap_slide_desc_long .slick-list {
		border-radius: var(--radius) var(--radius) 0 var(--radius);
	}
}
@media only screen and (min-width: 1024px) {
	.content_slide .item_slide .wrap_thumb img {
		position: relative;
		z-index: -10;
	}
	.content_slide .item_slide:focus {
		outline-offset: -3px;
		outline: 3px solid rgb(0, 95, 204);
	}
	.content_slide .slick-arrow:hover,
	.content_slide .slick-arrow:focus-visible {
		background: rgba(0, 0, 0, 0.9);
	}
	/* 설명이 긴 슬라이드 */
	.wrap_slide_desc_long .group_slide {
		display: flex;
		gap: 40px;
		position: relative;
		padding: 20px 20px 90px;
	}
	.wrap_slide_desc_long .slide {
		width: 50%;
		min-width: 0;
	}
	.wrap_slide_desc_long .nav_slide {
		position: absolute;
		left: 50%;
		top: 320px;
		transform: translateX(-100%);
	}
	.wrap_slide_desc_long .nav_slide button {
		height: 45px;
	}
	.wrap_slide_desc_long .nav_slide .btn_action {
		width: 45px;
		font-size: 30px;
	}
	.wrap_slide_desc_long .wrap_paging button {
		min-width: 80px;
		font-size: 18px;
	}
	.wrap_slide_desc_long .txt_desc {
		flex: 1;
		min-width: 0;
		padding: 10px 0 0;
		font-size: 16px;
		line-height: 26px;
	}
	.wrap_slide_desc_long .txt_desc strong {
		font-size: 22px;
		line-height: 26px;
	}
	.wrap_slide_desc_long .txt_desc p {
		padding-top: 20px;
	}
	.wrap_slide_desc_long .txt_desc .txt_etc {
		padding-top: 20px;
	}
	.wrap_slide_desc_long .txt_desc .txt_etc + .txt_etc {
		padding-top: 0;
	}
	.wrap_slide_desc_long .desc_slide_more {
		padding: 50px;
		font-size: 16px;
		line-height: 26px;
	}
}
@media only screen and (min-width: 1440px) {
	/* 설명이 긴 슬라이드 */
	.wrap_slide_desc_long .slide {
		width: 600px;
		height: 400px;
	}
	.wrap_slide_desc_long .group_slide {
		gap: 60px;
		padding: 30px 30px 70px;
	}
	.wrap_slide_desc_long .group_slide:before {
		bottom: 145px;
		border-radius: var(--radius);
	}
	.wrap_slide_desc_long .slick-list {
		border-radius: var(--radius);
	}
	.wrap_slide_desc_long .desc_slide_more {
		border-radius: var(--radius);
	}
	.wrap_slide_desc_long .nav_slide {
		top: auto;
		bottom: 70px;
		left: 690px;
		z-index: 10;
		transform: translateX(0);
	}
	.wrap_slide_desc_long .nav_slide .btn_action {
		border-top-width: 1px;
	}
	.wrap_slide_desc_long .txt_desc {
		padding-bottom: 85px;
	}
	.wrap_slide_desc_long .txt_desc p {
		margin-top: 15px;
		padding: 15px 0;
		border-top: 1px solid var(--slide-desc-long-line-color, #fff);
		border-bottom: 1px solid var(--slide-desc-long-line-color, #fff);
	}
}
@media only screen and (min-width: 1720px) {
	/* 설명이 긴 슬라이드 */
	.wrap_slide_desc_long .slide {
		width: 700px;
	}
	.wrap_slide_desc_long .nav_slide {
		left: 790px;
	}
}
.total + .d_list_gallery {
	border-top: 1px solid #ddd;
}

.d_list_gallery {
	padding-top: 20px;
}

.d_list_gallery li {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.d_list_gallery li + li {
	padding-top: 30px;
}

.d_list_gallery li > a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.d_list_gallery .wrap_thumb {
	flex: none;
	overflow: hidden;
	position: relative;
	padding-top: 80%;
	border-radius: 10px;
}

.d_list_gallery .wrap_thumb:after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: inherit;
	border: 1px solid #ddd;
	opacity: 0.3;
	pointer-events: none;
	content: "";
}

.d_list_gallery .wrap_thumb .dim {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	font-weight: 600;
	font-size: 18px;
	line-height: 24px;
	color: #fff;
	background: rgba(0, 0, 0, 0.45);
}

.d_list_gallery .wrap_thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s;
}

.d_list_gallery .wrap_thumb a {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.d_list_gallery .cont_thumb {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 0 10px;
}

.d_list_gallery strong {
	display: -webkit-box;
	overflow: hidden;
	padding-top: 22px;
	font-weight: 600;
	font-size: 16px;
	line-height: 21px;
	color: #000;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: keep-all;
	word-wrap: break-word;
}

.d_list_gallery strong.line_clamp1 {
	-webkit-line-clamp: 1;
}

.d_list_gallery strong a {
	color: inherit;
}

.d_list_gallery .txt_date {
	padding-top: 10px;
	font-weight: 500;
	font-size: 14px;
	line-height: 24px;
	color: #575757;
}

.d_list_gallery dl {
	display: grid;
	gap: 3px 10px;
	grid-template-columns: auto 1fr;
	padding-top: 10px;
}

.d_list_gallery dl dt, .d_list_gallery dl dd {
	min-width: 0;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	color: #000;
	word-break: break-all;
	word-wrap: break-word;
}

.d_list_gallery dl dt {
	max-width: var(--dlist-dt-width, 100px);
	color: #575757;
}

.d_list_gallery .group_btn {
	display: flex;
	gap: 10px;
	margin-top: auto;
	padding-top: 15px;
}

.d_list_gallery .group_btn .btn {
	flex: 1;
}

.d_list_gallery .txt_desc {
	display: -webkit-box;
	overflow: hidden;
	padding-top: 10px;
	font-size: 14px;
	line-height: 18px;
	color: #575757;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.d_list_gallery .txt_location {
	display: flex;
	gap: 5px;
	align-items: baseline;
	padding-top: 15px;
	font-size: 14px;
	line-height: 18px;
	color: #575757;
}

.d_group_tag {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
	position: absolute;
	top: 10px;
	left: 10px;
}

.d_group_tag [class*=tag] {
	padding: 5px 10px;
	border-radius: 13px;
	font-size: 12px;
	line-height: 16px;
	color: #fff;
}

.d_group_tag .tag1 {
	background: #3F8E00;
}

.d_group_tag .tag2 {
	background: #3F68B6;
}

.d_group_tag .tag3 {
	background: #666;
}

.d_group_tag .tag4 {
	background: #fff;
	color: #2F3061;
}

.d_group_tag.type_rect {
	top: 0;
	left: 0;
}

.d_group_tag.type_rect [class*=tag] {
	padding: 10px 15px;
	border-radius: 0;
	font-size: 14px;
	line-height: 17px;
}

.d_group_tag.type_rect .tag1 {
	background: #FF5C5C;
}

.d_group_tag.type_rect .tag2 {
	background: #515151;
}

/* gallery type2 */
.d_list_gallery.type2 .wrap_thumb {
	padding-top: 57.8947%;
	border-radius: 10px 10px 0 0;
	background: #fff;
}

.d_list_gallery.type2 .wrap_thumb + .cont_thumb {
	border-top: 0;
	border-radius: 0 0 10px 10px;
}

.d_list_gallery.type2 .cont_thumb {
	padding: 15px;
	border: 1px solid #EFEFEF;
	border-radius: 10px;
	background: #fff;
}

.d_list_gallery.type2 strong {
	padding-top: 0;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
}

/* gallery type3 */
.d_list_gallery.type3 strong {
	font-size: 18px;
	line-height: 24px;
}

/* gallery type_poster */
.d_list_gallery.type_poster li {
	padding: 15px;
	border: 1px solid #ddd;
	background: #fff;
}

.d_list_gallery.type_poster li + li {
	margin-top: 30px;
}

.d_list_gallery.type_poster .wrap_thumb {
	width: 70%;
	margin: 0 auto;
	padding-top: 0;
	border-radius: 0;
}

.d_list_gallery.type_poster .wrap_thumb a {
	display: block;
	position: relative;
	padding-top: 133.3333%;
}

.d_list_gallery.type_poster .group_btn .btn {
	flex: none;
}

.d_list_gallery.type_poster strong {
	font-size: 22px;
	line-height: 28px;
}

.d_list_gallery.type_poster dl dt {
	position: relative;
	padding-left: 14px;
	font-weight: 700;
	color: #000;
}

.d_list_gallery.type_poster dl dt:before {
	position: absolute;
	top: 7px;
	left: 0;
	width: 6px;
	height: 6px;
	background: currentColor;
	border-radius: 50%;
	content: "";
}

.d_list_gallery.type_poster dl dd {
	font-weight: 400;
	color: #575757;
}

/* gallery type_bnr */
.d_list_gallery.type_bnr .wrap_thumb img {
	top: 50%;
	left: 50%;
	width: 80%;
	height: auto;
	transform: translate(-50%, -50%);
}

.d_list_gallery.type_bnr li > a:hover .wrap_thumb img,
.d_list_gallery.type_bnr li > a:focus .wrap_thumb img {
	transform: translate(-50%, -50%) scale(1.2);
}

/* 갤러리 상세 페이지 */
.d_desc_box_head {
	padding: 20px;
	border-radius: 10px;
	background: #F9F9F9;
}

.d_desc_box_head .wrap_thumb {
	overflow: hidden;
	position: relative;
	padding-top: 80%;
	border-radius: 10px;
}

.d_desc_box_head .wrap_thumb:after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: inherit;
	border: 1px solid #ddd;
	opacity: 0.3;
	pointer-events: none;
	content: "";
}

.d_desc_box_head .wrap_thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.d_desc_box_head .wrap_thumb.type_poster {
	width: 70%;
	margin: 0 auto;
	padding-top: 0;
	border-radius: 0;
}

.d_desc_box_head .wrap_thumb.type_poster .inner_img {
	padding-top: 133.3333%;
}

.d_desc_box_head strong {
	display: -webkit-box;
	overflow: hidden;
	padding-top: 20px;
	font-weight: 800;
	font-size: 22px;
	line-height: 27px;
	color: #000;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--tit-clamp, 2);
}

.d_desc_box_head strong .badge {
	display: inline-block;
	padding: 5px 15px;
	font-size: 16px;
}

.d_desc_box_head strong [class*=tag] {
	display: inline-block;
	margin-right: 5px;
	padding: 5px 10px 4px;
	border-radius: 13px;
	font-weight: 700;
	font-size: 12px;
	line-height: 17px;
	color: #fff;
	vertical-align: top;
}

.d_desc_box_head strong .tag1 {
	background: #3F8E00;
}

.d_desc_box_head strong .tag2 {
	background: #3F68B6;
}

.d_desc_box_head strong .tag3 {
	background: #666;
}

.d_desc_box_head strong .tag4 {
	background: #fff;
	color: #2F3061;
}

.d_desc_box_head dl {
	display: grid;
	gap: 5px 10px;
	grid-template-columns: auto 1fr;
	padding-top: 20px;
}

.d_desc_box_head dl dt, .d_desc_box_head dl dd {
	font-size: 14px;
	line-height: 20px;
}

.d_desc_box_head dl dt {
	font-weight: 700;
	color: #000;
}

.d_desc_box_head dl dd {
	color: #575757;
}

.d_img_view {
	max-width: 700px;
	margin: 0 auto;
	padding-bottom: 40px;
}

.d_img_view img {
	max-width: 100%;
	padding: 4px;
	border-radius: 2px;
	border: 1px solid #ddd;
	vertical-align: top;
	box-sizing: border-box;
}

.d_img_view figure {
	margin: 0;
	text-align: center;
}

.d_img_view figure + figure {
	padding-top: 20px;
}

.d_img_view figcaption {
	margin-top: 5px;
	padding: 10px 0;
	border: 1px solid #ddd;
	font-size: 16px;
	line-height: 20px;
	color: #232323;
	background: #f8f8f8;
}

.d_box_description {
	padding-bottom: 70px;
}

.d_box_description > strong {
	display: block;
	padding: 15px 10px;
	border-top: 1px solid currentColor;
	font-weight: 700;
	font-size: 20px;
	line-height: 29px;
	color: #2F51B2;
	box-sizing: border-box;
}

.d_box_description .cont_desc {
	padding: 0 10px;
}

.d_box_description .img_box {
	margin-top: 20px;
}

.d_box_description .img_box img {
	border-radius: 10px;
}

.d_cont_description {
	padding: 20px 10px;
}

.d_cont_description .imageView, .d_cont_description .videoView, .d_cont_description .audioView, .d_cont_description .flashView {
	max-width: 700px;
}

.d_cont_description .imageView img {
	box-sizing: border-box;
}

/* 갤러리 상세 페이지 - 레이아웃 */
.d_description_head {
	border-top: 2px solid #000;
	border-bottom: 1px solid #ddd;
}

.d_description_head .tit_box {
	padding: 15px 10px;
	background: #F8F8F8;
}

.d_description_head .tit_box strong {
	font-size: 18px;
	line-height: 22px;
	color: #232323;
}

.d_description_head .etc_info_box {
	padding: 10px;
	border-top: 1px solid #ddd;
}

.d_description_head dl > .item_info {
	display: grid;
	gap: 0 10px;
	grid-template-columns: minmax(55px, auto) 1fr;
	font-size: 12px;
	line-height: 18px;
}

.d_description_head dl dt {
	font-weight: 700;
	color: #000;
}

.d_description_head dl dd {
	font-weight: 500;
	color: #575757;
}

.d_description_head .add_file {
	padding: 10px;
	border-top: 1px solid #ddd;
}

.d_description_head .add_file .tit_file {
	display: block;
	margin-bottom: 7px;
	font-weight: bold;
	font-size: 12px;
	line-height: 18px;
	color: #000;
}

.d_description_head .add_file ul li {
	display: flex;
	align-items: center;
	gap: 5px 7px;
	min-height: 30px;
	font-size: 12px;
	line-height: 18px;
}

.d_description_head .add_file ul li .link_file {
	overflow: hidden;
	font-size: 12px;
	line-height: 18px;
	color: #838383;
	word-break: break-all;
	word-wrap: break-word;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.d_description_head .add_file ul li .link_file:before {
	flex: none;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 500;
	margin-right: 5px;
	content: "\f0c6";
}

.d_description_head .add_file ul li .btn {
	flex: none;
}

.d_description_head .add_file .file_down {
	display: inline-block;
	background: #000;
	border-radius: 3px;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	padding: 5px 10px 7px;
}

.d_description_head .add_file .btn_all_down {
	margin-top: 10px;
}

.d_description_head .add_file .list_file_group {
	display: flex;
	flex-direction: column;
	row-gap: 5px;
}

.d_bottombox_answer {
	margin-top: 50px;
	padding: 20px 15px;
	border-top: 2px solid #2F51B2;
	background: #F8F8F8;
}

.d_bottombox_answer > p {
	font-size: 14px;
	line-height: 18px;
	color: #575757;
}

.d_bottombox_answer > p:only-child {
	padding: 40px 10px;
	text-align: center;
}

.d_bottombox_answer .tit_answer {
	display: block;
	padding-bottom: 10px;
	font-size: 16px;
	line-height: 20px;
	color: #000;
}

.d_bottombox_answer .tit_answer ~ .tit_answer {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #ddd;
}

.d_bottombox_answer .tit_answer > span {
	margin-left: 10px;
	font-weight: 500;
	font-size: 12px;
	line-height: 18px;
	color: #575757;
}

.d_btn_group_bottom {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 30px;
	padding-top: 10px;
	border-top: 1px solid #ddd;
}

.d_list_descdoc {
	overflow: hidden;
	margin-top: 20px;
	padding: 0 15px;
	font-weight: 500;
	font-size: 14px;
	line-height: 15px;
	color: #575757;
	background: #F9F9F9;
}

.d_list_descdoc a {
	display: block;
	padding: 16px 0;
	margin: -16px 0;
}

.d_list_descdoc dt, .d_list_descdoc dd {
	padding-bottom: 16px;
	padding-top: 16px;
}

.d_list_descdoc dt {
	float: left;
	font-weight: 700;
	color: #000;
}

.d_list_descdoc dd {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	overflow: hidden;
	padding-left: 15px;
}

.d_list_descdoc dd > span {
	flex-shrink: 0;
	margin-left: auto;
	font-size: 12px;
}

.d_list_descdoc dt ~ dt, .d_list_descdoc dd ~ dd {
	border-top: 1px solid #ddd;
}

/* 갤러리 상세 페이지 - 슬라이드 */
.d_slide_description {
	max-width: 910px;
	margin: 0 auto;
}

.d_slide_description .slick-list {
	overflow: hidden;
	border-radius: 5px;
}

.d_slide_description, .d_slide_nav_description {
	position: relative;
}

.d_slide_description .item_slide, .d_slide_nav_description .item_slide {
	position: relative;
	background: rgba(221, 221, 221, 0.3);
	vertical-align: top;
}

.d_slide_description .item_slide:before, .d_slide_nav_description .item_slide:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: inherit;
	border: 1px solid #ddd;
	opacity: 0.3;
	content: "";
}

.d_slide_description img, .d_slide_nav_description img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.d_slide_description .item_slide {
	padding-top: 67.1067%;
}

.d_slide_description .slick-arrow, .d_slide_nav_description .slick-arrow {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	z-index: 10;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	color: #fff;
	background: rgba(0, 0, 0, 0.3);
	transform: translateY(-50%);
}

.d_slide_description .btn_prev, .d_slide_nav_description .btn_prev {
	left: 5px;
}

.d_slide_description .btn_next, .d_slide_nav_description .btn_next {
	right: 5px;
}

.d_slide_description .btn_prev:before, .d_slide_description .btn_next:before {
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-size: 20px;
}

.d_slide_description .btn_prev:before {
	content: "\f053";
}

.d_slide_description .btn_next:before {
	content: "\f054";
}

.d_slide_nav_description {
	max-width: 735px;
	margin: 20px auto 0;
	padding: 20px;
	border-radius: 5px;
	background: #F1F1F1;
}

.d_slide_nav_description img {
	opacity: 0.4;
}

.d_slide_nav_description .slick-list {
	margin: 0 -5px;
}

.d_slide_nav_description .slick-slide {
	margin: 0 5px;
}

.d_slide_nav_description .item_slide {
	overflow: hidden;
	padding-top: 66.66666666%;
	border-radius: 5px;
}

.d_slide_nav_description .slick-current .item_slide:after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: inherit;
	border: 2px solid #404040;
	content: "";
}

.d_slide_nav_description .slick-current img {
	opacity: 1;
}

/* 댓글 */
.d_cmt {
	padding-top: 30px;
}

.d_cmt .d_cmt_box {
	padding: 20px;
	background: #f8f8f8;
}

.d_cmt .d_cmt_tit {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
	align-items: center;
	padding-bottom: 10px;
	font-size: 18px;
	line-height: 22px;
	color: #000;
}

.d_cmt .d_cmt_tit span {
	font-weight: 500;
	font-size: 14px;
	line-height: 18px;
	color: #575757;
}

.d_cmt .d_box_write textarea {
	min-height: 75px;
	border-color: #ddd;
	border-radius: 5px;
}

.d_cmt .d_btn_wrap {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	padding-top: 10px;
}

.d_cmt .d_txt_desc {
	font-weight: 500;
	font-size: 14px;
	line-height: 18px;
	color: #575757;
}

.d_cmt .d_cmt_desc_box {
	margin-top: 20px;
	padding: 0 20px;
	border-top: 2px solid #2F51B2;
	background: #f8f8f8;
}

.d_cmt .d_cmt_desc_box li {
	padding: 20px 0;
}

.d_cmt .d_cmt_desc_box li + li {
	border-top: 1px solid #ddd;
}

@media only screen and (min-width: 768px) {
	.d_list_gallery + .paging {
		padding-top: 50px;
	}
	.d_list_gallery {
		display: grid;
		gap: 30px;
		grid-template-columns: repeat(var(--grid-col-768, 2), 1fr);
	}
	.d_list_gallery li + li {
		padding-top: 0;
	}
	.d_group_tag [class*=tag] {
		font-size: 14px;
	}
	/* 갤러리 상세 페이지 */
	.d_desc_box_head {
		display: flex;
		gap: 30px;
		align-items: flex-start;
	}
	.d_desc_box_head .wrap_thumb {
		flex: 0 0 276px;
		padding-top: 0;
	}
	.d_desc_box_head .wrap_thumb.type_poster {
		flex: 0 0 180px;
	}
	.d_desc_box_head .inner_img {
		position: relative;
		padding-top: 80%;
	}
	.d_desc_box_head .cont_thumb {
		flex: 1;
	}
	.d_box_description {
		display: flex;
	}
	.d_box_description > strong {
		flex: 0 0 180px;
	}
	.d_box_description .cont_desc {
		flex-grow: 1;
		padding-top: 15px;
		border-top: 1px solid #E3E3E3;
	}
	.d_box_description .img_box {
		justify-content: flex-start;
	}
	.d_box_description .img_box img {
		width: auto;
		max-width: 400px;
	}
	.d_description_head .add_file {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.d_description_head .add_file .list_file_group {
		flex: 1;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: 16px;
	}
	.d_description_head .add_file .list_file_group li {
		width: calc(50% - 8px);
	}
	.d_description_head .add_file .btn_all_down {
		align-self: flex-end;
	}
	/* 갤러리 상세 페이지 - 슬라이드 */
	.d_slide_description .slick-arrow, .d_slide_nav_description .slick-arrow {
		width: 70px;
		height: 70px;
	}
	.d_slide_description .btn_prev:before, .d_slide_description .btn_next:before {
		font-size: 34px;
	}
	.d_slide_nav_description {
		margin-top: 30px;
	}
	/* gallery type_poster */
	.d_list_gallery.type_poster li + li {
		margin-top: 0;
	}
}
@media only screen and (min-width: 1024px) {
	.d_list_gallery {
		grid-template-columns: repeat(var(--grid-col-1024, 3), 1fr);
	}
	.d_list_gallery li > a:hover .wrap_thumb img, .d_list_gallery li > a:focus .wrap_thumb img {
		transform: scale(1.2);
	}
	.d_list_gallery strong {
		font-size: 18px;
	}
	.d_list_gallery strong a:hover {
		text-decoration: underline;
	}
	.d_list_gallery .txt_date {
		font-size: 16px;
		line-height: 20px;
	}
	.d_list_gallery dl {
		gap: 5px 15px;
	}
	.d_list_gallery dl dt, .d_list_gallery dl dd {
		font-size: 16px;
		line-height: 24px;
	}
	.d_list_gallery .txt_desc {
		font-size: 16px;
		line-height: 20px;
	}
	.d_list_gallery .txt_location {
		font-size: 16px;
		line-height: 20px;
	}
	.d_group_tag.type_rect [class*=tag] {
		font-size: 16px;
	}
	/* 갤러리 상세 페이지 */
	.d_desc_box_head {
		gap: 50px;
		padding: 30px;
	}
	.d_desc_box_head .wrap_thumb.type_poster {
		flex: 0 0 195px;
	}
	.d_desc_box_head strong {
		padding-top: 10px;
		font-size: 26px;
		line-height: 31px;
	}
	.d_desc_box_head strong [class*=tag] {
		padding: 7px 12px 6px;
		border-radius: 15px;
		font-size: 14px;
	}
	.d_desc_box_head dl {
		gap: 0 15px;
		padding-top: 27px;
	}
	.d_desc_box_head dl dt, .d_desc_box_head dl dd {
		font-size: 16px;
		line-height: 28px;
	}
	.d_box_description .cont_desc {
		padding: 30px 20px 0;
	}
	.d_box_description > strong {
		flex: 0 0 255px;
		padding: 30px;
		font-size: 24px;
		line-height: 29px;
	}
	.d_box_description .img_box {
		flex-wrap: wrap;
		margin-top: 30px;
	}
	.d_cont_description {
		padding: 40px 20px;
	}
	/* 갤러리 상세 페이지 - 레이아웃 */
	.d_description_head .tit_box {
		padding: 30px 20px;
	}
	.d_description_head .tit_box strong {
		font-size: 22px;
		line-height: 26px;
	}
	.d_description_head .etc_info_box {
		display: grid;
		row-gap: 10px;
		overflow: hidden;
		padding: 20px;
	}
	.d_description_head dl {
		display: flex;
		gap: 10px 0;
		flex-wrap: wrap;
		margin-left: -41px;
		font-size: 16px;
		line-height: 22px;
	}
	.d_description_head dl > .item_info {
		display: flex;
		gap: 0 20px;
		position: relative;
		padding-left: 40px;
		font-size: inherit;
		line-height: inherit;
	}
	.d_description_head dl dt {
		flex: none;
	}
	.d_description_head dl dt:before {
		position: absolute;
		top: 50%;
		left: 20px;
		width: 1px;
		height: 18px;
		margin-top: -9px;
		background: #ddd;
		content: "";
	}
	.d_description_head .add_file {
		flex-direction: row;
		gap: 20px;
		padding: 20px;
	}
	.d_description_head .add_file .list_file_group {
		column-gap: 18px;
	}
	.d_description_head .add_file .list_file_group li {
		width: calc(33.33333333% - 12px);
	}
	.d_description_head .add_file .tit_file {
		flex: none;
		margin-bottom: 0;
		font-size: 16px;
		line-height: 30px;
	}
	.d_description_head .add_file .btn_all_down {
		flex: none;
		align-self: flex-start;
		margin-top: 0;
	}
	.d_bottombox_answer > p {
		font-size: 16px;
		line-height: 22px;
	}
	.d_bottombox_answer .tit_answer {
		font-size: 20px;
		line-height: 24px;
	}
	.d_bottombox_answer .tit_answer > span {
		font-size: 16px;
		line-height: 22px;
	}
	.d_btn_group_bottom {
		padding-top: 20px;
	}
	.d_list_descdoc {
		margin-top: 30px;
		padding: 0 20px;
		font-size: 16px;
		line-height: 19px;
	}
	.d_list_descdoc dd {
		flex-wrap: nowrap;
		position: relative;
		padding-left: 31px;
	}
	.d_list_descdoc dd:before {
		position: absolute;
		top: 17px;
		left: 15px;
		width: 1px;
		height: 17px;
		background: #ddd;
		content: "";
	}
	.d_list_descdoc dd > span {
		font-size: 16px;
	}
	.d_list_descdoc dt ~ dt, .d_list_descdoc dd ~ dd {
		border-top: 0;
	}
	.d_list_descdoc a:hover, .d_list_descdoc a:focus {
		text-decoration: underline;
	}
	/* 갤러리 상세 페이지 - 슬라이드 */
	.d_slide_description .slick-list {
		border-radius: 10px;
	}
	.d_slide_nav_description a {
		border-radius: 10px;
	}
	.d_slide_description .slick-arrow {
		width: 80px;
		height: 80px;
	}
	.d_slide_description .slick-arrow:hover,
	.d_slide_description .slick-arrow:focus-visible {
		background: rgba(0, 0, 0, 0.6);
	}
	.d_slide_description .btn_prev {
		left: 20px;
	}
	.d_slide_description .btn_next {
		right: 20px;
	}
	.d_slide_description .btn_prev:before, .d_slide_description .btn_next:before {
		font-size: 46px;
	}
	.d_slide_description .item_slide {
		z-index: 0;
	}
	.d_slide_description .item_slide:focus {
		outline: 3px solid rgb(0, 95, 204);
		outline-offset: -3px;
	}
	.d_slide_description .item_slide img {
		z-index: -10;
	}
	.d_slide_nav_description {
		margin-top: 45px;
		padding: 30px;
		border-radius: 10px;
		text-align: center;
	}
	.d_slide_nav_description .slick-list {
		max-width: 508px;
		margin: 0 auto;
	}
	.d_slide_nav_description .slick-track {
		display: flex;
		gap: 10px;
	}
	.d_slide_nav_description .slick-slide {
		margin: 0;
	}
	.d_slide_nav_description a:hover img, .d_slide_nav_description a:focus img {
		opacity: 1;
	}
	/* 댓글 */
	.d_cmt .d_cmt_box {
		padding: 30px;
	}
	.d_cmt .d_cmt_tit {
		gap: 10px;
		font-size: 20px;
		line-height: 24px;
	}
	.d_cmt .d_cmt_tit span {
		font-size: 16px;
		line-height: 20px;
	}
	.d_cmt .d_box_write textarea {
		min-height: 95px;
	}
	.d_cmt .d_txt_desc {
		font-size: 16px;
		line-height: 20px;
	}
	.d_cmt .d_cmt_desc_box {
		margin-top: 30px;
		padding: 0 30px;
	}
	.d_cmt .d_cmt_desc_box li {
		padding: 30px 0;
	}
	/* gallery type2 */
	.d_list_gallery.type2 .cont_thumb {
		padding: 20px;
	}
	.d_list_gallery.type2 strong {
		font-size: 20px;
	}
	/* gallery type3 */
	.d_list_gallery.type3 strong {
		font-size: 20px;
	}
	/* gallery type_poster */
	.d_list_gallery.type_poster {
		grid-template-columns: repeat(var(--grid-col-1024, 2), 1fr);
	}
	.d_list_gallery.type_poster li {
		flex-direction: row;
		gap: 20px;
		align-items: start;
	}
	.d_list_gallery.type_poster .wrap_thumb {
		width: 30%;
	}
	.d_list_gallery.type_poster .cont_thumb {
		height: 100%;
		padding: 0;
	}
	.d_list_gallery.type_poster strong {
		padding-top: 0;
		font-size: 26px;
		line-height: 31px;
	}
}
@media only screen and (min-width: 1440px) {
	.d_list_gallery {
		grid-template-columns: repeat(var(--grid-col-1440, 4), 1fr);
	}
	/* 갤러리 상세 페이지 - 슬라이드 */
	.d_slide_nav_description {
		margin-top: 60px;
	}
	/* gallery type2 */
	.d_list_gallery.type2 {
		grid-template-columns: repeat(var(--grid-col-1440, 4), 1fr);
	}
	/* gallery type_poster */
	.d_list_gallery.type_poster {
		gap: 40px;
	}
	.d_list_gallery.type_poster dl {
		padding-top: 24px;
	}
	.d_list_gallery.type_poster .group_btn {
		padding-top: 30px;
	}
	.d_list_gallery.type_poster li {
		gap: 30px;
		padding: 30px;
	}
	.d_list_gallery.type_poster .wrap_thumb {
		width: 195px;
	}
}
.d_box_calendar {
	border: 1px solid #EAEAEA;
}

.off_sun .dates .day:nth-child(7n+1),
.off_sat .dates .day:nth-child(7n) {
	background: #EDEDED;
}

.d_calendar {
	padding: 20px;
}

.d_calendar .head_box {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.d_calendar .head_box a {
	background-color: #F6F6F6;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #D6D6D6;
	width: 30px;
	height: 30px;
}

.d_calendar .head_box a i {
	color: #343641;
}

.d_calendar .head_box .tit_month {
	margin: 0 15px;
	font-size: 22px;
	line-height: 30px;
	font-weight: bold;
	color: #4F4F4F;
}

.d_calendar .d_cal_body {
	border-top: 2px solid #07387B;
	margin-top: 15px;
	margin-bottom: 20px;
}

.d_calendar .days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
}

.d_calendar .days .day {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	font-size: 12px;
	line-height: 14px;
	font-weight: bold;
	color: #000000;
}

.d_calendar .days .day:first-child {
	color: #F24B5D;
}

.d_calendar .days .day:last-child {
	color: #0E77BB;
}

.d_calendar .d_cal_body .dates {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;
}

.d_calendar .dates .day {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: space-between;
	min-width: 0;
	color: #000000;
	background-color: #fff;
	border: 1px solid #CBCBCB;
	border-top: none;
	border-left: none;
	font-size: 16px;
	min-height: 65px;
	height: auto;
	padding: 10px;
	font-weight: 300;
	text-align: right;
	cursor: pointer;
}

.d_calendar .dates .day.has {
	background-color: #D5EAF8;
	border: 2px solid #1B9CDC;
}

.d_calendar .dates .day.start {
	background-color: #D5EAF8;
	border: 2px solid #1B9CDC;
}

.d_calendar .dates .day.start::after {
	content: "대여";
	font-size: 18px;
	font-weight: bold;
	color: #00699D;
}

.d_calendar .dates .day.end {
	background-color: #D5EAF8;
	border: 2px solid #1B9CDC;
}

.d_calendar .dates .day.end::after {
	content: "반납";
	font-size: 18px;
	font-weight: bold;
	color: #00699D;
}

.d_calendar .dates .day.today small {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	font-weight: bold;
	color: #fff;
	background-color: #000;
	transform: translate(6px, -4px);
}

.d_calendar .dates .day.unselect {
	cursor: default;
	pointer-events: none;
}

.d_calendar .dates .day:before {
	order: 1;
}

.d_calendar .dates .day:after {
	order: 2;
}

.d_calendar .dates .day:not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "예약가능";
}

.d_calendar .dates .day.has:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "선택됨";
}

.d_calendar .dates .day.prev:not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "예약불가";
}

.d_calendar .dates .day.today:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘 예약가능";
}

.d_calendar .dates .day.today.has:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘 선택됨";
}

.d_calendar .dates .day.today.prev:not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘 예약불가";
}

.d_calendar .dates .day:nth-of-type(7n):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 토요일";
}

.d_calendar .dates .day:nth-of-type(7n - 5):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 월요일";
}

.d_calendar .dates .day:nth-of-type(7n - 4):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 화요일";
}

.d_calendar .dates .day:nth-of-type(7n - 3):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 수요일";
}

.d_calendar .dates .day:nth-of-type(7n - 2):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 목요일";
}

.d_calendar .dates .day:nth-of-type(7n - 1):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 금요일";
}

.d_calendar .dates .day:nth-of-type(7n + 1):not(.disable) small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: " 일요일";
}

.d_calendar .dates .day:nth-of-type(7n):not(.disable):after,
.d_calendar .dates .day:nth-of-type(7n + 1):not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "예약불가";
}

.d_calendar .dates .day:nth-of-type(7n).today:not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘 예약불가";
}

.d_calendar .dates .day:nth-of-type(7n + 1).today:not(.disable):after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘 예약불가";
}

.d_calendar_desc .list_infotime li.has a:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "선택됨";
}

.d_calendar .dates .day:nth-of-type(7n).has {
	border: 1px solid #CBCBCB;
	border-top: none;
	border-left: none;
}

.d_calendar .dates .day:nth-of-type(7n) small {
	color: #0E77BB;
}

.d_calendar .dates .day:nth-of-type(7n + 1).has {
	border: 1px solid #CBCBCB;
	border-top: none;
	border-left: none;
}

.d_calendar .dates .day:nth-of-type(7n + 1) small {
	color: #F24B5D;
}

.d_calendar .dates .day.selected {
	background-color: #D5EAF8;
}

.d_calendar .dates .day.prev {
	background-color: #EDEDED;
}

.d_calendar .dates .day.disable {
	display: block;
	overflow: hidden;
	color: #fff;
	background: #fff;
	cursor: default;
	text-indent: 9999999px;
}

.d_calendar .dates .day.holiday {
	color: #F24B5D;
	background-color: #ededed !important;
}

.d_calendar .dates .day.holiday small {
	color: inherit;
}

.d_calendar .dates .day .tag {
	position: relative;
	display: flex;
	align-items: center;
	margin-top: 5px;
}

.d_calendar .dates .day .tag .badge {
	margin-right: 7px;
}

.d_calendar .dates .day .tag .badge:hover ~ dl {
	display: block !important;
}

.d_calendar .dates .day .tag small {
	color: #000000;
	font-size: 16px;
	font-weight: bold;
}

.d_calendar .dates .day .tag dl {
	position: absolute;
	padding: 13px 15px;
	border-radius: 5px;
	left: calc(100% - 20px);
	top: 50%;
	transform: translateY(-50%);
	display: none;
	background-color: rgba(0, 0, 0, 0.8);
	color: #fff;
	font-weight: bold;
	width: auto;
	white-space: nowrap;
	text-align: left;
}

.d_calendar .dates .day .tag dl dt {
	display: block;
	margin-bottom: 5px;
}

.d_calendar .dates .day .tag dl dd {
	display: block;
}

.d_calendar .d_cal_tip {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 15px;
	align-items: center;
	justify-content: flex-end;
}

.d_calendar .d_cal_tip li {
	color: #313131;
	display: flex;
	gap: 5px;
	align-items: center;
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	white-space: nowrap;
	width: auto;
}

.d_calendar .d_cal_tip span {
	width: 14px;
	height: 14px;
	display: block;
	border: 2px solid #CBCBCB;
	background-color: #fff;
}

.d_calendar .d_cal_tip li:nth-of-type(1) span {
	background-color: #EDEDED;
	border-color: #CBCBCB;
}

.d_calendar .d_cal_tip li:nth-of-type(3) span {
	background-color: #D5EAF8;
	border-color: #1B9CDC;
}

.d_calendar_desc {
	padding: 20px;
	border-top: 1px solid #EAEAEA;
}

.d_calendar_desc .tab_panel {
	display: none;
}

.d_calendar_desc .tab_panel.on {
	display: block;
}

.d_calendar_desc .tit_info {
	display: flex;
	row-gap: 10px;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 20px 0;
}

.d_calendar_desc .tit_info p {
	position: relative;
	display: flex;
	column-gap: 4px;
	align-items: center;
	color: #000;
	font-size: 18px;
	line-height: 24px;
	font-weight: bold;
}

.d_calendar_desc .tit_info ul {
	display: flex;
	gap: 5px 15px;
	align-items: center;
	justify-content: flex-end;
	margin-left: auto;
}

.d_calendar_desc .tit_info ul li {
	color: #313131;
	display: flex;
	gap: 5px;
	align-items: center;
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	white-space: nowrap;
	width: auto;
}

.d_calendar_desc .tit_info ul li span {
	width: 14px;
	height: 14px;
	display: block;
	border: 2px solid #CBCBCB;
	background-color: #fff;
}

.d_calendar_desc .tit_info ul li:nth-of-type(1) span {
	background-color: #EDEDED;
	border-color: #CBCBCB;
}

.d_calendar_desc .tit_info ul li:nth-of-type(3) span {
	background-color: #D5EAF8;
	border-color: #1B9CDC;
}

.d_calendar_desc .list_infotime {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, 1fr);
}

.d_calendar_desc .list_infotime a {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	height: 50px;
	border: 1px solid #CBCBCB;
	border-radius: 5px;
	font-size: 11px;
	line-height: 15px;
	font-weight: 500;
	text-align: center;
}

.d_calendar_desc .list_infotime span {
	display: block;
	font-size: inherit;
	color: inherit;
}

.d_calendar_desc .list_infotime li.has a {
	border: 3px solid #1B9CDC;
	background-color: #D5EAF8;
}

.d_calendar_desc .list_infotime li.end a {
	background-color: #EDEDED;
	pointer-events: none;
}

.d_calendar_desc .info_select {
	border: 1px solid #EAEAEA;
	border-radius: 5px;
	padding: 0 10px;
	margin-bottom: 15px;
}

.d_calendar_desc .info_select dl {
	display: flex;
	flex-wrap: wrap;
	row-gap: 5px;
	width: 100%;
	padding: 10px 0;
	font-size: 14px;
	line-height: 18px;
	color: #313131;
	font-weight: bold;
}

.d_calendar_desc .info_select dl + dl {
	border-top: 1px solid #EAEAEA;
}

.d_calendar_desc .info_select dl + dl dd {
	font-weight: 500;
}

.d_calendar_desc .info_select dl .time {
	border: 1px solid #E5E5E5;
	border-radius: 3px;
	min-width: 125px;
	padding: 8px 20px 8px 10px;
	background: url(../images/common/time.png) #fff no-repeat calc(100% - 10px) center/15px;
}

.d_calendar_desc .info_select dl .align {
	display: flex;
	align-items: center;
	width: 100%;
}

.d_calendar_desc .info_select dl .align dt {
	margin-right: 10px;
}

.d_calendar_desc .info_select dl .align dd {
	margin-right: 10px;
}

.d_calendar_desc .info_select dl dt {
	flex-shrink: 0;
	color: #4B7AFF;
	min-width: 75px;
}

.d_calendar_desc .info_select dl dd {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	max-width: calc(100% - 75px);
}

.d_calendar_desc .info_select dl dd span {
	display: block;
	font-weight: 400;
	margin-right: 10px;
	margin-bottom: 5px;
}

/* 캘린더 point 타입 */
.d_calendar_point {
	padding-top: 10px;
}

.d_calendar_point .pgm_cal_head {
	display: flex;
	gap: 20px 10px;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 15px;
}

.d_calendar_point .pgm_cal_head .pgm_cal_ctrl {
	display: flex;
	align-items: center;
}

.d_calendar_point .pgm_cal_head .pgm_cal_ctrl .pgm_cal_date {
	margin: 0 30px;
	font-size: 30px;
	font-weight: bold;
	color: #4F4F4F;
}

.d_calendar_point .pgm_cal_head .pgm_cal_ctrl > a {
	background-color: #F6F6F6;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #D6D6D6;
	width: 40px;
	height: 40px;
}

.d_calendar_point .d_cal_tip {
	display: flex;
	gap: 5px 15px;
	flex-wrap: wrap;
	margin-left: auto;
}

.d_calendar_point .d_cal_tip ul {
	display: flex;
	gap: 10px;
	padding-top: 10px;
	flex-wrap: wrap;
}

.d_calendar_point .d_cal_tip ul li {
	display: flex;
	align-items: center;
	gap: 5px;
	font-weight: 500;
	font-size: 12px;
	line-height: 16px;
	color: rgba(0, 0, 0, 0.4);
}

.d_calendar_point .d_cal_tip ul li:before {
	content: "";
}

.d_calendar_point .d_cal_tip ul li.holiday:before {
	display: inline-block;
	width: 10px;
	height: 10px;
	border: 1px solid #ddd;
	background: #f8f8f8;
	vertical-align: top;
}

.d_calendar_point .d_cal_tip ul li.blue:before,
.d_calendar_point .d_cal_tip ul li.green:before,
.d_calendar_point .d_cal_tip ul li.red:before,
.d_calendar_point .d_cal_tip ul li.purple2:before,
.d_calendar_point .d_cal_tip ul li.orange:before {
	width: 14px;
	height: 14px;
	border-radius: 50%;
}

.d_calendar_point .d_cal_tip ul li.blue:before {
	background: #30A0FF;
}

.d_calendar_point .d_cal_tip ul li.green:before {
	background: #3F8E00;
}

.d_calendar_point .d_cal_tip ul li.red:before {
	background: #9B2C03;
}

.d_calendar_point .d_cal_tip ul li.purple2:before {
	background: #7e2dd0;
}

.d_calendar_point .d_cal_tip ul li.orange:before {
	background: #ec653a;
}

.d_calendar_point .days .day:first-child,
.d_calendar_point .dates .day:nth-child(7n+1) small {
	color: #F24B5D;
}

.d_calendar_point .days .day:last-child,
.d_calendar_point .dates .day:nth-child(7n) small {
	color: #0E77BB;
}

.d_calendar_point .d_cal_tip dl {
	display: flex;
	align-items: center;
}

.d_calendar_point .d_cal_tip dl dt {
	margin-right: 5px;
	border-radius: 5px;
	width: 65px;
	height: 30px;
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
}

.d_calendar_point .d_cal_tip dl dd {
	font-size: 16px;
	font-weight: 500;
	color: #000000;
}

.d_calendar_point .d_cal_tip dl:first-child dt {
	background-color: #31A6FB;
}

.d_calendar_point .d_cal_tip dl:last-child dt {
	background-color: #FF9927;
}

.d_calendar_point .head_box {
	padding-bottom: 10px;
}

.d_calendar_point .days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
}

.d_calendar_point .days .day {
	min-width: 0;
	padding: 10px;
	font-weight: 600;
	font-size: 16px;
	font-weight: bold;
	color: rgba(0, 0, 0, 0.5);
	text-align: center;
}

.d_calendar_point .dates {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	height: auto;
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;
}

.d_calendar_point .dates .day {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	min-width: 0;
	padding: 10px;
	text-align: right;
	color: #000;
	background-color: #fff;
	border: 1px solid #ddd;
	border-top: none;
	border-left: none;
	font-size: 18px;
	height: auto;
	max-height: 110px;
	font-weight: 500;
	cursor: pointer;
}

.d_calendar_point .dates .day.holiday {
	color: #F24B5D;
	background-color: #ededed !important;
}

.d_calendar_point .dates .day.holiday small {
	color: inherit;
}

.d_calendar_point .dates .day > small {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	font-size: 16px;
}

.d_calendar_point .dates .day > div {
	display: flex;
	gap: 4px;
	justify-content: flex-end;
	width: 100%;
	padding-top: 5px;
}

.d_calendar_point .dates .day span {
	display: block;
	overflow: hidden;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	font-size: 1px;
	line-height: 0;
	color: transparent;
}

.d_calendar_point .dates .day span.blue {
	background-color: #30A0FF;
}

.d_calendar_point .dates .day span.green {
	background-color: #3F8E00;
}

.d_calendar_point .dates .day span.red {
	background-color: #9B2C03;
}

.d_calendar_point .dates .day span.oran {
	background-color: #FF9900;
}

.d_calendar_point .dates .day span.purple2 {
	background-color: #7e2dd0;
}

.d_calendar_point .dates .day span.orange {
	background-color: #ec653a;
}

.d_calendar_point .dates .day.today > small {
	flex: none;
	justify-content: center;
	background-color: #000;
	font-weight: bold;
	font-size: 14px;
	color: #FFF;
}

.d_calendar_point .dates .day.disable {
	background: #fff !important;
	color: transparent !important;
	cursor: default !important;
}

.d_calendar_point .dates .day.has {
	background-color: #FCFAEF;
}

/* 캘린더 plan 타입 */
.d_cal_badge {
	display: inline-flex;
	padding: 3px 10px;
	border-radius: 5px;
	color: #fff;
	font-weight: 700;
	font-size: 12px;
	line-height: 16px;
	border: 1px solid transparent;
	vertical-align: top;
	box-sizing: border-box;
}

.d_cal_badge.type_round {
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	padding: 0;
	border-radius: 50%;
}

.d_cal_badge.red {
	background-color: #9B2C03;
}

.d_cal_badge.blue {
	background-color: #3F68B6;
}

.d_cal_badge.green {
	background-color: #3F8E00;
}

.d_cal_badge.dark {
	background-color: #4D4D4D;
}

.d_cal_badge.yellow {
	background-color: #C16F00;
}

.d_cal_badge.gray {
	border-color: #777;
	background-color: #777;
	color: #fff;
}

.d_cal_badge.purple {
	background-color: #5100a3;
}

.d_cal_badge.purple2 {
	background-color: #7e2dd0;
}

.d_cal_badge.orange {
	background-color: #ec653a;
}

.d_calendar_plan .d_cal_head {
	display: flex;
	align-items: center;
	justify-content: center;
}

.d_calendar_plan .d_cal_head a {
	background-color: #F6F6F6;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	border: 1px solid #D6D6D6;
}

.d_calendar_plan .d_cal_head .tit_month {
	margin: 0 15px;
	font-weight: 700;
	font-size: 22px;
	line-height: 30px;
	color: #4F4F4F;
}

.d_calendar_plan .d_cal_body {
	margin-top: 15px;
	border-top: 2px solid #393939;
}

.d_calendar_plan .days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	height: 50px;
}

.d_calendar_plan .days .day {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	font-size: 12px;
	line-height: 20px;
	font-weight: 700;
	color: #000;
}

.d_calendar_plan .days .day:first-child {
	color: #F24B5D;
}

.d_calendar_plan .days .day:last-child {
	color: #0E77BB;
}

.d_calendar_plan .dates {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;
}

.d_calendar_plan .dates .day {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 65px;
	padding: 10px;
	border: 1px solid #CBCBCB;
	border-top: none;
	border-left: none;
	font-size: 16px;
	font-weight: 300;
	color: #000;
	background-color: #fff;
	text-align: right;
	cursor: pointer;
}

.d_calendar_plan .dates .day:before {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: attr(data-dtnm) "요일";
}

.d_calendar_plan .dates .day.has {
	position: relative;
	background-color: #D5EAF8;
}

.d_calendar_plan .dates .day.has:after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 2px solid #1B9CDC;
	content: "";
}

.d_calendar_plan .dates .day.today > small {
	display: flex;
	align-self: flex-end;
	justify-content: center;
	align-items: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	font-weight: bold;
	color: #fff;
	background-color: #000;
	transform: translate(0, -3px);
}

.d_calendar_plan .dates .day.today > small:after {
	display: block;
	overflow: hidden;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	content: "오늘";
}

.d_calendar_plan .dates .day:nth-child(7n) small {
	color: #0E77BB;
}

.d_calendar_plan .dates .day:nth-child(7n+1) small {
	color: #F24B5D;
}

.d_calendar_plan .dates .day.holiday {
	color: #f24b5d;
	background-color: #ededed !important;
}

.d_calendar_plan .dates .day.holiday small {
	color: inherit;
}

.d_calendar_plan .dates .day.prev {
	background: #EDEDED;
}

.d_calendar_plan .dates .day.disable {
	display: block;
	overflow: hidden;
	color: #fff;
	background: #fff;
	cursor: default;
	text-indent: 9999999px;
}

.d_calendar_plan .dates .day > div {
	max-width: 100%;
}

.d_calendar_plan .dates .day .plan {
	display: flex;
	gap: 2px 5px;
	justify-content: flex-start;
	position: relative;
	padding-top: 5px;
	text-align: left;
}

.d_calendar_plan .dates .day .plan .d_cal_badge {
	flex: none;
}

.d_calendar_plan .dates .day .plan .txt_desc {
	display: none;
	overflow: hidden;
	position: relative;
	min-width: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.d_calendar_plan .dates .day .plan .txt_desc.has_popup:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background: currentColor;
	transition: all 0.3s;
	content: "";
}

.d_calendar_plan .dates .day .plan:hover .txt_desc.has_popup:before {
	width: 100%;
}

.d_calendar_plan .dates .day .tag {
	display: flex;
	gap: 2px 5px;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	position: relative;
	padding-top: 5px;
	text-align: center;
}

.d_calendar_plan .dates .day .tag .d_cal_badge {
	overflow: hidden;
	width: 22px;
	height: 22px;
	padding: 0;
	border-radius: 5px;
	font-weight: 700;
	font-size: 1px;
	line-height: 0;
	color: transparent;
	vertical-align: top;
	box-sizing: border-box;
}

.d_calendar_plan .dates .day .tag .d_cal_badge:hover ~ dl {
	display: block !important;
}

.d_calendar_plan .dates .day .tag small {
	font-weight: 600;
	font-size: 12px;
	line-height: 16px;
	color: #000;
}

.d_calendar_plan .dates .day .tag .tooltip_box,
.d_calendar_plan .dates .day .plan .tooltip_box {
	--tooltip-top-gap: 5px;
	position: absolute;
	overflow: hidden;
	top: calc(100% + var(--tooltip-top-gap));
	right: 0;
	z-index: 100;
	min-width: 95px;
	margin: 0;
	padding: 10px;
	border-radius: 5px;
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	color: #fff;
	background: rgba(13, 13, 13, 0.8);
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
}

.d_calendar_plan .dates .day .tag .tooltip_box:before,
.d_calendar_plan .dates .day .plan .tooltip_box:before {
	position: absolute;
	top: calc(-1 * var(--tooltip-top-gap));
	left: 0;
	right: 0;
	height: var(--tooltip-top-gap);
	content: "";
}

.d_calendar_plan .dates .day .plan .tooltip_box {
	left: 0;
	right: auto;
}

.d_calendar_plan .dates .day .tag:hover .tooltip_box,
.d_calendar_plan .dates .day .plan:hover .tooltip_box {
	opacity: 1;
	visibility: visible;
}

.d_calendar_plan .dates .day .tag.j_center .tooltip_box,
.d_calendar_plan .dates .day .plan.j_center .tooltip_box {
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}

.d_calendar_plan .dates .day .tag.j_start .tooltip_box,
.d_calendar_plan .dates .day .plan.j_start .tooltip_box {
	left: 0;
	right: auto;
}

.d_calendar_plan .d_cal_tip {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 10px;
	align-items: center;
	justify-content: flex-end;
	padding-top: 10px;
}

.d_calendar_plan .d_cal_tip li {
	color: #313131;
	display: flex;
	gap: 5px;
	align-items: center;
	font-size: 14px;
	line-height: 18px;
	font-weight: 500;
	white-space: nowrap;
	width: auto;
}

.d_calendar_plan .d_cal_tip span {
	width: 14px;
	height: 14px;
	display: block;
	border: 2px solid #CBCBCB;
	background-color: #fff;
}

.d_calendar_plan .d_cal_tip li:nth-child(1) span {
	background-color: #EDEDED;
	border-color: #CBCBCB;
}

.d_calendar_plan .d_cal_tip li:nth-child(3) span {
	background-color: #D5EAF8;
	border-color: #1B9CDC;
}

.d_calendar_plan .box_plan_tip {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 20px;
	padding: 15px;
	border: 1px solid #EAEAEA;
	background-color: #F9F9F9;
}

.d_calendar_plan .box_plan_tip > div {
	display: flex;
	gap: 5px;
	align-items: center;
	font-weight: 600;
	font-size: 12px;
	line-height: 16px;
	color: #000;
}

.d_calendar_plan .box_plan_tip p {
	font-weight: 500;
	font-size: 14px;
	line-height: 18px;
	color: #656565;
}

.d_calendar_plan .group_tip_add {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding-left: 10px;
	font-size: 14px;
	line-height: 18px;
	color: #313131;
}

.d_calendar_plan .group_tip_add:before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 10px;
	margin-top: -5px;
	background: #ddd;
	content: "";
}

.d_calendar_plan .group_tip_add .d_cal_badge ~ .d_cal_badge {
	margin-left: 5px;
}

.d_wrap_calendar_plan .plan_list {
	margin-top: 30px;
}

.d_wrap_calendar_plan .plan_list > strong {
	display: block;
	padding: 15px;
	border-radius: 5px;
	font-weight: 800;
	font-size: 16px;
	line-height: 20px;
	color: #000;
	background: #FAFAFA;
	text-align: center;
}

.d_wrap_calendar_plan .wrap_data {
	--column2-wid: 41%;
	margin-top: 10px;
	border-top: 2px solid #656565;
}

.d_wrap_calendar_plan .wrap_data .head_list {
	display: flex;
	font-size: 14px;
	line-height: 18px;
	color: #232323;
	text-align: center;
}

.d_wrap_calendar_plan .wrap_data .head_list > div {
	padding: 10px 5px;
	background: #FAFAFA;
}

.d_wrap_calendar_plan .wrap_data .head_list > div:first-child {
	flex: 1;
}

.d_wrap_calendar_plan .wrap_data .head_list > div + div {
	width: var(--column2-wid);
	border-left: 1px solid #ddd;
}

.d_wrap_calendar_plan .wrap_data .list_body {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #ddd;
	font-size: 14px;
	line-height: 18px;
	color: #464646;
	text-align: center;
}

.d_wrap_calendar_plan .wrap_data .list_body .item_info {
	display: flex;
	width: 100%;
}

.d_wrap_calendar_plan .wrap_data .list_body dt,
.d_wrap_calendar_plan .wrap_data .list_body dd {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 5px;
	border-top: 1px solid #ddd;
}

.d_wrap_calendar_plan .wrap_data .list_body dt {
	flex: 1;
}

.d_wrap_calendar_plan .wrap_data .list_body dd {
	width: var(--column2-wid);
	border-left: 1px solid #ddd;
	font-weight: 700;
}

.d_wrap_calendar_plan .wrap_data .list_body dd.blue {
	color: #0080FF;
}

.d_wrap_calendar_plan .wrap_data .list_body dd.green {
	color: #239A00;
}

.d_wrap_calendar_plan .wrap_data .list_body dd.black {
	color: #000;
}

.d_wrap_calendar_plan .wrap_data .list_body dt:before,
.d_wrap_calendar_plan .wrap_data .list_body dd:before {
	position: absolute;
	overflow: hidden;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	content: attr(data-label);
}

.d_wrap_calendar_plan .plan_list .btn_groups {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	padding-top: 20px;
}

.d_wrap_calendar_plan .plan_list .btn_groups .btn_reservation {
	flex: 1 1 230px;
	display: flex;
	gap: 10px;
	justify-content: center;
	align-items: center;
	padding: 14px 10px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 18px;
	line-height: 24px;
	color: #fff;
}

.d_wrap_calendar_plan .plan_list .btn_groups .btn_reservation.blue {
	background-color: #1941AB;
}

.d_wrap_calendar_plan .plan_list .btn_groups .btn_reservation.green {
	background-color: #239A00;
}

.d_wrap_calendar_plan .plan_list .box_etc {
	padding: 15px;
	margin-top: 20px;
	border-radius: 5px;
	border: 1px solid #ddd;
	background: #fafafa;
	text-align: center;
	word-break: keep-all;
	word-wrap: break-word;
}

.d_wrap_calendar_plan .plan_list .box_etc .btn {
	background-color: #464646;
}

.d_wrap_calendar_plan .plan_list .box_etc p {
	padding-top: 10px;
	font-size: 14px;
	line-height: 18px;
	color: #616161;
}

/* 열린구청장실 오늘의 하루 추가 */
.d_calendar_plan .dates .day .plan_callist {
	text-align: left;
	display: none;
}

.d_calendar_plan .dates .day .d_cal_magnify {
	font-size: 20px;
	display: block;
	text-align: center;
}

.d_calendar_plan .dates .day .d_cal_magnify i {
	color: #000;
}

.d_calendar_plan .dates .day .plan_callist li a {
	display: none;
	flex: 1;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.d_calendar_plan .dates .day .plan_callist li .tooltip_box {
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

.d_calendar_plan .dates .day .plan_callist li:hover .tooltip_box {
	top: calc(100% + 5px);
	left: 0;
	z-index: 100;
	clip: auto;
	width: auto;
	height: auto;
	min-width: 95px;
	margin: 0;
	padding: 10px;
	border-radius: 5px;
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	color: #fff;
	background: rgba(13, 13, 13, 0.8);
}

/* 통합 캘린더 */
.d_cal_unite {
	--list-line-height: 15px;
	--pc-list-line-height: 18px;
	--list-bullet-size: 3px;
}

.d_cal_unite_head {
	display: flex;
	gap: 10px;
	justify-content: center;
	align-items: center;
}

.d_cal_unite_head .tit_cal {
	font-size: 22px;
	line-height: 30px;
	color: #000;
}

.d_cal_unite_head [class^=btn_] {
	display: flex;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid #ddd;
	font-size: 16px;
	color: #656565;
	background: #fff;
}

.d_cal_unite_head [class^=btn_] i {
	margin: auto;
}

.d_cal_unite_head [class^=btn_]:hover,
.d_cal_unite_head [class^=btn_]:focus-visible {
	border: 1px solid transparent;
	color: #fff;
	background: #000;
}

.d_cal_unite_head .btn_prev {
	order: -1;
}

.d_cal_unite_body {
	margin-top: 20px;
}

/* 통합 캘린더 - 색상 관련 */
.d_cal_unite_body.sun_c_apply .txt_days:first-child,
.d_cal_unite_body.sun_c_apply .cal_day:nth-child(7n+1) .num_day {
	color: #FF7474;
} /* 일요일 색상 */
.d_cal_unite_body.sat_c_apply .txt_days:last-child,
.d_cal_unite_body.sat_c_apply .cal_day:nth-child(7n) .num_day {
	color: #0080FF;
} /* 토요일 색상 */
.d_cal_unite_body .cal_day.readonly {
	background: #fafafa;
} /* 시각적으로만 비활성 */
.d_cal_unite_body .cal_day.selected {
	background: #F6FBFF;
} /* 선택됨 */
.d_cal_unite_body .cal_day.selected:after {
	position: absolute;
	inset: -1px;
	border: 2px solid #0080FF;
	pointer-events: none;
	content: "";
} /* 선택됨 */
.d_cal_unite_body .cal_month .today .head_day .num_day {
	background: #000;
	color: #fff;
} /* 오늘 */
.d_cal_unite_body .cal_month .holiday .head_day .num_day,
.d_cal_unite_body .cal_month .holiday .head_day .txt_day {
	color: #FF7474;
} /* 휴일 색상 (숫자만 빨간색) */
.d_cal_unite_body .contents_day .green {
	color: #239A00;
}

.d_cal_unite_body .contents_day .blue {
	color: #0080FF;
}

.d_cal_unite_body .contents_day .black {
	color: #000;
}

/* 통합 캘린더 - 접근성 */
.d_cal_unite_body .cal_month .today:before {
	position: absolute;
	clip-path: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	content: "오늘";
} /* 오늘 */
.d_cal_unite_body .num_day:before {
	order: 1;
	position: absolute;
	clip-path: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
} /* 요일 */
.d_cal_unite_body .cal_day:nth-child(7n+1) .num_day:before {
	content: " 일요일";
}

.d_cal_unite_body .cal_day:nth-child(7n+2) .num_day:before {
	content: " 월요일";
}

.d_cal_unite_body .cal_day:nth-child(7n+3) .num_day:before {
	content: " 화요일";
}

.d_cal_unite_body .cal_day:nth-child(7n+4) .num_day:before {
	content: " 수요일";
}

.d_cal_unite_body .cal_day:nth-child(7n+5) .num_day:before {
	content: " 목요일";
}

.d_cal_unite_body .cal_day:nth-child(7n+6) .num_day:before {
	content: " 금요일";
}

.d_cal_unite_body .cal_day:nth-child(7n) .num_day:before {
	content: " 토요일";
}

.d_cal_unite_body .cal_day.selected .num_day:after {
	order: 2;
	position: absolute;
	clip-path: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	content: " 선택됨";
} /* 선택됨 */
/* 통합 캘린더 - 일월화수목금토 */
.d_cal_unite_body .cal_days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	border-top: 1px solid #ddd;
	font-size: 14px;
	line-height: 35px;
	color: #656565;
	background: var(--cal-bg, #fff);
	text-align: center;
}

/* 통합 캘린더 - 123456789 */
.d_cal_unite_body .cal_month {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	align-items: stretch;
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;
}

.d_cal_unite_body .cal_day {
	position: relative;
	min-width: 0;
	max-width: 100%;
	padding: 2px;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background: var(--cal-bg, #fff);
	aspect-ratio: var(--day-aspect-ratio, 1/1);
	box-sizing: border-box;
}

.d_cal_unite_body .cal_day:not(.empty) {
	cursor: pointer;
}

.d_cal_unite_body .head_day {
	overflow: hidden;
}

.d_cal_unite_body .num_day {
	display: inline-flex;
	justify-content: center;
	float: right;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	font-size: 12px;
	line-height: 20px;
	color: #656565;
}

.d_cal_unite_body .txt_day {
	display: block;
	overflow: hidden;
	font-size: 12px;
	line-height: 20px;
	color: #BFBFBF;
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* 통합 캘린더 - 해당 날짜의 컨텐츠 */
.d_cal_unite_body .contents_day {
	padding: 5px 0;
}

.d_cal_unite_body .contents_day .list_txt li {
	display: -webkit-box;
	overflow: hidden;
	position: relative;
	padding-left: 5px;
	font-size: 12px;
	line-height: var(--list-line-height);
	color: #656565;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	word-break: keep-all;
	word-wrap: break-word;
}

.d_cal_unite_body .contents_day .list_txt li:before {
	position: absolute;
	top: calc(var(--list-line-height) / 2 - var(--list-bullet-size) / 2);
	left: 0;
	width: var(--list-bullet-size);
	height: var(--list-bullet-size);
	border-radius: 50%;
	background: currentColor;
	content: "";
}

.d_cal_unite_body .contents_day .list_txt li + li {
	margin-top: 1px;
}

.d_cal_unite_note_info {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	align-items: center;
	row-gap: 10px;
	padding-top: 20px;
}

/* 통합 캘린더 - 범례 */
.d_cal_unite_note_info .list_unite_note {
	display: flex;
	gap: 5px 15px;
	flex-wrap: wrap;
	padding-left: 10px;
}

.d_cal_unite_note_info .list_unite_note li {
	display: flex;
	align-items: center;
	font-size: 14px;
	line-height: 20px;
	color: #656565;
	letter-spacing: -0.03em;
}

.d_cal_unite_note_info .list_unite_note li:before {
	width: 14px;
	height: 14px;
	margin-right: 5px;
	box-sizing: border-box;
	content: "";
}

.d_cal_unite_note_info .list_unite_note li.type1:before {
	border: 1px solid #ddd;
	background: #FAFAFA;
}

.d_cal_unite_note_info .list_unite_note li.type2:before {
	border: 1px solid #ddd;
	background: #fff;
}

.d_cal_unite_note_info .list_unite_note li.type3:before {
	border: 2px solid #0080FF;
	background: #F6FBFF;
}

.d_cal_unite_note_info .txt_info {
	margin-right: auto;
	font-size: 14px;
	line-height: 18px;
	color: #656565;
	letter-spacing: -0.03em;
}

@media only screen and (min-width: 768px) {
	/* 캘린더 point 타입 */
	.d_calendar_point .head_box strong {
		font-size: 32px;
		line-height: 40px;
	}
	.d_calendar_point .d_cal_tip dl dd {
		font-size: 18px;
	}
	.d_calendar_point .dates .day {
		column-gap: 5px;
		flex-direction: row;
		justify-content: flex-end;
		align-items: center;
		padding: 15px 15px 15px 15px;
	}
	.d_calendar_point .dates .day > small {
		order: 2;
		width: auto;
	}
	.d_calendar_point .dates .day.today > small {
		width: 26px;
	}
	.d_calendar_point .dates .day > div {
		order: 1;
		width: auto;
		padding-top: 0;
	}
	/* 캘린더 plan 타입 */
	.d_cal_badge {
		padding: 5px 10px;
		font-size: 14px;
	}
	.d_calendar_plan .dates .day .tag .d_cal_badge {
		flex: none;
		width: auto;
		height: auto;
		padding: 2px 5px;
		font-size: 14px;
		line-height: 18px;
		color: #fff;
		vertical-align: top;
	}
	.d_calendar_plan .dates .day .tag small {
		font-size: 14px;
		line-height: 18px;
	}
	.d_calendar_plan .dates .day .plan .txt_desc {
		display: block;
	}
	.d_calendar_plan .d_cal_tip {
		padding-top: 20px;
	}
	.d_calendar_plan .box_plan_tip {
		gap: 10px 20px;
	}
	.d_calendar_plan .box_plan_tip > div {
		gap: 10px;
		font-size: 14px;
		line-height: 20px;
	}
	.d_wrap_calendar_plan .wrap_data .head_list {
		font-size: 16px;
		line-height: 21px;
	}
	.d_wrap_calendar_plan .wrap_data .head_list > div {
		padding: 14px 5px;
	}
}
@media only screen and (min-width: 1024px) {
	.d_box_calendar {
		display: flex;
	}
	.d_calendar_desc, .d_calendar {
		width: 50%;
	}
	.d_calendar_desc {
		border-top: 0;
		border-left: 1px solid #EAEAEA;
	}
	.d_calendar {
		padding: 30px;
	}
	.d_calendar .head_box {
		margin-bottom: 30px;
	}
	.d_calendar .head_box a {
		width: 40px;
		height: 40px;
	}
	.d_calendar .head_box .tit_month {
		margin: 0 30px;
		font-size: 30px;
		line-height: 36px;
	}
	.d_calendar .days .day {
		height: 70px;
		font-size: 16px;
		line-height: 20px;
	}
	.d_calendar .dates .day {
		min-height: 80px;
	}
	.d_calendar .d_cal_tip li {
		font-size: 16px;
		line-height: 20px;
	}
	.d_calendar .d_cal_body {
		margin-bottom: 30px;
		border-top-width: 4px;
	}
	.d_calendar_desc {
		padding: 30px;
	}
	.d_calendar_desc .tit_info {
		margin: 25px 0;
	}
	.d_calendar_desc .tit_info p {
		font-size: 22px;
		line-height: 26px;
	}
	.d_calendar_desc .tit_info ul li {
		font-size: 16px;
		line-height: 20px;
	}
	.d_calendar_desc .list_infotime {
		gap: 14px;
	}
	.d_calendar_desc .list_infotime a {
		font-size: 15px;
		line-height: 20px;
	}
	.d_calendar_desc .info_select {
		padding: 0 20px;
	}
	.d_calendar_desc .info_select dl {
		padding: 15px 0;
		font-size: 18px;
		line-height: 22px;
	}
	/* 캘린더 point 타입 */
	.d_calendar_point .dates .day {
		padding: 10px;
	}
	.d_calendar_point .dates .day span {
		width: 15px;
		height: 15px;
	}
	.d_calendar_point .d_cal_tip ul {
		gap: 10px 20px;
		padding-top: 15px;
	}
	.d_calendar_point .d_cal_tip ul li {
		font-size: 16px;
		line-height: 20px;
	}
	.d_calendar_point .d_cal_tip ul li:nth-child(2):before {
		width: 15px;
		height: 15px;
	}
	/* 캘린더 plan 타입 */
	.d_wrap_calendar_plan {
		display: flex;
		column-gap: 50px;
	}
	.d_calendar_plan .d_cal_head a {
		width: 40px;
		height: 40px;
	}
	.d_calendar_plan .d_cal_head .tit_month {
		margin: 0 30px;
		font-size: 30px;
		line-height: 36px;
	}
	.d_calendar_plan {
		flex: 1;
	}
	.d_calendar_plan .days {
		height: 70px;
	}
	.d_calendar_plan .days .day {
		font-size: 16px;
	}
	.d_calendar_plan .dates .day {
		min-height: 80px;
	}
	.d_calendar_plan .dates .day .tag .d_cal_badge {
		padding: 3px 10px;
	}
	.d_calendar_plan .dates .day .tag small {
		font-size: 16px;
		line-height: 22px;
	}
	.d_calendar_plan .dates .day .tag:hover .tooltip_box,
	.d_calendar_plan .dates .day .plan:hover .tooltip_box {
		padding: 13px 20px;
	}
	.d_calendar_plan .d_cal_tip {
		gap: 5px 15px;
	}
	.d_calendar_plan .d_cal_tip li {
		font-size: 16px;
		line-height: 20px;
	}
	.d_calendar_plan .box_plan_tip {
		margin-top: 30px;
	}
	.d_calendar_plan .group_tip_add {
		padding-left: 15px;
	}
	.d_calendar_plan .group_tip_add .d_cal_badge ~ .d_cal_badge {
		margin-left: 10px;
	}
	.d_wrap_calendar_plan .wrap_data {
		margin-top: 20px;
	}
	.d_wrap_calendar_plan .wrap_data .head_list > div {
		padding: 18px 5px;
	}
	.d_wrap_calendar_plan .wrap_data .inner_data {
		overflow: auto;
		max-height: 450px;
	}
	.d_wrap_calendar_plan .wrap_data .list_body {
		font-size: 16px;
		line-height: 21px;
	}
	.d_wrap_calendar_plan .wrap_data .list_body dt, .d_wrap_calendar_plan .wrap_data .list_body dd {
		padding: 14px 5px;
	}
	.d_wrap_calendar_plan .plan_list {
		flex: 0 0 310px;
		margin-top: 0;
		padding-top: 50px;
	}
	.d_wrap_calendar_plan .plan_list > strong {
		padding: 17px 15px;
		border-radius: 10px;
		font-size: 20px;
		line-height: 26px;
	}
	.d_wrap_calendar_plan .plan_list .btn_groups .btn_reservation {
		padding: 18px 10px;
		font-size: 20px;
	}
	.d_wrap_calendar_plan .plan_list .box_etc {
		padding: 20px;
		margin-top: 20px;
	}
	/* 열린구청장실 오늘의 하루 추가 */
	.d_calendar_plan .dates .day .plan_callist {
		display: block;
	}
	.d_calendar_plan .dates .day .d_cal_magnify {
		display: none;
	}
	.d_calendar_plan .dates .day .plan_callist li a {
		display: block;
	}
	.d_calendar_plan .dates .day .plan_callist li:hover .tooltip_box {
		padding: 13px 20px;
		white-space: nowrap;
	}
	/* 통합 캘린더 - 범례 */
	.d_cal_unite_note_info .list_unite_note {
		column-gap: 20px;
	}
	.d_cal_unite_note_info .list_unite_note li {
		font-size: 16px;
	}
	.d_cal_unite_note_info .list_unite_note li:before {
		width: 16px;
		height: 16px;
	}
	.d_cal_unite_note_info .txt_info {
		font-size: 16px;
	}
	/* 통합 캘린더 - 123456789 */
	.d_cal_unite_body .cal_month .txt_day {
		padding: 0 5px;
	}
	/* 통합 캘린더 - 해당 날짜의 컨텐츠 */
	.d_cal_unite_body .contents_day {
		padding: 5px 5px 10px;
	}
	.d_cal_unite_body .contents_day .list_txt li {
		padding-left: 7px;
		font-size: 14px;
		line-height: var(--pc-list-line-height);
	}
}
@media only screen and (min-width: 1440px) {
	/* 캘린더 plan 타입 */
	.d_wrap_calendar_plan .dates .day {
		min-height: 95px;
	}
}
.d_tagbox {
	padding: 10px;
	border-radius: 10px;
	background: #fafafa;
}

.d_tagbox .d_tag_wrap {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.d_tag {
	display: inline-flex;
	align-items: center;
	padding: 10px 15px 9px;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 10px;
	font-size: 14px;
	line-height: 19px;
	color: #575757;
	letter-spacing: -0.02em;
}

.d_tag.sm {
	padding: 3px 12px 2px;
	border-radius: 14px;
	font-size: 13px;
	font-weight: 500;
}

.d_tag a {
	padding: 10px;
	margin: -10px;
	color: #575757;
}

.d_tag button {
	padding: 10px;
	margin: -10px -10px -10px 0;
}

.d_tag i {
	display: block;
	color: currentColor;
}

.d_tag i.fa-xmark {
	font-size: 16px;
}

.d_tag.tag_color1 {
	color: #4aa800;
	border-color: currentColor;
}

.d_tag.tag_color1.reverse {
	background: #4aa800;
	color: #fff;
	border-color: #4aa800;
}

.d_tag.tag_color2 {
	color: #2861CE;
	border-color: currentColor;
}

.d_tag.tag_color2.reverse {
	background: #2861CE;
	color: #fff;
	border-color: #2861CE;
}

.d_tag.tag_color3 {
	color: #7e2dd0;
	border-color: currentColor;
}

.d_tag.tag_color3.reverse {
	background: #7e2dd0;
	color: #fff;
	border-color: #7e2dd0;
}

.d_tag.tag_color4 {
	color: #ec653a;
	border-color: currentColor;
}

.d_tag.tag_color4.reverse {
	background: #ec653a;
	color: #fff;
	border-color: #ec653a;
}

@media only screen and (min-width: 768px) {
	.d_tag {
		font-size: 16px;
		line-height: 21px;
	}
}
.d_description_list dt {
	padding: 30px 0 10px;
	font-weight: 700;
	font-size: 16px;
	line-height: 22px;
	color: var(--dlist-dt-color, #000);
}

.d_description_list dt:first-child {
	padding-top: 0;
}

.d_description_list dd {
	padding: 10px 0;
	font-size: 14px;
	line-height: 20px;
	color: var(--dlist-dd-color, #575757);
}

.d_description_list dt,
.d_description_list dd {
	border-bottom: 1px solid var(--dlist-border-color, #ccc);
}

@media only screen and (min-width: 768px) {
	.d_description_list {
		display: grid;
		grid-template-columns: var(--dlist-dt-width, 200px) 1fr;
		column-gap: 30px;
	}
	.d_description_list dt,
	.d_description_list dd {
		padding: 15px 10px;
	}
	.d_description_list dt:first-child {
		padding-top: 15px;
	}
	.d_description_list dt:first-of-type {
		border-top: 2px solid var(--dlist-border-dt-color, #000);
	}
	.d_description_list dd:first-of-type {
		border-top: 2px solid var(--dlist-border-dd-color, #0072d6);
	}
}
@media only screen and (min-width: 1024px) {
	.d_description_list {
		column-gap: 40px;
	}
	.d_description_list dt {
		font-size: 18px;
		line-height: 24px;
	}
	.d_description_list dd {
		font-size: 16px;
		line-height: 24px;
	}
}
/* step box */
.list_step_comm {
	text-align: center;
	background: #fff;
}

.list_step_comm img {
	max-width: 100%;
}

.list_step_comm > li {
	position: relative;
	padding: 20px;
	border: 1px solid #ddd;
}

.list_step_comm > li + li {
	border-top-width: 0;
}

.list_step_comm > li:after {
	position: absolute;
	bottom: -1px;
	left: 50%;
	z-index: 10;
	width: 20px;
	height: 20px;
	margin-left: -15px;
	background: #fff;
	border: 1px solid #ddd;
	border-top: 0;
	border-left: 0;
	transform: rotate(45deg);
	transform-origin: left bottom;
	content: "";
}

.list_step_comm > li:last-child:after {
	content: normal;
}

.list_step_comm strong {
	display: block;
	font-size: 18px;
	line-height: 24px;
	color: #000;
}

.list_step_comm p {
	display: block;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: #575757;
}

.list_step_comm .txt_box, .list_step_comm .txt_box2 {
	padding: 9px 10px;
	font-weight: 500;
	font-size: 16px;
	line-height: 21px;
	color: #5C5C5C;
	background: #F2F5FF;
	text-align: center;
}

.list_step_comm .txt_box2 {
	border: 1px solid #ddd;
	background: #fff;
	border-radius: 20px;
}

.list_step_comm .list_desc li {
	padding: 7px 0;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: #575757;
}

.list_step_comm .list_desc li + li {
	border-top: 1px dashed #ddd;
}

.list_step_comm.arrow_none > li:after {
	content: normal;
}

@media only screen and (min-width: 768px) {
	.list_step_comm {
		display: grid;
		margin-top: 0;
	}
	.list_step_comm > li {
		padding: 30px;
	}
	.list_step_comm.col2 {
		grid-template-columns: repeat(2, 1fr);
	}
	.list_step_comm.col3 {
		grid-template-columns: repeat(3, 1fr);
	}
	.list_step_comm.col4 {
		grid-template-columns: repeat(4, 1fr);
	}
	.list_step_comm.col5 {
		grid-template-columns: repeat(5, 1fr);
	}
	.list_step_comm.col6 {
		grid-template-columns: repeat(6, 1fr);
	}
	.list_step_comm.col7 {
		grid-template-columns: repeat(7, 1fr);
	}
	.list_step_comm.col8 {
		grid-template-columns: repeat(8, 1fr);
	}
	.list_step_comm.col9 {
		grid-template-columns: repeat(9, 1fr);
	}
	.list_step_comm.col10 {
		grid-template-columns: repeat(10, 1fr);
	}

	.list_step_comm.col2 > li:not(:nth-child(n+3)),
	.list_step_comm.col3 > li:not(:nth-child(n+4)),
	.list_step_comm.col4 > li:not(:nth-child(n+5)),
	.list_step_comm.col5 > li:not(:nth-child(n+6)),
	.list_step_comm.col6 > li:not(:nth-child(n+7)),
	.list_step_comm.col7 > li:not(:nth-child(n+8)),
	.list_step_comm.col8 > li:not(:nth-child(n+9)),
	.list_step_comm.col9 > li:not(:nth-child(n+10)),
	.list_step_comm.col10 > li:not(:nth-child(n+11)) {
		border-top-width: 1px;
	}
	.list_step_comm.col2 > li:not(:nth-child(2n-1)),
	.list_step_comm.col3 > li:not(:nth-child(3n-2)),
	.list_step_comm.col4 > li:not(:nth-child(4n-3)),
	.list_step_comm.col5 > li:not(:nth-child(5n-4)),
	.list_step_comm.col6 > li:not(:nth-child(6n-5)),
	.list_step_comm.col7 > li:not(:nth-child(7n-6)),
	.list_step_comm.col8 > li:not(:nth-child(8n-7)),
	.list_step_comm.col9 > li:not(:nth-child(9n-8)),
	.list_step_comm.col10 > li:not(:nth-child(10n-9)) {
		border-left-width: 0;
	}
	.list_step_comm.col2 > li:nth-child(2n):after,
	.list_step_comm.col3 > li:nth-child(3n):after,
	.list_step_comm.col4 > li:nth-child(4n):after,
	.list_step_comm.col5 > li:nth-child(5n):after,
	.list_step_comm.col6 > li:nth-child(6n):after,
	.list_step_comm.col7 > li:nth-child(7n):after,
	.list_step_comm.col8 > li:nth-child(8n):after,
	.list_step_comm.col9 > li:nth-child(9n):after,
	.list_step_comm.col10 > li:nth-child(10n):after {
		content: normal;
	}
	.list_step_comm.col2 > li:after,
	.list_step_comm.col3 > li:after,
	.list_step_comm.col4 > li:after,
	.list_step_comm.col5 > li:after,
	.list_step_comm.col6 > li:after,
	.list_step_comm.col7 > li:after,
	.list_step_comm.col8 > li:after,
	.list_step_comm.col9 > li:after,
	.list_step_comm.col10 > li:after {
		left: 100%;
		top: 50%;
		margin: -6px 0 0 1px;
		transform: rotate(-45deg);
	}
}

/* step 목록 */
.steplist {
	display: flex;
	flex-wrap: wrap;
}
.steplist li {
	flex-basis: 50%;
	font-size: 14px;
	line-height: 22px;
	padding: 15px 20px;
	border: 1px solid #dbdbdb;
	position: relative;
}
.steplist li.on {
	z-index: 10;
	background-color: #1667E1;
	color: #fff;
	border-color: transparent;
}
.steplist li + li {
	margin-left: -1px;
}
.steplist li:nth-child(3) {
	margin-left: 0;
}
.steplist li:nth-child(3), .steplist li:nth-child(4) {
	border-top: 0;
}

@media only screen and (min-width: 1440px) {
	.steplist li {
		flex: 1;
		flex-basis: 25%;
		padding: 20px;
		font-size: 16px;
		line-height: 22px;
	}
	.steplist li + li {
		padding-left: 45px;
	}
	.steplist li + li:before {
		position: absolute;
		top: 50%;
		left: -22px;
		width: 43px;
		height: 43px;
		margin-top: -22px;
		border: 1px solid #dbdbdb;
		border-left: 0;
		border-bottom: 0;
		background: #fff;
		transform: rotate(45deg);
		content: "";
	}
	.steplist li.on + li:before {
		border-color: transparent;
		background: #1667E1;
	}
	.steplist li:nth-child(3) {
		margin-left: -1px;
	}
	.steplist li:nth-child(3), .steplist li:nth-child(4) {
		border-top: 1px solid #dbdbdb;
	}
	.steplist li.on:nth-child(3), .steplist li.on:nth-child(4) {
		border-top-color: transparent;
	}
}

.rows {
	display: flex;
	flex-wrap: wrap;
}
.rows > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
}

.cols {
	flex: 1 0 0%;
}

.rows_cols_auto > * {
	flex: 0 0 auto;
	width: auto;
}

.rows_cols_1 > * {
	flex: 0 0 auto;
	width: 100%;
}
.rows_cols_2 > * {
	flex: 0 0 auto;
	width: 50%;
}
.rows_cols_3 > * {
	flex: 0 0 auto;
	width: 33.33333333%;
}
.rows_cols_4 > * {
	flex: 0 0 auto;
	width: 25%;
}
.rows_cols_5 > * {
	flex: 0 0 auto;
	width: 20%;
}
.rows_cols_6 > * {
	flex: 0 0 auto;
	width: 16.66666667%;
}
.rows_cols_7 > * {
	flex: 0 0 auto;
	width: 14.28571429%;
}
.rows_cols_8 > * {
	flex: 0 0 auto;
	width: 12.5%;
}
.rows_cols_9 > * {
	flex: 0 0 auto;
	width: 11.11111111%;
}
.rows_cols_10 > * {
	flex: 0 0 auto;
	width: 10%;
}
.cols_auto {
	flex: 0 0 auto;
	width: auto;
}

.cols_10 {
	flex: 0 0 auto;
	width: 10%;
}

.cols_20 {
	flex: 0 0 auto;
	width: 20%;
}

.cols_25 {
	flex: 0 0 auto;
	width: 25%;
}

.cols_30 {
	flex: 0 0 auto;
	width: 30%;
}

.cols_33 {
	flex: 0 0 auto;
	width: 33.33333333%;
}

.cols_40 {
	flex: 0 0 auto;
	width: 40%;
}

.cols_50 {
	flex: 0 0 auto;
	width: 50%;
}

.cols_60 {
	flex: 0 0 auto;
	width: 60%;
}

.cols_66 {
	flex: 0 0 auto;
	width: 66.66666666%;
}

.cols_70 {
	flex: 0 0 auto;
	width: 70%;
}

.cols_75 {
	flex: 0 0 auto;
	width: 75%;
}

.cols_80 {
	flex: 0 0 auto;
	width: 80%;
}

.cols_90 {
	flex: 0 0 auto;
	width: 90%;
}

@media (min-width: 576px) {
	.cols_sm {
		flex: 1 0 0%;
	}
	.rows_cols_sm_auto > * {
		flex: 0 0 auto;
		width: auto;
	}
	.rows_cols_sm_1 > * {
		flex: 0 0 auto;
		width: 100%;
	}
	.rows_cols_sm_2 > * {
		flex: 0 0 auto;
		width: 50%;
	}
	.rows_cols_sm_3 > * {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.rows_cols_sm_4 > * {
		flex: 0 0 auto;
		width: 25%;
	}
	.rows_cols_sm_5 > * {
		flex: 0 0 auto;
		width: 20%;
	}
	.rows_cols_sm_6 > * {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.rows_cols_sm_7 > * {
		flex: 0 0 auto;
		width: 14.28571429%;
	}
	.rows_cols_sm_8 > * {
		flex: 0 0 auto;
		width: 12.5%;
	}
	.rows_cols_sm_9 > * {
		flex: 0 0 auto;
		width: 11.11111111%;
	}
	.rows_cols_sm_10 > * {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_sm_auto {
		flex: 0 0 auto;
		width: auto;
	}
	.cols_sm_10 {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_sm_20 {
		flex: 0 0 auto;
		width: 20%;
	}
	.cols_sm_25 {
		flex: 0 0 auto;
		width: 25%;
	}
	.cols_sm_30 {
		flex: 0 0 auto;
		width: 30%;
	}
	.cols_sm_33 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_sm_40 {
		flex: 0 0 auto;
		width: 40%;
	}
	.cols_sm_50 {
		flex: 0 0 auto;
		width: 50%;
	}
	.cols_sm_60 {
		flex: 0 0 auto;
		width: 60%;
	}
	.cols_sm_66 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_sm_70 {
		flex: 0 0 auto;
		width: 70%;
	}
	.cols_sm_75 {
		flex: 0 0 auto;
		width: 75%;
	}
	.cols_sm_80 {
		flex: 0 0 auto;
		width: 80%;
	}
	.cols_sm_90 {
		flex: 0 0 auto;
		width: 90%;
	}
}
@media (min-width: 768px) {
	.cols_md {
		flex: 1 0 0%;
	}
	.rows_cols_md_auto > * {
		flex: 0 0 auto;
		width: auto;
	}
	.rows_cols_md_1 > * {
		flex: 0 0 auto;
		width: 100%;
	}
	.rows_cols_md_2 > * {
		flex: 0 0 auto;
		width: 50%;
	}
	.rows_cols_md_3 > * {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.rows_cols_md_4 > * {
		flex: 0 0 auto;
		width: 25%;
	}
	.rows_cols_md_5 > * {
		flex: 0 0 auto;
		width: 20%;
	}
	.rows_cols_md_6 > * {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.rows_cols_md_7 > * {
		flex: 0 0 auto;
		width: 14.28571429%;
	}
	.rows_cols_md_8 > * {
		flex: 0 0 auto;
		width: 12.5%;
	}
	.rows_cols_md_9 > * {
		flex: 0 0 auto;
		width: 11.11111111%;
	}
	.rows_cols_md_10 > * {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_md_auto {
		flex: 0 0 auto;
		width: auto;
	}
	.cols_md_10 {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_md_20 {
		flex: 0 0 auto;
		width: 20%;
	}
	.cols_md_25 {
		flex: 0 0 auto;
		width: 25%;
	}
	.cols_md_30 {
		flex: 0 0 auto;
		width: 30%;
	}
	.cols_md_33 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_md_40 {
		flex: 0 0 auto;
		width: 40%;
	}
	.cols_md_50 {
		flex: 0 0 auto;
		width: 50%;
	}
	.cols_md_60 {
		flex: 0 0 auto;
		width: 60%;
	}
	.cols_md_66 {
		flex: 0 0 auto;
		width: 66.66666666%;
	}
	.cols_md_70 {
		flex: 0 0 auto;
		width: 70%;
	}
	.cols_md_75 {
		flex: 0 0 auto;
		width: 75%;
	}
	.cols_md_80 {
		flex: 0 0 auto;
		width: 80%;
	}
	.cols_md_90 {
		flex: 0 0 auto;
		width: 90%;
	}
}
@media (min-width: 1024px) {
	.cols_lg {
		flex: 1 0 0%;
	}
	.rows_cols_lg_auto > * {
		flex: 0 0 auto;
		width: auto;
	}
	.rows_cols_lg_1 > * {
		flex: 0 0 auto;
		width: 100%;
	}
	.rows_cols_lg_2 > * {
		flex: 0 0 auto;
		width: 50%;
	}
	.rows_cols_lg_3 > * {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.rows_cols_lg_4 > * {
		flex: 0 0 auto;
		width: 25%;
	}
	.rows_cols_lg_5 > * {
		flex: 0 0 auto;
		width: 20%;
	}
	.rows_cols_lg_6 > * {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.rows_cols_lg_7 > * {
		flex: 0 0 auto;
		width: 14.28571429%;
	}
	.rows_cols_lg_8 > * {
		flex: 0 0 auto;
		width: 12.5%;
	}
	.rows_cols_lg_9 > * {
		flex: 0 0 auto;
		width: 11.11111111%;
	}
	.rows_cols_lg_10 > * {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_lg_auto {
		flex: 0 0 auto;
		width: auto;
	}
	.cols_lg_10 {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_lg_20 {
		flex: 0 0 auto;
		width: 20%;
	}
	.cols_lg_25 {
		flex: 0 0 auto;
		width: 25%;
	}
	.cols_lg_30 {
		flex: 0 0 auto;
		width: 30%;
	}
	.cols_lg_33 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_lg_40 {
		flex: 0 0 auto;
		width: 40%;
	}
	.cols_lg_50 {
		flex: 0 0 auto;
		width: 50%;
	}
	.cols_lg_60 {
		flex: 0 0 auto;
		width: 60%;
	}
	.cols_lg_66 {
		flex: 0 0 auto;
		width: 66.66666666%;
	}
	.cols_lg_70 {
		flex: 0 0 auto;
		width: 70%;
	}
	.cols_lg_75 {
		flex: 0 0 auto;
		width: 75%;
	}
	.cols_lg_80 {
		flex: 0 0 auto;
		width: 80%;
	}
	.cols_lg_90 {
		flex: 0 0 auto;
		width: 90%;
	}
}
@media (min-width: 1200px) {
	.cols_xl {
		flex: 1 0 0%;
	}
	.rows_cols_xl_auto > * {
		flex: 0 0 auto;
		width: auto;
	}
	.rows_cols_xl_1 > * {
		flex: 0 0 auto;
		width: 100%;
	}
	.rows_cols_xl_2 > * {
		flex: 0 0 auto;
		width: 50%;
	}
	.rows_cols_xl_3 > * {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.rows_cols_xl_4 > * {
		flex: 0 0 auto;
		width: 25%;
	}
	.rows_cols_xl_5 > * {
		flex: 0 0 auto;
		width: 20%;
	}
	.rows_cols_xl_6 > * {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.rows_cols_xl_7 > * {
		flex: 0 0 auto;
		width: 14.28571429%;
	}
	.rows_cols_xl_8 > * {
		flex: 0 0 auto;
		width: 12.5%;
	}
	.rows_cols_xl_9 > * {
		flex: 0 0 auto;
		width: 11.11111111%;
	}
	.rows_cols_xl_10 > * {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_xl_auto {
		flex: 0 0 auto;
		width: auto;
	}
	.cols_xl_10 {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_xl_20 {
		flex: 0 0 auto;
		width: 20%;
	}
	.cols_xl_25 {
		flex: 0 0 auto;
		width: 25%;
	}
	.cols_xl_30 {
		flex: 0 0 auto;
		width: 30%;
	}
	.cols_xl_33 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_xl_40 {
		flex: 0 0 auto;
		width: 40%;
	}
	.cols_xl_50 {
		flex: 0 0 auto;
		width: 50%;
	}
	.cols_xl_60 {
		flex: 0 0 auto;
		width: 60%;
	}
	.cols_xl_66 {
		flex: 0 0 auto;
		width: 66.66666666%;
	}
	.cols_xl_70 {
		flex: 0 0 auto;
		width: 70%;
	}
	.cols_xl_75 {
		flex: 0 0 auto;
		width: 75%;
	}
	.cols_xl_80 {
		flex: 0 0 auto;
		width: 80%;
	}
	.cols_xl_90 {
		flex: 0 0 auto;
		width: 90%;
	}
}
@media (min-width: 1440px) {
	.cols_xxl {
		flex: 1 0 0%;
	}
	.rows_cols_xxl_auto > * {
		flex: 0 0 auto;
		width: auto;
	}
	.rows_cols_xxl_1 > * {
		flex: 0 0 auto;
		width: 100%;
	}
	.rows_cols_xxl_2 > * {
		flex: 0 0 auto;
		width: 50%;
	}
	.rows_cols_xxl_3 > * {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.rows_cols_xxl_4 > * {
		flex: 0 0 auto;
		width: 25%;
	}
	.rows_cols_xxl_5 > * {
		flex: 0 0 auto;
		width: 20%;
	}
	.rows_cols_xxl_6 > * {
		flex: 0 0 auto;
		width: 16.66666667%;
	}
	.rows_cols_xxl_7 > * {
		flex: 0 0 auto;
		width: 14.28571429%;
	}
	.rows_cols_xxl_8 > * {
		flex: 0 0 auto;
		width: 12.5%;
	}
	.rows_cols_xxl_9 > * {
		flex: 0 0 auto;
		width: 11.11111111%;
	}
	.rows_cols_xxl_10 > * {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_xxl_auto {
		flex: 0 0 auto;
		width: auto;
	}
	.cols_xxl_10 {
		flex: 0 0 auto;
		width: 10%;
	}
	.cols_xxl_20 {
		flex: 0 0 auto;
		width: 20%;
	}
	.cols_xxl_25 {
		flex: 0 0 auto;
		width: 25%;
	}
	.cols_xxl_30 {
		flex: 0 0 auto;
		width: 30%;
	}
	.cols_xxl_33 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}
	.cols_xxl_40 {
		flex: 0 0 auto;
		width: 40%;
	}
	.cols_xxl_50 {
		flex: 0 0 auto;
		width: 50%;
	}
	.cols_xxl_60 {
		flex: 0 0 auto;
		width: 60%;
	}
	.cols_xxl_66 {
		flex: 0 0 auto;
		width: 66.66666666%;
	}
	.cols_xxl_70 {
		flex: 0 0 auto;
		width: 70%;
	}
	.cols_xxl_75 {
		flex: 0 0 auto;
		width: 75%;
	}
	.cols_xxl_80 {
		flex: 0 0 auto;
		width: 80%;
	}
	.cols_xxl_90 {
		flex: 0 0 auto;
		width: 90%;
	}
}

.img_box {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
}
.img_box img {
	max-width: 100%;
	min-width: 0;
}
.img_box .cont_img {
	width: 100%;
	text-align: left;
}
.info_box .img_box [class*=tit_type] {
	justify-content: flex-start;
}

@media only screen and (min-width: 1024px) {
	.img_box {
		flex-wrap: nowrap;
	}
	.img_box .img_box {
		max-width: 40%;
	}
	.img_box .cont_img {
		flex: 1;
		min-width: 0;
	}
}

/* 사이트맵 */
.sitemap_tab .list_tab li a {
	border-radius: 5px !important;
}
.sitemap {
	overflow: hidden;
}
.sitemap_list > li {
	border-bottom: 1px solid #eee;
	padding: 35px 0;
}
.sitemap_list > li:last-child {
	border-bottom: none;
}
.sitemap_list > li > div {
	font-weight: bold;
	margin-top: 10px;
	font-size: 22px;
	margin-bottom: 20px;
	display: inline-block;
	flex-basis: 20%;
}
.sitemap_list > li > div > a {
	color: #2073c5;
	position: relative;
	line-height: 1.2;
	word-break: keep-all;
}
.sitemap_list > li > div > a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #2073c5;
	transform: translateX(-101%);
	transition: transform 0.3s;
	content: "";
}
.sitemap_list > li > div > a:hover:before, .sitemap_list > li > div > a:focus:before {
	transform: translateX(0);
}

/* 2depth */
.sitemap_list > li > ul {
	margin-bottom: 10px;
}
.sitemap_list > li > ul > li {
	margin-bottom: 10px;
}
.sitemap_list > li > ul > li > a {
	display: block;
	padding: 10px 0 10px 15px;
	transition: 0.3s;
	font-size: 16px;
	font-weight: 600;
	border: 1px solid #eee;
	border-radius: 5px;
	color: #000;
}
.sitemap_list > li > ul > li > a:hover {
	background: #f5f5f5;
	color: #000;
	transition: 0.3s;
}

/* 3depth */
.sitemap_list > li > ul > li > ul {
	margin: 10px 0 15px 10px;
}
.sitemap_list > li > ul > li > ul > li {
	font-size: 14px;
}
.sitemap_list > li > ul > li > ul > li:before {
	content: "";
}
.sitemap_list > li > ul > li > ul > li > a {
	position: relative;
	display: block;
	padding: 2px 15px;
	font-size: 16px;
}
.sitemap_list > li > ul > li > ul > li > a:hover {
	color: #000;
	font-weight: 500;
}
.sitemap_list > li > ul > li > ul > li > a:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 5px;
	width: 4px;
	height: 4px;
	background: #aaa;
	border-radius: 50%;
	transition: 0.3s;
}
.sitemap_list > li > ul > li > ul > li > a:hover:before {
	width: 6px;
	height: 2px;
	border-radius: 0;
	background: #000;
	transition: 0.3s;
}

/* 4depth */
.sitemap_list > li > ul > li > ul > li > ul {
	color: #ddd;
	border: 1px dashed #ddd;
	margin-bottom: 15px;
	margin-top: 5px;
}
.sitemap_list > li > ul > li > ul > li > ul > li > a {
	display: block;
	padding: 7px 10px 0 10px;
	font-size: 15px;
	color: #737373;
}
.sitemap_list > li > ul > li > ul > li > ul > li > a:hover {
	color: #000;
}
.sitemap_list > li > ul > li > ul > li > ul > li:last-child a {
	padding-bottom: 7px;
}
.sitemap_list a[target=_blank]:after {
	font-family: "Font Awesome 6 Pro", sans-serif;
	font-weight: 300;
	content: "\f08e";
	margin-left: 7px;
}

@media all and (min-width: 768px) {
	/* 2depth */
	.sitemap_list > li > ul {
		display: grid;
		flex-wrap: wrap;
		gap: 25px;
		grid-template-columns: repeat(3, 1fr);
	}
	.sitemap_list > li > ul > li {
		flex: 0 0 30%;
	}
	.sitemap_list > li > ul > li:last-child {
		margin-right: 0;
		margin-bottom: 0;
	}
}
@media all and (min-width: 1440px) {
	.sitemap_list > li {
		display: flex;
		width: 100%;
		justify-content: space-between;
		gap: 20px;
	}
	.sitemap_list > li > a {
		width: 15%;
		margin-bottom: 0;
	}
	.sitemap_list > li > ul {
		margin-bottom: 0;
		flex: 1;
	}
}

/* == board == */
.paging {
	clear: both;
	text-align: center;
	padding: 25px 0;
	overflow: hidden;
}
.paging ul {
	font-size: 0;
}

.paging ul li {
	display: inline-block;
	vertical-align: top;
	margin: 0 0.5%;
}
.paging ul li:first-child {
	margin-left: 0;
}
.paging ul li:last-child {
	margin-right: 0;
}
.paging ul li a {
	display: block;
	width: 32px;
	height: 34px;
	border: #e2e2e2 solid 1px;
	border: #ccc solid 1px;
	line-height: 32px;
	font-size: 14px;
	font-weight: 400;
	background: #fff;
}
.paging ul li a.active {
	background: #444;
	border: #006 solid 1px;
	color: #fff;
}
.paging ul li a.first,
.paging ul li a.prev,
.paging ul li a.next,
.paging ul li a.last {
	font-size: 22px;
	border: 0;
	background: transparent;
}

.board_search {
	margin-bottom: 40px;
	background: #f9f9f9;
	padding: 20px;
	overflow: hidden;
	text-align: center;
}
.search_text_box {
	display: flex;
	gap: 5px;
	flex-direction: column;
}
.search_text_box .opt_comm {
	width: 100%;
}
.search_text_box .inp_comm {
	width: 100%;
}
.search_text_box .btn {
	width: 100%;
}
.search_text_box .btn_range {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 45px;
	padding: 12px 17px;
	border: 1px solid #858585;
	border-radius: 6px;
	font-size: 16px;
	line-height: 19px;
	color: #232323;
	background-color: #fff;
	vertical-align: top;
	box-sizing: border-box;
}
.board_search .search_option {
	display: none;
	margin-top: 10px;
}

/* board */
.tbl_board {
	table-layout: auto;
}

.tbl_board th, .tbl_board td, .tbl_board col {
	display: none;
}

.tbl_board .m_show {
	display: table-cell;
}

.tbl_board col.m_show {
	display: table-column;
}

.tbl_board .subject {
	width: 60%;
}

.tbl_board tbody .subject {
	text-align: left;
}

@media only screen and (min-width: 768px) {
	/* board */
	.tbl_board th, .tbl_board td {
		display: table-cell;
	}
	.tbl_board col {
		display: table-column;
	}
	/* // board */
	.search_text_box {
		flex-direction: row;
		justify-content: center;
	}
	.search_text_box .opt_comm {
		width: auto;
	}
	.search_text_box .inp_comm {
		width: 240px;
	}
	.search_text_box .btn {
		width: 80px;
	}
	.search_text_box .btn_range {
		width: 50px;
	}
	.tbl_comm .m_hidden_768 {
		display: table-cell !important;
	}
}
@media only screen and (min-width: 1024px) {
	/* board */
	.tbl_board th, .tbl_board td {
		display: table-cell;
	}
	/* // board */
}

.board_view_head {
	border-top: #232323 solid 2px;
	padding: 25px;
	border-bottom: #ccc solid 1px;
	background: #f9f9f9;
}

.board_view_info span {
	display: inline-block;
	font-size: 14px;
	padding: 0 10px;
	border-right: #ccc solid 1px;
}

.board_view_info span:last-child {
	border: 0;
}

.board_view_info dl {
	position: relative;
	border-top: #ccc solid 1px;
	padding: 15px 20px;
	overflow: hidden;
}

.board_view_info dl:first-child {
	border-top: none;
}

.board_view_info dl dt {
	font-size: 14px;
	font-weight: bold;
	color: #181818;
	padding-right: 15px;
}

.board_view .add_file {
	position: relative;
	border-top: #ccc solid 1px;
	padding: 15px 10px 10px 20px;
	overflow: hidden;
}

.board_view .add_file span {
	float: none;
	display: block;
	font-size: 14px;
	font-weight: bold;
	color: #181818;
	text-align: left;
	margin-bottom: 7px;
}

.board_view .add_file ul li {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	row-gap: 5px;
	min-height: 30px;
	font-size: 12px;
	line-height: 18px;
}

.board_view .add_file ul li + li {
	margin-top: 5px;
}

.board_view .add_file ul li a {
	background: #fff;
	font-size: 14px;
	color: #838383;
	margin-right: 7px;
}

.board_view .add_file ul li a:before {
	display: inline-block;
	content: "\f0c6";
	font-family: "Font Awesome 5 Pro";
	font-weight: 500;
	margin-right: 5px;
}

.board_view .add_file ul li a.no_fileicon:before {
	display: none;
}

.board_view .add_file .file_down {
	display: inline-block;
	background: #000;
	border-radius: 3px;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	padding: 5px 10px 7px;
}

@media only screen and (min-width: 1024px) {
	.board_view_info dl {
		display: flex;
	}
	.board_view_info dl dt {
		min-width: 120px;
		font-size: 16px;
	}
	.board_view .add_file {
		display: flex;
	}
	.board_view .add_file span {
		min-width: 120px;
		margin-bottom: 0;
		font-size: 16px;
		line-height: 30px;
	}
}

.board_view_body {
	padding: 20px;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
	line-height: 1.5;
}

.total_num {
	display: inline-block;
	padding: 0 0 15px 0;
	color: #1b1b1b;
	font-weight: 500;
}

.total_num span {
	font-weight: bold;
}

.nodata, .noData {
	padding: 60px 0;
	border: #ccc solid 1px;
	/* border-top: 0; 수정 */
	text-align: center;
}

.total {
	margin-bottom: 10px;
	color: #595959;
}

/* 게시판 작성 */
.file_wrap .fileLayer {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dashed #ddd;
}

.file_wrap .fileLayer small {
	line-height: 1.2;
}

.del_file {
	display: inline-block;
	background: #f0f0f0;
	padding: 3px 5px 5px;
	color: #000;
	font-size: 14px;
	border-radius: 5px;
	line-height: normal;
}

.del_file i {
	margin: 3px 5px 0 5px;
}

.del_file a {
	display: inline-block;
	font-size: 16px;
	margin-left: 5px;
}

.btn_add_file {
	display: block;
	background: #e5e5e5;
	padding: 5px 0;
	text-align: center;
	border-radius: 3px;
}

/* 게시판 siiru 커스텀 */
.siiruBoardList {
	margin: 0;
	margin-top: 50px;
}

.siiruBoardList li {
	padding: 15px 20px;
	border: none;
}

.siiruBoardList li:last-child {
	border: none;
}

.siiruBoardList ul {
	background-color: #f9f9f9;
}

.siiruBoardList ul li a {
	width: 50%;
	display: inline-block;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	vertical-align: top;
}

.manageInfo {
	text-align: right;
	margin-top: 20px;
	color: #808080;
}

.manageInfo small {
	display: block;
}

.koglSeView {
	margin-top: 30px;
}

.siiruBoard-list table tbody .subject a.point {
	overflow: visible;
}

.flag_imgbox {
	margin-bottom: 30px;
}

.flag_imgbox img {
	width: 100%;
	max-width: 700px;
}

.notice {
	background-color: #232323;
	color: #fff;
	text-align: center;
	padding: 4px;
	font-size: 0.75em;
	font-weight: normal;
	border-radius: 3px;
}

.kogl_wrap {
	line-height: 1.3;
	font-size: 14px;
}

.kogl_wrap .list li {
	font-size: 14px;
}

#kFocus .item_choice {
	display: flex;
}

#kFocus .item_choice label {
	padding: 6px 0 6px 34px;
	font-size: 14px;
}

/* 게시판 처리상태 */
.tbl_comm .icon_status {
	color: #fff;
	padding: 3px 5px;
	white-space: nowrap;
	border-radius: 2px;
}

.tbl_comm .icon_status[data-label=답변완료] {
	background-color: #777;
}

.tbl_comm .icon_status[data-label=기간종료] {
	background-color: #777;
}

.tbl_comm .icon_status[data-label=진행중] {
	background-color: #2F51B2;
}

/* 타임라인 베이직 */
.d_timeline {
	--basic-color: #646464;
	--active-color: #3373D2;
	--dots-size: 16px;
	--padding-gap: 10px;
	--item-gap: 10px;
	--max-width: 650px;
	--line-pos: calc(var(--dots-size) / 2);
	--li-padding: calc(var(--dots-size) + var(--padding-gap));
	display: flex;
	margin: 0 auto;
	gap: var(--item-gap);
	position: relative;
	max-width: var(--max-width);
}

.d_timeline li {
	flex: 1 0 0%;
	min-width: 0;
	position: relative;
	padding-top: var(--li-padding);
	font-size: 14px;
	line-height: 20px;
	color: var(--basic-color);
	text-align: center;
}

.d_timeline li:after {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 10;
	width: var(--dots-size);
	height: var(--dots-size);
	border-radius: 50%;
	background: var(--basic-color);
	transform: translateX(-50%);
	content: "";
}

.d_timeline li + li:before {
	position: absolute;
	top: var(--line-pos);
	left: 50%;
	width: calc(100% + var(--item-gap));
	height: 1px;
	background: var(--basic-color);
	transform: translate(-100%, 0);
	content: "";
}

.d_timeline li.active {
	color: var(--active-color);
}

.d_timeline li.active:after {
	background: var(--active-color);
}

.d_timeline li + li.active:before {
	background: var(--active-color);
}

/* 타임라인 기본(썸네일 형) */
.d_list_timeline {
	position: relative;
	--point-color: #3D81DB;
	--border-color: #707070;
	--img-size: 100px;
	--img-gap: 20px;
}

.d_list_timeline:before {
	position: absolute;
	top: calc(var(--img-size) / 2);
	bottom: calc(var(--img-size) / 2);
	left: calc(var(--img-size) / 2);
	width: 1px;
	background: var(--point-color);
	content: "";
}

.d_list_timeline li {
	display: flex;
	gap: var(--img-gap);
	align-items: center;
}

.d_list_timeline li + li {
	margin-top: 15px;
}

.d_list_timeline .wrap_thumb {
	flex: none;
	overflow: hidden;
	position: relative;
	width: var(--img-size);
	height: var(--img-size);
	border-radius: 50%;
	background: #fff;
}

.d_list_timeline .wrap_thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.d_list_timeline .wrap_thumb:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 1px solid var(--border-color);
	border-radius: inherit;
	content: "";
}

.d_list_timeline .cont_thumb {
	flex: 1;
	min-width: 0;
	word-break: keep-all;
	word-wrap: break-word;
}

.d_list_timeline .cont_thumb strong {
	display: block;
	font-size: 20px;
	line-height: 24px;
	color: #000;
}

.d_list_timeline .cont_thumb p {
	padding-top: 10px;
	font-size: 16px;
	line-height: 20px;
	color: #000;
}

@media only screen and (min-width: 768px) {
	/* 타임라인 기본(썸네일 형) */
	.d_list_timeline {
		display: flex;
		gap: 0;
		margin: 0 -10px;
		--img-size-768: 110px;
		--dot-size-768: 16px;
		--img-gap-768: 30px;
		--dot-size-half: calc(var(--dot-size-768) / 2);
		--dot-top: calc(var(--img-size-768) + var(--img-gap-768) - var(--dot-size-768));
		--line-position: calc(var(--img-size-768) + var(--img-gap-768) - var(--dot-size-half));
	}
	.d_list_timeline:before {
		content: normal;
	}
	.d_list_timeline li {
		position: relative;
		flex: 1;
		gap: var(--img-gap-768);
		flex-direction: column;
		align-items: center;
		min-width: 0;
		padding: 0 10px;
		text-align: center;
	}
	.d_list_timeline li + li {
		margin-top: 0;
	}
	.d_list_timeline li:after {
		position: absolute;
		left: 50%;
		top: var(--dot-top);
		z-index: 10;
		width: var(--dot-size-768);
		height: var(--dot-size-768);
		border-radius: 50%;
		background: var(--point-color);
		transform: translateX(-50%);
		content: "";
	}
	.d_list_timeline li + li:before {
		position: absolute;
		top: var(--line-position);
		left: -50%;
		width: 100%;
		height: 1px;
		background: var(--point-color);
		content: "";
	}
	.d_list_timeline .wrap_thumb {
		width: var(--img-size-768);
		height: var(--img-size-768);
	}
	.d_list_timeline .cont_thumb {
		padding-top: calc(var(--img-gap-768) - var(--dot-size-768));
	}
}
@media only screen and (min-width: 1024px) {
	/* 타임라인 베이직 */
	.d_timeline {
		--dots-size-1024: 23px;
		--padding-gap-1024: 20px;
		--item-gap-1024: 10px;
		--max-width-1024: 650px;
		--line-pos: calc(var(--dots-size-1024) / 2);
		--li-padding: calc(var(--dots-size-1024) + var(--padding-gap-1024));
		gap: var(--item-gap-1024);
		max-width: var(--max-width-1024);
	}
	.d_timeline li {
		font-size: 20px;
		line-height: 26px;
	}
	.d_timeline li:after {
		width: var(--dots-size-1024);
		height: var(--dots-size-1024);
	}
	.d_timeline li + li:before {
		width: calc(100% + var(--item-gap-1024));
	}
	/* 타임라인 기본(썸네일 형) */
	.d_list_timeline {
		--img-size-1024: 120px;
		--img-gap-1024: 40px;
		--dot-size-1024: 20px;
		--dot-size-half: calc(var(--dot-size-1024) / 2);
		--dot-top: calc(var(--img-size-1024) + var(--img-gap-1024) - var(--dot-size-1024));
		--line-position: calc(var(--img-size-1024) + var(--img-gap-1024) - var(--dot-size-half));
	}
	.d_list_timeline li {
		gap: var(--img-gap-1024);
	}
	.d_list_timeline li:after {
		width: var(--dot-size-1024);
		height: var(--dot-size-1024);
	}
	.d_list_timeline .wrap_thumb {
		width: var(--img-size-1024);
		height: var(--img-size-1024);
	}
	.d_list_timeline .cont_thumb {
		padding-top: calc(var(--img-gap-1024) - var(--dot-size-1024));
	}
}

.d_box_form {
	overflow: hidden;
	border: 1px solid #ddd;
	border-radius: 5px;
}

.d_box_form .head_box_form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 0 20px;
	background: #f8f8f8;
}

.d_box_form .body_box_form {
	padding: 0 20px 20px;
}

.d_box_form dl {
	overflow: hidden;
}

.d_box_form dl ~ dl {
	margin-top: 20px;
	border-top: 1px dashed #ddd;
}

.d_box_form dl dt {
	position: relative;
	margin: 15px 0 5px;
	padding-left: 14px;
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	color: #232323;
}

.d_box_form dl dt:before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: currentColor;
	transform: translateY(-50%);
	content: "";
}

.d_box_form .ta_box_form {
	min-height: 95px;
	margin-top: 20px;
	border-color: #ddd;
}

.d_box_form .file_group_form {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.d_box_form .file_group_form + .file_group_form {
	margin-top: 10px;
}

@media only screen and (min-width: 1024px) {
	.d_box_form dl {
		display: grid;
		gap: 10px;
		grid-template-columns: 120px 1fr;
		align-items: start;
	}
	.d_box_form dl ~ dl {
		margin-top: 0;
	}
	.d_box_form dl dt {
		display: flex;
		align-items: center;
		min-height: 45px;
		margin: 10px 0 0 0;
		font-size: 16px;
		line-height: 22px;
	}
	.d_box_form dl dt:before {
		width: 6px;
		height: 6px;
	}
	.d_box_form dl dd {
		padding: 10px 0;
	}
	.d_box_form .body_box_form {
		padding-bottom: 0;
	}
	.d_box_form .wrap_txt_form {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		min-height: 45px;
	}
	.d_box_form dl.half {
		grid-template-columns: repeat(2, 120px 1fr);
	}
	.d_box_form .ta_box_form {
		margin-bottom: 20px;
	}
}

.d_area_error {
	display: flex;
	min-height: 400px;
	padding: 20px;
	background-color: #f8f8f8;
	text-align: center;
}

.d_area_error.full {
	height: 100vh;
}

.d_area_error img {
	display: inline-block;
	width: 250px;
	max-width: 100%;
}

.d_area_error .tit_error {
	display: block;
	padding-top: 30px;
	font-size: 32px;
	line-height: 40px;
	color: #000;
}

.d_area_error .desc_error {
	padding-top: 16px;
	font-size: 16px;
	line-height: 22px;
	color: #575757;
}

/* 본인인증 */
.self_login > div {
	border: 1px solid #dedede;
	border-radius: 8px;
	margin-bottom: 20px;
	text-align: center;
	padding: 30px 20px;
}

.self_login > div dl dt {
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 20px;
	position: relative;
	color: #2D2D2D;
}

.self_login > div dl dd {
	line-height: 1.4;
	word-break: keep-all;
}

.self_login > div dl dd.bg {
	padding: 80px 0 20px 0;
	position: relative;
}

.self_login > div dl dd.bg:before {
	content: "";
	display: block;
	width: 96px;
	height: 67px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.self_login > .login_phone dl dd.bg:before {
	background-image: url(../images/common/self_login01.png);
}

.self_login > .login_ipin dl dd.bg:before {
	background-image: url(../images/common/self_login02.png);
}

.self_login > .apply_self dl dd.bg:before {
	background-image: url(../images/common/self_login03.png);
}

.self_login > .apply_other dl dd.bg:before {
	background-image: url(../images/common/self_login04.png);
}

.self_login > div dl dd.bg a {
	display: inline-block;
	color: #fff;
	padding: 10px 25px;
	text-align: center;
	background: #2D2D2D;
	border: 1px solid #2D2D2D;
	border-radius: 5px;
}

.sns_login {
	padding: 30px 20px;
	border-radius: 10px;
	border: 1px dashed #dedede;
}

.sns_login p {
	font-size: 18px;
	text-align: center;
	font-weight: 600;
	position: relative;
	color: #2D2D2D;
	margin-bottom: 20px;
}

.btn_sns {
	color: #fff;
	font-weight: 600;
	width: 100%;
}

a.btn_sns i {
	display: inline-block;
	width: 33px;
	height: auto;
	background-position: 0 0;
	background-repeat: no-repeat;
}

a.btn_kakao {
	color: #331D1D;
	background: #F9DF33 url(../images/common/ico_kakao.png) no-repeat 40px center;
	background-size: 25px;
}

a.btn_naver {
	background: #2A9F3F url(../images/common/ico_naver.png) no-repeat 40px center;
	background-size: 25px;
}

a.btn_facebook {
	background: #2F51B2 url(../images/common/ico_facebook.png) no-repeat 40px center;
	background-size: 25px;
}

a.btn_google {
	color: #161616;
	background: #fff url(../images/common/ico_google.png) no-repeat 40px center;
	border: 1px solid #ddd;
	background-size: 25px;
}

@media all and (min-width: 768px) {
	.self_login {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		gap: 20px;
	}
	.self_login > div {
		width: 49%;
		padding: 50px;
	}
	.self_login > div dl dt {
		font-size: 24px;
	}
	.self_login > div dl dd {
		font-size: 15px;
	}
	.self_login > div dl dd.bg {
		padding: 130px 0 30px 0;
	}
	.self_login > div dl dd.bg:before {
		width: 130px;
		height: 89px;
		top: 10px;
	}
	.sns_login {
		padding: 40px 50px;
		background-size: 35px;
	}
	.btn_sns {
		padding: 20px 40px;
	}
	a.btn_kakao {
		color: #331D1D;
		background: #F9DF33 url(../images/common/ico_kakao.png) no-repeat 40px center;
		background-size: 35px;
	}
	a.btn_naver {
		background: #2A9F3F url(../images/common/ico_naver.png) no-repeat 40px center;
		background-size: 35px;
	}
	a.btn_facebook {
		background: #2F51B2 url(../images/common/ico_facebook.png) no-repeat 40px center;
		background-size: 30px;
	}
	a.btn_google {
		color: #161616;
		background: #fff url(../images/common/ico_google.png) no-repeat 40px center;
		border: 1px solid #ddd;
		background-size: 30px;
	}
	.sns_login p {
		font-size: 24px;
	}
}
@media all and (min-width: 480px) {
	.btn_sns {
		padding: 20px 40px;
		min-width: 280px;
		width: auto;
		background-size: 35px;
	}
}

/* 이용약관 */
.agree_box {
	border: 1px solid #ddd;
	margin-top: 20px;
}

.agree_box .agree_cont {
	padding: 30px;
	max-height: 18rem;
	overflow-y: auto;
}

.agree_allbox {
	padding: 30px 40px;
	border-radius: 10px;
	background-color: #F9F9F9;
	margin-top: 50px;
}

.d_area_bnr_allview + .d_area_bnr_allview {
	margin-top: 20px;
}

.d_area_bnr_allview .info_box + .info_box {
	margin-top: 20px;
}

@media only screen and (min-width: 768px) {
	.d_area_bnr_allview {
		display: grid;
		gap: 30px;
		grid-template-columns: repeat(2, 1fr);
	}
	.d_area_bnr_allview + .d_area_bnr_allview {
		margin-top: 30px;
	}
	.d_area_bnr_allview .info_box + .info_box {
		margin-top: 0;
	}
	.d_area_bnr_allview .img_box {
		justify-content: flex-start;
	}
}

.d_list_grouping {
	display: grid;
	gap: var(--gap, 10px);
	grid-template-columns: repeat(auto-fill, minmax(var(--min-box-size, 280px), 1fr));
	word-break: keep-all;
	word-wrap: break-word;
}

.d_list_grouping li {
	min-width: 0;
	padding: 15px;
	background: var(--bg-color, #fff);
	border-radius: var(--radius, 10px);
	border: 1px solid var(--border-color, #ddd);
}

.d_list_grouping.type_option {
	grid-template-columns: 1fr;
}

.d_list_grouping.type_option li {
	border-color: transparent;
	background: #fafafa;
}

.d_list_grouping .head_group {
	display: flex;
	gap: 5px 10px;
	flex-wrap: wrap;
}

.d_list_grouping .head_group .tit {
	width: var(--tit-width, auto);
	min-width: 0;
	margin-right: auto;
	font-size: 20px;
	line-height: 25px;
	color: #464646;
}

.d_list_grouping .desc {
	min-width: 0;
	font-size: 16px;
	line-height: 25px;
	color: #464646;
}

.d_list_grouping .desc em {
	margin: 0 5px 0 10px;
	font-weight: 700;
	font-size: 20px;
	color: var(--color-value, #D90000);
	vertical-align: top;
}

.d_list_grouping .cont_group {
	padding-top: 10px;
	letter-spacing: -0.03em;
}

.d_list_grouping .cont_group .item_choice {
	display: block;
}

.d_list_grouping .cont_group label {
	min-height: 35px;
	padding: 3px 0 3px 30px;
	font-size: 14px;
	color: #464646;
}

.d_list_grouping .cont_group label em {
	font-weight: 700;
	font-size: 16px;
}

.d_list_grouping .cont_group .item_choice input:checked + label {
	color: #1941AB;
}

.d_list_grouping .cont_group .desc {
	display: flex;
	align-items: center;
	min-width: 0;
	max-width: 100%;
	padding: 8px 10px 7px;
	border-radius: 5px;
	background: #fafafa;
}

.d_list_grouping .info_form {
	display: flex;
	gap: 5px 10px;
	flex-wrap: wrap;
}

.d_list_grouping .info_form .info_inp {
	display: flex;
	gap: 2px 10px;
	flex-wrap: wrap;
	margin-right: auto;
}

.d_list_grouping .info_form .opt_comm select {
	height: 40px;
	padding: 5px 45px 4px 17px;
}

.d_list_grouping .info_form .item_choice {
	display: inline-flex;
}

.d_list_grouping .info_form label {
	min-height: 40px;
	padding: 10px 0 10px 27px;
}

.d_result_info {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(var(--min-box-size, 280px), 1fr));
	gap: 10px 20px;
	word-break: keep-all;
	word-wrap: break-word;
}
.d_result_info + .d_result_info {
	margin-top: 10px;
}
.d_result_info .item_result {
	min-width: 0;
	display: flex;
	gap: 5px 10px;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 15px;
	border-radius: var(--radius, 10px);
	border: 1px solid #ddd;
}
.d_result_info dt {
	flex: none;
	max-width: 100%;
	font-weight: 700;
	font-size: var(--dt-size, 16px);
	line-height: var(--dt-line-height, 23px);
	color: #464646;
}
.d_result_info dd {
	flex: none;
	max-width: 100%;
	font-size: var(--dd-size, 14px);
	line-height: var(--dd-line-height, 23px);
	color: #464646;
}
.d_result_info dd em {
	margin-right: 5px;
	font-weight: 700;
	font-size: var(--em-size, 16px);
	color: var(--color-value, #D90000);
	vertical-align: top;
}

@media only screen and (min-width: 1024px) {
	.d_list_grouping {
		grid-template-columns: repeat(auto-fill, minmax(var(--pc-min-box-size, 320px), 1fr));
	}
	.d_list_grouping.type_option {
		grid-template-columns: repeat(3, 1fr);
	}
	.d_list_grouping li {
		padding: 20px;
	}
	.d_result_info .item_result {
		border-radius: var(--pc-radius, 10px);
	}
	.d_result_info dt {
		font-size: var(--pc-dt-size, 20px);
		line-height: var(--pc-dt-line-height, 25px);
	}
	.d_result_info dd {
		font-size: var(--pc-dd-size, 16px);
		line-height: var(--pc-dd-line-height, 25px);
	}
	.d_result_info dd em {
		font-size: var(--pc-em-size, 20px);
	}
}

/* 게시판 검색 - 촬영일자 */
.sch_detail {display: none;padding: 32px 0 0;width: 100%;margin:0 auto;}

.wrap_period .tab_panel {display: none}
.wrap_period.panel1_on .tab_panel1, .wrap_period.panel2_on .tab_panel2 {display: block}

.group_slider_toggle {display: flex;gap:8px;width: 100%;font-size: 20px}
.group_slider_toggle .btn_view i {color:#b9b9b9;transition: color .3s}
.wrap_period.panel1_on .group_slider_toggle .btn_view_slider i,
.wrap_period.panel2_on .group_slider_toggle .btn_view_select i {color:#000}
.wrap_period .group_range_txt {display: flex;gap: 5px 10px;flex-wrap: wrap;align-items: center;padding: 12px 0 10px;font-size: 16px;line-height: 26px}
/* .wrap_period.panel2_on .group_range_txt strong, 선택한 범위 표시 활성화 */ 
.wrap_period.panel2_on .group_range_txt .txt_range {display: none}
.wrap_period .group_range_txt strong {font-size: 14px;line-height: 18px;color:#222}
.wrap_period .group_range_txt .txt_range {font-weight: 500;font-size: 14px;line-height: 18px;color:#898989}

#pieceRangeSlider {--slider-height: 6px; --slider-handle-size: 16px; --slider-bg-color: #4191ff; --slider-bar-color: #eee; --slider-gage-color: #4191ff; height: var(--slider-height);border:0;background: var(--slider-bar-color);}
#pieceRangeSlider .ui-slider-range, 
#pieceRangeSlider .ui-slider-handle {transition: all linear .1s}
#pieceRangeSlider .ui-slider-range {background: var(--slider-bg-color);}
#pieceRangeSlider .ui-slider-handle {top:50%;margin-left: calc(var(--slider-handle-size) / 2 * -1);width: var(--slider-handle-width-size, var(--slider-handle-size));height: var(--slider-handle-height-size, var(--slider-handle-size));border:0;border-radius: 50%;background:var(--slider-gage-color);cursor: grab;transform: translateY(-50%);}
#pieceRangeSlider .ui-slider-handle:before {display: block;overflow: hidden;font-size: 1px;line-height: 0;color: transparent;}
#pieceRangeSlider .ui-slider-handle:nth-of-type(1):before {content: '시작연도 ' attr(data-start-year) '년';}
#pieceRangeSlider .ui-slider-handle:nth-of-type(2):before {content: '종료연도 ' attr(data-end-year) '년';}
#startYear, #endYear {width: 100px;height: 32px;padding:0 40px 0 10px;border-radius: 3px;border:1px solid #626262;color:#222;}

.area_piece_list {padding-top: 10px;}
.sch_detail .list_period_range {position: relative;min-width: 0;display: flex;width: 100%;word-break: break-all;}
.sch_detail .list_period_range li {flex:1;min-width: 0;display: flex;align-items: center;position: relative;width: 100%;padding-top: var(--slider-box-height);font-size: 12px;line-height: 14px;color:#000;writing-mode: vertical-rl;text-orientation: upright;user-select: none;}

.group_range_select {display: flex;gap:5px;align-items: center;padding-bottom: 4px;font-size: 12px;line-height: 16px;color:#222;}
.select_group {position: relative;font-size: 16px;color:#222;}
.select_group i {position: absolute;top:50%;right: 10px;transform: translateY(-50%);}
.search_text_box .btn_clc_reset {width: auto;border: 1px solid #747474;font-weight: 500;}
.search_text_box .btn_clc_detail {width: auto; color: #fff; /* background: #1B1C25; */font-weight: 500;}
.sch_detail .item_choice label {padding: 5px 10px 5px 30px;min-height: 40px;}

.select_group select {width: 100%;height: 38px;padding: 10px 40px 10px 15px;border: 1px solid #ccc;border-radius: 3px;font-weight: 500;font-size: 16px;line-height: 17px;color: #232323;background-color: #fff;box-sizing: border-box;-webkit-appearance: none;appearance: none;text-overflow: ellipsis;}
.select_group select:disabled,
.select_group select[disabled],
.select_group select[readonly] {border-color: #ddd; color: #858585; background-color: #f9f9f9;}
.select_group select:disabled + i,
.select_group select[disabled] + i,
.select_group select[readonly] + i {color: #858585;}
.select_group i {position: absolute;top: 21px;right: 14px;transform: translateY(calc(-50% - 6px));pointer-events: none;}

@media only screen and (min-width:768px) {
	.group_slider_toggle {width: auto;}
	.wrap_period {display: inline-block;width: calc(100% - 60px);/* padding-right: 10px; */vertical-align: top;margin-right: 15px;}
	.wrap_period .group_range_txt {padding:0 0 12px;margin-top: -4px;}
	.wrap_period .group_range_txt .txt_range {font-size: 13px;}
	.area_range_slider {padding:0 8px;}
	.sch_detail .list_period_range li {justify-content: center;writing-mode: horizontal-tb;}

	.group_range_select {padding-top: 0;margin-top: -2px;}
	.search_text_box .btn_clc_reset {margin-left: 15px;}
}
@media only screen and (min-width:1024px) {
	.group_slider_toggle .btn_view:hover i, 
	.groupslider_toggle .btn_view:focus i {color:#222;}
	.wrap_period {width: calc(100% - 320px);}
	.search_text_box .btn_clc_reset {margin-left: 30px;}

	.sch_detail {width: 84%;}
	.sch_detail .list_period_range li {font-weight: 500;font-size: 14px;line-height: 18px;}
}