/* 서브공통 */
.bgb{background: #000; transition:2s}
.bgb_out{background: #fff; transition:2s}
.overh{overflow-x: hidden;}
body{overflow-x: hidden;}
/* 뉴스커서 */
.n_cursor{position: absolute; top: 50px; left: 50px; width: 0px; height: 0px; border-radius: 50%;background-color: #0054a6; user-select: none; pointer-events: none;  box-sizing:border-box; z-index: 1000; overflow: hidden; border:none; transition: all 0.2s ease-out;}
.n_cursor p{position:absolute; top: 50%; left: 50%; transform:translate(-50%,-50%); text-align: center; font-family: 'Red Hat Display', 'Noto Sans KR', sans-serif; font-weight:400; font-size:16px; color: #fff;}
.n_cursor.on{width: 100px; height: 100px; top: 0; left: 0; opacity: 1;}

.section{padding-top: 230px; box-sizing:border-box; overflow: hidden;}
.section .top{position:relative; text-align: center; margin-bottom:100px;}
.section .top .tit p{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:12px; color: #999; letter-spacing:0.1em; text-transform: uppercase;}
.section .top .tit h2{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:100px; color: #222; text-transform: uppercase; text-align: center;}
.section .top .tit h2 span{position:relative; opacity: 0;}
.section .top .tit h2.ko { letter-spacing:-0.08em } 
.section .top .page_btn > div{position:absolute; top:50%; transform:translateY(-50%); width: 260px; height: 196px; box-sizing:border-box;transition:0.5s}
.section .top .page_btn > div a{position:absolute; top: 0; left: 0; width: 100%; height: 100%;}
.section .top .page_btn > div > p{line-height: 196px; font-weight: 400; font-family: 'Red Hat Display', sans-serif; font-size:13px; color: #999; transition:0.5s}
.section .top .page_btn > div > p i{position:relative; top: 1px;}
.section .top .page_btn > div .hover{position:absolute; top: 0; left: 0; width: 100%; height: 100%; box-sizing:border-box; opacity: 0; padding: 0 50px; transition:0.8s}
.section .top .page_btn > div .hover figure{position:absolute; top: 0; left: 0; width: 100%; height: 100%;}
.section .top .page_btn > div .hover figure img{}
.section .top .page_btn > div .hover p{display:flex; justify-content:space-between; align-items:center; position:relative; height: 100%; font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:25px; color: #fff; text-transform: uppercase;}
.section .top .page_btn > div .hover p i{position:relative; top: -2px;font-size:13px; line-height: 198px;}
.section .top .page_btn .prev{left: 0; padding-left: 50px; text-align: left;}
.section .top .page_btn .next{right: 0; padding-right: 50px; text-align: right;}
.section .top .page_btn > .next .hover p{text-align: left;}
.section .top .page_btn > .prev .hover p{text-align: right;}
.section .top .page_btn > .prev > p i{margin-right: 10px;}
.section .top .page_btn > .next > p i{margin-left: 10px;}
.section .top .page_btn > div:hover{background: #0054a6;}
.section .top .page_btn > div:hover > p{opacity: 0;}
.section .top .page_btn > div:hover .hover{opacity: 1;}

/* work */
.work{}
.work .cont{}
.work .cont .search_box{}
.work .cont .search_box form{}
.work .cont .search_box form .search_form{display:flex; max-width: 675px; margin: 0 auto;}
.work .cont .search_box form .search_form input{width: calc(100% - 42px); height: 42px; background: transparent; color: #222; font-size:16px; border:none; border-bottom: 1px solid #dddddd; box-sizing:border-box; outline:none}
.work .cont .search_box form .search_form input::placeholder{font-size:20px; color: #ccc; font-weight:300;}
.work .cont .search_box form .search_form button{background: transparent; outline:none; box-sizing:border-box; width: 42px; height: 42px; border:none; cursor: pointer;}
.work .cont .search_box .tag{display:flex; justify-content:center; align-items:center; margin-top: 30px;}
.work .cont .search_box .tag li{margin-right: 30px;}
.work .cont .search_box .tag li:last-of-type{margin-right: 0;}
.work .cont .search_box .tag li a{font-size:16px; color: #999;}
.work .cont .list{margin-top: 200px;}
.work .cont .list .ani_box{display:flex; flex-wrap:wrap; margin-bottom:200px;}
.work .cont .list .ani_box:last-of-type{margin-bottom:0;}
.work .cont .list .ani_box .item{position:relative; width: calc(50% - 100px); margin-right: 200px;}
/* .work .cont .list .ani_box .item:first-of-type{top: 120px;} */
.work .cont .list .ani_box .item a{position:absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 10;}
.work .cont .list .ani_box .item:nth-of-type(2n){margin-right: 0; margin-top: 0;}
.work .cont .list .ani_box .item .hover{position:absolute; top: 0; left: 0; z-index: 1; transition:0.5s}
.work .cont .list .ani_box .item .hover .top_txt{}
.work .cont .list .ani_box .item .hover .top_txt h3{font-weight:600; font-size:30px; color: #111; max-width: 204px;}
.work .cont .list .ani_box .item .hover .top_txt h3 span{display:inline-block; vertical-align: top; font-size:16px; color: #111;}
.work .cont .list .ani_box .item .hover .top_txt > ul{max-width: 164px; display:flex; flex-wrap:wrap; margin-top: 8px;}
.work .cont .list .ani_box .item .hover .top_txt > ul li{font-weight:400; font-size:14px; color: #777777; margin-right: 10px; margin-bottom: 6px;}
.work .cont .list .ani_box .item .in{position:relative; overflow:hidden; transition:0.5s; }
.work .cont .list .ani_box .item .in h2{font-weight:600; font-size:30px; color: #111; margin-top: 18px; transition:0.5s}
.work .cont .list .ani_box .item .in h2 span{font-size:16px;}
.work .cont .list .ani_box .item .in .tit{position:absolute; width: 13px; top: 0; right: -27px;}
.work .cont .list .ani_box .item .in .tit h4{font-family: 'Red Hat Display', sans-serif; font-weight:500; font-size:12px; color: #00387f; letter-spacing:0.01em; text-transform: uppercase; transform:rotate(90deg); white-space: nowrap;}
.work .cont .list .ani_box .item .in .tit > ul{width: 13px; display:inline-block; margin-top: 158px;}
.work .cont .list .ani_box .item .in .tit > ul li{position:relative; width: 13px; font-weight:500; font-size:16px; letter-spacing:0.01em; color: #222; margin-bottom:28px;}
.work .cont .list .ani_box .item .in .tit > ul li::after{content:''; position:absolute; bottom: -14px; left: 0; width: 13px; height: 1px; background: #000; opacity: 0.6;}
.work .cont .list .ani_box .item .in .tit > ul li:last-of-type{margin-bottom:0;}
.work .cont .list .ani_box .item .in .tit > ul li:last-of-type::after{display:none; }
.work .cont .list .ani_box .item .in .tit > ul li span{display:block; line-height: 1; text-align: center;}
.work .cont .list .ani_box .item .in .border_r{position:relative; }
.work .cont .list .ani_box .item .in .img_bg{position:relative; overflow: hidden; padding-bottom:calc(120% + 50px); z-index: 4;  transition:0.5s}
.work .cont .list .ani_box .item .in .img_bg .bg{position:absolute; top: 50%; left: 50%; transform:translate(-50%,-50%); width: 100%; height: 120%; background-size:cover; background-position: 50% 50%; background-repeat: no-repeat; transition:0.5s}
.work .cont .list .ani_box .item .btn{position:absolute; bottom: 0; right: -150%; background: #000; width: 58px; height: 58px; border-radius:50%; opacity: 0; z-index: 7; transition:0.5s}
.work .cont .list .ani_box .item .btn i{display:inline-block; width: 100%; color: #fff; text-align: center; line-height: 58px;}
.work .cont .more{width: 300px; height: 70px; margin: 300px auto 0; border:1px solid #ffffff70; box-sizing:border-box; cursor: pointer; transition:0.3s}
.work .cont .more p{font-family: 'Red Hat Display', sans-serif; display:flex; align-items:center; justify-content:center; height: 100%; font-weight:600; font-size:16px; letter-spacing:0.05em; color: #fff; text-align: center; text-transform: uppercase;}
.work .cont .more p span{margin-left: 6px;}
.work .cont .more:hover{background: #0054a6; border-color:#0054a6}

/* 23.11.08 */
.work .cont .list-n{margin-top: 100px;}
.work .cont .list-n .ani_box{display:flex; flex-wrap:wrap; margin-bottom:100px; gap:50px 80px; }
.work .cont .list-n .ani_box .item{position:relative; width: calc((100% - 240px) / 4); margin-right: 0;}
.work .cont .list-n .ani_box .item:nth-of-type(2n){margin-right: 0; margin-top: 0;}
.work .cont .list-n .ani_box .item .top_txt { padding-top:10px; }
.work .cont .list-n .ani_box .item .hover .top_txt h3{font-size:18px; max-width: 90%}
.work .cont .list-n .ani_box .item .hover .top_txt h3 span{font-size:15px;}
.work .cont .list-n .ani_box .item .hover .top_txt > ul li { word-break:break-word; max-width: 150px; color:#111}
.work .cont .list-n .ani_box .item .in h2{font-size:20px; margin-top: 10px; }
.work .cont .list-n .ani_box .item .in h2 span{font-size:16px;}
.work .cont .list-n .ani_box .item .in .tit{width: 12px; right: -20px;}
.work .cont .list-n .ani_box .item .in .tit h4{font-size:12px; }
.work .cont .list-n .ani_box .item .in .tit > ul{margin-top: 0;}
.work .cont .list-n .ani_box .item .in .tit > ul li{width: 13px; font-size:12px; margin-bottom:16px;}
.work .cont .list-n .ani_box .item .in .tit > ul li::after{bottom: -8px; left: 50%; transform: translateX(-50%); width: 10px; }

.work .cont .s_link{text-align: center; margin: 350px 0 200px;}
.work .cont .s_link p{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:100px; letter-spacing:0.05em; color: #fff;}
.work .cont .s_link .btn{margin-top: 20px;}
.work .cont .s_link .btn a{position:relative; display:inline-block; height: 66px; font-size:20px; letter-spacing:0.05em; color: #fff; padding: 0 23px; line-height: 63px; z-index: 3; /* overflow: hidden; */}
.work .cont .s_link .btn a span{position: relative; z-index: 3;}
.work .cont .s_link .btn a i{position:relative; top: 2px; margin-left: 10px; color: #fff; z-index: 3;}
/* .work .cont .s_link .btn a::before, */
.work .cont .s_link .btn a::after{content:''; position:absolute; top: 0; right: 0; width: 66px; height: 66px; border-radius:50%; background: #0054a6; z-index: 1; transition: 0.3s}
/* .work .cont .s_link .btn a::after{transition: 0.3s 0.55s} */
.work .cont .s_link .btn a::before{right: auto; left: -45%; transition:0.6s}
.work .cont .s_link .btn a:hover::after{transform:scale(1.5); opacity: 0.6; }
/* .work .cont .s_link .btn a:hover::before{left: 0; width: 100%; border-radius:5px; transition-delay:0.3s} */
.work .cont .s_link .btn a:hover i{animation:moveArrow 1s linear infinite alternate}

/* 23.11.23 */
.work .cont .btn_box * { box-sizing:border-box; }
.work .cont .btn_box { margin-top:22px; }
.work .cont .btn_box ul { gap:10px 50px; display:flex; flex-wrap:wrap; }
.work .cont .btn_box ul li { width:calc((100% - 200px) / 5); position:relative;  color:#999; font-size:16px; font-weight:600; }
.work .cont .btn_box ul li a{position:relative; display:inline-block; padding:7px 0 7px 34px;}
.work .cont .btn_box ul li a:before{content:''; position:absolute; top: 50%; left: 0; transform:translateY(-50%); width: 26px; height: 26px; background: #fff; border:1px solid #dedede; border-radius:50px; }
.work .cont .btn_box ul li.on a:before { border:1px solid #0255a7; background:#0255a7 url(/img/sub/icon_ch_on.png) center center no-repeat}

/* 모바일 */
.work .cont .list .ani_box .item .top_txt.m{display:none; margin-top: 10px;}
.work .cont .list .ani_box .item .top_txt.m h3{font-weight:600; font-size:24px; color: #111;}
.work .cont .list .ani_box .item .top_txt.m h3 span{display:block; font-size:14px; color: #111;}
.work .cont .list .ani_box .item .top_txt.m > ul{ display:flex; flex-wrap:wrap; margin-top: 6px;}
.work .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li{position:relative; font-size:400px; font-size:15px; color: #111; margin-right: 16px;}
.work .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li::after{content:''; position:absolute; top: 4px; right: -9px; width: 1px; height: 10px; background: #000; opacity: 0.6;}
.work .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li:last-of-type::after{display:none; }
.work .cont .list .ani_box .item .top_txt.m > ul.tag li{font-weight:400; font-size:14px; color: #777777; margin-right: 10px; margin-bottom: 6px;}
.work .cont .list .ani_box .item .top_txt.m > ul li:last-of-type{margin-right: 0;}

/* 배경변경 */
.work.bg .cont .list .ani_box .item .top_txt.m h3,
.work.bg .cont .list .ani_box .item .top_txt.m h3 span,
.work.bg .cont .list .ani_box .item .hover .top_txt h3 span,
.work.bg .cont .list .ani_box .item .hover .top_txt h3{color: #fff;}
.work.bg .cont .list .ani_box .item .top_txt.m > ul.tag li,
.work.bg .cont .list .ani_box .item .hover .top_txt > ul li{color: #fff; opacity: 0.7;}
.work.bg .cont .list .ani_box .item .in h2{color: #fff;}
.work.bg .cont .list .ani_box .item .in .tit h4{color: #fff; opacity: 0.6;}
.work.bg .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li,
.work.bg .cont .list .ani_box .item .in .tit > ul li{color: #fff;}
.work.bg .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li::after,
.work.bg .cont .list .ani_box .item .in .tit > ul li::after{background: #fff;}
.work.bg .cont .list .ani_box .item .btn{background: #fff;}
.work.bg .cont .list .ani_box .item .btn i{color: #222;}

/* news */
.news{}
.news .cont{border-top: 1px solid #e4e4e4;}
.news .cont .item{position:relative; overflow: hidden;}
.news .cont .item::before{content:''; position:absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #e4e4e4;}
.news .cont .item::after{content:''; position:absolute; bottom: 0; left: 0; width: 0; height: 1px; background: #0054a6; z-index: 1; transition:1s}
.news .cont .item a{position:absolute; top: 0; left: 0; width: 100%; height: 100%;}
.news .cont .item .flex_box{display:flex; flex-wrap:wrap; align-items:center; height: 300px; width: 100%; max-width: 1620px; margin: 0 auto;}
.news .cont .item .flex_box .date{width: 110px;}
.news .cont .item .flex_box .date p{font-family: 'Red Hat Display', sans-serif; font-weight:300; font-size:45px; color: #b6b6b6;}
.news .cont .item .flex_box .tit{width: calc(100% - 110px); box-sizing:border-box; padding-left: 110px;}
.news .cont .item .flex_box .tit p{font-weight:bold; font-size:16px; color: #0054a6; text-transform: uppercase; margin-bottom:33px;}
.news .cont .item .flex_box .tit h3{font-weight:bold; font-size:30px; color: #090909;}
.news .cont .more{width: 300px; height: 70px; margin: 100px auto 200px; border:1px solid #090909; box-sizing:border-box; cursor: pointer; transition:0.3s}
.news .cont .more p{font-family: 'Red Hat Display', sans-serif; display:flex; align-items:center; justify-content:center; height: 100%; font-weight:600; font-size:16px; letter-spacing:0.05em; color: #090909; text-align: center; text-transform: uppercase;transition:0.3s}
.news .cont .more p span{margin-left: 6px;}
.news .cont .item:hover::after{width: 100%;}
.news .cont .more:hover{background: #0054a6; border-color:#0054a6}
.news .cont .more:hover p{color: #fff;}

/* about */
.about{}
.about .cont{}
.about .cont .pin_ctn{position:relative; height: 100vh !important; }
.about .cont .pin_ctn .bg_img{ margin: 0 auto;}
.about .cont .pin_ctn .bg_img .bg{background:url(/img/sub/about_bg.png) 50% 50% no-repeat; background-size:cover; width: 100%; height: 100%;}
.about .cont .pin_ctn .txt{position:absolute; top: calc(100% + 150px); left: 50%; transform:translateX(-50%); width: 100%; max-width: 1400px;}
.about .cont .pin_ctn .txt h3{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:100px; color: #222; transition:0.3s}
.about .cont .pin_ctn .txt.on h3{color: #fff;}
.about .cont .pin_ctn .txt h3 span{opacity: 0;}
.about .cont .pin_ctn .txt .right_txt{text-align: right; margin-top: 120px;}
.about .cont .pin_ctn .txt .right_txt h4{font-weight:600; font-size:36px; color: #fff;}
.about .cont .pin_ctn .txt .right_txt p{margin-top: 34px; font-weight:300; font-size:18px; color: #fff; line-height: 1.75em;}
.about .cont .icon_list{display:flex; flex-wrap:wrap; padding-top: 180px;}
.about .cont .icon_list .item{width: 25%; text-align: center;}
.about .cont .icon_list .item .svg_ctn{width: 81px; height: 81px; margin: 0 auto;}
.about .cont .icon_list .item .txt{margin-top: 33px;}
.about .cont .icon_list .item .txt p{font-family: 'Red Hat Display', sans-serif; font-weight:600; font-size:35px; color: #111;}
.about .cont .icon_list .item .txt h5{font-size:18px; color: #555; margin-top: 20px;}
.about .cont .scroll_txt{position:relative; height: 100vh;}
.about .cont .scroll_txt .txt{position:absolute; top: 50%; left: 0; width: 100%;transform:translateY(-50%);}
.about .cont .scroll_txt .txt p{ font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:6.8vw; color: #fff; text-shadow:-1px -1px 0 #222, 1px -1px 0 #222, -1px 1px 0 #222,1px 1px 0 #222; text-transform: uppercase;}
.about .cont .scroll_txt .txt p.cb{color: #222; text-align: right;}
.about .cont .organ{border-bottom: 1px solid #dadada; margin-bottom: 280px;}
.about .cont .organ .tit{text-align: center; margin-bottom: 60px;}
.about .cont .organ .tit h3{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:70px; color: #222;}
.about .cont .organ .tab{display:flex; justify-content:center;}
.about .cont .organ .tab li{font-family: 'Red Hat Display', sans-serif;  margin-right: 60px; font-size:18px; color: #777; cursor: pointer;}
.about .cont .organ .tab li:last-of-type{margin-right: 0;}
.about .cont .organ .tab li.on{font-weight:bold; color: #111;}
.about .cont .organ .tab_ctn{position:relative; top:5px; padding-top: 60px; overflow: hidden;}
.about .cont .organ .tab_ctn .svg_ctn{display:none; }
.about .cont .partner{padding-bottom:200px;}
.about .cont .partner .tit{text-align: center; margin-bottom: 120px;}
.about .cont .partner .tit h3{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:70px; color: #222;}
.about .cont .partner ul{display:flex; flex-wrap:wrap;}
.about .cont .partner ul li{width: 16.6666%; text-align: center; margin-bottom:26px;}
.about .cont .bot{background: #090909; padding: 230px 0 180px;}
.about .cont .bot .move_img{width: 100%; max-width: 1920px; margin: 0 auto; overflow: hidden;}
.about .cont .bot .move_img .move_ctn{display:flex;/* animation:moveImg 10s linear infinite */ }
.about .cont .bot .move_img .move_ctn figure{display:flex; margin-right: 250px;}
.about .cont .bot .move_img .move_ctn figure:last-of-type{margin-right: 0;}
.about .cont .bot .move_img .move_ctn figure img{max-width: none; margin-right: 120px;}
.about .cont .bot .s_link{text-align: center; margin-top: 180px;}
.about .cont .bot .s_link p{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:100px; letter-spacing:0.05em; color: #fff;}
.about .cont .bot .s_link .btn{margin-top: 20px;}
.about .cont .bot .s_link .btn a{position:relative; display:inline-block; height: 66px; font-size:20px; letter-spacing:0.05em; color: #fff; padding:0 23px; line-height: 63px; z-index: 3;}
.about .cont .bot .s_link .btn a span{position: relative; z-index: 3;}
.about .cont .bot .s_link .btn a i{position:relative; top: 2px; margin-left: 10px; color: #fff; z-index: 3;}
/* .about .cont .bot .s_link .btn a::before, */
.about .cont .bot .s_link .btn a::after{content:''; position:absolute; top: 0; right: 0; width: 66px; height: 66px; border-radius:50%; background: #0054a6; z-index: 1;  transition:0.3s;}
/* .about .cont .bot .s_link .btn a::after{transition: 0.3s 0.55s} */
/* .about .cont .bot .s_link .btn a::before{right: auto; left: -50%; transform:translate; transition:0.6s} */
.about .cont .bot .s_link .btn a:hover::after{transform:scale(1.5); opacity: 0.6; }
/* .about .cont .bot .s_link .btn a:hover::before{left: 0; width: 100%; border-radius:5px; transition-delay:0.3s} */
.about .cont .bot .s_link .btn a:hover i{animation:moveArrow 1s linear infinite alternate}


/* contact */
.contact{}
.contact .pop_box{position:fixed; width: 100%; height: 100%; top: 0; left: 0; display:none; z-index: 10;}
.contact .pop_box .txt_ctn{position:absolute; top: 50%; left: 50%; background: #fff; width: 100%;  max-width: 1000px; max-height: 500px; overflow-y: scroll;  transform:translate(-50%,-50%); z-index: 10;}
.contact .pop_box .txt_ctn .close{position:absolute; top: 15px; right:15px; font-size:30px; color: #000; cursor: pointer;}
.contact .pop_box section{padding: 30px;}
.contact .load_bg{position:fixed; width: 100%; height: 100%; top: 0; left: 0; z-index: 5; background: #000; opacity: 0.6;}
.contact .cont{padding-bottom:200px;}
.contact .cont .info{display:flex; justify-content:center; border-bottom: 1px solid #eeeeee; padding-bottom:30px;}
.contact .cont .info li{font-family: 'Red Hat Display', sans-serif; font-weight:bold; font-size:18px; letter-spacing:0.05em; color: #090909; margin-right: 60px;}
.contact .cont .info li:last-of-type{margin-right: 0;}
.contact .cont .info li span{font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif; font-weight:300; font-size:15px; letter-spacing:0.05em; opacity: 0.8; margin-right: 6px;}
.contact .cont .input_ctn{margin-top: 150px;}
.contact .cont .input_ctn dl{display:flex; flex-wrap:wrap; margin-bottom:100px;}
.contact .cont .input_ctn dl:last-of-type{margin-bottom:0;}
.contact .cont .input_ctn dl dt{width: 260px; font-weight:600; font-size:24px; color: #222; margin-top: 6px;}
.contact .cont .input_ctn dl dd{width: calc(100% - 260px);}
.contact .cont .input_ctn dl dd .input_box{display:flex; flex-wrap:wrap;}
.contact .cont .input_ctn dl dd .input_box .item{position:relative; width: calc(50% - 25px); height: 50px; margin-right: 50px; margin-bottom:20px;}
.contact .cont .input_ctn dl dd .input_box .item:last-of-type{margin-right: 0;}
.contact .cont .input_ctn dl dd .input_box .item.w100{width: 100%; margin-right: 0;}
.contact .cont .input_ctn dl dd .input_box .item input{border:none; border-bottom: 1px solid #cccccc; box-sizing:border-box; width: 100%; padding: 0 10px; font-size:16px; color: #222; height: 100%; outline:none; background: transparent;}
.contact .cont .input_ctn dl dd .input_box .item.tel{display:flex; align-items:center;}
.contact .cont .input_ctn dl dd .input_box .item.tel input{width: 33.33%}
.contact .cont .input_ctn dl dd .input_box .item.tel span{display:inline-block; vertical-align: top; width: 20px; font-size:18px; font-weight:500; text-align: center;}
.contact .cont .input_ctn dl dd .input_box .item p{position:absolute; top: 50%; left: 20px; transform:translateY(-50%); font-weight:400; font-size:18px; color: #222; z-index: -1;}
.contact .cont .input_ctn dl dd .input_box .item p span{color: #0054a6; margin-left: 4px;}
.contact .cont .input_ctn dl dd .input_box .item p span.cg{color: #aaaaaa; font-weight: 300; font-size:15px; letter-spacing:0.025em;}
.contact .cont .input_ctn dl dd .input_box .item.h_auto{height: auto;}
.contact .cont .input_ctn dl dd .input_box .item.h_auto input{height: 50px;}
.contact .cont .input_ctn dl dd .input_box .item.h_auto .p_ctn{position:relative; margin-bottom:10px;}
.contact .cont .input_ctn dl dd .input_box .item .plus_input{position:absolute; right: -48px; top: 10px; width: 35px; height: 35px; cursor: pointer; text-align: center; border-radius:50%; background: #333;}
.contact .cont .input_ctn dl dd .input_box .item .plus_input i{text-align: center; color: #fff; font-size:24px; line-height: 35px;}


.contact .cont .input_ctn dl dd .input_box .chk_box{display:flex; margin-bottom:70px;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk{display:flex; align-items:center; margin-right: 88px;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk input{display:none; }
.contact .cont .input_ctn dl dd .input_box .chk_box .chk label{cursor: pointer; display:flex; align-items:center;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk label > span{position:relative; width: 23px; height: 23px; box-sizing:border-box; border:1px solid #ddd; line-height:1.3em; border-radius:5px; font-weight:600;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk label > span i{position: absolute; top: -1px; left: -1px; color: #fff; font-size:23px; font-weight:bold; opacity: 0;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk label p{width: calc(100% - 23px); font-weight:600; font-size:15px; letter-spacing:-0.015em; color: #333; padding-left: 12px; box-sizing:border-box; ;line-height:1.4em}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk label p > span{font-weight:400;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk input[type="checkbox"]:checked + label > span{background: #0054a6;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk input[type="checkbox"]:checked + label > span i{opacity: 1;}
.contact .cont .input_ctn dl dd .input_box .chk_box .chk a{font-size:14px; color: #222; text-decoration: underline; margin-left: 30px;}
.contact .cont .input_ctn dl dd .input_box .select{box-sizing:border-box;}
.contact .cont .input_ctn dl dd .input_box .select select{border:none; border-bottom: 1px solid #cccccc; box-sizing:border-box; width: 100%; padding: 0 20px; font-size:18px; color: #222; height: 100%; outline:none; background: transparent;}
.contact .cont .input_ctn dl dd .input_box .textarea{height: 300px; border:1px solid #cccccc; padding: 20px; box-sizing:border-box; margin-top: 20px; margin-right: 0; overflow: hidden;}
.contact .cont .input_ctn dl dd .input_box .textarea > div{height: 300px;}
.contact .cont .input_ctn dl dd .input_box .textarea textarea{ box-sizing:border-box; width: 100%; height: 300px; font-size:16px; color: #222; outline:none; resize:none; padding: 20px;}
.contact .cont .input_ctn dl dd .input_box .textarea p{top: 20px;left: 20px; transform:translateY(0);}
 
.contact .cont .input_ctn dl dd .input_box .box{display:flex;}
.contact .cont .input_ctn dl dd .input_box .box h4{width: 154px; font-weight:600; font-size:19px; color: #222; margin-top: 17px;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn{width: calc(100% - /* 274px */151px); margin-bottom:30px;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box{ margin-bottom:10px;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box:last-of-type{margin-bottom:0;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box #fileName{height: 50px; width: 272px; box-sizing:border-box; border:none; border-bottom:1px solid #cccccc; padding: 0 20px; font-size:14px; color: #555; outline:none; background: transparent;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box .file{display:inline-block; position:relative; width: 120px; height: 50px; box-sizing:border-box; background: #222222; cursor: pointer; border-radius:5px; margin-left: 20px;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box .file span{display:inline-block; width: 100%; height: 100%; text-align: center; line-height:50px; font-size:14px; color: #fff;}
.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box .file input{display:none}
.contact .cont .input_ctn dl dd .input_box .box .plus{width: 120px; height: 50px; border:1px solid #ddd; border-radius:5px;  margin-left: 10px; text-align: center; cursor: pointer; box-sizing:border-box;}
.contact .cont .input_ctn dl dd .input_box .box .plus p{font-size:18px; letter-spacing:0.025em; color: #222; line-height: 50px;}
.contact .cont .input_ctn dl dd .input_box .box .captcha{display:flex;}
.contact .cont .input_ctn dl dd .input_box .box .captcha img{width: 150px; height: 50px; border-radius:5px; margin-right: 10px;}
.contact .cont .input_ctn dl dd .input_box .box .captcha button{font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif; width: 150px; height: 50px; border:1px solid #ddd; border-radius:5px; margin-right: 25px; font-size:15px; color: #222; padding: 0; background: transparent; cursor: pointer;}
.contact .cont .input_ctn dl dd .input_box .box .captcha input{box-sizing:border-box; width: 272px; height: 50px; border:none; border-bottom:1px solid #cccccc; padding: 0 20px; color: #222; outline:none; font-size:16px; background: transparent;}
.contact .cont .input_ctn dl dd .input_box .box .captcha input::placeholder{font-size:16px; color: #999999;}
.contact .cont .input_ctn .submit{margin-top: 110px; text-align: center;}
.contact .cont .input_ctn .submit button{font-family: 'Red Hat Display', sans-serif; display:inline-block; vertical-align: top; width: 300px; height: 70px; font-weight:bold; font-size:18px; letter-spacing:0.025em; color: #fff; border:none; background: #0054a6; cursor: pointer;}
 


/* 검은배경 */
.contact.bg .cont .input_ctn dl dd .input_box .chk_box .chk label p,
.contact.bg .cont .input_ctn dl dd .input_box .textarea textarea,
.contact.bg .cont .input_ctn dl dt{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .textarea,
.contact.bg .cont .input_ctn dl dd .input_box .item input{border-color:#fff; color: #fff; background: transparent;}
.contact.bg .cont .input_ctn dl dd .input_box .item p{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .textarea p,
.contact.bg .cont .input_ctn dl dd .input_box .item p span.cg{color: #fff; opacity: 0.7;}
.contact.bg .cont .input_ctn dl dd .input_box .select select{border-color:#fff; color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .select select option{color: #222;}
.contact.bg .cont .input_ctn dl dd .input_box .chk_box .chk a{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .chk_box .chk input[type="checkbox"]:checked + label > span{border-color:#0054a6}
.contact.bg .cont .input_ctn dl dd .input_box .select select{background: url(/img/sub/icon_select_bgw.png) no-repeat 95% 50%;}
.contact.bg .cont .input_ctn dl dd .input_box .box .captcha input::placeholder,
.contact.bg .cont .input_ctn dl dd .input_box .box h4{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .box .f_ctn .file_box .file{background: #0054a6;}
.contact.bg .cont .input_ctn dl dd .input_box .box .captcha button,
.contact.bg .cont .input_ctn dl dd .input_box .box .plus{background: #fff; border-color:#fff}
.contact.bg .cont .input_ctn dl dd .input_box .box .f_ctn .file_box #fileName{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .box .captcha input{color: #fff;}
.contact.bg .cont .input_ctn dl dd .input_box .item .plus_input{background: #0054a6;}

/* 접수완료 */
.contact.pb .cont{padding-bottom:0;}
.contact.pb .cont .input_ctn{margin-top: 0;}
.contact.pb .cont .complete-box{padding: 140px 0;}
.contact.pb .cont .complete-box .txtbox{text-align: center;}
.contact.pb .cont .complete-box .txtbox figure{margin-bottom:40px;}
.contact.pb .cont .complete-box .txtbox .txt-1{font-weight:bold; font-size:46px; color: #222;}
.contact.pb .cont .complete-box .txtbox .txt-2{font-weight:300; font-size:18px; color: #222; margin-top: 20px; letter-spacing:0.025em;}

/* privacy */
.privacy{padding-bottom:100px;}
.privacy .cont h4{font-weight:600; font-size:24px; color: #111111; margin-bottom:20px;}
.privacy .cont .priCon dl{border:1px solid #eeeeee; padding:40px; font-size:14px;line-height:22px;margin-bottom:20px;border-radius:10px}
.privacy .cont .priCon dl dt{font-size:20px; font-weight:600;color:#1d4c99;padding-bottom:10px;}
.privacy .cont .priCon dl dd{padding-bottom:10px;color:#555; font-size:15px; line-height: 1.5;}
.privacy .cont .priCon dl dd ul{padding-left:30px;padding-top:10px;padding-bottom:10px;padding-right:30px;}
.privacy .cont .priCon dl dd ul li{line-height:22px;}


/* 노트북 */
.ratio .top .tit h2{font-size:5.3vw}

/* 말풍선 무브 */
.about .cont .bot .move_img .move_ctn{animation:moveImg 20s linear infinite}
.about .cont .bot .move_img .move_ctn figure img.move01{animation:img01 1.5s linear infinite alternate;}
.about .cont .bot .move_img .move_ctn figure img.move02{animation:img02 1.5s linear infinite alternate;}
.about .cont .bot .move_img .move_ctn figure img.move03{animation:img03 1.5s linear infinite alternate;}



/* 유지보수 단간표 */
.service { padding-bottom:200px; }
.service * { box-sizing:border-box; letter-spacing:-0.01em; }
.service .tab { margin-top:120px;}
.service .tab ul { display:flex; background-color:#fff; border-radius:60px; border:1px solid #1461ad; height:60px; }
.service .tab ul li { width:50%; }
.service .tab ul li a { width:100%; height:100%; display:flex; justify-content:center; align-items:center; border-radius:60px; font-size:22px; font-weight:400; color:#1461ad; }
.service .tab ul li.on a { background-color:#1461ad; color:#fff; font-weight:500; }
.service .pricelist h4.p-title { margin-top:95px; color:#232323; font-size:32px; font-weight:700; text-align:center; }
.service .pricelist .txt_top { margin-top:20px; color:#065da4; font-size:16px; font-weight:500; text-align:right; }
.service .pricelist .p-table { margin-top:7px; }
.service .pricelist .p-table table { border-top:2px solid #328eda; }
.service .pricelist .p-table thead th { padding:25px 0; text-align:center; font-size:16px; line-height:1.4; border-bottom:1px solid #ccc; border-left:1px solid #ccc; color:#065da4; font-weight:600; background-color:#f8f8f8;}
.service .pricelist .p-table thead th.center { border-left:none; }
.service .pricelist .p-table tbody th { padding:25px 0; text-align:center; font-size:16px; line-height:1.4; border-bottom:1px solid #ccc; border-left:1px solid #ccc; }
.service .pricelist .p-table tbody th.bg { background-color:#f8f8f8; color:#065da4; font-weight:600; }
.service .pricelist .p-table tbody th.left { border-left:none; color:#333; text-align:left; padding-left:80px; font-weight:500; }
.service .pricelist .p-table tbody th.center { border-left:none; color:#333; text-align:center; font-weight:500; }
.service .pricelist .p-table tbody th.left strong { font-weight:500; }
.service .pricelist .p-table tbody th.left.bg,
.service .pricelist .p-table tbody th.left.bg strong { color:#065da4 }
.service .pricelist .p-table tbody th.left.bg,
.service .pricelist .p-table tbody th.left.bg strong,
.service .pricelist .p-table tbody th.center.bg,
.service .pricelist .p-table tbody th.center.bg strong  { font-weight:600; }
.service .pricelist .p-table tbody td { padding:25px 0; text-align:center; font-size:16px; color:#333; font-weight:400; line-height:1.4; border-bottom:1px solid #ccc; border-left:1px solid #ccc; }
.service .pricelist .p-table tbody td.td_left { text-align:left; padding-left:65px; }
.service .pricelist .p-table tbody td span.line { position:relative; }
.service .pricelist .p-table tbody td span.line:before {content:""; display:block; position:absolute; left:-2px; top:50%; width:calc(100% + 4px); height:1px; background-color:#333; }
.service .pricelist .p-table tbody td strong.t { font-weight:500; }
.service .txt_b { margin-top:30px; }
.service .txt_b p { font-size:15px; line-height:1.4; color:#333; margin:10px 0 }

@keyframes img01{
	0%{transform:translateY(-150px);}
	100%{transform:translateY(0);}
}
@keyframes img02{
	0%{transform:translateY(120px);}
	100%{transform:translateY(0);}
}
@keyframes img03{
	0%{transform:translateY(-90px);}
	100%{transform:translateY(0);}
}


/* 아이콘 애니메이션 */
.go{opacity: 0;}
.go.on{opacity: 1;}
.about .cont .icon_list .item .svg_ctn.svg1{animation:rotateBack 3s linear infinite;}
.about .cont .icon_list .item .svg_ctn.svg2{animation:rotateBack 3s linear infinite;}
.about .cont .icon_list .item .svg_ctn.svg3 .st04{animation:bgChange 1.5s linear infinite alternate;}
.about .cont .icon_list .item .svg_ctn.svg3 .st05{animation:bgChange02 1s linear infinite alternate;}
.about .cont .icon_list .item .svg_ctn.svg4 .st05{animation:bgChange03 1s linear infinite alternate;}

/* 조직도 애니메이션 */
.about .cont .organ .tab_ctn .svg_ctn.svg01.on #item01,
.about .cont .organ .tab_ctn .svg_ctn.svg01.ani #item01{animation:up01 2s cubic-bezier(0.5, 1, 0.89, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg01.on #item02,
.about .cont .organ .tab_ctn .svg_ctn.svg01.ani #item02{animation:up02 2s 1s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:558px 412px;}
.about .cont .organ .tab_ctn .svg_ctn.svg01.on #item03,
.about .cont .organ .tab_ctn .svg_ctn.svg01.ani #item03{animation:up03 0.5s 2s cubic-bezier(0.25, 1, 0.5, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg01.on #item04,
.about .cont .organ .tab_ctn .svg_ctn.svg01.ani #item04{animation:left 1s 1s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:1307px 509.5px}
.about .cont .organ .tab_ctn .svg_ctn.svg02.ani #item05{animation:up03 0.5s 2.6s cubic-bezier(0.25, 1, 0.5, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg02.ani #item06{animation:right 1.5s 1.5s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:56.74% 69.5%}
.about .cont .organ .tab_ctn .svg_ctn.svg02.ani #item07{animation:up04 1s cubic-bezier(0.5, 1, 0.89, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg03.ani #item08{animation:up04 1s cubic-bezier(0.5, 1, 0.89, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg03.ani #item09{animation:up05 1.2s 0.6s linear both; transform-origin:37% 61%}
.about .cont .organ .tab_ctn .svg_ctn.svg03.ani #item10{animation:left02 1s 1s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:69% 64.65%}
.about .cont .organ .tab_ctn .svg_ctn.svg03.ani #item11{animation:left03 1.25s 1.8s linear both; transform-origin:93% 80%}
.about .cont .organ .tab_ctn .svg_ctn.svg04.ani #item12{animation:up01 1s 3s cubic-bezier(0.5, 1, 0.89, 1) both;}
.about .cont .organ .tab_ctn .svg_ctn.svg04.ani #item13{animation:right02 2s 1s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:41.9% 73.6%}
.about .cont .organ .tab_ctn .svg_ctn.svg04.ani #item14{animation:left04 2s 1s cubic-bezier(0.5, 1, 0.89, 1) both; transform-origin:60% 83.5%}
.about .cont .organ .tab_ctn .svg_ctn.svg04.ani #item15{animation:up03 0.5s 3.5s cubic-bezier(0.25, 1, 0.5, 1) both;}


@keyframes rotate{
	0%{transform:rotate(360deg);}
	100%{transform:rotate(0deg);}
}

@keyframes rotateBack{
	0%{transform:rotate(0deg);}
	100%{transform:rotate(360deg);}
}

@keyframes bgChange{
	0%{fill:#1AA9AE; stroke:#1AA9AE;}
	100%{fill:#fff; stroke:#fff;}
}

@keyframes bgChange02{
	0%{fill:#fff}
	100%{fill:#1AA9AE}
}

@keyframes bgChange03{
	0%{fill:#136ABF}
	100%{fill:#50C2F2}
}


@keyframes up01{
	0%{
		transform:translateY(-100%);
	}
	100%,
	60%,
	20%{
		transform:translateY(0);
	}
	40%{
		transform:translateY(-40%);
	}
	80%{
		transform:translateY(-20%);
	}
}


@keyframes up02{
	0%{
		transform:translateY(-100%) rotate(360deg);
	}
	100%,
	60%,
	20%{
		transform:translateY(0) rotate(0);
	}
	40%{
		transform:translateY(-20%) rotate(140deg);
	}
	80%{
		transform:translateY(-10%) rotate(30deg);
	}
}

@keyframes up03{
	0%{
		transform:translateY(-100%);

	}
	100%,
	60%,
	20%{
		transform:translateY(0);
	}
	40%{
		transform:translateY(-10%);
	}
	80%{
		transform:translateY(-4%);
	}
}
@keyframes up04{
	0%{
		transform:translateY(-100%);
	}
	100%,
	60%,
	20%{
		transform:translateY(0);
	}
	40%{
		transform:translateY(-20%);
	}
	80%{
		transform:translateY(-10%);
	}
}

@keyframes up05{
	0%{
		transform:translateY(-100%) translateX(100%) rotate(-720deg);
	}
	33%{transform:translateY(0) translateX(50%) rotate(-360deg)}

	66%{transform:translateY(-30%) translateX(25%) rotate(-180deg)}
	
	100%{transform:translateY(0) translateX(0) rotate(0deg)}
	
}
@keyframes left{
	0%{transform:translateX(20%) rotate(180deg);}
	100%{transform:translateX(0) rotate(0)}
}
@keyframes left02{
	0%{transform:translateX(80%) rotate(180deg);}
	100%{transform:translateX(0) rotate(0)}
}
@keyframes left03{
	0%{transform:translateX(30%) rotate(180deg) translateY(0);}
	50%{transform:translateX(0) rotate(0) translateY(0)}
	75%{transform:translateX(2%) rotate(45deg) translateY(16px)}
	100%{transform:translateX(0) rotate(0) translateY(0)}
}
@keyframes left04{
	0%{transform:translateX(100%) rotate(720deg);}
	100%,
	83%,
	49%,
	16%{
		transform:translateX(0) rotate(0);
	}
	33%{
		transform:translateX(30%) rotate(180deg);
	}
	66%{
		transform:translateX(8%) rotate(40deg);
	}
}

@keyframes right{
	0%{transform:translateX(-100%) rotate(-720deg);}
	100%,
	83%,
	49%,
	16%{
		transform:translateX(0) rotate(0);
	}
	33%{
		transform:translateX(-25%) rotate(-180deg);
	}
	66%{
		transform:translateX(-15%) rotate(-40deg);
	}
}
@keyframes right02{
	0%{transform:translateX(-100%) rotate(-720deg);}
	100%,
	83%,
	49%,
	16%{
		transform:translateX(0) rotate(0);
	}
	33%{
		transform:translateX(-6%) rotate(-180deg);
	}
	66%{
		transform:translateX(-3%) rotate(-40deg);
	}
}

/* 애니메이션 */
.section .top h2 span{animation:moveTxt01 1.5s cubic-bezier(0.5, 1, 0.89, 1) both;}
.section .top p span{display:inline-block; vertical-align: top; animation:moveTxt 0.5s cubic-bezier(0.5, 1, 0.89, 1) both;}

@keyframes moveImg{
	0%{transform:translateX(0);}
	100%{transform:translateX(-2886px);}
}

@keyframes moveTxtLeft{
	0%{transform:translateX(100%);}
	100%{transform:translateX(-100%);}
}
@keyframes moveTxtRight{
	0%{transform:translateX(-100%);}
	100%{transform:translateX(100%);}
}

@keyframes moveTxt{
	0%{
		opacity: 0;
		transform:scale(0.5);
	}
	50%{
		transform:scale(1.2);
	}
	100%{
		opacity: 1;
		transform:scale(1);
	}
}
@keyframes moveTxt01{
	0%{opacity: 0; color: #0054a6; left:-120px;}
	10%{opacity: 0;}
	20%{color: #0054a6;}
	70%{left: 0;}
	100%{opacity: 1; color: #222;}
}

@keyframes bgb{
	0%{background: #fff;}
	100%{background: #000;}
}
@keyframes bgw{
	0%{background: #000;}
	100%{background: #fff;}
}

@keyframes moveArrow{
	0%{transform:translateX(0);}
	100%{transform:translateX(10px);}

}

@media (hover: hover) {
	.work .cont .list .item:hover .hover{opacity: 1;}
	.work .cont .list .item:hover .in {border-radius:450px 0 0 0; }
    .work .cont .list .item:hover .in .img_bg{border-radius:0 0 70px 0; }
	.work .cont .list .item:hover .btn{opacity: 1; right: 0;}
	.work .cont .list .item:hover .in h2{transform:translateY(-150%);}
    
    .work .cont .list-n .ani_box .item:hover .hover { z-index:10 }
}


@media screen and (max-width: 1620px){
	.news .cont .item .flex_box{padding: 0 40px; box-sizing:border-box;}
}

@media screen and (max-width: 1500px){
	.section{padding-top: 150px;}
	.section .top{margin-bottom:75px;}
	.section .top .tit h2{font-size:80px;}
	.section .top .page_btn > div{width: 200px; height: 140px; overflow: hidden; bottom: 0;}
	.section .top .page_btn > div .hover p,
	.section .top .page_btn > div > p{line-height: 140px;}
	.section .top .page_btn > div .hover{padding: 0 20px;}
	.section .top .page_btn > div .hover p i{line-height: 142px;}
	
	.work .cont .s_link{margin: 200px 0;}
	.about .cont .organ{margin-bottom:180px;}
	.about .cont .partner .tit{margin-bottom:80px;}
    
    .work .cont .btn_box ul { gap:10px 40px; }
    .work .cont .btn_box ul li { width:calc((100% - 160px) / 4); padding:7px 0 7px 32px; }
    .work .cont .btn_box ul li:before{ width: 25px; height: 25px; }
}

@media screen and (max-width: 1400px){
	.work .cont .list .ani_box .item{width: calc(50% - 50px); margin-right: 100px;}
	.news .cont .item .flex_box{height: 200px;}
	.news .cont .item .flex_box .tit p{margin-bottom:20px;}

    /* 23.11.08 */
    .work .cont .list-n .ani_box{ gap:50px 50px; }
    .work .cont .list-n .ani_box .item{width: calc((100% - 150px) / 4); margin-right: 0;}

}

@media screen and (max-width: 1200px){
	.n_cursor{display:none; }

	.section .top{margin-bottom:50px;}
	.section .top .tit h2{font-size:60px;}

	.work .w1400{padding: 0 40px;}
	.work .cont .list{margin-top: 100px;}
	.work .cont .list .ani_box{margin-bottom:80px;}
	.work .cont .list .ani_box .item{width: calc(50% - 30px); margin-right: 60px;}
	.work .cont .list .ani_box .item .hover .top_txt h3{font-size:26px;}
	.work .cont .list .ani_box .item .in h2{font-size:26px; margin-top: 8px;}
	.work .cont .list .ani_box .item .hover{top: 20px;}
	.work .cont .more{margin-top: 200px;}
	.work .cont .s_link{margin: 140px 0;}
	.work .cont .s_link p{font-size:90px;}
    
    /* 23.11.08 */
    .work .cont .list-n .ani_box{ gap:50px 50px; }
    .work .cont .list-n .ani_box .item{width: calc((100% - 150px) / 4); margin-right: 0;}
    .work .cont .list-n .ani_box .item .top_txt { padding-top:5px; }
    .work .cont .list-n .ani_box .item .in h2{font-size:18px; }
    
    .work .cont .btn_box ul { gap:10px 30px; }
    .work .cont .btn_box ul li { width:calc((100% - 120px) / 4); padding:7px 0 7px 30px; font-size:15px; }
    .work .cont .btn_box ul li:before{ width: 24px; height: 24px; }
	
	.news .cont .item .flex_box{padding: 0 16px;}
	.news .cont .item .flex_box .tit{padding-left: 50px;}
	.news .cont .item .flex_box .tit h3{font-size:24px;}
	.news .cont .more{margin-bottom:140px;}
	
	.about .cont .pin_ctn .txt{padding: 0 16px; box-sizing:border-box;}
	.about .cont .pin_ctn .txt h3{font-size:80px;}
	.about .cont .pin_ctn .txt .right_txt h4{font-size:32px;}
	.about .cont .icon_list{padding-top: 120px;}
	.about .cont .scroll_txt{height: 600px; }
	.about .cont .scroll_txt .txt p{animation:moveTxtRight 5s linear infinite;}
	.about .cont .scroll_txt .txt p.cb{animation:moveTxtLeft 5s linear infinite;}
	.about .cont .organ{margin-bottom:120px;}
	.about .cont .partner .tit h3,
	.about .cont .organ .tit h3{font-size:56px;}
	.about .cont .organ .tit{margin-bottom:40px;}
	.about .cont .partner{padding-bottom:120px;}
	.about .cont .partner .tit{margin-bottom:50px;}
	.about .cont .partner ul li{width: 20%;}
	.about .cont .bot{padding-top: 146px;}
	.about .cont .bot .s_link{margin-top: 140px;}
	.about .cont .bot .s_link p{font-size:90px;}
	
	.contact .cont{padding-bottom:140px;}
	.contact .cont .input_ctn{margin-top: 100px;}
	.contact .cont .input_ctn dl{margin-bottom:80px;}
	.contact .cont .input_ctn dl dd .input_box .box{flex-wrap:wrap; width: 100%;}
	.contact .cont .input_ctn dl dd .input_box .box h4{width: 100%; margin-bottom:10px;}
	.contact .cont .input_ctn dl dd .input_box .box .f_ctn{/* width: calc(100% - 130px); */ width: 100%;}
	.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box #fileName{width:calc(100% - 143px);}
	.contact .cont .input_ctn dl dd .input_box .box .captcha{flex-wrap:wrap; width: 100%;}
	.contact .cont .input_ctn dl dd .input_box .box .captcha input{width: calc(100% - 335px);}
	.contact .cont .input_ctn .submit{margin-top: 50px;}
	.contact .cont .input_ctn dl dd .input_box .item .plus_input{right: 0;}
}

@media screen and (max-width: 1000px){
	.section .top .page_btn {display: none;}
	
	.work .w1400{padding: 0 16px;}
	.work .cont .list .ani_box .item{width: calc(50% - 24px); margin-right: 30px;}
	.work .cont .list .ani_box .item .hover .top_txt h3{font-size:22px;}
	.work .cont .list .ani_box .item .in .tit{right: -16px;}
	.work .cont .list .ani_box .item .in .tit > ul li{font-size:12px; margin-bottom:18px;}
	.work .cont .list .ani_box .item .in .tit > ul li::after{bottom: -8px;}
	.work .cont .s_link p{font-size:70px;}

    /* 23.11.08 */
    .work .cont .list-n .ani_box{ gap:50px 50px; }
    .work .cont .list-n .ani_box .item{width: calc((100% - 50px) / 2); margin-right: 0;}
    
    .work .cont .btn_box ul { gap:5px 30px; }
    .work .cont .btn_box ul li { width:calc((100% - 90px) / 3); }

	.about .cont .pin_ctn .txt h3{font-size:65px;}
	.about .cont .pin_ctn .txt .right_txt h4{font-size:28px;}
	.about .cont .pin_ctn .txt .right_txt p{font-size:16px; margin-top: 24px;}
	.about .cont .icon_list{padding-top: 80px;}
	.about .cont .partner{padding-bottom:80px;}
	.about .cont .partner ul li{width: 33.33%;}
	.about .cont .organ .tit{margin-bottom:20px;}
	.about .cont .organ .tab li{display:flex; justify-content:center; align-items:center; height: 30px; width: 25%; text-align: center; font-size:16px; margin-right: 0;}
	.about .cont .bot{padding-top: 50px; padding-bottom:100px;}
	.about .cont .bot .move_img .move_ctn figure{transform:scale(0.85);}
	.about .cont .bot .move_img .move_ctn figure:last-of-type{margin-left: -600px;}
	.about .cont .bot .s_link{margin-top: 40px;}
	.about .cont .bot .s_link p{font-size:70px;}

	@keyframes moveImg{
		0%{transform:translateX(0);}
		100%{transform:translateX(-2286px);}
	}
	
	.contact .cont{padding-bottom:100px;}
	.contact .cont .info li{margin-right: 20px;}
	.contact .cont .input_ctn{margin-top: 60px;}
	.contact .cont .input_ctn dl{margin-bottom:50px;}
	.contact .cont .input_ctn dl dt{width: 100%; margin-bottom:20px;}
	.contact .cont .input_ctn dl dd{width: 100%;}
	.contact .cont .input_ctn dl dd .input_box .chk_box{margin-bottom:40px;}
	.contact .cont .input_ctn dl dd .input_box .select{padding-right: 0;}
	.contact.pb .cont .complete-box{padding: 60px 0;}
	.contact.pb .cont .complete-box .txtbox .txt-1{font-size:30px;}
	
	.privacy{padding-bottom:60px;}
	.privacy .cont h4{font-size:20px;}
	.privacy .cont .priCon dl{padding: 20px;}
	.privacy .cont .priCon dl dt{font-size:18px;}
    
    .service { padding-bottom:100px; }
    .service .tab ul { height:50px; }
    .service .tab ul li a { font-size:16px; }
    .service .pricelist h4.p-title { margin-top:70px; font-size:24px; }
    .service .pricelist .txt_top { margin-top:15px; font-size:15px; }
    .service .pricelist .p-table { margin-top:5px; overflow:auto; }
    .service .pricelist .p-table table { width:1000px; }
    .service .pricelist .p-table thead th,
    .service .pricelist .p-table tbody th,
    .service .pricelist .p-table tbody td { padding:20px 0; font-size:15px; }
    .service .pricelist .p-table tbody th.left,
    .service .pricelist .p-table tbody td.td_left { padding-left:20px; }

}

@media screen and (max-width: 800px){
	.section .top .tit h2{font-size:46px;}

	.work .cont .search_box form .search_form{max-width: none;}
	.work .cont .search_box .tag{flex-wrap:wrap; justify-content:flex-start; margin-top: 15px;}
	.work .cont .search_box .tag li{margin-bottom:6px;}
	.work .cont .more{width: 240px; height: 55px; margin-top: 80px;}
	.work .cont .s_link{margin: 100px 0;}
	.work .cont .s_link p{font-size:50px;}
	.work .cont .s_link .btn{margin-top: 6px;}
	.work .cont .list{margin-top: 60px;}
	.work .cont .list .ani_box{margin-bottom:40px;}
	.work .cont .list .ani_box .item{width: calc(50% - 10px); margin-right: 20px;}
	
	.work .cont .list .ani_box .item .in .pc_t{font-size:24px;	}
	.work .cont .list .ani_box .item .in .tit,
	.work .cont .list .ani_box .item .hover{display:none; }
	.work .cont .list .ani_box .item .top_txt.m{display:block; }
    

    /* 23.11.08 */
    .work .cont .list-n .ani_box{ gap:40px; }
    .work .cont .list-n .ani_box .item{width: calc((100% - 40px) / 2); margin-right: 0;}
    .work .cont .list-n .ani_box .item .in .pc_t { font-size:18px; }
    
    
    .work .cont .btn_box ul { gap:5px 20px; }
    .work .cont .btn_box ul li { width:calc((100% - 40px) / 2); padding:5px 0 5px 28px; }
    .work .cont .btn_box ul li:before { width:22px; height:22px; }

	.news .cont .item .flex_box{padding: 30px 16px; height: auto;}
	.news .cont .item .flex_box .tit{width: 100%; padding-left: 0;}
	.news .cont .item .flex_box .tit h3{font-size:24px;}
	.news .cont .item .flex_box .tit p{margin-bottom:6px;}
	.news .cont .item .flex_box .date{margin-bottom:20px;}
	.news .cont .item .flex_box .date p{font-size:30px;}
	.news .cont .more{width: 240px; height: 55px; margin-top: 40px; margin-bottom:100px;}
	
	.about .cont .scroll_txt .txt p{font-size:70px; white-space: nowrap;}

	@keyframes moveTxtLeft{
		0%{transform:translateX(100%);}
		100%{transform:translateX(-200%);}
	}
	@keyframes moveTxtRight{
		0%{transform:translateX(-100%);}
		100%{transform:translateX(200%);}
	}

	.about .cont .partner .tit{margin-bottom:30px;}
	.about .cont .partner .tit h3, .about .cont .organ .tit h3{font-size:36px;}

	.about .cont .organ .tab{flex-wrap:wrap;}
	.about .cont .organ .tab li{width: 50%;}
	.about .cont .bot .s_link{margin-top: 100px;}
	.about .cont .bot .s_link p{font-size:50px;}
	.about .cont .bot .s_link .btn{margin-top: 6px;}
	.about .cont .icon_list .item .svg_ctn{width: 61px; height: 61px;}
	.about .cont .icon_list .item .txt{margin-top: 24px;}
	.about .cont .icon_list .item .txt h5{margin-top: 10px;}
	.about .cont .icon_list .item .txt p{font-size:28px;}
	
	.contact .pop_box .txt_ctn{width: calc(100% - 32px); margin: 0 auto; height: 350px;}
	.contact .pop_box .txt_ctn .close{font-size:24px;}
	.contact .pop_box section{padding: 20px 0;}
	.contact .cont .info{flex-wrap:wrap; padding: 0 16px 30px; box-sizing:border-box;}
	.contact .cont .info li{width: 100%; text-align: right; margin-right: 0; margin-bottom:5px;}
	.contact .cont .info li:last-of-type{margin-bottom:0;}
	.contact .cont .input_ctn dl dd .input_box .item{width: 100%; margin-right: 0;}
	.contact .cont .input_ctn dl dd .input_box .item p{font-size:16px;}
	.contact .cont .input_ctn dl dd .input_box .textarea textarea,
	.contact .cont .input_ctn dl dd .input_box .textarea{height: 220px;}
	.contact .cont .input_ctn dl dd .input_box .box .captcha input{width: 100%; margin-top: 10px;}
	.contact .cont .input_ctn dl dd .input_box .box .f_ctn .file_box{width: 100%;}
}
@media screen and (max-width: 620px){
	.work .cont .list .ani_box .item .in .pc_t{font-size:20px;}

	.work .cont .list .ani_box .item .top_txt.m h3{font-size:20px;}
	.work .cont .list .ani_box .item .top_txt.m > ul:not(.tag) li{font-size:14px;}
	.work .cont .list .ani_box .item .top_txt.m > ul.tag li:nth-of-type(n+5){display:none; }
    
    /* 23.11.08 */
    .work .cont .list-n .ani_box{ gap:40px 10px; }
    .work .cont .list-n .ani_box .item{width: calc((100% - 10px) / 2); margin-right: 0;}
    .work .cont .list-n .ani_box .item .in .pc_t { font-size:16px; }
	
	.about .cont .pin_ctn .txt .right_txt{margin-top: 80px;}
	.about .cont .pin_ctn .txt h3{font-size:50px;}
	.about .cont .pin_ctn .txt .right_txt p br{display:none; }
	.about .cont .scroll_txt{height: 400px;}
	.about .cont .bot{padding-top: 0;}
	.about .cont .bot .s_link{margin-top: 80px;}
	.about .cont .bot .move_img{overflow: visible; transform: translateX(-300px); height: 400px;}
	.about .cont .bot .move_img .move_ctn{animation:moveImg 15s linear infinite}
	.about .cont .bot .move_img .move_ctn figure{transform:scale(0.75);}
	.about .cont .bot .move_img .move_ctn figure:last-of-type{margin-left: -780px;}
	.about .cont .icon_list .item{width: 50%; margin-bottom:40px;}
	.about .cont .icon_list .item:nth-of-type(n + 3){margin-bottom:0px;}

	.contact.pb .cont .complete-box .txtbox figure{width: 60%; margin: 0 auto 30px;}
	.contact.pb .cont .complete-box .txtbox .txt-1{font-size:26px;}
	.contact.pb .cont .complete-box .txtbox .txt-2{margin-top: 10px;}

	@keyframes moveImg{
		0%{transform:translateX(0);}
		100%{transform:translateX(-2106px);}
	}
}
@media screen and (max-width: 500px){
	.work .cont .s_link{margin: 60px 0 100px;}
	
	.news .cont .item .flex_box .tit h3{font-size:20px;}

	.about .cont .bot .s_link{margin-top: 60px;}
	.work .cont .list .ani_box .item .in h2 span{display:block; }
    
    .service .tab ul li a { font-size:15px; }
}