@charset "utf-8";
/* CSS Document */

/* web font */

/* reset */
html {-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; text-size-adjust: 100%;}
body {margin: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display: block;}
h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd {margin: 0; padding: 0;}
h1, h2, h3, h4, h5, h6 {font-weight: 700;}
a {color: inherit; text-decoration: inherit;}
img {vertical-align: middle; max-width: 100%;}
a img {border: none;}
li {list-style: none;}
address, em, i {font-style: normal;}
table {border-collapse: collapse;}
table caption {overflow: hidden; width: 0; height: 0; text-indent: -9999px;}
span.fontawesome {display: inline-block; vertical-align: middle;}
iframe.hidden {position: absolute; left: -9999px;}
.pc {display: none !important;}
br.only-pc {content: '';}
br.only-pc: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: 12px; color: #3b3b3d; background: #ffffff;}
#wrapper {position: relative; overflow: hidden; max-width: 850px; margin: 0 auto; box-sizing: border-box; min-width: 320px; min-height: 100vh;}
#skip-nav {position: fixed; left: 0; top: -41px; width: 100%; line-height: 40px; font-size: 16px; text-align: center; background: rgba(0, 0, 0, 0.4); color: #ffffff; border-bottom: rgba(255, 255, 255, 0.8); z-index: 100000; transition: top 0.3s;}
#skip-nav:focus {top: 0;}

#header {position: fixed; left: 0; top: 0; width: 100%; height: 60px; background-image: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.2)); color: #ffffff; z-index: 10000; transition: all 0.3s; box-sizing: border-box;}
#header:after {content: ''; position: absolute; left: 0; bottom: 0; width: 0; height: 1px; animation: header-line 3s linear 0.5s 1 normal forwards;}
#header.white {background: #ffffff; color: #333333; box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.1); border-bottom: 1px solid #e0e0e0;}
#header h1 {position: absolute; left: 15px; top: 50%; width: 80px; line-height: 1em; transform: translate(0, -50%);}
#header h1 a {display: block;}
#header h1 img {width: 100%; transition: opacity 0.3s;}
#header h1 img + img {position: absolute; left: 0; bottom: 0; opacity: 0;}
#header.white h1 img {opacity: 0;}
#header.white h1 img + img {opacity: 1;}
@keyframes header-line {
    0% {width: 0; background: rgba(255, 255, 255, 0.1);}
    50% {width: 50%; background: rgba(255, 255, 255, 0.8);}
    100% {width: 100%; background: rgba(255, 255, 255, 0.3);}
}
#header a.menu {position: absolute; right: 15px; top: 50%; transform: translate(0, -50%); width: 34px; height: 24px;}
#header a.menu:before {content: ''; position: absolute; width: 100%; height: 2px; right: 0; top: 0; background: #ffffff; transform-origin: right top; transition: all 0.5s;}
#header a.menu span {position: absolute; width: 60%; height: 2px; right: 0; top: 50%; transform: translate(0, -50%); background: #ffffff; overflow: hidden; text-indent: -999px; transition: all 0.5s;}
#header a.menu:after {content: ''; position: absolute; width: 100%; height: 2px; right: 0; bottom: 0; background: #ffffff; transform-origin: right bottom; transition: all 0.5s;}
#header.white a.menu:before,
#header.white a.menu span,
#header.white a.menu:after {background: #666666;}
#header a.menu.open:before {transform: rotate(-36deg); width: 110%;}
#header a.menu.open span {opacity: 0;}
#header a.menu.open:after {transform: rotate(36deg); width: 110%;}

#gnb {position: fixed; right: -100%; top: 60px; width: 100%; height: calc(100% - 100px); box-sizing: border-box; background: #3c3c45; color: #ffffff; font-size: 14px; padding: 30px 30px 100px 30px; overflow: auto; z-index: 10000; transition: right 0.5s;}
#gnb.open {right: 0;}
#gnb > ul > li > a {display: block; position: relative; font-size: 16px; font-weight: 700; line-height: 44px; border-bottom: 2px solid #77777d;}
#gnb > ul > li.on > a {border-bottom-color: #ed1c24; color: #ed1c24;}
#gnb > ul > li > a i {position: absolute; right: 5px; top: 50%; transform: translate(0, -50%);}
#gnb > ul > li > ul {overflow: hidden; height: 0; transition: height 0.3s;}
#gnb > ul > li > ul > li {padding-left: 20px;}
#gnb > ul > li > ul > li:last-child {border-bottom: 2px solid #77777d;}
#gnb > ul > li > ul > li + li a {border-top: 1px solid #67676e;}
#gnb > ul > li > ul > li > a {position: relative; display: block; line-height: 40px;}
#gnb > ul > li > ul > li.on > a {color: #ed1c24;}
#gnb > ul > li > ul > li.on > a:after {content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #ed1c24;}
#gnb > ul > li > ul > li > a i {position: absolute; right: 10px; top: 50%; transform: translate(0, -50%); opacity: 0.5;}

