@charset "utf-8";

/* css setting start */
.sec-wrap,
.sec-header,
.sec-content,
.sec-footer {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* contents */
.dv-conts-wrap {
    position: relative;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    overflow: hidden;
}

.sec-centent {
    overflow: hidden;
    padding-top: 70px;
}

.sec-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    background: #fff;
}

img {
    vertical-align: top;
}

.bd-line {
    border: 1px solid #ddd;
}

.scroll-ment {
    display: none;
}

.img-link {
    pointer-events: none;
}

.jp .sec-centent * {
    font-family: "Play", "Meiryo", sans-serif;
    word-break: break-all;
}

/*********************************************** header ***********************************************/
.header {
    padding: 0 80px;
    position: relative;
    text-align: center;
}

.header .logo {
    position: absolute;
    left: 80px;
    top: 50%;
    transform: translateY(-50%);
    width: max-content;
}

.header .hd-right {
    position: absolute;
    right: 80px;
    top: 50%;
    transform: translateY(-50%);
}

.header .service-tit- {
    display: none;
}

.header .gb-tit-1 {
    display: block;
}

.hd-top {
    padding: 0 80px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    border-bottom: 1px solid #e8e8e8;
}

.hd-top a {
    margin-left: 30px;
    font-size: 14px;
    position: relative;
}

.hd-top a:after {
    content: "";
    width: 1px;
    height: 10px;
    background: #ddd;
    position: absolute;
    left: -15px;
    top: 5px;
}

.hd-top a:first-child:after {
    display: none;
}

.gnb {
    display: inline-block;
    width: 100%;
    max-width: 900px;
}

.gnb>ul {
    display: flex;
}

.gnb>ul>li {}

.gnb>ul>li:hover>a {
    color: #1F57F8;
}

.gnb>ul>li>a {
    padding: 0 30px;
    font-weight: 600;
    color: #222;
    line-height: 70px;
}

.gnb>ul>li:first-child>a {
    padding-left: 0;
}

.gnb-wr {
    position: absolute;
    left: 0;
    top: 70px;
    background: #fff;
    width: 100%;
    border-top: 1px solid #ddd;
    display: none;
    box-shadow: 0 50px 50px rgb(0 0 0 / 10%);
    height: auto;
}

.gnb-wr.show {
    display: block;
}

.gnb-box {
    display: flex;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto;
    width: 100%;
    text-align: left;
    padding: 20px 0;
}

.gnb-box .gb-tit {
    width: 40%;
    padding-right: 50px;
}

.gnb-box .gb-tit h2 {
    font-size: 24px;
    color: #222;
    margin: 0 0 10px;
}

.gnb-box .gb-tit p {
    margin: 0 0 30px;
}

.gnb-box .gb-tit a {
    color: #1F57F8;
    font-weight: 600;
}

.gnb-box .gb-tit a i {
    vertical-align: middle;
    margin-left: 10px;
    margin-bottom: 2px;
}

.gnb-box .gb-depth {
    width: 60%;
    display: flex;
    flex-wrap: wrap;
    border-left: 1px solid #ddd;
}

.gnb-box .gb-depth ul {
    width: 50%;
    padding-left: 50px;
}

.gnb-box .gb-depth ul li ul {
    padding-left: 15px;
    width: 100%;
    margin-top: 15px;
    margin-bottom: 28px;
    display: none;
}

.gnb-box .gb-depth ul li ul li {
    margin-bottom: 10px;
}

.gnb-box .gb-depth ul li ul.show {
    display: block;
}

.gnb-box .gb-depth ul li ul li a {
    padding-left: 15px;
    font-size: 14px;
    color: #C7C7C7;
}

.gnb-box .gb-depth ul li {
    margin: 0 0 20px;
}

.gnb-box .gb-depth ul li a {
    font-weight: 600;
    color: #999;
}

.gnb-box .gb-depth ul li.width_ {
    width: max-content;
}

.gnb-box .gb-depth ul li a:hover {
    color: #1F57F8;
}

.hd-right {
    display: flex;
    align-items: center;
}

.lang {
    font-size: 14px;
    border: 1px solid #ddd;
    width: 100px;
    border-radius: 60px;
    padding: 5px;
    cursor: pointer;
    position: relative;
}

.lang i {
    vertical-align: middle;
    margin-bottom: 2px;
}

.lang i.xi-globus {
    margin-right: 15px;
}

.lang i.xi-angle-down-min {
    margin-left: 15px;
}

.lang ul {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 31px;
    width: 100%;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    display: none;
}

.lang ul li:first-child {
    border-top: none;
}

.lang ul li a {
    display: block;
    padding: 5px;
}







.all-btn {
    width: 30px;
    height: auto;
    margin-left: 20px;
    cursor: pointer;
    display: none;
}

.all-btn span {
    width: 100%;
    height: 2px;
    background: #222;
    margin: 5px 0;
    display: block;
}

.all-btn span:nth-child(1) {
    margin-top: 0;
}

.all-btn span:nth-child(3) {
    margin-bottom: 0;
}

.all-gnb {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.95);
    z-index: 10;
    display: none;
}

.all-gnb>ul {
    display: flex;
    flex-wrap: wrap;
    max-width: 1280px;
    margin: 24px auto;
}

.all-gnb>ul>li {
    width: 20%;
    padding: 20px 40px;
    text-align: left;
    border-right: 1px solid #ddd;
}

.all-gnb>ul>li:nth-child(5n) {
    border-right: 0;
}

.all-gnb>ul>li>a {
    font-size: 22px;
    color: #222;
    font-weight: 600;
}

.all-gnb>ul>li>ul>li {
    margin: 15px 0;
}

.all-gnb>ul>li>ul>li ul li {
    font-size: 14px;
    color: #999;
    padding-left: 8%;
    margin-top: 5px;
}

.all-gnb>ul>li>ul>li ul li a {
    color: #999;
}

.all-gnb>ul>li>ul>li ul li:hover a {
    color: #1F57F8;
}

.all-gnb>ul>li>ul>li>a {
    font-weight: 600;
    font-size: 15px;
    color: #999;
    position: relative;
    padding-left: 10px;
    display: block;
    transition: all ease 0.3s;
}

.all-gnb>ul>li>ul>li>a:before {
    content: "";
    width: 2px;
    height: 2px;
    background: #999;
    position: absolute;
    left: 0;
    top: 10px;
    transition: all ease 0.3s;
}

.all-gnb>ul>li>ul>li>a:hover {
    color: #1F57F8;
    padding-left: 20px;
}

.all-gnb>ul>li>ul>li>a:hover:before {
    width: 10px;
    background: #1F57F8;
}

.all-gnb .gnb-close {
    font-size: 36px;
    color: #222;
    position: absolute;
    left: 50%;
    top: 50px;
    margin-left: -17.5px;
    width: 35px;
    cursor: pointer;
}

/*********************************************** footer ***********************************************/
.sec-footer {
    background: #2a2929;
    padding: 50px 0;
}

.sec-footer .ft-top:after {
    content: "";
    display: block;
    clear: both;
}

.sec-footer .ft-top>a {
    float: left;
    display: block;
    margin-top: 5px;
}

.sec-footer .ft-top .ft-link {
    float: right;
}

.sec-footer .ft-top .ft-link a {
    margin-left: 20px;
    color: #999;
}

.sec-footer .ft-top .ft-link a:first-child {
    color: #fff;
    font-weight: 600;
}

.sec-footer .ft-btm {
    border-top: 1px solid #666;
    padding: 30px 0 0;
    margin: 30px 0 0;
}

.sec-footer .ft-btm:after {
    content: "";
    display: block;
    clear: both;
}

.sec-footer .ft-btm .ft-info {
    float: left;
}

.ft-info .web_pli {
    cursor: pointer;
}

.web_pli_modal {
    width: 80vw;
    height: auto;
    padding: 80px 50px 50px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 500px;
}

.web_pli_modal_bg {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: none;
    z-index: 999;
}

.web_pli_modal_bg h6 {
    text-align: left;
    font-weight: 600;
    font-size: 30px;
    margin-bottom: 20px;
    color: #222;
}

.web_pli_modal_bg::before {
    content: '';
    position: fixed;
    left: 50%;
    top: 50%;
    background: #000;
    transform: translate(-50%, -50%);
    width: 100vw;
    height: 100vh;
    opacity: 0.2;
}

.web_pli_modal .close- {
    position: absolute;
    right: 5%;
    top: 3%;
    font-size: 40px;
    font-weight: 500;
    cursor: pointer;
}

.sec-footer .ft-btm .ft-mark {
    float: right;
    margin-top: -10px;
    text-align: center;
}

.sec-footer .ft-btm .ft-mark p {
    margin-top: 2px;
    font-size: 13px;
}

.sec-footer .ft-top .fam-site {
    float: right;
    position: relative;
}

.sec-footer .ft-top .fam-site strong {
    display: block;
    padding: 10px 20px;
    width: 190px;
    font-size: 16px;
    color: #777;
    font-weight: 600;
    background: #424141;
    cursor: pointer;
}

.sec-footer .ft-top .fam-site i {
    position: absolute;
    right: 20px;
    top: 50%;
    font-size: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.sec-footer .ft-top .fam-site ul {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 100;
    width: 100%;
}

.sec-footer .ft-top .fam-site ul li a {
    display: block;
    padding: 10px 20px;
    background: #777;
    font-size: 15px;
    color: #ddd;
}

.sec-footer .ft-top .fam-site ul li a:hover {
    background: #1F57F8;
    color: #fff;
}

.sec-footer .ft-top .fam-site.on ul {
    display: block;
}

.sec-footer .ft-top .fam-site.on strong,
.sec-footer .ft-top .fam-site strong:hover {
    background: #222;
    color: #aaa;
}

#top_btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    text-align: center;
    z-index: 99;
}

/*********************************************** main ***********************************************/
.wr {
    max-width: 1280px;
    margin: 0 auto;
    width: 90%;
}

.more {
    display: inline-block;
    font-weight: 600;
    padding: 10px 0;
    border-bottom: 1px solid #1F57F8;
    transition: all ease 0.3s;
    color: #1F57F8;
}

.more i {
    vertical-align: middle;
    margin-left: 60px;
    margin-bottom: 2px;
}

.more:hover {
    color: #fff;
    background: linear-gradient(to left, #9198e5, #1F57F8);
    padding: 10px;
    box-shadow: 0.3125em 0.3125em 0.625em rgba(0, 0, 0, 0.1);
}

.tab-menu {
    margin: 0 0 30px;
}

.tab-menu li {
    display: inline-block;
    padding-right: 40px;
    position: relative;
}

.tab-menu li:after {
    content: "";
    width: 1px;
    height: 15px;
    background: #ddd;
    position: absolute;
    right: 20px;
    top: 10px;
}

.tab-menu li:last-child:after {
    display: none;
}

.tab-menu li a {
    font-size: 22px;
    font-weight: 600;
    cursor: pointer;
}

.tab-menu li a.active {
    color: #1F57F8;
}

.tab {
    display: none;
}

.tab.active {
    display: block;
}

.sub .tab {
    margin-top: 0px;
}

.sub .tab-menu {
    width: 100%;
    display: flex;
    background: #f6f6f6;
}

.sub .tab-menu li {
    width: 50%;
    text-align: center;
    padding: 0;
}

.sub .tab-menu li a {
    font-size: 18px;
    display: block;
    padding: 15px;
    border: 1px solid #ddd;
}

.sub .tab-menu li a.active {
    border: 2px solid #1F57F8;
    color: #1F57F8;
    margin-top: -1px;
}

.sub .service- .tab-menu li a {
    border: none;
    border-bottom: 2px solid #e0e0e0;
    margin-top: -1px;
}

.sub .service- .tab-menu li a.active {
    border-bottom: 2px solid #1F57F8;
    color: #1F57F8;
    margin-top: -1px;
}

.sub .service- .tab-menu {
    background: #fff;
}

.sub .tab-menu li:after {
    display: none;
}

.main-visual {
    background: #222;
    height: fit-content;
}

.main-visual .swiper-slide {
    overflow: hidden;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    height: calc(100vh - 230px);
    text-align: center;
}

.main-visual .swiper-slide:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(100, 100, 100, 0.1);
}

