@charset "utf-8";

/* Variables */
:root {
	--forum-color: #1d92ff;
	--sport-color: #3ca823;
	--exhibition-color: #9b67ef;
	--show-color: #ee661a;
	--etc-color: #f740b9;
}

html {
	font-size: 20px;
}

@media (max-width: 1300px) {
	html {
		font-size: 1.4vw;
	}
}
@media (max-width: 1000px) {
	html {
		font-size: 1.5vw;
	}
}
@media (max-width: 740px) {
	html {
		font-size: 3.5vw;
	}
}

/* placeholder */
:-webkit-input-placeholder {
	color: #9e9e9e;
}
:-moz-placeholder {
	color: #9e9e9e;
	opacity: 1;
}
::-moz-placeholder {
	color: #9e9e9e;
	opacity: 1;
}
:-ms-input-placeholder {
	color: #9e9e9e;
}
::placeholder {
	color: #9e9e9e;
	opacity: 1;
}

/* scrollbar */
::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
::-webkit-scrollbar-track {
	background-color: #efefef;
}
::-webkit-scrollbar-thumb {
	border-radius: 3px;
	background-color: #bcbcbc;
}
::-webkit-scrollbar-button {
	width: 0;
	height: 0;
}

@media (max-width: 740px) {
	::-webkit-scrollbar {
		width: 6px;
		height: 6px;
	}

	::-webkit-scrollbar-thumb {
		border-radius: 0;
	}
}

/* resets */
* {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	cursor: pointer;
	color: inherit;
	text-decoration: none !important;
}

a:hover {
	text-decoration: none !important;
}

a:visited {
	text-decoration: none !important;
}

a:link {
	text-decoration: none !important;
}

a:active {
	text-decoration: none !important;
}

button {
	cursor: pointer;
}

ul {
	list-style: none;
	padding: 0px;
	margin: 0px;
}

ol {
	list-style: none;
	padding: 0;
}

img {
	max-width: 100%;
	border: none;
	box-sizing: border-box;
	vertical-align: middle;
	border: 0;
}

html,
body {
	color: #000;
	line-height: 165%;
	word-break: keep-all;
	letter-spacing: -0.01em;
	margin: 0;
	padding: 0;
	font-family: "Pretendard", sans-serif;
	position: relative;
	overflow-x: hidden;
}

dl dd,
dl dt {
	word-break: break-all;
	white-space: normal;
}

.mt-5 {
	margin-top: 5rem !important;
}

.mt-2 {
	margin-top: 2rem !important;
}

.none-border-top {
	border-top: none !important;
}

.none-border-bottom {
	border-bottom: none !important;
}

.border-top:before {
	content: "";
	border-top: 2px solid #333;
	display: block;
	width: 100%;
	max-width: 1200px;
	height: 2px;
	margin: 0 auto;
}

.border-top.c-ccc.t-1:before {
	border-top: 1px solid #ccc;
}

.hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px 1px 1px 1px);
	font-size: 2px;
	line-height: 0.5;
	margin: 0 !important;
}

.hide {
	display: none;
}

.hidden-scroll {
	overflow: hidden;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

caption {
	overflow: hidden;
	width: 0.1rem;
	height: 0.1rem;
	margin-top: -0.1rem;
}

input {
	font-family: "Pretendard", sans-serif;
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: keep-all;
	line-break: normal;
}

/* skip */
.skip a {
	display: block;
	position: absolute;
	left: 0;
	top: -9999em;
	z-index: 9999;
	overflow: hidden;
	width: 100%;
	background-color: #333;
	color: #fff;
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 2.2;
}

.skip a:hover,
.skip a:active,
.skip a:focus {
	top: 0;
}

/* 공통 */
.area {
	display: table;
	width: 100%;
	border-top: 0.1rem solid #e2e2e2;
}

.area-max {
	display: table;
	width: 100%;
	max-width: 1800px;
	margin-left: auto;
	margin-right: auto;
}

.area-basic {
	display: table;
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	table-layout: fixed;
}

.area-container {
	display: block;
	max-width: 1200px;
	margin: 0 auto;
}

.area-main {
	max-width: 1400px;
	margin: 0 auto;
}

.area-sub {
	display: table-cell;
	width: auto;
	white-space: nowrap;
	text-align: left;
	vertical-align: middle;
}

.area-sub.left {
	text-align: left;
}

.area-sub.right {
	text-align: right;
}

.area-devide {
	width: 100%;
	display: table;
	list-style-type: none;
}

.area-devide li {
	display: inline-block;
	float: left;
}

.area-devide.num-2 > li {
	width: 50%;
	margin-right: 0;
}
.area-devide.num-2.gap-1 > li {
	width: 49.5%;
	margin-right: 1%;
}
.area-devide.num-2.gap-2 > li {
	width: 49%;
	margin-right: 2%;
}
.area-devide.num-2.gap-3 > li {
	width: 48.5%;
	margin-right: 3%;
}
.area-devide.num-2 > li:nth-of-type(2n + 0) {
	margin-right: 0%;
}
.area-devide.num-2 > li:nth-of-type(2n + 1) {
	margin-top: 2rem;
	clear: both;
}
.area-devide.num-2 > li:nth-of-type(2n + 2) {
	margin-top: 2rem;
}
.area-devide.num-2 > li:nth-child(1) {
	margin-top: 0rem;
}
.area-devide.num-2 > li:nth-child(2) {
	margin-top: 0rem;
}

.area-devide.num-2.gap-1 > li:nth-of-type(2n + 1) {
	margin-top: 1%;
	clear: both;
}
.area-devide.num-2.gap-1 > li:nth-of-type(2n + 2) {
	margin-top: 1%;
}

.area-devide.num-3 > li {
	width: 33.33%;
	margin-right: 0;
}
.area-devide.num-3.gap-1 > li {
	width: 32.66%;
	margin-right: 1%;
}
.area-devide.num-3.gap-2 > li {
	width: 32%;
	margin-right: 2%;
}
.area-devide.num-3.gap-3 > li {
	width: 31.33%;
	margin-right: 3%;
}
.area-devide.num-3 > li:nth-of-type(3n + 0) {
	margin-right: 0%;
}
.area-devide.num-3 > li:nth-of-type(3n + 1) {
	margin-top: 2rem;
	clear: both;
}
.area-devide.num-3 > li:nth-of-type(3n + 2) {
	margin-top: 2rem;
}
.area-devide.num-3 > li:nth-of-type(3n + 3) {
	margin-top: 2rem;
}
.area-devide.num-3 > li:nth-child(1) {
	margin-top: 0rem;
}
.area-devide.num-3 > li:nth-child(2) {
	margin-top: 0rem;
}
.area-devide.num-3 > li:nth-child(3) {
	margin-top: 0rem;
}

.area-devide.num-4 > li {
	width: 25%;
	margin-right: 0;
}
.area-devide.num-4.gap1 > li {
	width: 24.25%;
	margin-right: 1%;
}
.area-devide.num-4.gap2 > li {
	width: 23.5%;
	margin-right: 2%;
}
.area-devide.num-4.gap3 > li {
	width: 22.75%;
	margin-right: 3%;
}
.area-devide.num-4 > li:nth-of-type(4n + 0) {
	margin-right: 0%;
}
.area-devide.num-4 > li:nth-of-type(4n + 1) {
	margin-top: 0rem;
	clear: both;
}
.area-devide.num-4 > li:nth-of-type(4n + 2) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-of-type(4n + 3) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-of-type(4n + 4) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-child(1) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-child(2) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-child(3) {
	margin-top: 0rem;
}
.area-devide.num-4 > li:nth-child(4) {
	margin-top: 0rem;
}

@media (max-width: 740px) {
	.area-devide.num-2 li:nth-of-type(2n + 1) {
		clear: none;
	}
	.area-devide.num-2 > li {
		width: 100%;
		margin-right: 0 !important;
		margin-top: 2rem !important;
	}
	.area-devide.num-2 > li:nth-child(1) {
		margin-top: 0rem;
	}
	.area-devide.num-2.gap-1 > li {
		width: 100%;
		margin-right: 0%;
	}
	.area-devide.num-2.gap-2 > li {
		width: 100%;
		margin-right: 0%;
	}
	.area-devide.num-2.gap-3 > li {
		width: 100%;
		margin-right: 0%;
	}

	.area-devide.num-3 li:nth-of-type(3n + 1) {
		clear: none;
	}
	.area-devide.num-3 > li {
		width: 100%;
		margin-right: 0 !important;
		margin-top: 2rem !important;
	}
	.area-devide.num-3 > li:nth-child(1) {
		margin-top: 0rem;
	}
	.area-devide.num-3.gap-1 > li {
		width: 100%;
		margin-right: 0%;
	}
	.area-devide.num-3.gap-2 > li {
		width: 100%;
		margin-right: 0%;
	}
	.area-devide.num-3.gap-3 > li {
		width: 100%;
		margin-right: 0%;
	}
}

.arrow {
	position: relative;
	width: 2rem;
	height: 2rem;
}

.arrow span {
	position: absolute;
	text-indent: -100px;
	overflow: hidden;
}

.arrow:after {
	font-family: "Material Icons";
	content: "\e5e0";
	position: absolute;
	display: block;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.arrow.left:after {
	content: "\e5e0";
	left: 60%;
}

.arrow.right:after {
	content: "\e5e1";
}

.arrow.down:after {
	content: "\e313";
}

.nav-sub {
	display: table;
	width: auto;
}

.nav-sub li {
	display: table-cell;
	padding: 0 1rem;
	border-bottom: 2px solid #ccc;
	padding-bottom: 0.5rem;
	opacity: 0.5;
	font-weight: 600;
}

.nav-sub li.on {
	opacity: 1;
	border-bottom: 2px solid #333;
}

.nav-sub li:nth-child(2).on {
	color: #229bd0;
	border-bottom: 2px solid #229bd0;
}

.nav-sub li:nth-child(3).on {
	color: #70b641;
	border-bottom: 2px solid #70b641;
}

.nav-sub li:nth-child(4).on {
	color: var(--show-color);
	border-bottom: 2px solid var(--show-color);
}

.nav-sub li:nth-child(5).on {
	color: var(--exhibition-color);
	border-bottom: 2px solid var(--exhibition-color);
}
.list-img {
}

.tema-1 {
	position: relative;
	display: block;
	width: 100%;
}

.tema-1 > div {
	display: table;
	width: 100%;
	height: 7rem;
	font-weight: 700;
	padding: 0.5rem;
	--mask: radial-gradient(1rem at 1rem 1rem, #0000 98%, #000) -1rem -1rem;
	-webkit-mask: var(--mask);
	mask: var(--mask);
}

.tema-2 {
	position: relative;
	display: block;
	width: 100%;
	padding-right: 0.5rem;
}

.tema-2 > div {
	display: table;
	width: 100%;
	height: 7rem;
	font-weight: 700;
	padding: 0.5rem;
	border-top-left-radius: 1rem;
	border-bottom-right-radius: 1rem;
	background-color: #fff7e0;
	position: relative;
}

.usr-button-1 {
	display: inline-block;
	width: auto;
	padding: 0.25rem 1.2rem;
	position: relative;
	width: 14rem;
	background-color: var(--forum-color);
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
}

.usr-button-1.home {
	width: 6rem;
	padding: 0.5rem 0rem 0.5rem 1rem;
	line-height: 110%;
	font-size: 0.7rem;
	float: right;
	margin-right: 0.2rem;
}

.usr-button-1:after {
	content: "\f1df";
	font-family: "Material Icons";
	position: absolute;
	right: 1rem;
}

.usr-button-more {
	display: flex;
	align-items: center;
	padding: 0.5rem 1.45rem;
	margin: 0 auto;
	background-color: #fff;
	font-size: 1rem;
	border: 1px solid #333;
	position: relative;
	/* width: 7rem; */
	text-align: left;
	margin-top: 3rem;
	font-family: "Pretendard";
	font-weight: 500;
}

.usr-button-more:after {
	content: "\e145";
	font-family: "Material Icons";
	display: block;
	margin-left: 0.4rem;
}

.usr-button-1.download {
	background-color: #000;
	text-align: left;
}
.usr-button-1.download:after {
	content: "\e258";
	font-family: "Material Symbols Outlined";
	position: absolute;
	right: 1rem;
	font-size: 1.2rem;
}

.usr-button-list {
	display: inline-block;
	padding: 1.2rem 2rem;
	background-color: #fff;
	font-size: 1rem;
	border: 1px solid #333;
	line-height: 0;
	text-align: center;
	margin-top: 3rem;
	font-weight: 700;
}

@media (max-width: 740px) {
	.usr-button-list {
		padding: 1rem 2rem;
	}
}

.usr-font-1 {
	color: #e37331;
	font-size: 1.2rem;
	font-weight: 600;
}

thead.thead-hidden {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

.ta-c {
	text-align: center;
}

/* modal ---------------------------------------------------------------- */
.modal {
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1004;
}
.modal.on {
	display: block;
}
.modal .modal-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1001;
	animation: fadeInTop 0.4s;
	width: 100%;
}
.modal .modal-contents {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 27.5rem;
	max-width: calc(100% - (1rem * 2));
	max-height: calc(100vh - 5rem);
	max-height: calc(100dvh - 5rem);
	background: #fff;
	border-radius: 2rem;
	overflow: hidden;
}
.modal .modal-contents.modal-small {
	width: 27.5rem;
}
.modal .modal-contents.modal-medium {
	width: 36.4rem;
}
.modal .modal-contents.modal-large {
	width: 50rem;
}
.modal .modal-head {
	flex: 0 0 auto;
	padding: 1.2rem 1.95rem 0.85rem;
	background-color: #ffe241;
	border-radius: 2rem 2rem 0 0;
	text-align: left;
}
.modal .modal-title {
	display: flex;
	align-items: center;
	color: #393939;
	font-family: "Elice DX Neolli";
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: -0.012rem;
	text-wrap: balance;
	padding-right: 2rem;
}
.modal .modal-title .icon-kakao {
	display: inline-block;
	margin-right: 0.83rem;
	width: 2.3226rem;
	height: 2.15rem;
	background: url("../images/icon_kakao.svg") no-repeat 50% 50% / contain;
}

.modal .modal-body {
	flex: 1 1 auto;
	min-width: 0;
	overflow-y: auto;
	font-family: "Elice DX Neolli";
}

.modal .modal-section {
	padding: 1.05rem 2.5rem;
}
.modal .modal-section + .modal-section {
	border-top: 1px solid #f1f4f8;
}

.modal .modal-text {
	color: #393939;
	font-size: 1.2rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.8;
}
.modal .modal-text strong {
	position: relative;
	font-weight: 500;
}
.modal .modal-text strong::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 0.7rem;
	background: #ffe240;
	mix-blend-mode: multiply;
}

.modal .modal-label {
	color: #656565;
	font-size: 0.7rem;
	font-weight: 500;
	margin-bottom: 0.3rem;
}

.modal .modal-box {
	border-radius: 0.5rem;
	background: #f1f4f8;
	padding: 0.6rem 1.5rem;
	font-size: 0.75rem;
	font-weight: 500;
	color: #393939;
	margin: 0 -1.5rem;
}
.modal .modal-box .box-item {
	display: flex;
	gap: 0 1.05rem;
}
.modal .modal-box .tit {
	font-weight: bold;
}
.modal .modal-box u {
	color: #4faf08;
	text-underline-offset: 0.1rem;
}
.modal .modal-agree {
	margin-top: 0.5rem;
	display: flex;
	align-items: center;
	gap: 0 1.4rem;
}
.modal .modal-agree .rdo {
	width: 0.9rem;
	height: 0.9rem;
	margin-right: 0.35rem;
	vertical-align: middle;
}
.modal .modal-agree .lbl {
	color: #303030;
	font-size: 0.75rem;
	cursor: pointer;
}
.modal .number-control {
	display: flex;
	align-items: center;
	gap: 0 0.3rem;
	margin: 0 -1rem;
}
.modal .number-control .inp-text {
	flex: 1 1 100%;
	min-width: 0;
	border: 1px solid #dfe6ef;
	height: 2.4rem;
	border-radius: 45rem;
	font-family: "Elice DX Neolli";
	font-size: 0.8rem;
	font-weight: 700;
	text-align: center;
}
.modal .number-control .text {
	font-size: 0.8rem;
	font-weight: 500;
}

.modal .modal-bottom {
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal .modal-bottom .btn {
	flex: 1 1 100%;
	min-width: 0;
	height: 3.75rem;
	line-height: 3.75rem;
	font-size: 1.1rem;
	border: 0;
	color: #fff;
	font-weight: bold;
}
.modal .modal-bottom .btn.confirm {
	background: #00aa6c;
}
.modal .modal-bottom .btn.cancel {
	background: #1c1c1c;
}

.modal .btn-modal-close {
	position: absolute;
	top: 1.35rem;
	right: 1.5rem;
	font-size: 1.7rem;
	line-height: 1;
	color: #393939;
	border: 0;
	background: none;
}
.modal .btn-modal-close i {
	line-height: 1;
	vertical-align: top;
}

.modal-bg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	background: rgba(0, 0, 0, 0.64);
}

@media (max-width: 740px) {
	.modal .modal-contents {
		width: 24rem;
	}

	.modal .modal-head {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.modal .modal-title {
		font-size: 1rem;
	}
	.modal .modal-title .icon-kakao {
		width: 1.83645rem;
		height: 1.7rem;
	}

	.modal .modal-section {
		padding: 0.8rem 2rem;
	}
	.modal .modal-box {
		margin: 0 -1.2rem;
		padding-left: 1.3rem;
		padding-right: 1.3rem;
	}
	.modal .modal-text {
		font-size: 1.1rem;
	}
	.modal .modal-bottom .btn {
		height: 3.4rem;
		line-height: 3.4rem;
	}

	.modal .btn-modal-close {
		font-size: 1.2rem;
	}
}

/* header ---------------------------------------------------------------- */
header {
	display: block;
	width: 100%;
	padding-left: 1rem;
	padding-right: 1rem;
	height: 5rem;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	font-size: 1rem;
	background: #fff;
	font-family: "Elice DX Neolli";
	border-bottom: 1px solid #e2e2e2;
}

header:after {
	content: "";
	position: absolute;
	width: 100%;
	left: 0;
	top: 5rem;
	height: 0rem;
	background-color: #F1F4F8;
	transition: height 0.3s linear;
}

header > div.pc {
	display: flex;
	align-items: center;
	position: relative;
	max-width: 1400px;
	height: 100%;
	margin-left: auto;
	margin-right: auto;
}

header > div.pc > h1,
header > div.pc > nav,
header > div.pc > div {
	vertical-align: middle;
}

header > div.pc > h1 {
	flex: 0 0 22%;
}

header > div.pc > nav {
	/* white-space: nowrap; */
	display: flex;
	align-items: center;
	margin-left: auto;
}

header > div.pc > nav > ul {
	display: flex;
	height: 100%;
	width: auto;
}

header > div.pc > nav > .program {
	border-radius: 12rem;
	background: #f2f2f2;
}
header > div.pc > nav > .program > li {
	margin-left: 0;
}
header > div.pc > nav > .program > li > a {
	display: block;
	border-radius: 12rem;
	padding: 0.6rem 1.55rem;
}
header > div.pc > nav > .program > li.active > a,
header > div.pc > nav > .program > li > a:hover {
	color: #fff !important;
	background-color: #00a669;
	font-weight: 600;
}
header > div.pc > nav > .etc {
	margin-left: 4.2rem;
}

header > div.pc > nav > ul > li {
	font-weight: 500;
	vertical-align: middle;
	line-height: 1.3;
	text-align: center;
	position: relative;
}

header > div.pc > nav > ul > li + li {
	margin-left: 2.5rem;
}

header > div.pc > nav a {
	display: block;
	position: relative;
}

header > div.pc > nav > ul > li > a.strong {
	color: #00a669;
}
header > div.pc > nav > ul > li > ul {
	display: none;
	position: absolute;
	top: 3.2rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 101;
	height: 3.2rem;
	font-size: 0.8rem;
	white-space: nowrap;
	align-items: center;
}

header > div.pc > nav > ul > li > ul > li {
	margin-right: 1.6rem;
	font-weight: 500;
	flex: 0 0 auto;
}

header > div.pc > nav > ul > li > ul > li:last-child {
	margin-right: 0;
}

header > div.pc > nav > .etc > li:last-child > ul {
	left: auto;
	right: 0;
	transform: none;
}
[lang="en"] header > div.pc > nav > ul > li:last-child > ul > li {
	max-width: 7rem;
}

header.on {
}

header.on:has(li.on ul):after {
	content: "";
	height: 3.2rem;
	transition: all 0.2s linear;
}

/* header > div.pc > nav > ul > li.active > a::after {
	content: "";
	position: absolute;
	top: -0.85rem;
	left: 50%;
	width: 0.4rem;
	height: 0.4rem;
	margin-left: -0.2rem;
	background: #f11717;
	border-radius: 50%;
}
 */
header.on > div.pc > nav > ul > li.on > a,
header > div.pc > nav > ul > li.active > a,
header > div.pc > nav > ul > li > ul > li a:hover {
	color: #00a669;
}

header > div.pc > nav > ul > li.active > a,
header.on > div.pc > nav > ul > li > a:hover {
	font-weight: bold;
}

header > div.pc > nav > ul > li > ul > li a:hover {
	/* font-weight: 600; */
}

header.on > div.pc > nav > ul > li.on > ul {
	display: flex;
}

header > div.pc > div {
	position: relative;
	text-align: right;
	font-size: 1rem;
	padding-left: 1rem;
}

header > div.pc > div .arrow:after {
	left: auto;
	right: 0;
	transform: translateY(-50%);
}

header > div.pc > div .lang {
	position: relative;
	width: 3rem;
	text-align: left;
	display: block;
	font-weight: 600;
}

header > div.pc > div .lang > a {
	display: block;
	width: 100%;
	color: #949494;
	font-weight: bold;
	height: 2rem;
	line-height: 2rem;
}

header > div.pc > div .lang > a.arrow.down:after {
	top: 45%;
}

header > div.pc > div .lang > ul {
	display: none;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 6rem;
	padding: 0.7rem 1rem;
	z-index: 101;
	border: 1px solid #efefef;
}

header > div.pc > div .lang > ul > li {
	display: block;
	width: 100%;
}

header > div.pc > div .lang > ul > li + li {
	margin-top: 0.3rem;
}

header > div.pc > div .lang > ul > li a {
	display: block;
	padding-left: 0.5rem;
}

header > div.pc > div .lang > ul > li a:hover {
	color: #436bd1;
}

header > div.pc > div .lang.on {
	background-color: #fff;
}

header > div.pc > div .lang.on > a {
	color: #436bd1;
}

header > div.pc > div .lang.on ul {
	display: block;
	background-color: #fff;
}

header > div.mobile {
	display: none;
}

@media (max-width: 740px) {
	header > div.pc {
		display: none;
	}

	header > div.mobile {
		display: table;
		padding-top: 1.5rem;
	}

	header > div.mobile .area-sub.order-1 {
		display: table-cell;
		width: 55%;
	}

	header > div.mobile .area-sub.order-2 {
		display: table-cell;
		width: 45%;
		text-align: right;
	}

	.toggle-mnu {
		display: block;
		width: 2.8rem;
		height: 2.1rem;
		float: right;
		background: url(../images/icon_menu.svg) no-repeat 50% 50% / contain;
	}
}

.menu-mobile {
	display: none;
}

@media (max-width: 740px) {
	html.open .menu-mobile {
		right: 0 !important;
		overflow-y: auto;
		transition: all 0.8s;
		/*-webkit-overflow-scrolling: touch;*/
		overscroll-behavior: none;
	}

	.menu-mobile {
		z-index: 10000;
		transition: all 0.8s;
		overflow: hidden;
		height: 100%;
		position: fixed;
		background-color: #fff;
		width: 100%;
		top: 0;
		right: -100vw;
		display: flex;
		flex-direction: column;
		font-family: "GmarketSans";
	}

	.menu-mobile .header {
		display: table;
		width: 100%;
		padding: 1.2rem 0;
		border-bottom: 1px solid #ccc;
		font-size: 1.2rem;
		font-weight: 500;
	}

	.menu-mobile .header .area-sub.order-1 {
		display: block;
		padding-left: 1rem;
		color: #949494;
	}

	.menu-mobile .header .area-sub.order-1 .first:after {
		content: "";
		display: inline-block;
		width: 1.3rem;
		height: 1rem;
		border-right: 1px solid #ccc;
		vertical-align: middle;
	}

	.menu-mobile .header .area-sub.order-1 .second {
		padding-left: 1rem;
	}

	.menu-mobile .header .area-sub.order-2 {
		text-align: right;
		padding-right: 0.4rem;
	}

	.menu-mobile .header .area-sub.order-2 .menu-mobile-close-cl {
		display: block;
		width: 100%;
		position: relative;
	}
	.menu-mobile .header .area-sub.order-2 .menu-mobile-close-cl:after {
		font-family: "Material Icons";
		content: "\e5cd";
		font-size: 2.8rem;
		vertical-align: top;
	}

	.menu-mobile nav > ul {
		display: table;
		width: 100%;
	}

	.menu-mobile nav > ul > li {
		display: block;
		width: 100%;
		font-size: 1.5rem;
		border-bottom: 1px solid #ccc;
	}

	.menu-mobile nav > ul > li > a {
		display: block;
		width: 100%;
		position: relative;
		padding: 1.3rem 3.5rem 1.3rem 1rem;
		font-weight: bold;
	}

	.menu-mobile nav > ul > li:has(ul) > a:after {
		content: "";
		font-family: "Material Icons";
		content: "\e5cf";
		color: #00aa6c;
		font-size: 2.4rem;
		position: absolute;
		top: 50%;
		right: 0.7rem;
		transform: translateY(-50%);
	}

	.menu-mobile nav > ul > li:has(ul).on > a:after {
		content: "\e316";
	}

	.menu-mobile nav > ul > li > ul {
		display: none;
		padding: 1rem;
		background: #f7fcff;
		font-size: 1.2rem;
		color: #393939;
	}
	.menu-mobile nav > ul > li.on ul {
		display: block;
		border-top: 1px solid #ccc;
	}

	.menu-mobile nav > ul > li > ul > li {
		padding-top: 0.4rem;
		padding-bottom: 0.4rem;
	}

	.menu-mobile nav > ul > li > ul > li > a:hover {
		color: #00aa6c;
	}

	.menu-mobile .sns-wrap {
		margin-top: auto;
		text-align: center;
		padding-top: 2rem;
	}

	.menu-mobile .copy {
		color: #818181;
		text-align: center;
		font-size: 0.7rem;
		font-weight: 500;
		padding: 1.05rem 0;
	}
}

footer {
	background: url("../images/bg_footer.png") no-repeat 50% 50% / cover;
	text-align: center;
}

footer .area-main {
	position: relative;
}

footer .footer-top {
	padding-top: 5.5rem;
	padding-bottom: 4.5rem;
	text-align: center;
	color: #e4e1d7;
	font-family: "Elice DX Neolli";
}
footer .footer-top .talk-text {
	font-size: 1.3524rem;
	letter-spacing: -0.02705rem;
	font-weight: 300;
	line-height: 1.5;
}
footer .footer-top .talk-button {
	margin-top: 2rem;
	border-radius: 1.2397rem;
	background: #55da55;
	padding: 0.6762rem 3.4rem;
	color: #28251b;
	font-family: "Elice DX Neolli";
	font-size: 1.127rem;
	font-weight: 700;
	line-height: 1.3524rem;
	border: 0;
}
footer .footer-top .talk-text strong {
	font-weight: bold;
}

footer .footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.39);
	padding: 3.6rem 0 2rem;
}

footer .footer-left img {
	margin: 0 1rem;
}
footer .footer-left a:first-child img {
	height: 2.3637rem;
}
footer .footer-left a:last-child img {
	height: 3.45rem;
}

footer p.copy {
	margin-top: 2rem;
	color: #d8d8d8;
	font-size: 1.2rem;
	line-height: normal;
}

footer .footer-right {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: right;
}
footer .footer-right .item-wrap + .item-wrap {
	margin-top: 1.5rem;
}

footer .sns {
	opacity: 0.7;
	margin-left: 0.3rem;
}
footer .sns img {
	height: 2.397rem;
}
footer .mark img {
	width: 4.5rem;
}

@media (max-width: 740px) {
	footer {
	}

	footer .footer-top {
		padding: 2.7rem 0 2rem;
	}
	footer .footer-top .talk-button {
		margin-top: 1rem;
	}

	footer .footer-bottom {
		padding-top: 2rem;
		padding-bottom: 1.65rem;
	}

	footer .footer-left img {
	}
	footer .footer-right {
		position: static;
		transform: none;
		text-align: center;
		margin-top: 2rem;
	}

	footer p.copy {
		margin-top: 1.8rem;
		text-align: center;
	}

	footer .sns img {
		width: 2.86755rem;
		height: 2.86755rem;
	}

	footer .mark img {
		width: 6rem;
	}
}

.pc-view {
	display: block;
}

.mobile-view {
	display: none;
}

@media (max-width: 740px) {
	.pc-view {
		display: none;
	}

	.mobile-view {
		display: block;
	}
}

#app-view {
	margin-top: 5rem;
}

