/* common */
.subpage { overflow: hidden; position:relative; text-align: left; }
.subpage > section {padding: 90px 0; position: relative; color:#000;}
.subpage img {max-width: inherit;}
.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: 70px; }

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

.left_line {position: relative; padding-left: 16px; }
.left_line::before {content: ''; display: block; width: 5px; height: 30px; background-color: #2c2e83;  left: 0; top: 3px; position: absolute; }

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

.dot_p {position: relative; padding-left: 15px; font-weight: 400;  text-align: left;}
.dot_p::before {content: ''; position: absolute; left: 0; top:11px; display: block; width: 5px; height: 5px; background-color: #2c2e83; border-radius: 50%;}

.dot_tit {position: relative; padding-left: 20px; font-weight: 700;  text-align: left;}
.dot_tit::before {content: ''; position: absolute; left: 0; top:8px; display: block; width: 10px; height: 10px; background-color: #2c2e83; }


/* 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: 30px;}

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

.col4_list {display: flex; justify-content: space-between; flex-wrap: wrap;}
.col4_list > li {width: calc(25% - 15px);}


/* font size */
.fs_60 {font-size: 60px; font-weight :700; line-height: 1.1;}
.fs_57 {font-size: 57px; font-weight :900; line-height: 1.1;}
.fs_53 {font-size: 53px; font-weight :700; line-height: 1.1;}
.fs_50 {font-size: 50px; font-weight :700; line-height: 1.1;}
.fs_40 {font-size: 40px; font-weight :700; line-height: 1.1;}
.fs_37 {font-size: 37px; font-weight :700; line-height: 1.1;}
.fs_36 {font-size: 36px; font-weight :700; line-height: 1.1;}
.fs_35 {font-size: 35px; font-weight :700; line-height: 1.1;}
.fs_34 {font-size: 34px; font-weight:500; line-height: 1.2;  }
.fs_32 {font-size: 32px; font-weight:700; line-height: 1.2;  }
.fs_30 {font-size: 30px; font-weight:600; line-height: 1.2;  }
.fs_28 {font-size: 28px; font-weight:700; line-height: 1.2;  }
.fs_26 {font-size: 26px; font-weight:700; line-height: 1.2;  }
.fs_25 {font-size: 24px; font-weight:700; line-height: 1.2; }
.fs_24 {font-size: 24px; font-weight:700; line-height: 1.2; }
.fs_23 {font-size: 23px; font-weight:700; line-height: 1.4; }
.fs_22 {font-size: 22px; font-weight:600; line-height: 1.4; }
.fs_21 {font-size: 21px; font-weight:600; line-height: 1.4; }
.fs_20 {font-size: 20px; font-weight:300; line-height: 1.76; }
.fs_19 {font-size: 19px; font-weight: 400; color:#333;  line-height: 1.76; letter-spacing: -.36px; }
.fs_18 {font-size: 18px; font-weight: 400; color:#333;  line-height: 1.83; letter-spacing: -.36px; }
.fs_17 {font-size: 17px; font-weight: 300; color:#333;  line-height: 1.76; letter-spacing: -.36px; }
.fs_16 {font-size: 16px; font-weight: 300; color:#333;  line-height: 1.76; letter-spacing: -.36px; }
.fs_15 {font-size: 15px; font-weight: 300; color:#333;  line-height: 1.76; letter-spacing: -.36px; }


/*Content CSS*/
.subpage .img {display: flex; align-items: center; justify-content: center; overflow: hidden;  background-color: #fff; border:1px solid #ddd; padding: 55px 0;}

.left_line + .img {margin-top: 30px;}

.txt_box {display: flex; align-items: center; text-align: left; height: 100px;  background-color: #f7f7f7; margin: 20px 0 50px; padding: 0 45px;}
.subpage > section:nth-of-type(even) .txt_box  {background: #fff; }

.check_box {display: flex; align-items: flex-start; text-align: center; padding: 30px 20px; border:3px solid #ddd; background-color: #fff;
margin-top: 55px; justify-content: center;}
.check_box i {display: block; margin-right: 10px; width: 25px; height: 23px; background:url("../img/check.png") 50%/contain no-repeat; position: relative; top:4px; }
.check_box p {color:#333; }

.cont_wrap {border-top: 1px solid #000;}
.cont_wrap .cont { display: flex; align-items: flex-start;  border-bottom: 1px solid #ddd; padding: 55px 0;}
.cont_wrap .cont .dot_tit {flex-shrink: 0; width: 380px ; margin-top: 10px; }
.cont_wrap .cont .dot_tit span {display: block; color: #000;}
.cont_wrap .cont .desc {width: 100%; }
.cont_wrap .cont .img {margin-top: 50px; }




@media screen and (max-width:1400px) {
    /* common */



}