.main-visual .swiper-slide .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #222;
    background-position: center !important;
    background-size: cover !important;
    -webkit-animation: zoomInBg 2s linear forwards;
    animation: zoomInBg 2s linear forwards;
}

.main-visual .swiper-slide h2 {
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 40px;
    z-index: 10;
    font-size: 56px;
    color: #fff;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    line-height: 1.2;
}

.main-visual .swiper-slide p {
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 40px;
    z-index: 10;
    margin: 10px 0 0;
    font-size: 35px;
    color: #fff;
    line-height: 1;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}

.main-visual .swiper-slide .btnwrap {
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 40px;
    z-index: 10;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}

.main-visual .swiper-slide .btnwrap .btn-visual {
    display: block !important;
    padding: 10px;
    margin: 50px auto 0;
    width: 200px;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 50px;
    font-size: 16px;
    color: #fff;
    line-height: 26px;
}

.main-visual .swiper-slide .btnwrap .btn-visual:hover {
    background: #1F57F8;
    border-color: #1F57F8;
    color: #fff;
}

.main-visual .swiper-pagination-bullet {
    opacity: 1;
    background: rgba(67, 67, 67, 0.7);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.main-visual .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 20px;
    border-radius: 5px;
    background: #1F57F8;
}

.main-visual video {
    min-width: 100vw;
    min-height: 100vh;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    max-width: none;
    z-index: -1;
}

.main-visual .swiper-button-prev {
    width: 60px;
    height: 60px;
}

.main-visual .swiper-button-prev:after {
    font-size: 40px;
    color: #1F57F8;
}

.main-visual .swiper-button-next {
    width: 60px;
    height: 60px;
}

.main-visual .swiper-button-next:after {
    font-size: 40px;
    color: #1F57F8;
}

.main-visual .videofix {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 9999;
}

.main-visual .videofix .videocon {
    position: relative;
    top: 50%;
    margin: 0 auto;
    max-width: 1300px;
    width: 80%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.main-visual .videofix .videocon>div {
    overflow: hidden;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
}

.main-visual .videofix .videocon>div iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.main-visual .videofix .btn-popclose {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #000;
    font-size: 0;
    line-height: 0;
    text-indent: -9999px;
}

.main-visual .videofix .btn-popclose:after {
    content: "";
    position: absolute;
    right: 20px;
    top: 33px;
    width: 30px;
    height: 3px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.main-visual .videofix .btn-popclose:before {
    content: "";
    position: absolute;
    right: 20px;
    top: 33px;
    width: 30px;
    height: 3px;
    background: #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.main-visual .videofix .btn-popclose:hover {
    background: #1F57F8;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

.main-visual.init-motion .swiper-slide.swiper-slide-active h2 {
    opacity: 1;
    visibility: visible;
    top: 0;
}

.main-visual.init-motion .swiper-slide.swiper-slide-active p {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
}

.main-visual.init-motion .swiper-slide.swiper-slide-active .btnwrap {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.main-visual.init-motion .swiper-slide.swiper-slide-active .bg {
    -webkit-animation: zoomOutBg 2.7s linear forwards;
    animation: zoomOutBg 2.7s linear forwards;
}

@-webkit-keyframes zoomInBg {
    0% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1) translateZ(1px);
    }

    100% {
        -webkit-transform: scale(1.12, 1.12);
        transform: scale(1.12, 1.12) translateZ(1px);
    }
}

@keyframes zoomInBg {
    0% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1) translateZ(1px);
    }

    100% {
        -webkit-transform: scale(1.12, 1.12);
        transform: scale(1.12, 1.12) translateZ(1px);
    }
}

.main-tit {
    margin: 70px 0;
    text-align: center;
    position: relative;
    z-index: 2;
}

.main-tit h3 {
    font-size: 46px;
    color: #222;
    margin: 0 0 15px;
    line-height: 1;
}

.main-tit p {
    font-size: 19px;
    font-weight: 700;
}

.main-tit h4 {
    text-align: left;
    font-size: 30px;
    line-height: 1.4;
    color: #222;
}

.main-sec00 {
    padding: 30px 0 100px;
}

.main-sec00 .main-tit h3 {
    font-weight: 900;
}

.main-sec00 .nextgen-box {
    display: flex;
    align-items: center;
}

.main-sec00 .nextgen-box>div {
    width: 50%;
    text-align: center;
}

.main-sec00 .nextgen-box>div.txtbox p {
    font-size: 18px;
    color: #222;
    line-height: 35px;
    letter-spacing: -0.6px;
}

.main-sec00 .nextgen-box>div.txtbox .btn {
    margin-top: 50px;
    text-align: center;
}

.main-sec01 {
    padding: 30px 0 0;
    position: relative;
}

.main-sec01:before {
    content: "";
    width: 974px;
    height: 180px;
    background: url("/images/main/main-sec01-bg.png") center center / cover;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.main-sec01 ul {
    display: flex;
    flex-wrap: wrap;
}

.main-sec01 ul li {
    width: 20%;
    text-align: center;
    padding: 20px;
    border-right: 1px solid #ddd;
}

.main-sec01 ul li:last-child {
    border-right: 0;
}

.main-sec01 ul li p {
    font-size: 25px;
    color: #222;
    font-weight: 600;
}

.main-sec01 ul li:hover p {
    color: #003790;
}

.main-sec02 {
    padding: 50px 0 100px;
    position: relative;
}

.main-sec02:after {
    content: "";
    width: 622px;
    height: 236px;
    background: url("/images/main/main-sec02-bg02.png") center center / cover;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 0;
}

.main-sec02 ul {
    display: flex;
    justify-content: space-between;
}

.main-sec02 ul li {
    width: 24%;
    overflow: hidden;
    position: relative;
    transition: all ease 0.3s;
}

.main-sec02 ul li h3 {
    color: #fff;
    font-size: 30px;
    line-height: 1;
}

.main-sec02 ul li p {
    color: #fff;
    margin: 30px 0;
}

.main-sec02 ul li a {
    color: #fff;
}

.main-sec02 ul li.bg01 {
    background: url("/images/main/main-sec02-bg01.jpg") center center / cover;
}

.main-sec02 ul li.bg02 {
    background: url("/images/main/main-sec02-bg02.jpg") center center / cover;
}

.main-sec02 ul li.bg03 {
    background: url("/images/main/main-sec02-bg03.jpg") center center / cover;
}

.main-sec02 ul li.bg04 {
    background: url("/images/main/main-sec02-bg04.jpg") center center / cover;
}

.main-sec02 ul li .box-tit {
    padding: 60px 30px 100px;
}

.main-sec02 ul li .box-tit a {
    position: absolute;
    left: 30px;
    bottom: 60px;
}

.main-sec02 ul li a {
    font-weight: 600;
    padding: 10px 0;
    border-bottom: 1px solid #fff;
    transition: all ease 0.3s;
}

.main-sec02 ul li a i {
    vertical-align: middle;
    margin-left: 60px;
    margin-bottom: 2px;
}

.main-sec02 ul li:hover {
    box-shadow: 20px 20px 30px 0 rgba(0, 0, 0, 0.2);
}

.main-sec02 ul li:hover a {
    color: #1F57F8;
    background: #fff;
    padding: 10px;
}

.main-sec03 {
    padding: 30px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: url("/images/main/main-sec03-bg.jpg") no-repeat center center / cover;
    color: #fff;
    position: relative;
}

.main-sec03 .wr {
    margin: 0;
}

.main-sec03:after {
    content: "";
    width: 100%;
    height: 50%;
    background: #f6f6f6;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.main-sec03 h3 {
    color: #fff;
}

.main-sec04 {
    padding: 30px 0 100px;
    overflow: hidden;
}

.main-sec04 .main-tit h4 {
    text-align: center;
}

.main-sec04 .swiper-container {
    padding: 0 0 80px;
    overflow: inherit;
}

.main-sec04 .swiper-container-multirow-column>.swiper-wrapper {
    height: 320px;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}

.main-sec04 .swiper-slide {
    height: 160px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #fff;
    text-align: center;
}

.main-sec04 .swiper-slide img {
    max-width: 267px;
}

.main-sec04 .swiper-button-wr {
    position: absolute;
    bottom: 0;
    display: flex;
    align-items: center;
    left: -20px;
}

.main-sec04 .swiper-button-wr:after {
    content: "";
    width: 1px;
    height: 20px;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -10px;
}

.main-sec04 .swiper-button-next,
.main-sec04 .swiper-button-prev {
    position: relative;
    top: auto;
    margin-top: 0;
    left: auto;
    right: auto;
    width: 80px;
}

.main-sec04 .swiper-button-next:after,
.main-sec04 .swiper-button-prev:after {
    color: #222;
    font-size: 20px;
}

.main .main-sec04 .swiper-scrollbar {
    width: calc(100% - 160px);
    left: auto;
    right: 0;
    bottom: 20px;
    height: 1px;
    background: #ddd;
}

.main-sec04 .img-box-wrap {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px 0;
}

.main-sec04 .img-box-wrap .img-box {
    width: 20%;
}

.main-sec05 {
    background: #f8f8f8;
    padding: 100px 0;
    position: relative;
}

.main-sec05 .tab {
    position: relative;
}

.main-sec05 .main-news {
    padding-bottom: 70px;
    overflow: initial;
}

.main-sec05 .main-news .thum {
    width: 100%;
    padding-bottom: 62.88%;
    border-radius: 15px;
    position: relative;
    overflow: hidden;

}

.main-sec05 .main-news .thum_img::before {
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #000;
    opacity: 0.2;
    z-index: 2;
}

.main-sec05 .main-news .thum_img {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    filter: grayscale(100%);
    z-index: 1;
}

.main-sec05 .main-news .thum_img:hover {
    filter: grayscale(0%);
}

.main-sec05 .main-news .thum .thum_title {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 3;
}

.main-sec05 .main-news .thum .thum_title p {
    font-size: 26px;
    font-weight: 800;
    color: #fff;
    line-height: 36px;
    width: max-content;
    margin: auto;
}

.main-sec05 .main-news .thum .thum_title .thum_title_bottom {
    position: relative;
    color: #3A83D8;
    background: rgba(30, 68, 111, 0.8);
    display: block;
    padding: 0 5px;
}

.main-sec05 .main-news .title {
    margin-top: 20px;
}

.main-sec05 .main-news .title h3 {
    font-size: 20px;
    color: #191919;
    margin: 0 0 10px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;
    font-weight: 900;
    line-height: 1;
}

.main-sec05 .main-news .title .date {
    font-size: 16px;
    color: #6C6C6C;
}

.main-sec05 .main-news .title .more {
    display: inline-block;
    width: 55px;
    height: 55px;
    background: url("/images/btn/ic-more.png") center center / cover;
    text-indent: -999px;
    overflow: hidden;
    position: absolute;
    bottom: 60px;
    left: 30px;
}

.main-sec05 .link-btn {
    text-align: center;
    margin: 40px 0 0;
}

.main-sec05 .link-btn a {
    display: inline-block;
    width: 48%;
    max-width: 215px;
    margin: 0 0.5%;
    text-align: left;
}

.main-sec05 .link-btn a i {
    float: right;
}

.main-sec05 .swiper-button-wr {
    position: absolute;
    bottom: 0;
    display: flex;
    align-items: center;
    left: -20px;
}

.main-sec05 .swiper-button-wr:after {
    content: "";
    width: 1px;
    height: 20px;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -10px;
}

.main-sec05 .swiper-button-next,
.main-sec05 .swiper-button-prev {
    position: relative;
    top: auto;
    margin-top: 0;
    left: auto;
    right: auto;
    width: 80px;
}

.main-sec05 .swiper-button-next:after,
.main-sec05 .swiper-button-prev:after {
    color: #222;
    font-size: 20px;
}

.main .main-sec05 .swiper-scrollbar {
    width: calc(100% - 305px);
    left: 160px;
    right: auto;
    bottom: 20px;
    height: 1px;
    background: #ddd;
    display: flex;
    align-items: center;
}

.main-sec05 .swiper-scrollbar-drag {
    background: #3A83D8;
    height: 3px;
}

.main-sec05 .btn-find-more {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0;
    border: none;
    color: #3D3D3D;
    display: flex;
    gap: 5px;
    align-items: center;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 12px;
}

.main-sec05 .btn-find-more:hover {
    padding: 0;
    background: none;
    color: #3D3D3D;
}

.main-sec05 .btn-find-more i {
    position: initial;
    margin: 0;
}

.main-sec06 {
    background-image: url("/images/main/main-sec06-bg.jpg");
}

.ft-banner {
    padding: 100px 0;
    background-position: center center;
    background-size: cover;
    color: #fff;
    text-align: center;
}

.ft-banner h3 {
    margin-bottom: 10px;
    font-size: 32px;
    color: #fff;
    font-weight: 700;
    letter-spacing: -0.2px;
    line-height: 50px;
}

.ft-banner p {
    font-size: 19px;
    color: #fff;
    line-height: 24px;
}

.ft-banner .more {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 30px auto 0 auto;
    width: 200px;
    padding: 10px 20px;
    background: #1F57F8;
    color: #fff;
    text-transform: uppercase;
    border-radius: 50px;
    transition: all ease 0.3s;
}

.ft-banner .more i {
    vertical-align: middle;
    margin-left: 10px;
}

.ft-banner .more:hover {
    color: #1F57F8;
    background: #fff;
}

/* BADA FOOTER */
.ft-banner.type-02 {
    padding: 14px 0;
    background: url(/images/sub/sub-ft-bn-bada.jpg) no-repeat center;
    background-size: cover;
}

.ft-banner.type-02 .wr {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ft-banner.type-02 .wr .left {
    width: 49%;
}

.ft-banner.type-02 .wr .right {
    width: 49%;
    text-align: left;
}

.ft-banner.type-02 .wr .right .more {
    margin: 45px 0 0;
    border-color: #fff;
    background: #fff;
    color: #020f3c;
}

.ft-banner.type-02 .wr .right .more:hover {
    background: #1F57F8;
    border-color: #1F57F8;
    color: #fff;
}

/* ETC FOOTER */
.ft-banner.type-01 {
    background: url(/images/sub/sub-ft-bn-etc.jpg) no-repeat center;
    background-size: cover;
}

/* ========== BTNSET ========== */
.btnset {
    overflow: visible;
    display: inline-block !important;
    outline: none !important;
    cursor: pointer !important;
    text-align: center !important;
    text-decoration: none !important;
    vertical-align: middle !important;
    border: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-find-more {
    position: relative;
    padding-right: 90px;
    padding: 15px 90px 15px 0;
    border-bottom: 1px solid #1F57F8;
    font-size: 16px;
    color: #1F57F8;
    font-weight: 700;
    letter-spacing: 0.5px;
    line-height: 1;
    text-align: left !important;
}

.btn-find-more i {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -8px;
    -webkit-transition: right 0.3s;
    transition: right 0.3s;
}

.btn-find-more:hover {
    padding: 15px 70px 15px 20px;
    background: #1F57F8;
    color: #fff;
}

.btn-find-more:hover i {
    right: 20px;
}

/* ========== SUB-VISUAL ========== */
.sub-visual {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    height: 164px !important;
    text-align: center;
    color: #fff;
    margin-top: 130px;
}

.sub-visual.visual04-01,
.sub-visual.visual04 {
    height: 300px !important;
}

.sub-visual:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    -webkit-animation: zoomOutBg 3s linear forwards;
    animation: zoomOutBg 3s linear forwards;
}

.sub-visual .wr {
    position: relative;
    z-index: 10;
}

.sub-visual h2 {
    position: relative;
    z-index: 10;
    padding: 0 20px;
    font-size: 36px;
    font-weight: 500;
    line-height: 1;
}

.sub-visual h2 span {
    font-weight: 600;
}

.sub-visual p {
    position: relative;
    z-index: 10;
    padding: 0 20px;
    margin-top: 15px;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: 0px;
}

.sub-visual.visual04-03 h2,
.sub-visual.visual04-03 p {
    color: #000;
}

.sub-visual.visual01:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-01:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-02:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-04:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-05:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-06:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-07:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-08:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual02-09:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-01:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-02:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-03:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-04:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-05:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-06:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-07:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual03-08:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual04:after {
    background-image: url("/images/sub/sub-banner-2.png");
}

.sub-visual.visual04-01:after {
    background-image: url("/images/sub/sub-banner-3.png");
}

.sub-visual.visual04-02:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual04-03:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual04-04:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual04-05:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual05:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06-01:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06-02:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06-03:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06-04:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual06-05:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual07:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual70:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual08:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual09:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual10:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-visual.visual11:after {
    background-image: url("/images/sub/sub-banner.png");
}

.sub-ft-bn {
    background-image: url("/images/sub/sub-banner.png");
}

@-webkit-keyframes zoomOutBg {
    0% {
        -webkit-transform: scale(1.12, 1.12);
        transform: scale(1.12, 1.12) translateZ(1px);
    }

    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1) translateZ(1px);
    }
}

