@font-face {
    font-family: 'GmarketSans';
    src: url("../font/GmarketSansTTFLight.ttf") format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'GmarketSans';
    src: url("../font/GmarketSansTTFMedium.ttf") format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'GmarketSans';
    src: url("../font/GmarketSansTTFBold.ttf") format('truetype');
    font-weight: 700;
    font-style: normal;
}

.h1_title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0); /* 옛날 브라우저 대응 */
    clip-path: inset(50%); /* 현대 브라우저 표준 */
    white-space: nowrap;
    border: 0;
}





.csaf_event_wrap{
		padding:300px 0 100px;
		background:
    url('/festa/img/main/benefit_ttl.png') no-repeat top center / 670px, /* 1. 맨 위에 올릴 이미지 */
    url('/festa/img/main/benefit_ttl_bg.jpg') no-repeat top center / 1920px #F1FFF0; /* 2. 밑에 깔릴 이미지 + 배경색 */
	overflow:hidden;
	}

	.csaf_event_wrap .boon_setting_box{
		margin-top:60px;
	}
	.csaf_event_wrap .csaf_para {
	    margin-top: 20px;
	}
	.csaf_event_wrap .allboon_box.color1::after {
    content: '';
    display: block;
    width: 154px;
    height: 173px;
    position: absolute;
    bottom: 0;
    right: 0%;
    transform: translate(150%, -90%);
    background: url(/img/main/sec2_bg_box3.png) no-repeat center / contain;
    opacity: 0.4;
}

.csaf_event_wrap .allboon_box.color4::before {
    content: '';
    display: block;
    width: 530px;
    height: 500px;
    position: absolute;
    bottom: 0;
    left: 0%;
    transform: translate(-100%, -50%);
    background: url(/img/main/benefit_bg_box.png) no-repeat center / contain;
}

.csaf_para > p{
		color: #222222;
		font-size: 18px;
		line-height: 1;
		font-weight: 400;
		text-align:right;
	}






