/* 공통 스타일 설정 */
.festaContents{
	--main-red: #C80A1E;
}

/* 공통 텍스트 스타일 설정 */
.festaContents *{ font-family: 'Pretendard','Noto Sans KR','Malgun Gothic' !important;}

/* pc-mo 스타일 다른 경우
	.txt-title1, .txt-title2, .txt-title4(모바일만)
	.txt-caption2, .txt-caption3(pc만)
*/
.txt-title1{ font-family: 'Centra No2' !important; font-size: 48px; font-weight: 500; line-height: 150%; letter-spacing: -0.48px;}
.txt-title2{ font-size: 32px; font-weight: 600; line-height: 150%; letter-spacing: -0.32px;}
.txt-title3{ font-size: 12px; font-weight: 700; line-height: 150%; letter-spacing: -0.12px;}

.txt-subTitle1{ font-size: 24px; font-weight: 600; line-height: 150%; letter-spacing: -0.24px;}
.txt-subTitle2{ font-size: 22px; font-weight: 600; line-height: 150%; letter-spacing: -0.22px;}
.txt-subTitle3{ font-size: 14px; font-weight: 600; line-height: 150%; letter-spacing: -0.14px;}
.txt-subTitle4{ font-size: 20px; font-weight: 600; line-height: 160%;}

.txt-body1{ font-size: 16px; font-weight: 600; line-height: 150%; letter-spacing: -0.16px;}
.txt-body2{ font-size: 16px; font-weight: 400; line-height: 150%; letter-spacing: -0.16px;}
.txt-body3{ font-size: 12px; font-weight: 400; line-height: 150%; letter-spacing: -0.12px;}

.txt-caption1{ font-size: 14px; font-weight: 400; line-height: 150%; letter-spacing: -0.14px;}
.txt-caption2{ font-size: 12px; font-weight: 600; line-height: 150%; letter-spacing: -0.12px;}
.txt-caption3{ font-size: 10px; font-weight: 600; line-height: 150%; letter-spacing: -0.1px;}
.txt-caption4{ font-size: 8px; font-weight: 400; line-height: 150%; letter-spacing: -0.08px;}

@media screen and (max-width: 1023px) {
	.txt-title1{ font-family: 'Centra No2' !important; font-size: 40px; font-weight: 500; line-height: 150%; letter-spacing: -0.48px;}
	.txt-title2{ font-size: 28px; font-weight: 600; line-height: 150%; letter-spacing: -0.32px;}
	.txt-title4{ font-size: 14px; font-weight: 600; line-height: 150%; letter-spacing: -0.14px;}
}

/* 팝업 CSS */
.popupBox.cautionPop{ flex-direction: column;}
.cautionPop .popUpCntnts{ padding: 36px 24px 40px 24px; width: 100%; max-width: 400px;  border-radius: 4px;}
.cautionPop .popUpCntnts.noLRPadding{ padding: 36px 0 24px 0;}
.cautionPop .popUpCntnts.noLRPadding .popTtl, .cautionPop .popUpCntnts.noLRPadding .popTtlInfTxt *{ padding: 0 24px; box-sizing: border-box;}
.cautionPop .popUpCntnts p,
.cautionPop .popUpCntnts span,
.cautionPop .popUpCntnts strong,
.cautionPop .popUpCntnts div,
.cautionPop .popUpCntnts button{ letter-spacing: 0 !important; color: #2e2e2e;}
.cautionPop .popUpCntnts ul.popTtlInfTxt{ padding: 0; margin: 16px 0 0 0; padding-left: 25px;}
.cautionPop .popUpCntnts .popTtl{ font-size: 20px; font-weight: 500; color: #222; letter-spacing: 0;}
.cautionPop .popUpCntnts .popTtlInfTxt li{ font-size: 14px; font-weight: 400; line-height: 160%; letter-spacing:0; color:#2E2E2E; list-style: disc !important;}
.cautionPop .popUpCntnts .popTtlInfTxt.txtStyle{ padding: 0; margin: 16px 0 0 0; font-size: 14px; line-height: 160%;}
.cautionPop .popUpCntnts .popTtlInfTxt.completeStyle{ display: flex; flex-direction: column; gap: 16px; padding: 0; margin: 16px 0 0 0;}
.cautionPop .popUpCntnts .popTtlInfTxt.completeStyle .txt{ font-size: 14px; line-height: 160%;}
.cautionPop .popUpCntnts .popTtlInfTxt.completeStyle .schedule{ padding: 10px 24px; font-size: 13px; line-height: 160%; background-color: #F0F0F0;}
.cautionPop .popUpCntnts .popTtlInfTxt.completeStyle .inform{ color: #666;font-size: 13px; line-height: 160%; word-break: break-all;}
.cautionPop .popUpCntnts .alarmBtn{ width: 100%; margin-top: 32px; background-color: #0E217C; color: #fff; border: none; padding: 10px; font-family: 'Noto Sans KR'; font-size: 15px; line-height: 160%;}
.cautionPop .closeBtn{ width: 100%; max-width: 400px; text-align: right; margin-top: 14px;}
.cautionPop .closeBtn img{ cursor: pointer;}

@media screen and (max-width: 1023px) {
	.cautionPop .closeBtn{ position: relative;}
	.cautionPop .closeBtn img{ position: absolute; right: 16px;}
}