@keyframes zoomOutBg {
    0% {
        -webkit-transform: scale(1.12, 1.12);
        transform: scale(1.12, 1.12) translateZ(1px);
    }

    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1) translateZ(1px);
    }
}

/* ========== BREADCRUMB ========== */
.breadcrumb {
    display: flex;
    justify-content: flex-end;
    margin-top: 45px;
    display: none;
}

.breadcrumb li {
    position: relative;
    font-size: 16px;
    color: #666;
    line-height: 1;
    padding: 0 16px;
}

.breadcrumb li a {
    display: block;
    line-height: 1;
}

.breadcrumb li:before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: -3px;
    transform: translateY(-50%);
    width: 5px;
    height: 10px;
    background: url(/images/sub/ic-arr.png);
}

.breadcrumb li.home {
    padding-left: 0;
}

.breadcrumb li.home:before {
    display: none;
}

/* ========== SUB - COMMON ========== */
.mt-0 {
    margin-top: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pb-350 {
    padding-bottom: 260px !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

.mt-100 {
    margin-top: 100px !important;
}

.mb-100 {
    margin-bottom: 100px !important;
}

.pt-100 {
    padding-top: 100px !important;
}

.pb-100 {
    padding-bottom: 100px !important;
}

.pt-150 {
    padding-top: 150px !important;
}

.pb-150 {
    padding-bottom: 150px !important;
}

.ta_c {
    text-align: center !important;
}

.ta_r {
    text-align: right !important;
}

.ta_l {
    text-align: left !important;
}

.pt-clr {
    color: #1F57F8 !important;
}

.f_blue {
    color: #003790 !important;
}

.normal-txt {
    font-size: 16px;
    color: #666;
    line-height: 26px;
    letter-spacing: -0.4px;
}

.sec {
    padding-top: 100px;
    padding-bottom: 100px;
}

.sec:nth-child(2n) {
    background: #f6f6f6;
}

.sec .sec-sm {
    margin-top: 50px;
}

.sub-l-tit {
    font-size: 46px;
    margin-bottom: 130px;
    color: #000;
    text-align: center;
}

.sub-m-tit {
    font-size: 40px;
    color: #222;
    letter-spacing: -1px;
    font-weight: 500;
    text-align: center;
    line-height: 1.57;
}

.sub-m-tit strong {
    color: #1F57F8;
    font-weight: bold;
    vertical-align: baseline;
}

.sub-sm-tit {
    position: relative;
    padding-top: 10px;
    margin-bottom: 15px;
    font-size: 24px;
    color: #222;
    line-height: 1.5;
    font-weight: 600;
    letter-spacing: -0.2px;
}

.sub-sm-tit:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 2px;
    background: #222;
}

.sub-sm-txt {
    font-size: 20px;
    color: #444;
    line-height: 32px;
    font-weight: 600;
}

.sub-sm-tit02 {
    margin-bottom: 130px;
    font-size: 40px;
    color: #222;
    line-height: 1.45;
    letter-spacing: -0.6px;
    font-weight: 500;
    text-align: center;
}

.sub-sm-txt02 {
    margin-bottom: 30px;
    font-size: 18px;
    color: #444;
    line-height: 28px;
    font-weight: 400;
    text-align: center;
}

.sub-sm-sptit {
    display: inline-block;
    position: relative;
    padding: 0 20px;
    font-size: 28px;
    color: #222;
    font-weight: 700;
    line-height: 46px;
    letter-spacing: -0.2px;
}

.sub-sm-sptit h3 strong {
    color: #1F57F8;
    line-height: 46px;
    vertical-align: top;
    font-weight: 900;
}

.sub-sm-sptit h3:before,
.sub-sm-sptit h3:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 46px;
    background: url(/images/bu/bu-quotes.png) no-repeat center top;
    vertical-align: top;
}

.sub-sm-sptit h3:before {
    margin-right: 3px;
    margin-left: -16px;
}

.sub-sm-sptit h3:after {
    margin-right: -16px;
}

.cont-sbj {
    text-align: center;
    margin-bottom: 80px;
}

.cont-sbj h3 {
    font-size: 40px;
    color: #222;
    font-weight: 500;
}

.cont-sbj p {
    color: #666;
    font-size: 16px;
    margin: 20px 0 0;
}

.cont-sbj p.no-mt {
    margin-top: 0;
}

.imgbox-fill {
    padding: 50px 20px;
    border: 1px solid #ddd;
    background: #fff;
    text-align: center;
}

.scroll-horiz {
    margin-top: 30px;
    text-align: center;
}

.line-txt {
    position: relative;
    padding-left: 20px;
    margin: 25px 0 48px;
    font-size: 20px;
    color: #222;
    line-height: 32px;
    font-weight: 700;
    letter-spacing: -0.2px;
    text-align: left;
}

.line-txt:before {
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    width: 10px;
    height: 2px;
    background: #1F57F8;
}

.imgbox-half {
    display: flex;
    justify-content: space-between;
}

.imgbox-half>div {
    width: 48.6%;
}

/* ========== SUB - INDEX LIST ========== */
.inx-list {
    position: relative;
    padding-bottom: 100px;
    background: #f6f6f6;
}

.inx-list:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 80px;
    background: #fff;
}

.inx-list:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 80px;
    background: #fff;
}

.inx-list .bg-typo {
    position: absolute;
    right: 0;
    top: -5px;
    font-size: 105px;
    color: #f6f6f6;
    font-weight: 700;
    line-height: 1;
}

.inx-list .bg-typo-right {
    right: auto;
    left: 0;
}

.inx-list ul {
    position: relative;
    z-index: 11;
}

.inx-list ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.inx-list ul li>* {
    width: 45%;
}

.inx-list ul li:nth-child(2n) {
    margin-top: -80px;
    text-align: right;
}

.service .inx-list ul li:nth-child(2n) {
    margin-top: -20px;
    text-align: right;
}

.inx-list ul li:nth-child(2n-1) {
    flex-direction: row-reverse;
}

.inx-list ul li .tit {
    padding-bottom: 21px;
    font-size: 46px;
    color: #222;
    line-height: 54px;
}

.inx-list ul li .tit.add-stit {
    position: relative;
    padding-top: 23px;
}

.inx-list ul li .tit.add-stit span {
    position: absolute;
    left: 0;
    top: 0;
    font-size: 16px;
    color: #555555;
    line-height: 20px;
}

.inx-list ul li:nth-child(2n) .tit.add-stit span {
    left: auto;
    right: 0;
}

.inx-list ul li p {
    font-size: 18px;
    color: #666;
    line-height: 30px;
    letter-spacing: -0.6px;
}

.inx-list ul li p.bigtxt {
    font-size: 25px;
    color: #222;
    font-weight: 800;
}

.inx-list ul li a {
    margin-top: 30px;
}

.inx-list ul li .btnwrap {
    margin-top: 30px;
    display: flex;
    gap: 10px;
}

