/*
(주)파이브센스_FIVESENSES.Corp.
파이브프로_FIVEPro_웹솔루션.
본 라이브러리(소스코드 및 디자인 포함)는 (주)파이브센스의 자산이며, 저작권법 및 부정경쟁방지법에 의해 보호됩니다.
무단 사용, 외부 유출, 복제, 배포, 변형을 금지합니다.
위반 시 민·형사상 법적 책임 및 손해배상 청구 대상이 됩니다.
작성일: 2025-03-18 | 저작권자: (주)파이브센스(520-86-01244) | All Rights Reserved.
*/
.main_mb3 {
    display: flex;
    flex-direction: column;
}

.main_mb3 .main_cont_container {
    position: relative;
    flex: 1;
    overflow: hidden;
}

/* 스와이프 */
.main_mb3 .swiper {
    /* widget-wrap before보다 위로 올라오게 결정 */
    z-index: 2;
    height: 100%;
    position: relative;
}

.main_mb3 .swiper-wrapper {
    height: 100%;
    display: flex;
    transition-property: transform;
}

.main_mb3 .swiper-slide {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    transition-property: transform;
}

.main_mb3 .swiper-slide.swiper-slide-active {
    /* 슬라이드 fade 중첩 효과 이슈로 active 순서 필요 */
    z-index: 2;
}

/* 스와이프 이미지 */
.main_mb3 .img_container {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.main_mb3 .img_container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 스와이프 동영상 */
.main_mb3 .iframe_container {
    height: 100%;
    overflow: hidden;
    position: relative;
}

.main_mb3 .iframe_container .iframe_container_inner {
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.main_mb3 .iframe_container iframe {
    position: absolute;
    left: 0;
    top: -60px;
    width: 100%;
    height: calc(100% + 120px);
    object-fit: cover;
}

/* 스와이프 동영상 요소이미지 */
.main_mb3 .iframe_container .itemSubVideoImg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.main_mb3 .iframe_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent;
    z-index: 1;
    cursor: grab; /* 스와이프 UI 힌트를 제공 */
}

/* 스와이프 정보 */
.main_mb3 .swiper_info_container {
    width: 100%;
    position: absolute;
    top: 44%;
    left: 10.2%;
    z-index: 2;
    padding: 0 20px;
    text-align: left;
}

/* 스와이프 요소이미지 */
.main_mb3 .swiper_info_container .itemSubImg {
    width: auto;
    margin: 0 auto 30px auto;
}

/* 스와이프 타이틀 */
.main_mb3 .swiper_title {
    margin-bottom: 33px;
}

.main_mb3 .swiper_title h2 {
    font-size: 96px;
    font-weight: 800;
    color: #fff;
    display: inline-block;
    width: auto;
	line-height:92px;
}

/* 스와이프 서브타이틀 */
.main_mb3 .swiper_subtitle {
    margin-bottom: 80px;
    padding-left:5px;
}

.main_mb3 .swiper_subtitle h3 {
    font-size: 26px;
    font-weight: 600;
    color: #fff;
    display: inline-block;
    width: auto;
    line-height:40px;
}

/* 스와이프 재생버튼 */
#realMain_p .main_mb3 .swiper_btn_container.container_fix {
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    justify-content: flex-start;
    align-items: center;
	max-width:1510px !important;
}

.main_mb3 .swiper_btn {
    width: 34px;
    height: 34px;
    position: relative;
	transform:translateX(-3px);
}

.main_mb3 .swiper_btn .main_svg {
    --progress: 0;
    position: absolute;
    left: 0;
    top: 0px;
    width: 100%;
    height: 100%;
    stroke-width: 2px;
    stroke: #fff;
    fill: none;
    stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
    box-sizing: border-box;
}

.main_mb3 .swiper_btn .sub_svg {
    position: absolute;
    left: 0;
    top: 0px;
    width: 100%;
    height: 100%;
    stroke-width: 2px;
    stroke: rgba(255,255,255,0.5);
    fill: none;
    stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
    box-sizing: border-box;
}

.main_mb3 .swiper_btn button {
    width: 100%;
    height: 100%;
    font-size: 18px;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.main_mb3 .swiper_btn button.pause {
	transform: translate(-50%, -50%) rotate(-27deg);
    font-size: 14px;
}

/* 스와이프 페이지네이션 정보 */
.main_mb3 .swiper-pagination {
    position: relative; /* 기존 position 없애기 */
    width: auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.main_mb3 .swiper-pagination-bullet {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.main_mb3 .swiper-pagination-bullet span {
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    margin-right: 4px;
    opacity: 0.5;
    transition: opacity 0.3s ease;
}

.main_mb3 .swiper-pagination-bullet p {
    width: 0;
    height: 1px;
    background: rgba(255, 255, 255, 0.5);
    margin-right: 15px;
    position: relative;
    overflow: hidden;
    visibility: hidden;
}
.main_mb3 .swiper-pagination-bullet.swiper-pagination-bullet-active p {
    width: 200px;
    overflow: auto;
    visibility: visible;
}
.main_mb3 .swiper-pagination-bullet p::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background: #fff;
    overflow: hidden;
    visibility: hidden;
}

.main_mb3 .swiper-pagination-bullet.swiper-pagination-bullet-active p::before {
    width: 100%;
    overflow: auto;
    visibility: visible;
}

.main_mb3 .swiper-pagination-bullet-active span {
    opacity: 1;
    margin-right: 15px;
}

/* 기존 pagination 세팅 제거 */
.main_mb3 .swiper-pagination-bullets.swiper-pagination-horizontal {
    top: 0;
    bottom: 0;
    left: 0;
    width: auto;
}

.main_mb3 .swiper-pagination div.swiper-pagination-bullet {
    margin: 0;
    width: auto;
    height: auto;
	opacity:1;
}

.main_mb3 .swiper-pagination-bullet {
    background: none;
}

.main_mb3 .swiper-pagination-bullet-active {
    background: none;
}

/* 스크롤 화살표 */
.main_mb3 .swiper_scroll_container {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.main_mb3 .swiper_scroll_container p {
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
}

.main_mb3 .swiper_scroll_container img {
    margin: 10px auto 0 auto;
    animation: arrow-bounce 1.5s infinite ease-in-out;
}

@keyframes arrow-bounce {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(10px);
    }
}