/*
Theme Name: GeneratePress Child
Template: generatepress
*/

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/static/pretendard.css");

*{margin: 0px; padding: 0px;}
*, :after, :before{box-sizing:border-box;}
body, html{width:100%; height:100%; min-width:360px; background:#FFF;}
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,table,a,p{font-family:Pretendard, '맑은 고딕', MalgunGothic, '돋움', Dotum, sans-serif; font-size:20px; font-weight:400; color:var(--black); line-height:normal; letter-spacing:-0.05em; word-break:keep-all; font-variant-numeric: tabular-nums;}
h1,h2,h3,h4,h5,h6{font-weight:normal;}
img,fieldset{max-width:100%; border:0px; vertical-align:top;}
ul,ol,dl{list-style-type:none;}
a{text-decoration:none;}
caption, legend{border:0px; display:none;}
em{font-style:normal;}
table{width:100%; border:0; border-collapse:collapse;}
input[type='button'],input[type='submit'],input[type='reset'],input[type='file'] {appearance: button; -webkit-appearance: button;}
button{background: none !important; border: none;}
:root{--black:#292a2b;}
:root{--color:#187aff;}

/* Common */
header{position: fixed; top: 0; left: 0; width: 100%; height: 100px; background-color: rgba(255, 255, 255, 0.5); backdrop-filter: blur(20px); box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); z-index: 11;}
header .wrap{display: flex; justify-content: space-between; align-items: center; width: 92%; max-width: 1400px; height: 100%; margin: auto;}
header .nav-close{display: none;}
header nav{position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
header nav ul{display: flex; gap: 40px;}
header nav ul li a{font-size: 18px;}
header .btn-list{display: flex; align-items: center; gap: 10px;}
header .btn-list a{display: flex; gap: 5px; justify-content: center; align-items: center; height: 40px; padding: 0 15px; border-radius: 10px; font-size: 16px; font-weight: 600;}
header .btn-list a.kakao_btn{background-color: #f9e000;}
header .btn-list a.kakao_btn img{width: 24px;}
header .btn-list a.ck_btn{background-color: var(--color); color: #FFF;}
header .btn-list a.ck_btn img{width: 20px;}
header .menu-toggle{display: none;}

footer{background-color: #363a41; padding: 50px 0 130px;}
footer p, footer li{color: #FFF;}
footer .wrap{width: 92%; max-width: 1400px; margin: auto; text-align: center;}
footer .copyright{margin-top: 20px; font-size: 16px; font-weight: 200; opacity: 0.7;}

section{padding: 140px 0;}
.con-wrap{width: 92%; max-width: 1400px; margin: auto;}
.badge{display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 8px 25px; border-radius: 30px; border: 1px solid var(--color); font-weight: 700; color: var(--color);}
.badge img{width: 25px;}
.btn{display: inline-flex; justify-content: center; align-items: center; gap: 15px; height: 70px; padding: 0 45px; border-radius: 10px; font-size: 22px; font-weight: 700; color: #FFF;}
.btn img{width: 26px;}
.title{font-size: 30px; font-weight: 700; text-align: center;}
.title em{display: block; margin-top: 10px; font-size: 60px; font-weight: 800; color: var(--color);}

/* Main */
.latest-news{position: absolute; padding: 0; z-index: -9999;}
.visual-sec{padding: 200px 0 140px; background: url(./images/visual_img.webp) no-repeat; background-size: cover; background-position: 80% center;}
.visual-sec .main-txt h2{margin: 20px 0 30px; font-size: 50px; font-weight: 600; line-height: 1.4;}
.visual-sec .main-txt h2 em{display: block; font-size: 70px; font-weight: 800;}
.visual-sec .main-txt p{font-size: 30px;}
.visual-sec .feature-list{display: flex; gap: 10px; margin: 60px 0 80px -20px;}
.visual-sec .feature-list .item{text-align: center;}
.visual-sec .feature-list .item p{font-size: 22px; font-weight: 700;}
.visual-sec .btn{background-color: var(--color);}
.link-sec{display: flex; padding: 0;}
.link-sec .link{display: flex; width: 50%; padding: 80px 0;}
.link-sec .call-link{justify-content: flex-end; background-color: var(--color);}
.link-sec .talk-link{background-color: #f9e000;}
.link-sec .wrap{width: 96%; max-width: 700px; padding-left: 100px;}
.link-sec .link h2{display: flex; align-items: center; gap: 15px; margin-bottom: 15px; font-size: 46px; font-weight: 800;}
.link-sec .link h2 img{width: 50px;}
.link-sec .link p{font-size: 30px;}
.link-sec .btn{margin-top: 30px;}
.link-sec .call-link h2,
.link-sec .call-link p{color: #FFF;}
.link-sec .call-link .btn{background-color: #FFF; color: var(--color);}
.link-sec .talk-link h2,
.link-sec .talk-link p{color: #3b1c1c;}
.link-sec .talk-link .btn{background-color: #3b1c1c;}
.counsel-sec .counsel-list{max-width: 1200px; margin: 60px auto 0;}
.counsel-sec .counsel-list .list-head{display: flex; justify-content: center; align-items: center; height: 70px; background-color: #f3f3f3;}
.counsel-sec .counsel-list .list-head p{font-weight: 700;}
.counsel-sec .counsel-list p{width: 16%; text-align: center;}
.counsel-sec .counsel-list p.date{width: 22%;}
.counsel-sec .counsel-list p.name{width: 14%;}
.counsel-sec .counsel-list p.state span{display: inline-block; padding: 0 20px; border-radius: 17px; line-height: 34px; font-size: 16px; font-weight: 700;}
.counsel-sec .counsel-list p.state-done span{border: 1px solid var(--color); color: var(--color);}
.counsel-sec .counsel-list p.state-ing span{background-color: var(--color); color: #FFF;}
.counsel-sec .counsel-list .list-body .item{display: flex; justify-content: center; align-items: center; height: 70px; border-bottom: 1px solid #ddd;}
.process-sec{background: url(./images/step_bg.webp) no-repeat center; background-size: cover; text-align: center;}
.process-sec .badge{margin-bottom: 20px;}
.process-sec .process-step{display: flex; justify-content: space-between; margin: 60px auto 0;}
.process-sec .process-step .item{width: calc(25% - 45px); padding: 10px 10px 30px; backdrop-filter: blur(10px); background-color: rgba(255, 255, 255, 0.7); border: 2px solid #FFF; border-radius: 30px;}
.process-sec .process-step .item::after{content: ''; position: absolute; top: 50%; right: -44px; transform: translateY(-50%); display: block; width: 25px; height: 42px; background: url(./images/step_arrow.webp) no-repeat center; background-size: 100% auto;}
.process-sec .process-step .item:last-child::after{display: none;}
.process-sec .process-step .item .img{border-radius: 20px; overflow: hidden;}
.process-sec .process-step .item .txt-wrap{margin-top: -18px;}
.process-sec .process-step .item .txt-wrap span{display: inline-block; padding: 0 20px; background-color: var(--color); border-radius: 18px; line-height: 36px; font-weight: 800; color: #FFF;}
.process-sec .process-step .item .txt-wrap h3{margin: 12px 0; font-size: 24px; font-weight: 700;}
.floating-link{position: fixed; bottom: 0; left: 0; width: 100%; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); z-index: 10;}
.floating-link .link{justify-content: center; padding: 0 !important;}
.floating-link .link a{display: block; width: 100%; height: 100%; padding: 25px 0;}
.floating-link .link h2{justify-content: center; margin-bottom: 0; font-size: 30px;}
.floating-link .link h2 img{width: 36px;}

.page .entry-header,
.widget-area{display: none !important;}
.site-main{width: 92%; max-width: 1400px; margin: auto;}

.board-tit{font-size: 42px; font-weight: 700; margin-bottom: 40px;}
.board-list-section .news-list-container{display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 30px; row-gap: 50px;}
.board-list-section .news-list-container .news-item .news-thumb img{height: auto; border-radius: 15px;}
.board-list-section .news-list-container .news-item .news-info{margin-top: 20px; text-align: center;}
.board-list-section .news-list-container .news-item .news-info .news-title a{font-size: 20px; font-weight: 700;}
.board-list-section .news-list-container .news-item .news-info .news-excerpt p{font-size: 18px; opacity: 0.8; margin-top:5px;}

.site-main{padding: 140px 0; text-align: center;}
.site-main h1.entry-title{font-size: 32px; font-weight: 700; margin-bottom: 40px;}
.site-main .entry-content .post-thumbnail{margin-bottom: 20px;}
.site-main .entry-content .post-thumbnail img{width: 500px; height: auto; border-radius: 15px;}

@media screen and (max-width: 1399px){
/* Common */
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,table,a,p{font-size: 18px;}
section{padding: 120px 0;}

header{height: 80px;}
header .logo img{width: 140px;}
header nav ul{gap: 35px;}
header nav ul li a{font-size: 16px;}
header .btn-list{gap: 8px;}
header .btn-list a{height: 36px; padding: 0 10px; font-size: 14px;}
header .btn-list a.kakao_btn img{width: 20px;}
header .btn-list a.ck_btn img{width: 16px;}
footer{padding: 40px 0 125px;}
footer .logo img{width: 140px;}
footer .copyright{font-size: 14px;}

.badge{gap: 8px;}
.badge img{width: 20px;}
.btn{height: 64px; padding: 0 40px; font-size: 20px;}
.btn img{width: 22px;}
.title{font-size: 26px;}
.title em{font-size: 52px;}

/* Main */
.visual-sec{padding: 180px 0 120px;}
.visual-sec .main-txt h2{margin: 16px 0 20px; font-size: 40px;}
.visual-sec .main-txt h2 em{font-size: 58px;}
.visual-sec .main-txt p{font-size: 26px;}
.visual-sec .feature-list{margin: 40px 0 60px -15px;}
.visual-sec .feature-list .item img{width: 120px;}
.visual-sec .feature-list .item p{font-size: 20px;}
.link-sec .wrap{padding-left: 80px;}
.link-sec .call-link{justify-content: flex-start;}
.link-sec .link{padding: 60px 0;}
.link-sec .link h2{font-size: 40px;}
.link-sec .link h2 img{width: 44px;}
.link-sec .link P{font-size: 26px;}
.process-sec .process-step .item{width: calc(25% - 30px);}
.process-sec .process-step .item{padding: 5px 5px 20px; border-radius: 25px;}
.process-sec .process-step .item::after{right: -32px; width: 20px;}
.process-sec .process-step .item .txt-wrap{margin-top: 17px;}
.process-sec .process-step .item .txt-wrap h3{font-size: 22px;}
.process-sec .process-step .item .txt-wrap span{line-height: 34px;}
.link-sec .link h2{font-size: 30px;}
.link-sec .link h2 img{width: 32px;}
}

@media screen and (max-width: 1023px){
/* Common */
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,table,a,p{font-size: 16px;}
section{padding: 100px 0;}

.badge{gap: 5px; padding: 6px 20px;}
.badge img{width: 18px;}
.btn{height: 60px; padding: 0 35px; font-size: 18px;}
.btn img{width: 18px;}
.title{font-size: 24px;}
.title em{font-size: 48px;}

header .menu{position: fixed; top: 0; left: 100%; width: 100%; height: 100vh; background: #FFF; transition: 0.4s ease-in-out;}
header .menu.open{left: 0;}
header nav{position: static; transform: translate(0, 0);}
header nav ul{flex-direction: column; align-items: center; justify-content: center; height: 100vh;}
header nav ul li a{font-size: 18px; font-weight: 600;}
header .nav-close{position: absolute; top: 29px; right: 4%; display: block; width: 22px; z-index: 1;}
header .btn-list{position: absolute; top: 22px; left: 4%;}
header .menu-toggle{display: block; width: 30px;}

/* Main */
.visual-sec{padding: 180px 0 100px;}
.visual-sec .main-txt h2{font-size: 34px;}
.visual-sec .main-txt h2 em{font-size: 50px;}
.visual-sec .main-txt p{font-size: 22px;}
.visual-sec .feature-list{margin: 40px 0 40px -10px;}
.visual-sec .feature-list .item img{width: 100px;}
.visual-sec .feature-list .item p{font-size: 18px;}
.link-sec .link{padding: 40px 0;}
.link-sec .link h2{gap: 10px; font-size: 26px;}
.link-sec .link h2 img{width: 28px;}
.link-sec .link P{font-size: 22px;}
.link-sec .wrap{padding-left: 8%;}
.counsel-sec .counsel-list{margin: 40px auto 0;}
.counsel-sec .counsel-list .list-head{height: 60px;}
.counsel-sec .counsel-list .list-body .item{height: 60px;}
.counsel-sec .counsel-list p.state span{padding: 0 15px; line-height: 30px; font-size: 14px;}
.process-sec .process-step{margin: 40px auto 0;}
.process-sec .process-step .item{width: calc(25% - 21px); padding: 2px 2px 20px; border-radius: 20px;}
.process-sec .process-step .item::after{right: -24px; width: 14px;}
.process-sec .process-step .item .img{border-radius: 14px;}
.process-sec .process-step .item .txt-wrap{margin-top: -15px;}
.process-sec .process-step .item .txt-wrap span{padding: 0 15px; line-height: 30px;}
.process-sec .process-step .item .txt-wrap h3{font-size: 18px;}
.process-sec .process-step .item .txt-wrap p br{display: none;}
.floating-link .link a{padding: 20px 0;}
}

@media screen and (max-width: 767px){
/* Common */
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,table,a,p{font-size: 14px;}

footer{padding: 30px 0 95px;}

section{padding: 80px 0;}
.badge img{width: 14px;}
.btn{gap: 10px; height: 50px; padding: 0 25px; font-size: 16px;}
.btn img{width: 16px;}
.title{font-size: 22px;}
.title em{font-size: 44px;}

/* Main */
.visual-sec{height: 100vh; padding: 140px 0 0; background: url(./images/visual_mo_img.webp) no-repeat #edf3fc; background-size: 100% auto; background-position: center bottom;}
.visual-sec .main-txt h2{font-size: 30px;}
.visual-sec .main-txt h2 em{font-size: 40px;}
.visual-sec .main-txt p{font-size: 22px;}
.visual-sec .feature-list{margin: 30px 0 30px -10px;}
.visual-sec .feature-list .item p{font-size: 16px;}
.link-sec .link h2{font-size: 22px;}
.link-sec .link h2 img{width: 24px;}
.link-sec .link P{font-size: 18px;}
.counsel-sec .counsel-list .list-head{gap: 1%;}
.counsel-sec .counsel-list .list-body .item{gap: 1%;}
.counsel-sec .counsel-list p{width: 15%}
.counsel-sec .counsel-list p.state span{padding: 0 10px; line-height: 28px; font-size: 12px;}
.process-sec .process-step{flex-direction: column; gap: 40px;}
.process-sec .process-step .item{display: flex; align-items: center; gap: 30px; width: auto; padding: 20px 30px;}
.process-sec .process-step .item::after{right: auto; top: auto; bottom: -42px; left: 50%; width: 20px; transform: translateX(-50%) rotate(90deg);}
.process-sec .process-step .item .img{width: 120px; height: 120px; border-radius: 50%;}
.process-sec .process-step .item .img img{width: auto; max-width: none; height: 100%; transform: translateX(-20%);}
.process-sec .process-step .item .txt-wrap{width: calc(100% - 150px); margin-top: 0; text-align: left;}
}