.inx-list ul li .btnwrap a {
    display: inline-block;
    margin-top: 0;
    width: 200px;
    border: 1px solid #ddd;
    border-radius: 60px;
    background: #fff;
    vertical-align: middle;
    text-align: center;
}

.inx-list ul li .btnwrap a:hover {
    border-color: #1F57F8;
}

.inx-list ul li .btnwrap span {
    display: inline-block;
    margin-top: 0;
    width: 200px;
    border: 1px solid #ddd;
    border-radius: 60px;
    background: #fff;
    vertical-align: middle;
    text-align: center;
}

.inx-list ul li .btnwrap span:hover {
    border-color: #1F57F8;
}


.box-list {
    margin-top: 30px;
}

.box-list>ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box-list>ul>li {
    width: 31.3333%;
    border: 1px solid #ddd;
    padding: 45px 20px;
    position: relative;
    text-align: center;
    background: #fff;
}

.box-list>ul>li:nth-child(odd) {
    border-top: 2px solid #1F57F8;
}

.box-list>ul>li:nth-child(even) {
    border-top: 2px solid #003790;
}

.box-list>ul>li .ico {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 105px;
}

.box-list>ul>li .tit {
    position: relative;
    padding-bottom: 10px;
    margin-top: 30px;
    min-height: 55px;
    font-size: 20px;
    color: #222;
    font-weight: 600;
    line-height: 30px;
}

.box-list>ul>li .tit .sm-txt {
    display: block;
    font-size: 16px;
    line-height: 30px;
}

.box-list>ul>li .tit:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    margin-left: -15px;
    width: 30px;
    height: 2px;
    background: #1F57F8;
}

.box-list>ul>li .txt {
    font-size: 16px;
    color: #666;
    margin: 20px 0;
    line-height: 26px;
}

/* ========== TBSTYLE ========== */
.tbstyle01 {
    margin-top: 40px;
    border-top: 2px solid #222;
}

.tbstyle01 table {
    width: 100%;
}

.tbstyle01 tbody th {
    padding: 20px;
    width: 18%;
    border-bottom: 1px solid #ddd;
    background: #f6f6f6;
    font-size: 18px;
    color: #222;
    line-height: 26px;
    letter-spacing: -0.2px;
    font-weight: 700;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.tbstyle01 tbody td {
    padding: 20px;
    width: 82%;
    border-bottom: 1px solid #ddd;
    font-size: 16px;
    color: #666;
    line-height: 26px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.sec:nth-child(2n) .tbstyle01 tbody th {
    background: #f0f0f0;
}

.sec:nth-child(2n) .tbstyle01 tbody td {
    background: #fff;
}

.tbstyle02 {
    margin: 40px 0 0px;
}

.tbstyle02 ul {
    border-top: 2px solid #222;
}

.tbstyle02 ul li {
    border-bottom: 1px solid #ddd;
    padding: 27px 45px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.tbstyle02 ul li:last-child {
    border: none;
}

.tbstyle02 ul li .th {
    font-size: 20px;
    color: #222;
    width: 220px;
    position: relative;
    padding-left: 20px;
}

.tbstyle02 ul li .th:before {
    content: "";
    width: 6px;
    height: 6px;
    background: #1F57F8;
    transform: rotate(-45deg);
    position: absolute;
    left: 0;
    top: 12px;
}

.tbstyle02 ul li .td {
    font-size: 16px;
    color: #666;
    width: calc(50% - 220px);
    font-weight: 600;
}

.tbstyle03 {
    margin-top: 40px;
    border-top: 2px solid #222;
}

.tbstyle03 table {
    width: 100%;
}

.tbstyle03 tbody th {
    padding: 40px 20px;
    width: 30%;
    border-bottom: 1px solid #ddd;
    text-align: left;
    vertical-align: top;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.tbstyle03 tbody th strong {
    position: relative;
    padding-left: 15px;
    font-size: 20px;
    color: #222;
    line-height: 30px;
    letter-spacing: -0.2px;
    font-weight: 700;
    font-weight: 900;
}

.tbstyle03 tbody th strong:before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 5px;
    height: 5px;
    background: #1F57F8;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.tbstyle03 tbody td {
    padding: 40px 20px 40px 90px;
    width: 70%;
    border-bottom: 1px solid #ddd;
    font-size: 16px;
    color: #666;
    line-height: 26px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: top;
}

.tbstyle03 tbody td p {
    margin-top: 5px;
}

.tbstyle03 tbody td p:first-child {
    margin-top: 0;
}

/* ========== LIST STYLE ========== */
.list-style01 ul {
    padding: 5px 0;
}

.list-style01>li {
    position: relative;
    padding-left: 12px;
    margin-top: 8px;
    font-size: 16px;
    color: #666;
    line-height: 28px;
    text-align: left;
}

.list-style01>li:first-child {
    margin-top: 0;
}

.list-style01>li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 4px;
    height: 4px;
    background: #1F57F8;
}

.list-style01>li>strong {
    color: #222;
    font-weight: 700;
    line-height: 28px;
    vertical-align: top;
}

.list-world li {
    position: relative;
    padding-left: 60px;
    margin-top: 16px;
    font-size: 16px;
    color: #666;
    line-height: 26px;
    letter-spacing: 0;
    text-align: left;
}

.list-world li img {
    position: absolute;
    left: 0;
    top: 0;
}

.list-world li:first-child {
    margin-top: 0;
}

.list-style03>li {
    position: relative;
    padding-left: 20px;
    margin-top: 20px;
    font-size: 20px;
    color: #1F57F8;
    line-height: 26px;
    letter-spacing: -0.6px;
    text-align: left;
}

.list-style03>li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 5px;
    height: 5px;
    background: #1F57F8;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.list-style03>li:first-child {
    margin-top: 0;
}

/* ========== 고객사례 / 고객목록 ========== */
.partner-ex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.partner-ex .sub-sm-tit02 {
    margin-bottom: 20px;
    font-size: 25px;
    text-align: left;
}

.partner-ex .left {
    width: 28%;
}

.partner-ex .left a {
    display: block;
    position: relative;
}

.partner-ex .left a:after {
    display: none;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border: 1px solid #1F57F8;
}

.partner-ex .left a:hover:after {
    display: block;
}

.partner-ex .left .bank-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    height: 170px;
    background: #fff;
    border: 1px solid #ddd;
}

.partner-ex .left .bank-logo.bg-gray {
    background: #ebebeb;
}

.partner-ex .left .bank-logo img {
    max-height: 168px;
}

.partner-ex .left p {
    padding: 20px 0;
    border: 1px solid #ddd;
    border-top: none;
    background: #fff;
    font-size: 18px;
    color: #222;
    font-weight: 700;
    text-align: center;
    line-height: 28px;
}

.partner-ex .right {
    position: relative;
    width: 67%;
}

.partner-ex .right .partner-ex-list {
    width: 100%;
}

.partner-ex .right .partner-ex-list .swiper-pagination {
    bottom: -20px;
}

.partner-ex .right .partner-ex-list {
    padding-right: 1px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.partner-ex .right .partner-ex-list .swiper-wrapper {
    flex-direction: row;
    height: 240px;
    flex-wrap: wrap;
}

.partner-ex .right .partner-ex-list .swiper-wrapper .swiper-slide {
    overflow: hidden;
    text-align: center;
    padding: 0.5px;
    width: 25%;
    height: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;

}

.partner-ex .right .partner-ex-list .swiper-wrapper .swiper-slide>div {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%;
    background: #fff;
    border: none;
}

.partner-ex .right .partner-ex-list .swiper-wrapper .swiper-slide img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.partner-ex .right .part-ex-pagination {
    display: none;
    width: 100%;
    padding: 5px 0 0;
    top: 100%;
    text-align: center;
}

.partner-ex .right .part-ex-pagination>span {
    margin: 0 3px;
}

.partner-ex .right .swiper-button-next {
    display: none;
    left: auto;
    right: 0;
    top: 0;
    margin-top: 0;
    width: 40px;
    height: 40px;
    transform: none !important;
    border: 1px solid #ddd;
    background: #fff url(/images/bu/bu-swipe-right.jpg) no-repeat center;
}

.partner-ex .right .swiper-button-next:after {
    display: none;
}

.partner-ex .right .swiper-button-prev {
    display: none;
    left: auto;
    right: 50px;
    top: 0;
    margin-top: 0;
    width: 40px;
    height: 40px;
    transform: none !important;
    border: 1px solid #ddd;
    background: #fff url(/images/bu/bu-swipe-left.jpg) no-repeat center;
}

.partner-ex .right .swiper-button-prev:after {
    display: none;
}

.applications .partner-ex .right .swiper-button-prev {
    display: block;
    top: 5px;
}

.applications .partner-ex .right .swiper-button-next {
    display: block;
    top: 5px;
}

.applications .partner-ex .right .part-ex-pagination {
    display: block;
}


/* ========== SUB - SOLUTIONS ========== */
.solutions .sec:nth-child(2) {
    padding-bottom: 0 !important;
    background: #fff;
}

.solutions .inx-list:after {
    bottom: 22%;
    height: 48%;
}

.solutions .sol-icolist {
    padding-top: 50px;
}

.solutions .sol-icolist>ul {
    display: flex;
    margin-left: -1%;
    text-align: center;
}

.solutions .sol-icolist>ul>li {
    flex: 1;
    position: relative;
    padding: 50px 10px 35px;
    margin-left: 1%;
    border: 1px solid #6086c3;
}

.solutions .sol-icolist>ul>li .list-num {
    position: absolute;
    left: 15px;
    top: 15px;
    font-size: 22px;
    color: #1F57F8;
    letter-spacing: -0.2px;
    font-weight: 900;
    line-height: 1;
}

.solutions .sol-icolist>ul>li .ico {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 104px;
}

.solutions .sol-icolist>ul>li p {
    min-height: 52px;
    font-size: 20px;
    color: #222;
    line-height: 26px;
    letter-spacing: -0.6px;
    font-weight: 600;
}

.solutions .sol-txtlist li {
    margin: 16px 0;
    padding: 17px 0;
    font-size: 20px;
    color: #555;
    font-weight: 700;
    text-align: center;
}

.solutions .sol-txtlist li:nth-child(1) {
    background: #f9f9f9;
}

.solutions .sol-txtlist li:nth-child(2) {
    background: #ededed;
}

.solutions .sol-txtlist li:nth-child(3) {
    background: #ddd;
}

/* RETAIL BANKING */
.core .advent {
    margin-left: -3%;
    margin-top: -10px;
}

.core .advent:after {
    content: "";
    display: block;
    clear: both;
}

.core .advent-box {
    float: left;
    position: relative;
    padding: 60px 28px 32px;
    margin-left: 3%;
    margin-top: 3%;
    width: 47%;
    border: 1px solid #ddd;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.core .advent-box .list-num {
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 50px;
    background: #1F57F8;
    font-size: 20px;
    color: #fff;
    font-weight: 700;
    line-height: 50px;
    text-align: center;
    letter-spacing: -0.2px;
}

.core .advent-box .advent-tit {
    padding: 0 20px;
}

.core .advent-box .advent-tit h4 {
    margin-bottom: 18px;
    font-size: 26px;
    color: #222;
    line-height: 36px;
}

.core .advent-box .advent-tit p {
    font-size: 16px;
    color: #666;
    line-height: 26px;
    letter-spacing: -0.2px;
}

.core .advent-box .imgbox {
    margin-top: 35px;
    text-align: center;
}

.core .advent-box.box03 {
    display: flex;
    justify-content: space-between;
}

.core .advent-box.box03 .advent-tit {
    width: 48%;
}

.core .advent-box.box03 .imgbox {
    width: 48%;
}

/* ASSET FINANCE */
.asset .sec:nth-child(3) .sec-sm:last-child {
    margin-top: 100px;
}

.asset .partner-ex .right .partner-ex-list .swiper-wrapper .swiper-slide {
    width: 25%;
}

/* MICRO */
.micro .line-txt {
    margin-bottom: 0;
}

.micro .partner-ex .right .partner-ex-list .swiper-wrapper {
    border: none;
}

/* ERP */
.erp .sec:nth-child(3) .sub-sm-tit02 {
    margin-bottom: 130px;
}

.erp .imgbox .line-txt {
    margin-bottom: 0;
    margin-top: 10px;
}

.erp .imgbox .line-txt:nth-child(2) {
    margin-top: 25px;
}

.erp .box-list {
    margin-bottom: 40px;
}

.erp .box-list>ul>li {
    width: 48.5%;
}

.erp .box-list>ul>li .tit {
    margin-bottom: 20px;
}

.erp .box-list>ul ul {
    padding: 0 20px;
}

/* CARD */
.card .partner-box>ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-size: 0;
}