/* 메인 */
@media (max-width: 1240px) {
	.main .area-container {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}

/* 메인 > 비주얼 -------------------------*/
.main-banner {
	position: relative;
}

.visual {
	overflow: hidden;
	position: relative;
	height: 38.7rem;
	background: url("../images/bg_visual.jpg") no-repeat 50% 50% / cover;
	padding-left: 1rem;
	padding-right: 1rem;
}
.visual .area-main {
	height: 100%;
	position: relative;
}
.visual .wrap {
	height: 100%;
}
.visual .text {
	position: relative;
	z-index: 2;
	padding-top: 5.5rem;
	color: #fff;
	font-family: "Elice DX Neolli";
}
.visual .text1 {
	margin-bottom: 1.5rem;
	font-size: 4.75rem;
	font-weight: 600;
	line-height: 1.38;
	letter-spacing: 0.095rem;
}
.visual .text2 {
	margin-bottom: 1.2rem;
	font-size: 1.05rem;
	letter-spacing: 0.021rem;
}
.visual .text3 {
	margin-bottom: 1rem;
	font-size: 1.99195rem;
	font-weight: bold;
	line-height: normal;
	letter-spacing: 0.0398rem;
}
.visual .text4 {
	font-size: 1.16195rem;
	font-weight: bold;
}

.visual .image {
	position: absolute;
	top: 5rem;
	right: -7rem;
}

.visual .object {
	position: absolute;
	z-index: 1;
}
.visual .object1 {
	top: -5rem;
	right: 10.3rem;
	width: 9rem;
	height: 9rem;
	background: url("../images/object1.png") no-repeat 50% 50% / contain;
	animation: floating 4s forwards infinite ease-in-out;
}
.visual .object2 {
	bottom: 4.2rem;
	left: -5rem;
	width: 9.05rem;
	height: 9.8rem;
	background: url("../images/object2.png") no-repeat 50% 50% / contain;
	animation: rotate 20s forwards infinite linear;
	transform-origin: 45% 40%;
}
.visual .object3 {
	bottom: -5rem;
	right: 17.5rem;
	width: 9.2rem;
	height: 9.2rem;
	background: url("../images/object3.png") no-repeat 50% 50% / contain;
	animation: floating 5s 0.5s forwards infinite ease-in-out;
}
.visual .object4 {
	top: -1.5rem;
	left: -2.5rem;
	width: 3.7rem;
	height: 4.05rem;
	background: url("../images/object4.png") no-repeat 50% 50% / contain;
}

.visual-swiper {
	width: 44.3rem;
	height: 28.6rem;
}

.swiper-cube .swiper-cube-shadow:before {
	filter: blur(30px);
}
.visual-swiper > .swiper-wrapper {
	transition-timing-function: linear;
}

.visual-swiper .swiper-slide > div {
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
}

.visual .ribbon {
	position: absolute;
	z-index: 1;
}
.visual .ribbon1 {
	top: 0;
	left: 0;
	width: 4.6rem;
	height: 9.85rem;
	background: url("../images/ribbon1.png") no-repeat 50% 50% / contain;
}
.visual .ribbon2 {
	bottom: -1.8rem;
	left: -11.6rem;
	width: 8.9rem;
	height: 8.85rem;
	background: url("../images/ribbon2.png") no-repeat 50% 50% / contain;
}
.visual .ribbon3 {
	bottom: 0;
	right: 0;
	width: 7.3rem;
	height: 15.3rem;
	background: url("../images/ribbon3.png") no-repeat 50% 50% / contain;
}

@media (max-width: 740px) {
	.visual {
		height: auto;
	}
	.visual .wrap {
		padding: 2.8rem 1.5rem 3.4rem;
	}

	.visual .text {
		padding-top: 0;
	}
	.visual .text1 {
		font-size: 3.8rem;
		margin-bottom: 1rem;
		line-height: 1.2;
	}
	.visual .text2 {
		margin-bottom: 1.2rem;
		font-size: 0.9rem;
		line-height: 1.45;
	}
	.visual .text3 {
		margin-bottom: 0.4rem;
		font-size: 1.5rem;
	}
	.visual .text4 {
		font-size: 0.9rem;
	}

	.visual .image {
		position: relative;
		top: auto;
		right: auto;
		margin-top: 1.7rem;
	}

	.visual-swiper {
		width: 100%;
		height: auto;
		aspect-ratio: 14.45 / 9.3289;
	}

	.visual .object1 {
		top: -1rem;
		right: 4.3rem;
		width: 5.25rem;
		height: 5.25rem;
	}
	.visual .object2 {
		bottom: 2rem;
		left: -2.6rem;
		width: 5.6009rem;
		height: 5.6009rem;
	}
	.visual .object3 {
		bottom: -4rem;
		right: 7.6rem;
		width: 6.5rem;
		height: 6.5rem;
	}
	.visual .object4 {
		display: none;
	}

	.visual .ribbon1 {
		width: 3.5rem;
		height: 7.4rem;
	}
	.visual .ribbon3 {
		width: 4.7rem;
		height: 10rem;
	}
}

.section2 {
	overflow: hidden;
	position: relative;
	height: 38.5rem;
	background: #fff;
	padding-left: 1rem;
	padding-right: 1rem;
}
.section2::after {
	content: "";
	position: absolute;
	top: -4rem;
	left: 14.6rem;
	width: 25.35rem;
	height: 25.35rem;
	background: url("../images/deco_section2.png") no-repeat 50% 50% / contain;
	animation: rotate 25s forwards infinite linear;
}

.section2 .area-main {
	position: relative;
	padding-bottom: 0;
	height: 100%;
	padding-bottom: 4rem;
	display: flex;
	align-items: flex-end;
}

.section2 .image1 {
	width: 22.25rem;
	position: relative;
	z-index: 1;
}

.section2 .text {
	margin-left: 1.5rem;
	margin-bottom: 2rem;
	font-family: "Elice DX Neolli";
	line-height: 1.4;
}
.section2 .text1 {
	margin-bottom: 0.5rem;
	color: #eb008c;
	font-size: 1.125rem;
	font-weight: 500;
	letter-spacing: 1rem;
}
.section2 .text2 {
	margin-bottom: 0.4rem;
	color: #4a4a4a;
	font-size: 2.25rem;
	font-weight: bold;
	letter-spacing: -0.132rem;
}
.section2 .text3 {
	color: #4a4a4a;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: -0.084rem;
}

.section2 .day {
	position: absolute;
	top: 3.45rem;
	right: 0;
	text-align: right;
	display: block;
	font-family: "Elice DX Neolli";
}

.section2 .title {
	margin-bottom: 1rem;
	color: #000;
	font-size: 1.15rem;
	line-height: 1.5;
	font-weight: 300;
	letter-spacing: 0.023rem;
}
.section2 .date {
	font-size: 6.2rem;
	font-weight: 700;
	/* letter-spacing: -0.7531rem; */
	line-height: 1.1;
	/* margin-right: -1rem; */
}
.section2 .day img {
	width: 28.05rem;
}
/* .section2 .number-count2 .odometer-digit {
	margin-right: -0.5rem;
} */
.section2 .txt {
	display: inline-block;
}
.section2 .odometer.odometer-auto-theme,
.section2 .odometer.odometer-theme-default {
	line-height: 1.1;
	font-family: inherit;
}
/* .odometer-digit {
	margin-right: -0.5rem;
}
.odometer-digit-spacer,
.odometer-ribbon {
	width: 10rem;
} */
.odometer-value {
	text-align: inherit !important;
}

@media (max-width: 740px) {
	.section2 {
		height: auto;
		text-align: center;
		padding-top: 2rem;
		padding-bottom: 3rem;
	}
	.section2::after {
		width: 24.3rem;
		height: 24.3rem;
		top: 13.5rem;
		left: -5rem;
	}

	.section2 .area-main {
		display: block;
		padding-bottom: 0;
	}

	.section2 .day {
		position: static;
		max-width: 80%;
		margin: 0 auto;
	}

	.section2 .title {
		font-size: 1rem;
	}
	.section2 .date {
		font-size: 3.6rem;
	}

	/* .odometer-digit {
		margin-right: -0.7rem;
	}
	.odometer-digit-spacer,
	.odometer-ribbon {
		width: 7rem;
	} */

	.section2 .image1 {
		margin-left: 2.5rem;
		width: 25rem;
		margin-top: 1rem;
	}
}

.section3 {
	position: relative;
	height: 21.25rem;
	padding: 4.15rem 0;
	background: #eaf2e1;
	padding-left: 1rem;
}
.section3::after {
	content: "";
	position: absolute;
	left: calc(50% - 5rem);
	bottom: 0;
	width: 32.2rem;
	height: 2.5rem;
	background: url("../images/section3_deco.png") no-repeat 50% 50% / cover;
}
.section3 .area-main {
	height: 100%;
}

.section3 .text {
	padding-left: 2.3rem;
	color: #4faf08;
	font-family: "Elice DX Neolli";
	font-size: 1.9084rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.1145rem;
}

.section3 .image {
	position: absolute;
	top: 0;
	right: 0;
	left: calc(50% - 5rem);
	width: calc(50% + 10rem);
	background: #82c44e;
	transform-origin: center left;
}
.section3 .image img {
	width: 100%;
	height: 16.9rem;
	object-fit: cover;
	object-position: 100% 100%;
}

@media (max-width: 740px) {
	.section3 {
		padding-top: 2.47rem;
		padding-bottom: 4rem;
		padding-left: 0;
		height: auto;
	}
	.section3::after {
		width: 24rem;
		height: 1.8rem;
		left: 50%;
		transform: translateX(-50%);
	}

	.section3 .text {
		font-size: 2.4rem;
		text-align: center;
		padding-left: 0;
	}
	.section3 .image {
		position: static;
		width: auto;
		margin-top: 1rem;
	}
}

.section4 {
	position: relative;
	padding-top: 4.5rem;
	overflow: hidden;
}
.section4::before {
	content: "";
	position: absolute;
	top: -8rem;
	right: -1rem;
	z-index: -1;
	width: 23.27565rem;
	height: 23.31715rem;
	background: url("../images/deco_section4.png") no-repeat 50% 50% / contain;
}

.section4 .main-title {
	text-align: center;
	color: #393939;
	text-align: center;
	font-family: Dinbol;
	font-size: 3.1rem;
	letter-spacing: -0.0775rem;
	line-height: 1.5;
	margin-bottom: 2rem;
}

.section4 .program {
	position: relative;
	text-align: center;
	margin-bottom: 5.25rem;
	padding-left: 1rem;
	padding-right: 1rem;
}
.section4 .program::after {
	content: "";
	position: absolute;
	bottom: -9rem;
	left: 0;
	z-index: -1;
	width: 9.15rem;
	height: 11.25rem;
	background: url("../images/deco2_section4.png") no-repeat 50% 50% / contain;
}
.section4 .program .main-title {
	margin-bottom: 0;
}
.section4 .program .list {
	display: grid;
	gap: 2rem 1.5rem;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 3.15rem;
}
.section4 .program .hover {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	opacity: 0;
	transition: 0.4s;
}
.section4 .program .item {
	position: relative;
}
.section4 .program a:hover .hover {
	opacity: 1;
}
.section4 .program .text {
	margin-top: 1.75rem;
	color: #535353;
	font-size: 1.5rem;
	font-weight: 800;
	letter-spacing: -0.0375rem;
}
.section4 .program a:hover .text {
	color: #f60c69;
}

@media (max-width: 740px) {
	.section4 {
		padding-top: 2.35rem;
	}
	.section4::before {
		top: -3.5rem;
		right: -2rem;
		width: 13.8507rem;
		height: 13.87537rem;
	}
	.section4 .main-title {
		font-size: 2.4rem;
		margin-bottom: 1rem;
	}

	.section4 .program {
		margin-bottom: 1.88rem;
	}
	.section4 .program .list {
		grid-template-columns: repeat(2, 1fr);
		margin-top: 2rem;
	}
	.section4 .program .text {
		margin-top: 1rem;
		font-size: 1.35rem;
	}
}

.section4 .news {
	position: relative;
	margin-bottom: 5rem;
	padding-right: 1rem;
	padding-left: 1rem;
}
.section4 .news::before {
	content: "";
	position: absolute;
	top: -4.69rem;
	right: 0;
	width: 11.8352rem;
	height: 11.5493rem;
	background: url("../images/deco_news.png") no-repeat 50% 50% / contain;
}
.section4 .news::after {
	content: "";
	position: absolute;
	bottom: -11.46em;
	left: 0;
	width: 16.2rem;
	height: 28.8rem;
	background: url("../images/deco2_news.png") no-repeat 50% 50% / contain;
}
.section4 .news .item + .item {
	margin-top: 2rem;
}
.section4 .news .item a {
	display: flex;
	align-items: center;
}
.section4 .news .image {
	flex: 0 0 26.95rem;
}
.section4 .news .image img {
	width: 100%;
	aspect-ratio: 26.95 / 15.5;
	object-fit: cover;
	object-position: center;
	border-radius: 1.5rem;
	border: 1px solid #efefef;
}
.section4 .news .text {
	flex: 1 1 100%;
	min-width: 0;
	padding: 0 4rem;
}
.section4 .news .text-title {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-family: "NanumSquare Neo";
	font-size: 1.95rem;
	font-weight: 800;
	line-height: 1.48;
	letter-spacing: -0.117rem;
}
.section4 .news .text-date {
	margin-top: 1rem;
	font-family: "Elice DX Neolli";
	font-size: 1.25rem;
	font-weight: 500;
}
.section4 .news .item a:hover .text-title {
	text-decoration: underline !important;
	text-underline-offset: 0.4rem;
}
.section4 .news .item:nth-child(2n + 1) .text {
	color: #4faf08;
}
.section4 .news .item:nth-child(2n) .text {
	color: #00aa6c;
}
.section4 .news .item:nth-child(2n) .image {
	order: 2;
}
.section4 .news .item:nth-child(2n) .text {
	order: 1;
}

@media (max-width: 740px) {
	.section4 .news {
		margin-bottom: 2.77rem;
	}
	.section4 .news::before,
	.section4 .news::after {
		display: none;
	}
	.section4 .news .item + .item {
		margin-top: 1.5rem;
	}
	.section4 .news .item a {
		gap: 1.3rem;
	}
	.section4 .news .image {
		flex: 0 0 10.875rem;
	}
	.section4 .news .text {
		padding: 0;
	}
	.section4 .news .item:nth-child(2n) .image,
	.section4 .news .item:nth-child(2n) .text {
		order: 0;
	}

	.section4 .news .text-title {
		font-size: 1.2rem;
		letter-spacing: -0.072rem;
	}
	.section4 .news .text-date {
		font-size: 0.75rem;
		font-weight: 500;
		margin-top: 0.5rem;
	}
}

.section4 .now {
	position: relative;
	text-align: center;
	padding-right: 1rem;
	padding-left: 1rem;
}
.section4 .now::after {
	content: "";
	position: absolute;
	bottom: -8.5rem;
	left: 1.85rem;
	z-index: -1;
	width: 58rem;
	height: 11.1rem;
	background: url("../images/deco_sns.svg") no-repeat 50% 50% / contain;
}
.section4 .now .title {
	margin-bottom: 2.5rem;
}
.section4 .now .image {
	position: relative;
	width: fit-content;
	margin: 0 auto;
	background: #82c44e;
	border-radius: 1.5rem;
}
.section4 .now .image::before {
	content: "";
	position: absolute;
	top: -5.5rem;
	right: -9.15rem;
	z-index: -1;
	width: 22.65rem;
	height: 22.65rem;
	background: url("../images/deco_now.png") no-repeat 50% 50% / contain;
}
.section4 .now .image iframe {
	border-radius: 1.5rem;
	vertical-align: top;
	aspect-ratio: 1268 / 714;
	width: 63.4rem;
	height: auto;
	max-width: 100%;
}

@media (max-width: 740px) {
	.section4 .now::after {
		display: none;
	}
}

/* sns 모아보기 */
.main-sns {
	overflow: hidden;
	padding: 4.25rem 0;
	position: relative;
}
.main-sns::before {
	content: "";
	position: absolute;
	bottom: -8.9rem;
	left: 2.15rem;
	z-index: -1;
	width: 15.5rem;
	height: 15.45rem;
	background: url("../images/deco2_sns.png") no-repeat 50% 50% / contain;
}
.main-sns::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: -1;
	width: 43.8rem;
	height: 6.54rem;
	background: url("../images/deco_sns.svg") no-repeat 50% 50% / contain;
}
.main-sns .area-main {
	display: flex;
	align-items: center;
}
.main-sns .head {
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	margin-right: 3rem;
	z-index: 3;
	height: 19rem;
	background: #00aa6c;
	border-radius: 0rem 4.95rem 1.85rem 0rem;
	box-shadow: 11px 8px 14.3px 0px rgba(0, 0, 0, 0.09);
	color: #fff;
	font-family: "Elice DX Neolli";
	padding: 2.85rem 4.25rem 1.57rem 3rem;
	text-align: right;
}
.main-sns .head::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 2000px;
	background: #00aa6c;
	/* box-shadow: 0 8px 14.3px 0px rgba(0, 0, 0, 0.09); */
}
.main-sns .head .title {
	font-size: 1.7357rem;
	font-weight: 300;
}
.main-sns .head .title strong {
	font-size: 2.46145rem;
	font-weight: bold;
}