#top-menu {position: fixed; right: -100%; bottom: 0; width: 100%; height: 40px; background: #3c3c45; color: #ffffff; z-index: 10000; text-align: center; transition: right 0.5s;}
#top-menu.open {right: 0;}
#top-menu li {display: inline-block;}
#top-menu li + li {margin-left: 10px;}
#top-menu li a {display: block; line-height: 30px; width: 100px; border: 1px solid #ed1c24;}
#top-menu li a i {margin-right: 8px;}

#footer {background: #f6f6f6; position: relative; padding: 20px 15px 50px 15px; font-size: 12px; color: #999999; border-top: 1px solid #eeeeee;}
#footer h2 {width: 100px; margin-bottom: 20px;}
#footer address {overflow: hidden;}
#footer address span.address {display: block;}
#footer address span.reg-num:before,
#footer address span.fax:before {content: '|'; margin: 0 10px; font-size: 9px; position: relative; top: -2px;}
#footer address span.reg-num:after {content: ''; display: block;}
#footer address span.email {display: block;}
#footer p.copyright {margin-top: 10px;}
#footer p.copyright em {font-weight: 700;}
#footer ul.sns-link {position: absolute; right: 15px; top: 25px;}
#footer ul.sns-link li {float: left;}
#footer ul.sns-link li + li {margin-left: 10px;}
#footer ul.sns-link li a {display: block; width: 30px;}


/* main */
#main-visual-mobile {position: relative; height: 500px;}
#main-visual-mobile ul.slide {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#main-visual-mobile ul.slide li {position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: hidden;}
#main-visual-mobile ul.slide li div.visual {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
#main-visual-mobile ul.slide li div.visual img {position: absolute; left: 50%; top: 0; transform: translate(-50%, 0); max-width: none; height: 100%;}
#main-visual-mobile ul.slide li div.slogan {position: absolute; left: 0; top: 50%; transform: translate(0, -50%); width: 100%; box-sizing: border-box; padding: 0 50px; font-size: 30px; color: #ffffff; font-weight: 700; text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6);}
#main-visual-mobile ul.slide li div.slogan span {display: block; font-size: 16px; font-weight: 400; margin-bottom: 10px; opacity: 0;}
#main-visual-mobile ul.slide li div.slogan p {line-height: 1.4em; opacity: 0;}
#main-visual-mobile ul.slide li div.slogan p em {font-size: 40px; color: #ed1c24;}
#main-visual-mobile div.indicator {position: absolute; left: 0; bottom: 20px; width: 100%; text-align: center; z-index: 100;}
#main-visual-mobile div.indicator ul {display: inline-block; vertical-align: top;}
#main-visual-mobile div.indicator ul li {display: inline-block; position: relative;}
#main-visual-mobile div.indicator ul li + li {margin-left: 10px;}
#main-visual-mobile 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-mobile div.indicator ul li.on a {width: 50px; border: 2px solid #ffffff; background: none;}
#main-visual-mobile 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: #ed1c24;}
#main-visual-mobile div.indicator a.play {color: #ffffff; margin-left: 20px; vertical-align: top; position: relative; top: -2px; font-size: 16px;}
#main-visual-mobile div.indicator a.play i {display: none;}
#main-visual-mobile div.indicator a.play i:first-child {display: inline;}
#main-visual-mobile div.indicator a.play.on i {display: none;}
#main-visual-mobile div.indicator a.play.on i + i {display: inline;}

#main-visual-mobile ul.slide li.show div.slogan span {animation: main-text-show1 1s ease-out 0s 1 normal forwards;}
#main-visual-mobile ul.slide li.show div.slogan p {animation: main-text-show2 1s ease-out 0.5s 1 normal forwards;}
#main-visual-mobile ul.slide li.hide div.slogan span {animation: main-text-hide1 1s ease-out 0s 1 normal forwards;}
#main-visual-mobile ul.slide li.hide div.slogan p {animation: main-text-hide2 1s ease-out 0s 1 normal forwards;}

#main-visual-mobile p.control a.prev,
#main-visual-mobile p.control a.next {position: absolute; top: 50%; transform: translate(0, -50%); z-index: 100; opacity: 0.5; transition: opacity 0.3s; width: 20px;}
#main-visual-mobile p.control a.prev:hover,
#main-visual-mobile p.control a.next:hover {opacity: 1;}
#main-visual-mobile p.control a.prev {left: 10px;}
#main-visual-mobile p.control a.next {right: 10px;}

/* animation */
@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);}
}


body.main #main > section.scroll-page {padding: 50px 15px 60px 15px;}
body.main #main > section.scroll-page h2 {font-size: 26px; font-weight: 700; margin-bottom: 30px;}
body.main #main > section.scroll-page h2.center {text-align: center;}
body.main #main > section.scroll-page h2 span {display: block; font-size: 16px; color: #ed1c24; font-weight: 400;}
body.main #main > section.scroll-page h2 span em {font-weight: 700;}