.card .partner-box>ul>li {
    width: 30.3333%;
    outline: 1px solid #ddd;
    background: #fff;
}

/* BADA */
.bada {
    text-align: center;
}

.bada .our_value {
    text-align: left;
}

.bada .sec:nth-child(2) {
    background: #010e3b;
    padding-bottom: 0;
}

.bada .sec:nth-child(2) .sub-sm-tit02 {
    color: #222;
}

.bada .sec:nth-child(2) .sub-sm-txt02 {
    color: #222;
}

.bada .btnwrap {
    margin: 30px 0 0;
}

.bada .btnwrap .more {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    width: 200px;
    padding: 10px 20px;
    border: 1px solid #020f3c;
    background: #020f3c;
    color: #fff;
    text-transform: uppercase;
    border-radius: 50px;
    transition: all ease 0.3s;
}

.bada .btnwrap .more i {
    vertical-align: middle;
    margin-left: 10px;
}

.bada .btnwrap .more:hover {
    color: #020f3c;
    background: #fff;
}

.bada .sub-tit-type03 h3 {
    font-size: 34px;
    line-height: 1.5;
}

.bada .sub-tit-type03 h3:before,
.bada .sub-tit-type03 h3:after {
    height: 38px;
}

.bada .bada-logo {
    padding: 130px 0 30px;
    margin-left: -2%;
    font-size: 0;
}

.bada .bada-logo>div {
    display: inline-block;
    margin-left: 2%;
    width: 23%;
    vertical-align: top;
    text-align: center;
}

.bada .sec:nth-child(2) strong {
    display: inline-block;
    position: relative;
    margin-top: 40px;
    padding: 20px 50px;
    background: #fff;
    border-radius: 50px;
    border: 2px solid #c7ddef;
    font-size: 18px;
    color: #222;
    letter-spacing: -0.2px;
    line-height: 26px;
}

.bada .sec:nth-child(2) strong:after {
    content: "";
    position: absolute;
    left: 50%;
    top: -30px;
    width: 2px;
    height: 30px;
    background: #c7ddef;
}

.bada .sec:nth-child(3) .list-style01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 0 0;
    font-size: 0;
    text-align: left;
}

.bada .sec:nth-child(3) .list-style01>li {
    margin-top: 10px !important;
    width: 49%;
    vertical-align: top;
}

.bada .bada-icolist {
    padding-top: 20px;
}

.bada .bada-icolist>ul {
    margin-top: -40px;
}

.bada .bada-icolist>ul>li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top: 40px;
    padding: 50px 30px;
    background: #fff;
    border: 1px solid #ddd;
}

.bada .bada-icolist>ul>li:nth-child(odd) {
    border-top: 2px solid #1F57F8;
}

.bada .bada-icolist>ul>li:nth-child(even) {
    border-top: 2px solid #003790;
}

.bada .bada-icolist>ul>li:nth-child(2n) {
    flex-direction: row-reverse;
}

.bada .bada-icolist>ul>li>.ico {
    width: 34%;
}

.bada .bada-icolist>ul>li>.ico .tit {
    margin-top: 20px;
    font-size: 18px;
    color: #000;
    font-weight: 600;
}

.bada .bada-icolist>ul>li>ul {
    width: 64%;
}

.bada .bada-icolist .list-style01>li {
    font-size: 18px;
}

/* ========== SUB - SOLUTIONS ========== */
.platforms .sec {
    padding-bottom: 0 !important;
}

.platforms .inx-list:after {
    bottom: 27%;
    height: 37.5%;
}

/* PLATFORMS */
.product .sub-sm-txt02 {
    font-size: 22px;
    line-height: 1.5;
}

.product .pro-imglist {
    display: flex;
    justify-content: space-between;
    padding-top: 35px;
}

.product .pro-imglist dl {
    position: relative;
    padding: 20px;
    width: 31.5%;
    background: #f6f6f6;
    border-radius: 20px;
}

.product .pro-imglist dl dt {
    position: absolute;
    left: 10%;
    top: 0;
    margin-top: -35px;
    padding: 20px 0;
    width: 80%;
    border-radius: 50px;
    background: url(/images/sub/product-list-bg01.jpg) no-repeat center;
    background-size: cover;
    font-size: 25px;
    color: #fff;
    font-weight: 700;
    text-align: center;
    line-height: 30px;
}

.product .pro-imglist dl dd:nth-child(2) {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 250px;
    border-radius: 20px;
    background: #fff;
    text-align: center;
}

.product .pro-imglist dl dd:nth-child(2) p {
    padding: 0 20px;
    font-size: 18px;
    color: #1F57F8;
    line-height: 1.5;
}

.product .pro-imglist dl .imgbox strong {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100px;
    font-size: 20px;
    color: #222;
}

.product .pro-imglist ul {
    padding: 45px 10px 35px;
}

.product .pro-imglist ul>li {
    position: relative;
    padding-left: 20px;
    margin-top: 20px;
    font-size: 20px;
    color: #1F57F8;
    line-height: 26px;
    letter-spacing: -0.6px;
    text-align: left;
}

.product .pro-imglist ul>li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 5px;
    height: 5px;
    background: #1F57F8;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.product .pro-imglist ul>li:first-child {
    margin-top: 0;
}

.product .pro-imglist dl .imgbox {
    text-align: center;
}

.product .sec:nth-child(2) h4 {
    margin-bottom: 20px;
    font-size: 30px;
    color: #1F57F8;
    line-height: 40px;
    letter-spacing: -0.2px;
    text-align: center;
}

.product .sec:nth-child(2) .imgbox-half {
    position: relative;
    margin-top: 40px;
}

.product .sec:nth-child(2) .imgbox-half:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 57px;
    height: 100%;
    background: url(/images/sub/product-arrow.png) no-repeat center;
    background-size: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.product .sec:nth-child(2) .imgbox-half>div {
    padding: 45px 55px;
    width: 47%;
    border: 1px solid #ddd;
    background: #fcfcfc;
}

.product .sec:nth-child(2) .imgbox-half .imgbox>h4 {
    font-size: 25px;
    color: #1F57F8;
    line-height: 40px;
    letter-spacing: -0.2px;
}

.product .sec:nth-child(2) .imgbox-half .imgbox>p {
    margin-top: 10px;
    font-size: 22px;
    color: #555;
    line-height: 40px;
    letter-spacing: -0.2px;
    font-weight: 700;
}

.product .sec:nth-child(2) .list-style03 {
    margin: 25px 0 15px;
}

.product .sec:nth-child(2) .list-style03>li {
    margin-top: 15px;
    font-size: 18px;
    color: #666;
}

.product .sec:nth-child(3) .tbstyle03 {
    margin-top: 25px;
}

.product .numbering-box {
    display: flex;
    justify-content: space-between;
}

.product .numbering-box>div {
    padding: 30px 0;
    width: 50%;
    border-left: 1px solid #ddd;
}

.product .numbering-box>div.left {
    border-left: none;
}

.product .numbering-box>div dl {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 100px;
}

.product .numbering-box>div dl:nth-child(1) {
    margin-top: 0;
}

.product .numbering-box>div dl:nth-child(1) dt p {
    text-indent: 10px;
}

.product .numbering-box>div dd {
    padding-top: 10px;
}

.product .numbering-box>div.left dl dt {
    padding-left: 10%;
    width: 50%;
}

.product .numbering-box>div.left dl dd {
    width: 50%;
}

.product .numbering-box>div.right dl dt {
    width: 40%;
}

.product .numbering-box>div.right dl dd {
    width: 60%;
}

.product .numbering-box>div.right dl dt {
    padding-left: 10%;
}

.product .numbering-box dl dt strong {
    font-size: 60px;
    color: #1F57F8;
    letter-spacing: -0.2px;
    line-height: 60px;
}

.product .numbering-box dl dt p {
    font-size: 20px;
    color: #555;
    font-weight: 700;
}

.product .numbering-box dl dd p {
    font-size: 18px;
}

.product .numbering-box .list-world li {
    margin-top: 23px;
    font-size: 18px;
    letter-spacing: -0.6px;
}

.product .numbering-box .list-world li:first-child {
    margin-top: 0;
}

.product .numbering-list {
    display: flex;
    justify-content: space-between;
    margin: 70px auto 0;
    max-width: 670px;
    width: 100%;
}

.product .numbering-list>li {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 208px;
    height: 240px;
    background: url(/images/sub/product-list-bg02.png) no-repeat center;
    text-align: center;
}

.product .numbering-list>li:nth-child(2n) {
    background-image: url(/images/sub/product-list-bg03.png);
}

.product .numbering-list>li strong {
    font-size: 30px;
    color: #fff;
    line-height: 30px;
}

.product .numbering-list>li span {
    display: block;
    margin-top: 10px;
    font-size: 20px;
    color: #fff;
    line-height: 24px;
}


/* COREFRAME */
.coreframe .sub-m-tit {
    padding-bottom: 50px;
}

.coreframe .sec-sm {
    margin-top: 80px;
}

.coreframe .coreframe-imglist {
    display: flex;
    justify-content: space-between;
    padding-top: 35px;
    margin-top: 40px;
}

.coreframe .coreframe-imglist dl {
    position: relative;
    padding: 20px;
    width: 31.5%;
    background: #f6f6f6;
    border-radius: 20px;
}

.coreframe .coreframe-imglist dl dt {
    position: absolute;
    left: 10%;
    top: 0;
    margin-top: -35px;
    padding: 20px 0;
    width: 80%;
    border-radius: 50px;
    background: url(/images/sub/product-list-bg01.jpg) no-repeat center;
    background-size: cover;
    font-size: 25px;
    color: #fff;
    font-weight: 700;
    text-align: center;
    line-height: 30px;
}

.coreframe .coreframe-imglist dl dd:nth-child(2) {
    display: flex;
    justify-content: center;
    height: 170px;
    border-radius: 20px;
    background: #fff;
}

.coreframe .coreframe-imglist dl .imgbox {
    margin-top: 20px;
    text-align: center;
}

.coreframe .coreframe-imglist ul {
    padding: 45px 10px 35px;
}

.coreframe .coreframe-imglist ul>li {
    position: relative;
    padding-left: 20px;
    margin-top: 20px;
    font-size: 20px;
    color: #1F57F8;
    line-height: 26px;
    letter-spacing: -0.6px;
    text-align: left;
}

.coreframe .coreframe-imglist ul>li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 5px;
    height: 5px;
    background: #1F57F8;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.coreframe .coreframe-imglist ul>li:first-child {
    margin-top: 0;
}

.coreframe .sec:nth-child(2) .sec-sm:first-child>strong {
    display: block;
    margin-top: 40px;
    margin-bottom: 20px;
    font-size: 25px;
    color: #1F57F8;
    line-height: 36px;
    letter-spacing: -0.2px;
}

.coreframe .sec:nth-child(2) .sec-sm:first-child>ul>li {
    position: relative;
    padding-left: 18px;
    margin-top: 8px;
    font-size: 18px;
    color: #666;
    line-height: 26px;
    letter-spacing: -0.4px;
}

.coreframe .sec:nth-child(2) .sec-sm:first-child>ul>li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 10px;
    height: 2px;
    background: #1F57F8;
}

.coreframe .sec:nth-child(2) .sec-sm:first-child>ul>li:first-child {
    margin-top: 0;
}

