/* common */
.subpage { overflow: hidden; position:relative; }
.subpage > section {padding: 90px 0; position: relative; }
.subpage > section:nth-of-type(even) {background: #f7f7f7;}
.subpage img {max-width: inherit; }
.sub_inner { padding: 0 50px; margin: 0 auto; max-width: 1400px; width: 100%; }
.sub_tit {margin-bottom: 50px; }

.line_tit::before {content: ''; width:30px; height: 3px; display: block ;background-color: #fef15a; margin: 0 0 10px;}

.gray_txt_box {background: #f7f7f7; padding:50px; }
.img_box {display: flex; align-items: center; justify-content: center; border:1px solid #ddd; overflow: hidden; }

.dot_list > li {position: relative; padding-left: 15px; line-height: 1.65; text-align: left;}
.dot_list > li::before {content: ''; position: absolute; left: 0; top:11px; display: block; width: 5px; height: 5px; background-color: #333; border-radius: 50%;}
.dot_list > li:nth-child(n+2) {margin-top: 10px ;}

.dot_tit {position: relative; padding-left: 16px; text-align: left;}
.dot_tit::before {content: ''; position: absolute; left: 0; top:11px; display: block; width: 5px; height: 5px; background-color: #333; border-radius: 50%;}

/* btn */
.c_btn {width: 200px; height: 50px; display: flex; align-items: center; justify-content: space-between; color: #999; font-size: 15px; padding:0 20px 0 25px;
font-weight: 500; overflow: hidden; z-index: 1; position: relative; background:#fff; border:1px solid #ddd; transition: all .3s; text-transform: uppercase; pointer-events: auto;  }
.c_btn::before {content: ""; z-index: -1; position: absolute; background: #fef15a; transition: all .4s; left: 0; top: 0; width: 0; height: 100%;}
.c_btn .arrow {transition: background-image .3s; display: block; width: 24px ;height: 8px; background:url("../img/c_btn_arrow.png") 50%/contain no-repeat;
position: relative; top:-2px; }
.c_btn:hover {border-color: #fef15a; color:#000;  }
.c_btn:hover .arrow {background-image:url("../img/c_btn_arrow_b.png");}
.c_btn:hover::before {width:100%;}

/* col_list */
.col2_list {display: flex; justify-content: space-between; flex-wrap: wrap;}
.col2_list > li {width: calc(50% - 15px);}
.col2_list > li:nth-child(n+3) {margin-top: 40px;}

.col3_list {display: flex; flex-wrap: wrap; }
.col3_list > li {width: calc(33.3% - 23.3px); margin-right: 35px ;}
.col3_list > li:nth-child(n+4) {margin-top: 60px;}
@media screen and (min-width: 1025px) {
    .col3_list > li:nth-child(3n) {margin-right: 0;}
}

.col4_list {display: flex; justify-content: flex-start; flex-wrap: wrap;}
.col4_list > li {width: calc(25% - 15px); margin-right: 20px; }
@media screen and (min-width: 1025px) {
    .col4_list > li:nth-child(4n) {margin-right: 0;}
    .col4_list > li:nth-child(n+5) {margin-top: 20px;}
}

/* table */
.sub_table {width: 100%; overflow-x: auto; padding-bottom: 1px;}
.sub_table table { width: 100%; border-collapse: collapse; text-align: center; }
.sub_table table th { padding:12px 30px; border: 1px solid rgba(221,221,221,.2); font-size: 18px; font-weight: 700;line-height: 1.1; color:#fff; background-color: #231f20; }
.sub_table table td {padding:10px 30px; border: 1px solid #ddd;  font-size:16px; font-weight: 400; line-height: 1.5; color:#333; background-color: #fff; }
.sub_table table tr td:first-child {border-left: 0;}
.sub_table table tr td:last-child {border-right: 0;}
.sub_table table .left th,
.sub_table table .left td,
.sub_table table th.left,
.sub_table table td.left {text-align: left; }
@media screen and (min-width:1025px) {
   .sub_table table tbody th {font-size: 16px;}
}

/* font size */
.fs_50 {font-size: 50px; font-weight :700; line-height: 1.2; letter-spacing: -1px;}
.fs_45 {font-size: 45px; font-weight :700; line-height: 1.2; }
.fs_37 {font-size: 37px; font-weight :700; line-height: 1.2; }
.fs_34 {font-size: 34px; font-weight:500; line-height: 1.3; letter-spacing: -.68px; }
.fs_33 {font-size: 33px; font-weight:700; line-height: 1.3; letter-spacing: -.66px; }
.fs_32 {font-size: 32px; font-weight:700; line-height: 1.3;  }
.fs_30 {font-size: 30px; font-weight:700; line-height: 1.3; letter-spacing: -.6px; }
.fs_27 {font-size: 27px; font-weight:700; line-height: 1.3; letter-spacing: -.54px; }
.fs_26 {font-size: 26px; font-weight:700; line-height: 1.3;  }
.fs_25 {font-size: 25px; font-weight:700; line-height: 1.3; letter-spacing: -.5px;  }
.fs_23 {font-size: 23px; font-weight:700; line-height: 1.4; letter-spacing: -.46px;}
.fs_22 {font-size: 22px; font-weight:600; line-height: 1.4; letter-spacing: -.44px; }
.fs_21 {font-size: 21px; font-weight:700; line-height: 1.4; }
.fs_20 {font-size: 20px; font-weight:300; line-height: 1.67; letter-spacing: -.4px; }
.fs_19 {font-size: 19px; font-weight: 400; line-height: 1.67; }
.fs_18 {font-size: 18px; font-weight: 400;  line-height: 1.83; letter-spacing: -.36px; color:#333; }
.fs_17 {font-size: 17px; font-weight: 400; line-height: 1.72; }
.fs_16 {font-size: 16px; font-weight: 400;  line-height: 1.88; letter-spacing: -.32px; color:#333;}
.fs_15 {font-size: 15px; font-weight: 400;  line-height: 1.87; letter-spacing: -.3px; }

/*Content CSS*/
.sub_tit {margin-bottom: 65px; }
.sub_tit p {font-weight: 400; margin-top: 30px; line-height: 1.73; }
@media screen and (min-width:1025px) {
    .sub_tit.flex { display: flex; align-items: flex-start; }
    .sub_tit.flex h2 {flex-shrink: 0; margin-right: 50px;}
    .sub_tit.flex p {padding-top: 11px; margin-top: 0;}
}

.sec2 .swiper {position: relative; width: 100%; overflow: visible;}
.sec2 .swiper-slide-active {  z-index: 2;  }

.sec2 .swiper-slide  {position: relative; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; overflow: hidden; width: 100%; height: 600px; padding: 50px 50px; transition: all .3s ease;}
.sec2 .swiper-slide > img {width: 100%; height: 100%; position: absolute; z-index: -2; left: 0; top:0; object-fit: cover; transition: transform .3s;}
.sec2 .swiper-slide:hover > img {transform: scale(1.05);}

.sec2 .swiper-slide .num { font-size: 100px; font-weight: 700; letter-spacing: -2px; line-height: .7; color:#fff; font-family: "Montserrat", sans-serif; font-style: normal;}
.sec2 .swiper-slide .txt {width: 100%;  text-align: left; }
.sec2 .swiper-slide .txt h4 { margin-bottom:20px; line-height: 1.1; color:#fff; font-weight: 700; }
.sec2 .swiper-slide .txt p {  color:rgba(255,255,255,.8)}
/* hover */
@media screen and (min-width: 1025px) {
    .sec2 .swiper-slide {opacity:0;  pointer-events: none;}
    .sec2 .swiper-slide.swiper-slide-next,
    .sec2 .swiper-slide.swiper-slide-next + .swiper-slide + .swiper-slide {transform: translateY(50px);}

    .sec2 .swiper .swiper-slide-active,
    .sec2 .swiper .swiper-slide-next,
    .sec2 .swiper .swiper-slide-next + .swiper-slide,
    .sec2 .swiper .swiper-slide-next + .swiper-slide + .swiper-slide {opacity: 1; pointer-events: auto; }
}
.sec2 .scroll_mark {display: flex; position:relative;  z-index:3; width: 100px; height: 100px; border-radius: 50%; background-color: #fef15a; animation:c2_ani 1.4s infinite ease;   align-items: center; justify-content: center;  flex-direction: column; text-align: center; position: absolute; left:361px; top:0; }
.sec2 .scroll_mark p {font-size: 16px; font-weight: 700; color:#231f20; font-family: "Montserrat", sans-serif; line-height: 1; margin-bottom:7px; }
@keyframes c2_ani {
    0%{top:105px;}
    50%{top: 95px;}
    100% {top:105px;}
}

.sec2 h3.fs_34 {margin-top: 150px; font-weight: 400; }
.sec2 h3.fs_34 .quote {display: inline-block; padding: 0 15px;  font-weight: 700; letter-spacing: -.7px; position: relative; text-align: center; z-index: 1;
margin: 0 15px;}
.sec2 h3.fs_34 .quote i { display: block; position: absolute; left: -19px; top:-30px; z-index: -1; }
.sec2 h3.fs_34 .quote i:nth-of-type(2) {  left: auto; right:-19px; }


.sec3 .list {position: relative; z-index: 1; display: flex; text-align: center; flex-wrap: wrap; }
.sec3 .list > li {width: 33.3%; position: relative; z-index: 1;}
.sec3 .list > li::before {content: ''; display: block ; position: absolute; z-index: -1; width: 100%; height: 1px; background-color: #ddd; top: 10px; left:0; }
.sec3 .list > li:nth-child(n+4) {margin-top: 90px; }
.sec3 .list .cir_wr {width: 21px; height: 21px; margin:0 auto; position: relative; display: flex; align-items: center ;justify-content: center; z-index: 1;
 background-color:rgba(198,198,198,.3); border-radius: 50%; transition: background-color .3s;}
.sec3 .list .cir {display:block; width:9px; height:9px; background-color: #c6c6c6; border-radius: 50%; transition: background-color .3s;}
.sec3 .list > li.active .cir_wr {background-color:rgba(35,31,32,.3); }
.sec3 .list > li.active .cir {background-color: #231f20; }
.sec3 .list > li .icon { margin: 40px 0 40px; display: flex; align-items: center; height: 65px; justify-content: center;}
.sec3 .list > li .txt span {font-size: 15px;  color:#231f20; line-height: 1; font-family: 'Montserrat', sans-serif;  display: flex; align-items:center; justify-content: center;
margin: 0 auto; width: 56px; height: 19px; background:url("../img/list_num_bg.png") 50%/contain no-repeat; font-weight: 700;}
.sec3 .list > li .txt h4 {font-weight: 700; margin: 10px 0 20px;}


.sec3 .list > li.notice::before {display: none;}
.sec3 .list > li.notice h5 {margin-bottom:20px; }
.sec3 .list > li.notice ul li {color:#333; }
.sec3 .list > li.notice ul li + li {margin-top: 10px;}
.sec3 .list > li.notice ul li::before {content: ''; display: inline-block; width: 5px; height: 5px; background: #333; margin-right: 7px; border-radius: 50%;
position: relative; top:-4px; }
@media screen and (min-width:1025px) {
    .sec3 .list > li.notice {width: 30%; margin-left: auto; margin-top: 60px;}
}







@media screen and (max-width:1400px) {
    /* common */
    .subpage br:not(.space) {display: none;}
    .subpage img {max-width: 100%; }

    /* content */
    .sec2 .scroll_mark {left: 27%;}
    .sec2 .swiper-slide {padding: 40px; }

    .sec3 .list > li:not(.notice) {padding:  0 10px; }
    .sec3 .list > li.notice {padding:  40px; }

}


@media screen and (max-width: 1024px) {
    /* common */
    .subpage {text-align: center;}
    .subpage > section {padding: 70px 0; }
    .sub_inner {padding:0 30px;}
    .sub_tit {margin: 0 0 40px;}
    /* .line_tit::before {margin: 0 auto 15px;} */
    .line_tit::before {margin: 0 0 15px;}

    .gray_txt_box {padding: 30px;}

    .dot_list > li::before { top: 8px;}
    .dot_tit::before { top: 8px;}

    .sub_table table th {font-size: 15px; padding:12px 10px;}
    .sub_table table td {font-size: 14px; padding: 10px;}

    /* col_list */
    .col2_list > li {width: 100%;}
    .col2_list > li:nth-child(n+2) {margin-top: 20px;}
    /* .col2_list > li:nth-child(n+2) {margin-top: -2px;} */

    .col3_list > li {width: calc(50% - 10px); margin-right: 20px; }
    .col3_list > li:nth-child(even) {margin-right: 0;}
    .col3_list > li:nth-child(n+3) {margin-top: 20px;}

    .col4_list > li {width: calc(50% - 10px);}
    .col4_list > li:nth-child(even) {margin-right: 0;}
    .col4_list > li:nth-child(n+3) {margin-top: 20px;}

    /* font size */
    .fs_50 {font-size:40px; }
    .fs_45 {font-size:33px; }
    .fs_37 {font-size:30px; }
    .fs_34 {font-size: 27px;}
    .fs_33 {font-size: 26px;}
    .fs_32 {font-size: 26px;}
    .fs_30 {font-size: 25px;}
    .fs_27 {font-size: 21px;}
    .fs_26 {font-size: 21px;}
    .fs_25 {font-size: 21px;}
    .fs_23 {font-size: 19px;}
    .fs_22 {font-size: 19px;}
    .fs_21 {font-size: 18px; line-height: 1.4;}
    .fs_20 {font-size: 17px; line-height: 1.65;}
    .fs_19 {font-size: 17px; line-height: 1.65;}
    .fs_18 {font-size: 16px; line-height: 1.65;}
    .fs_17 {font-size: 15px; line-height: 1.65;}
    .fs_16 {font-size: 14px; line-height: 1.65;}
    .fs_15 {font-size: 13px; line-height: 1.65;}

    /* content */
    .sec2 .scroll_mark {display: none; }
    .sec2 .swiper {overflow: hidden;}
    .sec2 .swiper-slide {padding: 30px; height:400px;}
    .sec2 .swiper-slide .num {font-size: 70px; }
    .sec2 h3.fs_34 {margin-top:60px; line-height: 1.5;}
    .sec2 h3.fs_34 .quote {padding: 0 10px; margin: 0 5px;}
    .sec2 h3.fs_34 .quote i {width: 40px; top:-20px; }


    .sec3 .list {flex-wrap: wrap; }
    .sec3 .list::before {display: none;}
    .sec3 .list > li {  width:50%; position: relative; }
    .sec3 .list > li:last-child::before {width: 200%;}
    .sec3 .list > li:nth-child(n+3) {margin-top: 50px;}
    .sec3 .list > li .icon {margin:25px 0 30px;}

     .sec3 .list > li.notice {padding: 30px; width: calc(50% - 20px); margin-left: auto; }

}

@media screen and (max-width: 640px) {
    /* common */
    .subpage > section {padding: 50px 0;}
    .sub_inner {padding:0 20px;}
    .sub_tit {margin-bottom: 30px; }

    .gray_txt_box {padding: 20px;}

    .dot_list > li {padding-left: 10px;}
    .dot_list > li::before { top: 7px; width: 4px; height: 4px; }

    .dot_tit::before { top: 7px;}

    /* c_btn */
    .c_btn {width: 100%; height: 40px; padding: 0 15px; font-size: 13px; }

    .sub_table table th {font-size: 14px; padding:10px 7px;}
    .sub_table table td {font-size: 13px; padding: 7px;}

    /* col_list */
    .col2_list > li {width: 100%;}
    .col2_list > li:nth-child(n+2) {margin-top: 10px;}

    .col3_list > li {width: 100%; margin-right: 0; }
    .col3_list > li:nth-child(n+2) {margin-top: 40px;}

    .col4_list > li {width: 100%;}
    .col4_list > li:nth-child(n+2) {margin-top: 10px;}

    /* font size */
    .fs_50 {font-size:32px; }
    .fs_45 {font-size:25px; }
    .fs_37 {font-size:22px; }
    .fs_34 {font-size: 21px;}
    .fs_33 {font-size: 20px;}
    .fs_32 {font-size: 20px;}
    .fs_30 {font-size: 20px;}
    .fs_27 {font-size: 18px;}
    .fs_26 {font-size: 18px;}
    .fs_25 {font-size: 18px;}
    .fs_23 {font-size: 17px;}
    .fs_22 {font-size: 17px;}
    .fs_21 {font-size: 16px;}
    .fs_20 {font-size: 15px;}
    .fs_19 {font-size: 15px;}
    .fs_18 {font-size: 14px;}
    .fs_17 {font-size: 14px;}
    .fs_16 {font-size: 13px;}
    .fs_15 {font-size: 12px;}

    /* content */
    .sub_tit p {margin-top: 15px; }

    .sec2 .swiper-slide {padding: 20px; height:350px;}
    .sec2 .swiper-slide .num {font-size: 50px; }
    .sec2 .swiper-slide .txt h4 {margin-bottom: 10px; }
    .sec2 h3.fs_34 {margin-top:40px; line-height: 1.5;}
    .sec2 h3.fs_34 .quote {padding: 0 12px; margin: 0 5px;}
    .sec2 h3.fs_34 .quote i {width: 30px; top:-10px; left: -5px;}
    .sec2 h3.fs_34 .quote i:nth-of-type(2) {right: -5px;}

    .sec3 .list > li {width: 50%; padding: 0 5px;}
    .sec3 .list > li:nth-child(n+3) {margin-top: 40px;}
    .sec3 .list > li .icon {height: 55px; margin: 20px 0 20px;}
    .sec3 .list > li .icon img {height: 55px;}
    .sec3 .list > li .txt h4 {margin: 10px 0; }

    .sec3 .list > li:nth-child(n+5) {width: 100%; }
    .sec3 .list > li.notice {padding: 30px 20px; }
    .sec3 .list > li.notice h5 {margin-bottom: 15px;}
    .sec3 .list > li.notice ul li + li {margin-top: 5px ;}
    .sec3 .list > li.notice ul li::before {top:-3px; }

}

@media screen and (max-width: 480px) {
    .sec3 .list > li {width:100%; padding: 0;}
    .sec3 .list > li:nth-child(n+2) {margin-top: 40px;}
}