#main-product div.product-banner {position: relative;}
#main-product ul.product-list {position: relative; width: 1200px;}
#main-product ul.product-list:after {content: ''; display: block; clear: both;}
#main-product ul.product-list li {float: left; width: 18%; position: relative; margin-right: 2.5%;}
#main-product ul.product-list li:last-child {margin-right: 0;}
#main-product ul.product-list li > a {display: block; text-align: center;}
#main-product ul.product-list li > a > * {display: block; position: relative;}
#main-product ul.product-list li > a span.image {height: 350px; overflow: hidden;}
#main-product ul.product-list li > a span.image img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); min-width: 100%; min-height: 100%;}
#main-product ul.product-list li > a em.title {font-size: 16px; font-weight: 700; margin: 20px 0 5px 0;}
#main-product ul.product-list li > a span.desc {font-size: 12px; color: #666666; margin-bottom: 10px;}
#main-product ul.product-list li > a span.button {display: inline-block; border: 1px solid #ed1c24; color: #ed1c24; font-size: 14px; width: 120px; line-height: 30px;}
#main-product ul.product-list li > a span.button i {margin-left: 8px;}
#main-product div.product-banner p.control a.prev,
#main-product div.product-banner p.control a.next {position: absolute; top: 50%; transform: translate(0, -50%); width: 30px; z-index: 100;}
#main-product div.product-banner p.control a.prev {left: 0;}
#main-product div.product-banner p.control a.next {right: 0;}

#main-portfolio {background: url(/img/main_portfolio_bg.jpg) center center no-repeat; background-size: cover;}
#main-portfolio div.banner-slide {position: relative; margin-top: 30px;}
#main-portfolio div.banner-slide ul.banner {position: relative; overflow: hidden; width: 10000px;}
#main-portfolio div.banner-slide ul.banner li {float: left; width: 280px; position: relative; margin-right: 50px;}
#main-portfolio div.banner-slide ul.banner li:last-child {margin-right: 0;}
#main-portfolio div.banner-slide ul.banner li a {display: block;}
#main-portfolio div.banner-slide ul.banner li a img {width: 100%; position: relative;}
#main-portfolio div.banner-slide ul.banner li a em {position: absolute; left: 20px; bottom: 20px; font-size: 20px; color: #ffffff; text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.8); z-index: 20;}
#main-portfolio div.banner-slide p.control a.prev,
#main-portfolio div.banner-slide p.control a.next {position: absolute; top: 50%; transform: translate(0, -50%); width: 30px; z-index: 100;}
#main-portfolio div.banner-slide p.control a.prev {left: 0;}
#main-portfolio div.banner-slide p.control a.next {right: 0;}

#main-customer div.image img {width: 100%;}

#main-inquiry {background: url(/img/main_inquiry_bg.jpg) center center no-repeat; background-size: cover;}
#main-inquiry ul.inquiry li {height: 140px; background: #ffffff; border: 2px solid #ed1c24; box-sizing: border-box; position: relative;}
#main-inquiry ul.inquiry li + li {margin-top: 20px;}
#main-inquiry ul.inquiry li a {position: absolute; left: 0; top: 0; width: 100%; height: 100%; box-sizing: border-box; padding: 0 20px 0 100px; overflow: hidden;}
#main-inquiry ul.inquiry li a > * {display: block;}
#main-inquiry ul.inquiry li span.icon {position: absolute; left: 20px; top: 50%; transform: translate(0, -50%); width: 60px;}
#main-inquiry ul.inquiry li em.title {font-size: 18px; font-weight: 700; margin-top: 30px; margin-bottom: 5px;}
#main-inquiry ul.inquiry li span.desc {font-size: 13px; color: #666666; line-height: 1.4em;}
#main-inquiry p.inquiry {text-align: center; font-size: 20px; margin-top: 30px;}
#main-inquiry p.inquiry span {display: inline-block; border-bottom: 2px solid #333333; padding-bottom: 5px;}



