@charset "utf-8";
@import url(base.css?20240115);

.flora{font-family:'Lora','맑은고딕','Malgun Gothic','돋움',dotum,sans-serif;}

/* common */
.content .inner .top{margin-bottom:12px; padding:0 8px;}
.top .tit{font-size:19px; line-height:28px;}
.top .tit a{position:relative; margin:0 7px; padding-right:14px; background:url(../images/ico-link.png) no-repeat 100% 50%; background-size:9px 16px; font-weight:bold; color:#000; z-index: 1;}
.top .tit a:before{content:''; position:absolute; left:-7px; bottom:-3px; width:100%; height:16px; padding-right:14px; border-radius:8px; background-color:#E0CDF2; z-index: -1;}
.top .tit.center{text-align:center;}
.top .tit.img a{background:none; padding-right:0px;}
.top .tit.img a:before{display:none;}
.top .tit.type2{margin-bottom:12px; padding:0 16px;}
.top .tit.type2 span{position:relative; font-weight:bold; z-index: 1;}
.top .tit.type2 span:before{content:''; position:absolute; left:-7px; bottom:-3px; width:100%; height:16px; padding-right:14px; border-radius:8px; background-color:#E0CDF2; z-index: -1;}
.top .tit.type2.c1 strong{color:#E61E2B;}
.top .tit.type2.c2 strong{color:#152484;}
.top .tit.type2.c3 strong{color:#FF7920;}
.more-btn{padding:0 9px;}
.more-btn button{width:100%; padding:8px 0 ; border-radius:20px; background:transparent linear-gradient(97deg, #B453A0 0%, #F67495 24%, #E05DA1 82%, #B053A0 100%) 0% 0% no-repeat padding-box; text-align:center; color:#fff; font-size:16px; font-weight:bold;}
.more-btn button .page{margin-left:8px; color:#6827C5;}
.thumCont.noImg img{height:100%;}


header{position:relative; background-color:#41359F;}
header .inner{position:relative; max-width:360px; margin:0 auto; background:url(../images/header-img2.png) no-repeat 100% 0; background-size:135px 135px; }
header .inner:before{content:''; position:absolute; top:8px; left:8px; width:109px; height:119px; background-image:url(../images/header-img1.png); background-repeat:no-repeat; background-position:0 0; background-size:109px 119px;}
header .top{max-width:360px; margin:0 auto 30px; padding:0 8px; height:18px; text-align:right; }
header .top .logo img{width:62px; height:14px; margin-top:8px;}
header .cont{display:flex; align-items:center; flex-wrap:wrap; max-width:360px; height:77.5px; margin:0 auto; padding-bottom:8px;}
header .cont .info{width:100%; margin-bottom:13px; padding-right:8px; text-align: right;}
header .cont .info a{display:block;}
header .cont .info img{width:201px; height:31px;}
header .cont .info2{width:100%; height:34px; padding-right:8px; text-align: right;}
header .cont .info2 .final{display:inline-block; height:20px; color:#fff; font-size:16px; }
header .cont .info2 .final span{font-size:20px;} 
header .cont .info2 .dday{display:inline-block; height:34px; padding:0 8px; border:1px solid #CCC9E5; border-radius:8px; background-color:#362B8E; line-height:34px; color:#fff; font-size:22px; letter-spacing: -2px;}
header .cont .info2 .dday span{color:#F37097;}
header nav{background-color:#6827C5;}
header nav .nav-swiper{max-width:360px; margin:0 auto;}
header nav .swiper{padding:0 15px;}
header nav .swiper-wrapper{justify-content: space-around;}
header nav .swiper-slide{width:auto !important ;}
header nav div a{position:relative; display:block; padding:6px; color:#fff; font-size:16px; line-height:23px;}
header nav div.on a{ color:#F37097; font-weight:bold;}
header nav div.on a:after{content:''; position:absolute; bottom:0; left:0; width:100%; height:3px; background-color:#F37097;}

/* content */
.content{background-color:#F6F6FA;}

/* 메인탑 */
.main-top{padding-top:16px;}
.main-top .top-swiper{padding:0 8px 100px;}
.main-top .swiper-slide{width:300px;}
.main-top article{position:relative; width:300px; margin-bottom:20px; }
.main-top .thumCont{overflow:hidden; width:100%; height:190px; border-radius:4px 4px 0 0;}
.main-top .thumCont img{object-fit: cover; width:100%;}
.main-top .titCont{position:absolute; display:flex; align-items: center; left:0; bottom:-64px; height:calc(78px - 16px);  padding:8px 16px; border-top-right-radius:20px; }
.main-top .titCont.c1{background-color:#E61E2B;} /*국민의힘*/
.main-top .titCont.c2{background-color:#152484;} /*더불어민주당*/
.main-top .titCont.c3{background-color:#FF7920;} /*개혁신당*/
.main-top .titCont.c4{background-color:#808080;} /*무소속*/
.main-top .titCont p{overflow:hidden; font-size:22px; line-height:32px; color:#fff; font-weight:500; 
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.main-top .top-pagination .swiper-pagination-bullet{width:13px; height:13px; border:2px solid #CCCCCC; background-color:#fff; box-sizing: border-box; opacity: 1;}
.main-top .top-pagination {position:absolute; display:flex; justify-content: center; align-items: center; bottom:24px !important ; left:0; width:100%; z-index: 2;}
.main-top .top-pagination-bullet{margin:0 6px; width:13px; height:13px; border:2px solid #ccc; background:#fff; box-sizing: border-box; opacity: 1;}
.main-top .top-pagination .swiper-pagination-bullet-active{width:17px; height:17px; border:2px solid #41359F; background-color:#fff; box-sizing: border-box;}

/* 대선뉴스 */
.time-news{padding:16px 0; background-color:#EFEEFC;}
.time-news .time-swiper{padding: 0 12px;}
.time-news .swiper-slide{width:170px;}
.time-news .time{position:relative; margin-bottom:12px; padding-left:23px; background:url(../images/ico-clock.png) no-repeat 0 0; background-size:18px 18px;}
.time-news .time.today{position:relative; margin-bottom:12px; padding-left:23px; background:url(../images/ico-clock2.png) no-repeat 0 0; background-size:18px 18px;}
.time-news .time:after{content:''; position:absolute; top:8; right:0; width:60%; height:1px; background-color:#CCCCCC; z-index: -1;}
.time-news .time p{display:inline-block; font-size:14px; background-color:#EFEEFC; color:#a1a1a1; font-weight: bold;}
.time-news .time.today p{color:#41359F; }
.time-news .thumCont{position:relative; overflow:hidden; width:170px; height:96px; margin-bottom:8px; border-radius:4px;}
.time-news .thumCont img{object-fit: cover; width:100%; min-height:96px;}
.time-news .txtCont p{overflow:hidden; font-size:16px; line-height:25px; color:#000;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.time-news .thumCont .label{position:absolute; top:0; left:0; padding:2px 5px; border-top-left-radius:4px; font-size:13px; line-height:17px; background:#41359F; color:#fff;}
.time-swiper .swiper-wrapper{justify-content: space-between;}

/* 대선 핫플 격전지 */
.hot-place{margin-bottom:28px; }
.hot-place .tit img{width:175px; height:70px;}
.hot-place .cont{position:relative; padding-bottom:17px;}
.hot-place .hot-swiper{padding:0 8px;}
.hot-place .swiper-slide{width:calc(228px - 16px); height:calc(240px - 16px); padding:8px; border-radius:8px; background:transparent linear-gradient(134deg, #41359F 0%, #E8A8CD 100%) 0% 0% no-repeat padding-box;}
.hot-place .areaCont{margin-bottom:8px; padding:0 8px; text-align:center;}
.hot-place .areaCont p.area{margin-bottom:4px;font-size:20px; line-height:26px; font-weight:bold; color:#fff;}
.hot-place .areaCont p.info{font-size:15px; line-height:22px; color:#fff;}
.hot-place .rivalCont {display:flex; justify-content: center; padding:8px;  border-radius:8px; background-color:#fff;}
.hot-place .rivalCont .left{margin-right:16px; text-align:center;}
.hot-place .rivalCont .right{text-align:center;}
.hot-place .rivalCont .thumCont{overflow:hidden; width:90px;height:90px; margin-bottom:8px; border-radius:50%; box-sizing: border-box;}
.hot-place .rivalCont .thumCont img{width:90px; height:auto; min-height:90px; margin:-3px 0 0 -3px}

.hot-place .rivalCont .txtCont .name{font-size:17px; line-height:25px; color:#000; font-weight:bold;}
.hot-place .rivalCont .txtCont .dang{display:flex; justify-content: center; align-items: end; height:21px; }
.hot-place .rivalCont .txtCont .dang img{width:auto; max-width:100%; max-height:21px;}
.hot-place .swiper-scrollbar{height:5px !important ; border-radius:5px; background-color:#DEDEDE; 
    left:8px !important ;
    width:calc(100% - 16px) !important ;
}
.hot-place .swiper-scrollbar-drag{height:5px; border-radius:5px; background-color:#CCCCCC}

/* 정책/공약 말말말 */
.attack-word{margin-bottom:28px; padding-top:16px;}
.attack-word .attack{margin-bottom:56px;}
.attack-word .attack .box {margin-bottom:12px;}
.attack-word .attack .box:last-child{margin-bottom:0px;}
.attack-word .attack .box a{display:flex; justify-content: flex-start; align-items: center;  padding:0 8px;}
.attack-word .attack .box .thumCont{overflow:hidden; width:84px; height:63px; border-radius:4px;}
.attack-word .attack .box .thumCont img{object-fit: cover; width:100%; min-height:63px;}
.attack-word .attack .box .txtCont{flex:1 1 0; min-width: 0; margin-right:16px;}
.attack-word .attack .box .txtCont p.txt{overflow:hidden; max-height:48px; font-size:16px; line-height:24px; 
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.attack-word .word {position:relative; padding:0 8px;}
.attack-word .word .box{position:relative; padding:28px 12px 16px; background-color:#EFEEFC;background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='25' ry='25' stroke='%23333' stroke-width='1' stroke-dasharray='4%2c4' stroke-dashoffset='4' stroke-linecap='square'/%3e%3c/svg%3e"); border-radius: 25px;}
.attack-word .word .box:after{content:''; position:absolute; top:-15px; left:0; width:42px; height:26px; background:url(../images/ico-twin.png) no-repeat 0 0; background-size:42px 26px;}
.attack-word .word .box:before{content:''; position:absolute; bottom:-15px; right:0; width:42px; height:26px; background:url(../images/ico-twin2.png) no-repeat 0 0; background-size:42px 26px;}
.attack-word .word .box .tit{position:absolute; top:-15px; left:50px; display:inline-block; width:75px; height:25px;}
.attack-word .word .box .tit img{width:75px; height:25px;}
.attack-word .word article{position:relative; display:flex; align-items: center; height:50px; margin-bottom:16px; padding:12px; border-radius:21px; }
.attack-word .word article:last-child{margin-bottom:0px;}
.attack-word .word article a{overflow:hidden;  font-size:16px; line-height:25px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.attack-word .word .green{background-color:#CEF2EE; z-index: 2;}
.attack-word .word .green:before{content:""; position:absolute; top:0; right:0; width:21px; height:26px; background:url(../images/ico-green.png) no-repeat 0 0 ; background-size:21px 26px; z-index: -11;}
.attack-word .word .yellow{background-color:#F3F3C9;  z-index: 2;}
.attack-word .word .yellow:before{content:""; position:absolute; top:0; left:0; width:21px; height:26px; background:url(../images/ico-yellow.png) no-repeat 0 0 ; background-size:21px 26px; z-index: -11;}

/* 대선포토 */
.photo-area {margin-bottom:28px;}
.photo-area .photo-swiper{padding-bottom:29px;}
.photo-area .cont{position:relative; width:calc(100% - 16px); padding:0 8px;}
.photo-area article{padding-bottom:62px;}
.photo-area .thumCont{overflow:hidden; width:100%; height:0; padding-bottom:58.7%; border-radius:4px; }
.photo-area .thumCont img{object-fit: cover; width:100%; }
.photo-area .txtCont{position:absolute; display:flex; align-items: center; left:0; bottom:0px; height:calc(80px - 16px); margin-right:59px; padding:8px 16px; border-top-right-radius:20px; background:transparent linear-gradient(105deg, #F97794 0%, #E45EA1 33%, #B053A0 100%) 0% 0% no-repeat padding-box;}
.photo-area .txtCont p{overflow:hidden; font-size:22px; line-height:32px; color:#fff; font-weight:500;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.photo-area .swiper-pagination-bullet{width:13px; height:13px; border:2px solid #CCCCCC; background-color:#fff; box-sizing: border-box; opacity: 1;}
.photo-area .swiper-pagination-bullet-active{width:17px; height:17px; border:2px solid #41359F; background-color:#fff; box-sizing: border-box;}
.photo-area .swiper-pagination {display:flex; justify-content: center; align-items: center; bottom:0px !important;}

/* 여론조사 대선그래픽 */
.search-graph{margin-bottom:28px;}
.search-graph .search{margin-bottom:28px;}
.search-graph .search .cont{width:calc(100% - 16px); padding:0 8px;}
.search-graph .search .cont .box{width:100%; height:auto; padding:8px 0; background-color:#fff;}
.search-graph .graph .box{margin-bottom:12px;}
.search-graph .graph .cont{width:calc(100% - 16px); padding:0 8px;}
.search-graph .graph .cont .thumCont{overflow:hidden; width:100%; height:56.1vw; margin-bottom:8px; text-align:center;}
.search-graph .graph .cont .thumCont img{width:auto; height:100%;}
.search-graph .graph .cont .txtCont p{overflow:hidden; font-size:16px; line-height:25px; 
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.tap-graph{padding:8px 8px 16px;}
.tap-graph button{padding:8px 20px; border:1px solid #888; border-radius:8px; color:#888;}
.tap-graph button.on{border:1px solid #41359F; color:#fff; background-color:#41359F; font-weight:bold;}
.tabCont.on{display:block;}
.tabCont{display:none;}

#box-graph{padding:8px 0;}
.highcharts-credits{display: none;}
.graph-description{display:none; font-size:12px; padding:0 8px;}
.graph-description.on{display:block;}

.highcharts-axis-labels.highcharts-xaxis-labels text{font-size:12px; fill:rgb(187, 187, 187) !important; }
.highcharts-axis-labels.highcharts-yaxis-labels text{font-size:12px; fill:rgb(187, 187, 187) !important;}
.graph-description{color:#888;}
.tooltipBox {padding:4px 8px;}
.tooltipBox .tooltipHead{margin-bottom:12px; text-align:center; font-size:14px;}
.tooltipBox .seriesLine{display:flex; justify-content: space-between; margin-bottom:8px;}
.tooltipBox .seriesName{font-size:14px; margin-right:16px;}
.tooltipBox .seriesData{font-size:14px;}

/* 대선 핫이슈 */
.hot-plan{margin-bottom:26px; padding-top:16px; background-color:#EFEEFC;}
.hot-plan .top img{width:122px; height:29px;}
.hot-plan .plan{width:calc(100% - 16px); padding:0 8px;}
.hot-plan .plan .tab-swiper{margin-bottom:12px;}
.hot-plan .plan .tab-swiper .swiper-slide{width:auto;}
.hot-plan .plan .tab-swiper button{padding:8px 12px; border-radius:20px; border:1px solid #ccc; background-color:#fff; font-size:17px; line-height:25px; color:#999;}
.hot-plan .plan .tab-swiper button.on{padding:8px 12px; border-radius:20px; background:transparent linear-gradient(105deg, #43369F 0%, #8D69B4 48%, #B053A0 100%) 0% 0% no-repeat padding-box; color:#fff; font-weight:bold; font-size:17px; line-height:25px;}
.hot-plan .plan .tabCont {display:none;}
.hot-plan .plan .tabCont.on{display:block;}
.hot-plan .plan .tabCont .thumCont{overflow:hidden; width:100%; height:0; margin-bottom:8px; padding-bottom:58.7%;}
.hot-plan .plan .tabCont .thumCont img{object-fit:cover; width:100%;}
.hot-plan .plan .tabCont .listCont li {position:relative; margin-bottom:12px; padding-bottom:12px;}
.hot-plan .plan .tabCont .listCont li:after{content:''; position:absolute; bottom:0; left:0; width:100%; height:1px; border-bottom:1px dashed #ccc; box-sizing: border-box;}
.hot-plan .plan .tabCont .listCont li a{overflow:hidden; display:block; max-height:50px; font-size:16px; line-height:25px; 
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.hot-plan .plan .tabCont .listCont li:last-child{margin-bottom:0px; padding-bottom:16px}
.hot-plan .plan .tabCont .listCont li:last-child:after{display:none;}

/* 대선 일정 */
.elec-plan{margin-bottom:40px; padding:16px 8px; background-color:#EFEEFC;}
.elec-plan .top{margin-bottom:12px;}
.elec-plan .top .tit img{width:117px; height:29px;}
.elec-plan .cont .plan-swiper .day-line{display:flex; justify-content: flex-start; flex-wrap: wrap; padding-top:31px;}
.elec-plan .cont .plan-swiper .day-line:after{content:''; position:absolute; top:10px; left:118px; width:1190px; height:1px; background-color:#ccc;}
.elec-plan .cont .plan-swiper .box{position:relative; display:flex; justify-content: center; align-items:center; flex-direction: column; flex-wrap:wrap; width:227px; height:70px; margin-right:10px; border:1px solid #ccc; border-radius:35px; background-color:#fff; text-align:center;}
.elec-plan .cont .plan-swiper .box:after{content:''; position:absolute; top:-31px; left:105px; width:19px; height:19px; background:url(../images/ico-dot.png) no-repeat 0 0; background-size:19px 19px; z-index: 2;}
.elec-plan .cont .plan-swiper .box p{width:100%;}
.elec-plan .cont .plan-swiper .box p.txt1{margin-bottom:4px; font-size:18px; line-height:22px; color:#41359F; font-weight:bold;}
.elec-plan .cont .plan-swiper .box:last-child p.txt1{margin-bottom:0px;}
.elec-plan .cont .plan-swiper .box p.txt2{font-size:14px; line-height:17px; color:#848484;}
.elec-plan .cont .plan-swiper .box.on{background-color:#41359F;}
.elec-plan .cont .plan-swiper .box.on .txt1 span{padding-left:30px; background:url(../images/ico-check.png) no-repeat 0 50%; color:#F8AB30;}
.elec-plan .cont .plan-swiper .box.on .txt2{color:#fff;}
.elec-plan .cont .plan-swiper .swiper-slide{width:1434px;}

/* 대선 영상 */
.box-video{padding:20px 0;}
.box-video .tit.type2{padding:0 8px;}
.box-video .videoSwiper{overflow:hidden; padding:0 8px;}
.box-video .swiper-slide{width:228px;}
.box-video .swiper-slide .thumCont{position:relative; overflow:hidden; width:100%; height:128px; margin-bottom:4px; border-radius:4px;}
.box-video .swiper-slide .thumCont img{width:100%; min-height:128px;}
.box-video .swiper-slide .tit{overflow:hidden; font-size:16px; line-height:28px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.box-video .swiper-slide .thumCont:after{content:''; position:absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0, .3); background-image:url(../images/ico_video.png); background-position: 50% 50%; background-repeat:no-repeat; background-size:28px 28px;}

/* 투개표 시작 */
.elec-box .info-box{display:flex; justify-content: space-between; align-items: center; min-height:30px; padding:8px 6px; background-color:#E3E1FF;}
.elec-box .info-box .txt1 span{font-size:16px; color:#000; font-weight:bold; vertical-align: middle;}
.elec-box .info-box .txt1 .percent{font-size:23px; color:#41359F;}
.elec-box .info-box .txt1 .percent em{font-size:15px;}
.elec-box .info-box .txt1 .vote{font-size:20px; color:#41359F;}
.elec-box .info-box .txt1 .vote em{font-size:15px;}
.elec-box .info-box .txt2{font-size:13px; color:#666;}
.elec-box .info-box .txt2 span{font-size:14px; color:#000;}
.elec-box .info-box .txt2 span em{font-size:13px; color:#000;}

/* 당 컬러 */
.elec-box .cont .pep.c1{color:#E61E2B;}
.elec-box .cont .pep.c1 .name span{color:#E61E2B;}
.elec-box .cont .voteBox .b.c1 span{background:#E61E2B;}
.elec-box .cont .pep.c1 .result .bar{background:#E61E2B;}
.elec-box .cont.rank .rank .pep.c1 .txtCont .bar b{background:#E61E2B;}
.elec-box .cont .pep.c2{color:#152484;}
.elec-box .cont .pep.c2 .name span{color:#152484;}
.elec-box .cont .voteBox .b.c2 span{background:#152484;}
.elec-box .cont .pep.c2 .result .bar{background:#152484;}
.elec-box .cont.rank .rank .pep.c2 .txtCont .bar b{background:#152484;}
.elec-box .cont .pep.c3{color:#FF7920;}
.elec-box .cont .pep.c3 .name span{color:#FF7920;}
.elec-box .cont .bar .b.c3 span{background:#FF7920;}
.elec-box .cont .pep.c3 .result .bar{background:#FF7920;}
.elec-box .cont.rank .rank .pep.c3 .txtCont .bar b{background:#FF7920;}
.elec-box .cont .pep.c4{color:#808080;}
.elec-box .cont .pep.c4 .name span{color:#808080;}
.elec-box .cont .bar .b.c4 span{background:#808080;}
.elec-box .cont .pep.c4 .result .bar{background:#808080;}
.elec-box .cont.rank .rank .pep.c4 .txtCont .bar b{background:#808080;}

/* 출구조사 */
.elec-box .cont.type2{background:#F6F6FA; }
.elec-box .cont.type2 .inner{position:relative; display:flex; justify-content:space-between; align-items: center; padding:12px;}
.elec-box .cont.type2 .pep{text-align:center;}
.elec-box .cont.type2 .pep:nth-child(1){order:1;}
.elec-box .cont.type2 .pep:nth-child(2){order:3;}
.elec-box .cont.type2 .pep .rank img{width:auto; height:20px;}
.elec-box .cont.type2 .pep .percent{line-height:40px; font-size:28px; font-weight:bold;}
.elec-box .cont.type2 .pep .percent span{font-size:15px;}
.elec-box .cont.type2 .pep .txtCont .vote{color:#555; margin-top:-4px;}
.elec-box .cont.type2 .pep .thumCont{position:relative;}
.elec-box .cont.type2 .pep .thumCont .state{position:absolute; top:0; left:0; width:32px; height:35px; padding:0px; background:transparent}
.elec-box .cont.type2 .pep .thumCont .state img{width:100%;}
.elec-box .cont.type2 .pep .img{overflow:hidden; width:110px; height:110px; border-radius: 50%; border:3px solid ; box-sizing: border-box;}
.elec-box .cont.type2 .pep .img img{width:100%; height:auto;}
.elec-box .cont.type2 .pep .name{font-size:18px; font-weight:bold; line-height:27px; color:#000;}
.elec-box .cont.type2 .pep .name span{display:block; font-size:14px; line-height:20px;}

.elec-box .cont.type2 .voteBox{order:2; display:flex; justify-content: center; flex-wrap:wrap; width:110px; left:50%;}
.elec-box .cont.type2 .voteBox .b{display:flex; justify-content: flex-end; flex-direction: column; width:25px; height:170px; margin:0 10px; background-color:#E1E1E1;}
.elec-box .cont.type2 .voteBox .b span{display:block; width:100%; border-top-left-radius:13px; border-top-right-radius:13px;}
.elec-box .cont.type2 .voteBox .vote{width: 100%; margin-top:4px; text-align:center;}
.elec-box .cont.type2 .voteBox .vote .txt{font-size:13px; font-weight:bold; line-height:19px;}
.elec-box .cont.type2 .voteBox .vote .num{width:100px; height:31px; margin:0 auto; background:url(../images/bg_vote.png) no-repeat 0 0; background-size:100px 31px; color:#fff; }
.elec-box .cont.type2 .voteBox .vote .num p{line-height:31px; font-size:13px;}
.elec-box .cont.type2 .voteBox .vote .num p span{ font-size:12px; }
.elec-box .cont.type2 .voteBox .vote .state{max-width: 49px; height: auto; margin:4px auto 0; padding:0px; background:transparent;}
.elec-box .cont.type2 .voteBox .vote .state img{width: 100%;}
.elec-box .cont button{width:calc(100% - 24px); margin:12px; padding:5px 0; border-radius:16px; background-color:#41359F;}
.elec-box .cont button span{visibility:visible; display:inline-block; padding-right:12px; background:url(../images/ico_arr.png) no-repeat 100% 6px; background-size:6px 11px; font-size:15px; font-weight:bold; color:#fff; line-height:22px;}

/* 개표종료 */
.elec-box .cont.type3 .inner{position:relative; display:flex; justify-content:space-between; align-items: center; padding:12px;}
.elec-box .cont.type3 .pep{text-align:center;}
.elec-box .cont.type3 .pep:nth-child(1){order:1;}
.elec-box .cont.type3 .pep:nth-child(2){order:3;}
.elec-box .cont.type3 .pep .rank img{width:auto; height:20px;}
.elec-box .cont.type3 .pep .percent{line-height:40px; font-size:28px; font-weight:bold;}
.elec-box .cont.type3 .pep .percent span{font-size:15px;}
.elec-box .cont.type3 .pep .thumCont{position:relative; z-index: 2;}
.elec-box .cont.type3 .pep .thumCont .state{position:absolute; bottom:-22px; left:-8px; width:40px; height:48px; padding:0px; background:transparent}
.elec-box .cont.type3 .pep .thumCont .state img{width:100%;}
.elec-box .cont.type3 .pep .img{overflow:hidden; width:110px; height:110px; border:none ; border-radius:0; box-sizing: border-box;}
.elec-box .cont.type3 .pep .img img{width:100%; height:auto;}
.elec-box .cont.type3 .pep .name{font-size:18px; font-weight:bold; line-height:27px; color:#000;}
.elec-box .cont.type3 .pep .name span{display:block; font-size:14px; line-height:20px;}
.elec-box .cont.type3 .result{position:relative; display:flex; height:300px; justify-content: space-between; flex-direction: column; background-color:#E1E1E1;}
.elec-box .cont.type3 .result .txtCont{margin-top:6px; z-index: 2;}
.elec-box .cont.type3 .result .txtCont .vote{color:#555555;}
.elec-box .cont.type3 .result .bar{position:absolute; bottom:0; left:0; width:100%; border-top-left-radius: 60px; border-top-right-radius: 60px; z-index: 1;}
.elec-box .cont.type3 .voteBox{order:2; display:flex; justify-content: center; flex-wrap:wrap; width:110px; left:50%;}
.elec-box .cont.type3 .voteBox .b{display:flex; justify-content: flex-end; flex-direction: column; width:25px; height:170px; margin:0 10px; background-color:#E1E1E1;}
.elec-box .cont.type3 .voteBox .b span{display:block; width:100%; border-top-left-radius:13px; border-top-right-radius:13px;}
.elec-box .cont.type3 .voteBox .vote{width: 100%; margin-top:4px; text-align:center;}
.elec-box .cont.type3 .voteBox .vote .txt{font-size:13px; font-weight:bold; line-height:19px;}
.elec-box .cont.type3 .voteBox .vote .num{width:100px; height:31px; margin:0 auto; background:url(../images/bg_vote.png) no-repeat 0 0; background-size:100px 31px; color:#fff; letter-spacing:-0.8px;}
.elec-box .cont.type3 .voteBox .vote .num p{line-height:31px; font-size:13px;}
.elec-box .cont.type3 .voteBox .vote .num p span{ font-size:12px; }
.elec-box .cont.type3 .voteBox .vote .state{max-width: 49px; height: auto; margin:4px auto 0;}
.elec-box .cont.type3 .voteBox .vote .state img{width: 100%;}
.elec-box .cont button{width:calc(100% - 24px); margin:12px; padding:5px 0; border-radius:16px; background-color:#41359F;}

/* 맵 */
.elec-box .cont.map{padding-top:16px; background-color:#F6F6FA;}
.elec-box .cont.map .mapCont{position:relative;}
.elec-box .cont.map .mapCont .infoBox{position:absolute; top:43px; left:8px; }
.elec-box .cont.map .mapCont .map{min-height:435px;}
.elec-box .cont.map .infoBox .info .txt1{color:#000000; font-weight:bold; font-size:16px; line-height:23px;}
.elec-box .cont.map .infoBox .info .txt1 .percent{font-size:23px; line-height:34px; color:#41359F;}
.elec-box .cont.map .infoBox .info .txt1 .percent em{font-size:15px;}
.elec-box .cont.map .infoBox .info .txt2{font-size:15px; color:#555;}
.elec-box .cont.map .infoBox .info .txt2 span{font-size:13px;}
.elec-box .cont.rank .infoBox{display:flex; align-items: center; margin-bottom:16px; padding:0 8px;}
.elec-box .cont.rank .infoBox .area{position:relative; width:50px; margin-right:16px; padding:0 8px; font-size:18px; font-weight:bold; z-index: 1; text-align: center;}
.elec-box .cont.rank .infoBox .area:after{content: ''; position: absolute; left: 0; bottom: -2px; width: 100%; height: 16px; border-radius: 8px; background-color: #E0CDF2; z-index: -1;}
.elec-box .cont.rank .infoBox .info{display:flex; padding:6px 14px; border:2px solid #CBC9D8; border-radius:8px; background-color:#EFEEFC;}
.elec-box .cont.rank .infoBox .info p{display:flex; flex-wrap: wrap; align-items: center; width:50%; }
.elec-box .cont.rank .infoBox .info .txt1{color:#000000; font-weight:bold; font-size:16px; line-height:23px;}
.elec-box .cont.rank .infoBox .info .txt1 .percent{margin-left:6px; font-size:23px; line-height:30px; color:#41359F;}
.elec-box .cont.rank .infoBox .info .txt1 .percent em{font-size:15px;}
.elec-box .cont.rank .infoBox .info .txt2{position:relative; padding-left:16px; font-weight:bold;}
.elec-box .cont.rank .infoBox .info .txt2:after{content:''; position:absolute; left:6px; top:0; width:1px; height:100%; background-color:#CBC9D8;}
.elec-box .cont.rank .infoBox .info .txt2 .percent{margin-left:6px; font-size:23px; line-height:30px; color:#41359F;}
.elec-box .cont.rank .infoBox .info .txt2 .percent em{font-size:15px;}
.elec-box .cont.rank .infoBox .info .txt2 .vote{font-size:15px; color:#555; font-weight: normal;}
.elec-box .cont.rank .infoBox .info .txt2 .vote span{font-size:13px;}
.elec-box .cont.rank .rank{padding:0 8px;}
.elec-box .cont.rank .rank .pep{display:flex; margin-bottom:20px;}
.elec-box .cont.rank .rank .pep:last-child{margin-bottom:0px;}
.elec-box .cont.rank .rank .pep .thumCont{position:relative; width:110px; height:123px; margin-right:12px;}
.elec-box .cont.rank .rank .pep .thumCont img{width:100%;}
.elec-box .cont.rank .rank .pep .thumCont .state{position:absolute; top:0; right:-10px; background:transparent; width:32px; padding:0px;}
.elec-box .cont.rank .rank .pep .thumCont .state.win{width:40px;}
.elec-box .cont.rank .rank .pep .thumCont .rank{position:absolute; left:0; bottom:0px; width:37px; padding:0px;}
.elec-box .cont.rank .rank .pep .thumCont .rank img{width:100%;}
.elec-box .cont.rank .rank .pep .txtCont{flex:1 0 0;}
.elec-box .cont.rank .rank .pep .txtCont .name{display:flex; align-items: center; font-size:18px; font-weight:bold; line-height:30px; color:#000;}
.elec-box .cont.rank .rank .pep .txtCont .name span{margin-left:6px; font-size:14px; font-weight:bold;}
.elec-box .cont.rank .rank .pep .txtCont .percent{line-height:40px; font-size:28px; letter-spacing: -1px; font-weight:bold;}
.elec-box .cont.rank .rank .pep .txtCont .percent span{font-size:20px; }
.elec-box .cont.rank .rank .pep .txtCont .vote{margin-bottom:8px; font-size:14px; color:#555;}
.elec-box .cont.rank .rank .pep .txtCont .bar{width:100%; height:25px; background-color:#E1E1E1;}
.elec-box .cont.rank .rank .pep .txtCont .bar b{display:block; height:25px; border-top-right-radius:15px; border-bottom-right-radius:15px;}

/* 서브 페이지 */
.content.sub .tab{overflow:hidden; padding:20px 8px;background-color:#EFEEFC;}
.content.sub .tab .swiper-wrapper{}
.content.sub .tab .swiper-slide{width:auto !important;}
.content.sub .tab .swiper-slide a{padding:8px 12px; border-radius:22px; border:1px solid #ccc; background:#F6F5F5; font-size:17px; line-height:25px; color:#999; box-sizing: border-box;}
.content.sub .tab .swiper-slide a span{margin-right:6px; font-size:14px;}
.content.sub .tab .swiper-slide.on a{background:transparent linear-gradient(124deg, #43369F 0%, #8D69B4 48%, #B053A0 100%) 0% 0% no-repeat padding-box; color:#fff; font-weight:bold;}
.content.sub .tab .swiper-slide.on.c1 a{background:#E61E2B;} /*국민의힘*/
.content.sub .tab .swiper-slide.on.c2 a{background:#152484;} /*더불어민주당*/
.content.sub .tab .swiper-slide.on.c3 a{background:#FF7920;} /*개혁신당*/

.content.sub .news-list{padding:12px 0 40px;;}
.content.sub .news-list .list{margin-bottom:20px;}
.content.sub .news-list .box{margin-bottom:12px; padding:0 9px;}
.content.sub .news-list .box .news{display:flex; justify-content: flex-start; align-items: center;}
.content.sub .news-list .box .news .thumCont{overflow:hidden; flex-basis: 83px; width:83px; height:63px; border-radius:4px;}
.content.sub .news-list .box .news .thumCont img{object-fit: cover; width:100%; min-height:63px;}
.content.sub .news-list .box .news .txtCont {flex:1 0 0; margin-right:15px;}
.content.sub .news-list .box .news .txtCont .label{display:inline-block; margin-bottom:2px; padding:2px 5px;border-top-left-radius: 4px; background:#41359F; font-size:13px; line-height:17px; color:#fff;}
.content.sub .news-list .box .news .txtCont .tit{overflow:hidden; max-height:44px; font-size:16px; line-height:22px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
/* 서브페이지 대선뉴스 지역별 */
.content.sub .tab2{position:relative; overflow:hidden; padding:20px 8px;background-color:#EFEEFC;}
.content.sub .tab2:after{content:''; position:absolute; top:0; left:9px; width:calc(100% - 18px); height:1px; background-color:#ccc;}
.content.sub .tab2 .swiper-slide{width:auto !important;}
.content.sub .tab2 .swiper-slide a{padding:7px 12px; border-radius:4px; border:2px solid #ccc; background:#fff; font-size:17px; line-height:25px; color:#999; box-sizing: border-box;}
.content.sub .tab2 .swiper-slide.on a{color:#41359F; border:2px solid #41359F; font-weight:bold;}

/* 주요 후보자 */
.content.sub .card{margin:20px 8px; border-radius:8px; background-color:#F6F6FA; box-shadow:0px 3px 6px rgba(0,0,0, .29);}
.content.sub .card .thumCont{width:calc(100% - 54px); padding:16px 27px 0; border-top-left-radius:8px; border-top-right-radius:8px; background-color:#EDEDF3;}
.content.sub .card .thumCont img{width:100%; height:auto;}
.content.sub .card .txtCont{padding:12px; border-bottom-left-radius:8px; border-bottom-right-radius:8px; background-color:#EDEDF3;}
.content.sub .card .txtCont ul:first-child{margin-bottom:8px;}
.content.sub .card .txtCont ul li{margin-bottom:8px; font-size:15px;}
.content.sub .card .txtCont ul li:last-child{margin-bottom:0px;}
.content.sub .card .txtCont ul li strong{margin-right:8px;}
.content.sub .card .txtCont ul:last-child{display:flex; justify-content: flex-start; flex-wrap: wrap;}
.content.sub .card .txtCont ul:last-child li{width:50%;}
.content.sub .offerList .offerSwiper{padding:8px;}
.content.sub .offerList.c1 .offerSwiper{min-height:216px;}
.content.sub .offerList.c1 .offerSwiper .swiper-slide{min-height:184px;}
.content.sub .offerList.c2 .offerSwiper{min-height:164px;}
.content.sub .offerList.c2 .offerSwiper .swiper-slide{min-height:132px;}
.content.sub .offerList.c3 .offerSwiper{min-height:216px;}
.content.sub .offerList.c3 .offerSwiper .swiper-slide{min-height:184px;}
.content.sub .offerList .swiper-slide{width:263px; padding:16px 12px; border-radius:8px; background-color:#EDEDF3; box-shadow: 0px 3px 6px rgba(0,0,0, .29);}
.content.sub .offerList .swiper-slide .tit{margin-bottom:12px; font-size:17px; font-weight:bold;}
.content.sub .offerList .swiper-slide li{position:relative; margin-bottom:8px; padding-left:12px;}
.content.sub .offerList .swiper-slide li:last-child{margin-bottom:0px;}
.content.sub .offerList .swiper-slide li:after{content:''; position:absolute; top:8px; left:0;  width:4px; height:4px; background-color:#777;}

/* 대선포토 */
.photo-list{width:calc(100% - 18px); padding:20px 9px;}
.photo-list .list{margin-bottom:8px;}
.photo-list .grid-item, .photo-list .grid-sizer {width:49%; height:auto; border-radius:4px;}
.photo-list .gutter-sizer{width:2%;}
.photo-list .grid{width:100%;}
.photo-list .grid-item{width:49%; margin-bottom:12px; box-shadow: 0px 3px 6px rgba(0,0,0, .29);}
.photo-list .grid-item .thumCont{overflow:hidden; border-top-left-radius:4px; border-top-right-radius:4px;}
.photo-list .grid-item .thumCont img{width:100%; height:auto;}
.photo-list .grid-item .txtCont{padding:8px; border-bottom-left-radius:4px; border-bottom-right-radius:4px; background-color:#fff;}
.photo-list .grid-item .txtCont p{overflow:hidden; max-height:50px; font-size:16px; line-height:25px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* 대선그래픽 */
.graph-list{width:calc(100% - 18px); padding:20px 9px;}
.graph-list .list{margin-bottom:8px;}
.graph-list .grid-item, .graph-list .grid-sizer {width:49%; height:auto; border-radius:4px;}
.graph-list .gutter-sizer{width:2%;}
.graph-list .grid{width:100%;}
.graph-list .grid-item{width:49%; margin-bottom:12px; box-shadow: 0px 3px 6px rgba(0,0,0, .29);}
.graph-list .grid-item .thumCont{overflow:hidden; border-top-left-radius:4px; border-top-right-radius:4px;}
.graph-list .grid-item .thumCont img{width:100%; height:auto;}
.graph-list .grid-item .txtCont{padding:8px; border-bottom-left-radius:4px; border-bottom-right-radius:4px; background-color:#fff;}
.graph-list .grid-item .txtCont p{overflow:hidden; max-height:50px; font-size:16px; line-height:25px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.elec-box{margin-bottom:28px;}
.elec-box .state{overflow:hidden; position:relative; padding:16px 6px 40px; background-color:#DEDCF1;}
.elec-box .state .top{margin-bottom:12px;}
.elec-box .state>.tit{position:relative; display:inline-block; margin:0 6px 15px 8px; font-size:19px; font-weight:bold; line-height:28px; z-index: 1;}
.elec-box .state>.tit:after{content:''; position:absolute; left:-8px; bottom:0px; width:calc(100% + 16px); height:16px; border-radius:8px; background-color:#E0CDF2; z-index: -1;}
.elec-box .state .swiper-slide{width:160px !important; border-radius:8px; }
.elec-box .state .swiper-slide img{width:100%; height:auto;}
.elec-box .state .state-pagination {position:absolute; display:flex; justify-content: center; align-items: center; bottom:12px; left:0; width:100%; z-index: 2;}
.elec-box .state .swiper-pagination-bullet{margin:0 6px; width:13px; height:13px; border:2px solid #ccc; background:#fff; box-sizing: border-box; opacity: 1;}
.elec-box .state .state-pagination .swiper-pagination-bullet-active{width:17px; height:17px; border:2px solid #41359F; background-color:#fff; box-sizing: border-box;}

/* 여론 조사 */
.search-top {padding:20px 8px 28px;}
.search-top .box{width:100%; height:auto; padding-bottom:8px; background:#fff;}
.search-list {padding:0 8px 40px;}
.search-list .list{margin-bottom:28px;}
.search-list .list .top{margin-bottom:12px;}
.search-list .list .cont{display:flex; justify-content: flex-start; flex-wrap: wrap;}
.search-list .list .cont .box:first-child{width:calc(50% - 6px); margin-right:6px;}
.search-list .list .cont .box:last-child{width:calc(50% - 6px); margin-left:6px;}
.search-list .list .cont .box .thumCont{overflow:hidden; width:100%; height:0; margin-bottom:8px; padding-bottom:69.9%; border-radius:4px;}
.search-list .list .cont .box .thumCont img{object-fit: cover; width:100%; min-height:100%;}
.search-list .list .cont .box .txtCont{overflow:hidden; 
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.search-list .list .cont .box .txtCont p{font-size:16px; line-height:25px;}
.search-list .list:last-child{margin-bottom:0px;}
.search-list .list:last-child .cont .box .thumCont{width:100%; height:32.2vw; padding-bottom:0px; text-align:center;}
.search-list .list:last-child .cont .box .thumCont img{object-fit: contain; width:auto; height:100%;}


footer{display:flex; justify-content: center; align-items:center; height:115px; background-color:#41359F; }
footer .inner{text-align:center;}
footer p{color:#fff; font-size:14px; }

/* 하이차트 맵 지역 라벨 */
.map-label{position:relative; margin:1px 0 0 -5px; padding:0px 3px; border-radius:3px; background-color:rgba(255,255,255 ,.65); color:#000; font-size:9px;}
.map-label:after{content:''; position:absolute; bottom:-8px; left:5px; width:7px; height:8px; background:url(../images/bg-data-label.png) no-repeat 0 0;}

@media only screen and (max-width:429px){
    header nav .swiper-wrapper{justify-content: space-between;}
    header nav .swiper-slide:last-child{margin-right:0px;}
}
@media only screen and (max-width:355px){
    header .inner:after{display:none;}
}