/*랜딩 전용 폰트 추가*/
html {
	font-size: 62.5%
}
body {
	font-size: 1.6rem !important;
}
.hidden-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}
@font-face {
	font-family:'Noto Sans KR';
	font-style:normal;
	font-weight:300;
	src:url(../fonts/noto/NotoSansKR-Light.woff2) format('font-woff2');
}
@font-face {
	font-family:'Noto Sans KR';
	font-style:normal;
	font-weight:700;
	src:url(../fonts/noto/NotoSansKR-ExtraBold.woff2) format('font-woff2');
}
#header.landing-head {
	position: relative;
	max-width: 1410px;
	width: calc(100% - 80px);
	height: 100px;
	margin: 0 auto;
	padding: 0;
	border-bottom: none;
}
#header.landing-head h1.logo {
	left: 0;
}
#wrap.style-bg{
	width: 100%;
	height: 280px;
	/*background: #ecf1f6;*/
}
#landing_container {
	overflow: hidden;
}
#header.landing-head h1.logo{
	top: 30px;
}
.main-sect{
	display: flex;
	width: 1410px;
	height: 440px;
	margin: 0 auto;
    justify-content: space-between;
    align-items: flex-start;
}
/* 랜딩 Swiper*/
.landing-swiper{
	position: relative;
	width: 1020px;
	height: inherit;
}
.landing-noImg-swiper{
	position: relative;
	width: 1020px;
	height: inherit;
	background-color: #fff;
}
.landing-swiper .swiper-wrapper{
	width: 100%;
	height: 440px;
}
.swiper-inrbox{
	overflow: hidden;
	border-radius: 40px;
	border:1px solid #ecf1f6;

}
.swiper-slide a{
	overflow: hidden;
	display: block;
	height: inherit;
    border-radius: 40px;
}
.swiper-slide a:focus{
	border:2px solid #000;
	border-radius: 40px;
}
.img-box{
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 100%;
	background: #fff;
}
.swiper-slide a > .img-box img{
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
}
/*배너 컨트롤 박스*/
.controller-box{
	position: absolute;
	right: 0;
	bottom: -2px;
	width: 310px;
	height: 73px;
	padding-top:12px;
	background: #fff;
	z-index: 10;
}
.controller-box::before{
	position: absolute;
	top: 0;
	left: -95px;
	width: 95px;
	height: 73px;
	background: url(../images/common/bg/radius_left.svg) no-repeat right top;
	content: '';
}
.controller-box::after{
	position: absolute;
	top: -69px;
	right: 0;
	width: 70px;
	height: 70px;
	background: url(../images/common/bg/radius_right.svg) no-repeat right top;
	content: '';
}
.controller-box .button-controller{
	position: relative;
	float: right;
	width: 128px;
	height: inherit;
}
.button-controller .swiper-button-prev,
.button-controller .swiper-button-next,
.controller-box .swiper-button-play,
.controller-box .swiper-button-stop{
	width: 60px;
	height: 60px;
	border-radius: 50px;
	background:#fff;

}
.button-controller .swiper-button-prev, .swiper-container-rtl .swiper-button-next{
	top: 0;
	left: 0;
	margin-top: 0;
	background: url(../images/common/btn/btn_left.png) no-repeat center #eef2f7;
}
.button-controller .swiper-button-next, .swiper-container-rtl .swiper-button-prev{
	top: 0;
	right: 0;
	margin-top: 0;
	background: url(../images/common/btn/btn_right.png) no-repeat center #eef2f7;
}
.button-controller .swiper-button-prev:after, .button-controller .swiper-container-rtl .swiper-button-next:after,
.button-controller .swiper-button-next:after, .button-controller .swiper-container-rtl .swiper-button-prev:after{
	content: '';
}
.controller-box .swiper-controller{
	float: right;
	margin-right: 8px;
}
.controller-box .swiper-button-stop{
	border: 1px solid #cdd1d5;
	background: url(../images/common/btn/btn_pause.png) no-repeat center #fff;
}
.controller-box .swiper-button-play{
	border: 1px solid #cdd1d5;
	background: url(../images/common/btn/btn_play.png) no-repeat center #fff;
}
.controller-box .swiper-pagination{
	display: flex;
    float: right;
	position: unset;
    width: 100px;
	height:60px;
    margin-right: 8px;
	border-radius: 40px;
	border: 1px solid #cdd1d5;
	background: #fff;
	font-family: 'Pretendard GOV';
	font-weight: 600;
	font-size: 2.4rem;
	color:#666666;
    align-items: center;
    justify-content: center;
	gap: 9px;
}
.controller-box .style-boder{
	position: absolute;
	top:0;
	width:240px;
	height:1px;
	background:#ecf1f6;
}
.swiper-pagination .swiper-pagination-current{
	color: #000;
}