.main-sns .category {
	margin-top: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0 0.45rem;
}
.main-sns .category button {
	width: 2.0314rem;
	height: 2.0314rem;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
	background-color: transparent;
	border: 0;
}
.main-sns .category .instagram {
	background-image: url("../images/icon_sns_in.svg");
}
.main-sns .category .instagram.on {
	background-image: url("../images/icon_sns_in_on.svg");
}
.main-sns .category .youtube {
	background-image: url("../images/icon_sns_you.svg");
}
.main-sns .category .youtube.on {
	background-image: url("../images/icon_sns_you_on.svg");
}
.main-sns .category .facebook {
	background-image: url("../images/icon_sns_face.svg");
}
.main-sns .category .facebook.on {
	background-image: url("../images/icon_sns_face_on.svg");
}
.main-sns .category .blog {
	background-image: url("../images/icon_sns_blog.svg");
}
.main-sns .category .blog.on {
	background-image: url("../images/icon_sns_blog_on.svg");
}

.main-sns .sns-controls {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0 0.5rem;
}
.main-sns .sns-controls button {
	border: 0;
	background: none;
	width: 1.7404rem;
	height: 1.7404rem;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
}
.main-sns .sns-controls .sns-prev {
	background-image: url("../images/sns_prev.svg");
}
.main-sns .sns-controls .sns-next {
	background-image: url("../images/sns_next.svg");
}
.main-sns .sns-controls .sns-pause {
	width: 1.04425rem;
	height: 1.04425rem;
	background-image: url("../images/sns_pause.svg");
}
.main-sns .sns-controls .sns-play {
	width: 1.04425rem;
	height: 1.04425rem;
	background-image: url("../images/sns_play.svg");
}

.main-sns .head .more {
	margin-top: 0.8rem;
}
.main-sns .head .more a {
	display: none;
	padding: 0.33335rem 0.55555rem 0.33335rem 0.8889rem;
	justify-content: center;
	align-items: center;
	gap: 0.3889rem;
	border-radius: 1.7778rem;
	background: #008c59;
	color: rgba(255, 255, 255, 0.95);
	font-family: "Elice DX Neolli";
	font-size: 0.6111rem;
	font-weight: 500;
	line-height: 1.5;
}
.main-sns .head .more a.on {
	display: inline-flex;
}

.main-sns .list {
	padding-top: 1rem;
	flex: 1 1 100%;
	min-width: 0;
}

.sns-swiper {
	overflow: visible;
	display: none;
}
.sns-swiper.on {
	display: block;
}
.sns-swiper .embla__container {
	align-items: center;
}
.sns-swiper .embla__slide {
	margin-right: 60px;
}
.sns-swiper .embla__slide a {
	overflow: hidden;
	display: block;
	position: relative;
	width: 12.75rem;
	height: 13.5303rem;
	box-shadow: 11px 8px 14.3px 0px rgba(0, 0, 0, 0.09);
	border: 1px solid #e1e1e1;
	transform-origin: center center;
}
.sns-swiper .embla__slide.slide1 a {
	border-radius: 6.35315rem;
}
.sns-swiper .embla__slide.slide2 a {
	transform: rotate(15deg);
}
.sns-swiper .embla__slide.slide3 a {
	border-radius: 6.35315rem;
	height: 15.85rem;
}
.sns-swiper .embla__slide.slide4 a {
	transform: rotate(-20deg);
	border-radius: 2.74635rem;
}
.sns-swiper .embla__slide img {
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
}

.sns-swiper .hover {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: 0.4s;
	background: linear-gradient(147deg, rgba(255, 184, 2, 0.72) -0.37%, rgba(255, 0, 199, 0.72) 53.12%, rgba(204, 0, 255, 0.72) 93.89%);
	color: #fff;
	font-size: 1.301rem;
	font-weight: 900;
}
.sns-swiper .embla__slide.slide2 .hover i,
.sns-swiper .embla__slide.slide2 .hover span {
	transform: rotate(-15deg);
	transform-origin: center;
}
.sns-swiper .embla__slide.slide4 .hover i,
.sns-swiper .embla__slide.slide4 .hover span {
	transform: rotate(20deg);
	transform-origin: center;
}
.sns-swiper .embla__slide.slide2 .hover i {
	margin-left: -1.2rem;	
}
.sns-swiper .embla__slide.slide4 .hover i {
	margin-left: 1.1rem;	
}
.sns-swiper .hover i {
	width: 2.3rem;
	height: 2.3rem;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
	margin-bottom: 0.35rem;
}
.sns-swiper .hover .icon-instagram {
	background-image: url("../images/icon_sns_insta_hover.svg");
}
.sns-swiper .hover .icon-youtube {
	background-image: url("../images/icon_sns_you_hover.svg");
}
.sns-swiper .hover .icon-facebook {
	background-image: url("../images/icon_sns_face_hover.svg");
}
.sns-swiper .hover .icon-blog {
	background-image: url("../images/icon_sns_blog_hover.svg");
}
.sns-swiper .embla__slide:hover .hover {
	opacity: 1;
}

@media (max-width: 740px) {
	.main-sns {
		padding: 0;
		margin-top: 1.55rem;
	}
	.main-sns::before,
	.main-sns::after {
		display: none;
	}
	.main-sns .head {
		padding: 2.5rem 0 1.5rem;
		border-radius: 0;
		box-shadow: none;
		height: 34.525rem;
		align-items: center;
		margin-right: 0;
		flex: 1 1 100%;
	}
	.main-sns .head::before {
		display: none;
	}

	.main-sns .list {
		position: absolute;
		top: 9.65rem;
		z-index: 4;
		left: 0;
		right: 0;
	}
	.sns-swiper .embla__slide {
		margin-right: 30px;
	}
}

/* 지난 사이트 보기 */
.section-link {
	border-top: 2px solid #362376;
	background: #fff;
	display: flex;
}
.section-link .main-link-title {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 27.6875%;
	padding: 1.5rem 0;
	background: #362376;
	color: #fff;
	text-align: center;
	font-family: "Elice DX Neolli";
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: -0.03rem;
}
.section-link .main-link-list {
	flex: 1 1 100%;
	min-width: 0;
	padding: 1.5rem 2.85rem;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.section-link .main-link-list a {
	display: inline-flex;
	margin-right: 2rem;
	align-items: center;
	color: #362376;
	font-family: "Elice DX Neolli";
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: -0.032rem;
	line-height: 1.4;
}
.section-link .main-link-list a:hover span {
	text-decoration: underline !important;
	text-underline-offset: 0.4rem;
}
.section-link .main-link-list a::after {
	content: "\f14c";
	font-family: "Font Awesome 5 Pro";
	font-weight: bold;
	margin-left: 0.95rem;
	font-size: 1.8rem;
}

@media (max-width: 740px) {
	.section-link {
		display: block;
	}
	.section-link .main-link-title {
		padding: 1.2rem 0;
	}
	.section-link .main-link-list {
		padding: 1.3rem 0;
		text-align: center;
		justify-content: center;
	}
}

/* main list -------------------------*/
.main-list {
	padding: 5rem 0;
	font-family: "GmarketSans";
}

.main-list-container {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2.25rem 1.6rem;
}

.main-list-container li {
	overflow: hidden;
	position: relative;
	border-width: 5px;
	border-style: solid;
	box-shadow: 4.987px 11.97px 19.55px 0px rgba(0, 0, 0, 0.17), 0px 3.99px 3.99px 0px rgba(0, 0, 0, 0.25), 0.997px -0.997px 0px 0px rgba(0, 0, 0, 0.17);
}
.main-list-container li.forum {
	border-color: var(--forum-color);
}
.main-list-container li.exhibition {
	border-color: var(--exhibition-color);
}
.main-list-container li.etc {
	border-color: var(--etc-color);
}
.main-list-container li.sport {
	border-color: var(--sport-color);
}
.main-list-container li.show {
	border-color: var(--show-color);
}

.main-list-container a {
	display: block;
}
.main-list-container a:focus-visible {
	border: 2px solid #000;
}
.main-list-container a:focus:not(:focus-visible) {
	border: none;
}

.main-list-container img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: center;
	transition: 0.6s;
}

.main-list-container a:hover img {
	transform: scale(1.05);
}

.main-list-container .item-contents {
	position: absolute;
	bottom: 1.5rem;
	left: 0;
	width: 90%;
	background: rgba(255, 255, 255, 0.9);
	padding: 1.2rem 1rem 0.8rem;
}

.main-list-container .item-contents .badge {
	position: absolute;
	top: -0.7rem;
	left: 1rem;
	min-width: 2.9rem;
	height: 1.4rem;
	line-height: 1.4rem;
	padding: 0 0.6rem;
	font-size: 0.6rem;
	color: #fff;
	text-align: center;
	font-weight: bold;
}

.main-list-container li.forum .badge {
	background-color: var(--forum-color);
}
.main-list-container li.exhibition .badge {
	background-color: var(--exhibition-color);
}
.main-list-container li.etc .badge {
	background-color: var(--etc-color);
}
.main-list-container li.sport .badge {
	background-color: var(--sport-color);
}
.main-list-container li.show .badge {
	background-color: var(--show-color);
}

.main-list-container .item-contents .date {
	color: #000;
	font-size: 0.65rem;
	font-weight: 500;
}

.main-list-container .item-contents .title {
	color: #000;
	font-size: 1.2rem;
	font-weight: 500;
}