.csaf_tit > h2{
		font-weight:700;
		font-size:54px;
		line-height:1.3;
		color:#000000;
		text-align:center;
	}



	.allboon_box{
		padding:40px 50px 50px;
		border-style:solid;
		border-width:6px;
		border-radius:24px;
		background-color:#ffffff;
		position:relative;
	}
	.allboon_box.color1{
		border-color:#E31B0C;
	}



	.allboon_box.color2{
		border-color:#9419DC;
	}
	.allboon_box.color3{
		border-color:#03A85C;
	}
	.allboon_box.color4{
		padding:50px;
		border-color:#03BACE;
	}
	.allboon_box.color4::after{
		content:'';
		width:70px;
		height:70px;
		position:absolute;
		top:0;
		left:50%;
		transform:translate(-50%,-50%);
		border-radius:50%;
		background:#03BACE url('/festa/img/main/add_plus.svg') no-repeat center / contain;
	}

	.allboon_box .all_boon_list,
	.allboon_box .all_boon_list2{
		margin-top:40px;
	}

	.all_boon_tit > h3{
		font-weight:700;
		font-size:40px;
		line-height:1.3;
		color:#000000;
		text-align:center;
	}
	.all_boon_tit > h3 > small{
		font-weight:700;
		font-size:26px;
		color:#000000;
	}
	.all_boon_tit.color1 > h3 > span{
		color:#E31B0C;
	}
	.all_boon_tit.color2 > h3 > span{
		color:#9419DC;
	}
	.all_boon_tit.color3 > h3 > span{
		color:#03A85C;
	}
	.all_boon_tit.color4 > h3 > span{
		color:#03BACE;
	}

	.all_boon_list > ul{
		display:flex;
		align-items:stretch;
		justify-content:flex-start;
		gap:20px;
		flex-wrap:wrap;
	}
	.all_boon_list.type1 > ul > li{
		width:calc((100% - 80px) / 5);
	}
	.all_boon_list.type1 > ul > li:nth-of-type(1) > div{
		background-image:url('/festa/img/main/sec2_gift_1.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(2) > div{
		background-image:url('/festa/img/main/sec2_gift_2.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(3) > div{
		background-image:url('/festa/img/main/sec2_gift_3.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(4) > div{
		background-image:url('/festa/img/main/sec2_gift_4.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(5) > div{
		background-image:url('/festa/img/main/sec2_gift_5.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(6) > div{
		background-image:url('/festa/img/main/sec2_gift_6.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(7) > div{
		background-image:url('/festa/img/main/sec2_gift_7.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(8) > div{
		background-image:url('/festa/img/main/sec2_gift_8.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(9) > div{
		background-image:url('/festa/img/main/sec2_gift_9.png');
	}
	.all_boon_list.type1 > ul > li:nth-of-type(10) > div{
		background-image:url('/festa/img/main/sec2_gift_10.png');
	}

	.all_boon_list.type2 > ul > li{
		width:calc((100% - 20px) / 2);
	}
	.all_boon_list.type2 > ul > li:nth-of-type(1) > div{
		background-image:url('/festa/img/main/sec2_gift_11.png');
	}
	.all_boon_list.type2 > ul > li:nth-of-type(2) > div{
		background-image:url('/festa/img/main/sec2_gift_2.png');
	}
	.all_boon_list.type2 > ul > li:nth-of-type(3) > div{
		background-image:url('/festa/img/main/sec2_gift_1.png');
	}
	.all_boon_list.type2 > ul > li:nth-of-type(4) > div{
		background-image:url('/festa/img/main/sec2_gift_6.png');
	}
	.all_boon_list.type2 > ul > li:nth-of-type(5) > div{
		background-image:url('/festa/img/main/sec2_gift_7.png');
	}
	.all_boon_list.type2 > ul > li:nth-of-type(6) > div{
		background-image:url('/festa/img/main/sec2_gift_8.png');
	}



	.all_boon_list.type3 > ul > li{
		width:100%;
	}
	.all_boon_list.type3 > ul > li:nth-of-type(1) > div{
		background-image:url('/festa/img/main/sec2_gift_13.png');
	}
	.all_boon_list.type3 > ul > li:nth-of-type(2) > div{
		background-image:url('/festa/img/main/sec2_gift_14.png');
	}
	.all_boon_list.type3 > ul > li:nth-of-type(3) > div{
		background-image:url('/festa/img/main/sec2_gift_15.png');
	}


	.all_boon_list2{
		width:90%;
		margin:0 auto;
	}
	.all_boon_list2 > ul{
		display:flex;
		align-items:stretch;
		justify-content:center;
		gap:8rem;
	}
	.all_boon_list2 > ul > li > div{
		display:flex;
		flex-direction:column;
		align-items:center;
	}
	.all_boon_list2 > ul > li > div > div:nth-of-type(2){
		display:flex;
		align-items:center;
		gap:10px;
		margin-top:25px;
	}
	.all_boon_list2 > ul > li > div > div:nth-of-type(2) > span{
		font-weight:700;
		font-size:22px;
		line-height:1;
		color:#ffffff;
		display:flex;
		align-items:center;
		justify-content:center;
		width:40px;
		height:40px;
		background-color:#03BACE;
		border-radius:50%;
		padding-bottom:0.3rem;
	}
	.all_boon_list2 > ul > li > div > div:nth-of-type(2) > p{
		font-weight:700;
		font-size:26px;
		line-height:1;
		color:#000000;
	}

	.all_boon_item{
		display:flex;
		align-items:flex-start;
		justify-content:flex-start;
		flex-direction:column;
		gap:5px;
		padding:20px;
		border-radius:16px;
		background-repeat:no-repeat;
		background-position:right bottom;
	}
	.all_boon_item > span{
		font-weight:700;
		font-size:16px;
		line-height:1.3;
		color:#ffffff;
		display:block;
		padding:1px 8px;
		background-color:#03A85C;
		border-radius:12px;
	}
	.all_boon_item > strong{
		font-weight:700;
		font-size:26px;
		line-height:1.3;
		color:#000000;
		word-break:keep-all;
	}
	.all_boon_item > strong > small{
		display:block;
		font-weight:400;
		font-size:18px;
		color:#000000;
	}
	.all_boon_item.type1{
		background-color:#FFEFF0;
		min-height:190px;
		background-size:110px;
	}
	.all_boon_item.type1 > strong > span{
		color:#E5281A;
	}
	.all_boon_item.type2{
		background-color:#FBF0FF;
		min-height:140px;
		background-size:110px;
	}
	.all_boon_item.type2 > strong > span{
		color:#9719DD;
	}

	.all_boon_item.type3{
		background-color:#DCF8EB;
		min-height:140px;
		background-size:120px;
	}
	.all_boon_item.type3 > strong > span{
		color:#038248;
	}

	.boon_setting_box{
		position:relative;
		z-index:1;
	}


	.boon_setting_box > div:nth-of-type(2){
		display:flex;
		gap:50px;
		margin-top:50px;
		margin-bottom:60px;
	}





/* 첫 번째 자식 (왼쪽 박스) */
.boon_setting_box > div:nth-of-type(2) > div:first-child {
    /* 1(커짐 허용), 1(줄어듦 허용), 기본값 680px */
    flex: 1 1 680px;
    max-width: 680px; /* 680px 이상으로는 안 커지게 꽉 잡아줌 */
}

/* 두 번째 자식 (오른쪽 박스) */
.boon_setting_box > div:nth-of-type(2) > div:last-child {
    flex: 1 1 470px;
    max-width: 470px; /* 470px 이상으로는 안 커지게 꽉 잡아줌 */
}


































/* 기존 .action 수정 */
.action {
    transform: translateY(30px); /* 10px보다 조금 더 내려서 확실한 느낌 유도 */
    opacity: 0;
    will-change: transform, opacity; /* 브라우저에게 애니메이션 미리 준비시킴 */
}

/* 기존 .rn_sec.active .action 수정 */
.rn_sec.active .action {
    transition-duration: 0.8s; /* 0.4s는 너무 빠름. 0.8s로 부드럽게 */
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); /* 훨씬 부드러운 감속 */
    transition-property: opacity, transform;
    transform: translateY(0);
    opacity: 1;
}

/* 1. 초기 상태: 투명하고 약간 작게 설정 */
.pop_action {
    opacity: 0;
    transform: scale(0.8); /* 원래 크기의 80% */
    will-change: transform, opacity; /* 하드웨어 가속 */
    /* 다른 텍스트들이 올라오기 시작한 후, 0.3초 뒤에 튀어나오도록 딜레이 설정 */
    transition-delay: 1.6s;
}

/* 2. 활성화 상태: 원래 크기로 "띠용" 하고 복귀 */
.rn_sec.active .pop_action {
    opacity: 1;
    transform: scale(1);
    /* 0.6s는 움직이는 시간, 그 뒤의 1.6s가 기다리는 시간(딜레이)입니다. */
    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 1.6s,
                opacity 0.6s ease 1.6s;
}

.rn_inner{
	width:100%;
	margin: 0 auto;
}
.rn_inner.in1{
	max-width:1200px;
}
.rn_inner.in2{
	max-width:1000px;
}
.rn_inner.in3{
	max-width:1330px;
}
.rn_tit_box{
	display:flex;
	flex-direction:column;
	align-items:center;
}

.rn_tit_box > h2{
	font-size: 54px;
    line-height: 1.3;
    font-weight: 700;
    color: #000000;
}
.rn_tit_box > p{
	font-size: 32px;
    font-weight: 400;
	line-height: 1.3;
	color: #000000;
}

.rn_sec{
	padding:100px 0;
}
.rn_sec1{
	padding:125px 0;
	background:url('/festa/img/rn_sec1_bg.jpg') no-repeat center / cover;
}

.rn_sec1_content{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
}
.rn_sec1_content > div:nth-of-type(1) > p{
		/* 폰트 스타일 (이미지와 유사하게 두껍게 설정) */
	   font-size: 36px;
	   font-weight: 700;
	   display: block;
	   /* 그라데이션 설정: 왼쪽(보라)에서 오른쪽(핑크)으로 */
	   background: linear-gradient(to right, #5c27fe 0%, #e92186 100%);
	   /* 텍스트에만 그라데이션이 보이게 하는 핵심 속성 */
	   -webkit-background-clip: text;
	   background-clip: text;
	   /* 원래 글자 색상을 투명하게 만들어 배경 그라데이션이 투과되도록 설정 */
	   -webkit-text-fill-color: transparent;
	   color: transparent;
		text-align:center;
		line-height:1.3;
		letter-spacing:-1px;
}
.rn_sec1_content > div:nth-of-type(1) > h2{
	font-size: 120px;
    font-weight: 700;
	line-height: 1;
	color: #170B46;
	font-family: 'GmarketSans';
	margin-top:1.4rem;
	text-align:center;
}
.rn_sec1_content > div:nth-of-type(2){
	margin-top:20px;
	padding: 15px 25px 10px 25px;
	background-color:#ffffff;
	border-radius:30px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:10px;
}
.rn_sec1_content > div:nth-of-type(2) > div:nth-of-type(1){
	display:flex;
	align-items:center;
	justify-content:center;
	gap:5px;
}
.rn_sec1_content > div:nth-of-type(2) > div strong{
	display:flex;
	align-items:flex-end;
	font-size: 32px;
    font-weight: 700;
	line-height: 1;
	color: #000000;
	font-family: 'GmarketSans';
}
.rn_sec1_content > div:nth-of-type(2) > div strong > span{
	font-size: 24px;
    font-weight: 500;
	line-height: 1;
	color: #000000;
	padding-bottom:2px;
	font-family: inherit;
}

.rn_sec2_content{
	display:flex;
	flex-direction:column;
}

.rn_sec2_content > div:nth-of-type(1){
	display:flex;
	align-items:center;
	justify-content:space-between;
}
.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) i{
	display:block;
	width:38px;
	height:28px;
	background:url('/festa/img/rn_sec2_content_ddaom.png') no-repeat center / contain;
}
.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) i + p{
	margin-top:10px;
}
.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) p{
	font-size: 48px;
    font-weight: 500;
	line-height: 1.3;
	color: #000000;
}
.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) p > span{
	 font-weight: 700;
}
.rn_sec2_content > div:nth-of-type(2){
	margin-top:58px;
}
.rn_sec2_content > div:nth-of-type(2) ul{
	display:flex;
	align-items:center;
	gap:20px;
}
.rn_sec2_content > div:nth-of-type(2) ul > li > div{
	display:flex;
	flex-direction:column;
	gap:20px;
}
.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(1){
	border-radius:20px;
	overflow:hidden;
}
.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(1) img{
	overflow: hidden;
    aspect-ratio: 6 / 3;
    object-fit: cover;
    width: 100%;
}
.rn_sec2_content > div:nth-of-type(2) ul > li  > div > div:nth-of-type(2) p{
	font-size: 32px;
    font-weight: 700;
	line-height: 1.3;
	color: #000000;
	text-align:center;
}
.rn_sec2_content > div:nth-of-type(3){
	margin-top:60px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.rn_sec2_content > div:nth-of-type(3) a{
	height: 64px;
    width: 100%;
    max-width: 338px;
    border-radius: 32px;
    font-size: 32px;
    line-height: 1;
    font-weight: 700;
    color: #ffffff;
    background-color: #D93C1C;
    display: flex;
    align-items: center;
    justify-content: center;
}



.rn_sec3{
	background:url('/festa/img/rn_sec3_bg.jpg') no-repeat center / cover;
}

.rn_sec3 .rn_sec3_content{
	margin-top:80px;
}


.rn_sec3_content > ul{
	display:flex;
	align-items:center;
	justify-content:center;
}
.rn_sec3_content > ul > li:last-of-type{
	margin-left:50px;
}
.rn_sec3_content > ul > li > div{
	display:flex;
	flex-direction:column;
	gap:20px;
}
.rn_sec3_content > ul > li > div > div:nth-of-type(1) iframe{
	width:475px;
	height:267px;
	border-radius:20px;
}
.rn_sec3_content > ul > li > div > div:nth-of-type(2){
	display:flex;
	align-items:center;
	gap:10px;
}
.rn_sec3_content > ul > li > div > div:nth-of-type(2) > i{
	width:47px;
	height:62px;
	background:url('/festa/img/renew_youtube_icon.png') no-repeat center / contain;
	display:block;
}
.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl{
	display:flex;
	flex-direction:column;
	gap:5px;
}
.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dt,
.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dd{
	font-size: 22px;
    font-weight: 700;
	line-height: 1;
	color: #000000;
}

.rn_sec4{
	background-color:#FFF7C9;
}

.rn_sec4 .dreamSwiper{
	margin-top:80px;
}

.dreamSwiper .swiper-slide {
    height: auto;       /* 슬라이드 높이를 자동으로 둠 (가장 높은 것에 맞춰짐) */
    display: flex;      /* 슬라이드 자체를 Flex로 설정 */
    align-items: stretch; /* 자식 요소가 부모 높이만큼 늘어나게 함 */
}
.rn_sec4_swiper_content_item{
	display: flex;
    flex-direction: column;
    width: 100%;        /* 가로 꽉 채우기 */
    height: auto;       /* 고정 높이 대신 auto로 변경 */
    flex: 1;            /* [핵심] 부모(.swiper-slide)의 높이를 100% 다 쓰겠다 */
    border-radius: 20px;
    overflow: hidden;
    min-height: 522px;  /* 최소 높이는 유지 */
}
.rn_sec4_swiper_content_item > div:nth-of-type(1) {
    flex-shrink: 0;          /* 이미지 영역은 줄어들지 않게 고정 */
}
.rn_sec4_swiper_content_item > div:nth-of-type(1) > img{
    overflow: hidden;
    aspect-ratio: 9 / 3;
    object-fit: cover;
    width: 100%;
}
/* 두 번째 자식 (텍스트 영역) - 여기가 핵심입니다 */
.rn_sec4_swiper_content_item > div:nth-of-type(2) {
    flex: 1;            /* 이미지 제외한 나머지 높이를 꽉 채움 */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* 상단 본문과 하단 작성자 정보를 양 끝으로 밀어냄 */
    padding: 40px;
    background-color: #ffffff;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:8px;
	 font-size: 16px;
    line-height: 1;
    font-weight: 700;
    color: #ffffff;
	padding:5px 10px;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1)> span.type1{
	background-color:#F55D48;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > span.type2{
	background-color:#52BFD8;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > span.type3{
	background-color:#02AE69;
}

.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(2){
	margin-top:20px;
}

.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(2) > strong{
	 font-size: 22px;
    line-height: 1.3;
    font-weight: 700;
    color: #000000;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(3){
	 margin-top:12px;
}

.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(3) > p{
	 font-size: 16px;
    line-height: 1.3;
    font-weight: 400;
    color: #000000;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(3) > p > span{
	font-weight: 700;
}

.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(4){
	 margin-top:20px;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(4) > ul{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:5px;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(4) > ul > li{
	 font-size: 14px;
    line-height: 1;
    font-weight: 400;
    color: #000000;
	padding:4px 10px;
	background-color:#f5f5f5;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(2){
	margin-top:20px;
	padding-top:20px;
	border-top:1px solid #D0D0D0;
	display:flex;
	flex-direction:column;
	gap:5px;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(2) > div:nth-of-type(1) span{
	font-size: 16px;
    line-height: 1;
    font-weight: 700;
    color: #000000;
	display:block;
}
.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(2) > div:nth-of-type(2) strong{
	font-size: 16px;
    line-height: 1;
    font-weight: 400;
    color: #000000;
	display:block;
}



.rn_sec5 {
    background-color: #EEF7FF;
}

.rn_sec5 > div > div {
    display: flex;
    align-items:stretch;
    justify-content: space-between;
}

/* 왼쪽 타이틀 영역 */
.rn_sec5 > div > div > div:nth-of-type(1) {
    display: flex;
    flex-direction: column;
    gap: 30px;
	justify-content:space-between;
}

.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) strong {
    font-size: 24px;
    line-height: 1.3;
    font-weight: 600;
    color: #333333;
}

.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) h2 {
    font-size: 44px;
    line-height: 1;
    font-weight: 700;
    color: #333333;
}

.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) h2 span {
    color: #ED5261;
}

/* 세로 구분선 */
.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(2) > div {
    width: 1px;
    height: 180px;
    background-color: #898989;
}

/* 버튼 스타일 */
.rn_sec5_btn_wrap a {
    border-radius: 30px; /* 2em 대비 pill 형태 유지 */
    background-color: #588FE7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    color: #ffffff !important;
    padding: 10px 0;
    max-width: 190px;
}

/* 오른쪽 리스트 영역 */
.rn_sec5 > div > div > div:nth-of-type(2) {
    max-width: 712px;
}

.rn_sec5 > div > div > div:nth-of-type(2) > ul {
    display: flex;
    flex-wrap: wrap;
    gap: 30px 24px;
}

.rn_sec5 > div > div > div:nth-of-type(2) > ul > li {
    width: calc((100% - 72px) / 4);
}

.rn_sec5 > div > div > div:nth-of-type(2) > ul > li > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.rn_sec5 > div > div > div:nth-of-type(2) > ul > li > div > div:nth-of-type(2) strong {
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    color: #333333;
	text-align:center;
	display:block;
}

.rn_sec5 > div > div > div:nth-of-type(2) > div {
    display: none;
}

.rn_sec6{
	padding:60px 0;
	background-color:#6448D8;
	display:flex;
	align-items:center;
	justify-content:center;
}
.rn_sec6_btn_box > a{
	height:64px;
	width:100%;
	min-width:338px;
	border-radius:32px;
	font-size: 32px;
    line-height: 1;
    font-weight: 700;
    color: #000000;
	background-color:#ffffff;
	display:flex;
	align-items:center;
	justify-content:center;
}

@media screen and (max-width:1400px){
	.rn_sec4_swiper_content_item > div:nth-of-type(2) {
	    padding: 20px;
	}

	.rn_sec4_swiper_content_item{
	    min-height: unset;
	}
}/*1400*/


@media screen and (max-width:1250px){
	.rn_tit_box > h2 {
	    font-size: 48px;
	}
	.rn_tit_box > p {
	    font-size: 28px;
	}
	.rn_sec {
	    padding: 80px 0;
	}
	.rn_inner{
		padding:0 20px;
	}

	.rn_sec1_content > div:nth-of-type(1) > p {
	    font-size: 30px;
	}

	.rn_sec1_content > div:nth-of-type(1) > h2{
		font-size:100px;
	}
	.rn_sec1_content > div:nth-of-type(2) > div strong {
	    font-size: 28px;
	}
	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) p {
	    font-size: 38px;
	}

	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(2){
	    width:280px;
	}
	.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(2) p{
		font-size: 28px;
	}
	.rn_sec2_content > div:nth-of-type(3) a {
	    height: 56px;
	    max-width: 310px;
	    border-radius: 30px;
	    font-size: 28px;
	}
	.rn_sec6_btn_box > a {
	    height: 56px;
	    min-width: 310px;
	    border-radius: 30px;
	    font-size: 28px;
	}
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > i {
	    width: 42px;
	    height: 56px;
	}
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dt, .rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dd {
	    font-size: 20px;
	}

	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(1) > span {
	    border-radius: 6px;
	    font-size: 14px;
	    padding: 5px 10px;
	}
	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(2) > strong {
	    font-size: 20px;
	}
	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(3) > p {
	    font-size: 14px;
	}

	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(2) > div:nth-of-type(1) span {
	    font-size: 14px;
	}

	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(2) > div:nth-of-type(2) strong {
	    font-size: 14px;
	}



	.rn_sec5 > div > div{
		flex-direction:column;
		justify-content:center;
		gap:40px;
	}
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) strong{
		font-size: 20px;
	}
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) strong br{
		display:none;
	}
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) h2{
		font-size:38px;
	}
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) h2 br{
		display:none;
	}
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(2),
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(3){
		display:none;
	}
	.rn_sec5 > div > div > div:nth-of-type(2){
		max-width:unset;
		display:flex;
		flex-direction:column;
		gap:60px;
		align-items:center;
	}
	.rn_sec5 > div > div > div:nth-of-type(2) > ul > li > div > div:nth-of-type(2) strong{
		font-size:20px;
	}
	.rn_sec5 > div > div > div:nth-of-type(2) > div{
		display:block;
	}
	.rn_sec5_btn_wrap a {
	    font-size: 28px;
	    height: 56px;
	    max-width: unset;
		min-width:310px;
	}
	.rn_sec6 {
	    padding: 40px 0;
	}



}/*1250*/