.coreframe .partner-ex .right .part-ex-pagination {
    display: block;
}

.coreframe .partner-ex .right .swiper-button-prev {
    display: block;
}

.coreframe .partner-ex .right .swiper-button-next {
    display: block;
}

/* JAVAFRAME */
.javaframe .box-list>ul {
    justify-content: center;
    margin-top: -2%;
    margin-left: -2%;
}

.javaframe .box-list>ul>li {
    margin-top: 2%;
    margin-left: 2%;
}

.javaframe .javaframe-imgbox {
    margin-top: 80px;
}

.javaframe .javaframe-imgbox .imgbox-half p {
    margin: 0 0 20px;
    font-size: 18px;
    color: #222;
    font-weight: 700;
    font-family: "Noto Sans KR", sans-serif;
}

.javaframe .javaframe-imgbox {
    display: flex;
    justify-content: space-between;
}

.javaframe .javaframe-imgbox .left {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px 20px;
    width: 68%;
    border: 1px solid #ddd;
    background: #fff;
}

.javaframe .javaframe-imgbox .right {
    width: 30%;
}

.javaframe .javaframe-imgbox .imgbox-half {
    flex-direction: column;
    height: 100%;
}

.javaframe .javaframe-imgbox .imgbox-half>div {
    margin-top: 20px;
    width: 100%;
}

.javaframe .javaframe-imgbox .imgbox-half>div:first-child {
    margin-top: 0;
}

.javaframe .javaframe-imgbox .imgbox-half .imgbox-fill {
    padding: 30px 50px;
}

.javaframe .partner-ex .right .part-ex-pagination {
    display: block;
}

.javaframe .partner-ex .right .swiper-button-prev {
    display: block;
}

.javaframe .partner-ex .right .swiper-button-next {
    display: block;
}

/* CLOUD */
.cloudframe .sub-m-tit {
    padding-bottom: 130px;
}

.cloudframe .sec:nth-child(2) {
    background: #fff;
}

.cloudframe .sec:nth-child(2) ul>li:nth-child(even) {
    background: #f6f6f6;
}

.cloudframe .sec:nth-child(2) ul>li>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 30px 20px;
    max-width: 1280px;
}

.cloudframe .sec:nth-child(2) ul>li:nth-child(even)>div {
    flex-direction: row-reverse;
}

.cloudframe .sec:nth-child(2) ul>li>div>div {
    width: 48%;
    text-align: center;
}

.cloudframe .sec:nth-child(2) ul>li>div>div h5 {
    display: inline-block;
    position: relative;
    padding-top: 20px;
    font-size: 26px;
    color: #444;
    line-height: 30px;
    letter-spacing: -0.2px;
}

.cloudframe .sec:nth-child(2) ul>li>div>div h5:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -25px;
    width: 50px;
    height: 4px;
    background: #1F57F8;
}

.cloudframe .partner-ex .right .partner-ex-list .swiper-wrapper {
    border: none;
}

/* INTEGRATION */
.integration .sub-sm-tit {
    text-align: left;
}

.integration .line-txt {
    margin-top: 0;
    margin-bottom: 40px;
}

.integration .sec:nth-child(2) .sub-sm-tit02 {
    margin-bottom: 130px;
    font-size: 24px;
    line-height: 1.7;
}

.integration .sec:nth-child(1) .scroll-horiz {
    margin-top: 130px;
}

.integration .sec:nth-child(3) {
    text-align: center;
}

.integration .sec:nth-child(3) .sub-tit-type04 {
    margin-bottom: 25px;
}

/* ========== SUB - SERVICE ========== */
.service .inx-list:after {
    bottom: 22%;
    height: 32%;
}

.service .inx-list ul li .tit {
    padding-bottom: 0;
}

.service .inx-list ul li p.bigtxt {
    padding: 10px 0 30px;
}

.service .btnwrap {
    font-size: 0;
}

.service .btnwrap a {
    overflow: hidden;
    margin-left: 1% !important;
    width: 32.3333% !important;
}

.service .btnwrap a:first-child {
    margin-left: 0 !important;
}

.service .btnwrap span:first-child {
    margin-left: 0 !important;
}

.service .wr .find-out-more-btn h3 {
    font-size: 41px;
    color: #191919;
}

.service .wr .find-out-more-btn h3 span {
    font-size: 30px;
    display: block;
}

.service .wr .find-out-more-btn p {
    font-size: 24px;
    margin: 2px 0 40px;
    color: #191919;
}

.service .wr .find-out-more-btn .btn-find-more {
    font-size: 16px;
}

.service .wr .find-out-more-btn .btn-find-more:hover {}

.service .wr .find-out-more-btn .btn-find-more .package .sub-m-tit {
    margin-bottom: 80px;
    font-size: 31px;
}

.service .inx-list {
    margin-top: 50px;
}

.service .wr .sub-text {
    font-size: 22px;
    color: #6B6B6B;
    text-align: center;
}

.service .wr .textBox {
    width: 100%;
    display: flex;
    margin-top: 40px;
    color: #fff;

    align-items: center;
    justify-content: center;
    background: #0072CE;
    padding: 10px 0;
}

.service .wr .textBox p {
    font-size: 30px;
}

.service .half-box {
    background: #FAFAFA;
    border-radius: 20px;
    border: 1px solid #666666;
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 0 50px;
}

.service .half-box .title- {
    width: 90%;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #1D4195;
    border-radius: 99px;
    transform: translateY(-50%);
}

.service .half-box .title- p {
    color: #fff;
    font-size: 26px;
}

