@charset 'utf-8';
/* CSS Document */

/* reset */
body {margin: 0;}
h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p, table {margin: 0; padding: 0;}
h1, h2, h3, h4, h5, h6 {font-weight: 700;}
header, main, footer, section, article, aside, nav {display: block;}
a {color: inherit; text-decoration: inherit;}
a img {border: none;}
img {vertical-align: middle;}
li {list-style: none;}
address, em, i, cite {font-style: normal;}
table {border-collapse: collapse;}
table caption {overflow: hidden; width: 0; height: 0;}
i.fas, i.far, i.fab {vertical-align: middle; display: inline-block;}
i.fas span, i.far span, i.fab span {position: absolute; left: -9999px;}
.mobile {display: none !important;}
br.only-m {content: '';}
br.only-m:after {content: '\00a0';}
div.hidden {position: absolute; left: -9999px;}


/* common */
body {font-family: 'Noto Sans KR', '나눔고딕', '맑은 고딕', 'malgun gothic', '돋움', 'Dotum', 'Apple SD Gothic Neo', 'Helvetica', sans-serif; font-weight: 400; font-size: 13px; color: #333333; background: #ffffff;}
#wrapper {min-width: 1024px; overflow: hidden;}
#skip-nav {position: fixed; left: 0; top: -41px; width: 100%; line-height: 40px; text-align: center; font-size: 16px; color: #ffffff; background: rgba(0, 0, 0, 0.6); border-bottom: 1px solid #ffffff; z-index: 100000; transition: top 0.3s;}
#skip-nav:focus {top: 0;}

#header {position: fixed; left: 0; top: 0; width: 100%; height: 90px; min-width: 1024px; background: #ffffff; z-index: 10000; transition: all 0.3s; box-sizing: border-box;}
#header.scroll {height: 70px; box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2);}
#header h1 {position: absolute; left: 100px; top: 50%; transform: translate(0, -50%); width: 130px; transition: width 0.3s;}
#header.scroll h1 {width: 110px;}
#header h1 img {width: 100%;}
#header.open:before {content: ''; position: absolute; left: 0; bottom: -60px; width: 100%; height: 60px; background: rgba(0, 88, 145, 0.7);}

#gnb {position: absolute; right: 150px; top: 50%; transform: translate(0, -50%); font-size: 18px;}
#gnb > ul > li {float: left;}
#gnb > ul > li + li {margin-left: 100px;}
#gnb > ul > li > a {transition: color 0.3s;}
#gnb > ul > li.on > a,
#gnb > ul > li > a:hover {color: #ff7f00;}
#gnb > ul > li > ul {position: absolute; top: 76px; color: #ffffff; font-size: 16px; display: none; transition: top 0.3s;}
#header.scroll #gnb > ul > li > ul {top: 66px;}
#gnb > ul > li.sub1 > ul {left: -60px;}
#gnb > ul > li.sub2 > ul {left: -300px; width: 1200px;}
#gnb > ul > li.sub3 > ul {left: 300px; width: 800px;}
#gnb > ul > li.sub5 > ul {right: 0;}
#gnb > ul > li > ul > li {float: left;}
#gnb > ul > li > ul > li + li:before {content: '|'; margin: 0 30px; font-size: 10px; color: #ffffff; position: relative; top: -3px; opacity: 0.6;}
#gnb > ul > li.sub2 > ul > li + li:before {margin: 0 20px;}
#gnb > ul > li > ul > li > a {transition: color 0.3s;}
#gnb > ul > li > ul > li.on > a,
#gnb > ul > li > ul > li > a:hover {color: #ff7f00;}
#gnb span.bar {position: absolute; left: 0; bottom: -32px; width: 0; height: 4px; background: #ff7f00; transition: all 0.3s;}
#header.scroll #gnb span.bar {bottom: -22px;}
@media screen and (max-width: 1200px) {
    #header h1 {left: 50px;}
    #gnb {right: 100px;}
    #gnb > ul > li + li {margin-left: 60px;}
    #gnb > ul > li.sub2 > ul > li + li:before {margin: 0 15px;}
}

#footer {background: #151313; color: #ffffff; font-size: 13px;}
#footer > div.footer-box {position: relative; width: 1000px; margin: 0 auto; padding: 50px 0 50px 300px; box-sizing: border-box;}
#footer h2 {position: absolute; left: 0; top: 30px;}
#footer nav.gnb > ul {overflow: hidden; font-size: 16px;}
#footer nav.gnb > ul > li {float: left;}
#footer nav.gnb > ul > li + li:before {content: '|'; position: relative; top: -2px; margin: 0 40px; font-size: 10px; color: #999999;}
#footer nav.gnb > ul > li > a {transition: color 0.3s;}
#footer nav.gnb > ul > li > a:hover {color: #ff7f00;}
#footer ul.regulation {overflow: hidden; margin: 10px 0;}
#footer ul.regulation li {float: left; margin-right: 30px; font-size: 12px; color: #999999;}
#footer ul.regulation li a {display: block; border: 1px solid #999999; padding: 2px 5px;}
#footer div.info {color: #999999; line-height: 1.4em;}
#footer address span + span:before {content: '|'; position: relative; margin: 0 20px; font-size: 8px; top: -2px;}
#footer div.info p.copyright {margin-top: 8px;}

@media screen and (max-width: 1200px) {
    #footer h2 {left: 50px;}
    #footer > div.footer-box {padding-left: 350px;}
}


/* main */
section.scroll-page {position: relative; height: 100vh; overflow: hidden; background: #ffffff;}
section.scroll-page div.content-box {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: 1200px; width: 100%; box-sizing: border-box;}
section.scroll-page h2 {position: relative; font-size: 40px; margin-bottom: 80px; padding-bottom: 15px;}
section.scroll-page h2:after {content: ''; position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 0); width: 160px; height: 4px; background: #ff7f00;}
section.scroll-page h2.center {text-align: center;}
section.scroll-page h2 span {display: block; color: #1d6d92; font-size: 18px; font-weight: 400;}
section.scroll-page h2 span em {font-weight: 700;}
@media screen and (max-width: 1300px) {
    section.scroll-page div.content-box {padding: 0 30px;}
}

#main-visual ul.slide li {position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: none; perspective: 1000px; perspective-origin: center center;}
/*#main-visual ul.slide li:first-child {display: block;}*/
#main-visual ul.slide li div.visual {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#main-visual ul.slide li.image div.visual span {float: left; width: 25%; height: 100vh; overflow: hidden; position: relative;}
#main-visual ul.slide li.image div.visual span img {position: absolute; left: 0; top: 50%; transform: translate(-50%, -50%); min-height: 100%;}
#main-visual ul.slide li.image div.visual span:nth-child(1) img {left: 200%;}
#main-visual ul.slide li.image div.visual span:nth-child(2) img {left: 100%;}
#main-visual ul.slide li.image div.visual span:nth-child(3) img {left: 0;}
#main-visual ul.slide li.image div.visual span:nth-child(4) img {left: -100%;}
#main-visual ul.slide li div.slogan {position: absolute; left: 50%; top: 50%; width: 1024px; transform: translate(-50%, -50%); color: #ffffff; text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.6); z-index: 10; box-sizing: border-box;}
/*#main-visual ul.slide li div.slogan span {display: block; font-size: 24px; opacity: 0;}*/
#main-visual ul.slide li div.slogan p {font-size: 40px; font-weight: 700; line-height: 1.8em; opacity: 0;}
#main-visual ul.slide li div.slogan p em {font-size: 54px; color: #ff7f00;}
#main-visual div.indicator {position: absolute; left: 0; bottom: 50px; width: 100%; text-align: center; z-index: 100;}
#main-visual div.indicator ul {display: inline-block; vertical-align: top;}
#main-visual div.indicator ul li {display: inline-block; position: relative;}
#main-visual div.indicator ul li + li {margin-left: 15px;}
#main-visual div.indicator ul li a {display: block; width: 12px; height: 12px; border-radius: 20px; background: rgba(255, 255, 255, 0.4); text-indent: -999px; overflow: hidden; box-sizing: border-box; position: relative;}
#main-visual div.indicator ul li.on a {width: 50px; border: 2px solid #ffffff; background: none;}
#main-visual div.indicator ul li a span.bar {position: absolute; left: 0; top: 0; width: 0; height: 100%; border-radius: 20px; box-sizing: border-box; background: #ff7f00;}
#main-visual div.indicator a.play {color: #ffffff; margin-left: 20px; vertical-align: top; position: relative; top: -2px; font-size: 16px;}
#main-visual div.indicator a.play i {display: none;}
#main-visual div.indicator a.play i:first-child {display: inline;}
#main-visual div.indicator a.play.on i {display: none;}
#main-visual div.indicator a.play.on i + i {display: inline;}

#main-visual ul.slide li.show {display: block; animation: main-slide-show 1s ease-out 0s 1 normal forwards;}
#main-visual ul.slide li.show div.slogan p.up {animation: main-text-show1 1s ease-out 0s 1 normal forwards;}
#main-visual ul.slide li.show div.slogan p.down {animation: main-text-show2 1s ease-out 0.5s 1 normal forwards;}
#main-visual ul.slide li.hide {display: block; z-index: 10;}
#main-visual ul.slide li.image.hide div.visual span:nth-child(2n-1) {animation: main-image-hide1 1s ease-out 0s 1 normal forwards;}
#main-visual ul.slide li.image.hide div.visual span:nth-child(2n) {animation: main-image-hide2 1s ease-out 0s 1 normal forwards;}
#main-visual ul.slide li.hide div.slogan span {animation: main-text-hide1 1s ease-out 0s 1 normal forwards;}
#main-visual ul.slide li.hide div.slogan p {animation: main-text-hide2 1s ease-out 0s 1 normal forwards;}

@media screen and (max-width: 1300px) {
    #main-visual ul.slide li div.slogan {text-align: center;}
}

/* animation */
@keyframes main-slide-show {
    0% {opacity: 0.2; transform: scale(1.1);}
    100% {opacity: 1; transform: scale(1);}
}
@keyframes main-video-hide {
    0% {opacity: 1; transform: translate(0, 0);}
    100% {opacity: 0; transform: translate(-100%, 0);}
}
@keyframes main-image-hide1 {
    0% {opacity: 1; transform: rotateY(0);}
    100% {opacity: 0; transform: rotateY(-70deg);}
}
@keyframes main-image-hide2 {
    0% {opacity: 1; transform: rotateY(0);}
    100% {opacity: 0; transform: rotateY(70deg);}
}
@keyframes main-text-hide1 {
    0% {opacity: 1; transform: translate(0, 0);}
    100% {opacity: 0; transform: translate(-100px, 0);}
}
@keyframes  main-text-hide2 {
    0% {opacity: 1; transform: translate(0, 0);}
    100% {opacity: 0; transform: translate(100px, 0);}
}
@keyframes main-text-show1 {
    0% {opacity: 0; transform: translate(0, -50px);}
    100% {opacity: 1; transform: translate(0, 0);}
}
@keyframes main-text-show2 {
    0% {opacity: 0; transform: translate(0, 50px);}
    100% {opacity: 1; transform: translate(0, 0);}
}

#main-visual p.control a.prev,
#main-visual p.control a.next {position: absolute; top: 50%; transform: translate(0, -50%); z-index: 100; opacity: 0.5; transition: opacity 0.3s;}
#main-visual p.control a.prev:hover,
#main-visual p.control a.next:hover {opacity: 1;}
#main-visual p.control a.prev {left: 50px;}
#main-visual p.control a.next {right: 50px;}

#main-product {background: url(/img/main_bg_01.jpg) center center no-repeat; background-size: cover;}
#main-product h2 {margin-bottom: 100px;}
#main-product div.product-list {position: relative;}
#main-product div.product-list > div.box {position: relative; height: 300px; overflow: hidden;}
#main-product div.product-list ul.banner {position: absolute; left: 0; top: 0; width: 5000px; height: 100%;}
#main-product div.product-list ul.banner > li {float: left; width: 300px; height: 100%;}
#main-product div.product-list ul.banner > li + li {margin-left: 50px;}
#main-product div.product-list ul.banner > li > a {position: relative; display: block; height: 100%; overflow: hidden;}
#main-product div.product-list ul.banner > li > a span.image img {min-width: 100%; height: 100%; transition: transform 0.5s;}
#main-product div.product-list ul.banner > li > a:hover span.image img {transform: scale(1.1) rotate(3deg);}
#main-product div.product-list ul.banner > li > a span.title {position: absolute; left: 0; bottom: 0; height: 50px; line-height: 50px; width: 100%; background: rgba(0, 88, 145, 0.7); color: #ffffff; box-sizing: border-box; padding-left: 20px; font-size: 14px; transition: all 0.3s;}
#main-product div.product-list ul.banner > li > a span.title span {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -20%); width: 130px; line-height: 40px; text-align: center; border: 1px solid #ffffff; opacity: 0; transition: all 0.3;}
#main-product div.product-list ul.banner > li > a:hover span.title {height: 100%; padding-top: 20px;}
#main-product div.product-list ul.banner > li > a:hover span.title span {opacity: 1;}
#main-product div.product-list ul.banner > li > a span.title em {font-size: 20px; font-weight: 700; margin-right: 20px; transition: all 0.3s;}
#main-product div.product-list ul.banner > li > a:hover span.title em {font-size: 30px;}
#main-product div.product-list p.control a {position: absolute; top: 0; height: 100%; width: 50px; text-align: center; transition: background 0.3s;}
#main-product div.product-list p.control a:hover {background: rgba(0, 88, 145, 0.4);}
#main-product div.product-list p.control a img {position: relative; width: 30px; top: 50%; transform: translate(0, -50%);}
#main-product div.product-list p.control a.prev {left: 0;}
#main-product div.product-list p.control a.next {right: 0;}

#main-notice {background: url(/img/main_bg_02.jpg) center center no-repeat; background-size: cover;}
#main-notice h2 {margin-bottom: 100px;}
#main-notice div.board {float: left; width: calc(100% - 400px);}
#main-notice div.board ul {font-size: 16px; border-top: 2px solid #ff7f00; background: rgba(255, 255, 255, 0.8);}
#main-notice div.board ul > li {position: relative; border-bottom: 1px solid #e0e0e0; transition: background 0.3s;}
#main-notice div.board ul > li:hover {background: #f9f9f9;}
#main-notice div.board ul > li > a {display: block; line-height: 56px; padding-left: 20px; transition: color 0.3s; width: calc(100% - 200px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#main-notice div.board ul > li > a:hover {color: #ff7f00;}
#main-notice div.board ul > li span.date {position: absolute; right: 10px;; top: 50%; transform: translate(0, -50%);}
#main-notice div.board p.more {font-size: 18px; margin-top: 20px; text-align: right; padding-right: 10px;}
#main-notice div.board p.more a {transition: color 0.3s;}
#main-notice div.board p.more a:hover {color: #ff7f00;}

#main-notice ul.link {float: right; width: 300px; height: 300px;}
#main-notice ul.link li {float: left; width: 140px; height: 140px; margin: 0 20px 20px 0; overflow: hidden;}
#main-notice ul.link li:nth-child(2n) {margin-right: 0;}
#main-notice ul.link li a {position: relative; display: block; border: 2px solid #ff7f00; background: #ffffff; box-sizing: border-box; height: 100%; color: #888888; transition: all 0.3s;}
#main-notice ul.link li a span.icon {position: absolute; left: 50%; top: 20px; width: 70px; height: 70px; transform: translate(-50%, 0);}
#main-notice ul.link li a span.icon img {position: absolute; left: 0; top: 0; width: 100%; opacity: 0; transition: all 0.3s;}
#main-notice ul.link li a span.icon img:first-child {opacity: 1;}
#main-notice ul.link li a:hover {background: #ff7f00; color: #ffffff;}
#main-notice ul.link li a:hover span.icon img:first-child {opacity: 0;}
#main-notice ul.link li a:hover span.icon img + img {opacity: 1;}
#main-notice ul.link li a em {position: absolute; left: 0; bottom: 0; width: 100%; line-height: 40px; font-size: 16px; text-align: center;}



/* sub(common) */
body.sub #main > section.content {max-width: 1000px; min-height: 600px; margin: 0 auto; padding: 60px 0 100px 0;}
body.sub #main h2 {position: relative; font-size: 32px; margin-bottom: 40px; padding-left: 30px; line-height: 1em;}
body.sub #main h2:before {content: ''; position: absolute; left: 0; top: 0; width: 8px; height: 100%; background: #ff7f00;}
body.sub #main h2 span {display: block; font-weight: 400; font-size: 16px; color: #999999;}
body.sub #main h3.title {position: relative; font-size: 24px; padding-left: 30px; color: #888888;}
body.sub #main h3.title:before {content: ''; position: absolute; left: 0; top: 50%; transform: translate(0, -50%); width: 10px; height: 10px; border: 3px solid #1d6d92; border-radius: 40px;}
body.sub section.content p.center {text-align: center;}

#sub-visual {position: relative; height: 350px; overflow: hidden;}
#sub-visual p.bg img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); min-height: 100%; min-width: 100%;}
#sub-visual div.slogan {position: absolute; left: 50%; bottom: 80px; width: 100%; max-width: 1200px; transform: translate(-50%, 0); color: #ffffff; text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.6); box-sizing: border-box;}
#sub-visual div.slogan p.up {display: block; font-size: 34px; opacity: 0; font-weight: 700; margin-bottom: 10px; animation: sub-text-show1 2s ease-out 0s 1 normal forwards;}
#sub-visual div.slogan p.down {font-size: 24px; line-height: 1.4em; opacity: 0; animation: sub-text-show2 2s ease-out 0.3s 1 normal forwards;}
#sub-visual div.slogan p em {font-size: 40px; color: #ff7f00;}
@keyframes sub-text-show1 {
    0% {opacity: 0; transform: translate(0, -50px);}
    100% {opacity: 1; transform: translate(0, 0);}
}
@keyframes sub-text-show2 {
    0% {opacity: 0; transform: translate(0, 50px);}
    100% {opacity: 1; transform: translate(0, 0);}
}
body.sub #main {position: relative; min-height: 500px;}

#bread-crumb {border-bottom: 1px solid #e0e0e0; color: #999999;}
#bread-crumb ul {width: 1000px; margin: 0 auto; border-left: 1px solid #e0e0e0; border-right: 1px solid #e0e0e0; overflow: hidden; font-size: 16px;}
#bread-crumb ul li {float: left; position: relative;}
#bread-crumb ul li:first-child {border-right: 1px solid #e0e0e0; font-size: 18px; width: 120px; box-sizing: border-box; text-align: center;}
#bread-crumb ul li a,
#bread-crumb ul li em {display: block; line-height: 50px; padding: 0 25px; transition: all 0.3s;}
#bread-crumb ul li em {color: #666666;}
#bread-crumb ul li + li {margin-right: 10px;}
#bread-crumb ul li + li i {position: absolute; right: -10px; top: 50%; transform: translate(0, -50%); color: #aaaaaa;}
#bread-crumb ul li a:hover {color: #333333;}
#bread-crumb ul li:first-child a:hover {color: #ffffff; background: #a5d5e2;}


/* 인사말 */
body.greeting div.header {position: relative; margin-bottom: 50px;}
body.greeting div.header h3 {position: absolute; left: 20px; top: 20px; width: 250px; height: 250px; background: rgba(254, 152, 51, 0.8); color: #ffffff; font-size: 38px; line-height: 1em; box-sizing: border-box; padding: 130px 0 0 20px;}
body.greeting div.header h3 span {display: block; font-size: 20px; font-weight: 400;}
body.greeting div.header p.image {padding-top: 50px;}
body.greeting div.header p.image img {width: 100%;}
body.greeting div.text {font-size: 18px; text-align: center;}
body.greeting div.text p {margin: 20px 0;}
body.greeting div.text p em {font-weight: 700; color: #fe9833;}
body.greeting div.text p.strong {background: #fe9833; color: #ffffff; padding: 20px; width: 600px; margin: 0 auto; font-weight: 700;}


/* 찾아오시는 길 */
body.way #naver-map {height: 500px; overflow: hidden;}
body.way h3 {font-size: 28px; line-height: 46px; margin-top: 60px; margin-bottom: 40px; width: 220px; border-bottom: 2px solid #000000; background: url(/img/logo_icon.png) right center no-repeat;}
body.way ul.contact {overflow: hidden; font-size: 14px; color: #999999;}
body.way ul.contact li {float: left; width: 30%; position: relative; padding-left: 80px; padding-right: 30px; box-sizing: border-box;}
body.way ul.contact li + li {margin-left: 5%;}
body.way ul.contact li span.icon {position: absolute; left: 0; top: 0;}
body.way ul.contact li em.title {display: block; color: #333333; font-size: 20px; font-weight: 700; margin-bottom: 5px;}
body.way ul.contact li p span {display: block;}


/* 판매제품 */
section h3 {font-size: 24px; margin-bottom: 30px;}
section.product-info {overflow: hidden;}
section.product-info > div.spec {float: left; width: 60%;}
table.spec {width: 100%; border-top: 2px solid #ff7f00; border-bottom: 2px solid #e0e0e0; font-size: 13px;}
table.spec thead {background: #f9f9f9;}
table.spec tr.title {font-size: 16px;}
table.spec th,
table.spec td {border-bottom: 1px solid #e0e0e0; border-right: 1px solid #e0e0e0; text-align: center; padding: 8px 10px;}
table.spec th:last-child,
table.spec td:last-child {border-right: none;}
table.spec tbody th {background: #f9f9f9;}
section.product-info > div.image {float: right; width: 35%;}
section.product-info > div.image p.image + p.image {margin-top: 20px;}
section.product-info > div.image p.image img {width: 100%;}
section.product-info > div.image p.info {background: rgba(0, 0, 0, 0.5); color: #ffffff; box-sizing: border-box; padding: 20px; font-size: 15px;}
section.product-info > div.image p.info em {display: block; font-size: 18px; font-weight: 700;}


/* 철강가공센터 */
body.processing #main h3 {margin-top: 60px; border-bottom: 1px solid #e0e0e0;}
body.processing #main h2 + h3 {margin-top: 0;}
body.processing section.content {position: relative;}
body.processing a.link {position: absolute; left: 300px; top: 60px; font-size: 16px; background: #ff7f00; color: #ffffff; padding: 8px 30px;}
body.processing div.spec {overflow: hidden;}
body.processing div.spec ul.image {float: left; width: 59%; overflow: hidden; margin-right: 1%;}
body.processing div.spec ul.image li {float: left; width: 49%; overflow: hidden;}
body.processing div.spec ul.image li + li {margin-left: 2%;}
body.processing div.spec ul.image li img {width: 100%;}
body.processing div.spec table.spec {width: 40%;}
body.processing div.spec table.spec td {line-height: 26px;}
body.processing p.desc {font-size: 18px; margin-top: 20px;}
body.processing ul.process {overflow: hidden;}
body.processing ul.process li {float: left; width: 31%; margin-left: 3.5%; position: relative; margin-bottom: 30px;}
body.processing ul.process li:nth-child(3n-2) {margin-left: 0;}
body.processing ul.process li img {width: 100%;}
body.processing ul.process li em {position: absolute; left: 5px; top: 5px; width: 30px; line-height: 30px; border: 2px solid #ffffff; color: #ffffff; text-align: center; border-radius: 100px; background: rgba(0, 0, 0, 0.6); font-size: 16px;}
body.processing ul.process li span.desc {position: absolute; left: 0; bottom: 0; width: 100%; line-height: 40px; color: #ffffff; text-align: center; background: rgba(0, 88, 145, 0.7); font-size: 16px;}

/* 견적시스템 */
body.estimates h3 {margin-top: 50px;}
body.estimates table.estimates {margin-bottom: 10px;}
body.estimates p.desc {color: #ff0000; font-size: 16px; position: relative; top: -30px; width: 70%; padding-left: 20px; text-indent: -20px;}




/* 사이트맵 */
nav.sitemap > ul {overflow: hidden; font-size: 16px;}
nav.sitemap > ul > li {float: left; width: calc(20% - 8px); border-top: 1px solid #333333;}
nav.sitemap > ul > li + li {margin-left: 10px;}
nav.sitemap > ul > li > a {display: block; font-size: 18px; font-weight: 700; color: #000000; text-align: center; line-height: 50px; border-bottom: 2px solid #ff7f00; transition: all 0.3s;}
nav.sitemap > ul > li > a:hover {background: #ff7f00; color: #ffffff;}
nav.sitemap > ul > li > ul {margin-top: 2px;}
nav.sitemap > ul > li > ul > li {border-bottom: 1px solid #e0e0e0;}
nav.sitemap > ul > li > ul > li > a {display: block; line-height: 40px; padding-left: 15px; transition: all 0.3s;}
nav.sitemap > ul > li > ul > li > a:hover {background: #f9f9f9;}

/* module */
ul.product-list {text-align: center;}
ul.product-list li {position: relative; display: inline-block; width: 300px; text-align: center;}
ul.product-list li + li {margin-left: 100px;}
ul.product-list li > a {display: block; position: relative; overflow: hidden;}
ul.product-list li > a span.image img {width: 100%; transition: all 0.5s;}
ul.product-list li > a span.info {position: absolute; left: 0; bottom: 0; width: 100%; padding: 15px 0; background: rgba(29, 109, 146, 0.8); color: #ffffff; font-size: 18px; transition: all 0.3s; box-sizing: border-box; box-sizing: border-box;}
ul.product-list li > a span.info span {display: block; transition: all 0.3s;}
ul.product-list li > a:hover span.image img {transform: scale(1.2) rotate(2deg);}
ul.product-list li > a:hover span.name {font-size: 30px;}
ul.product-list li > a:hover span.price {font-size: 24px;}

div.board-search {text-align: right; font-size: 14px;}
div.board-search select {display: inline-block; vertical-align: middle; font: inherit; border: 1px solid #e0e0e0; height: 34px; box-sizing: border-box; padding-left: 12px; min-width:100px;}
div.board-search input[type=text] {display: inline-block; vertical-align: middle; font: inherit; border: 1px solid #e0e0e0; width: 240px; height: 34px; box-sizing: border-box; padding: 0 12px;}
div.board-search button[type=submit] {display: inline-block; vertical-align: middle; font: inherit; width: 100px; height: 34px; line-height: 34px; text-align: center; border: none; background: #ff7f00; color: #ffffff; cursor: pointer; box-sizing: border-box;}
div.board-search a {display: inline-block; vertical-align: middle; font: inherit; width: 100px; height: 34px; line-height: 34px; text-align: center; border: 1px solid #e0e0e0; cursor: pointer; box-sizing: border-box;}
::placeholder {color: #999999;}

table.board-list {width: 100%; font-size: 14px; border-top: 3px solid #4c4c4c; border-bottom: 2px solid #4c4c4c; margin: 20px 0;}
table.board-list tbody tr {transition: background 0.3s;}
table.board-list tbody tr:hover {background: #f9f9f9;}
table.board-list th,
table.board-list td {padding: 12px 15px; text-align: center;}
table.board-list thead {background: #f6f6f6;}
table.board-list tbody td {border-top: 1px solid #eeeeee;}
table.board-list tbody td.title {text-align: left; max-width: 1px;}
table.board-list tbody td.title a {display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color 0.3s;}
table.board-list tbody td.title a:hover {color: #ff7f00;}
table.board-list p.no-info i {color: #ffcc00; margin-right: 8px;}

div.board-view {font-size: 14px; border-top: 3px solid #4c4c4c; border-bottom: 1px solid #4c4c4c; margin: 30px 0;}
div.board-view p.title {font-size: 22px; padding: 20px 30px; font-weight: 700;}
div.board-view ul.info {color: #999999; font-size: 14px; padding: 10px 30px; border-top: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee;}
div.board-view ul.info li {display: inline-block;}
div.board-view ul.info li + li:before {content: '/'; margin: 0 40px;}
div.board-view ul.file-list {padding: 15px 30px;}
div.board-view div.content {border-top: 1px solid #4c4c4c; border-bottom: 1px solid #4c4c4c; padding: 40px 30px;}
div.board-view div.content img {max-width: 100%;}
div.board-view ul.siblings li {position: relative; padding: 0 160px 0 100px; line-height: 50px; color: #999999;}
div.board-view ul.siblings li + li {border-top: 1px solid #eeeeee;}
div.board-view ul.siblings li span.tag {position: absolute; left: 0; top: 0; width: 100px; text-align: center; color: #333333; background: #f6f6f6;}
div.board-view ul.siblings li span.tag i {margin-right: 6px;}
div.board-view ul.siblings li a {display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;transition: color 0.3s; padding-left: 30px;}
div.board-view ul.siblings li a:hover {color: #000000;}
div.board-view ul.siblings li span.date {position: absolute; right: 0; top: 0; width: 160px; text-align: center;}

div.pagination {text-align: center; margin-top: 15px;}
div.pagination > div.box {display: inline-block;}
div.pagination a {display: inline-block; min-width: 32px; height: 32px; padding: 0 5px; box-sizing: border-box; text-align: center; line-height: 30px; font-size: 13px; color: #8da0aa; vertical-align: middle; transition: all 0.2s; border: 1px solid #dfe8f1; border-right: none;}
div.pagination a:hover {background: rgba(0, 0, 0, 0.05); color: #000000;}
div.pagination a.disabled {color: #cccccc; cursor: default;}
div.pagination a.disabled:hover {background: inherit; color: #cccccc;}
div.pagination > div.box > a {float: left;}
div.pagination > div.box > a.first {border-top-left-radius: 3px; border-bottom-left-radius: 3px;}
div.pagination > div.box > a.last {border-right: 1px solid #dfe8f1; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
div.pagination ol {float: left;}
div.pagination ol > li {float: left;}
div.pagination ol > li.on > a {background: #ff7f00; color: #ffffff; border-right: 1px solid rgba(0, 0, 0, 0.2); border-color: rgba(0, 0, 0, 0.2); cursor: default;}

table.form {width: 100%; font-size: 14px; border-top: 3px solid #4c4c4c; border-bottom: 2px solid #4c4c4c; margin-bottom: 30px; background: rgba(255, 255, 255, 0.6);}
table.form thead {background: #f9f9f9;}
table.form thead th {line-height: 40px;}
table.form tfoot {background: #f9f9f9; font-size: 20px; color: #ff7f00;}
table.form td {padding: 8px 15px; border-top: 1px solid #eeeeee;}
table.form td.th {width: 100px; background: #f9f9f9; padding-left: 30px; font-weight: 700;}
table.form td.th span.required,
table.form td.th em {color: #ff0000; margin-left: 8px;}
table.form tr.no-info i {color: #ffcc00;}
table.form p.desc {font-size: 13px; color: #ff0000;}


.form input.text {display: inline-block; box-sizing: border-box; width: 200px; height: 34px; border: 1px solid #e0e0e0; padding: 0 10px; font: inherit; color: #666666; vertical-align: middle;}
.form input.phone {width: 80px;}
.form input.full {width: 100%;}
.form input.number {text-align: right;}
.form select {display: inline-block; box-sizing: border-box; height: 34px; border: 1px solid #e0e0e0; padding-left: 10px; font: inherit; color: #666666;}
.form textarea {display: block; box-sizing: border-box; width: 100%; height: 150px; border: 1px solid #e0e0e0; padding: 10px; font: inherit; color: #666666;}
.form input[type=radio],
.form input[type=checkbox] {margin: 0; vertical-align: middle;}
ul.input-list {overflow: hidden;}
ul.input-list li {float: left; margin-right: 50px; line-height: 34px;}
ul.input-list li label {margin-left: 10px;}
ul.input-list li a {font-size: 12px; color: #999999; margin-left: 10px;}
p.input label {margin-left: 10px;}

table.form.estimates {text-align: center; font-size: 16px;}
table.form.estimates th,
table.form.estimates td {padding-left: 3px; padding-right: 3px;}
table.form.estimates input {text-align: right;}
p.estimates-desc {font-size: 15px; text-indent: -10px; border: 1px solid #e0e0e0; border-radius: 10px; padding: 10px 10px 10px 20px; margin-bottom: 20px;}

div.button-box {text-align: center;}
div.button-box.right {text-align: right;}
.btn {position: relative; display: inline-block; vertical-align: middle; text-align: center; border: 1px solid #eeeeee; box-sizing: border-box; transition: all 0.3s; cursor: pointer;}
.btn.full {width: 100%;}
.btn.medium {min-width: 60px; height: 34px; line-height: 32px; font-size: 14px; padding: 0 10px;}
.btn.large {min-width: 200px; height: 50px; line-height: 48px; font-size: 20px; padding: 0 15px;}
.btn.white {border: 1px solid #ffc20f; background: #ffffff; color: #666666;}
.btn.white:hover {background: #ffc20f; color: #ffffff;}
.btn.green {border: 1px solid #ff7f00; background: #ff7f00; color: #ffffff;}
.btn.green:hover {background: #ff7f00; color: #ffffff;}
.btn.gray {border: 1px solid #aaaaaa; background: #ffffff; color: #aaaaaa;}
.btn.gray:hover {background: #aaaaaa; color: #ffffff;}
.btn.del {border-radius: 100%; width: 34px; height: 34px; min-width: 0;}
.btn.add {width: 150px;}
.btn.add i {margin-right: 10px;}
input + a.btn {width: 34px; height: 34px; line-height: 30px; font-size: 20px; border: none;}

p.no-content {text-align: center; border: 2px solid #e0e0e0; font-size: 30px; padding: 20px 0; margin-top: 100px; color: #ff0000;}
p.no-content i {color: #ffc20f; margin-right: 20px; font-size: 40px;}

ul.tab {overflow: hidden; margin-bottom: 50px;}
ul.tab li {float: left;}
ul.tab li + li {margin-left: 5px;}
ul.tab li a {display: block; border: 1px solid #e0e0e0; width: 160px; text-align: center; line-height: 40px; font-size: 16px;}
ul.tab li.on a {background: #ff7f00; color: #ffffff;}


/* file-list */
div.dino-file-list {margin: 5px 0;}
div.dino-file-list > ul {margin-bottom: 5px;}
div.dino-file-list > ul > li {position: relative; border: 1px solid #dfe8f1; border-radius: 3px; height: 30px; box-sizing: border-box; line-height: 28px; font-size: 12px; color: #8da0aa; transition: all 0.2s; overflow: hidden;}
div.dino-file-list > ul > li + li {margin-top: 3px;}
div.dino-file-list > ul > li > a {display: block; transition: background 0.2s, color 0.3s;}
div.dino-file-list > ul > li > a > i {position: absolute; right: 90px; top: -10px; font-size: 16px; color: #65a6ff; opacity: 0;}
div.dino-file-list > ul > li span.name {display: block; padding-left: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 200px;}
div.dino-file-list > ul > li span.name > i {color: #ffcc00; margin-right: 8px;}
div.dino-file-list > ul > li span.name > img {margin-right: 8px;}
div.dino-file-list > ul > li span.size {position: absolute; right: 10px; top: 50%; transform: translate(0, -50%); font-size: 11px; min-width: 60px; line-height: 20px; background: #ffcc00; color: #ffffff; text-align: center; border-radius: 3px; box-sizing: border-box; padding: 0 5px; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);}
div.dino-file-list > ul > li p.function {position: absolute; right: 90px; top: 50%; transform: translate(0, -50%); overflow: hidden;}
div.dino-file-list > ul > li p.function a {float: left; width: 25px; height: 25px; text-align: center; line-height: 24px; border-radius: 50px; overflow: hidden; box-sizing: border-box; background: rgba(0, 0, 0, 0.3); color: #ffffff; transform: scale(0); opacity: 0; transition: all 0.3s;}
div.dino-file-list > ul > li p.function a + a {margin-left: 3px;}
div.dino-file-list > ul > li p.function a span {position: absolute; left: -500px;}
div.dino-file-list > ul > li p.function a.delete {background: #e74c3c;}
div.dino-file-list > input[type=file].hidden {display: none;}
div.dino-file-list > ul > li:hover {box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.05);}
div.dino-file-list > ul > li:hover > .function a {transform: scale(1); opacity: 1;}
div.dino-file-list > ul > li > a:hover {color: #00bca4;}
div.dino-file-list > ul > li > a:hover > i {animation: download-file 0.5s ease-out 0s infinite normal forwards;}
div.dino-file-list > ul > li > a:active {background: rgba(0, 0, 0, 0.01);}
div.dino-file-list > ul > li > .function a:hover {background: rgba(0, 0, 0, 0.6);}
@keyframes download-file {
    0% {opacity: 0; top: -10px;}
    100% {opacity: 1; top: 30px;}
}

/* dino-image-list */
div.dino-image-list {margin: 5px 0;}
div.dino-image-list > ul {font-size: 12px;}
div.dino-image-list > ul > li {position: relative; display: inline-block; width: 200px; height: 190px; box-sizing: border-box; padding: 5px; border: 1px solid #dfe8f1; border-radius: 3px; vertical-align: top; line-height: 1.4em; margin-right: 3px; margin-bottom: 5px; overflow: hidden; background: #fafcfe; color: #8da0aa; transition: all 0.2s;}
div.dino-image-list ul > li > span.image {position: relative; display: block; height: calc(100% - 55px); box-sizing: border-box; border: 1px solid #dfe8f1; border-radius: 3px; overflow: hidden; background: #ffffff; text-align: center;}
div.dino-image-list ul > li > span.image > i {position: relative; top: 30%; color: #ffcc00; font-size: 48px; opacity: 0.6;}
div.dino-image-list ul > li > span.image > img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: 100%; max-height: 100%;}
div.dino-image-list ul > li > span.image > span.dimension {position: absolute; left: 0; bottom: -25px; width: 100%; line-height: 25px; background: rgba(0, 0, 0, 0.6); color: #ffffff; transition: bottom 0.3s;}
div.dino-image-list ul > li > span.info {position: relative; display: block; margin-top: 5px;}
div.dino-image-list ul > li > span.info span.name {display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
div.dino-image-list ul > li > span.info span.name > i {margin-right: 8px; color: #ffcc00;}
div.dino-image-list ul > li > span.info span.name > img {margin-right: 8px;}
div.dino-image-list ul > li > span.info span.size {position: absolute; left: 0; top: 28px; font-size: 11px; min-width: 60px; line-height: 20px; background: #ffcc00; color: #ffffff; text-align: center; border-radius: 3px; box-sizing: border-box; padding: 0 5px; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);}
div.dino-image-list ul > li > .function a {position: absolute; width: 25px; height: 25px; text-align: center; line-height: 23px; border-radius: 50px; overflow: hidden; box-sizing: border-box; background: rgba(0, 0, 0, 0.3); color: #ffffff; transform: scale(0); opacity: 0; transition: all 0.3s;}
div.dino-image-list ul > li > .function a span {position: absolute; left: -500px;}
div.dino-image-list ul > li > .function a.prev {left: 10px; top: 10px;}
div.dino-image-list ul > li > .function a.next {right: 10px; top: 10px;}
div.dino-image-list ul > li > .function a.original {width: 34px; height: 34px; line-height: 32px; top: 25%; left: 30%; transform: scale(0); font-size: 16px;}
div.dino-image-list ul > li > .function a.download {width: 34px; height: 34px; line-height: 32px; top: 25%; right: 30%; transform: scale(0); font-size: 16px;}
div.dino-image-list ul > li > .function a.delete {right: 5px; bottom: 5px; background: #e74c3c;}
div.dino-image-list > input[type=file].hidden {display: none;}
div.dino-image-list > ul > li:hover {box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.05);}
div.dino-image-list ul > li:hover > span.image > span.dimension {bottom: 0;}
div.dino-image-list ul > li:hover > .function a {transform: scale(1); opacity: 1;}
div.dino-image-list ul > li > .function a:hover {background: rgba(0, 0, 0, 0.6);}
div.dino-image-list ul > li > .function a.delete:hover {background: #e74c3c;}


/*
#lnb {overflow: hidden; margin-bottom: 50px;}
#lnb li {float: left; width: 180px; box-sizing: border-box; border: 1px solid #e0e0e0; text-align: center; font-size: 16px; border-right: none;}
#lnb.full li {width: 12.5%;}
#lnb li:last-child {border-right: 1px solid #e0e0e0;}
#lnb li a {display: block; text-align: center; line-height: 50px; position: relative; transition: all 0.3s;}
#lnb li a:after {content: ''; position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 0); width: 0; height: 3px; background: #ffc20f; transition: width 0.3s;}
#lnb li a:hover:after {width: 100%;}
#lnb li.on {font-size: 18px; color: #ffffff; background: #ffc20f; border-right: 1px solid #e0e0e0;}
#lnb li.on + li {border-left: none;}
*/


/* main-popup */
#main-popup {position: fixed; left: 50px; top: 50px; width: 500px; background: #ffffff; z-index: 100000; box-sizing: border-box; padding: 50px 0 30px 0; box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.5); overflow: hidden; display: none;}
#main-popup div.header {position: absolute; left: 0; top: 0; width: 100%; height: 50px; background: #ff7f00; color: #ffffff; overflow: hidden;}
#main-popup div.header p.logo {position: absolute; left: 20px; top: 50%; transform: translate(0, -50%);}
#main-popup div.header p.logo img {width: 80px;}
#main-popup div.header h3 {line-height: 50px; text-align: center; font-size: 20px; font-weight: 400;}
#main-popup div.header a.close {position: absolute; width: 50px; line-height: 50px; right: 0; top: 0; text-align: center; font-size: 20px;}
#main-popup div.body {position: relative; height: 100%; overflow: auto; box-sizing: border-box; padding: 30px 20px 50px 20px; max-height: 700px; line-height: 1.5em;}
#main-popup div.body img {max-width: 100%;}
#main-popup div.footer {position: absolute; left: 0; bottom: 0; width: 100%; height: 30px; background: #ff7f00; color: #ffffff;}
#main-popup div.footer p.copyright {line-height: 30px; font-size: 11px; padding-left: 20px;}
#main-popup div.footer p.check {position: absolute; right: 20px; top: 0; line-height: 30px; font-size: 13px;}
#main-popup div.footer p.check input {vertical-align: middle;}
#main-popup div.footer p.check label {vertical-align: middle; padding-left: 5px;}
#main-popup div.footer a.close {display: inline-block; vertical-align: middle; width: 50px; line-height: 20px; border: 1px solid #ffffff; padding: 0 10px; text-align: center; margin-left: 10px; transition: all 0.3s;}
#main-popup div.footer a.close:hover {color: #ff7f00; background: #ffffff;}

/* popup */
#popup-wrapper {height: 100vh; padding: 60px 0 30px 0; box-sizing: border-box; overflow: hidden; background: #ffffff;}
#popup-header {position: fixed; left: 0; top: 0; width: 100%; height: 60px; background: #ff7f00; z-index: 10000; color: #ffffff;}
#popup-header h1 {position: absolute; left: 30px; top: 50%; transform: translate(0, -50%); font-size: 24px;}
#popup-header a.close {position: absolute; right: 30px; top: 50%; transform: translate(0, -50%); font-size: 30px;}
#popup-main {height: 100%; box-sizing: border-box; overflow: auto; padding: 20px 20px 50px 20px;}
#popup-main section.layout {margin: 10px 0;}
#popup-footer {position: fixed; left: 0; bottom: 0; width: 100%; height: 30px; background: #ff7f00; z-index: 10000; color: #ffffff; font-size: 12px;}
#popup-footer p.copyright{line-height: 30px; margin-left: 30px;}
#popup-footer img.logo {height: 24px; position: absolute; right: 30px; top: 50%; transform: translate(0, -50%);}

div.regulation {font-size: 13px; border: 2px solid #e0e0e0; padding: 20px;}
div.regulation h2 {font-size: 20px; margin: 40px 0 10px 0;}
div.regulation h2:nth-child(1) {margin-top: 0;}
div.regulation h3 {font-size: 18px; margin: 25px 0 10px 0;}
div.regulation ul.list li {padding-left: 20px; text-indent: -20px;}
div.regulation ul.list ul li {padding-left: 20px; text-indent: -20px;}








/*
animation 축약 표현
animation: main-bg-animation 3s ease-out 0.1s 1 normal forwards running;
animation: name duration timing-function delay iteration-count direction fill-mode play-state
duration: 0(default), time, initial, inherit
timing-function: ease(default), linear, ease-in, ease-out, ease-in-out, step-start, step-end, steps(int, start|end), cubic-bezier(n, n, n, n), initial, inherit
deley: 0s(default), time, initial, inherit
direction: normal(default), reverse, alternate, alternate-reverse, initial, inherit
iteration-count: 1(default), number, infinite, initial, inherit
fill-mode: none(default), forwards, backwards, both, initial, inherit
play-state: running(default), paused, initial, inherit  (IE에서는 축약표현에 포함시 동작하지 않음, 별도로 사용)

[최종 사용 예시]
animation: main-bg-animation 3s ease-out 0s 1 normal forwards;
animation-play-state: running;
*/