@media screen and (max-width:1120px) {
	.all_boon_list.type1 > ul > li {
	    width: calc((100% - 60px) / 4);
	}
}/*1120*/

@media screen and (max-width:1100px){
	.rn_sec3 {
	    background-color: #ffedeb;
	}
	.rn_sec3_content > ul {
	    flex-direction:column;
		gap:40px;
	}
	.rn_sec3_content > ul > li:last-of-type {
	    margin-left: 0;
	}
	.rn_sec3_content > ul > li > div{
		gap:10px;
	}
}/*1100*/


@media screen and (max-width:1024px){
	.rn_sec2_content > div:nth-of-type(2) {
	    margin-top: 60px;
	}
	.rn_sec2_content > div:nth-of-type(3) {
	    margin-top: 40px;
	}
	.rn_sec3 .rn_sec3_content {
	    margin-top: 60px;
	}
	.rn_sec4 .dreamSwiper {
	    margin-top: 60px;
	}


	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(2) {
        display:none;
    }
	.rn_sec2_content > div:nth-of-type(2) ul{
		flex-direction:column;
	}
	.rn_sec2_content > div:nth-of-type(2) ul > li{
		width:100%;
    }
	.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(2) p > br{
        display:none;
    }




	.csaf_tit > h2 {
		    font-size: 40px;
		}
		.rn_sec2 .boon_setting_box {
		    margin-top: 40px;
		}

		.all_boon_tit > h3 {
		    font-size: 40px;
		}

		.rn_sec2{
			padding:80px 0;
		}
		.all_boon_tit > h3 {
		    font-size: 32px;
		}
		.all_boon_tit > h3 > small {
		    font-size: 20px;
		}

		.allboon_box {
		    padding: 30px 30px 40px;
		}
		.all_boon_item > strong {
		    font-size: 20px;
		}
		.all_boon_item > strong > small {
		    font-size: 16px;
		}
		.all_boon_item > span {
		    font-size: 14px;
		    padding: 1px 8px;
		}
		.allboon_box .all_boon_list, .allboon_box .all_boon_list2 {
		    margin-top: 20px;
		}

		.all_boon_item.type1 {
		    min-height: 150px;
		    background-size: 100px;
		}
		.all_boon_item.type2 {
		    min-height: 115px;
		    background-size: 100px;
		}
		.all_boon_item.type3 {
		    min-height: 115px;
		    background-size: 110px;
		}
		.allboon_box.color4::after {
		    width: 50px;
		    height: 50px;
		}
		.boon_setting_box > div:nth-of-type(2) {
		    gap: 40px;
		    margin-top: 40px;
		    margin-bottom: 50px;
		}

		.all_boon_list2 > ul > li > div > div:nth-of-type(2) > span {
		    font-size: 18px;
		    width: 30px;
		    height: 30px;
		}
		.all_boon_list2 > ul > li > div > div:nth-of-type(2) > p {
		    font-size: 20px;
		}

		.csaf_para > p {
		    font-size: 16px;
		}

		.renew_csaf_btn_wrap > a {
		    font-size: 22px;
		    width: 350px;
		    height: 65px;
		}





}/*1024*/