@media (max-width: 740px) {
	.main-list {
		padding: 1rem 0;
	}

	.main-list-container {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 1rem;
	}

	.main-list-container li {
		box-shadow: 2px 5px 10px 0px rgba(0, 0, 0, 0.17), 0px 2px 2px 0px rgba(0, 0, 0, 0.25), 0.5px -0.5px 0px 0px rgba(0, 0, 0, 0.17);
	}

	.main-list-container img {
		aspect-ratio: 16 / 9;
	}

	.main-list-container .item-contents .title {
		font-size: 1.4rem;
	}
}

/* 메인 > deco -------------------------*/
.main-deco {
	position: relative;
	height: 5rem;
	overflow: hidden;
}

.main-deco::before,
.main-deco::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	height: 0.25rem;
	background: linear-gradient(90deg, #ff6427 24.28%, #020202 24.41%, #020202 40.05%, #004097 40.18%, #004097 62.09%, #6d6d6d 62.22%, #6d6d6d 74.6%, #80c84b 74.87%, #80c84b 100%);
}
.main-deco::before {
	top: 0;
}
.main-deco::after {
	bottom: 0;
}

.main-deco-container {
	white-space: nowrap;
	display: flex;
	animation-name: marquee;
	animation-duration: 34s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
	transform: translateX(0);
}

.main-deco:hover .main-deco-container {
	animation-play-state: paused;
}

.main-deco-text {
	margin-right: 1rem;
	color: rgba(207, 221, 242, 0.6);
	font-family: "GmarketSans";
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	line-height: 5.4rem;
}

@keyframes marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}

/* 메인 > 행사일정 ---------------------*/
.main-cal {
	padding: 5rem 0;
	background-color: #e7eff8;
	font-family: "GmarketSans";
}

.main-cal .area-container {
	display: flex;
	align-items: flex-end;
}

.main-cal .main-cal-left {
	flex: 0 0 23rem;
	margin-right: 1.5rem;
}

.main-cal .main-cal-title {
	position: relative;
	margin-bottom: 0.5rem;
	text-align: right;
	color: #434a54;
	font-size: 2.9403rem;
	font-weight: 300;
	line-height: 1.09;
	letter-spacing: 0.1176rem;
}
.main-cal .main-cal-title::before {
	content: "";
	position: absolute;
	bottom: -1.55rem;
	left: 1.8rem;
	width: 11.2rem;
	height: 10.4rem;
	background: url(../images/icon_main_cal.svg) no-repeat 50% 50% / contain;
}

[lang="en"] .main-cal .main-cal-title::before {
	bottom: 5rem;
}

.main-cal .vc-container {
	--vc-font-family: "Pretendard";
}
.main-cal .vc-bordered {
	border-radius: 0;
	border-color: #b8c2d5;
}
.main-cal .vc-header {
	border-bottom: 1px solid #dcdcdc;
	margin-top: 0;
	height: 2.8rem;
	grid-gap: 0;
	padding: 0 1rem;
}
.main-cal .vc-header .vc-title {
	color: #000;
	font-size: 0.9rem;
	background: none;
	font-weight: 400;
	line-height: 1.2;
	display: block;
	padding: 0;
}
.main-cal .vc-header .vc-title:hover,
.main-cal .vc-header .vc-title:focus {
	background: rgb(240, 240, 240);
	opacity: 1;
}
.main-cal .vc-header .vc-title strong {
	color: #436bd1;
	font-size: 1.4rem;
	margin-right: 4px;
}
.main-cal .vc-header .vc-arrow {
	width: 1.4rem;
	height: 1.4rem;
	border-radius: 50%;
	color: #fff;
	background: #424242;
	margin-left: 0.5rem;
}
.main-cal .vc-header .vc-arrow:hover {
	background: #000;
}
.main-cal .vc-header .vc-arrow.vc-prev {
	padding-right: 4px;
}
.main-cal .vc-header .vc-arrow.vc-next {
	padding-left: 4px;
}
.main-cal .vc-monthly .is-not-in-month * {
	display: none;
}
.main-cal .vc-weeks {
	padding: 0.3rem;
}
.main-cal .vc-weekday {
	padding-top: 10px;
	padding-bottom: 10px;
	color: #000;
	font-size: 0.7rem;
	font-weight: 600;
}
.main-cal .vc-week + .vc-week {
	margin-top: 10px;
}
.main-cal .vc-day {
	/* padding: 5px; */
}
.main-cal .vc-day-content {
	width: 2.5rem;
	height: 2.5rem;
	line-height: 2.5rem;
	border-radius: 0.5rem;
	font-size: 0.7rem;
	font-weight: bold;
}
.main-cal .vc-day-content:hover,
.main-cal .vc-on {
	background: #e2f1ff;
}
.main-cal .is-today .vc-day-content {
	background: #fff2c3;
}
.main-cal .vc-day-layer {
	padding-bottom: 5px;
}
.main-cal .vc-dot {
	width: 0.3rem;
	height: 0.3rem;
}
.main-cal .vc-dot:not(:last-child) {
	margin-right: 2px;
}
.main-cal .vc-dot.vc-forum {
	background-color: var(--forum-color);
}
.main-cal .vc-dot.vc-exhibition {
	background-color: var(--exhibition-color);
}
.main-cal .vc-dot.vc-etc {
	background-color: var(--etc-color);
}
.main-cal .vc-dot.vc-sport {
	background-color: var(--sport-color);
}
.main-cal .vc-dot.vc-show {
	background-color: var(--show-color);
}
.main-cal .vc-popover-content {
	background: #fff;
}
.main-cal .vc-popover-content button {
	font-family: "Pretendard";
}

.main-cal .main-cal-right {
	flex: 1 1 auto;
	min-width: 0;
}

.main-cal-nodata {
	padding: 7.65rem 0;
	text-align: center;
	color: rgba(46, 46, 46, 0.54);
	font-family: "GmarketSans";
	font-size: 1.247rem;
	font-weight: 700;
	line-height: 1.66;
}

.main-cal-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 0.8rem;
}
.main-cal-controls .cal-pagination {
	width: auto;
	color: #393939;
	font-size: 1.0328rem;
	font-weight: 500;
	letter-spacing: 0.0413rem;
	margin: 0 1rem;
}
.main-cal-controls .cal-pagination .swiper-pagination-current {
	color: #3864d4;
}
.main-cal-controls .cal-pagination .bul {
	font-size: 0.8951rem;
	font-weight: 300;
	margin: 0 0.4rem;
}
.main-cal-controls .cal-prev,
.main-cal-controls .cal-next {
	border: 0;
	background: none;
	color: #3c78eb;
}
.main-cal-controls .cal-prev span,
.main-cal-controls .cal-next span {
	font-size: 1.6rem;
}

.main-cal-list .swiper-wrapper {
	align-items: flex-end;
}

.main-program-box {
	border: 1px solid #b8c2d5;
	background: #fff;
}
.main-program-box + .main-program-box {
	margin-top: 0.8rem;
}
.main-program-box a {
	display: flex;
	align-items: center;
	padding: 1.2rem;
}
.main-program-box a:hover .item-contents .title {
	color: #436bd1;
}
.main-program-box .item-image {
	flex: 0 0 auto;
	width: 10.25rem;
	height: 5.7rem;
	margin-right: 1.15rem;
}
.main-program-box .item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 0.38235rem;
}
.main-program-box .item-badge {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	margin-right: 0.82rem;
	padding: 0.3rem 0.2rem 0;
	border-radius: 50%;
	color: #fff;
	font-size: 0.8873rem;
	font-weight: 700;
	letter-spacing: -0.0355rem;
	word-break: break-all;
	text-align: center;
	line-height: 1.1;
}
.main-program-box .item-badge.forum {
	background-color: var(--forum-color);
}
.main-program-box .item-badge.exhibition {
	background-color: var(--exhibition-color);
}
.main-program-box .item-badge.etc {
	background-color: var(--etc-color);
}
.main-program-box .item-badge.sport {
	background-color: var(--sport-color);
}
.main-program-box .item-badge.show {
	background-color: var(--show-color);
}
.main-program-box .item-contents {
	flex: 1 1 auto;
	min-width: 0;
}
.main-program-box .item-contents .date {
	margin-bottom: 0.5rem;
	color: #436bd1;
	font-size: 0.67145rem;
	font-weight: 700;
	line-height: normal;
	font-weight: 400;
}
.main-program-box .item-contents .title {
	color: #393939;
	font-size: 1.247rem;
	font-weight: 700;
	line-height: normal;
}
.main-program-box .item-arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.96rem;
	height: 1.96rem;
	border: 1px solid #dfdfdf;
	border-radius: 50%;
}
.main-program-box .item-arrow span {
	color: #8b8b8b;
	font-size: 1rem;
}

@media (max-width: 740px) {
	.main-cal {
		padding: 1.5rem 0;
	}
	.main-cal .area-container {
		display: block;
	}

	.main-cal .main-cal-left {
		margin-right: 0;
	}

	.main-cal .main-cal-title {
		text-align: center;
		font-size: 2.2459rem;
	}
	.main-cal .main-cal-title br {
		display: none;
	}
	.main-cal .main-cal-title::before {
		display: none;
	}

	.main-cal .vc-weekday {
		font-size: 0.9rem;
	}

	.main-cal .vc-day-content {
		font-size: 0.9rem;
	}

	.main-cal-nodata {
		padding: 3rem 0 1.5rem;
	}

	.main-cal-list .swiper-wrapper {
		display: block;
		height: auto !important;
	}
	.main-cal-list .swiper-slide {
		width: auto !important;
		margin-right: 0 !important;
	}
	.main-cal-list .swiper-slide + .swiper-slide {
		margin-top: 0.8rem;
	}

	.main-program-box a {
		display: block;
	}
	.main-program-box .item-image {
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
	}
	.main-program-box .item-image img {
		border-radius: 0.4953rem;
	}
	.main-program-box .item-badge {
		position: relative;
		margin: -1.8rem auto 1rem;
	}
	.main-program-box .item-contents .date {
		font-size: 0.9rem;
	}
	.main-program-box .item-contents .title {
		font-size: 1.6rem;
	}
	.main-program-box .item-arrow {
		display: none;
	}
}

/* 메인 > 공지사항 ---------------------*/
.main-notice {
	font-family: "GmarketSans";
}

.main-notice .area-container {
	display: flex;
	align-items: center;
	padding: 0;
}

.main-notice-title {
	flex: 0 0 auto;
	background: #436bd1;
	color: #fff;
	font-size: 1.25rem;
	font-weight: bold;
	padding: 0.8rem 1.6rem 0.4rem;
	border-radius: 10rem;
	margin-right: 1.8rem;
}

.main-notice-list {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: center;
	position: relative;
}

.main-notice-list .swiper {
	height: 7rem;
}

.main-notice-list .swiper-slide {
	width: 50%;
	display: flex;
	align-items: center;
	padding-right: 1rem;
}

.main-notice-list a {
	display: block;
	min-width: 0;
	flex: 1 1 100%;
}

.main-notice-list .date {
	display: block;
	font-size: 0.7rem;
	margin-bottom: 0.5rem;
}

.main-notice-list .title {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 1.2rem;
}

.main-notice-option {
	flex: 0 0 auto;
	line-height: 1;
}

.main-notice-option .notice-prev,
.main-notice-option .notice-next {
	background: none;
	border: 0;
}
.main-notice-option .material-symbols-outlined,
.main-notice-option .material-symbols-outlined {
	font-size: 2rem;
}

@media (max-width: 740px) {
	.main-notice .area-container {
		display: block;
	}

	.main-notice-title {
		border-radius: 0;
		text-align: center;
		margin-right: 0;
	}

	.main-notice-list {
		padding-left: 3rem;
		padding-right: 3rem;
		text-align: center;
	}

	.main-notice-list .swiper-slide {
		padding-right: 0;
	}

	.main-notice-option .notice-prev,
	.main-notice-option .notice-next {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

	.main-notice-option .notice-prev {
		left: 0;
	}
	.main-notice-option .notice-next {
		right: 0;
	}

	.main-notice-option .material-symbols-outlined,
	.main-notice-option .material-symbols-outlined {
		color: #a1a1a1;
	}
}

/* 알림톡 */
.fixed-menu {
	position: fixed;
	top: 7.8rem;
	right: 0;
	z-index: 10;
	border-radius: 1.3rem 0rem 0rem 1.3rem;
	border: 1.5px solid #6eba36;
	border-right: 0;
	background: #fff;
	box-shadow: 4px 7px 11.3px 0px rgba(0, 0, 0, 0.17);
	padding: 0.6rem 0.55rem 0.85rem 1.2rem;
	text-align: center;
}
.fixed-menu .btn-menu {
	border: 0;
	background: none;
	vertical-align: top;
}
.fixed-menu .text {
	margin-top: 0.35rem;
	color: #404040;
	font-family: "Elice DX Neolli";
	font-size: 0.7299rem;
	font-weight: 700;
	line-height: normal;
	padding-right: 0.4rem;
}
.fixed-menu img {
	width: 3.2rem;
}

@media (max-width: 740px) {
	.fixed-menu {
		top: 12rem;
		box-shadow: 3.315px 5.801px 9.364px 0px rgba(0, 0, 0, 0.17);
		padding: 0.5rem 0.45rem 0.75rem 1rem;
	}
	.fixed-menu img {
		width: 2.6rem;
	}
	.fixed-menu .text {
		font-size: 0.7rem;
	}
}

/* sub header ---------------------------------------------------------------- */

.sub-header {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 14.6rem;
	position: relative;
}

.sub-header h1 {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	min-width: 0;
	color: #fff;
	font-family: "GmarketSans";
	padding: 1.8rem 1rem 1rem;
	font-size: 3rem;
	font-weight: 700;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	line-height: 1.2;
	text-align: center;
	text-wrap: balance;
}

.sub-header .menu {
	flex: 0 0 auto;
	display: table;
	width: 100%;
	padding-left: 1rem;
	padding-right: 1rem;
}

.sub-header .menu > ul {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 1200px;
}

.sub-header .menu > ul > li {
	display: inline-block;
	white-space: nowrap;
	text-align: left;
	color: #fff;
	padding: 0.5rem 1.8rem 0.5rem 0;
	vertical-align: middle;
	opacity: 1;
	font-size: 0.8rem;
	font-weight: 600;
	vertical-align: middle;
	position: relative;
}

.sub-header .menu > ul > li:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0.8rem;
	vertical-align: middle;
	font-weight: normal;
	width: 0.2rem;
	height: 0.2rem;
	margin-top: -0.1rem;
	border-radius: 50%;
	background: currentColor;
}

.sub-header .menu > ul > li:nth-child(1) {
	width: auto;
}

.sub-header .menu > ul > li:nth-child(1) span {
	font-size: 1rem;
	padding-bottom: 0.1rem;
	vertical-align: middle;
	font-variation-settings: "FILL" 1, "wght" 200, "GRAD" 0, "opsz" 40;
}

.sub-header .menu > ul > li:nth-child(2) {
	line-height: 100%;
	padding-top: 0.5rem;
	width: auto;
}

.sub-header .menu > ul > li:nth-child(3) {
	line-height: 100%;
	padding-top: 0.5rem;
}

.sub-header .menu > ul > li:last-child:after {
	content: none;
}

@media (max-width: 740px) {
	.sub-header {
		min-height: 10.8rem;
	}

	.sub-header h1 {
		font-size: 2.4rem;
		line-height: 140%;
	}
}

/* sub content ----------------------------------------------------------------*/

.sub-cont {
	display: table;
	margin-top: 0rem;
	padding-bottom: 12rem;
	width: 100%;
	position: relative;
}

.sub-cont > h1 {
	display: table;
	margin: 0 auto;
	padding: 7rem;
	text-align: center;
	width: 100%;
	font-size: 2.5rem;
	position: relative;
	font-weight: 600;
}

.sub-cont:before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
	background: url(../images/sub_ribbon_left.png);
	background-position: top right;
	background-size: 100% 100%;
	width: 50vw;
	height: 20vw;
	max-width: 860px;
	max-height: 242px;
	transform: rotate(-180deg);
}

.sub-cont:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
	background: url(../images/sub_ribbon_right.png);
	background-position: top left;
	background-size: 100% 100%;
	width: 40vw;
	height: 20vw;
	max-width: 580px;
	max-height: 230px;
	transform: rotate(-180deg);
}

.sub-cont > .area-basic:first-child {
	margin-top: 3.5rem;
}

@media (max-width: 1240px) {
	.sub-cont {
		padding-left: 1rem;
		padding-right: 1rem;
		padding-bottom: 7rem;
	}
}
@media (max-width: 740px) {
	.sub-cont > h1 {
		padding: 3rem 0;
		font-size: 2rem;
	}

	.sub-cont > h1:before {
		content: "";
		width: 30vw;
		height: 6rem;
		display: block;
		background: url(../images/sub_ribbon_left.png);
		background-position: top left;
		background-size: cover;
		left: -1rem;
	}

	.sub-cont > h1:after {
		content: "";
		width: 30vw;
		height: 6rem;
		display: block;
		background: url(../images/sub_ribbon_right.png);
		background-position: top left;
		background-size: cover;
		right: -1rem;
	}

	.sub-cont > .area-basic:first-child {
		margin-top: 1rem;
	}
}

