@charset "utf-8";

.table-wrap {overflow-x: auto; -webkit-overflow-scrolling: touch; border-top: 1px solid #214c9c;}
.sub-table {width:100%; border-collapse:collapse; border-spacing:0px; line-height:1.5em; letter-spacing:-.04em;}
.sub-table.layout-fixed {table-layout: fixed;}
.sub-table th {padding:14px 8px; background:#f4f4f4; border:1px solid #ddd; color:#202020; font-weight:500; font-weight: 1.125em;}
.sub-table td {padding:14px 8px; border:1px solid #ddd; color:#505050; text-align:center;}
.sub-table td.left {text-align: left; padding-left: 30px;}
.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;}

.sub-tab {margin-bottom:60px; text-align:center;}
.sub-tab ul {display:flex; width:100%;}
.sub-tab ul li {flex:1; width: auto; background:#fafafa; border:1px solid #ddd; border-left:0; border-bottom:0;}
.sub-tab ul li:first-child {border-left:1px solid #ddd;}
.sub-tab ul li a {position:relative; display:block; color: #505050; font-size:18px; line-height:60px; letter-spacing:-.04em; white-space: nowrap; padding: 0 5px;}
.sub-tab ul li.active {background:#fff;}
.sub-tab ul li.active a {color: #214c9c; font-weight: 600; z-index:2;}
.sub-tab ul li.active a:after {content:""; position:absolute; top:-1px; bottom:-2px; left:-1px; right:-1px; border:2px solid #214c9c; border-bottom:0px solid #fff;}
.sub-tab ul li:not(.active) { border-bottom:2px solid #214c9c;}

.dot-list > li{position:relative; padding-left: 12px;}
.dot-list > li:last-child{margin-bottom:0;}
.dot-list > li:before{content:"·";position:absolute; top:0; left:0;}

.top-txt {font-size: 28px; font-weight: 500; line-height: 1.357; letter-spacing: -.04em; text-align: center; padding-bottom: 50px;}
.top-txt.border {border-bottom: 1px solid #ddd;}
.top-txt strong {color: #214c9c;}
.top-txt p {color: #505050; font-size: 20px; font-weight: 300; line-height: 1.5; letter-spacing: -.04em; margin-top: 10px;}
.img-bnr + .top-txt {padding-top: 50px;}

.bg-grow {margin-top: 25px; padding-bottom: 3.8%; background: no-repeat url("../images/sub/biz_vision_grow.jpg") right center; background-size:auto 100%;}

/* greetings */
.greetings {display: flex;}
.greetings .img {width: 55%; padding-right: 30px;}
.greetings .txt {flex: 1 1 auto; min-width: 0; width: 1%; font-size: 17px;}
.greetings .txt strong {display: block; font-size: 1.647em; font-weight: 500; line-height: 1.286em; letter-spacing: -.03em; margin-bottom: 0.643em;}
.greetings .txt p {line-height: 1.647em; margin-bottom: 0.882em;}
.greetings .txt p .br {display: block;}
.greetings .txt p.sign {position: relative; margin-bottom: 0; margin-top: 2.765em;}
.greetings .txt p.sign b {display: inline-block; margin-left: 12px;}
.greetings .txt p.sign img {position: absolute; top: 50%; margin-top: -25px; margin-left: 20px;}

/* overview */
.introduction .section {padding-bottom: 120px;}
.introduction .section.bg {background: #f4f4f4;}
.introduction .section .conts {margin-top: -40px;}

.overview .info {text-align: center;}
.overview .info ul {display: flex; border: 1px solid #ddd; border-right: 0; border-top: 1px solid #214c9c;}
.overview .info ul li {width: 25%; padding: 60px 10px 50px; border-right: 1px solid #ddd;}
.overview .info ul li .icon {}
.overview .info ul li strong {display: block; font-size: 1.125em; color: #333; font-weight: 500; line-height: 1.5; letter-spacing: -.04em; margin: 25px 0 12px;}
.overview .info ul li:nth-child(odd) strong {color: #214c9c;}
.overview .info ul li p {color: #505050; font-size: 1.25em; line-height: 1.5;}
.overview .info ul li p .sm {display: block; color: #878787; font-weight: 300; font-size: .8em;}

.value {position: relative; overflow:hidden; z-index: 1;}
.value .bg-txt {position: absolute; right: 0; bottom: 0; font-family: 'Pretendard'; -webkit-text-stroke: 1px #e0e0e0; color: #f4f4f4; font-size: 120px; font-weight: 900; line-height: 1em; letter-spacing: -.04em; margin-right: -.04em; z-index: -1;}
.value ul {display: flex; margin: 0 10px;}
.value ul li {width: calc(20% + 20px); margin: 0 -10px;}
.value ul li .one {position: relative; border-radius:100%; padding-bottom: 100%; text-align:center; font-size: 18px; letter-spacing: -.04em;}
.value ul li .one .txt-wrap {position: absolute; top: 50%; left: 0; transform:translateY(-50%); width: 100%;}
.value ul li .one strong {display: block; font-size: 1.333em; line-height: 1.5; margin-bottom: 12px;}
.value ul li .one p {line-height: 1.556; font-weight: 300;}

.value ul li:nth-child(odd) .one {background: #fff; border: 1px solid #dfdfdf;}
.value ul li:nth-child(odd) .one strong {color: #214c9c;}
.value ul li:nth-child(odd) .one p {color: #878787;}
.value ul li:nth-child(even) .one {background: #214c9c; border: 1px solid #214c9c;}
.value ul li:nth-child(even) .one strong {color: #fff; font-weight: 500;}
.value ul li:nth-child(even) .one p {color: #eee;}
.introduction .people-list .box .txt {margin: 0 -20px;}

/* history */
.history  {position: relative; max-width: 650px; margin: 60px auto 0;}
.history:before{content:""; position:absolute; left:80px; top: 0; bottom: 0; width:1px; background: #ddd;}
.history .group{position:relative; display: flex;align-items: center; margin-bottom:60px;}
.history .group:last-child{margin-bottom:0;}
.history .group .year {display: inline-block; width: 160px; height: 160px; margin-right: 30px; border-radius:100%; text-align: center; font-size:38px; font-weight: 500; line-height: 160px; letter-spacing:-.04em; color: #fff;}
.history .group .list {flex: 1 1 auto; min-width: 0; width: 1%;}
.history .group ul li {position: relative; font-size: 1.25em; letter-spacing:-.04em; color:#505050; margin-bottom: .15em; padding-left: 50px;}
.history .group ul li:last-child {margin-bottom: 0;}
.history .group ul li .month {position: absolute; top: 0; left: 16px; color: #2c2c2c; font-weight: 700;}
.history .group ul li:before {content:'·'; position: absolute; top: 0; color: #2c2c2c; font-size: 1.5em;}

.history .group:first-child .year {color: #fff; background: #1b86c8; border-color:#1b86c8;}


.history .group:nth-child(odd) .year {background: #214c9c;}

.history .group:nth-child(even) .year {background: #333;}


/* .history .group:nth-child(odd){margin-left: calc(50% - 80px);}
.history .group:nth-child(odd) .year {background: #214c9c; margin-right: 30px;}
.history .group:nth-child(odd) ul li {padding-left: 50px;}
.history .group:nth-child(odd) ul li .month {left: 16px;}
.history .group:nth-child(odd) ul li:before {left: 0;}

.history .group:nth-child(even){margin-right: calc(50% - 80px);}
.history .group:nth-child(even) .year {order: 2; background: #333; margin-left: 30px;}
.history .group:nth-child(even) ul li {text-align: right; padding-right: 50px;}
.history .group:nth-child(even) ul li .month {right: 16px;}
.history .group:nth-child(even) ul li:before {right: 0;} */


/* business */
.business .service-item {}
.business .service-item ul {display: flex;flex-wrap:wrap; margin: -15px;}
.business .service-item ul li {width: 33.3333333%; height: 190px; padding: 15px;}
.business .service-item ul li .in {position: relative; display: flex; height: 100%;}
.business .service-item ul li .in:after {content:''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border: 1px solid #ddd;}
.business .service-item ul li .in > div {display: flex;justify-content: center;align-items: center; width: 50%; padding: 10px;}
.business .service-item ul li .icon {border-right: 1px solid #ddd;}
.business .service-item ul li .txt {flex-direction: column; background: #fafafa;}
.business .service-item ul li .txt .tt {display: block; color: #214c9c; font-size: 24px; line-height: 1.5; letter-spacing: -.04em; margin-bottom: 15px;}
.business .service-item ul li .txt .view {display: inline-block; color: #505050; font-size: 0.875em; line-height: 34px; border: 1px solid #ddd; border-radius:20px; background: #fff; padding: 0 20px;}

.business .service-item ul li .in:hover:after {border:2px solid #214c9c;}
.business .service-item ul li .in:hover .icon {border-color:#214c9c;}
.business .service-item ul li .in:hover .txt {background:#214c9c;}
.business .service-item ul li .in:hover .txt .tt {color: #fff;}
.business .service-item ul li .in:hover .txt .view {color: #214c9c; border-color:#fff;}

.pop-view {width:90vw; max-width:600px; background:#fff; overflow:hidden;}
.pop-view h2 {padding:15px 30px; color:#fff; font-size:20px; font-weight:500; line-height:1.3em; letter-spacing:-.04em; background:#214c9c;}
.pop-view .content {padding:50px 60px; line-height:1.625em; letter-spacing:-.04em; color:#505050;}
.pop-view .content b {display: block; color: #202020; font-weight: 500; font-size: 1.125em; line-height: 1.556;}
.fancybox-custom .fancybox-close {width: 21px; height: 21px;background-image: url("/images/sub/btn_view_close.png"); background-size: contain; top: 17px; right:30px;}

.pop-view .mapSection {height: 450px;}
.pop-view .content + .buttons {margin: 0 0 50px 0;}

/* license */
.license ul {display:flex; flex-wrap:wrap;justify-content: center; margin: -27px;}
.license ul li {width: 50%; padding: 27px;}

/* partner */
.partner .group {margin-bottom: 110px;}
.partner .group:last-child {margin-bottom: 0;}
.partner .tt {color: #214c9c; font-size: 28px; font-weight: 700; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 50px;}
.partner ul {position: relative; display:flex;flex-wrap:wrap; border-top: 1px solid #214c9c;}
.partner ul:after {content:''; position: absolute; top: -1px; right: 0; width: 3px; height: 1px; background: #fff; }
.partner ul li {position: relative; width: 25%; border: 1px solid #ddd; top: 1px; left: 1px; margin-left: -1px; margin-top: -1px;}

/* 제휴사업 */
.biz-vision .group {margin: 100px 0;}
.biz-vision .group:first-child {margin-top: 0;}

.biz-vision-bnr {color: #fff; padding: 90px 0 120px; background: no-repeat url("../images/sub/bg_biz_vision_bnr.jpg") center center / cover; text-align: center; font-size: 36px; font-weight: 400; line-height: 1.611;}
.biz-vision-bnr .top {letter-spacing: -.04em;}
.biz-vision-bnr .top p b {font-weight: 500;}
.biz-vision-bnr .bottom {}
.biz-vision-bnr .bottom blockquote {font-family: 'Noto Serif', serif; margin: 0;}
.biz-vision-bnr .bottom blockquote q {display: block; margin: .3em 0;}
.biz-vision-bnr .bottom blockquote q:before,
.biz-vision-bnr .bottom blockquote q:after {display: none;}
.biz-vision-bnr .bottom blockquote q.ko {font-family: 'Noto Serif KR', serif; font-size: 20px; font-weight: 300;}
.biz-vision-bnr .bottom figcaption {font-family: 'Noto Serif KR', serif; font-size: 20px; font-weight: 300; margin-top: 18px;}
.biz-vision-bnr .line {margin: 55px 0; border: 1px solid #fff; opacity: .5;}

/* FC */
.financial-consultant {display: flex; min-height: 480px;}
.financial-consultant > div {width: 50%;}
.financial-consultant .left {background: no-repeat url("../images/sub/financial_consultant.jpg") center center / cover;}
.financial-consultant .right {display: table; background: #214c9c; padding: 20px 55px; color: #fff; font-size: 20px; line-height: 1.5; letter-spacing: -.04em;}
.financial-consultant .right .cell {display: table-cell; vertical-align:middle;}
.financial-consultant .right .t1 {font-size: 1.4em;}
.financial-consultant .right .t1 b {display: block; font-weight: 600; margin-bottom: 12px;}
.financial-consultant .right .t2 {font-weight: 300; margin-top: 10px;}

/* program */
.program .items {display: flex;flex-wrap:wrap; margin: -15px;}
.program .items:after {/* content:""; display:block; clear:both; */}
.program .items .item {position: relative; width: 33.3333333%; padding: 15px;}
.program .items .item:nth-child(2) {top: 60px;}
.program .items .item .box {position: relative; height: 100%;}
.program .items .item .box:after {content:''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border: 1px solid #ddd; z-index: -1;}
.program .items .item .txt {padding: 35px 40px; color: #505050; line-height: 1.5;}
.program .items .item .txt strong {display: block; color: #214c9c; font-size: 24px; line-height: 1.4; letter-spacing: -.04em; margin-bottom: 10px;}