@media screen and (max-width: 990px) {
    .all_boon_list.type1 > ul > li {
        width: calc((100% - 40px) / 3);
    }
}
@media screen and (max-width:900px) {
		.boon_setting_box > div:nth-of-type(2) {
			flex-direction:column;
		}
		.boon_setting_box > div:nth-of-type(2) > div:first-child {
		    max-width: unset;
		}
		.boon_setting_box > div:nth-of-type(2) > div:last-child {
		    max-width: unset;;
		}
		.boon_setting_box > div:nth-of-type(2) > div:first-child{
			flex:auto;
		}
	}/*900*/


@media screen and (max-width:768px){
	.rn_sec {
	    padding: 60px 0;
    }
	.rn_sec.rn_sec1 {
		padding:100px 0;
	    background: url('/festa/img/rn_sec1_bg_mo.jpg') no-repeat center / cover;
	}
	.rn_sec1_content > div:nth-of-type(1) > p {
	    font-size: 26px;
	}
	.rn_sec1_content > div:nth-of-type(1) > h2 {
        font-size: 80px;
    }
	.rn_sec1_content > div:nth-of-type(2){
		flex-direction:column;
		border-radius:20px;
		margin-top:10px;
	}
	.rn_sec1_content > div:nth-of-type(2) > div:nth-of-type(2){
		display:none;
	}
	.rn_sec1_content > div:nth-of-type(2) > div strong {
        font-size: 22px;
    }
	.rn_sec1_content > div:nth-of-type(2) > div strong > span{
		font-size: 18px;
	}
	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) i {
	    width: 28px;
	    height: 20px;
	}

	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) p {
        font-size: 28px;
    }
	.rn_sec2_content > div:nth-of-type(2) {
        margin-top: 40px;
    }
	.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(2) p {
        font-size: 18px;
    }
	.rn_sec2_content > div:nth-of-type(3) a {
       height: 50px;
       max-width:	unset;
       border-radius: 10px;
       font-size: 22px;
    }
	.rn_sec5_btn_wrap{
		width:100%;
	}
	 .rn_sec5_btn_wrap a {
        font-size: 22px;
        height: 50px;
        max-width: unset;
        min-width: unset;
		border-radius: 10px;
    }
	.rn_sec6_btn_box{
		width:calc(100% - 40px);
	}
	 .rn_sec6_btn_box > a {
        height: 50px;
        min-width: unset;
        border-radius: 10px;
        font-size: 22px;
    }
	.rn_tit_box > h2 {
        font-size: 40px;
    }
	.rn_tit_box > p {
        font-size: 22px;
    }
	.rn_sec3 .rn_sec3_content {
        margin-top: 40px;
    }
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > i {
        width: 38px;
        height: 50px;
    }
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dt, .rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dd {
        font-size: 18px;
    }
	.rn_sec4 .dreamSwiper {
        margin-top: 40px;
    }
	.rn_sec {
        padding: 40px 0;
    }











	.csaf_tit > h2 {
				font-size: 30px;
			}

			.allboon_box {
			    padding: 20px 10px;
			    border-width: 2px;
			    border-radius: 16px;
			}
			.allboon_box.color4 {
			    padding: 40px 10px 20px;
			}

			.allboon_box .all_boon_list, .allboon_box .all_boon_list2 {
			    margin-top: 20px;
			}
			.boon_setting_box > div:nth-of-type(2) {
			    gap: 10px;
			    margin-top: 10px;
			    margin-bottom: 30px;
			}


			.all_boon_tit > h3 {
			    font-size: 22px;
			}
			.all_boon_tit > h3 > small {
			    font-size: 16px;
			}

			.all_boon_list > ul{
				gap:8px;
			}
			.all_boon_list.type1 > ul > li {
			    width: calc((100% - 8px) / 2);
			}
			.boon_setting_box > div:nth-of-type(2) > div:first-child{
				flex: 1 1 auto;
			}
			.boon_setting_box > div:nth-of-type(2) > div:last-child {
			    flex: 1 1 auto;
			}

			.all_boon_item {
			    padding: 10px;
			    border-radius: 8px;
				gap: 2px;
			}

			.all_boon_item > span {
			    font-size: 14px;
				padding: 1px 6px;
				border-radius: 10px;
			}

			.all_boon_item > strong {
			    font-size: 17px;
			}
			.all_boon_item > strong > small {
			    font-size: 15px;
			}


			.all_boon_item.type1 {
			    min-height: 90px;
			    background-size: 70px;
			}
			.all_boon_item.type2 {
			    min-height: 90px;
			    background-size: 70px;
			}
			.all_boon_item.type3 {
			    min-height: 90px;
			    background-size: 90px;
			}
			.all_boon_list2 > ul {
			    gap: 2rem;
			}

			.all_boon_list2 > ul > li > div > div:nth-of-type(2) > span {
			    font-size: 16px;
			    width: 24px;
			    height: 24px;
			    padding-bottom: 2px;
			}
			.all_boon_list2 > ul > li > div > div:nth-of-type(2) > p {
			    font-size: 17px;
			}

			.csaf_para > p {
		    font-size: 14px;
			text-align:center;
		}

		.renew_csaf_btn_wrap > a {
		    font-size: 20px;
		    border-radius: 8px;
		    width: 290px;
		    height: 48px;
		}

		.csaf_event_wrap {
			    padding: 39.06vw 0 26.04vw;
			    background: url(/img/main/benefit_ttl.png) no-repeat top center / 87.24vw, /* 1. 맨 위에 올릴 이미지 */ url(/img/main/benefit_ttl_bg.jpg) no-repeat top center / 250.00vw #F1FFF0;
			}


			.csaf_event_wrap .boon_setting_box {
			    margin-top: 7.81vw;
			}
			.csaf_event_wrap .csaf_para {
			    margin-top: 2.60vw;
			}
}/*768*/

