/* common */
.subpage { overflow: hidden; position:relative; text-align: center; }
.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%; position: relative;}
.sub_tit {margin-bottom: 80px;}
.sub_tit h2 {display: inline; position: relative;}
.sub_tit h2::after {content: ''; display: block; width: 15px; height: 15px; background-color: #00479d; border-radius: 50%; right: -19px; top: -9px; position: absolute;}

/* font size */
.fs_60 {font-size: 60px; font-weight: 700; color:#000; line-height: 1.3; }
.fs_32 {font-size: 32px; font-weight: 600; color:#111; line-height: 1.56; }
.fs_30 {font-size: 30px; font-weight: 700; color:#111; line-height: 1.56; }
.fs_24 {font-size: 24px; font-weight: 400; color:#000; line-height: 1.58; }
.fs_22 {font-size: 22px; font-weight: 700; color:#111; line-height: 1.58; }
.fs_20 {font-size: 20px; font-weight: 700; color:#111; line-height: 1.58; }
.fs_18 {font-size: 18px; font-weight: 300; color:#111; line-height: 1.83; }
.fs_17 {font-size: 17px; font-weight: 300; color:#111; line-height: 1.83; }
.fs_16 {font-size: 16px; font-weight: 300; color:#111; line-height: 1.83; }

/*Content CSS*/
#sec1 article + article {margin-top: 120px; }

.arti1 .top_img {display: flex; justify-content: center; align-items: center; border:1px solid #ddd; height: 500px; padding:30px 50px; margin-bottom: 70px;}
.arti1 .box_wrap {display: flex; justify-content: space-between; }
.arti1 .box_wrap .box {width: calc(50% - 20px); }
.arti1 .box_wrap .box .img { text-align: center; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center;
 overflow: hidden; border-radius: 5px; border:1px solid #ddd; height: 300px; width: 100%; }
.arti1 .box_wrap .box .img img {transition: transform .3s;}
.arti1 .box_wrap .box .img:hover img {transform: scale(1.05);}

.arti1 .box_wrap .box .top {display: flex; justify-content: space-between; align-items: center; text-align: left; margin-bottom:15px ;}
.arti1 .box_wrap .box .top .title {display: flex; align-items: center;}
.arti1 .box_wrap .box .top .title h3 {margin-right: 20px; flex-shrink: 0; }
.arti1 .box_wrap .box .top a {display: flex; justify-content: center; align-items: center; width: 130px; height: 40px; border:1px solid #111; transition: all .3s;
border-radius: 20px; font-size: 16px; font-weight: 500; color:#111; flex-shrink: 0; margin-left: 20px; }
.arti1 .box_wrap .box .top a:hover {background-color: #004be5; border-color: #004be5; color:#fff; }

/* article2 */
.arti2 .title {text-align: left; display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 20px;}
.arti2 .etc {text-align: left; margin-top:25px;}
.arti2 .etc ul {margin-top:15px;}
.arti2 .etc ul li {padding-left: 20px; position: relative; }
.arti2 .etc ul li + li {margin-top: 5px;}
.arti2 .etc ul li::before {content: ''; display: block; width: 7px; height: 7px; background-color: #004be5; position: absolute; left: 0; top:10px; }

/* table */
.sub_table table { width: 100%; border-collapse: collapse;text-align: center;  border-top: 1px solid #000; }
.sub_table table thead th { padding:20px 15px; border: 1px solid #ddd;  font-size: 19px; font-weight: 600;line-height: 1.3; color:#111; background-color: #f5fafe; }
.sub_table table tbody td {padding:15px; border: 1px solid #ddd;  font-size: 16px; font-weight: 300; line-height: 1.65; color:#111; }
.sub_table table thead th:first-child {border-left: 0;}
.sub_table table thead th:last-child {border-right: 0;}
.sub_table table tbody td:first-child {border-left: 0;}
.sub_table table tbody td:last-child {border-right: 0;}
.sub_table + p {text-align: right; color:#004be5; margin-top: 20px;}





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

    /* content */
    .arti1 .box_wrap .box { display: flex; flex-direction: column; justify-content: space-between;}
    .arti1 .box_wrap .box .top {width: 100%;}
    .arti1 .box_wrap .box .top .title {display: block;}
    @media screen and (min-width: 1025px) {
    .arti1 .box_wrap .box:nth-child(2) .top {padding-top: 15px;}
    }


}

@media screen and (max-width: 1024px) {
    /* common */
    .subpage {text-align: center;}
    .subpage > section {padding: 70px 0; }
    .sub_inner {padding:0 30px;}
    .sub_tit {margin-bottom: 50px;}
    /* font size */
    .fs_60 {font-size: 40px;  }
    .fs_32 {font-size: 25px; }
    .fs_30 {font-size: 24px; }
    .fs_24 {font-size: 20px; }
    .fs_22 {font-size: 18px; }
    .fs_20 {font-size: 17px; }
    .fs_18 {font-size: 15px; line-height: 1.65;}
    .fs_17 {font-size: 14px; line-height: 1.65;}
    .fs_16 {font-size: 14px; line-height: 1.65;}

    /* content */
    #sec1 article + article {margin-top: 80px;}

    .arti1 .top_img {height: auto; padding: 30px; margin-bottom: 50px;}
    .arti1 .box_wrap {display: block;}
    .arti1 .box_wrap .box {width: 100%;}
    .arti1 .box_wrap .box + .box {margin-top: 40px;}
    .arti1 .box_wrap .box .img {height: 250px; }
    .arti1 .box_wrap .box .top {align-items: flex-end;}
    .arti1 .box_wrap .box .top a {width: 100px; height: 35px; font-size: 14px;}


    .arti2 .title {display: block;}
    .arti2 .title p {text-align: right; margin-top: 5px;}
    .arti2 .etc ul li {padding-left: 12px;}
    .arti2 .etc ul li::before {width: 5px; height: 5px; top: 8px;}

    .sub_table {  width: 100%; overflow-x: auto;}
    .sub_table table thead th {font-size: 15px; padding:15px 10px;}
    .sub_table table tbody td {font-size: 13px; padding: 10px;}

}

@media screen and (max-width: 640px) {
    /* common */
    .subpage > section {padding: 50px 0;}
    .sub_inner {padding:0 20px;}
    .sub_tit {margin-bottom: 30px;}
    .sub_tit h2::after { width: 10px; height: 10px; right: -15px; top: -5px;}

    /* font size */
    .fs_60 {font-size: 32px;  }
    .fs_32 {font-size: 20px;  }
    .fs_30 {font-size: 20px;  }
    .fs_24 {font-size: 17px; }
    .fs_22 {font-size: 16px; }
    .fs_20 {font-size: 16px; }
    .fs_18 {font-size: 13px;}
    .fs_17 {font-size: 13px;}
    .fs_16 {font-size: 13px;}

    /* content */
    #sec1 article + article {margin-top: 60px;}

    .arti1 .top_img { padding: 20px; margin-bottom: 30px;}
    .arti1 .box_wrap .box .img {height: 200px; }
    .arti1 .box_wrap .box .top a {width: 80px; height: 30px; font-size: 12px;}

    .arti2 .title {margin-bottom: 15px;}
    .arti2 .etc ul {margin-top: 10px}

    /* .sub_table table {min-width: 500px;} */
    .sub_table table thead th {font-size: 14px; padding:12px 7px;}
    .sub_table table tbody td {font-size: 12px; padding: 7px;}
    .sub_table + p {margin-top: 15px;}

}

@media screen and (max-width: 500px) {
    .sub_table > table {width: 500px; }
    .sub_table {position: relative; overflow-x: hidden; }
    .sub_table.on {overflow-x: auto;}
    .sub_table::after {content: ''; position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; display: block; z-index: 2;
    background:url("../img/table_scroll.png") 50%/80% auto no-repeat rgba(0,0,0,.8); }
    .sub_table.on::after {display: none;}
}