/* sub(common) */
#sub-visual {position: relative; height: 200px; overflow: hidden;}
#sub-visual p.bg img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: none; min-width: 100%; height: 100%;}
#sub-visual div.slogan {position: absolute; left: 20px; bottom: 40px; color: #ffffff; text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.6); box-sizing: border-box;}
#sub-visual div.slogan span {display: block; font-size: 14px; opacity: 0; animation: sub-text-show1 2s ease-out 0s 1 normal forwards;}
#sub-visual div.slogan p {font-size: 22px; font-weight: 700; 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: 26px; color: #ed1c24;}
@keyframes sub-text-show1 {
    0% {opacity: 0; transform: translate(0, -30px);}
    100% {opacity: 1; transform: translate(0, 0);}
}
@keyframes sub-text-show2 {
    0% {opacity: 0; transform: translate(0, 30px);}
    100% {opacity: 1; transform: translate(0, 0);}
}
#bread-crumb {position: relative; background: #ffffff; color: #aaaaaa; box-sizing: border-box;}
#bread-crumb ul {border-bottom: 1px solid #e0e0e0; overflow: hidden; font-size: 13px;}
#bread-crumb ul li {float: left; position: relative;}
#bread-crumb ul li:first-child {border-right: 1px solid #e0e0e0; font-size: 14px; width: 50px; text-align: center;}
#bread-crumb ul li a,
#bread-crumb ul li em {display: block; line-height: 36px; padding: 0 10px; transition: all 0.3s;}
#bread-crumb ul li em {color: #333333;}
#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: #ed1c24;}

body.sub #main > section.content {padding: 30px 15px 50px 15px;}
body.sub #main h2 {font-size: 24px; margin-bottom: 30px;}
body.sub #main h2 span {display: block; font-weight: 400; font-size: 14px; color: #999999;}
body.sub section.content p.center {text-align: center;}

#lnb {display: table; width: 100%; border-collapse: collapse; table-layout: fixed; margin-bottom: 10px;}
#lnb li {display: table-cell; border: 1px solid #e0e0e0; text-align: center; font-size: 13px; max-width: 1px;}
#lnb li a {display: block; text-align: center; line-height: 40px; position: relative; transition: all 0.3s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#lnb li.on a {background: #ed1c24; color: #ffffff; font-size: 14px;}

body.sub #main div.image.full {margin: 30px 0;}
body.sub #main div.image.full img {width: 100%;}
body.sub #main p.paragraph {font-size: 14px; margin: 20px 0;}
body.sub #main p.paragraph em {font-weight: 700; font-size: 15px;}


