@charset "utf-8";

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* animation */
/* word */
.wordAni{opacity:0;}
.wordAni.active{opacity:1;}
.wordAni > span{display:inline-block;}
.wordAni .word{display:inline-block;}
/* motion rail */
[data-motion-rail]{position:absolute; left:0px; top:0px; text-transform:uppercase; font-size:200px; letter-spacing:2px; white-space:nowrap;}
[data-motion-rail] .eocjs-newsticker-container{position:relative; width:100%; padding-top:30%;}
[data-motion-rail].eocjs-newsticker .eocjs-newsticker-one,
[data-motion-rail].eocjs-newsticker .eocjs-newsticker-two{position:absolute; left:0; top:0; white-space:nowrap;}
/* hide show */
.ani_hide{overflow:hidden; opacity:0; transform:translateY(-20px); transition:opacity 0.8s ease-in-out 0s, transform 0.8s ease-in-out 0s;}
.ani_hide.motion_in{opacity:1; transform:translateY(0px);}
/* box show */
.ani_box{position:relative;}
.ani_box:before,
.ani_box:after{content:''; display:block; position:absolute; top:0px; z-index:3; width:50.5%; height:100%; background:#fff; transform:scaleX(1); transition:transform 0.7s ease-in-out 0s;}
.ani_box .obj_blank:before,
.ani_box .obj_blank:after{content:''; display:block; position:absolute; top:0px; z-index:2; width:50%; height:100%; background:#0083c3; transform:scaleX(1); transition:transform 0.6s ease-in-out 0s;}
.ani_box:before{left:-1px; transform-origin:0 0;}
.ani_box .obj_blank:before{left:0px; transform-origin:0 0;}
.ani_box:after{right:-1px; transform-origin:100% 0;}
.ani_box .obj_blank:after{right:0px; transform-origin:100% 0;}
.ani_box.motion_in:before,
.ani_box.motion_in:after{transform:scaleX(0);}
.ani_box.motion_in .obj_blank:before,
.ani_box.motion_in .obj_blank:after{transform:scaleX(0); transition-delay:0.15s;}

@keyframes path01{
	0%{stroke-dashoffset:1500;}
	100%{stroke-dashoffset:0;}
}



/**
 * #main-visual-section
**/
#main-visual-section{width:100%;height:660px !important;overflow:hidden;position:relative;background-size:cover;}
.area_visual{position:relative;width:100%;height: 100% !important;}
.area_visual .swiper,
.area_visual .swiper .box{height:100%;}
.area_visual .swiper .box{overflow:hidden; position:relative;}
.area_visual [data-visual="text"]{display:flex;flex-flow:column wrap;justify-content:center;align-items:flex-start;position:absolute;top: -5%;left:50%;z-index:60;width: 100%;max-width: 1200px;height:100%;margin-left: -600px;color:#fff;}
.area_visual [data-visual="text"] > p{font-family: 'GmarketSansBold';width: 100%;text-align: left;font-size: 24px;font-weight: 400;padding-bottom: 0.2em;}
.area_visual [data-visual="text"] > span{display:block; margin:5px 0 30px; font-size:0px;}
.area_visual [data-visual="text"] > em{font-family: 'GmarketSansBold';width: 100%;text-align: left;font-size: 60px;font-weight: 700;padding-bottom: 0.5em;}
.area_visual [data-visual="text"] > .vlogo_img {opacity:0; display: inline-block; margin: 0 auto; text-align: center;}
.area_visual [data-visual="text"] > .vlogo_img img {width:100%;max-width:484px;}
.area_visual [data-visual="img"]{display:block; height:100%;}
.area_visual [data-visual="img"] i{display:block; height:100%; background-repeat:no-repeat; background-position:50% 0; background-size:cover; transform:scale(1.08); transition:transform 4s ease-in-out;}
.area_visual .swiper-slide-active [data-visual="img"] i{transform:scale(1);}
.area_visual [data-visual="text"] > p span.bold .word1,
.area_visual [data-visual="text"] > p span.bold .word2,
.area_visual [data-visual="text"] > p span.bold .word3,
.area_visual [data-visual="text"] > p span.bold .word4 {font-weight:bold;}
.area_visual [data-visual="text"] > p span.bold .word4 .word:last-child {font-weight:normal;}
.area_visual .area_arrow {width: 150px !important;text-align: center;display: inline-block;position:absolute;left: 50%;margin-left: -75px;bottom: 50px;z-index:2;color: #fff;}
.swiper-pagination-bullet {width:10px !important;height: 6px !important;background-color:#ffffff !important;margin:0 3px;opacity: 0.5 !important;border-radius: 0;}
.swiper-pagination-bullet-active {width: 60px !important;opacity: 1 !important;background-color:#ffffff !important;}
.swiper-button-next, .swiper-button-prev {position:absolute;display:grid;width:70px;height: 70px;background-color : rgba(0,0,0,0.5);border-radius:50%;justify-content: center;align-items: center;}
.swiper-button-next:after, .swiper-button-prev:after {font-size: 1.6em; color:#fff;}
.swiper-button-next {right: 50%;margin-right: -700px;}
.swiper-button-prev {left: 50%;margin-left: -700px;}

@media screen and (max-width:1410px){
	.area_visual .mmark {left:10px;margin-left:inherit;}
	.area_visual .mmark img {width:300px;}
}
@media screen and (max-width:1200px){
	.area_visual .mmark {margin-top: 110px;}
	.area_visual .mmark img {width:270px;}
	.area_visual [data-visual="text"] {display: inline-block;width: 500px;max-width: inherit;top: 45%;left: 50%;margin: 0px;background-color: rgb(0,0,0,0.5);height: auto;transform: translate(-50%, -50%);text-align: center;padding: 2em;}
	.area_visual [data-visual="text"] > p{font-size:2vw; text-align:center;}
	.area_visual [data-visual="text"] > em{font-size: 4vw; text-align:center;}
	.area_visual [data-visual="text"] > .vlogo_img img {width:90%;}
}
@media screen and (max-width:980px){
	.area_visual .mmark img {width:250px;}
	.area_visual .area_arrow {width:140px;bottom: 30px;left: 50%;margin-left:-70px;}
	.area_visual .swiper_page {font-size:16px;}
	.area_visual [data-visual="text"] > .vlogo_img img {width:75%;}
}
@media screen and (max-width:768px){
	.area_visual .mmark img {width:220px;}
	.area_visual [data-visual="text"] > p{font-size:3vw}
	.area_visual [data-visual="text"] > em{font-size: 6vw;}
	.area_visual [data-visual="text"] > .vlogo_img img {width:60%;}
}
@media screen and (max-width:550px){
	.area_visual [data-visual="text"] {width: 300px;padding: 1em 10px;}
}
@media screen and (max-width:460px){
	.area_visual .mmark img {width:200px;}
	.area_visual [data-visual="text"] > p{font-size: 5vw;}
	.area_visual [data-visual="text"] > em{font-size: 9vw;}
	.area_visual [data-visual="text"] > .vlogo_img img {width:45%;}
}
/* Header logo */
#logo{display:flex;align-items:center;gap:28px;flex-shrink:0;height:100%}
#logo .logo-item{display:flex;align-items:center;line-height:1}
#logo .logo-item:hover{background:none}
#logo .logo-moel img{width:145px;height:auto}
#logo .logo-koddi img{width:205px;height:auto}

/* Menu hover */
#gnb_1dul>li>.gnb_1da{transition:color .25s ease}
#gnb_1dul>li:hover>.gnb_1da,
#gnb_1dul>li>.gnb_1da:hover,
#gnb_1dul>li>.gnb_1da.on,
#gnb_1dul .gnb_2da:hover{
color:#ffaf49!important;
}


/* =========================================================
   CONTEST-VISUAL-CSS-V2
   공모전 메인 비주얼 최종 스타일
========================================================= */
.area_visual [data-visual="text"]{
	display:flex !important;
	flex-direction:column !important;
	flex-wrap:nowrap !important;
	align-items:flex-start !important;
	justify-content:center !important;
	top:0 !important;
	left:50% !important;
	width:100% !important;
	max-width:1200px !important;
	height:100% !important;
	margin-left:-600px !important;
	padding:0 !important;
	text-align:left !important;
	background:none !important;
	transform:none !important;
	color:#fff;
	font-family:'Pretendard',sans-serif;
}

.area_visual .visual-kicker{
	width:auto !important;
	margin:0 0 20px !important;
	padding:0 !important;
	font-family:'Pretendard',sans-serif !important;
	font-size:20px !important;
	font-weight:700 !important;
	line-height:1.35 !important;
	letter-spacing:-.04em;
	color:#fff !important;
}

.area_visual .visual-white{color:#fff !important;}
/* 강조 문구: 사회적미션으로 / 사회적가치 */
.area_visual .visual-point{color:#ffaf49 !important;}

.area_visual .visual-year{
	display:block !important;
	margin:0 0 3px !important;
	font-size:36px !important;
	font-weight:800 !important;
	line-height:1.15 !important;
	color:#fff !important;
}

.area_visual .visual-title{
	margin:0 0 32px !important;
	padding:0 !important;
	font-size:58px !important;
	font-weight:800 !important;
	line-height:1.16 !important;
	letter-spacing:-.055em;
	color:#fff !important;
}

.area_visual .visual-description{
	width:auto !important;
	margin:0 0 26px !important;
	padding:0 !important;
	font-family:'Pretendard',sans-serif !important;
	font-size:18px !important;
	font-weight:600 !important;
	line-height:1.55 !important;
	letter-spacing:-.035em;
	color:#fff !important;
}

.area_visual .visual-date{
	width:auto !important;
	margin:0 0 32px !important;
	padding:0 !important;
	font-family:'Pretendard',sans-serif !important;
	font-size:20px !important;
	font-weight:800 !important;
	line-height:1.4 !important;
	letter-spacing:-.035em;
	color:#ffaf49 !important;
}

.area_visual .visual-buttons{
	display:flex !important;
	align-items:center;
	gap:16px;
	margin:0 !important;
}

.area_visual .visual-btn{
	display:flex !important;
	align-items:center;
	justify-content:center;
	gap:22px;
	min-width:184px;
	height:44px;
	padding:0 22px;
	border:1px solid transparent;
	border-radius:24px;
	font-size:15px;
	font-weight:700;
	line-height:1;
	letter-spacing:-.025em;
	transition:all .25s ease;
}

.area_visual .visual-btn b{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:22px;
	font-weight:500;
	line-height:1;
}

.area_visual .visual-btn-apply{
	color:#fff !important;
	background:#ffaf49 !important;
	border-color:#ffaf49 !important;
}

.area_visual .visual-btn-download{
	color:#fff !important;
	background:rgba(7,14,42,.18) !important;
	border-color:rgba(255,255,255,.85) !important;
}

@media screen and (max-width:1240px){
	.area_visual [data-visual="text"]{
		left:30px !important;
		width:calc(100% - 60px) !important;
		max-width:760px !important;
		margin-left:0 !important;
	}
	.area_visual .visual-title{font-size:50px !important;}
}

@media screen and (max-width:900px){
	#main-visual-section{height:620px !important;}
	.area_visual [data-visual="text"]{
		left:20px !important;
		width:calc(100% - 40px) !important;
		max-width:680px !important;
		padding:30px !important;
		background:rgba(7,14,42,.58) !important;
	}
	.area_visual .visual-kicker{font-size:18px !important;}
	.area_visual .visual-year{font-size:32px !important;}
	.area_visual .visual-title{font-size:44px !important;}
	.area_visual .visual-description{font-size:17px !important;}
	.area_visual .visual-date{font-size:18px !important;}
}

@media screen and (max-width:640px){
	#main-visual-section{height:600px !important;}
	.area_visual [data-visual="text"]{
		left:15px !important;
		width:calc(100% - 30px) !important;
		padding:24px 20px !important;
	}
	.area_visual .visual-kicker{margin-bottom:14px !important;font-size:15px !important;}
	.area_visual .visual-year{font-size:27px !important;}
	.area_visual .visual-title{margin-bottom:22px !important;font-size:34px !important;}
	.area_visual .visual-description{margin-bottom:20px !important;font-size:14px !important;}
	.area_visual .visual-date{margin-bottom:25px !important;font-size:15px !important;}
	.area_visual .visual-buttons{width:100%;flex-wrap:wrap;gap:10px;}
	.area_visual .visual-btn{min-width:165px;height:44px;padding:0 18px;font-size:14px;}
}


/* =========================================================
   CONTEST-VISUAL-SEQUENCE-V1
   설명1 → 설명2 → 설명3 → 설명5 → 설명4 → 버튼 순차 애니메이션
========================================================= */
.area_visual .visual-seq{
	opacity:0;
	transform:translateY(24px);
	filter:blur(3px);
	will-change:opacity, transform, filter;
}

.area_visual .swiper-slide-active .visual-seq{
	animation:contestVisualFadeUp .72s cubic-bezier(.22,.61,.36,1) forwards;
}

/* 순서: 설명1, 설명2, 설명3, 설명5, 설명4, 버튼 */
.area_visual .swiper-slide-active .visual-seq-1{animation-delay:.10s;}
.area_visual .swiper-slide-active .visual-seq-2{animation-delay:.30s;}
.area_visual .swiper-slide-active .visual-seq-3{animation-delay:.50s;}
.area_visual .swiper-slide-active .visual-seq-4{animation-delay:.76s;}
.area_visual .swiper-slide-active .visual-seq-5{animation-delay:1.02s;}
.area_visual .swiper-slide-active .visual-seq-6{animation-delay:1.28s;}

@keyframes contestVisualFadeUp{
	0%{
		opacity:0;
		transform:translateY(24px);
		filter:blur(3px);
	}
	100%{
		opacity:1;
		transform:translateY(0);
		filter:blur(0);
	}
}

/* 슬라이드가 다시 활성화될 때 애니메이션 재실행 */
.area_visual .swiper-slide:not(.swiper-slide-active) .visual-seq{
	animation:none !important;
	opacity:0;
	transform:translateY(24px);
	filter:blur(3px);
}

/* 모션 최소화 설정 사용자는 애니메이션 없이 바로 표시 */
@media (prefers-reduced-motion: reduce){
	.area_visual .visual-seq,
	.area_visual .swiper-slide-active .visual-seq{
		animation:none !important;
		opacity:1 !important;
		transform:none !important;
		filter:none !important;
	}
}


/* =========================================================
   MAIN INFO BAND - 5개 배너 / 모바일 2열+2열+QR 1열
========================================================= */

.main-info-band *{
	box-sizing:border-box;
}

.main-info-band{
	position:relative;
	z-index:200;
	width:100%;
	margin-top:-100px;
	margin-bottom:70px;
	padding:0 30px;
}

.main-info-band-inner{
	display:grid;
	grid-template-columns:repeat(6,minmax(0,1fr));
	width:100%;
	max-width:1200px;
	margin:0 auto;
	overflow:hidden;
	background:#fff;
	border:1px solid #e1e5eb;
	border-radius:26px;
	box-shadow:0 10px 30px rgba(0,0,0,.14);
}

.main-info-card{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	min-width:0;
	min-height:190px;
	padding:22px 16px;
	background:#fff;
	border-left:1px solid #e3e6eb;
	text-align:center;
}

.main-info-card:first-child{
	border-left:0;
}

.main-info-card__icon{
	display:block;
	width:auto;
	height:auto;
	max-width:66px;
	max-height:66px;
	margin:0 0 16px;
	object-fit:contain;
}

.main-info-card__text{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	min-width:0;
}

.main-info-card__title{
	display:block;
	margin:0 0 7px;
	color:#222;
	font-size:20px;
	font-weight:700;
	line-height:1.3;
	letter-spacing:-.045em;
	word-break:keep-all;
}

.main-info-card__value{
	display:block;
	color:#e48011;
	font-size:40px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.035em;
	white-space:nowrap;
}

.main-info-card__value span{
	margin-left:3px;
	font-size:22px;
	font-weight:800;
}

.main-info-card__sub{
	display:block;
	color:#e48011;
	font-size:18px;
	font-weight:800;
	line-height:1.4;
	letter-spacing:-.04em;
	text-align:center;
	word-break:keep-all;
}

.main-info-card__sub--award{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:3px;
	font-size:14px;
	line-height:1.35;
}

.main-info-card__sub--award span{
	display:block;
	width:100%;
	white-space:nowrap;
}

.main-info-card--qr{
	gap:14px;
	color:#111;
	text-decoration:none;
}

.main-info-card__qr{
	flex:0 0 auto;
	width:82px !important;
	height:82px !important;
	max-width:none !important;
	max-height:none !important;
	object-fit:contain !important;
}

.main-info-card__qr-text{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:100%;
	text-align:center;
}

.main-info-card__qr-text strong{
	display:block;
	margin:0 0 7px;
	color:#111;
	font-size:17px;
	font-weight:800;
	line-height:1.25;
	letter-spacing:-.045em;
	word-break:keep-all;
	width:100%;
	text-align:center;
}

.main-info-card__qr-text em{
	display:block;
	width:100%;
	text-align:center;
	color:#666;
	font-size:13px;
	font-weight:500;
	font-style:normal;
	line-height:1.45;
	letter-spacing:-.03em;
	word-break:keep-all;
}

@media screen and (max-width:1200px){
	.main-info-band{
		margin-top:-80px;
		padding:0 20px;
	}

	.main-info-band-inner{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}

	.main-info-card:nth-child(3n+1){
		border-left:0;
	}

	.main-info-card:nth-child(n+4){
		border-top:1px solid #e3e6eb;
	}

	.main-info-card{
		min-height:170px;
		padding:18px 12px;
	}

	.main-info-card__icon{
		max-width:58px;
		max-height:58px;
		margin-bottom:13px;
	}

	.main-info-card__title{
		font-size:18px;
	}

	.main-info-card__value{
		font-size:34px;
	}

	.main-info-card__value span{
		font-size:19px;
	}

	.main-info-card__sub{
		font-size:16px;
	}

	.main-info-card__qr{
		width:70px !important;
		height:70px !important;
	}

	.main-info-card__qr-text strong{
		font-size:15px;
	}

	.main-info-card__qr-text em{
		font-size:12px;
	}
}

@media screen and (max-width:768px){
	.main-info-band{
		margin-top:-50px;
		margin-bottom:35px;
		padding:0 10px;
	}

	.main-info-band-inner{
		grid-template-columns:repeat(2,minmax(0,1fr));
		border-radius:18px;
	}

	.main-info-card{
		min-height:150px;
		padding:16px 10px;
		border-left:0;
		border-bottom:1px solid #e3e6eb;
	}

	.main-info-card:nth-child(even){
		border-left:1px solid #e3e6eb;
	}

	.main-info-card:nth-child(odd){
		border-left:0;
	}

	.main-info-card:nth-child(n+3){
		border-top:1px solid #e3e6eb;
	}

	.main-info-card__icon{
		max-width:52px;
		max-height:52px;
		margin-bottom:11px;
	}

	.main-info-card__title{
		font-size:17px;
	}

	.main-info-card__value{
		font-size:31px;
	}

	.main-info-card__value span{
		font-size:17px;
	}

	.main-info-card__sub{
		font-size:15px;
	}

	.main-info-card--qr{
		grid-column:auto;
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		width:100%;
		min-height:150px;
		padding:16px 10px;
		gap:10px;
		border-bottom:1px solid #e3e6eb;
		text-align:center;
	}

	.main-info-card--qr .main-info-card__qr{
		display:block;
		width:72px !important;
		height:72px !important;
		margin:0 auto;
	}

	.main-info-card--qr .main-info-card__qr-text{
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		width:100%;
		margin:0 auto;
		text-align:center;
	}

	.main-info-card--qr .main-info-card__qr-text strong{
		width:100%;
		margin:0 0 5px;
		font-size:15px;
		text-align:center;
	}

	.main-info-card--qr .main-info-card__qr-text em{
		width:100%;
		font-size:11px;
		line-height:1.4;
		text-align:center;
	}

	.main-info-card__sub--award{
		font-size:12px;
	}

	.main-info-card__sub--award span{
		white-space:normal;
	}
}

@media screen and (max-width:480px){
	.main-info-card{
		min-height:128px;
		padding:12px 8px;
	}

	.main-info-card__icon{
		max-width:44px;
		max-height:44px;
		margin-bottom:9px;
	}

	.main-info-card__title{
		margin-bottom:5px;
		font-size:15px;
	}

	.main-info-card__value{
		font-size:27px;
	}

	.main-info-card__value span{
		font-size:15px;
	}

	.main-info-card__sub{
		font-size:13px;
	}

	.main-info-card--qr{
		min-height:128px;
		padding:12px 8px;
		gap:8px;
	}

	.main-info-card--qr .main-info-card__qr{
		width:60px !important;
		height:60px !important;
	}

	.main-info-card--qr .main-info-card__qr-text strong{
		font-size:14px;
	}

	.main-info-card--qr .main-info-card__qr-text em{
		font-size:10px;
	}

	.main-info-card__sub--award{
		font-size:11px;
		line-height:1.35;
	}
}



/* 섹션 타이틀 공통 */
.contest-overview__title,
.contest-process__title,
.contest-awards__title,
.contest-judging__title,
.contest-apply__title,
.contest-etc__title{
	font-family:'Pretendard','Noto Sans KR',sans-serif;
	font-weight:800;
	letter-spacing:-.045em;
}

/* =========================================================
   CONTEST OVERVIEW - reference layout / fixed
========================================================= */
.contest-overview,
.contest-overview *{
	box-sizing:border-box;
}

.contest-overview{
	position:relative;
	width:100%;
	margin:0;
	padding:72px 30px 86px;
	background:#fff !important;
	background-image:none !important;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-overview__inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0;
	background:transparent !important;
	border:0 !important;
	border-radius:0 !important;
	box-shadow:none !important;
}

.contest-overview__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:230px;
	height:62px;
	margin:0 auto 64px;
	padding:0;
	background:#e48011 !important;
	border:0 !important;
	border-radius:24px !important;
	box-shadow:none !important;
	color:#fff !important;
	font-size:30px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-overview__body{
	width:100%;
	margin:0;
	padding:0;
	background:transparent !important;
	border:0 !important;
	border-radius:0 !important;
	box-shadow:none !important;
}

.contest-overview__row{
	display:grid;
	grid-template-columns:180px minmax(0,1fr);
	align-items:start;
	column-gap:24px;
	width:100%;
	margin:0 0 34px;
	padding:0;
	background:transparent !important;
	border:0 !important;
	border-radius:0 !important;
	box-shadow:none !important;
}

.contest-overview__row:last-child{margin-bottom:0;}

.contest-overview__row h3{
	margin:0;
	padding:0;
	color:#111;
	font-size:21px;
	font-weight:800;
	line-height:1.55;
	letter-spacing:-.045em;
	white-space:nowrap;
}

.contest-overview__row h3 span{margin-right:3px;}

.contest-overview__text{
	min-width:0;
	margin:0;
	padding:0;
	color:#333;
	font-size:20px;
	font-weight:500;
	line-height:1.58;
	letter-spacing:-.04em;
	word-break:keep-all;
}

.contest-overview__red{
	color:#ff1c17 !important;
	font-weight:800;
}

.contest-overview__notice{
	margin:4px 0 0;
	padding:0;
	color:#6c6c6c;
	font-size:15px;
	font-weight:500;
	line-height:1.55;
}

.contest-overview__svi-title{
	display:block;
	width:max-content;
	max-width:100%;
	margin:14px 0 6px;
	padding:5px 8px;
	background:#e48011 !important;
	color:#fff !important;
	font-size:16px;
	font-weight:700;
	line-height:1.3;
}

.contest-overview__sub-list{
	margin:0;
	padding:0;
	list-style:none;
}

.contest-overview__sub-list li{
	position:relative;
	margin:3px 0;
	padding:0 0 0 14px;
	color:#606060;
	font-size:15px;
	font-weight:500;
	line-height:1.55;
}

.contest-overview__sub-list li:before{
	content:'*';
	position:absolute;
	left:0;
	top:0;
}

.contest-overview__dash{
	position:relative;
	margin:4px 0 0;
	padding:0 0 0 14px;
	color:#555;
	font-size:15px;
	font-weight:500;
	line-height:1.55;
}

.contest-overview__dash:before{
	content:'-';
	position:absolute;
	left:0;
	top:0;
}

.contest-overview__row--host{
	align-items:center;
	margin-top:-4px;
}

.contest-overview__hosts{
	display:flex;
	align-items:center;
	gap:35px;
	min-width:0;
}

.contest-overview__hosts img{
	display:block;
	width:auto;
	height:48px;
	max-width:100%;
	object-fit:contain;
}

.contest-overview__hosts img:first-child{height:46px;}

@media screen and (max-width:1024px){
	.contest-overview{padding:62px 24px 72px;}
	.contest-overview__title{margin-bottom:48px;}
	.contest-overview__row{
		grid-template-columns:160px minmax(0,1fr);
		margin-bottom:28px;
	}
	.contest-overview__row h3{font-size:19px;}
	.contest-overview__text{font-size:18px;}
}

@media screen and (max-width:700px){
	.contest-overview{padding:48px 18px 58px;}
	.contest-overview__title{
		width:180px;
		height:54px;
		margin-bottom:38px;
		font-size:25px;
	}
	.contest-overview__row{
		display:block;
		margin-bottom:29px;
	}
	.contest-overview__row h3{
		margin-bottom:5px;
		font-size:18px;
		white-space:normal;
	}
	.contest-overview__text{
		font-size:16px;
		line-height:1.6;
		word-break:normal;
	}
	.contest-overview__notice,
	.contest-overview__sub-list li,
	.contest-overview__dash{
		font-size:13px;
		word-break:normal;
	}
	.contest-overview__svi-title{
		width:max-content;
		max-width:100%;
		font-size:14px;
	}
	.contest-overview__hosts{
		gap:20px;
		flex-wrap:wrap;
	}
	.contest-overview__hosts img{
		height:40px;
		max-width:210px;
	}
	.contest-overview__hosts img:first-child{height:39px;}
}


/* =========================================================
   CONTEST PROCESS - 추진 절차 및 일정
   아이콘 경로:
   /theme/basic/img/main/process01.png ~ process07.png
========================================================= */
.contest-process,
.contest-process *{
	box-sizing:border-box;
}

.contest-process{
	position:relative;
	width:100%;
	margin:0;
	padding:74px 30px 82px;
	background:#fff;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-process__inner{
	width:100%;
	max-width:1280px;
	margin:0 auto;
}

.contest-process__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:326px;
	height:62px;
	margin:0 auto 62px;
	padding:0 24px;
	border-radius:24px;
	background:#e48011;
	color:#fff;
	font-size:30px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-process__list{
	display:grid;
	grid-template-columns:minmax(130px,1fr) 28px minmax(130px,1fr) 28px minmax(130px,1fr) 28px minmax(130px,1fr) 28px minmax(130px,1fr) 28px minmax(130px,1fr) 28px minmax(130px,1fr);
	align-items:start;
	width:100%;
}

.contest-process__item{
	min-width:0;
	text-align:center;
}

.contest-process__icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100px;
	height:100px;
	margin:0 auto 22px;
	border-radius:50%;
	overflow:hidden;
}

.contest-process__icon--01{background:#e48011;}
.contest-process__icon--02{background:#0870b6;}
.contest-process__icon--03{background:#0867dd;}
.contest-process__icon--04{background:#5038d9;}
.contest-process__icon--05{background:#0867dd;}
.contest-process__icon--06{background:#5b42df;}
.contest-process__icon--07{background:#491ee5;}

.contest-process__icon img{
	display:block;
	width:62px;
	height:62px;
	object-fit:contain;
}

.contest-process__item h3{
	min-height:54px;
	margin:0 0 8px;
	padding:0;
	color:#111;
	font-size:20px;
	font-weight:800;
	line-height:1.35;
	letter-spacing:-.045em;
	word-break:keep-all;
}

.contest-process__item p{
	margin:3px 0 0;
	padding:0;
	color:#222;
	font-size:16px;
	font-weight:500;
	line-height:1.55;
	letter-spacing:-.035em;
	word-break:keep-all;
}

.contest-process__arrow{
	position:relative;
	display:block;
	width:28px;
	height:100px;
}

.contest-process__arrow::before,
.contest-process__arrow::after{
	position:absolute;
	top:47px;
	content:"";
	display:block;
	background:#111;
}

.contest-process__arrow::before{
	left:5px;
	height:2px;
}

.contest-process__arrow::after{
	right:5px;
	width:9px;
	height:9px;
	border-top:2px solid #111;
	border-right:2px solid #111;
	background:transparent;
	transform:rotate(45deg) translateY(-3px);
}

.contest-process__notice{
	margin-top:34px;
	text-align:center;
}

.contest-process__notice p{
	margin:2px 0;
	color:#777;
	font-size:15px;
	font-weight:500;
	line-height:1.5;
	letter-spacing:-.03em;
}

@media screen and (max-width:1200px){
	.contest-process{
		padding-left:24px;
		padding-right:24px;
	}

	.contest-process__list{
		grid-template-columns:repeat(4,minmax(0,1fr));
		gap:38px 24px;
	}

	.contest-process__arrow{
		display:none;
	}

	.contest-process__item{
		position:relative;
	}

	.contest-process__item:not(:last-of-type)::after{
		position:absolute;
		top:48px;
		right:-18px;
		width:9px;
		height:9px;
		border-top:2px solid #111;
		border-right:2px solid #111;
		content:"";
		transform:rotate(45deg);
	}

	.contest-process__item:nth-of-type(4)::after{
		display:none;
	}
}

@media screen and (max-width:820px){
	.contest-process{
		padding:58px 18px 64px;
	}

	.contest-process__title{
		width:260px;
		height:56px;
		margin-bottom:46px;
		border-radius:18px;
		font-size:26px;
	}

	.contest-process__list{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:38px 20px;
	}

	.contest-process__item:nth-of-type(2n)::after{
		display:none;
	}

	.contest-process__arrow--hide-mobile{
		display:none !important;
	}

	.contest-process__icon{
		width:88px;
		height:88px;
		margin-bottom:18px;
	}

	.contest-process__icon img{
		width:54px;
		height:54px;
	}

	.contest-process__item h3{
		min-height:48px;
		font-size:18px;
	}

	.contest-process__item p{
		font-size:14px;
	}

	.contest-process__notice{
		margin-top:28px;
	}

	.contest-process__notice p{
		font-size:13px;
	}
}

@media screen and (max-width:480px){
	.contest-process{
		padding:48px 14px 54px;
	}

	.contest-process__title{
		width:220px;
		height:50px;
		margin-bottom:38px;
		font-size:22px;
	}

	.contest-process__list{
		gap:32px 12px;
	}

	.contest-process__item:not(:last-of-type)::after{
		right:-10px;
	}

	.contest-process__icon{
		width:76px;
		height:76px;
	}

	.contest-process__icon img{
		width:46px;
		height:46px;
	}

	.contest-process__item h3{
		min-height:44px;
		font-size:16px;
	}

	.contest-process__item p{
		font-size:12px;
		line-height:1.5;
	}
}


/* =========================================================
   CONTEST AWARDS - 시상 및 지원내역
========================================================= */
.contest-awards,
.contest-awards *{
	box-sizing:border-box;
}

.contest-awards{
	position:relative;
	width:100%;
	margin:0;
	padding:74px 30px 90px;
	background:#fff;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-awards__inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

.contest-awards__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:250px;
	height:62px;
	margin:0 auto 58px;
	padding:0 22px;
	border-radius:24px;
	background:#e48011;
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-awards__block{
	margin-top:54px;
}

.contest-awards__block:first-of-type{
	margin-top:0;
}

.contest-awards__heading{
	display:flex;
	align-items:baseline;
	flex-wrap:wrap;
	gap:5px;
	margin:0 0 18px;
	color:#111;
	font-size:20px;
	font-weight:800;
	line-height:1.55;
	letter-spacing:-.04em;
}

.contest-awards__heading span{
	flex:0 0 auto;
}

.contest-awards__heading em{
	color:#555;
	font-size:17px;
	font-weight:500;
	font-style:normal;
}

.contest-awards__heading em strong{
	color:#ff2b2b;
	font-weight:700;
}

.contest-awards__table-scroll{
	width:100%;
	overflow-x:auto;
	border-radius:4px;
	-webkit-overflow-scrolling:touch;
}

.contest-awards__table{
	width:100%;
	min-width:760px;
	border-collapse:separate;
	border-spacing:0;
	border:1px solid #cedaf0;
	border-radius:4px;
	overflow:hidden;
	table-layout:fixed;
	background:#fff;
}

.contest-awards__col-group{width:16%;}
.contest-awards__col-rank{width:13%;}
.contest-awards__col-name{width:42%;}
.contest-awards__col-count{width:13%;}
.contest-awards__col-prize{width:16%;}

.contest-awards__table th,
.contest-awards__table td{
	height:48px;
	padding:9px 12px;
	border-right:1px solid #d9e1ee;
	border-bottom:1px solid #d9e1ee;
	color:#222;
	font-size:15px;
	font-weight:500;
	line-height:1.4;
	text-align:center;
	vertical-align:middle;
	word-break:keep-all;
}

.contest-awards__table tr > *:last-child{
	border-right:0;
}

.contest-awards__table thead th{
	height:46px;
	background:#e9f1ff;
	color:#174a91;
	font-weight:700;
}

.contest-awards__table tbody th{
	font-weight:700;
}

.contest-awards__table .contest-awards__group{
	background:#edf3fc;
	color:#173f7c;
	font-weight:800;
}

.contest-awards__table tfoot th,
.contest-awards__table tfoot td{
	border-bottom:0;
	background:#e9f1ff;
	color:#174a91;
	font-weight:800;
}

.contest-awards__support-list,
.contest-awards__follow-list{
	display:grid;
	gap:18px;
}

.contest-awards__support,
.contest-awards__follow{
	position:relative;
	padding-left:25px;
}

.contest-awards__support::before,
.contest-awards__follow::before{
	position:absolute;
	top:7px;
	left:4px;
	width:9px;
	height:9px;
	border:2px solid #111;
	border-radius:50%;
	content:"";
}

.contest-awards__support h4,
.contest-awards__follow h4{
	margin:0 0 7px;
	color:#222;
	font-size:17px;
	font-weight:700;
	line-height:1.5;
	letter-spacing:-.035em;
}

.contest-awards__support p,
.contest-awards__follow p,
.contest-awards__follow li{
	margin:3px 0;
	color:#666;
	font-size:14px;
	font-weight:500;
	line-height:1.65;
	letter-spacing:-.025em;
}

.contest-awards__support p{
	position:relative;
	padding-left:13px;
}

.contest-awards__support p::before{
	position:absolute;
	left:0;
	content:"-";
}

.contest-awards__support small{
	display:block;
	margin-top:3px;
	color:#777;
	font-size:13px;
	font-weight:500;
	line-height:1.55;
}

.contest-awards__event-box{
	width:100%;
	max-width:1100px;
	margin:16px 0 2px 18px;
	border-top:2px solid #222;
	border-bottom:2px solid #222;
	background:#fff;
}

.contest-awards__event-box h4,
.contest-awards__event-box h5{
	margin:0;
	padding:8px 14px;
	border-bottom:1px solid #777;
	background:#e9f1ff;
	color:#111;
	font-size:17px;
	font-weight:800;
	line-height:1.4;
	letter-spacing:-.02em;
}

/* (대상), (일정), (내용)이 있는 행사 개요 */
.contest-awards__event-box--labeled dl{
	margin:0;
	padding:8px 15px 10px;
}

.contest-awards__event-box--labeled dl > div{
	display:grid;
	grid-template-columns:max-content minmax(0,1fr);
	align-items:start;
	column-gap:8px;
	margin:3px 0;
	color:#333;
	font-size:14px;
	line-height:1.6;
}

.contest-awards__event-box--labeled dt{
	position:relative;
	margin:0;
	padding-left:14px;
	font-weight:700;
	white-space:nowrap;
}

.contest-awards__event-box--labeled dt::before{
	position:absolute;
	top:0;
	left:0;
	content:"○";
}

.contest-awards__event-box--labeled dd{
	min-width:0;
	margin:0;
	font-weight:500;
}

/* 원형 기호만 사용하는 창업팀 사업 개요 */
.contest-awards__event-list{
	margin:0;
	padding:8px 15px 10px;
	list-style:none;
}

.contest-awards__event-list li{
	position:relative;
	margin:3px 0;
	padding-left:20px;
	color:#333;
	font-size:14px;
	font-weight:500;
	line-height:1.6;
}

.contest-awards__event-list li::before{
	position:absolute;
	top:0;
	left:0;
	content:"○";
	font-weight:700;
}

.contest-awards__follow ul{
	margin:0;
	padding:0;
	list-style:none;
}

.contest-awards__follow li{
	position:relative;
	padding-left:13px;
}

.contest-awards__follow li::before{
	position:absolute;
	left:0;
	content:"-";
}

.contest-awards__reference{
	display:inline-block;
	margin-left:3px !important;
	color:#777 !important;
	font-size:13px !important;
}

@media screen and (max-width:900px){
	.contest-awards{
		padding:62px 22px 74px;
	}

	.contest-awards__title{
		margin-bottom:46px;
	}

	.contest-awards__block{
		margin-top:44px;
	}

	.contest-awards__heading{
		font-size:18px;
	}

	.contest-awards__heading em{
		font-size:15px;
	}

	.contest-awards__event-box{
		margin-left:0;
	}
}

@media screen and (max-width:600px){
	.contest-awards{
		padding:50px 15px 60px;
	}

	.contest-awards__title{
		width:220px;
		height:52px;
		margin-bottom:38px;
		font-size:23px;
	}

	.contest-awards__block{
		margin-top:38px;
	}

	.contest-awards__heading{
		display:block;
		margin-bottom:14px;
		font-size:17px;
	}

	.contest-awards__heading em{
		display:block;
		margin-top:2px;
		font-size:14px;
		line-height:1.55;
	}

	.contest-awards__table th,
	.contest-awards__table td{
		height:44px;
		padding:8px 9px;
		font-size:13px;
	}

	.contest-awards__support,
	.contest-awards__follow{
		padding-left:21px;
	}

	.contest-awards__support h4,
	.contest-awards__follow h4{
		font-size:15px;
	}

	.contest-awards__support p,
	.contest-awards__follow p,
	.contest-awards__follow li{
		font-size:13px;
	}



	.contest-awards__event-box h4,
	.contest-awards__event-box h5{
		padding:8px 10px;
		font-size:15px;
	}

	.contest-awards__event-box--labeled dl{
		padding:8px 10px 10px;
	}

	.contest-awards__event-box--labeled dl > div{
		grid-template-columns:max-content minmax(0,1fr);
		column-gap:5px;
		font-size:12px;
	}

	.contest-awards__event-box--labeled dt{
		padding-left:13px;
	}

	.contest-awards__event-list{
		padding:8px 10px 10px;
	}

	.contest-awards__event-list li{
		margin:3px 0;
		padding-left:16px;
		font-size:12px;
		letter-spacing:-.035em;
	}

	.contest-awards__event-list li:first-child{
		white-space:nowrap;
		font-size:11.5px;
		letter-spacing:-.05em;
	}
}


/* =========================================================
   CONTEST JUDGING - 심사 방법 및 기준
========================================================= */
.contest-judging,
.contest-judging *{
	box-sizing:border-box;
}

.contest-judging{
	position:relative;
	width:100%;
	margin:0;
	padding:74px 30px 92px;
	background:#fff;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-judging__inner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

.contest-judging__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:250px;
	height:62px;
	margin:0 auto 58px;
	padding:0 22px;
	border-radius:24px;
	background:#e48011;
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-judging__block{
	margin-top:54px;
}

.contest-judging__block:first-of-type{
	margin-top:0;
}

.contest-judging__heading{
	display:flex;
	align-items:baseline;
	flex-wrap:wrap;
	gap:5px;
	margin:0 0 18px;
	color:#111;
	font-size:20px;
	font-weight:800;
	line-height:1.55;
	letter-spacing:-.04em;
}

.contest-judging__heading em{
	color:#666;
	font-size:16px;
	font-weight:500;
	font-style:normal;
}

.contest-judging__steps{
	display:grid;
	grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr) 46px minmax(0,1fr);
	align-items:center;
	gap:0;
	width:100%;
}

.contest-judging__step{
	overflow:hidden;
	border:1px solid #aebbd0;
	background:#fff;
	text-align:center;
}

.contest-judging__step-title{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:8px 12px;
	border-bottom:1px solid #aebbd0;
	background:#e8eef9;
	color:#111;
	font-size:18px;
	font-weight:800;
	line-height:1.3;
}

.contest-judging__step-body{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	min-height:112px;
	padding:14px 12px;
}

.contest-judging__step-body b{
	color:#111;
	font-size:24px;
	font-weight:800;
	line-height:1.3;
}

.contest-judging__step-body span{
	margin-top:2px;
	color:#444;
	font-size:16px;
	font-weight:600;
}

.contest-judging__step-body em{
	display:block;
	width:100%;
	margin-top:12px;
	padding-top:10px;
	border-top:1px solid #d6dde8;
	color:#333;
	font-size:16px;
	font-weight:600;
	font-style:normal;
}

.contest-judging__step-arrow{
	position:relative;
	display:block;
	height:2px;
	background:#9aa8bc;
}

.contest-judging__step-arrow::after{
	position:absolute;
	top:50%;
	right:-1px;
	width:10px;
	height:10px;
	border-top:2px solid #9aa8bc;
	border-right:2px solid #9aa8bc;
	content:"";
	transform:translateY(-50%) rotate(45deg);
}

.contest-judging__subheading{
	position:relative;
	margin:26px 0 8px;
	padding-left:22px;
	color:#111;
	font-size:18px;
	font-weight:800;
	line-height:1.45;
}

.contest-judging__subheading::before{
	position:absolute;
	top:7px;
	left:2px;
	width:10px;
	height:10px;
	border:2px solid #111;
	border-radius:50%;
	content:"";
}

.contest-judging__subheading--second{
	margin-top:48px;
}

.contest-judging__guide{
	margin:0 0 14px;
	color:#666;
	font-size:14px;
	font-weight:500;
	line-height:1.6;
}

.contest-judging__table-scroll{
	width:100%;
	overflow-x:auto;
	border-radius:4px;
	-webkit-overflow-scrolling:touch;
}

.contest-judging__table{
	width:100%;
	min-width:760px;
	border-collapse:separate;
	border-spacing:0;
	border:1px solid #cedaf0;
	border-radius:4px;
	overflow:hidden;
	table-layout:fixed;
	background:#fff;
}

.contest-judging__table th,
.contest-judging__table td{
	height:48px;
	padding:10px 14px;
	border-right:1px solid #d9e1ee;
	border-bottom:1px solid #d9e1ee;
	color:#222;
	font-size:15px;
	font-weight:500;
	line-height:1.5;
	text-align:center;
	vertical-align:middle;
	word-break:keep-all;
}

.contest-judging__table tr > *:last-child{
	border-right:0;
}

.contest-judging__table thead th{
	height:46px;
	background:#e9f1ff;
	color:#174a91;
	font-weight:700;
}

.contest-judging__table tbody th{
	background:#f7f9fc;
	color:#222;
	font-weight:700;
}

.contest-judging__table ul{
	margin:0;
	padding:0;
	list-style:none;
}

.contest-judging__table li{
	position:relative;
	margin:2px 0;
	padding-left:13px;
}

.contest-judging__table li::before{
	position:absolute;
	left:0;
	content:"-";
}

.contest-judging__table tfoot th,
.contest-judging__table tfoot td{
	border-bottom:0;
	background:#e9f1ff;
	color:#174a91;
	font-weight:800;
}

.contest-judging__notes{
	margin-top:12px;
}

.contest-judging__notes p{
	margin:3px 0;
	color:#777;
	font-size:13px;
	font-weight:500;
	line-height:1.55;
}

.contest-judging__notes .is-point{
	color:#ff2b2b;
}

@media screen and (max-width:900px){
	.contest-judging{
		padding:62px 22px 74px;
	}

	.contest-judging__title{
		margin-bottom:46px;
	}

	.contest-judging__block{
		margin-top:44px;
	}

	.contest-judging__heading{
		font-size:18px;
	}

	.contest-judging__heading em{
		font-size:15px;
	}

	.contest-judging__step-title{
		font-size:16px;
	}

	.contest-judging__step-body b{
		font-size:21px;
	}
}

@media screen and (max-width:700px){
	.contest-judging__steps{
		grid-template-columns:1fr;
		gap:16px;
	}

	.contest-judging__step-arrow{
		width:2px;
		height:28px;
		margin:0 auto;
		background:#9aa8bc;
	}

	.contest-judging__step-arrow::after{
		top:auto;
		right:50%;
		bottom:-1px;
		transform:translateX(50%) rotate(135deg);
	}
}

@media screen and (max-width:600px){
	.contest-judging{
		padding:50px 15px 60px;
	}

	.contest-judging__title{
		width:220px;
		height:52px;
		margin-bottom:38px;
		font-size:23px;
	}

	.contest-judging__block{
		margin-top:38px;
	}

	.contest-judging__heading{
		display:block;
		margin-bottom:14px;
		font-size:17px;
	}

	.contest-judging__heading em{
		display:block;
		margin-top:2px;
		font-size:14px;
		line-height:1.55;
	}

	.contest-judging__subheading{
		font-size:16px;
	}

	.contest-judging__guide{
		font-size:13px;
	}

	.contest-judging__table th,
	.contest-judging__table td{
		height:44px;
		padding:8px 9px;
		font-size:13px;
	}
}


/* =========================================================
   하단 공모전 섹션 공통 변수
   신청서류 / 기타사항 영역에서 사용
========================================================= */
:root{
	--contest-max-width:1200px;
	--contest-color:#e48011;
	--contest-color-dark:#174a91;
	--contest-text:#222;
	--contest-sub-text:#666;
	--contest-border:#d8e1ee;
	--contest-head-bg:#e9f1ff;
	--contest-row-bg:#f7f9fc;
	--contest-section-padding:74px 30px 90px;
	--contest-title-height:60px;
	--contest-title-size:28px;
	--contest-heading-size:20px;
	--contest-body-size:16px;
	--contest-small-size:14px;
	--contest-table-size:15px;
}

@media screen and (max-width:820px){
	:root{
		--contest-section-padding:58px 18px 66px;
		--contest-title-height:54px;
		--contest-title-size:24px;
		--contest-heading-size:18px;
	}
}

@media screen and (max-width:600px){
	:root{
		--contest-section-padding:48px 15px 58px;
		--contest-title-height:50px;
		--contest-title-size:22px;
		--contest-table-size:13px;
	}
}

/* =========================================================
   신청 방법 및 신청(구비)서류
========================================================= */
.contest-apply,
.contest-apply *{
	box-sizing:border-box;
}

.contest-apply{
	position:relative;
	width:100%;
	margin:0;
	padding:var(--contest-section-padding);
	background:#fff;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-apply__inner{
	width:100%;
	max-width:var(--contest-max-width);
	margin:0 auto;
}

.contest-apply__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:360px;
	height:62px;
	margin:0 auto 58px;
	padding:0 24px;
	border:0;
	border-radius:24px;
	background:var(--contest-color);
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-apply__block{
	margin-top:52px;
}

.contest-apply__block:first-of-type{
	margin-top:0;
}

.contest-apply__heading{
	display:flex;
	align-items:baseline;
	gap:5px;
	margin:0 0 18px;
	color:#111;
	font-size:var(--contest-heading-size);
	font-weight:800;
	line-height:1.55;
	letter-spacing:-.04em;
}

.contest-apply__method{
	color:#333;
	font-size:var(--contest-body-size);
	font-weight:500;
	line-height:1.65;
}

.contest-apply__method p{
	margin:0 0 8px;
}

.contest-apply__method a{
	color:var(--contest-color);
	font-weight:700;
}

.contest-apply__method ul{
	margin:0;
	padding:0;
	list-style:none;
}

.contest-apply__method li{
	position:relative;
	margin:4px 0;
	padding-left:18px;
	color:#666;
	font-size:var(--contest-small-size);
}

.contest-apply__method li::before{
	position:absolute;
	left:0;
	content:"◎";
	color:#111;
	font-size:11px;
}

.contest-apply__table-scroll{
	width:100%;
	overflow-x:auto;
	border-radius:4px;
	-webkit-overflow-scrolling:touch;
}

.contest-apply__table{
	width:100%;
	min-width:760px;
	table-layout:fixed;
	border-collapse:separate;
	border-spacing:0;
	overflow:hidden;
	border:1px solid var(--contest-border);
	border-radius:4px;
	background:#fff;
}

.contest-apply__table th,
.contest-apply__table td{
	height:48px;
	padding:10px 12px;
	border-right:1px solid var(--contest-border);
	border-bottom:1px solid var(--contest-border);
	color:var(--contest-text);
	font-size:var(--contest-table-size);
	font-weight:500;
	line-height:1.5;
	text-align:center;
	vertical-align:middle;
	word-break:keep-all;
}

.contest-apply__table tr > *:last-child{
	border-right:0;
}

.contest-apply__table thead th{
	height:46px;
	background:var(--contest-head-bg);
	color:var(--contest-color-dark);
	font-weight:800;
}

.contest-apply__table tbody tr:last-child > *{
	border-bottom:0;
}

.contest-apply__group{
	background:var(--contest-row-bg);
	font-weight:800 !important;
}

.contest-apply__table .is-left{
	text-align:left;
}

.contest-apply__notice-box{
	margin-top:54px;
	padding:30px 34px;
	border:1px solid var(--contest-border);
	border-radius:8px;
	background:#fff;
}

.contest-apply__notice-box h3{
	margin:0 0 22px;
	color:#111;
	font-size:18px;
	font-weight:800;
	line-height:1.4;
	text-align:center;
}

.contest-apply__notice-box ul{
	margin:0;
	padding:0;
	list-style:none;
}

.contest-apply__notice-box li{
	position:relative;
	margin:9px 0;
	padding-left:20px;
	color:#555;
	font-size:14px;
	font-weight:500;
	line-height:1.65;
}

.contest-apply__notice-box li::before{
	position:absolute;
	left:0;
	content:"○";
	color:#111;
}

@media screen and (max-width:820px){
	.contest-apply__title{
		width:320px;
	}

	.contest-apply__heading{
		font-size:18px;
	}
}

@media screen and (max-width:600px){
	.contest-apply__title{
		width:280px;
		height:50px;
		margin-bottom:38px;
		border-radius:18px;
		font-size:20px;
	}

	.contest-apply__block{
		margin-top:38px;
	}

	.contest-apply__heading{
		font-size:17px;
	}

	.contest-apply__method{
		font-size:15px;
	}

	.contest-apply__table th,
	.contest-apply__table td{
		height:44px;
		padding:8px 9px;
		font-size:13px;
	}

	.contest-apply__notice-box{
		margin-top:38px;
		padding:22px 18px;
	}

	.contest-apply__notice-box h3{
		font-size:16px;
	}

	.contest-apply__notice-box li{
		font-size:13px;
	}
}

/* =========================================================
   기타사항
========================================================= */
.contest-etc,
.contest-etc *{
	box-sizing:border-box;
}

.contest-etc{
	position:relative;
	width:100%;
	margin:0;
	padding:var(--contest-section-padding);
	background:#fff;
	font-family:'Pretendard','Noto Sans KR',sans-serif;
}

.contest-etc__inner{
	width:100%;
	max-width:var(--contest-max-width);
	margin:0 auto;
}

.contest-etc__title{
	display:flex;
	align-items:center;
	justify-content:center;
	width:230px;
	height:62px;
	margin:0 auto 58px;
	padding:0 24px;
	border:0;
	border-radius:24px;
	background:var(--contest-color);
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1;
	letter-spacing:-.045em;
	text-align:center;
}

.contest-etc__list{
	margin:0;
	padding:0;
	list-style:none;
	counter-reset:contest-etc;
}

.contest-etc__list li{
	position:relative;
	margin:0 0 24px;
	padding-left:34px;
	color:#222;
	font-size:18px;
	font-weight:500;
	line-height:1.72;
	letter-spacing:-.035em;
	word-break:keep-all;
	counter-increment:contest-etc;
}

.contest-etc__list li:last-child{
	margin-bottom:0;
}

.contest-etc__list li::before{
	position:absolute;
	top:0;
	left:0;
	content:counter(contest-etc) ".";
	color:#111;
	font-weight:700;
}

.contest-etc__list li span{
	display:block;
	margin-top:2px;
}

.contest-etc__list li strong{
	color:#ff2b2b;
	font-weight:800;
}

@media screen and (max-width:820px){
	.contest-etc__title{
		width:190px;
	}

	.contest-etc__list li{
		font-size:16px;
	}
}

@media screen and (max-width:600px){
	.contest-etc__title{
		width:170px;
		height:50px;
		margin-bottom:38px;
		border-radius:18px;
		font-size:22px;
	}

	.contest-etc__list li{
		margin-bottom:20px;
		padding-left:28px;
		font-size:14px;
		line-height:1.7;
		word-break:normal;
	}
}


/* 하단 신청서류·기타사항 레이아웃 보호 */
#contestApply,
#contestEtc{
	display:block;
	width:100%;
	clear:both;
	background:#fff;
}

#contestApply .contest-apply__inner,
#contestEtc .contest-etc__inner{
	width:100%;
	max-width:1200px;
	margin-right:auto;
	margin-left:auto;
}

#contestApply .contest-apply__table-scroll{
	width:100%;
	max-width:1200px;
}

#contestApply .contest-apply__table{
	width:100%;
}

@media screen and (max-width:600px){
	#contestApply .contest-apply__inner,
	#contestEtc .contest-etc__inner{
		max-width:100%;
	}
}


/* =========================================================
   공모전 섹션 디자인 개선 (패턴 배경 노출)
========================================================= */

/* 섹션 배경은 투명 */
.contest-overview,
.contest-process,
.contest-awards,
.contest-judging,
.contest-apply,
.contest-etc{
    background:transparent !important;
}

/* 표와 카드만 흰색 */
.contest-awards__table,
.contest-judging__table,
.contest-apply__table,
.contest-awards__event-box,
.contest-apply__notice-box,
.contest-judging__step{
    background:#fff !important;
    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

/* 스크롤 래퍼는 투명 */
.contest-awards__table-scroll,
.contest-judging__table-scroll,
.contest-apply__table-scroll{
    background:transparent !important;
}

/* 섹션 간 간격 통일 */
.contest-overview,
.contest-process,
.contest-awards,
.contest-judging,
.contest-apply{
    padding-bottom:90px;
}

.contest-process,
.contest-awards,
.contest-judging,
.contest-apply,
.contest-etc{
    padding-top:90px;
}

/* 마지막 섹션 여백 */
.contest-etc{
    padding-bottom:110px;
}

/* =========================================================
   표 정렬 공통 정리
========================================================= */

/* 시상 및 지원내역 표 */
.contest-awards__table th,
.contest-awards__table td{
	text-align:center;
	vertical-align:middle;
}

/* 심사 방법 및 기준 표 */
.contest-judging__table th,
.contest-judging__table td{
	vertical-align:middle;
}

/* 심사항목, 배점, 합계는 가운데 정렬 */
.contest-judging__table thead th,
.contest-judging__table tbody th,
.contest-judging__table tbody td:last-child,
.contest-judging__table tfoot th,
.contest-judging__table tfoot td{
	text-align:center !important;
	padding-left:14px;
	padding-right:14px;
}

/* 세부내용은 기본 좌측 정렬 */
.contest-judging__table tbody td:not(:last-child){
	text-align:left !important;
}

/* 사회적 목적 재투자 행: 문구 좌측, 10점 가운데 */
#contestJudging .contest-judging__table:first-of-type tbody tr:nth-child(2) td:first-child{
	text-align:left !important;
}

#contestJudging .contest-judging__table:first-of-type tbody tr:nth-child(2) td:last-child{
	text-align:center !important;
	padding-left:14px !important;
	padding-right:14px !important;
}

/* 신청서류 표 */
.contest-apply__table th,
.contest-apply__table td{
	text-align:center;
	vertical-align:middle;
}

.contest-apply__table td.is-left{
	text-align:left !important;
}

/* 모바일에서도 동일한 정렬 유지 */
@media screen and (max-width:600px){
	.contest-judging__table tbody td:last-child,
	.contest-judging__table tfoot td,
	.contest-awards__table td,
	.contest-awards__table th,
	.contest-apply__table th,
	.contest-apply__table td{
		text-align:center;
	}

	.contest-judging__table tbody td:not(:last-child),
	.contest-apply__table td.is-left{
		text-align:left !important;
	}
}