.usr-list-1 {
	display: table;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.usr-list-1 > li {
	display: table;
	width: 100%;
	text-align: left;
	padding: 3.5rem 0;
	border-bottom: 1px solid #ccc;
}

.usr-list-1 > li:last-child {
	border-bottom: none;
}

.usr-list-1 > li.view {
	border-bottom: none;
}

.usr-list-1 > li .img {
	margin-bottom: 3rem;
}

.usr-list-1 > li .area-sub {
	vertical-align: top;
}

.usr-list-1 > li .area-sub.right {
	text-align: left;
}

.usr-list-1 > li .detail dt {
	display: block;
	width: 100%;
	font-weight: 700;
	font-size: 1.9rem;
	font-family: "GmarketSans";
}

.usr-list-1 > li .detail dd {
	display: block;
	width: 100%;
	font-weight: 400;
	font-size: 1rem;
	margin-top: 1.5rem;
	word-break: keep-all;
	white-space: normal;
}

.usr-list-1 > li .sebu {
	display: flex;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 0.7rem 0;
}
.usr-list-1 > li .sebu + .sebu {
	border-top: none;
}
.usr-list-1 > li .sebu > div {
	display: flex;
	width: 100%;
}

.usr-list-1 > li .sebu dt {
	flex: 0 0 auto;
	font-weight: 600;
	font-size: 1.1rem;
	padding-right: 1rem;
	white-space: nowrap;
	vertical-align: top;
}

.usr-list-1 > li .sebu dd {
	flex: 1 1 auto;
	min-width: 0;
	font-weight: 400;
	font-size: 1rem;
	color: #4a4a4a;
}

.usr-list-1 .usr-button-1 {
	margin-top: 2rem;
}

.usr-list-1 > li .area-sub.left {
	width: 50%;
	padding-right: 2rem;
}

.usr-list-1 > li .area-sub.right {
	padding-left: 2rem;
	width: 50%;
}

.usr-list-1 > li .area-sub.right .detail {
	margin-bottom: 2rem;
}

@media (max-width: 740px) {
	.usr-list-1 > li {
		padding: 1rem 0;
	}

	.usr-list-1 > li .area-sub.left {
		display: table;
		width: 100%;
		padding-right: 0;
	}

	.usr-list-1 > li .area-sub.right {
		display: table;
		width: 100%;
		padding-left: 0;
		padding-top: 2rem;
	}
}

.usr-list-2 {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
}

.usr-list-2 > li {
	background: #fff;
}

.usr-list-2 > li > div {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	display: block;
	width: 100%;
	position: relative;
	overflow: hidden;
	border: 1px solid #c2c2c2;
	padding-bottom: 5rem;
}

.usr-list-2 > li > div .img-zoom img {
	width: 100%;
	height: 100%;
	transform: scale(1);
	aspect-ratio: 1 / 0.8;
	margin: 0;
	object-fit: cover;
	object-position: center;
}

.usr-list-2 > li:hover > div img {
	transform: scale(1.05);
	transition: transform 0.6s;
}
.usr-list-2 > li a {
	display: block;
	height: 100%;
}
.usr-list-2 > li a:focus-visible {
	border: 3px solid #000;
}
.usr-list-2 > li a:focus:not(:focus-visible) {
	border: none;
}

.usr-list-2 > li > div > dl {
	position: absolute;
	bottom: 1rem;
	left: 2.6rem;
	right: 2.6rem;
	display: block;
	padding: 1.2rem 1.9rem;
	background-color: #fff;
	color: #393939;
}

.usr-list-2 > li > div > dl > dt {
	font-weight: 600;
	font-size: 1.2rem;
	font-family: "GmarketSans";
	word-break: keep-all;
	overflow-wrap: break-word;
	line-height: 1.4;
	min-height: 2.8em;
}

.usr-list-2 > li > div > dl > dd {
	font-weight: 300;
	font-size: 0.9rem;
	margin-top: 0.2rem;
}

@media (max-width: 740px) {
	.usr-list-2 {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 1rem;
	}
}

.usr-list-3 {
	border-top: 2px solid var(--sport-color);
	border-bottom: 2px solid var(--sport-color);
	margin-bottom: 2rem;
}

.usr-list-3 > ul > li {
	padding: 1rem;
	border-bottom: 1px solid #ccc;
}

.usr-list-3 > ul.area-devide.num-2 > li:nth-of-type(2n + 0) {
	margin-right: 0%;
}
.usr-list-3 > ul.area-devide.num-2 > li:nth-of-type(2n + 1) {
	margin-top: 0rem;
	clear: both;
}
.usr-list-3 > ul.area-devide.num-2 > li:nth-of-type(2n + 2) {
	margin-top: 0rem;
}

.usr-list-3 > ul > li > dl {
	display: table;
	width: 100%;
	font-size: 1.2rem;
}

.usr-list-3 > ul > li > dl > dt {
	display: table-cell;
	width: 30%;
	word-break: break-all;
	font-weight: 700;
	vertical-align: top;
}

.usr-list-3 > ul > li > dl > dd {
	display: table-cell;
	width: 70%;
	word-break: break-all;
}

.usr-list-3 > ul > li > dl.double {
	width: 45%;
	display: inline-block;
}

.usr-list-3 > ul > li > dl.double dt {
	width: 100%;
	display: block;
}
.usr-list-3 > ul > li > dl.double dd {
	width: 100%;
	display: block;
}

.usr-list-3 > ul > li > dl.double dd img {
	height: 4rem;
	float: left;
}

.usr-list-3 > ul > li > dl.double.custom2 {
	width: 100%;
	display: block;
}

.usr-list-3 > ul > li > dl.double.custom2 dt {
	width: 100%;
	display: block;
}

.usr-list-3 > ul > li > dl.double.custom2 dd {
	width: 100%;
	display: block;
}

.usr-list-3 > ul > li > dl.double.custom2 dd img {
	height: 4rem;
	display: inline-block;
}

.usr-list-3 > ul > li > dl.double.custom2 dd img.right {
	float: right;
}

.usr-list-4 {
	display: table;
	width: 100%;
}

.usr-list-4 h5 {
	font-size: 1.5rem;
	color: #e37331;
}

.usr-list-4 > ul {
	display: table;
	width: 100%;
}

.usr-list-4 > ul > li {
	padding-left: 1rem;
	padding-right: 1rem;
	display: table-cell;
	float: none;
	vertical-align: top;
}
.usr-list-4 > ul > li:nth-child(1) {
	padding-top: 0;
}

.usr-list-4 > ul > li:nth-child(2) {
	padding-top: 2rem;
}

.usr-list-4 > ul > li:nth-child(3) {
	padding-top: 0;
}

.usr-list-4.custom-1 > ul > li:nth-child(1) {
	padding-top: 2rem;
}

.usr-list-4.custom-1 > ul > li:nth-child(2) {
	padding-top: 0;
}

.usr-list-4.custom-1 > ul > li:nth-child(3) {
	padding-top: 2rem;
}

.usr-list-4 > ul > li img {
	box-shadow: 10px 10px 23px -2px rgba(0, 0, 0, 0.45);
	-webkit-box-shadow: 10px 10px 23px -2px rgba(0, 0, 0, 0.45);
	-moz-box-shadow: 10px 10px 23px -2px rgba(0, 0, 0, 0.45);
	border-radius: 30px;
}

.usr-list-5 figure {
	display: inline-block;
	width: 33%;
}

.usr-list-5 figure img {
	width: 100%;
}

.usr-list-5 figure figcaption {
}

.usr-list-paging {
	display: block;
	white-space: nowrap;
	text-align: center;
}

.usr-list-paging li {
	display: inline-block;
	font-size: 0.9rem;
	margin-right: 0.2rem;
	position: relative;
	width: 1.7rem;
	height: 1.7rem;
	vertical-align: middle;
	text-align: center;
}

.usr-list-paging li.icon span {
	position: absolute;
	text-indent: -100px;
	overflow: hidden;
}

.usr-list-paging li.icon:after {
	font-family: "Material Icons";
	content: "\e5cb";
	position: absolute;
	display: block;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	border: 1px solid #ccc;
	width: 1.7rem;
	height: 1.7rem;
}

.usr-list-paging li.prev:after {
	font-family: "Material Icons";
	content: "\e5cb";
}

.usr-list-paging li.next:after {
	font-family: "Material Icons";
	content: "\e409";
}

.usr-list-paging li:hover {
	background-color: #000;
	color: #fff;
}

.usr-box-1 {
	border: 1px solid #ccc;
}

.usr-box-1 figure {
	text-align: center;
}

.usr-box-1 figure figcaption {
	text-align: left;
	display: table;
}

.usr-box-1 figure figcaption dl {
	display: table-cell;
	width: 50%;
	position: 1rem;
	padding: 1rem;
	text-align: left;
	vertical-align: top;
	color: #fff;
}

.usr-box-1 figure figcaption dl dt {
	font-size: 1.1rem;
	margin-bottom: 1rem;
	display: block;
}

.usr-box-1 figure figcaption dl dd {
	font-size: 1rem;
	display: block;
	line-height: 130%;
}

.icon-cal:before {
	content: "\ebcc";
	font-family: "Material Symbols Outlined";
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
	color: #219bd0;
	font-variation-settings: "FILL" 1, "wght" 200, "GRAD" 0, "opsz" 40;
}

.icon-posi:before {
	content: "\e0c8";
	font-family: "Material Symbols Outlined";
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
	color: #219bd0;
	font-variation-settings: "FILL" 1, "wght" 200, "GRAD" 0, "opsz" 40;
}
.icon-you:before {
	content: "\f06a";
	font-family: "Material Symbols Outlined";
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
	color: #219bd0;
	font-variation-settings: "FILL" 1, "wght" 300, "GRAD" 0, "opsz" 40;
}

.icon-home:before {
	content: "\e88a";
	font-family: "Material Symbols Outlined";
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
	color: #219bd0;
	font-variation-settings: "FILL" 1, "wght" 200, "GRAD" 0, "opsz" 40;
}

.icon-tel:before {
	content: "\e887";
	font-family: "Material Symbols Outlined";
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
	color: #219bd0;
	font-variation-settings: "FILL" 1, "wght" 200, "GRAD" 0, "opsz" 40;
}

.icon-main {
	font-size: 0.9rem;
	margin: 0 auto;
	background-color: #333;
	border-radius: 0.9rem;
	color: #fff;
	width: auto;
	line-height: 120%;
	padding: 0.2rem 0.5rem;
	font-weight: 300;
}

@media (max-width: 740px) {
	.icon-main {
		font-size: 0.7rem;
	}
}

.cont-view,
.ck-content {
	display: table;
	width: 100%;
	table-layout: fixed;
	padding-top: 5rem;
	max-width: 1200px;
	margin: 0 auto;
}

.cont-view h1,
.ck-content h1 {
	font-weight: 600;
	font-size: 1.8rem;
	text-align: center;
	width: 100%;
	margin-bottom: 2rem;
}

.cont-view h2,
.ck-content h2 {
	font-weight: 600;
	font-size: 1.2rem;
	text-align: center;
	width: 100%;
	color: #219bd0;
	text-align: left;
	margin-bottom: 2rem;
}

.cont-view h2.bg-blue,
.ck-content h2.bg-blue {
	background-color: #219bd0;
	color: #fff;
	padding: 1rem;
	font-weight: 300;
	text-align: center;
}
/* 0801수정 */
/* .cont-view p {
	font-size: 0.9rem;
	text-align: justify;
}

.cont-view p.bold {
	font-weight: 600;
	font-size: 1.2rem;
} */

/* 0801수정 */
.cont-view img,
.ck-content img {
	/*display: table;
	margin:2rem auto;*/
	margin: 1rem 0;
	max-width: 100%;
}

.cont-view h3,
.ck-content h3 {
	font-weight: 600;
	font-size: 1.8rem;
	text-align: center;
	width: 100%;
	margin-bottom: 2rem;
	margin-top: 5rem;
}

.cont-view .bg-title,
.ck-content .bg-title {
	display: table;
	width: 100%;
}

.cont-view h4,
.ck-content h4 {
	font-weight: 600;
	font-size: 1.6rem;
	text-align: center;
	width: 100%;
	margin-bottom: 2rem;
	margin-top: 3rem;
}

.cont-view h5,
.ck-content h5 {
	font-weight: 600;
	font-size: 1.6rem;
	text-align: center;
	width: 100%;
	margin-bottom: 2rem;
	margin-top: 3rem;
}

.cont-view h6,
.ck-content h6 {
	font-weight: 600;
	font-size: 1.5rem;
	text-align: center;
	width: 100%;
	margin-bottom: 1rem;
	margin-top: 2rem;
	color: #83c44e;
}

.cont-view h6.blue,
.ck-content h6.blue {
	color: #26a4dc;
}

.cont-view p.usr-font-1,
.ck-content p.usr-font-1 {
	font-size: 1.2rem;
}

@media (max-width: 740px) {
	.cont-view,
	.ck-content {
		padding-top: 3rem;
	}

	.cont-view h5,
	.ck-content h5 {
		font-size: 1.3rem;
		margin-bottom: 1rem;
		margin-top: 1rem;
	}

	/* 0801수정 */
	.cont-view iframe,
	.ck-content iframe {
		width: 100%;
		height: 15rem;
	}
}

.usr-table-1 {
	width: 100%;
	position: relative;
	border: none;
	border-collapse: collapse;
	margin-bottom: 4rem;
}
.usr-table-1 caption {
	position: absolute;
	width: 0px;
	height: 0px;
	overflow: hidden;
}

.usr-table-1 th {
	border-spacing: 0px;
}

.usr-table-1 td,
.usr-table-1 th {
	border-spacing: 0px;
	padding: 0.5rem;
	font-size: 0.9rem;
	padding-left: 2rem;
	font-weight: 300;
	line-height: 130%;
}

.usr-table-1.gradient tbody tr {
	display: block;
	width: 1200px;
}

.usr-table-1.gradient tbody tr td:nth-child(1) {
	text-align: center;
	width: 200px;
}

.usr-table-1.gradient tbody tr td:nth-child(2) {
	text-align: left;
	width: 300px;
}

.usr-table-1.gradient tbody tr td:nth-child(3) {
	text-align: left;
	width: 700px;
}

.usr-table-1.gradient tbody tr:nth-child(even) {
	background: -khtml-gradient(linear, left top, right top, from(#cde8db), to(#dbeef7));
	background: -moz-linear-gradient(left, #cde8db, #dbeef7);
	background: -ms-linear-gradient(left, #cde8db, #dbeef7);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, #cde8db), color-stop(100%, #dbeef7));
	background: -webkit-linear-gradient(left, #cde8db, #dbeef7);
	background: -o-linear-gradient(left, #cde8db, #dbeef7);
}

.usr-table-1.gradient tbody tr:nth-child(odd) {
	background: -khtml-gradient(linear, left top, right top, from(#a3dbf4), to(#c0e3ce));
	background: -moz-linear-gradient(left, #a3dbf4, #c0e3ce);
	background: -ms-linear-gradient(left, #a3dbf4, #c0e3ce);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, #a3dbf4), color-stop(100%, #c0e3ce));
	background: -webkit-linear-gradient(left, #a3dbf4, #c0e3ce);
	background: -o-linear-gradient(left, #a3dbf4, #c0e3ce);
}

.usr-table-1.green tbody tr:nth-child(even) {
	background: #cee8bb;
}

.usr-table-1.green tbody tr:nth-child(odd) {
	background: #acd58d;
}

.usr-table-1.blue.thead thead tr {
	display: block;
	background: -khtml-gradient(linear, left top, right top, from(#3744aa), to(#835fcc));
	background: -moz-linear-gradient(left, #3744aa, #835fcc);
	background: -ms-linear-gradient(left, #3744aa, #835fcc);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, #3744aa), color-stop(100%, #835fcc));
	background: -webkit-linear-gradient(left, #3744aa, #835fcc);
	background: -o-linear-gradient(left, #3744aa, #835fcc);
	color: #fff;
	font-weight: 300;
}

.usr-table-1.blue.thead thead th:nth-child(1) {
	text-align: center;
	width: calc(1200px * 0.25);
}

.usr-table-1.blue.thead thead th:nth-child(2) {
	text-align: center;
	width: calc(1200px * 0.2);
}

.usr-table-1.blue.thead thead th:nth-child(3) {
	text-align: center;
	width: calc(1200px * 0.15);
}

.usr-table-1.blue.thead thead th:nth-child(4) {
	text-align: center;
	width: calc(1200px * 0.4);
}

.usr-table-1.blue.thead tbody tr {
	display: block;
}

.usr-table-1.blue.thead tbody td:nth-child(1) {
	text-align: center;
	width: calc(1200px * 0.25);
}

.usr-table-1.blue.thead tbody td:nth-child(2) {
	text-align: center;
	width: calc(1200px * 0.2);
}

.usr-table-1.blue.thead tbody td:nth-child(3) {
	text-align: center;
	width: calc(1200px * 0.15);
}

.usr-table-1.blue.thead tbody td:nth-child(4) {
	text-align: left;
	width: calc(1200px * 0.4);
}

.usr-table-1.blue.thead tbody tr {
	display: block;
}

.usr-table-1.blue tbody tr:nth-child(even) {
	background: #cbecfb;
}

.usr-table-1.blue tbody tr:nth-child(odd) {
	background: #a3dbf4;
}

.usr-table-1.last {
	margin-bottom: 1rem;
}

@media (max-width: 740px) {
	.usr-table-1 td {
		padding: 0.2rem;
		font-size: 0.8rem;
		padding-left: 0.5rem;
		white-space: normal;
		word-break: break-all;
	}

	.usr-table-1.gradient tbody tr {
		width: 93vw;
	}
}

.usr-table-2 {
	width: 100%;
	position: relative;
	border-collapse: collapse;
	margin-bottom: 4rem;
	border-top: 2px solid #333;
}
.usr-table-2 caption {
	position: absolute;
	width: 0px;
	height: 0px;
	overflow: hidden;
}

.usr-table-2 th {
	border-spacing: 0px;
	border-bottom: 1px solid #ccc;
	background-color: #e7f1e1;
	font-size: 1rem;
	padding: 0.5rem 0;
}

.usr-table-2 td {
	border-spacing: 0px;
	padding: 0.5rem 0;
	text-align: center;
	border-bottom: 1px solid #ccc;
}

.usr-table-2 td.bold {
	font-weight: 600;
}

.usr-table-2 td:nth-child(2) {
	text-align: left;
}

.usr-table-2.custom-2 {
	margin-bottom: 2rem;
	border-collapse: initial;
}

.usr-table-2.custom-2 td {
	text-align: left;
}

.usr-table-2.custom-2 td.center {
	text-align: center;
}

@media (max-width: 740px) {
	.usr-table-2 {
		margin-bottom: 2rem;
	}
}

.jusok {
	color: var(--show-color);
}

.cont-view .down {
	background-color: #f1693e;
	color: #000;
	padding: 1rem 3rem;
	border: none;
	font-size: 1.2rem;
	display: block;
	margin: 0 auto;
	border-radius: 0.5rem;
	margin-top: 1rem;
}

/* 탭 메뉴 */
.page-tab {
	--tab-height: 6rem;
	border-top: 1px solid #e3e3e3;
	border-bottom: 1px solid #e3e3e3;
	margin-top: 3.45rem;
	text-align: center;
}

@media (max-width: 740px) {
	.page-tab {
		margin: 0 -1rem 0;
		border-top: 0;
	}
}

.page-tab .swiper-container,
.page-tab .embla {
	height: 3.75rem;
	padding: 0 3.8rem;
}
@media screen and (max-width: 1024px) {
	.page-tab .swiper-container,
	.page-tab .embla {
		padding: 0 3rem;
	}
}
@media (max-width: 740px) {
	.page-tab .swiper-container,
	.page-tab .embla {
		padding: 0;
	}
}
.page-tab .tab-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	height: 6rem;
	padding: 0;
}
.page-tab .tab-container > li {
	flex: 1 1 100%;
	height: 100%;
	position: relative;
}
.page-tab .tab-container > li span {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: -0.048rem;
}
@media (max-width: 740px) {
	.page-tab .tab-container > li span {
		position: relative;
	}
}
.page-tab .tab-container > li.on span {
	color: #3365c7;
	padding: 0 2rem;
	font-weight: 800;
}
@media (max-width: 740px) {
	.page-tab .tab-container > li.on span {
		padding: 0;
	}
}
.page-tab .tab-container > li.on span::after {
	content: "";
	position: absolute;
	bottom: -0.1rem;
	left: 0;
	right: 0;
	height: 0.6rem;
	background: currentColor;
}
.page-tab .swiper-wrapper,
.page-tab .embla__container {
	justify-content: space-between;
	height: 100%;
}
@media (max-width: 740px) {
	.page-tab .swiper-wrapper,
	.page-tab .embla__container {
	}
}
.page-tab .swiper-slide,
.page-tab .embla__slide {
	width: auto;
	height: 100%;
	flex: 1 1 auto;
}
@media (max-width: 740px) {
	.page-tab .swiper-slide,
	.page-tab .embla__slide {
	}
}
.page-tab .swiper-slide.on a,
.page-tab .embla__slide.on a {
	position: relative;
	color: #3365c7;
	font-weight: 700;
	font-size: 1.1rem;
}
.page-tab .swiper-slide.on a::after,
.page-tab .embla__slide.on a::after {
	content: "";
	position: absolute;
	bottom: -0.1rem;
	left: 0;
	right: 0;
	height: 0.3rem;
	background: currentColor;
}
.page-tab a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 6.48rem;
	height: 100%;
	font-size: 0.9rem;
	font-family: "GmarketSans";
	font-weight: 500;
	letter-spacing: -0.011rem;
	padding: 0 1.5rem;
	line-height: 1.3;
}
@media (max-width: 740px) {
	.page-tab a {
		min-width: 0;
		padding: 0;
	}
}
.page-tab a:hover {
	color: #3365c7;
}

.tab-contents {
	display: none;
}
.tab-contents.on {
	display: block;
}

.select-tab {
	margin-bottom: 5rem;
	position: relative;
}
@media (max-width: 740px) {
	.select-tab {
		margin-bottom: 3.1rem;
	}
}
.select-tab .tab-button {
	position: relative;
	width: 100%;
	height: 6rem;
	border-radius: 0.4rem;
	border: 0.1rem solid #3365c7;
	background: #fff;
	box-shadow: 0.4rem 0.4rem 0.5rem 0rem rgba(96, 108, 152, 0.09);
	color: #4c4e55;
	font-size: 2.2rem;
	letter-spacing: -0.066rem;
	font-weight: bold;
}
@media (max-width: 740px) {
	.select-tab .tab-button {
		height: 4.8rem;
		font-size: 1.6rem;
	}
}
.select-tab .tab-button:hover {
	color: #3365c7;
}
.select-tab .tab-button::after {
	font-family: "Font Awesome 6 Pro";
	font-weight: bold;
	content: "";
	position: absolute;
	top: 50%;
	right: 2.8rem;
	color: #6f6f6f;
	font-size: 1.4rem;
	line-height: 1;
	margin-top: -0.7rem;
}
.select-tab .tab-button.on {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
.select-tab .tab-button.on::after {
	transform: rotate(180deg);
}
.select-tab .tab-button.on ~ .tab-list {
	display: block;
}
.select-tab .tab-list {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 2;
	border: 0.1rem solid #c5d2e1;
	border-top: 0;
	border-radius: 0 0 0.4rem 0.4rem;
	text-align: center;
	background: #fff;
}
.select-tab .tab-list > li + li {
	border-top: 0.1rem solid #c5d2e1;
}
.select-tab .tab-list a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: row;
	height: 5.2rem;
	font-weight: 500;
	font-size: 1.8rem;
}
@media (max-width: 740px) {
	.select-tab .tab-list a {
		height: 4rem;
		font-size: 1.4rem;
	}
}
.select-tab .tab-list a:hover {
	color: #0080ea;
}

/* forum ----------------------------------------------------------------------*/

.sub-header.forum h1 {
	background-image: url("../images/sub_visual_01.jpg?v=2408071307");
}

.sub-header.forum .menu {
	background-color: var(--forum-color);
}

/* forum 에코피스 포럼 > 대주제 -------------------------------------------------*/
.topic-container {
	display: flex;
	gap: 0 2.5rem;
	margin: 4rem 0 2.55rem;
}

.topic-container .img-box {
	width: 20.35rem;
	height: 16.05rem;
	flex: 0 0 auto;
	position: relative;
	border: 1px solid #c2c2c2;
}
.topic-container .img-box::before {
	content: "";
	position: absolute;
	top: -0.7rem;
	left: 0.7rem;
	width: 3.9rem;
	height: 3.7rem;
	background: url(../images/icon_issue.png) no-repeat 50% 50% / contain;
}

.topic-container .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.topic-wrap .text-box {
	border: 10px solid #eee;
	padding: 1.5rem 2.5rem;
}

.topic-wrap .info-list {
	margin-top: 1.35rem;
}

.topic-wrap .info-item {
	display: flex;
}
.topic-wrap .info-item + .info-item {
	margin-top: 0.6rem;
}
.topic-wrap .info-item .title {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.04rem;
	margin-right: 1rem;
}
.topic-wrap .info-item .text {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: -0.01rem;
}

@media (max-width: 740px) {
	.topic-container {
		flex-direction: column;
		align-items: center;
		gap: 1rem 0;
		margin: 1.95rem 0 1.67rem;
	}

	.topic-container .img-box {
		width: 100%;
		height: 14rem;
	}

	.topic-wrap .text-box {
		padding: 1rem 1.3rem;
	}
}

/* forum 에코피스 포럼 > 포럼일정 -----------------------------------------------*/
.attached-file {
	padding: 1.35rem 1rem;
	border-bottom: 1px solid #e2e2e2;
}

.attached-file-download {
	padding-left: 1.4rem;
	position: relative;
	font-size: 0.95rem;
	font-weight: 600;
	color: #475998;
	letter-spacing: -0.0285rem;
}
.attached-file-download::after {
	content: "\e873";
	font-family: "Material Icons";
	font-size: 1rem;
	font-weight: 400;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.attached-file-download:hover {
	color: #3365c7;
}

.attached-file ~ .editor,
.page-tab + .editor,
.info-title + .editor {
	margin: 1.5rem 0;
}

@media (max-width: 740px) {
	.attached-file {
		margin: 0 -1rem;
		padding: 1.1rem 1rem;
	}
}

/* forum 에코피스 포럼 > 프로그램 > 목록 -----------------------------------------------*/
.org-container {
	position: relative;
	margin-top: 3.55rem;
}
.org-container .btn-org {
	display: none;
}
@media (max-width: 740px) {
	.org-container {
		margin-top: 1.05rem;
	}

	.org-container .btn-org {
		display: block;
		width: 100%;
		height: 2.95rem;
		line-height: 3.25rem;
		border: none;
		background: #3864d4;
		color: #fff;
		padding: 0 2rem;
		font-size: 0.9rem;
		font-family: "GmarketSans";
		font-weight: 700;
		letter-spacing: -0.032rem;
		position: relative;
	}

	.org-container .btn-org::after {
		content: "\e313";
		font-family: "Material Symbols Outlined";
		position: absolute;
		top: 50%;
		right: 1.1rem;
		transform: translateY(-50%);
		font-size: 1.6rem;
		font-weight: 400;
	}

	.org-container .btn-org.on::after {
		transform: translateY(-50%) rotate(180deg);
	}
}
.org-container .btn-org i {
	margin-left: auto;
	color: var(--text-input-color);
}
.org-container .btn-org.on {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
.org-container .btn-org.on i {
	transform: rotate(180deg);
}
.org-container .btn-org.on ~ .org-list {
	display: block;
}

.org-list {
	display: flex;
	/* 2024-10-21 YHS 수정 */
	/* grid-template-columns: repeat(3, minmax(0, auto)); */
	/* row-gap: 0.8rem; */
	border: 0.1rem solid #e2e2e2;
}
@media (max-width: 740px) {
	.org-list {
		display: none;
		grid-template-columns: repeat(2, minmax(0, auto));
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		max-height: 30rem;
		overflow-y: auto;
		background: #fff;
		z-index: 3;
		border: 0.2rem solid #3864d4;
		border-top: none;
		row-gap: 0.4rem;
		padding: 0;
		overscroll-behavior: contain;
	}
	.org-list > li + li {
		border-top: 0.1rem solid #e3e3e3;
	}
}
.org-list li {
	flex: 1 1 auto;
	min-width: 0;
}

.org-list .org-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.9rem 0 0.7rem;
	color: #777;
	font-family: "GmarketSans";
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: -0.009rem;
	width: 100%;
	border-right: 0.1rem solid #e2e2e2;
	border-bottom: none;
	border-top: none;
	border-left: none;
	background-color: #fff;
}
.org-list li:last-child .org-btn {
	border-right: none;
}
.org-list .org-btn:hover {
	color: #3365c7;
}
.org-list .org-btn.on {
	background-color: #3864d4;
	font-weight: 700;
	color: #fff;
}
@media (max-width: 740px) {
	.org-list .org-btn {
		padding-left: 2rem;
		padding-right: 2rem;
		border: none;
	}
}

.program-info {
	display: flex;
	align-items: center;
	padding: 1.9rem 0;
	gap: 0 4.5rem;
}

.program-info li {
	display: flex;
}

.program-info li .title {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.04rem;
	margin-right: 1.5rem;
}

.program-info li .text {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: -0.03rem;
}

@media (max-width: 740px) {
	.program-info {
		flex-direction: column;
		align-items: normal;
		gap: 0.8rem 0;
	}

	.program-info li .title {
		margin-right: 1.6rem;
	}
}

/* 기본 테이블 */
.table-basic {
	table-layout: fixed;
	background-color: #fff;
}

.table-basic th,
.table-basic td {
	border-bottom: 1px solid #e2e2e2;
	border-right: 1px solid #e2e2e2;
	text-align: center;
	padding: 1rem 1.5rem;
}
@media (max-width: 740px) {
	.table-container {
		margin: 0 -1rem;
	}

	.table-basic th,
	.table-basic td {
		padding-left: 0.8rem;
		padding-right: 0.8rem;
	}
}
.table-basic td:last-child {
	border-right: 0;
}
.table-basic th {
	background: #f1f1f1;
	height: 3.05rem;
	border: 1px solid #e2e2e2;
	font-family: "GmarketSans";
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: -0.009rem;
}
.table-basic td {
	height: 3.5rem;
	font-size: 0.95rem;
	font-weight: 500;
	text-wrap: balance;
}
.table-basic .border-right {
	border-right: 1px solid #e2e2e2 !important;
}
@media (max-width: 740px) {
	.table-basic .no-border-right {
		border-right: 0;
	}
}
.table-basic .text-left {
	text-align: left;
	padding-left: 3rem;
	padding-right: 2rem;
}
.table-basic a:hover {
	color: #3365c7;
}

/* 테이블 스크롤 */
.table-scroll {
	overflow-x: auto;
	/* overscroll-behavior: contain;
    background: linear-gradient(to right, rgb(255, 255, 255) 30%, rgba(255, 255, 255, 0)), linear-gradient(to right, rgba(255, 255, 255, 0), #fff 70%) 0 100%, radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)) 0 100%;
    background-color: #fff;
    background-position: 0 0, 100%, 0 0, 100%;
    background-repeat: no-repeat;
    background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
    background-attachment: local, local, scroll, scroll; */
}
.table-scroll::-webkit-scrollbar {
	width: 0.4rem;
	height: 0.4rem;
}
.table-scroll::-webkit-scrollbar-thumb {
	background: #a7a7a7;
	border: 0.1rem solid #fff;
	background-clip: padding-box;
	border-radius: 2rem;
}
@media (max-width: 740px) {
	.table-scroll {
		margin: 0 -1rem;
	}
}

/* forum 에코피스 포럼 > 프로그램 > 자세히보기 -----------------------------------------------*/
.info-title {
	padding: 1.4rem 1.1rem;
	color: #393939;
	text-align: center;
	font-family: "GmarketSans";
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.033rem;
	border-bottom: 1px solid #e2e2e2;
	text-wrap: balance;
}

.info-text-container {
	display: flex;
	padding: 1.1rem;
}

.info-text-container .title {
	flex: 0 0 auto;
	font-size: 1.2082rem;
	font-weight: 700;
	letter-spacing: -0.04835rem;
	max-width: 2.691rem;
	width: 100%;
	margin-right: 0.55rem;
}
.info-text-inner ul {
	flex: 1 1 auto;
	min-width: 0;
}
.info-text-container .text {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: -0.03rem;
}

.info-text-container .text br {
	display: none;
}

.info-text-wrap {
	flex: 1 1 37%;
	min-width: 0;
	position: relative;
}

.info-text-wrap + .info-text-wrap {
	padding-left: 1.55rem;
	flex: 1 1 63%;
}

.info-text-wrap + .info-text-wrap::after {
	content: "";
	display: block;
	width: 0.05rem;
	height: 100%;
	background-color: #e2e2e2;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}

.info-text-inner {
	display: flex;
}

.info-text-inner + .info-text-inner {
	margin-top: 0.83rem;
}

.text-container {
	padding: 1.5rem;
	border-top: 1px solid #e2e2e2;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: -0.03rem;
	line-height: 1.8;
}

@media (max-width: 740px) {
	.info-title {
		padding-top: 1.2rem;
		padding-bottom: 1.2rem;
		margin: 0 -1rem;
	}
	.info-text-container {
		flex-direction: column;
		margin: 0 -1rem;
		padding: 0;
		border: none;
	}

	.info-text-container + .text-container {
		border-top: none;
	}

	.info-text-container .title {
		margin-bottom: 0.65rem;
		margin-right: 0;
	}

	.info-text-container .text br {
		display: block;
	}

	.info-text-wrap {
		padding: 1.4rem 1rem;
		border-bottom: 1px solid #e2e2e2;
	}

	.info-text-wrap + .info-text-wrap {
		padding-left: 1rem;
	}

	.info-text-wrap + .info-text-wrap::after {
		display: none;
	}

	.info-text-inner {
		flex-direction: column;
	}

	.text-container {
		padding: 1rem 1rem;
		margin: 0 -1rem;
	}
}

/* forum 에코피스 포럼 > 연사소개 -----------------------------------------------*/
.search-container {
	margin-top: 3.55rem;
}

.search-container + .orator-container {
	margin-top: 1.1rem;
}

.search-wrap {
	display: flex;
	justify-content: flex-end;
}

.search-wrap .search-btn {
	width: 2.7rem;
	height: 2.7rem;
	background-color: #3864d4;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.search-wrap .search-icon {
	color: #fff;
	font-size: 1.6rem;
	font-weight: 500;
}

.search-inner {
	border: 1px solid #e2e2e2;
	position: relative;
	display: flex;
}

.search-inner .inp-search {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 12.1rem;
	width: 100%;
	height: 100%;
	padding: 0.7rem 2.2rem 0.7rem 0.95rem;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: -0.009rem;
	border: none;
	position: relative;
	background-color: #fff;
	appearance: none;
}
.search-inner .inp-search::-webkit-search-cancel-button {
	-webkit-appearance: none;
	width: 0.9rem;
	height: 0.9rem;
	background: url(../images/search_delete_btn.png) no-repeat 50% 50% / cover;
	cursor: pointer;
	position: absolute;
	right: 0.7rem;
}
.search-inner .inp-search::placeholder {
	color: #8f8e8e;
}

.orator-container {
	padding: 2rem 0;
	border-top: 1px solid #e2e2e2;
	border-bottom: 1px solid #e2e2e2;
}

.orator-container + .orator-container {
	border-top: none;
}

.orator-title {
	font-size: 1.1rem;
	font-family: "GmarketSans";
	font-weight: 700;
	letter-spacing: -0.033rem;
	text-align: center;
	margin-bottom: 1.85rem;
	text-wrap: balance;
}

.orator-list {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 22rem));
	gap: 2rem 1.25rem;
}

.orator-item {
	text-align: center;
}

.orator-item a {
	display: block;
}

.orator-item .img-box {
	width: 11rem;
	height: 12.5rem;
	border: 1px solid #e2e2e2;
	margin: 0 auto 0.65rem;
}
.orator-item .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.orator-item .title {
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: -0.027rem;
	line-height: 1.6;
}
.orator-item .text {
	font-size: 0.9rem;
	font-weight: 400;
	letter-spacing: -0.027rem;
	line-height: 1.6;
}
.orator-item a:hover .title,
.orator-item a:hover .text {
	color: #3365c7;
}

@media (max-width: 740px) {
	.search-container {
		margin-top: 1.55rem;
	}

	.search-inner {
		width: 100%;
	}

	.search-inner .inp-search {
		max-width: 100%;
	}

	.orator-container {
		margin: 0 -1rem;
		padding: 2rem 1rem;
	}

	.orator-list {
		grid-template-columns: repeat(2, minmax(0, 22rem));
	}

	.orator-item .img-box {
		width: 100%;
		margin: 0 0 0.65rem;
	}

	.orator-item .title {
		line-height: 1.4;
		margin-bottom: 0.2rem;
	}
}

/* forum 에코피스 포럼 > 연사소개 > 상세보기 -------------------------------------*/
.orator-detail {
	display: flex;
	padding: 2rem 0;
	gap: 0 1.45rem;
}

/* 2024-10-21 YHS 수정 */
/* .orator-detail + .text-container {
	border-bottom: 1px solid #e2e2e2;
} */

.orator-detail .left .img-box {
	width: 15.05rem;
	height: 16.05rem;
	border: 1.359px solid #e2e2e2;
}

.orator-detail .left .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.orator-detail .right {
	width: 100%;
}

.orator-detail .right .title-container {
	border-bottom: 1px solid #e2e2e2;
}

.orator-detail .right .title {
	font-size: 1.2rem;
	font-weight: 800;
	letter-spacing: -0.012rem;
}

.orator-detail .right .title-wrap {
	display: flex;
	align-items: center;
	font-size: 0.9rem;
	font-weight: 400;
	letter-spacing: -0.027rem;
	line-height: 1.6;
	padding: 0.7rem 0;
}

.orator-detail .right .job {
	margin-right: 0.5rem;
	padding-right: 0.5rem;
	position: relative;
}
.orator-detail .right .job::after {
	content: "";
	width: 0.05rem;
	height: 0.85rem;
	background-color: #393939;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.orator-detail .day-item {
	padding: 0.5rem 0;
	border-bottom: 1px solid #e2e2e2;
}

.orator-detail .day-item:last-child {
	border-bottom: none;
}

.orator-detail .day-item .text-wrap {
	display: flex;
	font-size: 0.9rem;
	font-weight: 400;
	letter-spacing: -0.027rem;
	line-height: 1.6;
}

.orator-detail .day-item .sub-title {
	margin-right: 0.3rem;
}

.btn-group {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: row;
	position: relative;
	margin-top: 2rem;
}

.btn-group [class*="group"] {
	display: flex;
	justify-content: normal;
	align-items: center;
	flex-direction: row;
}

.btn-group .left-group {
	margin-right: auto;
}

.btn-group .right-group {
	margin-left: auto;
}

.btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 10rem;
	line-height: 3rem;
	text-align: center;
	background-color: #fff;
	border: 0.1px solid #3864d4;
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: -0.011rem;
	color: #3864d4;
}

@media (max-width: 740px) {
	.orator-detail {
		flex-direction: column;
		gap: 1.85rem 0;
		padding-top: 1.55rem;
		padding-bottom: 0;
		margin: 0 -1rem;
	}

	.orator-detail .left .img-box {
		margin: 0 auto;
	}

	.orator-detail .day-item {
		padding: 0.75rem 1rem;
	}

	.orator-detail .right .title-container {
		padding: 0 1rem;
	}

	.btn-group {
		display: block;
		margin-top: 1.5rem;
	}

	.btn-group .right-group {
		margin-left: 0;
	}

	.btn-group .btn {
		flex: 1 1 100%;
	}
}

/* forum 에코피스 포럼 > 부대행사 ----------------------------------------------*/
.event-container {
	margin-top: 2.05rem;
}

.event-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 37.4rem));
	gap: 2rem 1.95rem;
}

.event-item {
	text-align: center;
}
.event-item a {
	display: block;
}
.event-item .img-box {
	width: 18.7rem;
	height: 18rem;
	border: 1px solid #e2e2e2;
}

.event-item .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.event-item .title {
	font-size: 1rem;
	font-family: "GmarketSans";
	font-weight: 700;
	letter-spacing: -0.03rem;
	margin-top: 0.9rem;
}

.event-item a:hover .title {
	color: #3365c7;
}

@media (max-width: 740px) {
	.event-list {
		grid-template-columns: repeat(1, minmax(0, auto));
		gap: 1.7rem 0;
	}

	.event-item .img-box {
		width: 100%;
		height: 100%;
		aspect-ratio: 1 / 1;
	}
}

/* sport ----------------------------------------------------------------------*/

.sub-header.sport h1 {
	background-image: url("../images/sub_visual_02.jpg?v=2408071307");
}

.sub-header.sport .menu {
	background-color: var(--sport-color);
}

.sub-cont.sport .usr-button-1 {
	background-color: var(--sport-color);
}

/* 추가 - 230731 -----------------------------------------*/
.sub-cont.sport .usr-button-2 {
	background-color: var(--sport-color);
}
/*----------------------------------------------------------*/

.sub-cont.sport .icon-cal:before {
	color: var(--sport-color);
}

.sub-cont.sport .icon-posi:before {
	color: var(--sport-color);
}

.sub-cont.sport .icon-home:before {
	color: var(--sport-color);
}

.sub-cont.sport .icon-tel:before {
	color: var(--sport-color);
}

.sub-cont.sport .icon-you:before {
	color: var(--sport-color);
}

/* show ----------------------------------------------------------------------*/

.sub-header.show h1 {
	background-image: url("../images/sub_visual_04.jpg?v=2408071307");
}

.sub-header.show .menu {
	background-color: var(--show-color);
}

.sub-cont.show .usr-button-1 {
	background-color: var(--show-color);
}

/* 추가 - 230731 -----------------------------------------*/
.sub-cont.sport .usr-button-2 {
	background-color: var(--show-color);
}
/*----------------------------------------------------------*/

.sub-cont.show .icon-cal:before {
	color: var(--show-color);
}

.sub-cont.show .icon-posi:before {
	color: var(--show-color);
}

.sub-cont.show .icon-home:before {
	color: var(--show-color);
}

.sub-cont.show .icon-tel:before {
	color: var(--show-color);
}

.sub-cont.show .icon-you:before {
	color: var(--show-color);
}

/* exhibition ----------------------------------------------------------------------*/

.sub-header.exhibition h1 {
	background-image: url("../images/sub_visual_03.jpg?v=2408071307");
}

.sub-header.exhibition .menu {
	background-color: var(--exhibition-color);
}

.sub-cont.exhibition .usr-button-1 {
	background-color: var(--exhibition-color);
}

.sub-cont.exhibition .usr-button-2 {
	background-color: var(--exhibition-color);
}

.sub-cont.exhibition .icon-cal:before {
	color: var(--exhibition-color);
}

.sub-cont.exhibition .icon-posi:before {
	color: var(--exhibition-color);
}

.sub-cont.exhibition .icon-home:before {
	color: var(--exhibition-color);
}

.sub-cont.exhibition .icon-tel:before {
	color: var(--exhibition-color);
}

.sub-cont.exhibition .icon-you:before {
	color: var(--exhibition-color);
}

.area-basic.concert .custom-1 {
	width: 33%;
	vertical-align: top;
}

.area-basic.concert .custom-1 img {
	margin-top: 0;
}

.area-basic.concert .custom-2 {
	width: 67%;
	padding-left: 6%;
	vertical-align: top;
}

.area-basic.concert .custom-2 dl {
	display: block;
	width: 100%;
	margin-bottom: 1rem;
}

.area-basic.concert .custom-2 dl dt {
	display: block;
	width: 100%;
	color: #e37331;
	font-size: 1.1rem;
	font-weight: 600;
}

.area-basic.concert .custom-2 dl dd {
	display: block;
	width: 100%;
	font-size: 0.85rem;
	line-height: 170%;
}

@media (max-width: 740px) {
	.area-basic.concert .custom-1 {
		width: 100%;
		display: table;
	}

	.area-basic.concert .custom-2 {
		width: 100%;
		display: table;
	}
}

/* dmz ----------------------------------------------------------------------------------*/
.sub-header.dmz h1 {
	background-image: url("../images/sub_visual_07.jpg?v=2408071307");
}

.sub-header.dmz .menu {
	background-color: #cbeaf7;
	color: #000;
}

.sub-header.dmz .menu > ul > li {
	color: #000;
}

.area-basic.view {
	margin-top: 3.5rem;
	border-top: 2px solid #333;
}

/* 0801 수정 */
.area-basic.view h2 {
	font-size: 2rem;
	padding-top: 3rem;
	padding-bottom: 2rem;
	text-align: center;
	line-height: 120%;
	letter-spacing: -0.15rem;
	text-wrap: balance;
}

.area-basic.view p {
}

.area-basic.view .cont-view {
	padding-top: 0;
	border-top: 1px solid #ccc;
	margin-top: 3rem;
	border-bottom: 1px solid #ccc;
	padding-bottom: 2rem;
}

.area-basic.view h3 {
	font-size: 1.5rem;
	padding-top: 3rem;
	padding-bottom: 1rem;
	text-align: center;
	margin-top: 0;
	margin-bottom: 0;
}

.area-basic.view .cont-view img {
	margin: 2rem auto;
}

.area-basic.view .cont-view .area-devide img {
	margin: 0;
	padding: 0;
}

.masonry-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1rem 3rem;
	grid-template-rows: masonry;
	grid-auto-rows: 10px;
}

.gallery-container figure {
	margin: 0;
	display: inline-block;
	margin-bottom: 0px;
	width: 100%;
}

.grid-item {
	width: 33%;
	margin-bottom: 1rem;
}

.grid-item figure {
	border-radius: 0px 1rem 0px 1rem;
	-webkit-border-radius: 0px 1rem 0px 1rem;
	-moz-border-radius: 0px 1rem 0px 1rem;
	display: block;
	background-color: #e7e6dc;
	width: 95%;
}

.grid-item figure:focus-within {
	outline: 2px solid #666;
}

.grid-item figure img {
	width: 100%;
	height: auto;
	border-radius: 0px 1rem 0px 0;
	-webkit-border-radius: 0px 1rem 0px 0;
	-moz-border-radius: 0px 1rem 0px 0;
	margin-top: -2px;
}

.grid-item figure figcaption {
	font-size: 1rem;
	padding: 1rem;
}

.grid-item figure figcaption span {
	font-size: 1.2rem;
	word-break: break-all;
	display: block;
	margin-bottom: 1rem;
	font-weight: 600;
}

.grid-item figure figcaption span.date {
	font-size: 0.9rem;
	font-weight: 400;
	margin-top: 1rem;
	margin-bottom: 0;
	color: #7e7d7d;
}

.grid-item a {
	display: block;
}

.truncate-text {
	font-weight: normal !important;
	max-height: 10em;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 1rem !important;
}

@media (max-width: 740px) {
	.grid-item {
		width: 50%;
	}
}

/* festival ---------------------------------------------------------------*/
.sub-header.festival h1 {
	background-image: url("../images/sub_visual_06.jpg?v=2408071307");
	background-position: bottom center;
}

.sub-header.festival .menu {
	background-color: #cbeaf7;
	color: #000;
}

.sub-cont.festival:not(.notice-view) .border-top::before {
	display: none;
}

.sub-header.festival .menu > ul > li {
	color: #000;
}

.sub-cont.festival.greeting {
	padding-bottom: 0;
	padding-left: 0;
	padding-right: 0;
}

.festival .area-sub.custom-1 {
	white-space: normal;
	word-break: keep-all;
	width: 45%;
	vertical-align: top;
	padding-right: 1rem;
	position: relative;
	font-size: 0.9rem;
}

.festival .area-sub.custom-2 {
	white-space: normal;
	word-break: keep-all;
	width: 55%;
	text-align: left;
	vertical-align: top;
	padding-left: 1rem;
	padding-right: 1rem;
	font-size: 0.9rem;
}

.festival .area-sub h2 {
	font-size: 2rem;
	text-align: left;
	line-height: 140%;
	padding-bottom: 2rem;
	font-weight: 600;
	letter-spacing: -0.15rem;
}

.festival .area-sub p {
	margin-bottom: 2rem;
	text-align: justify;
}
.festival .area-sub .mid {
	color: #062680;
	text-align: justify;
	font-size: 1.1rem;
	line-height: 200%;
	font-weight: 500;
}

.festival .area-sub p .ceo {
	color: #1984b9;
	font-size: 1.5rem;
}

.festival .area-sub p.last {
	margin-bottom: 0;
}

.festival .area.blue {
	background-color: #def0f8;
}

.festival .area.blue .area-sub.custom-1 {
	width: 55%;
	padding-right: 5%;
}

.festival .area.blue .area-sub.custom-2 {
	width: 45%;
}

.festival .area .area-basic {
	padding: 4rem 0;
}

.festival .area.white {
	background-color: #fff;
}

.festival .area.blue.last {
	padding-bottom: 4rem;
}

.festival.guide h2 {
	font-size: 1.7rem;
	font-weight: 600;
}

.festival.guide h2 span {
	color: #a236b7;
}

.festival .usr-img-1 {
	position: absolute;
	left: -300px;
	padding-top: 1rem;
}

.festival .usr-img-1.right {
	right: 0;
	left: initial;
	margin-top: -180px;
}

.festival .usr-img-1.center {
	left: 0px;
	margin-top: 0;
}

.festival.guide .area-max {
	position: relative;
}

.festival.guide .custom-bg-2 {
	background-image: url(../images/sub_info_img_03.png);
	background-repeat: no-repeat;
	margin-top: 8rem;
	margin-bottom: 5rem;
}

.festival.guide .custom-bg-2 .area-basic {
	padding-top: 0;
}

.festival.guide .area-sub.custom-1 {
	width: 50%;
}

.festival.guide .area-sub.custom-2 {
	width: 50%;
}

.festival.guide .area-basic.custom-2 {
	padding-top: 0;
}

.festival.guide .area-sub dl {
	display: table;
	width: 100%;
	padding: 1rem 0;
	border-bottom: 1px solid #ccc;
	font-size: 1.2rem;
}

.festival.guide .area-sub dl dt {
	display: table-cell;
	width: 30%;
	font-weight: 600;
	vertical-align: middle;
}

.festival.guide .area-sub dl dd {
	display: table-cell;
	width: 70%;
	padding-left: 1rem;
	font-weight: 300;
}

.festival.guide .area-basic.blue {
	background-color: #def0f8;
	border-radius: 1rem;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	padding: 3rem;
}

.festival.guide .area-basic.blue h2 {
	text-align: center;
	padding-bottom: 2rem;
	border-bottom: 1px solid #ccc;
}

@media (max-width: 740px) {
	.festival .usr-img-1.right {
		display: none;
	}

	.festival .area-sub.custom-1 {
		width: 100%;
		display: table;
	}

	.festival .area-sub.custom-2 {
		display: table;
		width: 100%;
		margin-top: 2rem;
	}

	.festival .area-sub h2 {
		font-size: 1.5rem;
	}

	.festival .area.blue .area-sub.custom-1 {
		width: 100%;
		display: table;
		padding: 1rem;
	}

	.festival .area.blue .area-sub.custom-2 {
		width: 100%;
		display: table;
	}

	.festival .area-sub img {
		display: table;
		width: 60%;
		margin: 0 auto;
	}

	.festival .area-sub p.last {
		margin-top: -1rem;
	}

	.festival.guide .area-sub.custom-1 {
		width: 100%;
	}

	.festival.guide .area-sub.custom-2 {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.festival.guide .area-basic.blue {
		padding: 1rem;
	}

	.festival.guide .area-sub dl {
		font-size: 1rem;
	}

	.festival.guide .area-sub dl dt {
		vertical-align: top;
	}

	.festival.guide .custom-bg-2 {
		margin-top: 0rem;
	}

	.festival.guide .area-basic.blue h2 {
		font-size: 1.4rem;
		line-height: 140%;
	}
}

.usr-list-sns > li {
	padding: 0.5rem 1rem;
	font-size: 1.2rem;
	border-bottom: 1px solid #ccc;
	font-weight: 600;
}

.usr-list-sns > li:last-child {
	border-bottom: none;
}

.usr-list-sns > li span {
	color: #1984b9;
	padding-left: 2rem;
	font-weight: 400;
}

.usr-list-sns > li:before {
	content: "";
	display: inline-block;
	padding-right: 4rem;
	vertical-align: middle;
	background-size: 2.8rem;
	background-repeat: no-repeat;
	width: 3rem;
	height: 3rem;
}

.usr-list-sns > li.home:before {
	background-image: url(../images/icon_b_home.png);
}

.usr-list-sns > li.face:before {
	background-image: url(../images/icon_b_face.png);
}

.usr-list-sns > li.insta:before {
	background-image: url(../images/icon_b_inster.png);
}

.usr-list-sns > li.utube:before {
	background-image: url(../images/icon_b_you.png);
}

.usr-list-sns > li.blog:before {
	background-image: url(../images/icon_b_blog.png);
}

@media (max-width: 740px) {
	.usr-list-sns > li span {
		color: #1984b9;
		padding-left: 3rem;
		display: block;
		font-size: 0.9rem;
	}

	.usr-list-sns > li {
		padding: 0.5rem 0rem;
		font-size: 1rem;
	}

	.usr-list-sns > li:before {
		padding-right: 2.5rem;
		background-size: 2rem;
		width: 2rem;
		height: 2rem;
	}
}

.sub-cont.festival.calendar .area.custom-1 {
	text-align: right;
	padding-top: 0rem;
	padding-bottom: 3rem;
}

#toggleBtn {
	font-size: inherit;
	border: 0;
	background: none;
	font-weight: inherit;
	font-family: inherit;
}

.festival.bi h2 {
	font-size: 2rem;
	text-align: center;
	padding: 4rem;
	font-weight: 600;
}

.festival.bi figure img {
	display: block;
	margin: 3rem auto;
}

.festival.bi figure figcaption {
	display: table;
	text-align: center;
	width: 100%;
	padding-bottom: 2rem;
}

.festival.bi .usr-box-1 figure figcaption {
	padding-bottom: 0rem;
}

.festival.bi .usr-box-1 .area-sub {
	width: 50%;
	vertical-align: bottom;
}

.festival.bi .usr-box-1 .orange {
	background-color: #ff6427;
	color: #282828;
}

.festival.bi .usr-box-1 .blue {
	background-color: #09408a;
}

.festival.bi .usr-box-1 .green {
	background-color: #80c85d;
	color: #282828;
}

.festival.bi .usr-box-1 .black {
	background-color: #000;
}

.sub-cont.festival.bi {
	padding-bottom: 0;
}

@media (max-width: 740px) {
	.festival.bi .usr-box-1 .area-sub {
		width: 100%;
		display: table;
	}

	.festival.bi figure img {
		width: 80%;
	}

	.festival.bi .area.usr-box-1 figure img {
		width: 70%;
	}

	.festival.bi .area-devide.num-4 li {
		width: 50%;
		margin-right: 0;
		padding: 0 1rem;
	}
	.festival.bi .area-devide.num-4 li:nth-of-type(2n + 0) {
		margin-right: 0%;
	}
	.festival.bi .area-devide.num-4 li:nth-of-type(2n + 1) {
		margin-top: 2rem;
		clear: both;
	}
	.festival.bi .area-devide.num-4 li:nth-of-type(2n + 2) {
		margin-top: 2rem;
	}
	.festival.bi .area-devide.num-4 li:nth-child(1) {
		margin-top: 0rem;
	}
	.festival.bi .area-devide.num-4 li:nth-child(2) {
		margin-top: 0rem;
	}

	.festival.bi .usr-button-1.download {
		margin-left: 1rem;
	}
}

.sub-cont.festival.notice .grid-item figure {
	background-color: #d9e7ed;
}

/*0801 수정*/
.sub-cont.festival.notice-view .area-basic h2 {
	font-size: 2rem;
	text-align: center;
	padding: 3rem 0;
	padding-bottom: 2rem;
	line-height: 120%;
	letter-spacing: -0.15rem;
	text-wrap: balance;
}

.sub-cont.festival.notice-view .area-basic .date {
	font-size: 0.9rem;
	text-align: center;
	border-bottom: 1px solid #ccc;
	padding-bottom: 2rem;
}

.sub-cont.festival.notice-view .area-basic .date span {
	padding-left: 1rem;
	padding-right: 1rem;
}

/* .sub-cont.festival.notice-view .area-basic .file{ */
.area-basic .file {
	display: table;
	width: 100%;
	border-bottom: 1px solid #ccc;
}

/* .sub-cont.festival.notice-view .area-basic .file li:before{ */
.area-basic .file li:before {
	content: "";
	background-image: url(../images/icon_file.png);
	background-repeat: no-repeat;
	background-size: 100%;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	background-position: center;
	vertical-align: middle;
}

/* .sub-cont.festival.notice-view .area-basic .file li{ */
.area-basic .file li {
	display: table;
	width: 100%;
	font-size: 0.9rem;
	padding: 1rem;
}

.sub-cont.festival.notice-view .cont-view {
	border-bottom: 1px solid #ccc;
	padding-bottom: 3rem;
}

.sub-cont.festival.news .usr-table-2 {
	/*border-collapse:initial;*/
	font-size: 0.9rem;
}

.sub-cont.festival.news .usr-table-2 td {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.sub-cont.festival.news .usr-table-2 td:nth-child(2) {
	font-size: 1rem;
}

.sub-cont.festival.news .usr-table-2 td:nth-child(3) {
	opacity: 0.7;
}
.sub-cont.festival.news .usr-table-2 td:nth-child(4) {
	opacity: 0.7;
}

.img-zoom {
	overflow: hidden;
}

.img-zoom img {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: 0.6s;
	-moz-transition: 0.6s;
	-ms-transition: 0.6s;
	-o-transition: 0.6s;
	transition: 0.6s;
}

.img-zoom:hover img {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	transform: scale(1.05);
}

.festival.greeting .area-sub img {
	box-shadow: 15px 15px 35px -2px rgba(0, 0, 0, 0.35);
	-webkit-box-shadow: 15px 15px 35px -2px rgba(0, 0, 0, 0.35);
	-moz-box-shadow: 15px 15px 35px -2px rgba(0, 0, 0, 0.35);
}

.festival.greeting .area-sub p {
	line-height: 140%;
}

.usr-button-1.detail:after {
	content: "";
	background: url("../images/icon1.svg") no-repeat 50% 50% / contain;
	position: absolute;
	top: 50%;
	right: 1rem;
	width: 0.6rem;
	height: 0.5rem;
	transform: translateY(-50%);
}

.youtubeLink {
	text-align: center;
}

/* 추가 - 230731 -----------------------------------------*/
.usr-button-1.detail2:after {
	content: "\e1d3";
	font-family: "Material Symbols Outlined";
	font-size: 1.3rem;
	position: absolute;
	right: 1.2rem;
	display: block;
	width: 1rem;
	top: 40%;
	transform: translateY(-50%);
	height: 1rem;
	font-variation-settings: "wght" 400;
}

.sub-cont.festival.guide .custom-ab-1 {
	padding-bottom: 0;
}

.sub-cont.festival.guide .area.custom-3 {
	margin-top: -1rem;
}

.sub-cont.festival.guide .area-basic.custom-4 {
	padding-top: 1rem;
}

.sub-cont.festival.guide .area-basic.custom-4 h5 {
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 1.3rem;
}

.sub-cont.festival.guide .area-basic.custom-4 p {
	font-size: 1rem;
	font-weight: 300;
}

.sub-cont.festival.guide .area-basic.custom-4 li {
	padding-right: 2rem;
	text-align: justify;
	word-break: break-all;
}

.sub-cont.festival.guide .area-basic.custom-4 li:nth-child(1) h5 {
	color: var(--sport-color);
}

.sub-cont.festival.guide .area-basic.custom-4 li:nth-child(2) h5 {
	color: #219bd0;
}

.sub-cont.festival.guide .area-basic.custom-4 li:nth-child(3) h5 {
	color: var(--show-color);
}

.sub-cont.festival.guide .area-basic.custom-5 {
	text-align: center;
	position: relative;
	font-size: 1.2rem;
	font-weight: 600;
}

.sub-cont.festival.guide .area-basic.custom-5 h6 {
	position: absolute;
	left: 0;
	top: 50%;
	font-size: 1.2rem;
	font-weight: 400;
	font-family: "GmarketSans";
}

.sub-cont.festival.guide .area-basic.custom-5 img {
	width: initial;
	max-width: 26.1rem;
}

.sub-cont.festival.guide .area-basic.custom-6 {
	padding-top: 3rem;
}

.sub-cont.festival.guide .area-basic.custom-6 h6 {
	font-size: 1.2rem;
	font-weight: 400;
	font-family: "GmarketSans";
	text-align: left;
	margin-bottom: 1.9rem;
}

.sub-cont.festival.guide .area-basic.custom-6 dl {
	background-color: #fff;
	border-radius: 1rem;
	height: 15.9rem;
	padding-top: 2.25rem;
	padding-left: 1.6rem;
	padding-right: 1.6rem;
	color: #fff;
	background-repeat: no-repeat;
	background-position: 85% 88%;
}

.sub-cont.festival.guide .area-basic.custom-6 dl dt {
	font-weight: 600;
	font-size: 1.3rem;
	margin-bottom: 1.4rem;
}

.sub-cont.festival.guide .area-basic.custom-6 dl dd {
	font-size: 0.9rem;
	font-weight: 400;
	word-break: keep-all;
}

.sub-cont.festival.guide .area-basic.custom-6 li:nth-child(1) dl {
	background-color: var(--show-color);
	background-image: url("../images/sub_dmz_fe_guide_icon_1.png");
}

.sub-cont.festival.guide .area-basic.custom-6 li:nth-child(2) dl {
	background-color: var(--sport-color);
	background-image: url("../images/sub_dmz_fe_guide_icon_2.png");
}

.sub-cont.festival.guide .area-basic.custom-6 li:nth-child(3) dl {
	background-color: #219bd0;
	background-image: url("../images/sub_dmz_fe_guide_icon_3.png");
}

.sub-cont.festival.guide .area-basic.custom-6 li:nth-child(4) dl {
	background-color: var(--exhibition-color);
	background-image: url("../images/sub_dmz_fe_guide_icon_4.png");
}

.sub-cont.festival.guide .area-basic.custom-7 {
	padding-top: 1.8rem;
	padding-bottom: 4.5rem;
}

.sub-cont.festival.guide .area-basic.custom-7 dl {
	margin: 0 auto;
	display: table;
}

.sub-cont.festival.guide .area-basic.custom-7 dl dt {
	font-weight: 400;
	font-family: "GmarketSans";
	font-size: 1.2rem;
	margin-bottom: 1.6rem;
	text-align: center;
}

.sub-cont.festival.guide .area-basic.custom-7 dl dd {
	font-size: 1.2rem;
	font-weight: 300;
}

.sub-cont.festival.guide .area-sub.custom-2 h3 {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 1.3rem;
}

.sub-cont.festival.guide .area-sub.custom-2 h3.two {
	margin-top: 3.25rem;
}

.sub-cont.festival.guide .area-sub.custom-2 p {
	font-weight: 300;
	font-size: 1rem;
}

.sub-cont.festival.guide .area-basic.custom-5 {
	border-top: 1px solid #e8e8e8;
	border-bottom: 1px solid #e8e8e8;
}

.sub-cont.festival.guide .area-basic.custom-7 .area-devide.num-3.gap-1 > li:nth-child(2) {
	border-left: 1px solid #e8e8e8;
	border-right: 1px solid #e8e8e8;
	padding-right: 1rem;
	padding-left: 1rem;
}

@media (max-width: 740px) {
	.sub-cont.festival.guide .area-basic.custom-4 h5 {
		font-size: 1.3rem;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li > div {
		display: block;
		width: 100%;
		height: 43vw;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li > div img {
		width: 100%;
		position: absolute;
		left: -2rem;
		width: 33rem;
		max-width: 33rem;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li:nth-child(1) {
		padding-bottom: 3rem;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li:nth-child(2) > div {
		height: 35vw;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li:nth-child(2) > div img {
		max-width: 31rem;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li:nth-child(3) > div {
		height: 51vw;
	}

	.sub-cont.festival.guide .area-basic.custom-4 > ul > li:nth-child(3) > div img {
		width: 31rem;
	}

	.sub-cont.festival.guide .area-basic.custom-5 h6 {
		top: 3rem;
		left: 50%;
		transform: translateX(-50%);
	}

	.sub-cont.festival.guide .area-basic.custom-5 img {
		max-width: 70vw;
	}

	.sub-cont.festival.guide .area-basic.custom-6 h6 {
		text-align: center;
	}

	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li {
		width: 48%;
		margin-right: 3%;
	}

	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li:nth-of-type(2n + 0) {
		margin-right: 0%;
	}
	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li:nth-of-type(2n + 1) {
		margin-top: 2rem;
		clear: both;
	}
	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li:nth-of-type(2n + 2) {
		margin-top: 2rem;
	}
	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li:nth-child(1) {
		margin-top: 0rem;
	}
	.sub-cont.festival.guide .area-basic.custom-6 .area-devide.num-4.gap3 > li:nth-child(2) {
		margin-top: 0rem;
	}

	.sub-cont.festival.guide .area-basic.custom-7 .area-devide.num-3.gap-1 > li {
		width: 33%;
		text-align: center;
	}

	.sub-cont.festival.guide .area-basic.custom-7 .area-devide.num-3.gap-1 > li:nth-child(1) {
		padding-right: 1rem;
	}

	.sub-cont.festival.guide .area-basic.custom-7 .area-devide.num-3.gap-1 > li:nth-child(2) {
		border-left: 1px solid #e8e8e8;
		border-right: 1px solid #e8e8e8;
		padding-right: 1rem;
		padding-left: 1rem;
	}

	.sub-cont.festival.guide .area-basic.custom-7 dl dd {
		font-size: 1rem;
	}

	.sub-cont.festival.guide .area-basic.custom-7 .area-devide.num-3.gap-1 > li:nth-child(3) {
		padding-left: 1rem;
	}

	.sub-cont.festival.guide .area-sub h2 {
		line-height: 150%;
		letter-spacing: -1px;
	}

	.sub-cont.festival.guide .area-sub.custom-2 {
		margin-top: 1rem;
	}

	.sub-cont.festival.guide .area-basic.custom-5 {
		border-top: 1px solid #e8e8e8;
		padding-top: 7rem;
		border-bottom: 1px solid #e8e8e8;
		padding-bottom: 3rem;
	}

	.sub-cont.festival.guide .area-basic.custom-6 {
		padding-top: 3rem;
		padding-bottom: 0;
	}
}

.material-symbols-rounded {
	font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
	padding-top: 8px;
}

.top_btn {
	background-color: #fff;
	position: fixed;
	bottom: 30px;
	left: 50%;
	margin-left: 740px;
	width: 3rem;
	height: 3rem;
	text-align: center;
	box-shadow: 7px 5px 10px 0px rgba(0, 0, 0, 0.12);
	z-index: 999;
	background: url("../images/btn_top.svg") no-repeat 50% 50% / cover;
}

@media (max-width: 1620px) {
	.top_btn {
		left: auto;
		margin-left: 0;
		right: 30px;
	}
}
@media (max-width: 740px) {
	.top_btn {
		right: 1rem;
		bottom: 1rem;
	}
}

/* 팝업 */
.popup-container {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	justify-content: center;
	align-items: center;
	flex-direction: row;
	display: none;
	z-index: 1000;
	background: rgba(0, 0, 0, 0.7);
}

.popup-container.on {
	display: flex;
}

.popup-container .area-basic {
	padding: 0 30px;
}

.popup-wrap {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	padding: 2rem;
}

.popup-slider {
	position: relative;
}

.popup-slider .swiper-container {
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1;
}

.popup-slider .swiper-container.center .swiper-wrapper {
	justify-content: center;
}

.popup-slider .swiper-container.center .swiper-slide:last-child {
	margin-right: 0 !important;
}

.popup-slider a {
	display: block;
	height: 100%;
}

.popup-slider a:focus-visible {
	border: 3px dotted #000;
	outline: none;
}

.popup-slider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.popup-next,
.popup-prev {
	position: absolute;
	top: 50%;
	z-index: 2;
	margin-top: -25px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.16);
	border: 0;
	cursor: pointer;
}

.popup-next .material-icons,
.popup-prev .material-icons {
	font-size: 28px;
}

.popup-next.swiper-button-disabled,
.popup-prev.swiper-button-disabled {
	display: none;
}

.popup-prev {
	left: -25px;
}

.popup-next {
	right: -25px;
}

.popup-option {
	display: flex;
	text-align: center;
	margin-top: 30px;
	align-items: center;
	justify-content: center;
}

.popup-option .input {
	width: 15px;
	height: 15px;
	margin-top: -3px;
	margin-right: 10px;
	vertical-align: middle;
}

.popup-option .label {
	color: #fff;
	font-size: 16px;
	vertical-align: middle;
	cursor: pointer;
}

.popup-option .btn-close {
	border: 0;
	cursor: pointer;
	background: none;
	margin-left: 20px;
}

.popup-option .btn-close .material-icons {
	color: #fff;
	font-size: 24px;
}

@media (max-width: 740px) {
	.popup-wrap {
		padding: 0 15px;
	}

	.popup-next,
	.popup-prev {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}

	.popup-next .material-icons,
	.popup-prev .material-icons {
		font-size: 24px;
	}

	.popup-prev {
		left: -15px;
	}

	.popup-next {
		right: -15px;
	}
}

/* 서브메인 */
.sub-main-top {
	margin-top: 1.37rem;
	margin-bottom: 2.4rem;
}

.sub-main-top::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: -1;
	height: 16.75rem;
	border-top: 1px solid rgba(255, 255, 255, 0.45);
}
.forum .sub-main-top::before {
	background: var(--forum-color);
}
.exhibition .sub-main-top::before {
	background: var(--exhibition-color);
}
.etc .sub-main-top::before {
	background: var(--etc-color);
}
.sport .sub-main-top::before {
	background: var(--sport-color);
}
.show .sub-main-top::before {
	background: var(--show-color);
}

.sub-main-top .item-top {
	position: relative;
}

.sub-main-top .item-image {
	position: relative;
	height: 28rem;
}
.sub-main-top.issue .item-image::before {
	content: "";
	position: absolute;
	top: -0.8rem;
	left: 2.45rem;
	width: 3.9rem;
	height: 3.7rem;
	background: url(../images/icon_issue.png) no-repeat 50% 50% / contain;
}
.sub-main-top .item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.sub-main-top .item-info {
	position: absolute;
	bottom: 0;
	right: 0;
	min-width: 23rem;
	background: #fff;
	padding: 1.3rem 0 0 1.8rem;
	color: #393939;
}
.sub-main-top .item-title {
	margin-bottom: 2.2rem;
	font-family: "GmarketSans";
	font-size: 1.8672rem;
	font-weight: bold;
	line-height: normal;
	letter-spacing: -0.0747rem;
}
.sub-main-top .item-sebu {
	display: flex;
	font-size: 1rem;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.03rem;
}
.sub-main-top .item-sebu dt {
	flex: 0 0 auto;
	font-weight: bold;
	margin-right: 1.5rem;
}
.sub-main-top .item-sebu dd {
	flex: 1 1 auto;
	min-width: 0;
}
.sub-main-top .item-sebu + .item-sebu {
	margin-top: 1rem;
}
.sub-main-top .item-text {
	margin-top: 2.5rem;
	border: 0.5rem solid #eee;
	padding: 1.2rem 2rem;
	font-size: 1rem;
	line-height: 1.6;
	letter-spacing: -0.04rem;
}

.sub-main-top .usr-button-1 {
	display: block;
	width: auto;
	margin-top: 1.4rem;
}

@media (max-width: 740px) {
	.sub-main-top {
		margin-bottom: 2rem;
	}
	.sub-main-top::before {
		height: 5rem;
	}

	.sub-main-top .item-image {
		height: 13.6rem;
		margin-left: -1rem;
		margin-right: -1rem;
	}
	.sub-main-top .item-image::before {
		/* width: 2.4rem;
		height: 2.3294rem; */
		left: 1rem;
	}
	.sub-main-top .item-info {
		position: relative;
		bottom: auto;
		right: auto;
		padding: 1.4rem 1rem 0;
		margin-top: -4rem;
	}
	.sub-main-top .item-title {
		margin-bottom: 1.2rem;
		font-size: 1.5rem;
	}
	.sub-main-top .item-sebu + .item-sebu {
		margin-top: 0.8rem;
	}
	.sub-main-top .usr-button-1 {
		margin-left: -1rem;
		margin-right: -1rem;
	}

	.sub-main-top .item-text {
		margin-top: 2rem;
		padding: 1rem 1.2rem;
	}
}

.sub-main-list {
	margin: 0 -1rem;
}
.sub-main-list > li {
	width: 50%;
	padding: 0 1rem;
	margin-bottom: 2.25rem;
}

.sub-main-list .item-wrap {
	border: 1px solid #c2c2c2;
	background: #fff;
}

.sub-main-list .item-image {
	height: 18.3rem;
}
.sub-main-list .item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.sub-main-list .item-bottom {
	padding: 0 2.6rem 2.6rem;
	color: #393939;
}
.sub-main-list .item-info {
	position: relative;
	margin-top: -3.35rem;
	background: #fff;
	padding: 1.2rem 1.9rem;
}
.sub-main-list .item-title {
	margin-bottom: 1.4rem;
	font-family: "GmarketSans";
	font-size: 1.2rem;
	font-weight: bold;
	line-height: normal;
	letter-spacing: -0.048rem;
}
.sub-main-list .item-sebu {
	display: flex;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.027rem;
}
.sub-main-list .item-sebu dt {
	flex: 0 0 auto;
	font-weight: bold;
	margin-right: 0.7rem;
}
.sub-main-list .item-sebu dd {
	flex: 1 1 auto;
	min-width: 0;
}
.sub-main-list .item-sebu + .item-sebu {
	margin-top: 0.85rem;
}

.sub-main-list .usr-button-1 {
	display: block;
	width: auto;
	margin-top: 1.1rem;
}

.sub-main-list .item-text {
	font-size: 1.1rem;
	line-height: 1.6;
	letter-spacing: -0.044rem;
}

@media (max-width: 740px) {
	.sub-main-list {
		margin-left: -1rem;
		margin-right: -1rem;
	}
	.sub-main-list > li {
		width: auto;
		padding: 0;
	}
	.sub-main-list .item-wrap {
		border-left: 0;
		border-right: 0;
	}
	.sub-main-list .item-info {
		padding: 1.4rem 1rem;
	}
	.sub-main-list .item-bottom {
		padding: 0 1rem 1.2rem;
	}
	.sub-main-list .usr-button-1 {
		margin-left: -1rem;
		margin-right: -1rem;
	}

	.sub-main-list .item-text {
		padding: 0 1rem;
	}
}

/* video */
.video-container {
	display: flex;
	flex-wrap: wrap;
}

.video-container iframe {
	width: calc(50% - 20px);
	height: 325px;
	border: 0;
	margin: 10px;
}

@media (max-width: 767px) {
	.video-container iframe {
		width: 100%;
	}
}

/* ckeditor */
.ck-editor ol,
.ck-editor ul,
.ck-content ol,
.ck-content ul {
	padding: revert;
}

.ck-content figcaption {
	display: block;
	overflow: hidden;
	position: absolute;
	left: 0;
	top: -9999em;
}

/* animation */
[data-aos="fade-up"] {
	transform: translate3d(0, 60px, 0);
}

@keyframes floating {
	0% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-25px);
	}
	100% {
		transform: translateY(0);
	}
}

@keyframes rotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

@keyframes marquee {
	from {
		transform: translateX(0%);
	}
	to {
		transform: translateX(-109%);
	}
}