.service .half-box .box- {
    background: #7692C2;
    width: 100%;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service .half-box .box-+.box- {
    margin-top: 15px;
}

.service .half-box .box- p {
    color: #fff;
}

.service .half-box-2 .title- {
    background: #2889B6;
}

.service .half-box-2 .box- {
    background: #46A8CD;
}

.implementation .inx-list:after {
    display: none;
}

.sec .tit- {
    font-size: 46px;
    text-align: center;
    color: #000;
}

.management .inx-list:after {
    display: none;
}

.applications .sub-m-tit {
    font-size: 31px;
}

.kubernetes .sec-wrap {
    width: 1280px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.kubernetes .sec-bg {
    background: #F5F5F5;
}

.kubernetes .left-sec h3,
.kubernetes .left-sec p {
    text-align: left;
}

.kubernetes .right-sec h3,
.kubernetes .right-sec p {
    text-align: right;
}

.kubernetes h3.sub-m-tit {
    font-size: 46px;
    margin-bottom: 30px;
}

.kubernetes p.sub-sm-txt {
    font-size: 18px;
    line-height: 30px;
    font-weight: normal;
}

.kubernetes .img-box {
    height: 385px;
}

.kubernetes .img-box img {
    width: auto;
    height: 100%;
}

.kubernetes .sec {
    padding: 120px 0;
}

.kubernetes .sec-wrap>div {
    max-width: 730px;
}

.kubernetes .sec-04 {
    padding-bottom: 200px;
}

.kubernetes .sec-04 h3.sub-m-tit {
    margin-bottom: 80px;
}

.kubernetes .sec-04 .grid-box {
    width: 900px;
    margin: auto;
}

.kubernetes .sec-04 .grid-box img {
    width: 100%;
    height: auto;
}


/* ========== SUB - ABOUTUS ========== */
.aboutus .sec:nth-child(2) {
    background: #fff;
}

.aboutus .sub-m-tit {
    font-size: 30px;
}

.aboutus .inx-list li>* {
    width: 50%;
}

.aboutus .inx-list li {
    margin-top: 0 !important;
}

.aboutus .inx-list:after {
    display: none;
}

.aboutus .inx-list li:nth-child(odd) .txtbox {
    padding-left: 70px;
}

.aboutus .inx-list li:nth-child(even) .txtbox {
    padding-right: 70px;
}

/* COMPANY */
.our_value {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.company-banner {
    width: 100vw;
    height: calc(100vh - 70px);
    position: relative;
}

.company-banner .swiper-container {
    height: 100%;
}

.company-visual-tit {
    position: absolute;
    left: 50%;
    top: calc(50% - 40px);
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    width: 95%;
}

.company-visual-tit h2 {
    font-size: 46px;
    margin-bottom: 72px;
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 30px;
    transition: all 0.5s;
}

.company-visual-tit .bar- {
    width: 43px;
    height: 5px;
    background: #fff;
    margin: 0 auto 63px;
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 30px;
    transition: all 0.5s;
}

.company-visual-tit h6 {
    font-size: 40px;
    margin-bottom: 33px;
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 30px;
    transition: all 0.5s;
}

.company-visual-tit .text- {
    font-size: 42px;
    font-weight: 500;
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 30px;
    transition: all 0.5s;
}

.company-visual-tit .tit-text- {
    font-size: 26px;
    opacity: 0;
    visibility: hidden;
    position: relative;
    top: 30px;
    transition: top 0.5s, opacity 0.5s;
}

.company-banner.init-motion .swiper-slide.swiper-slide-active h2 {
    opacity: 1;
    visibility: visible;
    top: 0;
}

.company-banner.init-motion .swiper-slide.swiper-slide-active .bar- {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
}

.company-banner.init-motion .swiper-slide.swiper-slide-active h6 {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.company-banner.init-motion .swiper-slide.swiper-slide-active .text- {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
    width: 100%;
}

.company-banner.init-motion .swiper-slide.swiper-slide-active .tit-text- {
    opacity: 1;
    visibility: visible;
    top: 0;
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}

.company .company-banner .swiper-pagination {
    display: flex;
    flex-direction: column;
    gap: 25px;
    top: 50%;
    transform: translateY(-50%);
    bottom: auto;
    left: 37px;
    right: auto;
}

.company .company-banner .swiper-pagination-bullet {
    background: #fff;
    width: 13px;
    height: 13px;
    border-radius: 99px;
    opacity: 1;
    transition: height 0.5s;
}

.company .company-banner .swiper-pagination-bullet-active {
    background: #0072CE;
    height: 40px;
}

.company .company-banner .scroll-icon {
    position: absolute;
    left: 50%;
    bottom: 5%;
    transform: translateX(-50%);
    z-index: 1;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 5px;
}

.company .company-banner .scroll-icon .arrow-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.company .company-banner .scroll-icon .arrow-wrap svg {
    transform: rotate(90deg);
}

.company .company-banner .scroll-icon .arrow-wrap svg:last-child {
    margin-top: -5px;
}

.company-banner .swiper-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
}

.our_value>li {
    display: flex;
    align-items: center;
    gap: 47px;
    border-radius: 30px;
    background: #fff;
    padding: 35px 100px 35px 110px;
}

.our_value.white->li {
    border: 1px solid #ddd;
}

.our_value>li:hover {
    background: #3A83D8;
}

.our_value>li:hover .tit,
.our_value>li:hover .txt {
    color: #fff;
}

.our_value>li .txt span {
    display: block;
    padding-left: 12px;
    position: relative;
}

.our_value>li:hover .txt .f_blue {
    color: #fff !important;
}

.our_value>li .txt .li-+.li- {
    margin-top: 5px;
}

.our_value>li .txt span:before {
    content: "";
    position: absolute;
    left: 0;
    top: 15px;
    width: 4px;
    height: 4px;
    background: #1F57F8;
}

.our_value>li:hover .txt span:before {
    background: #fff;
}

.our_value>li .tit {
    width: 267px;
    font-size: 26px;
    font-weight: 700;
    color: #191919;
}

.our_value>li .txt {
    font-size: 24px;
    line-height: 34px;
    color: #727272;
    width: calc(71% - 47px);
}

.company .gray-imgbox {
    display: flex;
    justify-content: space-around;
    border: 1px solid #ddd;
    background: #fcfcfc;
    text-align: center;
}

.company .gray-imgbox .item {
    border-right: 1px solid #ddd;
}

.company .gray-imgbox .item:last-child {
    border-right: none;
}

.company .overview-list {
    display: flex;
    margin-top: 40px;
    background: url(/images/sub/overview-bg-all.png) no-repeat center left;
    background-size: cover;
    transition: all 0.3s;
}

.company .overview-list.bg-01 {
    background-position: center left;
}

.company .overview-list.bg-02 {
    background-position: center left 50%;
}

.company .overview-list.bg-03 {
    background-position: center right;
}

.company .overview-list li {
    width: 33.333%;
    min-height: 528px;
    text-align: center;
    color: #fff;
    padding: 130px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-flow: column;
    border-right: 1px solid rgba(129, 129, 129, 0.55);
}

.company .overview-list li:last-child {
    border-right: none;
}

.company .overview-list li:nth-child(1):hover {
    background: rgba(1, 84, 120, 0.5);
}

.company .overview-list li:nth-child(2):hover {
    background: rgba(125, 19, 0, 0.5);
}

.company .overview-list li:nth-child(3):hover {
    background: rgba(10, 101, 22, 0.5);
}

.company .overview-list li>* {
    padding: 0 15px;
    width: 100%;
}

.company .overview-list li .tit-1 {
    font-size: 30px;
    font-weight: 600;
    margin-top: 10px;
}

.company .overview-list li .tit-2 {
    opacity: 0;
    height: 0;
    overflow: hidden;
    font-size: 20px;
    margin-top: 10px;
    transition: opacity 0.3s ease;
}

.company .overview-list li .txt {
    opacity: 0;
    height: 0;
    overflow: hidden;
    font-size: 16px;
    margin-top: 10px;
    transition: opacity 0.3s ease;
}

.company .overview-list li:hover .tit-2 {
    opacity: 1;
    height: inherit;
}

.company .overview-list li:hover .txt {
    opacity: 1;
    height: inherit;
}

.company .global-history {
    position: relative;
    padding-bottom: 0;
}

.company .global-history .sub-sm-tit02 {
    margin-bottom: 130px;
}

.company .global-history .wr {
    position: relative;
}

.company .global-history .bg {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 10;
    width: 100%;
}

.company .global-history:before {
    content: "";
    width: 1023px;
    max-width: 60%;
    height: 189px;
    background: url(/images/sub/bankware-txt.png) no-repeat center/contain;
    position: absolute;
    left: 60px;
    top: 240px;
}

.company .global-history:after {
    content: "";
    width: 681px;
    max-width: 40%;
    height: 259px;
    background: url(/images/sub/global-txt.png) no-repeat center/contain;
    position: absolute;
    right: 60px;
    bottom: 282px;
}

.company .global-history ul {
    position: relative;
    padding-bottom: 35%;
}

.company .global-history ul:before {
    content: "";
    width: 1px;
    height: 100%;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 10px;
    transform: translateX(-50%);
}

.company .global-history ul:after {
    content: "";
    width: 1247px;
    height: 407px;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}

.company .global-history ul li {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
    z-index: 10;
}

.company .global-history ul li:after {
    content: "";
    width: 6px;
    height: 6px;
    background: #003790;
    transform: rotate(-45deg) translate(-50%, -50%);
    position: absolute;
    left: calc(50% + 1px);
    top: 50%;
}

.company .global-history ul li>* {
    width: calc(50% - 40px);
    line-height: 1;
}

.company .global-history ul li .year {
    font-size: 23px;
    color: #003790;
    font-weight: 600;
    text-align: right;
}

.company .global-history ul li .title {
    font-size: 21px;
    color: #777;
    text-align: left;
}

.company .global-history ul li:nth-child(odd) .year {
    margin-right: 40px;
}

.company .global-history ul li:nth-child(odd) .title {
    margin-left: 40px;
}

.company .global-history ul li:nth-child(even) .year {
    order: 2;
    text-align: left;
    margin-left: 40px;
}

.company .global-history ul li:nth-child(even) .title {
    order: 1;
    text-align: right;
    margin-right: 40px;
}

.company .global-rank {
    display: flex;
    align-items: center;
}

.company .global-rank .img {
    position: relative;
}

.company .global-rank .img:before {
    content: "";
    width: 100%;
    height: 100%;
    background: #ededed;
    position: absolute;
    right: -10px;
    bottom: -10px;
}

.company .global-rank .img img {
    position: relative;
}

.company .global-rank .txt-box {
    margin-left: 75px;
    flex-shrink: 0;
}

.company .global-rank .txt-box li {
    margin-bottom: 80px;
}

.company .global-rank .txt-box li:last-child {
    margin-bottom: 0;
}

.company .global-rank .txt-box .desc {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    font-size: 20px;
    color: #666;
}

.company .global-rank .txt-box .desc:before {
    content: "";
    width: 6px;
    height: 6px;
    background: #1F57F8;
    transform: rotate(-45deg) translateY(-50%);
    position: absolute;
    left: 0;
    top: 50%;
}

.company .global-rank .txt-box .desc:after {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
    content: "";
    width: 28px;
    height: 1px;
    background: #bbb9b9;
}

.company .global-rank .txt-box .tit {
    font-size: 30px;
    color: #1F57F8;
    font-weight: 600;
    padding-left: 20px;
}

.company .customer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.company .customer img {
    width: 20%;
}

/* CEO */
.ceo .ceo-list .row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}

.ceo .ceo-list .row:last-child {
    margin-bottom: 0;
    flex-direction: row-reverse;
}

.ceo .ceo-list .row:last-child .img {
    margin-right: 0;
    margin-left: 10%;
}

.ceo .ceo-list .img {
    flex-shrink: 0;
    width: 32%;
    margin-right: 10%;
}

.ceo .ceo-list .img .img-wrap {
    overflow: hidden;
    background: #C7C7C7;
    border-radius: 100%;
    position: relative;
    height: 0;
    width: 80%;
    padding-top: 80%;
    margin: auto;
}

.ceo .ceo-list .img .img-wrap img {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ceo .ceo-list .img .note {
    position: relative;
    text-align: center;
    margin-top: 90px;
}

.ceo .ceo-list .img .note:after {
    display: block;
    content: "";
    width: 195px;
    height: 195px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: -1;
}

.ceo .ceo-list .img .note .txt-1 {
    position: relative;
    font-size: 18px;
}

.ceo .ceo-list .img .note .txt-1:after {
    display: block;
    content: "";
    width: 17px;
    height: 2px;
    background: #bcbcbc;
    margin: 15px auto;
    vertical-align: middle;
}

.ceo .ceo-list .img .note .txt-2 {
    font-size: 18px;
}

.ceo .ceo-list .txt-box {
    width: 100%;
}

.ceo .ceo-list .title {
    font-size: 28px;
    color: #222;
    font-weight: 800;
}

.ceo .ceo-list .title b {
    font-weight: 800;
}

.ceo .ceo-list .cont {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin-top: -5px;
}

.ceo .ceo-list .cont b {
    font-size: 40px;
    font-weight: 500;
}

.ceo .ceo-list .cont .name {
    margin-top: 40px;
    text-align: right;
}

.ceo .ceo-list .cont .name b {
    display: inline-block;
    font-size: 20px;
    color: #222;
    font-weight: 600;
    vertical-align: middle;
    margin-left: 5px;
}

.ceo .ceo-list .cont .name .sign {
    display: inline-block;
    margin-left: 10px;
}

/* CULTURE */
.culture .sec-03 .wr {
    display: flex;
    padding: 0 70px;
    gap: 100px;
}

.culture .sec-03 .wr>.title {
    font-size: 48px;
    color: #555;
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
}

.culture .sec-03 .box-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
    width: 100%;
    margin-bottom: 40px;
}

.culture .sec-03 .wrap- {
    width: 61%;
}

.culture .sec-03 .box-:nth-child(2) {
    margin: 50px 0;
    padding: 50px 0;
    border-top: 1px solid #B7B7B7;
    border-bottom: 1px solid #B7B7B7;
}

.culture .sec-03 .content-title {
    font-size: 30px;
    color: #1F57F8;
    font-weight: 600;
    margin-bottom: 15ipx;
}

.culture .sec-03 .content-text {
    font-size: 18px;
    line-height: 1.7;
}

.culture .sec-03 .content- {
    display: flex;
    gap: 70px;
}

.culture .sec-03 .content-wrap>div+div {
    margin-top: 25px;
}

.culture .sec:nth-child(1) {
    margin-bottom: 100px;
}

.culture .sec:nth-child(1) .sub-m-tit {
    padding-bottom: 100px;
}

.culture .sec:nth-child(1) .img {
    text-align: right;
}

.culture .sec.culbox {
    position: relative;
    padding: 0;
}

.culture .sec.culbox .bg-typo {
    position: absolute;
    right: 0;
    top: -90px;
    font-size: 105px;
    color: #f6f6f6;
    font-weight: 700;
    line-height: 1;
}

.culture .sec.culbox .row {
    min-height: 530px;
}

.culture .sec.culbox .row {
    min-height: 450px;
    padding: 80px 0;
    display: flex;
    align-items: center;
    text-align: center;
}

.culture .sec.culbox .row>* {
    width: 50%;
}

.culture .sec.culbox .row .title {
    font-size: 48px;
    color: #555;
    font-weight: 800;
    line-height: 1.2;
}

.culture .sec.culbox .row .txt-box p {
    font-size: 18px;
    line-height: 1.7;
}

.culture .sec.culbox .row .txt-box .txt-1 {
    font-family: "Noto Sans KR", sans-serif;
    font-size: 30px;
    color: #1F57F8;
    font-weight: 600;
    margin-bottom: 20px;
}

.culture .sec.culbox .row .txt-box .txt-2 {
    font-size: 19px;
    color: #222;
    margin-bottom: 30px;
}

.culture .sec.culbox .row .txt-box .txt-3 {
    margin-top: 20px;
}

.culture .sec.culbox .row .txt-box .txt-3 b {
    display: block;
    font-weight: 800;
    font-size: 20px;
}

.culture .sec.culbox.reverse .txt-box {
    order: 1;
}

.culture .sec.culbox.reverse .title {
    order: 2;
}

.culture .cont-sbj h3 {
    opacity: 0.8;
    font-size: 27px;
}

.culture .contribution {
    display: flex;
    align-items: center;
}

.culture .contribution .img-box {
    flex-shrink: 0;
    width: 50%;
}

.culture .contribution .txt-box {
    position: relative;
    padding-left: 100px;
}

/*.culture .contribution .txt-box:before {content:''; width:100px; height:2px; background:#1F57F8; position:absolute; top:20px; left:-30px;}*/
.culture .contribution .txt-box dt {
    font-size: 22px;
    color: #222;
    font-weight: 800;
    margin-bottom: 10px;
}

.culture .contribution .txt-box dd {
    font-size: 18px;
    color: #666;
    margin-bottom: 20px;
}

/* MILESTONES */
.milestones .sec:nth-child(2) {
    padding-bottom: 300px;
}

.milestones .sec:nth-child(2) .sub-tit-type04 {
    margin-bottom: 20px;
}

.milestones .sec:nth-child(2) .normal-txt {
    margin-bottom: 40px;
    text-align: center;
}

.history {
    position: relative;
}

.history:after {
    content: "";
    width: 1px;
    height: 100%;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 0;
    z-index: -1;
}

.history .cont-sbj {
    background: url("/images/sub/mile-bg01.jpg") no-repeat center center / cover;
    padding: 100px 0;
    margin-top: -150px;
    margin-bottom: 0;
}

.history .cont-sbj h3 {
    color: #fff;
}

.history .cont-sbj p {
    color: #fff;
    font-size: 18px;
    letter-spacing: 2px;
}

.history ul {
    margin-top: 100px;
}

.history ul li {
    position: relative;
    display: inline-block;
    width: 100%;
}

.history .left {
    float: left;
    width: 50%;
}

.history .right {
    float: right;
    width: 50%;
}

.history .txt {
    padding-top: 50px;
    position: relative;
}

.history .txt:after {
    content: "";
    width: 70px;
    height: 1px;
    background: #ddd;
    position: absolute;
    left: 0;
    top: 80px;
    z-index: -1;
}

.history .txt strong {
    display: block;
    font-size: 40px;
    color: #1F57F8;
    position: relative;
}

.history .txt strong:after {
    content: "";
    width: 10px;
    height: 10px;
    background: #1F57F8;
    position: absolute;
    left: -30px;
    top: 25px;
    border-radius: 50%;
}

.history .txt strong:before {
    content: "";
    width: 16px;
    height: 16px;
    background: #1F57F8;
    position: absolute;
    left: -32.5px;
    top: 22px;
    border-radius: 50%;
    opacity: 0.2;
}

.history .txt p {
    margin: 10px 0;
    padding-left: 20px;
    position: relative;
}

.history .txt p:after {
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #1F57F8;
    position: absolute;
    left: 0;
    top: 10px;
}

.history .right.txt {
    padding-left: 100px;
}

.history .left.txt {
    text-align: right;
    padding-right: 100px;
}

.history .left.txt:after {
    left: auto;
    right: 0;
}

.history .left.txt strong:after {
    left: auto;
    right: -30px;
}

.history .left.txt strong:before {
    left: auto;
    right: -33px;
}

.history .left.txt p {
    padding-left: 0;
    padding-right: 20px;
}

.history .left.txt p:after {
    left: auto;
    right: 0;
}

/* OFFICES */
.domestic .row {
    padding-bottom: 80px;
    margin-bottom: 80px;
    border-bottom: 1px solid #ddd;
}

.domestic .row:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}

.domestic .map {
    border: 1px solid #ddd;
}

.domestic .map-cont {
    background: #f6f6f6;
    padding: 30px;
    position: relative;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.domestic .map-cont .txt-box {
    width: 100%;
}

.domestic .map-cont p {
    display: inline-block;
    padding: 5px 0;
    position: relative;
    padding-left: 60px;
    margin: 10px 0;
    margin-right: 5%;
}

.domestic .map-cont p.full {
    width: 100%;
    margin-right: 0;
}

.domestic .map-cont p img {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.domestic .map-cont p b {
    color: #222;
    margin-right: 10px;
}

.domestic .map-cont p b:after {
    content: "";
    width: 1px;
    height: 15px;
    background: #ddd;
    display: inline-block;
    margin: 0 10px;
    vertical-align: middle;
}

.domestic .map-link {
    flex-shrink: 0;
    display: block;
    background: #1F57F8;
    text-align: center;
    color: #fff;
    padding: 10px 20px;
}

.domestic .map-link img {
    display: block;
    margin: 0 auto 5px;
}

.global .cont-sbj {
    padding: 150px 0;
    background: url("/images/sub/offices-bg01.jpg") no-repeat center center / cover;
}

.global .cont-sbj p {
    color: #fff;
}

.global ul {
    display: flex;
    flex-wrap: wrap;
}

.global ul li {
    position: relative;
    border: 1px solid #ddd;
    padding: 30px;
    margin-right: 2%;
    margin-bottom: 2%;
    width: 49%;
}

.global ul li:nth-child(2n) {
    margin-right: 0;
}

.global ul li .flag {
    position: absolute;
    top: 0;
    right: 0;
    border: 1px solid #ddd;
    border-top: none;
    border-right: none;
    max-width: 85px;
}

.global ul li h3 {
    font-size: 20px;
    color: #007ec5;
    margin-bottom: 10px;
}

.global ul li .adr-cont:before {
    content: "";
    width: 40px;
    height: 2px;
    background: #ddd;
    display: block;
    margin: 20px 0 0;
    font-size: 18px;
}

.global ul li b {
    display: block;
    color: #222;
    margin: 20px 0 10px;
}

.global ul li p {
    height: 3em;
    line-height: 1.5;
}

/* ========== SUB - PARTNERS ========== */
.partners ul {
    display: flex;
    flex-wrap: wrap;
    border-left: 1px solid #ddd;
}

.partners ul>li {
    position: relative;
    width: 33.3333%;
    height: 300px;
    border: 1px solid #ddd;
    border-left: none;
    border-top: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.partners ul>li>a {
    display: block;
    position: relative;
    z-index: 10;
    height: 100%;
}

.partners ul>li>a .partner-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 80%;
}

.partners ul>li>a .partner-logo img {
    max-width: 65%;
}

.partners ul>li>a p {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 20%;
    border-top: 1px solid #ddd;
    font-size: 17px;
    text-align: center;
}

.partners ul>li:nth-child(1),
.partners ul>li:nth-child(2),
.partners ul>li:nth-child(3) {
    border-top: 1px solid #ddd;
}

.partners ul>li:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 0;
    height: 100%;
    border-top: 1px solid #1F57F8;
    border-bottom: 1px solid #1F57F8;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.partners ul>li:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 0;
    border-left: 1px solid #1F57F8;
    border-right: 1px solid #1F57F8;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.partners ul>li:hover:after {
    width: 100%;
}

.partners ul>li:hover:before {
    height: 100%;
}

.career-video {
    position: relative;
    padding-bottom: 56.24%;
    width: 100%;
    height: 0;
    margin-bottom: 30px;
}

.career-video iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.career-board {
    margin-bottom: 100px;
}

.career-board .last {
    margin: 30px 0 50px;
}

.career .logo- {
    margin-bottom: 60px;
    text-align: center;
}

.partners-contact {
    margin: 100px 0;
}

.partners-contact .sub-m-tit {
    margin-bottom: 70px;
    font-size: 30px;
}

.partners-contact table {
    width: 100%;
    border-top: 1px solid #222;
    font-size: 18px;
}

.partners-contact th {
    border-bottom: 1px solid #ddd;
    padding: 20px;
    text-align: left;
}

.partners-contact td {
    border-bottom: 1px solid #ddd;
    padding: 20px;
}

.partners-contact input {
    width: 50%;
}

.partners-contact textarea {
    width: 100%;
}

.contact-btn {
    margin: 30px 0;
    text-align: center;
}

.contact-btn a {
    display: inline-block;
    padding: 10px;
    width: 47%;
    max-width: 150px;
    border-radius: 50px;
    margin: 5px;
    border: 1px solid #1F57F8;
    background: #1F57F8;
    color: #fff;
}

.contact-btn a:last-child {
    border: 1px solid #888;
    background: #fff;
    color: #000;
}

.contact-success {
    padding: 100px 20px 150px;
    text-align: center;
}

.contact-success .wr {
    overflow: hidden;
    position: relative;
    padding: 65px 0;
    background: #fbfbfb;
    border: 1px solid #ddd;
}

.contact-success .wr:before {
    content: "";
    width: 51.331%;
    height: 0;
    padding-bottom: 9.468%;
    background: url(/images/sub/contact-text01.png) no-repeat center center / cover;
    position: absolute;
    left: 0;
    top: 0;
}

.contact-success .wr:after {
    content: "";
    width: 35.134%;
    height: 0;
    padding-bottom: 13.303%;
    background: url(/images/sub/contact-text02.png) no-repeat center center / cover;
    position: absolute;
    right: 0;
    bottom: 0;
}

.contact-success h3 {
    position: relative;
    z-index: 10;
    margin-bottom: 40px;
    font-size: 33px;
    color: #000;
    font-weight: 500;
    line-height: 60px;
}

.contact-success h3 strong {
    font-weight: 900;
}

.contact-success a {
    display: inline-block;
    position: relative;
    z-index: 10;
    padding: 10px;
    width: 47%;
    max-width: 170px;
    border-radius: 50px;
    margin: 5px;
    border: 1px solid #1F57F8;
    background: #1F57F8;
    color: #fff;
}

.insight-view h4 {
    font-size: 30px;
    color: #222;
}

.insight-view .view-cont {
    display: flex;
    align-items: start;
    justify-content: space-between;
    margin: 50px 0 0;
}

.insight-view .view-cont .img {
    max-width: 300px;
    border: 1px solid #ddd;
}

/*.insight-view .view-cont .img div {width:100%; height:0; padding-bottom:80%; background-size:Cover; background-position:center center;}*/
.insight-view .view-cont .info {
    width: calc(100% - 350px);
}

.insight-view .view-cont .info p {
    font-size: 18px;
    color: #222;
    margin: 10px 0;
}

.insight-view .viewCont {
    margin: 50px 0 0;
    border: 1px solid #ddd;
}

.other-insight {
    margin: 50px 0 0;
}

.other-insight h5 {
    font-size: 24px;
    color: #222;
}

.other-insight ul {
    display: flex;
    align-items: start;
    justify-content: space-between;
    margin: 20px 0 0;
}

.other-insight ul li {
    width: 32%;
}

.other-insight ul li .img div {
    width: 100%;
    height: 0;
    padding-bottom: 80%;
    background-size: Cover;
    background-position: center center;
}

.other-insight a {
    display: block;
    position: relative;
    margin: 20px 0 0;
    width: 35%;
    padding: 15px 90px 15px 0;
    border-bottom: 1px solid #222;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.other-insight a span {
    display: block;
    font-size: 16px;
    color: #222;
    font-weight: 700;
    letter-spacing: 0.5px;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;
}

.other-insight a span i {
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -8px;
    -webkit-transition: right 0.3s;
    transition: right 0.3s;
}

.other-insight a:hover {
    padding: 15px 70px 15px 20px;
    border-color: #1F57F8;
    background: #1F57F8;
}

.other-insight a:hover span {
    color: #fff;
}

.other-insight a:hover span i {
    right: 20px;
}

.talent ul li {
    display: inline-block;
    width: 100%;
    margin: 0 0 100px;
}

.talent ul li>div {
    width: 50%;
}

.talent .left {
    float: left;
}

.talent .right {
    float: right;
}

.talent .txt {
    padding: 100px;
}

.talent .txt h3 {
    font-size: 24px;
    color: #222;
    margin: 0 0 20px;
}

.talent .txt b {
    color: #1F57F8;
}

.talent .left.txt {
    text-align: right;
    padding-right: 120px;
}

.talent .right.txt {
    padding-left: 0;
}

.hr ul {
    border-top: 1px solid #1F57F8;
    margin: 0 0 100px;
}

.hr ul li {
    border-bottom: 1px solid #ddd;
    padding: 50px;
    padding-left: 300px;
    position: relative;
    min-height: 240px;
}

.hr ul li img {
    position: absolute;
    left: 50px;
    top: 30px;
}

.hr ul li h3 {
    font-size: 24px;
    color: #222;
    margin: 0 0 20px;
}

.hr ul li p {
    margin: 10px 0;
    padding-left: 20px;
    position: relative;
}

.hr ul li p:after {
    content: "";
    width: 3px;
    height: 3px;
    background: #1F57F8;
    position: absolute;
    left: 0;
    top: 10px;
}

.brochure .first {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 100px;
}

.brochure .first img {
    width: 100%;
    max-width: 400px;
}

.brochure .first .cont {
    padding: 50px 80px;
    width: calc(100% - 400px);
}

.brochure .first .cont-sbj {
    text-align: left;
}

.brochure .btn {
    margin: 100px 0 0;
}

.brochure .btn p {
    margin: 0 0 20px;
}

.brochure .btn a {
    display: inline-block;
    margin-right: 10px;
    border: 1px solid #1F57F8;
    color: #1F57F8;
    padding: 12px 30px;
    font-weight: 600;
    font-size: 15px;
    transition: all ease 0.3s;
}

.brochure .btn a i {
    vertical-align: middle;
    margin-left: 10px;
}

.brochure .btn a:hover {
    background: #1F57F8;
    color: #fff;
}

.brochure ul {
    display: flex;
    flex-wrap: wrap;
    background: #f6f6f6;
    padding: 50px 0;
}

.brochure ul li {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 2%;
    background: #fff;
    padding: 30px;
}

.brochure ul li:nth-child(3n) {
    margin-right: 0;
}

.brochure ul li h3 {
    text-align: center;
    margin: 30px 0;
    font-size: 20px;
    color: #222;
}

.brochure ul li .img {
    padding: 0 60px;
}

.brochure ul li .btn {
    display: flex;
    justify-content: space-between;
    margin-top: 0;
}

.brochure ul li .btn a {
    width: 48%;
    padding: 12px;
}

.brochure ul li .btn a i {
    float: right;
    margin-top: 3px;
}