.board-category {margin-bottom:40px;}
.board-category ul {display: flex;flex-wrap:wrap; text-align: center;}
.board-category ul li {display: table; flex:1; width: auto; min-height: 60px; border: 1px solid #ddd; position: relative; top: 1px; margin-top: -1px; left: 1px; margin-left: -1px;}
.board-category ul li a {display: table-cell; vertical-align:middle; font-size: 18px; font-weight: 500; line-height: 1.3; letter-spacing: -.03em; padding: 0 10px;}
.board-category ul li.active {background: #4e5e89;}
.board-category ul li.active a {color: #fff; font-weight: 400;}

.sub-tab {text-align:center; margin-bottom:42px;}
.sub-tab ul {display:flex; flex-wrap:wrap; justify-content:center; margin:-5px;}
.sub-tab ul li {padding:5px;}
.sub-tab ul li a {display:block; min-width:200px; padding:0 15px; color:#898989; font-size:16px; font-weight:500; line-height:42px; background:#ff; border: 1px solid #ddd; border-radius:20px;}
.sub-tab ul li a:hover {color:#4e5e89;}
.sub-tab ul li.active a {background:#4e5e89; border-color:#4e5e89; color:#fff !important; font-weight: 400;}

.table-wrap {overflow-x: auto; -webkit-overflow-scrolling: touch;}
.sub-table {width:100%; border-collapse:collapse; border-spacing:0px; line-height:1.75em; letter-spacing:-.04em;}
.sub-table thead th {background: #4e5e89; color: #fff; font-size: 1.125em; font-weight: 500; font-family: 'NanumSquare', sans-serif;}
.sub-table tbody th {background: #fafafa; font-weight: 500;}
.sub-table th {padding:11px 8px; border:1px solid #ddd;}
.sub-table td {padding:11px 8px; border:1px solid #ddd; font-weight: 500; text-align:center;}
.sub-table tr th:first-child,
.sub-table tr td:first-child {border-left:0;}
.sub-table tr th:last-child,
.sub-table tr td:last-child {border-right:0;}

.doc-group {margin-bottom: 80px;}
.doc-group.bg {background: #fafbff; padding: 80px 0;}
.doc-group:last-child {margin-bottom: 0;}
.doc-tit {position: relative; font-size:20px; letter-spacing:-.03em; line-height:1.3em; margin-bottom: 30px; padding-left: 30px;}
.doc-tit:before {content:""; position: absolute; top: 4px; left: 0; width: 20px; height: 20px; background-image:url("../images/sub/bullet.png"); background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}

.dot-list > li {position: relative; color: #454545; padding-left: 16px;}
.dot-list > li:before {content:"·"; position: absolute; top: 0; left: 0; font-size: 1.250em; font-weight: 900; letter-spacing: 0; color: #4e5e89;}

.check-list > li {position: relative; font-size:18px; letter-spacing:-.03em; line-height:1.3em; margin-bottom: 32px; padding-left: 30px;}
.check-list > li:before {content:""; position: absolute; top: 2px; left: 0; width: 20px; height: 20px; background-image:url("../images/sub/check.png"); background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}

.square-list > li {position: relative; color: #454545; font-size: 1em; line-height: 1.750em; padding-left: 13px;}
.square-list > li:before {content:""; position: absolute; top: 13px; left: 0; width: 4px; height: 4px; background: #242424;}
.square-list > li .sm {font-size: 0.778em;}

.check-list .square-list {margin-top: .5em; font-size: 0.889em;}

/* introduce */
.introduce {}
.introduce .group {padding-bottom: 70px;}
.introduce .group.bg {padding: 70px 0;}
.introduce .line {margin: 0 auto; width: 2px; height: 50px; background: #686868;}

/* about */
.about {position: relative; overflow:hidden;}
.about .contain {display: flex;align-items: center;}
.about .img {position: relative; width: 47.9%; padding-right: 30px; padding-bottom: 40px;}
.about .img img {box-shadow:rgba(0,0,0,.3) 3px 3px 8px;}
.about .img:before {content:""; position: absolute; bottom: 0; right: 110px; width: 500%; height: calc(100% - 40px); background: #cacedb; z-index: -1;}
.about .txt {flex: 1 1 auto; min-width: 0; width: 1%;}
.about .txt h3 {font-family: 'NanumSquare', sans-serif; font-size: 20px; line-height: 1.7em; letter-spacing: -.03em; margin-bottom: 25px;}
.about .txt h3 strong {font-size: 1.150em; color: #364263; font-weight: 800;}
.about .txt p {color: #454545; margin-bottom: 30px;}
.about .txt p strong {color: #242424; font-weight: 500;}
.about .line {position: relative; bottom: -30px;}

/* product */
.product {background: #f4f5f8;}
.product ul {display: flex;flex-wrap:wrap;justify-content: space-between; margin: 0 -15px -75px;}
.product ul li {position: relative; flex:0 0 auto; width: auto; padding: 0 15px; margin-bottom: 75px;}
.product ul li:nth-child(odd) {top: 100px;}
.product ul li .img {}
.product ul li .tit {font-family: 'NanumSquare', sans-serif; font-size: 20px; font-weight: 800; line-height: 1.3; letter-spacing: -.03em; margin: 28px 0 12px;}
.product ul li .desc {color: #454545; font-size: 0.938em; line-height: 1.733em;}

/* vision */
.vision {background: no-repeat url("../images/sub/bg_vision.png") center bottom / cover; text-align: center; padding-bottom: 100px;}
.vision .img {margin-bottom: 30px;}
.vision p {color: #454545; margin-bottom: 30px;}
.vision p strong {color: #242424; font-weight: 500;}
.vision p:last-child {margin-bottom: 0;}
.vision .line {margin-bottom: 30px;}


/* history */
.history {position: relative;}
.history .head {padding: 25px 0; margin-bottom: 33px; background-image:url("../images/sub/deco.png");
background-position:25% 50%; background-repeat:no-repeat; background-size:auto;}
.history .head h3 {font-family: 'Montserrat', sans-serif; font-size: 28px; line-height: 1.3; letter-spacing: -.03em; margin-bottom: 25px;}
.history .head h3 span {font-size: 40px; color: #4e5e89;}
.history .head p {font-family: 'NanumSquare', sans-serif; font-size: 20px; font-weight: 700; line-height: 1.5; letter-spacing: -.03em;}

.history .body {display: flex;}
.history .body .generation {max-width: 27.33%; min-width: 240px; width: 100%; border-right: 2px solid #ddd; font-family: 'Montserrat', sans-serif; font-size: 60px; font-weight: 600; line-height: 1.1; letter-spacing: -.03em;}
.history .body .cnt {flex: 1 1 auto; min-width: 0; width: 1%; padding-left: 30px; padding-top: 30px;}
.history .group {max-width: 793px; width: 100%; margin: 0 0 50px auto;}
.history .group:last-child {margin-bottom: 0;}
.history .group .year {font-family: 'NanumSquare', sans-serif; font-size:26px; font-weight:800; letter-spacing:-.03em; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid #eee;}
.history .group .list {display: flex; margin-bottom: 22px;}
.history .group .list:last-child {margin-bottom: 0;}
.history .group .list .month {width: 38px; font-weight: 700;}
.history .group .list ul {flex: 1 1 auto; min-width: 0; width: 1%;}
.history .group .list ul li {margin-bottom: .3em;}
.history .group .list ul li:last-child {margin-bottom: 0;}

/* location */
.loc-info {margin-top: 10px;}
.loc-info .addr {padding: 25px 0;}
.loc-info .addr strong {display: block; color: #060e26; font-weight: 700; margin-bottom: 5px;}
.loc-info .addr p {font-family: 'NanumSquare', sans-serif; font-size: 23px; font-weight: 700; line-height: 1.6; letter-spacing: -.03em;}
.loc-info .addr span {color: #454545; margin-right: 13px;}
.loc-info dl {display: flex;align-items: center; padding: 25px 30px; border-top: 1px solid #ddd;}
.loc-info dl:last-child {border-bottom: 1px solid #ddd;}
.loc-info dl dt {font-size: 1.125em; font-weight: 500; min-width: 150px;}
.loc-info dl dt img {vertical-align:middle; margin: -.2em 20px 0 0;}
.loc-info dl dd {color: #454545;}

/* product-introduce */
.product-introduce {}
.product-introduce:before {content:""; display: block; max-width: 1260px; width: calc(100% - 60px); height: 2px; background: #242424; margin: 0 auto 48px;}
.prd-head {display: flex;align-items: center;}
.prd-head .img {width: 51.25%; padding-right: 30px;}
.prd-head .txt {flex: 1 1 auto; min-width: 0; width: 1%; padding-top: 2em;}
.prd-head .txt .tt {font-family: 'NanumSquare', sans-serif; font-size: 23px; font-weight: 700; line-height: 1.522em; letter-spacing: -.03em; margin-bottom: 30px;}
.prd-head .txt strong {color: #364263; font-weight: 800;}

.prd-value ul {display: flex;justify-content: center;flex-wrap:wrap; font-family: 'NanumSquare', sans-serif; text-align: center; margin: 0 -10px;}
.prd-value ul li {width: 25%; border-right: 1px dashed #ddd; padding: 0 10px;}
.prd-value ul li:last-child {border-right: 0;}
.prd-value ul li strong {display: block; margin: 15px 0 10px; font-weight: 800; font-size: 20px; line-height: 1.5; letter-spacing: -.03em;}
.prd-value ul li strong.c1 {color: #4e5e89;}
.prd-value ul li strong.c2 {color: #364263;}
.prd-value ul li strong.c3 {color: #252d46;}
.prd-value ul li strong.c4 {color: #6879a7;}
.prd-value ul li p {color: #454545; font-size: 18px; line-height: 1.3; letter-spacing: -.03em;}

.prd-feature {display: flex;}
.prd-feature .img {width: 50.5%; padding-right: 30px; text-align: right;}
.prd-feature .txt {flex: 1 1 auto; min-width: 0; width: 1%;}

.prd-feature.ty2 .img {width: 54.75%; text-align: left;}
.prd-feature.ty2 .check-list > li {margin-bottom: 15px;}

.prd-field {display: flex;}
.prd-field .img {width: 62.75%; padding-right: 30px; text-align: center;}
.prd-field .txt {flex: 1 1 auto; min-width: 0; width: 1%;}
.prd-field .txt dl {margin-bottom: 35px;}
.prd-field .txt dl:last-child {margin-bottom: 0;}
.prd-field .txt dl dt {font-family: 'NanumSquare', sans-serif; font-weight: 800; font-size: 21px; line-height: 1.5; letter-spacing: -.03em; margin-bottom: 8px;}
.prd-field .txt dl dt.c1 {color: #525f83;}
.prd-field .txt dl dt.c2 {color: #0d734a;}
.prd-field .txt dl dt.c3 {color: #83a947;}
.prd-field .txt dl dd {font-size: 1.125em; font-weight: 500;}

.imgBox {padding: 40px; border-radius:10px; background: #79abc9;}
