
/* common */
#bu3 { overflow: hidden; padding-top: 130px; }
.sub_tit { line-height: 1; margin:0 0 45px; padding:0 0 38px; border-bottom: 1px solid #ddd; }
.sub_tit b { display: block; font-size: 26px; font-weight: 600; color: #008bf6; margin:0 0 20px; }
.sub_tit h2 { font-size: 55px; font-weight: bold; text-transform: uppercase; }
.sub_p { font-size: 20px; font-weight: 300; line-height: 1.65; }
.sub_p + .sub_p { margin-top: 30px; }
.sub_sp { font-size:16px; font-weight: 300; letter-spacing: -0.16px; line-height: 1.6; }
.sub_h3 { font-size: 28px; font-weight: bold; text-transform: uppercase; }
.sub_h4 { font-size: 24px; font-weight: bold; letter-spacing: -0.24px; }
.sub_stit { font-size: 45px; font-weight: bold; margin:0 0 50px; }
.sub_stit small { font-size: 20px; font-weight: 300; margin-left: 40px; }
.sub_stit.line { border-bottom: 1px solid #ddd; padding:0 0 35px; margin:0 0 40px; }
.line_tit { position:relative; font-size: 33px; font-weight: bold; border-bottom: 1px solid #ddd; padding:0 0 28px; margin:0 0 40px; }
.line_tit::after { content:""; position:absolute; left:0; width:150px; bottom:-1px; height:3px; background:#008bf6; }
.bar { position:relative; padding-left: 12px; }
.bar::before { content:""; position:absolute; left:0; width:4px; top:3px; height: 24px; background:#008bf6; }

/* .tab_btn_wr.tab_relative { position:relative; z-index: 3; } */
.tab_btn_wr.tab_fixed { position:fixed; left:50%; transform: translateX(-50%); max-width: 1300px; width:100%; top:90px; z-index: 100; }
.tab_btn { width:100%; display: flex; height: 50px; align-items: center; position:relative; z-index: 2; }
.tab_btn li { flex:1; height: 100%; }
.tab_btn li ~ li { margin-left: -1px; }
.tab_btn li a { display: block; width:100%; line-height: 48px; font-size: 18px; color: #000; cursor: pointer; transition: all .3s; background:#fff; border:1px solid #ccc; text-align: center; }
.tab_btn li a.active { background-color: #008bf6; border-color:#008bf6; color: #fff !important; }
.tab_btn li a:hover { color:#008bf6; }
.tab { display: none; }
.tab.active { display: block; }

.div_line { position:relative; text-align: center; margin:55px 0; }
.div_line span { font-size: 24px; display: inline-block; width:100px; background:#fff; color: #989898; }
.div_line::before { content:""; position:absolute; left:0; width:calc(50% - 50px); top:15px; height: 1px; background:#989898; }
.div_line::after { content:""; position:absolute; right:0; width:calc(50% - 50px); top:15px; height: 1px; background:#989898; }

.str_list { display: flex; justify-content: space-between; }
.str_list > li { width:calc(100%/3 - 23.5px); background-color: #fff; border:1px solid #ddd; border-radius: 15px; padding:55px 40px 50px; }
.str_list .sub_h3 { position:relative; margin:0 0 25px; }
.str_list .sub_h3::before { content:""; display: block; width:44px; height:3px; background:#008bf6; margin:0 0 15px; }

.dot_list1 li { position:relative; padding-left: 12px; font-size: 16px; line-height: 1.5; margin:0 0 10px; font-weight: 300;}
.dot_list1 li::before { content:""; position:absolute; left:0; width:4px; top:9px; height: 4px; background:#008bf6; }
.dot_list1 li:last-child { margin:0; }
.dot_list2 li { position:relative; padding-left: 12px; font-size: 20px; line-height: 1.55; margin:0 0 15px; font-weight: 300;}
.dot_list2 li::before { content:""; position:absolute; left:0; width:4px; top:13px; height: 4px; background:#008bf6; }
.dot_list2 li:last-child { margin:0; }

.line_list { display: flex; flex-wrap: wrap; justify-content: space-between; }
.line_list > li { width:calc(50% - 20px); border:1px solid #ddd; border-radius: 15px; padding:70px 65px; }
.line_list > li:nth-child(n+3) { margin-top: 40px; }






/* bu 공통 */
.bu_top { text-align: center; margin:0 0 90px; }
.bu_top .sub_tit { border-bottom: 0; padding:0; margin:0 0 50px; }

.tab_s1 { padding:0 0 90px; }
.tab_s1 .sub_h3 { text-transform:none; }
.tab_s1 .sub_p { margin:35px 0 0; }

.tab_s2 { padding:100px 0; background:url('../img/dot_bg.jpg') repeat center; }

.tab_s3 { padding:100px 0 120px; }
.tab_s3 .img_box .img { border:1px solid #ddd; padding:75px; text-align: center; }

.tab_s4 { padding:0 0 120px; }



/* bu3 */
.tab_s2 .img_box { border:1px solid #ddd; background:#fff; padding:65px; text-align: center; }

/* bu3_tab1 */
#bu3_tab1 .tab_s3 { padding-bottom: 0; }
#bu3_tab1 .s3_list { margin:30px 0 0; display: flex; justify-content: space-between; height: 100%; border-left:1px solid rgba(255,255,255,0.3); }
#bu3_tab1 .s3_list > li { position:relative; width:calc(25% - 15px); border:1px solid #ddd; padding:40px 20px 55px; transition: .3s; text-align: center; }
#bu3_tab1 .s3_list .icon { }
#bu3_tab1 .s3_list .icon img { transition: all .5s; }
#bu3_tab1 .s3_list .txt { position:relative; margin-top: 35px; }
#bu3_tab1 .s3_list .txt .sub_p { position:relative; font-weight: 500; height: 60px; line-height: 30px; }
#bu3_tab1 .s3_list .txt .sub_p.one { top:10px; }
#bu3_tab1 .s3_list .txt strong { display: block; margin:25px 0 0; font-size: 30px; color: #008bf6; line-height: 1; }
#bu3_tab1 .s3_list .txt strong span { font-size: 48px; font-weight: bold; margin-right: 5px; }

#bu3_tab1 .tab_s4 { padding:130px 0; border-bottom: 1px solid #ddd; }
#bu3_tab1 .tab_s4 .s4_art + .s4_art { margin-top: 130px; }
#bu3_tab1 .tab_s4 .sub_h3 { margin:0 0 30px; }
#bu3_tab1 .tab_s4 .sub_h3 small { margin-left: 45px; }
#bu3_tab1 .s4_list { display: flex; justify-content: space-between; }
#bu3_tab1 .s4_list > li { width:calc(100%/3 - 23.5px); }
#bu3_tab1 .s4_list .img { overflow: hidden; }
#bu3_tab1 .s4_list .img img { transition: all .3s; }
#bu3_tab1 .s4_list .txt { margin:30px 0 0; display: flex; }
#bu3_tab1 .s4_list .txt .sub_h4 { width:45px; }
#bu3_tab1 .s4_list .txt p { position:relative; padding-left: 22px; width:calc(100% - 45px); font-size: 18px; font-weight: 300; line-height: 1.65; }
#bu3_tab1 .s4_list .txt p::before { content:""; position:absolute; left:0; top:5px; width:1px; height: 20px; background:#ddd; }

#bu3_tab1 .tab_s5 { padding:120px 0 150px; }
#bu3_tab1 .s5_list { display: flex; flex-wrap: wrap; }
#bu3_tab1 .s5_list > li { width:calc(100%/3 - 23.5px); margin-right: 35px; margin-bottom: 35px; border:1px solid #ddd; background:#f7f7f7; }
#bu3_tab1 .s5_list > li:nth-child(3n) { margin-right: 0; }
#bu3_tab1 .s5_list .img { background:#fff; padding:20px; min-height: 220px; display: flex; align-items: center; justify-content: center; }
#bu3_tab1 .s5_list .txt { border-top: 1px solid #ddd; padding:26px 20px; text-align: center; }
#bu3_tab1 .s5_list .txt span {  font-size: 16px; letter-spacing: -0.16px; line-height: 1.65; }


/* bu3_tab2 */
/* #bu3_tab2 .tab_s4 { padding:90px 0 120px; background:url('../img/dot_bg.jpg') repeat center; } */
#bu3_tab2 .tab_s4 { padding:90px 0 120px; }
#bu3_tab2 .s4_list > li { display: flex; align-items: center; }
#bu3_tab2 .s4_list > li + li { margin-top: 60px; }
#bu3_tab2 .s4_list .img { width:610px; border:1px solid #ddd; background:#fff; padding:50px; display: flex; align-items: center; justify-content: center; min-height: 380px; }
#bu3_tab2 .s4_list .txt { width:610px; margin-left: 80px; }






/* hover */
@media screen and (min-width: 1024px) {

    #bu3_tab1 .s3_list > li:hover .icon img { transform: rotateY(180deg); }

    #bu3_tab1 .s4_list > li:hover img { transform: scale(1.14); }

}

/* media query */
@media screen and (max-width: 1420px) {

    /* common */
    .line_list > li { padding: 60px 50px; }

    .tab_btn_wr.tab_fixed { max-width: 100%; top:79px; }


    /* bu3_tab1 */
    #bu3_tab1 .s3_list li:last-child .txt .sub_p.one { top: 0; }

    #bu3_tab1 .tab_s4 .sub_stit small { display: block; margin:20px 0 0; line-height: 1.5; }


    /* bu3_tab2 */





}
@media screen and (max-width: 1023px) {

    /* common */
    #bu3 { text-align: center; padding-top: 80px; }
    .sub_tit { margin:0 0 40px; }
    .sub_tit b { font-size: 22px; }
    .sub_tit h2 { font-size: 42px; }
    .sub_p { font-size: 18px; }
    .sub_p + .sub_p { margin-top: 25px; }
    .sub_h3 { font-size: 23px; }
    .sub_h4 { font-size: 20px; }
    .sub_stit { font-size: 33px; margin: 0 0 40px; }
    .sub_stit small { font-size: 17px; margin-left: 30px; }
    .sub_stit.line { padding: 0 0 30px; margin: 0 0 35px; }
    .line_tit { font-size: 26px; margin: 0 0 30px; text-align: left; }

    .bar::before { top: 1px; }

    .str_list > li { width: calc(100%/3 - 10px); padding: 45px 30px 40px; text-align: left; }

    .dot_list2 li { font-size: 18px; margin: 0 0 12px; text-align: left; }

    .div_line { margin: 40px 0; }

    .tab_btn_wr.tab_fixed { top:59px; }

    .line_list > li { padding: 50px 30px; }



    /* bu 공통 */
    .bu_top { margin: 0 0 60px; }

    .tab_s1 { padding: 0 0 70px; }
    .tab_s1 .sub_p { margin: 30px 0 0; }

    .tab_s2 { padding: 80px 0; }

    .tab_s3 { padding: 80px 0 100px; }
    .tab_s3 .img_box .img { padding: 50px; }

    .tab_s4 { padding: 0 0 100px; }


    /* bu3 */
    /* bu3_tab1 */
    #bu3_tab1 .s3_list { flex-wrap: wrap; }
    #bu3_tab1 .s3_list > li { width: calc(50% - 15px); }
    #bu3_tab1 .s3_list > li:nth-child(n+3) { margin-top: 30px; }
    #bu3_tab1 .s3_list .txt strong { font-size: 26px; }
    #bu3_tab1 .s3_list .txt strong span { font-size: 38px; margin-right: 3px; }

    #bu3_tab1 .tab_s4 { padding: 80px 0; }
    #bu3_tab1 .tab_s4 .s4_art + .s4_art { margin-top: 80px; }
    #bu3_tab1 .tab_s4 .sub_h3 small { display: block; margin:20px 0 0; }
    #bu3_tab1 .s4_list > li { width: calc(100%/3 - 13.5px); }
    #bu3_tab1 .s4_list .txt { margin: 25px 0 0; flex-wrap: wrap; justify-content: center; }
    #bu3_tab1 .s4_list .txt p { padding: 22px 0 0; width:100%; font-size: 17px; }
    #bu3_tab1 .s4_list .txt p::before { left: 50%; transform: translateX(-50%); width: 30px; height: 1px; top: 11px; }

    #bu3_tab1 .tab_s5 { padding: 80px 0 120px; }
    #bu3_tab1 .s5_list > li { width: calc(100%/3 - 13.5px); margin-right: 20px; margin-bottom: 20px; }
    #bu3_tab1 .s5_list .img { padding: 30px; }


    /* bu3_tab2 */
    #bu3_tab2 .s4_list .img { min-height: 300px; }
    #bu3_tab2 .s4_list .txt { margin-left: 40px; }




}
@media screen and (max-width: 767px) {

    /* common */
    #bu3 { padding-top: 50px; }
    .sub_tit { margin:0 0 30px; padding: 0 0 30px; }
    .sub_tit b { font-size: 18px; margin: 0 0 15px; }
    .sub_tit h2 { font-size: 30px; }
    .sub_p { font-size: 16px; }
    .sub_p br { display: none; }
    .sub_p + .sub_p { margin-top: 20px; }
    .sub_sp { font-size:15px; }
    .sub_h3 { font-size: 19px; line-height: 1.65; }
    .sub_h4 { font-size: 17px; }
    .sub_stit { font-size: 25px; margin: 0 0 30px; }
    .sub_stit small { font-size: 15px; margin-left: 20px; }
    .sub_stit.line { padding: 0 0 25px; margin: 0 0 25px; }
    .line_tit { font-size: 20px; margin: 0 0 25px; padding:0 0 20px; line-height: 1.4; }
    .line_tit::after { width: 100px; height: 2px; }

    .tab_btn { height: 40px; }
    .tab_btn li a { line-height: 38px; font-size: 15px; }

    .str_list { flex-wrap: wrap; }
    .str_list .sub_h3 { margin: 0 0 20px; }
    .str_list .sub_h3::before { width: 40px; height: 2px; margin: 0 0 10px; }
    .str_list > li { width: 100%; padding: 35px 20px; }
    .str_list > li + li { margin-top: 15px; }

    .dot_list1 li { font-size: 15px; }
    .dot_list2 li { font-size: 16px; margin: 0 0 10px; }
    .dot_list2 li::before { top: 8px; }

    .line_list > li { width:100%; padding:35px 25px; }
    .line_list > li + li { margin:15px 0 0!important; }

    .div_line { margin: 30px 0; }
    .div_line span { font-size: 20px; width: 80px; }
    .div_line::before { width: calc(50% - 40px); top: 10px; }
    .div_line::after { width: calc(50% - 40px); top: 10px; }

    .bar::before { width: 3px; top: 0; height: 20px; }


    /* bu 공통 */
    .bu_top { margin: 0 0 40px; }
    .bu_top .sub_tit { margin: 0 0 30px; }

    .tab_s1 { padding: 0 0 50px; }
    .tab_s1 .sub_p { margin: 20px 0 0; }

    .tab_s2 { padding: 60px 0; }
    .tab_s2 .img_box { padding: 20px; }

    .tab_s3 { padding: 60px 0 80px; }
    .tab_s3 .img_box .img { padding: 20px; }

    .tab_s4 { padding: 0 0 80px; }


    /* bu3 */
    /* bu3_tab1 */
    #bu3_tab1 .tab_s3 { padding:60px 0 30px; }

    #bu3_tab1 .s3_list { margin: 20px 0 0; }
    #bu3_tab1 .s3_list > li { width: 100%; padding: 30px 20px; }
    #bu3_tab1 .s3_list > li:nth-child(n+2) { margin-top: 15px !important; }
    #bu3_tab1 .s3_list .txt { margin:20px 0 0; }
    #bu3_tab1 .s3_list .txt strong { font-size: 20px; margin: 20px 0 0; }
    #bu3_tab1 .s3_list .txt strong span { font-size: 28px; }
    #bu3_tab1 .s3_list .txt .sub_p { height: auto; }

    #bu3_tab1 .tab_s4 { padding: 40px 0; }
    #bu3_tab1 .tab_s4 .s4_art + .s4_art { margin-top: 60px; }
    #bu3_tab1 .tab_s4 .sub_h3 { margin: 0 0 20px; }
    #bu3_tab1 .tab_s4 .sub_h3 small { margin: 15px 0 0; }
    #bu3_tab1 .s4_list { flex-wrap: wrap; }
    #bu3_tab1 .s4_list > li { width:100%; }
    #bu3_tab1 .s4_list > li + li { margin-top: 40px; }
    #bu3_tab1 .s4_list .img img { width: 100%; }
    #bu3_tab1 .s4_list .txt { margin:18px 0 0; }
    #bu3_tab1 .s4_list .txt p { font-size: 16px; }

    #bu3_tab1 .tab_s5 { padding: 60px 0 80px; }
    #bu3_tab1 .s5_list > li { width: calc(50% - 5px); margin-right: 10px; margin-bottom: 10px; }
    #bu3_tab1 .s5_list > li:nth-child(3n) { margin-right: 10px; }
    #bu3_tab1 .s5_list > li:nth-child(2n) { margin-right: 0; }
    #bu3_tab1 .s5_list .img { padding: 20px; }
    #bu3_tab1 .s5_list .txt { padding: 20px 10px; height: 100px; display: flex; align-items: center; justify-content: center; }
    #bu3_tab1 .s5_list .txt span { font-size: 15px; }
    #bu3_tab1 .s5_list > li:nth-last-child(1) .txt,
    #bu3_tab1 .s5_list > li:nth-last-child(2) .txt,
    #bu3_tab1 .s5_list > li:nth-last-child(3) .txt,
    #bu3_tab1 .s5_list > li:nth-last-child(4) .txt { height: 55px; }

    /* bu3_tab2 */
    #bu3_tab2 .tab_s4 { padding: 60px 0 80px; }
    #bu3_tab2 .s4_list > li { flex-wrap: wrap; }
    #bu3_tab2 .s4_list .img { width:100%; min-height: 0; padding:30px; }
    #bu3_tab2 .s4_list .img img { max-height: 150px; }
    #bu3_tab2 .s4_list .txt { width:100%; margin:20px 0 0; }


}
@media screen and (max-width: 420px) {

    #bu3_tab1 .s5_list .img { min-height: 150px; padding:15px; }

}