@media screen and (max-width:670px){
	.rn_sec5 > div > div > div:nth-of-type(2) > ul {
	    gap: 20px 14px;
	}
	.rn_sec5 > div > div > div:nth-of-type(2) > ul > li{
		width:calc((100% - 42px) / 4);
	}

}

@media screen and (max-width:550px){
	.rn_sec.rn_sec1 {
        padding: 80px 0;
    }
	.rn_sec3_content > ul > li{
		padding:0 20px;
		width:100%;
	}
	.rn_sec3_content > ul > li > div > div:nth-of-type(1) iframe {
	    width:100%;
	    height: 52.45vw;
	    border-radius: 10px;
	}

	.rn_sec4_swiper_content_item > div:nth-of-type(1) > img {
	    aspect-ratio: 7 / 3;
	}
}

@media screen and (max-width:470px){
	.rn_sec1_content > div:nth-of-type(1) > p {
	    font-size: 20px;
	}
	 .rn_sec1_content > div:nth-of-type(1) > h2 {
        font-size: 60px;
    }
	.rn_sec1_content > div:nth-of-type(2) > div strong {
        font-size: 20px;
    }
	.rn_sec1_content > div:nth-of-type(2) > div strong > span {
	    font-size: 16px;
	    font-weight: 500;
	    line-height: 1;
	    color: #000000;
	    padding-bottom: 2px;
	}
	.rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) i {
        width: 22px;
        height: 16px;
    }
	 .rn_sec2_content > div:nth-of-type(1) > div:nth-of-type(1) p {
        font-size: 22px;
    }
	.rn_sec2_content > div:nth-of-type(2) ul > li > div > div:nth-of-type(2) p {
        font-size: 16px;
    }

	.rn_sec2_content > div:nth-of-type(3) a {
        font-size: 18px;
    }
	    .rn_sec5_btn_wrap a {
        font-size: 18px;
    }
	    .rn_sec6_btn_box > a {
        font-size: 18px;
    }

	.rn_tit_box > h2 {
        font-size: 28px;
    }
	.rn_tit_box > p {
        font-size: 18px;
    }
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > i {
        width: 30px;
        height: 40px;
    }
	.rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dt, .rn_sec3_content > ul > li > div > div:nth-of-type(2) > dl > dd {
        font-size: 16px;
    }

	.rn_sec4_swiper_content_item > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-of-type(2) > strong {
        font-size: 16px;
    }

	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) strong {
        font-size: 18px;
		text-align:center;
    }
	.rn_sec5 > div > div > div:nth-of-type(1) > div:nth-of-type(1) h2 {
        font-size: 28px;
		text-align:center;
    }
	.rn_sec5 > div > div > div:nth-of-type(2) > ul > li > div > div:nth-of-type(2) strong {
        font-size: 16px;
    }
}




@media screen and (max-width: 390px) {
    .csaf_event_wrap {
        padding: 186px 0 100px;
        background: url(/img/main/benefit_ttl.png) no-repeat top center / 350px, /* 1. 맨 위에 올릴 이미지 */ url(/img/main/benefit_ttl_bg.jpg) no-repeat top center / 1024px #F1FFF0;
    }
}