/* common */
.subpage { overflow: hidden; position:relative; }
.subpage > section {padding: 90px 0; position: relative; }
.subpage > section:nth-of-type(even) {background: #f7f7f7;}
.sub_inner { padding: 0 50px; margin: 0 auto; max-width: 1400px; width: 100%; }
.sub_tit {margin-bottom: 40px; }
.sub_tit.bor {padding-bottom: 40px; margin-bottom: 70px; border-bottom: 1px solid #ddd; }
@media screen and (min-width:1401px) {
    .sub_tit.flex {display: flex; }
    .sub_tit.flex p {margin-left: 30px; padding-top: 17px;}
}
.line_tit {position: relative; padding-left: 16px; text-align: left; margin-bottom: 30px; }
.line_tit::before {content: ''; display: block; width: 4px; height: 70%;  background:#00a650; position: absolute; left: 0; top:15%;}

/* font size */
.fs_47 {font-size: 47px; font-weight:700; color: #000; line-height: 1.2; letter-spacing: -.94px;}
.fs_35 {font-size: 35px; font-weight:700; line-height: 1.3; letter-spacing: -.7px; color:#000;  }
.fs_32 {font-size: 32px; font-weight:700; line-height: 1.4; letter-spacing: -.64px; color:#000;  }
.fs_25 {font-size: 24px; font-weight:700; line-height: 1.4; letter-spacing: -.5px; color:#000;  }
.fs_24 {font-size: 24px; font-weight:700; line-height: 1.5; letter-spacing: -.48px; color:#000;  }
.fs_22 {font-size: 22px; font-weight:700; line-height: 1.5; letter-spacing: -.44px; color:#000;  }
.fs_20 {font-size: 20px; font-weight:400; line-height: 1.5; letter-spacing: -.4px; color:#000;  }
.fs_18 {font-size: 18px; font-weight: 400; color: #555; line-height: 1.83; letter-spacing: -.36px; }
.fs_17 {font-size: 17px; font-weight: 400; color: #555; line-height: 1.65; letter-spacing: -.34px; }
.fs_16 {font-size: 16px; font-weight: 400; color: #666; line-height: 1.65; letter-spacing: -.32px; }

/*Content CSS*/
html {scroll-behavior: smooth;}
@media screen and (min-width: 1025px) {
    #sec1 {padding-bottom: 0;}
}

.his_wrap {position: relative; padding-left: 840px; }
.his_wrap .his_visual {position: absolute; left: 0; top:0; width: 840px; height: 100vh; position: absolute;
background:url("../img/his_img.jpg") 50%/cover no-repeat; text-align: center; padding: 90px 0 0; }
.his_wrap .his_cont {width: 100%; padding: 70px 0 70px 85px;}
.end_point {height: 90px;}

/* his_visual */
.his_visual.fixed {position: fixed; left: 50%; transform: translateX(-650px); top:0;}
.his_visual.end {top: auto; bottom: 0px; position: absolute;}
.his_visual p {color:#fff; line-height: 1.67; font-weight: 400; font-family: 'Montserrat', sans-serif; }
.his_visual p b {font-weight: 800; }
.his_visual .btns {margin-top: 45px;}
.his_visual .btns li + li {margin-top: 25px;}
.his_visual .btns a {cursor: pointer; font-size: 60px; font-weight: 800; letter-spacing: -1.2px; transition: all .3s; color:transparent;
 -webkit-text-stroke: 0.5px rgba(255,255,255,1);}
.his_visual .btns a.active {color:#fff;  -webkit-text-stroke: 0.5px rgba(255,255,255,0);}


/* his_cont */
@media screen and (min-width: 1025px) {
    .his_cont .box + .box {margin-top: 100px;}
}
.his_cont h3 {font-size: 40px; font-weight: 700; color:#000; letter-spacing: -.8px; margin-bottom: 15px;}
.his_cont h3::before {content: ''; display: block;width: 50px; height: 3px; background: #000; margin: 0 0 10px;}
.his_cont ul li {display: flex; align-items: flex-start; }
.his_cont ul li b {flex-shrink: 0; color:#00a650; margin-right: 25px; display: block; line-height: 1.3; width: 25px;}
.his_cont ul li p {line-height: 1.6;}
.his_cont ul li + li {margin-top:10px;}


@media screen and (max-width:1400px) {
    /* common */
    /* .subpage br:not(.space) {display: none;} */
    .sub_tit.flex p {margin-top:20px;}

    /* content */
    .his_wrap {padding-left:750px;}
    .his_wrap .his_visual {width: 750px;}
    .his_visual.fixed {transform: translateX(-0); left: 50px;}
    .his_wrap .his_cont {padding: 70px 0 70px 45px;}

}

@media screen and (max-width:1200px) {
    .his_wrap {padding-left:650px;}
    .his_wrap .his_visual {width: 650px;}
}


@media screen and (max-width: 1024px) {
    /* common */
    .subpage {text-align: center;}
    .subpage > section {padding: 70px 0; }
    .sub_inner {padding:0 30px;}
    .sub_tit.bor { margin-bottom: 40px;}
    /* font size */
    .fs_47 {font-size: 35px;}
    .fs_35 {font-size: 30px;}
    .fs_32 {font-size: 27px;}
    .fs_25 {font-size: 22px;}
    .fs_24 {font-size: 22px;}
    .fs_22 {font-size: 19px;}
    .fs_20 {font-size: 17px;}
    .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;}

    /* content */
    .his_wrap {padding: 0;}
    .his_wrap .his_visual {position: static; height: auto; padding: 50px 30px; width: 100%;}
    .his_visual .btns {margin-top: 30px;}
    .his_visual .btns a {font-size: 45px;}
    .his_visual .btns li + li {margin-top: 15px;}

    .his_wrap .his_cont {padding: 50px 0 0; text-align: left; display: flex; flex-wrap: wrap;}
    .his_cont .box {width: 50%;}
    .his_cont .box:nth-child(n+3) {margin-top:60px; }
    .his_cont h3 {font-size: 30px;}
    .his_cont ul li b {width: 20px;}

    .end_point {display: none;}




}

@media screen and (max-width: 640px) {
    /* common */
    .subpage > section {padding: 50px 0;}
    .sub_inner {padding:0 20px;}
    .sub_tit {margin-bottom: 30px; }
    .sub_tit.bor { padding-bottom: 30px; margin-bottom: 30px;}
    .sub_tit.flex p {margin-top: 10px; }
    .line_tit {padding-left: 12px; margin-bottom: 20px;}
    .line_tit::before { width: 3px;}

    /* font size */
    .fs_47 {font-size: 30px;}
    .fs_35 {font-size: 25px;}
    .fs_32 {font-size: 22px;}
    .fs_25 {font-size: 18px;}
    .fs_24 {font-size: 18px;}
    .fs_22 {font-size: 17px;}
    .fs_20 {font-size: 15px;}
    .fs_18 {font-size: 14px; }
    .fs_17 {font-size: 14px; }
    .fs_16 {font-size: 13px; }

    /* content */
    .his_wrap .his_visual {padding: 40px 20px; }
    .his_visual .btns {margin-top: 20px;}
    .his_visual .btns a {font-size: 35px;}
    .his_visual .btns li + li {margin-top: 10px;}

    .his_cont .box {width:100%; display: flex;}
    .his_cont .box:nth-child(n+2) {margin-top:50px; }
    .his_cont h3 {font-size: 25px; flex-shrink: 0; margin-right: 35px;}
    .his_cont h3::before {width: 30px; }

    .his_cont ul {padding-top:17px;}
    .his_cont ul li b {margin-right: 15px;}


}
