@charset "UTF-8";

body {
	overflow-x: hidden;
}
a{
	text-decoration: none;
	color: #6b6b6b;
}
/* 간격 */
.main_sectionPD{
	padding: 72px 0;
}
/* 타이틀 */
.main_titleWrap{
	margin-bottom: 40px;
	display: flex;
    justify-content: space-between;
   	align-items: center;	
}
.mainTitle{
	font-size: 28px;
	font-weight: 600;
}
.main_moreBtn{
	font-size: 14px;
	font-weight: 500;
	color: #000;
	display: block;
	position: relative;
	top: 20px;
	white-space: nowrap;
}
.main_title2line p:last-child{
	margin-top: 4px;
}
/* 메인배너 */
.main_bannerSlider .mb_slider{
    width: 100%;
    overflow: hidden;
}
.main_slick_wrapper.slick-initialized {
    visibility: visible;
    opacity: 1;
}
.main_slick_wrapper {
	opacity: 0;
	visibility: hidden;
}
.slick-initialized .slick-slide {
    overflow: hidden !important;
}
.main_bannerBox >a {
    display: block;
}
.slick-slide img {
    width: 100%;
}
.main_banner_tab {
    display: none !important;
}
.main_banner_mo {
    display: none !important;
}
.main_bannerSlider .slick-dots {
    width: 100%;
    position: absolute;
    bottom: 30px;
    text-align: center;
    cursor: pointer;
    height: 4px;
}
.main_bannerSlider .slick-dots > li {
	position: relative;
    width: auto;
    height: 100%;
    margin: 0;
    display: inline-block;
    vertical-align: top;
    padding: 0;
    cursor: pointer;
}
.main_bannerContainer .main_bannerSlider .mb_slider button {
    display: block;
    width: 100px;
    height: 4px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.main_bannerSlider .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100px;
    height: 4px;
    content: '';
    opacity: .5;
    background-color: var(--sDg01);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.main_bannerSlider .slick-dots li.slick-active button:before {
    opacity: 1;
    background-color: #fff;
}
.main_bannerSlider .slick-dots > li.slick-active {
    height: 100%;
}
/* 이벤트 색션 */
.main_eventBox{
	width: 1220px;
    margin: 0 auto;
}
.main_eventWrap{
	width: 100%;
    position: relative;
}
._event_item_image {
	width: 100%;
	height: 219px;
	border-radius: 2px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.main_eventBox button.slick-prev {
    display: none !important;
    cursor: pointer;
    position: absolute;
    left: -46px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0;
    background: transparent;
    border: transparent;
}
.main_eventBox button.slick-next {
    display: none !important;
    cursor: pointer;
    position: absolute;
    right: -46px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0;
    background: transparent;
    border: transparent;
}
.main_eventBorderBox{
    padding: 0 10px;
}
.main_eventBox .main_eventBorderBox img {
    height: 100%;
    margin: 0 auto;
}
.main_event_curNum {
    display: none;

    position: absolute;
    bottom: 10px;
    right: 20px;
    z-index: 3;
    width: 88px;
    background-color: #29292980;
    font-size: 10px;
    color: #fff;
    padding: 4px 10px;
    border-radius: 50px;
}
/* 슬릭 펼치지기 방지 */
.main_eventList {
	opacity: 0;
	visibility: hidden;
    clear: both;
}
.main_eventList.slick-initialized {
	visibility: visible;
	opacity: 1;
}
/* 통합지도 */
.main_mapImgBoxWrap {
	opacity: 0;
	visibility: hidden;
}
.main_mapImgBoxWrap.slick-initialized {
	visibility: visible;
	opacity: 1;
}
.main_mapImgBox{
	position: relative;
	transition: 0.6s;
}
.main_mapImgBoxWrap {
	box-shadow: 0px 0px 12px #2929291a;
}
.main_map_thumnail{
	width: 100%;
	display: block;
}
.main_mapH{
	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: #29292980;
    align-items: center;
    justify-content: center;
    display: none;
}
.main_mapMoveBtn {
	font-size: 18px;
    padding: 14px 30px;
    border-radius: 50px;
    color: #fff;
    background-color: #2d71eccc;
    width: fit-content;
    display: block;
}
.main_mapImgBox:hover .main_mapH{
	display: flex !important;
	transition: 0.6s;
}
.main_mapBtn{
	display: none !important;
}
/* 유튜브 영역 */
.main_youtubeBox{
	display: flex;
}
.ytb_videoBox{
	width: 55%;
}
.main_ytb{
	width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    height: auto;
    overflow: hidden;
}
.main_ytb iframe{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.main_ytbTxtBox{
	width: 45%;
	padding: 0 40px;
}
.main_ytbTxt{
    color: var(--mBlk);
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.main_ytbTxt strong{
	font-size: 28px;
	display: block;
}
.main_ytbSubtxt li{
	font-size: 24px;
	line-height: 1.5;
	word-break: keep-all;
}
.main_ytbSubtxt li:nth-child(2){
	/*margin-bottom: 16px;*/
}
.main_moveBtn{
    font-size: 18px;
    font-weight: 500;
    padding: 12px 0;
    color: var(--mBlk);
    border: solid 1px var(--sDg02);
    text-align: center;
    display: block;	
}
/* 리뷰배너 */
.main_review_box{
	width: 100%;
}
.main_review_detail{
	width: 100%;
}
.mainReviewList{
	width: 100%;
}
.mainReview_slick_wrpper {
	opacity: 0;
	visibility: hidden;
}
.mainReview_slick_wrpper.slick-initialized {
	visibility: visible;
	opacity: 1;
}
.main_reviewWrap button.slick-prev {
    display: none !important;
}
.main_reviewWrap button.slick-prev:before {
    content: "\e93d";
    font-family: 'xeicon';
    font-size: 45px;
    color: var(--mBlue);
}
.main_reviewWrap button.slick-next {
    display: none !important;
}
.main_reviewWrap button.slick-next:before {
    content: "\e940";
    font-family: 'xeicon';
    font-size: 45px;
    color: var(--mBlue);
}
.mainReviewBox{
    width: calc(100%/2 - 10px);
    display: inline-block;
}
.reviewNew {
	position: relative;
}
.review_new {
	font-size: 14px;
    font-weight: 500;
    color: var(--mBlue);
    position: absolute;
    top: 1.5vw;
    left: 36px;
}
/* 페어피스 강점 */
.main_strangthList{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.main_strangthList >li{
	width: calc(100% /2 - 10px);
	position: relative;
}
.strangth_img{
	width: 100%;
	display: block;
}
.strangthTxt{
	bottom: 30px;
    left: 30px;
	position: absolute;
}
.easyPay{
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
    position: absolute;
    top: 25px;
    left: 2rem;
}
.easyPayTxt{
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
    position: absolute;
    top: 55px;
    left: 2rem;
    font-size: small;
    color: #000;
}
.main_stTitle{
    font-size: 28px;
    color: #fff;
    font-weight: 600;	
}
.main_stTitle li{
	margin-bottom: 4px;
}
.main_stTitle li:last-child{
	margin-bottom: 0;
}
.main_stTxt{
	font-size: 18px;
    color: #fff;
    margin-top: 16px;
}
.main_stTxt li{
	margin-bottom: 4px;
}
.main_stTxt li:last-child{
	margin-bottom: 0;
}
/* 실장님 색션 */
.main_managers {
    position: relative;
}
.main_memberList {
	opacity: 0;
	visibility: hidden;
}/*슬릭먹인 클래스한테 주면 됨 */
.main_memberList.slick-initialized {
	visibility: visible;
	opacity: 1;
}
.main_memberWrap{
    width: 1500px;
    overflow: hidden;
    margin: 0 auto;
}
.member_profile{
    width: calc(100% / 3);
    text-align: center;
}
.main_memberList .slick-slide .main_member_imgBox img{
	width: 35%;
    filter: grayscale(1);
    margin: 0 auto;
}
.main_memberList .slick-slide .main_memberH:hover .main_member_imgBox img{
    filter: grayscale(0);
    z-index: 1;
}
.main_member_name{
    color: #555;
    font-size: 1.1rem;
    font-weight: 600;
    margin-top: 2rem;
}
.main_member_roll {
    margin-top: 2rem;
}
.main_member_roll span{
    display: block;
    font-size: 0.9rem;
    color: #555;
}
.main_member_name{
    color: #555;
    font-size: 1.1rem;
    font-weight: 600;
    margin-top: 2rem;
}
.main_member_roll{
	margin-top: 1rem;
}
.main_member_roll span{
    display: block;
    font-size: 0.9rem;
    color: #555;
}
.main_member_roll span:last-child{
	margin-top: 0.3rem;
}
.main_member_imgBox{
	text-align: center;
}
.main_staff_Btn{
	display: none;
	width: 90%;
	margin: 18px auto 0;
}
/* 서비스 바로가기 */
.main_directList .md_mo{
	display: none;
}
.main_directWrap{
	background-color: var(--sDg01);
}
.main_directList{
	display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.main_directList li{
	width: calc(100% / 3 - 12px);
    display: flex;
    justify-content: space-between;
    padding: 40px;
    box-shadow: 2px 2px 8px var(--sDg02);
    background-color: #fff;    
    position: relative;
    cursor: pointer;
}
.direct_txtBox{
	display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}
.directTit{
	font-size: 18px;
    font-weight: 500;
    display: block;
}
.direct_txtBox a{
    margin-top: 20px;
    color: var(--mBlk);
    border-bottom: solid 1px var(--mBlk);
   	width: fit-content;
    display: block;
    transition: 0.4s;
}
.main_directList li:hover .direct_txtBox a{
	color: var(--mBlue);
    font-weight: 500;
    border-bottom: solid 1px var(--mBlue);
    transition: 0.4s;
}
.directImg{
	height: 88px;
	top: 50%;
    right: 40px;
    display: block;
    transform: translate( 0 , -50%);
    position: absolute;
}

/* ========== 리뷰 그리드 스타일 (언론 섹션과 동일) ========== */
.main_reviewGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.main_reviewItem {
    cursor: pointer;
    transition: transform 0.3s ease;
}
.main_reviewItem:hover {
    transform: translateY(-4px);
}
.main_reviewImg {
    border-radius: 0;
    overflow: hidden;
}
.main_reviewImg img {
    width: 100%;
    height: auto;
    display: block;
}

/* ========== YouTube 그리드 스타일 ========== */
.main_youtubeGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.main_youtubeItem {
    cursor: pointer;
    transition: transform 0.3s ease;
}
.main_youtubeItem:hover {
    transform: translateY(-4px);
}
.main_youtubeThumb {
    position: relative;
    border-radius: 0;
    overflow: hidden;
    aspect-ratio: 16 / 9;
}
.main_youtubeThumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.main_youtubeThumb iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.main_youtubePlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0.8;
    transition: opacity 0.3s ease;
}
.main_youtubeItem:hover .main_youtubePlay {
    opacity: 1;
}
.main_youtubeTxt {
    display: none;
}
.main_youtubeTitle {
    font-size: 14px;
    color: #999;
    margin-bottom: 4px;
}
.main_youtubeSubTitle {
    font-size: 16px;
    color: #333;
    font-weight: 500;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* YouTube 팝업 */
.main_youtube_dark {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.85);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}
.main_youtube_dark.show {
    display: flex;
}
.main_youtube_popup {
    width: 90%;
    max-width: 960px;
    position: relative;
}
.main_youtube_close {
    position: absolute;
    top: -40px;
    right: 0;
    color: #fff;
    font-size: 32px;
    cursor: pointer;
}
.main_youtube_player {
    width: 100%;
    aspect-ratio: 16/9;
}
.main_youtube_player iframe {
    width: 100%;
    height: 100%;
}

/* ========== 언론 섹션 스타일 ========== */
.main_newsGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.main_newsItem {
    cursor: pointer;
    transition: transform 0.3s ease;
}
.main_newsItem:hover {
    transform: translateY(-4px);
}
.main_newsImg {
    border-radius: 0;
    overflow: hidden;
}
.main_newsImg img {
    width: 100%;
    height: auto;
    display: block;
}

/* ========== 언론 섹션 슬라이더 스타일 ========== */
.main_news_pc {
    display: block;
}
.main_news_mo {
    display: none;
}
.mainNewsList {
    width: 100%;
}
.mainNewsList .main_newsItem {
    padding: 0 12px;
}
.mainNewsList.slick-initialized {
    visibility: visible;
    opacity: 1;
}
.mainNewsList:not(.slick-initialized) {
    opacity: 0;
    visibility: hidden;
}
.mainNewsList_mo {
    width: 100%;
}
.mainNewsList_mo .main_newsItem {
    padding: 5px 0;
}
.mainNewsList_mo.slick-initialized {
    visibility: visible;
    opacity: 1;
}
.mainNewsList_mo:not(.slick-initialized) {
    opacity: 0;
    visibility: hidden;
}

/* ========== 통계 섹션 스타일 ========== */
.visitCount_list {
    display: flex;
    justify-content: center;
    gap: 100px;  /* 20px → 100px (간격 넓혀서 화면 채움) */
}
.visitCount_list li {
    border: none;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 16px;
    background-color: #f0f5ff;
    aspect-ratio: 1 / 1;
    width: calc(20% - 15px);  /* 25% → 20% (박스 너비 축소) */
}
.main_crt_num {
    font-size: 40px;  /* 54px → 40px (main2 전용 숫자 폰트 축소) */
}

/* ========== 리뷰 섹션 스타일 ========== */
/* PC용 슬라이더 */
.main_review_pc {
    display: block;
}
.main_review_mo {
    display: none;
}
.mainReviewList2 {
    width: 100%;
}
.mainReviewList2 .main_reviewItem {
    padding: 0 12px;
}
.mainReviewList2 .main_reviewImg img {
    width: 100%;
    height: auto;
    display: block;
}
.mainReviewList2.slick-initialized {
    visibility: visible;
    opacity: 1;
}
.mainReviewList2:not(.slick-initialized) {
    opacity: 0;
    visibility: hidden;
}
/* 모바일용 (세로 슬라이더) */
.mainReviewList2_mo {
    width: 100%;
}
.mainReviewList2_mo .main_reviewItem {
    padding: 5px 0;
}
.mainReviewList2_mo .main_reviewImg img {
    width: 100%;
    height: auto;
    display: block;
}
.mainReviewList2_mo.slick-initialized {
    visibility: visible;
    opacity: 1;
}
.mainReviewList2_mo:not(.slick-initialized) {
    opacity: 0;
    visibility: hidden;
}
@media screen and (max-width: 981px) {
    .main_review_pc {
        display: none;
    }
    .main_review_mo {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
    .main_news_pc {
        display: none;
    }
    .main_news_mo {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
}