/* folzen */
body.history div.title {position: relative; background: url(/img/folzen_history_img_01.jpg) center center no-repeat; background-size: cover; padding: 20px; color: #ffffff; text-align: center;}
body.history div.title div.text {background: rgba(0, 0, 0, 0.7); padding: 15px 10px;}
body.history div.title div.text p.title {font-size: 15px; margin-bottom: 10px; font-weight: 700;}
body.history div.title div.text p.text {font-size: 14px;}

div.history {position: relative; overflow: hidden; overflow: hidden; font-size: 14px;}
div.history > div.year h3 {position: relative; font-size: 24px; color: #fbc40d; margin-top: 30px; margin-bottom: 10px;}
div.history > div.year ul li {position: relative;}
div.history > div.year ul li + li {margin-top: 10px;}
div.history > div.year ul li em {display: block; position: relative; font-weight: 700; font-size: 16px; padding-left: 15px;}
div.history > div.year ul li em:after {content: ''; position: absolute; left: 0; top: 10px; width: 5px; height: 5px; background: #fbc40d;}
div.history > div.year ul li p {padding-left: 15px;}
div.history > div.year ul li p span.desc {display: block; color: #999999; padding-left: 8px; text-indent: -8px; font-size: 13px;}

body.zenfolding.cert h3 {font-size: 18px; padding-bottom: 5px; border-bottom: 2px solid #656565; margin-bottom: 20px;}
ul.cert:after {content: ''; display: block; clear: both;}
ul.cert li {float: left; width: 30%; margin-right: 5%; margin-bottom: 40px; position: relative;}
ul.cert li:nth-child(3n) {margin-right: 0;}
ul.cert li > a {display: block;}
ul.cert li span.image {display: block; border: 1px solid #eeeeee; box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1); margin-bottom: 20px;}
ul.cert li span.image img {width: 100%;}
ul.cert li em.title {position: relative; display: block; font-size: 16px; margin-bottom: 5px; padding-top: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
ul.cert li em.title:before {content: ''; position: absolute; left: 0; top: 0; width: 30px; height: 3px; background: #000000;}
ul.cert li p {font-size: 12px; color: #999999;}
ul.cert li p span {display: block;}
ul.cert > li.no-info {text-align: center; border: 1px solid #e0e0e0; width: 100%; padding: 30px 0;}
ul.cert > li.no-info i {display: block; font-size: 60px; color: #ed1c24; margin-bottom: 20px;}
@media screen and (min-width: 600px) {
    ul.cert li {width: 22%; margin-right: 4%;}
    ul.cert li:nth-child(3n) {margin-right: 4%;}
    ul.cert li:nth-child(4n) {margin-right: 0;}
}

body.view p.text {margin-top: 30px;}
body.view p.text img {width: 100%;}

body.way p.title {font-size: 16px; margin-bottom: 20px;}
body.way #google-map {height: 400px; overflow: hidden;}
body.way h3 {font-size: 20px; line-height: 40px; margin-top: 40px; margin-bottom: 30px; width: 140px; border-bottom: 2px solid #000000; background: url(/img/folzen_way_bg.png) right center no-repeat; background-size: 50px auto;}
body.way ul.contact {overflow: hidden; font-size: 13px; color: #999999;}
body.way ul.contact li {position: relative; padding-left: 70px; box-sizing: border-box; min-height: 50px; margin-bottom: 20px;}
body.way ul.contact li span.icon {position: absolute; left: 0; top: 0; width: 50px;}
body.way ul.contact li em.title {display: block; color: #333333; font-size: 16px; font-weight: 700;}
body.way ul.contact li p span {display: block;}
@media screen and (min-width: 600px) {
    body.way ul.contact li {float: left; width: 50%;}
}

/* product */
section.image {overflow: hidden; border-bottom: 1px solid #e0e0e0; padding-bottom: 50px;}
section.image > div.right p.desc {font-size: 14px; margin: 20px 0;}
section.image > div.right ul.link {overflow: hidden;}
section.image > div.right ul.link li {float: left; width: 48%;}
section.image > div.right ul.link li + li {margin-left: 4%;}
section.image > div.right ul.link li a {display: block; line-height: 50px; text-align: center; font-size: 16px; background: #ffffff; border: 1px solid #e0e0e0; border-radius: 3px; color: #666666;}
section.detail {padding: 50px 0; border-bottom: 1px solid #e0e0e0;}
section.detail h3 {font-size: 24px; text-align: center; margin-bottom: 20px;}
section.drawing {padding: 50px 0;}
section.drawing h3 {font-size: 24px; text-align: center; margin-bottom: 20px;}
section.drawing div.drawing {text-align: center; border: 3px solid #e0e0e0;}
section.drawing div.drawing img {width: 100%;}


/* pr */
body.pr.video div.youtube-container + div.youtube-container {display: none;}
body.pr.customer p.image {padding: 0 20px;}
body.pr.customer p.image img {width: 100%;}
body.pr.customer ul.customer {font-size: 14px; margin: 50px 0; padding: 0 10px;}
body.pr.customer ul.customer li + li {margin-top: 30px;}
body.pr.customer ul.customer li em {display: block; font-size: 16px; font-weight: 700; margin-bottom: 10px;}
body.pr.customer ul.customer li em img {width: 45px; vertical-align: bottom; margin-right: 15px;}


/* portfolio */
div.multi-image {overflow: hidden;}
div.multi-image > div.right {margin: 20px 0;}
div.multi-image > div.right p {font-size: 14px; margin-bottom: 20px; line-height: 1.5em;}


/* data */
body.data.open h3 {font-size: 18px; padding-bottom: 5px; border-bottom: 2px solid #656565; margin-bottom: 20px;}
body.data.open ul.door + h3 {margin-top: 30px;}
body.data.open ul.door {overflow: hidden;}
body.data.open ul.door li {float: left; margin-right: 20px; margin-bottom: 20px;}
body.data.open ul.door li span img {height: 150px;}
body.data.open ul.door li em {display: block; font-size: 14px; font-weight: 700; margin-top: 5px;}

body.color h3 {font-size: 18px; margin-bottom: 10px; margin-top: 30px;}
body.color p.title {font-size: 13px; margin-bottom: 20px; color: #ff0000; padding: 15px; text-indent: -15px;}
ul.color-list {overflow: hidden; font-size: 13px; color: #999999; display: none;}
p.title + ul.color-list {display: block;}
ul.color-list li {float: left; width: 50%; height: 50px; position: relative; box-sizing: border-box; margin-bottom: 20px; padding-left: 65px; padding-right: 10px;}
ul.color-list li:before {content: ''; position: absolute; left: 0; top: 10%; width: 1px; height: 60%; background: #eeeeee;}
ul.color-list li span.image {position: absolute; left: 10px; top: 0; width: 40px;}
ul.color-list li span.code {display: block; margin-bottom: 2px;}
ul.color-list li span.code span:first-child {margin-right: 20px;}
ul.color-list li em.name {display: block; font-weight: 700; color: #333333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
@media screen and (min-width: 600px) {
    ul.color-list li {width: 33.3%;}
}
body.color p.caution {font-size: 13px; color: #ff0000; padding: 8px; text-indent: -8px;}
table.list {width: 100%; font-size: 13px; border-top: 2px solid #4c4c4c; border-bottom: 1px solid #4c4c4c; margin: 20px 0;}
table.list colgroup {display: none;}
table.list th,
table.list td {padding: 6px 10px; text-align: center;}
table.list thead {background: #f6f6f6;}
table.list tbody td {border-top: 1px solid #eeeeee;}
table.list tbody td.title {text-align: left; max-width: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
table.list tbody td a {font-size: 18px; transition: color 0.3s;}
table.list tr > *:nth-child(2) {display: none;}
table.list tr > *:nth-child(1) {width: 30px;}
table.list tr > *:nth-child(4) {width: 50px;}

body.data ul.spec {overflow: hidden; text-align: center; margin-top: 60px;}
body.data ul.spec li {float: left; width: 48%; background: #ffffff; border: 2px solid #ed1c24; box-sizing: border-box; vertical-align: top; position: relative;}
body.data ul.spec li + li {margin-left: 4%;}
body.data ul.spec li a {display: block; padding: 20px 0;}
body.data ul.spec li a > * {display: block; position: relative;}
body.data ul.spec li a span.icon {font-size: 60px; color: #999999;} 
body.data ul.spec li em.title {font-size: 20px; font-weight: 700; margin: 10px 0 8px 0;}


/* test (시험성적서) */
body.test h3 {font-size: 18px; padding-bottom: 5px; border-bottom: 2px solid #656565; margin-bottom: 20px;}



/* common, etc */
body.support #main {background: url(/img/common_support_bg.jpg) center center no-repeat; background-size: cover;}
body.support p.title {font-size: 16px; margin-bottom: 20px;}
body.support h3 {font-size: 20px; margin-top: 50px; margin-bottom: 20px;}
body.support ul.contact {font-size: 13px;}
body.support ul.contact li + li {margin-top: 10px;}
body.support ul.contact li em {display: block; font-size: 16px; font-weight: 700;}
@media screen and (max-width: 1200px) {
    body.support ul.input-list li {margin-right: 20px;}
}







/* module */
div.image-slide {position: relative; background: #ffffff;}
div.image-slide div.slide {position: relative; overflow: hidden;}
div.image-slide div.slide p.dummy {opacity: 0;}
div.image-slide div.slide ul.slide {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
div.image-slide div.slide ul.slide li {position: absolute; left: 0; top: 0; width: 100%; height: 100%; text-align: center; display: none;}
div.image-slide div.slide ul.slide li:first-child {display: block;}
div.image-slide div.slide ul.slide li img {max-width: 100%; max-height: 100%;}
div.image-slide div.slide p.control a {position: absolute; top: 0; width: 40px; height: 100%; color: rgba(255, 255, 255, 0.3); font-size: 24px; transition: all 0.3s;}
div.image-slide div.slide p.control a:hover {background: rgba(0, 0, 0, 0.2); color: rgba(255, 255, 255, 0.9);}
div.image-slide div.slide p.control a.prev {left: 0;}
div.image-slide div.slide p.control a.next {right: 0;}
div.image-slide div.slide p.control a i {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
div.image-slide div.slide p.control span.page {position: absolute; right: 15px; bottom: 15px; font-size: 14px; color: #ffffff; text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.8);}
div.image-slide div.slide p.control span.page em.now {color: #ed1c24; font-size: 16px; font-weight: 700;}
div.image-slide div.thumb {display: none;}

table.detail {display: block; font-size: 14px; border-top: 3px solid #524d53; color: #707070; margin-bottom: 30px; border-bottom: 1px solid #eeeeee;}
table.detail tbody {display: block;}
table.detail tr {display: block; position: relative; padding-left: 100px;}
table.detail td {display: block; padding: 12px 10px; border-bottom: 1px solid #eeeeee; box-sizing: border-box;}
table.detail td.th {position: absolute; left: 0; padding: 3px 10px; background: #f6f6f6; text-align: center; font-weight: 700; color: #333333; width: 100px; box-sizing: border-box; border: 1px solid #eeeeee;}
table.detail tr:last-child td:last-child {border-bottom: none;}

ul.product-detail {overflow: hidden;}
ul.product-detail li {float: left; width: 48%; min-height: 350px; box-sizing: border-box; border: 1px solid #eeeeee; overflow: hidden; margin-right: 4%; margin-bottom: 20px; padding-bottom: 10px; box-sizing: border-box;}
ul.product-detail li:nth-child(2n) {margin-right: 0;}
ul.product-detail li > * {display: block; text-align: center;}
ul.product-detail li span.image img {width: 100%;}
ul.product-detail li em.title {margin: 10px 0; font-size: 18px; font-weight: 700;}
ul.product-detail li p.desc {padding: 0 10px; color: #707070;}

ul.product-detail.center {text-align: center;}
ul.product-detail.center li {float: none; display: inline-block;  min-height: 0; width: 45%;}
ul.product-detail.center li em.title {font-size: 16px;}
body.wood ul.product-detail.center li {width: 80%;}

div.board-search {display: none;}
table.board-list {display: block; border-top: 2px solid #4c4c4c; font-size: 13px; margin: 20px 0;}
table.board-list thead {display: none;}
table.board-list * {display: block;}
table.board-list tr {border-bottom: 1px solid #eeeeee; position: relative; height: 70px;}
table.board-list tr td:nth-child(1), table.board-list tr td:nth-child(3), table.board-list tr td:nth-child(5) {display: none;}
table.board-list td.title a {position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding: 10px; box-sizing: border-box; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 15px;}
table.board-list tr td:nth-child(4) {position: absolute; left: 10px; bottom: 8px; font-size: 13px; color: #999999;}
table.board-list tr td:nth-child(6) {position: absolute; right: 10px; bottom: 8px; font-size: 13px; color: #999999;}
table.board-list p.no-info i {color: #ffcc00; margin-right: 8px;}

div.board-view {font-size: 14px; border-top: 2px solid #4c4c4c; border-bottom: 1px solid #4c4c4c; margin: 30px 0;}
div.board-view p.title {font-size: 16px; padding: 10px 5px; font-weight: 700;}
div.board-view ul.info {color: #999999; font-size: 12px; padding: 0 0 10px 5px;}
div.board-view ul.info li {display: inline-block;}
div.board-view ul.info li + li:before {content: '/'; margin: 0 10px;}
div.board-view ul.file-list {padding: 10px 5px;}
div.board-view div.content {border-top: 1px solid #4c4c4c; border-bottom: 1px solid #4c4c4c; padding: 20px 5px;}
div.board-view div.content img {max-width: 100%;}
div.board-view ul.siblings li {position: relative; padding: 0 0 0 60px; line-height: 32px; color: #999999; font-size: 13px;}
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: 60px; 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: 0 10px;}
div.board-view ul.siblings li a:hover {color: #000000;}
div.board-view ul.siblings li span.date {display: none;}

ul.file-list {font-size: 13px;}
ul.file-list li {position: relative; padding-right: 80px;}
ul.file-list li + li {margin-top: 2px;}
ul.file-list li a {display: block; transition: color 0.3s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
ul.file-list li a:hover {color: #ed1c24;}
ul.file-list li a * {vertical-align: middle;}
ul.file-list li a img {margin-right: 10px; width: 14px;}
ul.file-list li a span.size {position: absolute; right: 0; top: 50%; transform: translate(0, -50%); box-sizing: border-box; line-height: 18px; border: 1px solid #ed1c24; padding: 0 5px; border-radius: 3px; font-size: 12px; margin-left: 30px; color: #999999;}

div.pagination {text-align: center; font-size: 14px; color: #999999;}
div.pagination a {display: inline-block; vertical-align: top; box-sizing: border-box; min-width: 34px; height: 34px; line-height: 32px; text-align: center; padding: 0 5px; border: 1px solid #e0e0e0; transition: all 0.3s;}
div.pagination a:hover {color: #333333; border-color: #ed1c24;}
div.pagination > a {background: #f9f9f9;}
div.pagination ol {display: inline-block; overflow: hidden; vertical-align: top; margin: 0 5px;}
div.pagination ol li {float: left;}
div.pagination ol li + li {margin-left: 3px;}
div.pagination ol li.on a {color: #ffffff; background: #ed1c24;}

ul.card-list {overflow: hidden; font-size: 13px; margin: 20px 0;}
ul.card-list > li {overflow: hidden; width: 48%; height: 250px; background: #f9f9f9; box-sizing: border-box; float: left; margin-right: 4%; margin-bottom: 30px;}
ul.card-list > li:nth-child(2n) {margin-right: 0;}
ul.card-list > li > a {display: block; height: 100%; border-bottom: 2px solid #e8e8e8; box-sizing: border-box; transition: all 0.3s;}
ul.card-list > li > a > * {display: block;}
ul.card-list > li span.image {position: relative; height: 170px; overflow: hidden; background: #ffffff; box-sizing: border-box; border: 1px solid #f9f9f9;}
ul.card-list > li span.image img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); min-width: 100%; height: 100%; max-width: none; transition: all 0.5s;}
ul.card-list > li span.category {margin: 15px 0 0 10px; color: #999999;}
ul.card-list > li em.title {font-size: 14px; font-weight: 700; margin: 5px 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
ul.card-list > li > a:hover {border-bottom-color: #ed1c24;}
ul.card-list > li > a:hover span.image img {transform: translate(-50%, -50%) scale(1.1) rotate(2deg);}
ul.card-list > li.no-info {text-align: center;}
ul.card-list > li.no-info i {display: block; font-size: 60px; color: #ed1c24; margin-bottom: 20px; margin-top: 60px;}
@media screen and (min-width: 600px) {
    ul.card-list > li {width: 30%; margin-right: 5%;}
    ul.card-list > li:nth-child(2n) {margin-right: 5%;}
    ul.card-list > li:nth-child(3n) {margin-right: 0;}
}

table.form {width: 100%; font-size: 14px; border-top: 3px solid #4c4c4c; border-bottom: 2px solid #4c4c4c; margin: 30px 0; background: rgba(255, 255, 255, 0.6);}
table.form td {padding: 5px 5px; border-top: 1px solid #eeeeee;}
table.form td.th {width: 100px; background: #f9f9f9; padding-left: 10px; font-weight: 700; box-sizing: border-box;}
table.form td.th span.required {color: #ff0000; margin-left: 3px;}
.form input.text {display: inline-block; box-sizing: border-box; width: 100%; height: 34px; border: 1px solid #e0e0e0; padding: 0 10px; font: inherit; color: #666666; font-size: 16px; -webkit-appearance: none; border-radius: 0;}
.form input.phone {width: 65px;}
.form textarea {display: block; box-sizing: border-box; width: 100%; height: 150px; border: 1px solid #e0e0e0; padding: 10px; font: inherit; color: #666666; -webkit-appearance: none; border-radius: 0; font-size: 16px;}
.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: 20px; line-height: 34px;}
ul.input-list li label {margin-left: 10px;}

div.button-box {text-align: center;}
.btn {display: inline-block; vertical-align: middle; text-align: center; border: 1px solid #eeeeee; box-sizing: border-box; transition: all 0.3s;-webkit-appearance: none; border-radius: 0;}
.btn.full {width: 100%;}
.btn.large {min-width: 120px; height: 40px; line-height: 38px; font-size: 16px; padding: 0 15px;}
.btn.white {border: 1px solid #ed1c24; background: #ffffff; color: #666666;}
.btn.yellow {border: 1px solid #ed1c24; background: #ed1c24; color: #eeeeee;}

div.youtube-container {position: relative; overflow: hidden;}
div.youtube-container iframe {width: 100%;}

p.no-content {text-align: center; border: 2px solid #e0e0e0; font-size: 20px; padding: 20px 0; margin: 50px 0; color: #ff0000;}
p.no-content i {color: #ed1c24; margin-right: 20px; font-size: 24px;}

/* file attachment list */
div.dino-file-upload {position: relative; padding: 10px 0;}
div.dino-file-upload > ul > {font-size: 13px; line-height: 1.2em; margin-bottom: 5px;}
div.dino-file-upload > ul > li {border: 1px solid #dfe8f1; border-radius: 3px; line-height: 28px; height: 30px; box-sizing: border-box; padding: 0 180px 0 10px; position: relative; transition: box-shadow 0.3s; overflow: hidden;}
div.dino-file-upload > ul > li:hover {box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);}
div.dino-file-upload > ul > li + li {margin-top: 5px;}
div.dino-file-upload > ul > li > .filename {display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; position: relative;}
div.dino-file-upload > ul > li > a.filename:hover {color: #00bca4;}
div.dino-file-upload > ul > li > .filename i {vertical-align: middle;}
div.dino-file-upload > ul > li > .filename img {vertical-align: middle; margin-right: 8px;}
div.dino-file-upload > ul > li p.function {position: absolute; right: 10px; top: 0;}
div.dino-file-upload > ul > li p.function > * {margin-left: 5px; display: inline-block; vertical-align: middle;}
div.dino-file-upload > ul > li a.prev,
div.dino-file-upload > ul > li a.next {width: 22px; height: 22px; font-size: 16px; color: rgba(255, 255, 255, 0.7); background: rgba(0, 0, 0, 0.3); border-radius: 50%; text-align: center; line-height: 20px; opacity: 0; transition: all 0.3s;}
div.dino-file-upload > ul > li:hover a.prev,
div.dino-file-upload > ul > li:hover a.next {opacity: 1;}
div.dino-file-upload > ul > li:hover a.prev i,
div.dino-file-upload > ul > li:hover a.next i {font-size: 16px;}
div.dino-file-upload > ul > li a.prev:hover,
div.dino-file-upload > ul > li a.next:hover {color: rgba(255, 255, 255, 0.9); background: rgba(0, 0, 0, 0.5); opacity: 1;}
div.dino-file-upload > ul > li a.delete {width: 22px; height: 22px; font-size: 16px; color: #e74c3c; border-radius: 50%; text-align: center; line-height: 20px; transition: all 0.3s;}
div.dino-file-upload > ul > li a.delete:hover {color: #ffffff; background: #e74c3c;}
div.dino-file-upload > ul > li span.size {font-size: 11px; line-height: 1em; padding: 5px 5px; background: #00bca4; color: #ffffff; border-radius: 3px;}
div.dino-file-upload > ul > li.uploading > span.filename i {color: #ffcc00; margin-right: 8px;}
div.dino-file-upload > ul > li.no-file > span.filename i {color: #ffcc00; margin-right: 8px;}
div.dino-file-upload input[type=file] {margin-top: 10px;}
div.dino-file-upload input[type=file].hidden {display: none;}

#layer-mask {position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); z-index: 10000;}
#test-popup {position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 70%; padding: 10px; box-sizing: border-box; background: #ffffff; box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.8); display: none; z-index: 10010;}
#test-popup img {width: 100%;}
#test-popup a.close {position: absolute; right: 0; top: -50px; font-size: 30px; color: #ffffff; text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.5);}

/*
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;
*/