.layout-point {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.layout-point span:nth-child(1) {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 433px;
	height: 60px;
	background: #fff;
	border-radius: 0 50px 0 25px;
}
.layout-point span:nth-child(1)::before {
    content: "";
    position: absolute;
    top: -60px;
    left: 0px;
    width: 60px;
    height: 60px;
    box-sizing: content-box;
    background: radial-gradient(circle at 119% -26%, transparent 74%, #fff 0);
}
.layout-point span:nth-child(1)::after {
    content: "";
    position: absolute;
    right: -36px;
    bottom: -2px;
    width: 40px;
    height: 40px;
    box-sizing: content-box;
    background: radial-gradient(circle at 120% -39%, transparent 73%, #fff 0);
}
.counting-box {
	overflow: hidden;
	width: 360px;
	height: inherit;
	padding: 52px 44px;
	border-radius: 40px;
	background: #3f3f3f;
	color: #fff;
}
.counting-box .txt-date {
	position: relative;
	margin-bottom: 15px;
	font-size: 2rem;
	color: #fff;
	letter-spacing: -0.05em;
	opacity: .7;
	z-index: 2;
}
.counting-box .item {
	position: relative;
	margin-top: 50px;
	z-index: 2;
}
.counting-box .item + .item{
	margin-top: 45px
}
.counting-box .item .s-tit {
	display: block;
	padding-left: 25px;
	background: url(../images/common/ico/ico-counting-title.png) no-repeat center left;
	font-size: 2.4rem;
	letter-spacing: -0.05em;
}
.counting-box .item>span .num {
	padding-right: 8px;
	font-family: 'Pretendard GOV';
	font-weight: 600;
	font-size: 4rem;
	letter-spacing: -0.02em;
}
.counting-box .item>span {
	font-weight: 400;
	font-size: 3.2rem;
}
.card-box {
	display: flex;
	max-width: 1410px;
	width: calc(100% - 30px);
	margin: 36px auto;
	align-items: center;
	justify-content: space-between;
}
.card-box .item {
	overflow: hidden;
	max-width: 495px;
	width: calc(100% - 30px);
	max-height: 300px;
}
.card-box .item a {
	display: block;
	width: 100%;
	padding: 58px 50px;
	height: 300px;
	border-radius: 40px;
	background: #d0e9fc;
}
.card-box .item a .title {
	display: block;
	font-weight: 600;
	font-size: 3.6rem;
	line-height: 40px;
	letter-spacing: -0.05em;
}
.card-box .item a .title em {
	display: inline-block;
	position: relative;
	font-weight: 300;
}
.card-box .item a .title em::after {
	position: absolute;
	top: 21px;
	right: calc(0% - 95px);
	width: 74px;
	height: 1px;
	content: '';
}
.card-box .item a ul {
	margin-top: 30px;
	font-size: 2rem;
	letter-spacing: -0.05em;
}
.card-box .item a ul li {
	position: relative;
	padding-left: 17px;
	font-weight: 500;
}
.card-box .item a ul li::after {
	position: absolute;
	top: 13px;
	left: 0;
	width: 3px;
	height: 3px;
	content: '';
}
/* 주민참여 nth-child(1) */
.card-box .item:nth-child(1) a {
	background: url(../images/images/landing-card01.png) no-repeat right 50px bottom 37px,linear-gradient(146deg,rgba(208,233,252,1) 0%,rgba(192,225,250,1) 80%,rgba(168,213,246,1) 100%);
	color: #006ab8;
}
.card-box .item:nth-child(1) a ul li::after,.card-box .item:nth-child(1) a .title em::after {
	background: #0075ca;
}
/* 자치법규 nth-child(2) */
.card-box .item:nth-child(2) a {
	background: url(../images/images/landing-card02.png) no-repeat right 50px bottom 37px,linear-gradient(146deg,rgba(254,246,199,1) 0%,rgba(255,242,174,1) 80%,rgba(255,241,165,1) 100%);
	color: #e66700;
}
.card-box .item:nth-child(2) a ul li::after,.card-box .item:nth-child(2) a .title em::after {
	background: #e87901;
}
/* 이용안내 */
.card-box .call-box {
	display: flex;
	width: 360px;
	height: 300px;
	background: #eff2f5;
	border-radius: 40px;
	flex-wrap: wrap;
}
.call-box .title {
	display: block;
	position: relative;
	width: 100%;
	margin: 30px 44px 0 44px;
	padding: 20px 0;
	font-weight: 600;
	font-size: 3.4rem;
	color: #666;
	letter-spacing: -0.05em;
}
.call-box .title::after {
	position: absolute;
	top: 0;
	right: 0;
	width: 79px;
	height: 74px;
	background: url(../images/images/landing-card03.png) no-repeat center right;
	content: '';
}
.call-box ul {
	width: 100%;
	height: 180px;
	padding: 10px 41px;
	background: #fff;
	border-radius: 40px;
	border: 3px solid #eff2f5;
}
.call-box ul li {
    padding-top: 20px;
}
.call-box ul li + li{
	padding-top: 12px;
}
.call-box li .s-box button {
    padding: 0;
	background: #fff;
	font-family: 'Pretendard GOV';
	font-size: 2.8rem;
	text-align: left;
	letter-spacing: -0.02em;
}
.call-box li:nth-child(1) .s-box>span {
	display: block;
	margin-bottom: 2px;
	font-weight: 500;
	font-size: 2rem;
	color: #029a8c;
	letter-spacing: -0.05em;
	line-height: 1;
}
.call-box li:nth-child(1) .s-box button {
	font-weight: 600;
	color: #029a8c;
}
.call-box li:nth-child(2) .s-box>span {
	display: block;
	margin-bottom: 2px;
	font-weight: 500;
	font-size: 2rem;
	color: #006ab8;
	letter-spacing: -0.05em;
	line-height: 1;
}
.call-box li:nth-child(2) .s-box button {
	font-weight: 600;
	color: #006ab8;
}
.event-hover {
	position: relative;
}
.event-hover .hover-point {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	z-index: 2;
}
.event-hover .hover-point span:nth-child(1) {
	position: absolute;
	top: -1px;
	right: -1px;
	width: 0;
	height: 0;
	background: #fff;
	border-radius: 0 60% 0 60%;
	transition: .4s cubic-bezier(0.8,-0.4,0.18,0.98);
	transform: scale(0);
}
.event-hover .hover-point span:nth-child(1)::before {
	content: "";
	position: absolute;
	top: 0;
	left: -40px;
	width: 40px;
	height: 40px;
	border-top: 1px solid #fff;
	box-sizing: content-box;
	background: radial-gradient(circle at 4% 100%,transparent 70%,#fff 70%);
}
.event-hover .hover-point span:nth-child(1)::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -40px;
	width: 40px;
	height: 40px;
	border-right: 1px solid #fff;
	box-sizing: content-box;
	background: radial-gradient(circle at 9% 90%,transparent 70%,#fff 70%);
}
.event-hover .hover-point span:nth-child(2) {
	overflow: hidden;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 60px;
	height: 60px;
	transform: scale(0);
	transform-origin: top right;
	transition: transform .6s cubic-bezier(0.79, 0.14, 0.04, 1.19);
}
.event-hover .hover-point span:nth-child(2)::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #000;
}
.event-hover .hover-point span:nth-child(2)::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/common/btn/btn-link01.png) no-repeat center;
}
.event-hover a:hover .hover-point span:nth-child(1) {
	width: 70px;
	height: 70px;
	transform: scale(1);
}
.event-hover a:hover .hover-point span:nth-child(2) {
	transform: scale(1);
}
.no-bnr-img {
	background: #d6eef9; 
}
@media (max-width:1450px) {
	#header.landing-head{
		background: unset;
	}
	#landing_container .inner {
        width: 100%;
		padding: 0;
	}
	.landing-swiper{
		width: 100%;
	}
	.landing-noImg-swiper{
		width: 100%;
		height: 440px;
	}
	.landing-swiper .swiper-wrapper{
		height: inherit;
        aspect-ratio: 3 / 1;
	}
	.controller-box::before{
		height: 71px;
		background-size: contain;
	}
	.counting-box {
		position: relative;
		top: 0;
		right: 0;
		width: 100%;
		height: 230px;
		margin: 30px 0 0 0;
		padding: 40px 50px;
	}
	.counting-box .txt-date{
		display: block;
		margin-bottom: 55px;
	}
	.counting-box .item {
		display: inline-block;
		margin-top: 0;
	}
	.counting-box .item+.item {
		margin-top: 0;
		margin-left: 137px;
	}
	.counting-box .item .s-tit {
		margin-bottom: 0;
		font-size: 2rem;
		line-height: 1;
	}
	.counting-box .item>span {
		font-size: 2.4rem;
	}
	.counting-box .item>span .num {
		font-size: 3.2rem
	}
	.card-box .item {
		height: 300px;
	}
	.card-box .item,.card-box .item a {
		width: calc(100% - 20px);
	}
	.card-box .item a {
		padding: 58px 40px;
	}
	.card-box .item a .title,.call-box .title {
		font-size: 3rem;
		line-height: 36px;
	}
	.card-box .item a ul {
		font-size: 1.8rem;
	}
	.call-box ul{
		height: auto;
	}
	.event-hover .hover-point {
		right: 20px;
	}
	.main-sect{
		display: block;
		width: 100%;
		height: auto;
		padding: 0 15px;
	}
	.card-box{
		margin: 30px auto;
	}

    /*카드 호버*/
    .event-hover .hover-point span:nth-child(2){
        transform:scale(1);
    }
    .event-hover a .hover-point span:nth-child(1) {
        width: 70px;
        height: 70px;
        transform: scale(1);
    }
}
@media(max-width:1024px) {
	body {
		/* 핸드폰 노치 - 여백적용 */
		padding-top:env(safe-area-inset-top);
		padding-bottom:env(safe-area-inset-bottom);
	}
	#header.landing-head h1.logo a{
		width: 170px;
	}
	#header.landing-head h1.logo{
		top: 37px;
	}
	.swiper-inrbox{
		width: 100%;
	}
	.btn-box::after {
		opacity: 1;
	}
	.card-box {
		margin-top: 0;
		flex-wrap: wrap;
	}
	.card-box .item {
		width: 100%;
		margin-top: 30px;
	}
	.card-box .item,.card-box .item a {
		width: 100%;
	}
	.call-box .title {
		width: calc(100% - 80px);
	}
    .call-box li:nth-child(1) .s-box>span{
        font-size: 1.8rem;
    }
    .call-box li .s-box button{
        font-size: 2.6rem;
    }
	.event-hover .hover-point {
		right: 0;
	}
	#wrap.style-bg{
		height: 156px;
	}
	#header.landing-head{
		width: calc(100% - 40px);
		height: 88px;
	}
	#header.landing-head h1.logo{
		top: 25px;
	}
	.landing-swiper .swiper-wrapper{
		max-height: 428px;
		aspect-ratio: 2 / 1;
	}
	.swiper-slide a{
		border-radius: 20px;
	}
	.call-box ul {
		padding: 12px 35px;
	}
	.call-box .title {
		margin: 20px auto 12px auto
	}
	.layout-point span:nth-child(1) {
		width: 52vw;
	}
	.card-box .item{
		max-width: none;
		margin-top: 15px;
	}
}
@media(max-width:700px) {
	.controller-box{
		width: 208px;
		height: 53px;
	}
	.controller-box::before {
		position: absolute;
		left: -75px;
		width: 75px;
		height: 51px;
		background-size: contain;
	}

	.controller-box .swiper-pagination{
		width: 64px;
		height: 40px;
		gap: 4px;
		font-size: 1.8rem;
	}
	.controller-box .button-controller{
		width: 88px;
	}
	.button-controller .swiper-button-prev,
	.button-controller .swiper-button-next,
	.controller-box .swiper-button-play,
	.controller-box .swiper-button-stop{
		width: 40px;
		height: 40px;
	}
	.controller-box .swiper-button-stop{
		background: url(../images/common/btn/sbtn_pause.png) no-repeat center center #fff;
	}
	.controller-box .swiper-button-play{
		background: url(../images/common/btn/sbtn_play.png) no-repeat center 12px #fff;
	}
	.button-controller .swiper-button-prev{
		background: url(../images/common/btn/sbtn_left.png) no-repeat 12px center  #eef2f7;
	}
	.button-controller .swiper-button-next {
		background: url(../images/common/btn/sbtn_right.png) no-repeat 15px center #eef2f7;
	}
	.controller-box .style-boder{
		width:140px;
	}
	.counting-box .txt-date {
        margin-bottom: 35px;
    }
	.counting-box .item+.item {
		display: block;
        margin-top: 20px;
        margin-left: 0
    }
	.counting-box {
		height: 300px;
		margin: 15px 0 0 0;
		padding: 38px 41px;
	}
}

@media(max-width:500px) {
	.controller-box {
        width: 182px;
        height: 32px;
    }
    .controller-box::before {
        left: -73px;
        width: 75px;
        height: 30px;
    }
    .controller-box .swiper-pagination {
    	width: 55px;
        height: 30px;
    }
    .button-controller .swiper-button-prev, .button-controller .swiper-button-next, .controller-box .swiper-button-play, .controller-box .swiper-button-stop {
        width: 30px;
        height: 30px;
    }
    .controller-box .swiper-button-play {
        background: url(../images/common/btn/sbtn_play.png) no-repeat center 7px #fff;
    }
    .controller-box .button-controller {
        width: 70px;
    }
    .button-controller .swiper-button-prev {
        background: url(../images/common/btn/sbtn_left.png) no-repeat 9px center #eef2f7;
    }
    .button-controller .swiper-button-next {
        background: url(../images/common/btn/sbtn_right.png) no-repeat 11px center #eef2f7;
    }
    
	.controller-box .swiper-controller {
		margin-top: -8px;
	}
	.controller-box .swiper-pagination {
		margin-top: -8px;
	}
	.controller-box .button-controller {
		margin-top: -8px;
	}
}
