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

.img_box {display: flex; align-items: center; justify-content: center; border:1px solid #ddd; overflow: hidden; }
.line_tit::before {content: ''; width:30px; height: 3px; display: block ;background-color: #29a7e1; margin: 0 0 10px;}

.flex_line_tit {display: flex ;align-items: flex-start; margin-bottom: 60px; }
.flex_line_tit .line {flex-shrink: 0; margin-right: 34px; width: 135px; height: 1px; background: #000;  margin-top:23px;}
.flex_line_tit .txt {width: 100%; }


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

.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;  border-top: 3px solid #3a5da2; }
.sub_table table { width: 100%; border-collapse: collapse; text-align: center; }
.sub_table table th { padding:20px 20px; border: 1px solid #ccc; line-height: 1.3; color:#000; background-color: #f7f7f7; font-weight: 700;}
.sub_table table td {padding:20px 30px; border: 1px solid #ddd;  line-height: 1.65; background-color: #fff; font-weight: 500;}
.sub_table table td p {color:#444; font-weight: inherit; }
.sub_table table tr th:first-child {border-left: 0;}
.sub_table table tr th:last-child {border-right: 0;}
.sub_table table tr td:first-child {border-left: 0;}
.sub_table table tr td:last-child {border-right: 0;}

/* font size */
.fs_45 {font-size: 45px; font-weight :900; line-height: 1.1; letter-spacing: -.9px;}
.fs_40 {font-size: 40px; font-weight :800; line-height: 1.39; letter-spacing: -.8px;}
.fs_36 {font-size: 36px; font-weight :700; line-height: 1.39; letter-spacing: -.72px;}
.fs_34 {font-size: 34px; font-weight:500; line-height: 1.3; }
.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;  letter-spacing: -.64px;}
.fs_30 {font-size: 30px; font-weight:700; line-height: 1.3; letter-spacing: -.6px; }
.fs_28 {font-size: 28px; font-weight:800; line-height: 1.3;  }
.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;  }
.fs_24 {font-size: 24px; font-weight:700; line-height: 1.4; letter-spacing: -.46px;}
.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:600; line-height: 1.67; letter-spacing: -.42px; }
.fs_20 {font-size: 20px; font-weight:400; line-height: 1.67; letter-spacing: -.4px; }
.fs_19 {font-size: 19px; font-weight: 400; line-height: 1.67; letter-spacing: -.38px; }
.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.72; }
.fs_15 {font-size: 15px; font-weight: 400;  line-height: 1.72; }

/*Content CSS*/
#sec1 .map_wr {height:700px; overflow: hidden; border: 1px solid #ddd;}
#sec1 .map_wr .wrap_map {height: 100%;}
#sec1 .map_wr .map_border {display: none;}

#sec1 .info {display: flex ; justify-content: space-between; text-align: left; margin-top: 50px; }
#sec1 .info > li { width: calc(33.3% - 20px); max-width: 470px; }
#sec1 .info > li h3 {color:#000; font-weight: 700; display: flex; align-items: center; white-space: nowrap;}
#sec1 .info > li h3 i {margin-right: 10px; color: #dba52a;  flex-shrink: 0; font-size: 120%; flex-shrink: 0; }
#sec1 .info > li h3::after {content: ''; display: block; height: 1px; background-color: #000; margin-left:42px ;width: 100%; }
#sec1 .info > li .desc {background-color: #f7f7f7; padding:40px 35px; margin-top: 20px; min-height: 155px; }
#sec1 .info > li .desc p {line-height: 1.88; font-weight: 400; }


.guide {text-align: left; width: 100%;  padding: 90px 120px; margin-top: 45px; background:url("../img/guide_bg.jpg") 50%/cover no-repeat;}
.guide .cont {display: flex;align-items: flex-start;  }
.guide .cont + .cont {margin-top: 45px;  }
.guide .cont + .cont h3 {padding-top: 45px;}
.guide .cont + .cont .desc {border-top: 1px solid #ddd; padding-top: 45px;}

.guide h3 {flex-shrink: 0;  font-weight: 700; color:#fff; width: 400px; }
.guide h3 i {margin-right: 15px; font-size: 120%; position: relative; top:3px;  color: #efb228;}
.guide .desc {width: 100%; }
.guide .desc p {font-weight: 400; color:#fff; display: flex;}
.guide .desc p + p {margin-top: 10px;}
.guide .desc b {padding-right:20px; white-space: nowrap;}
.guide .desc b i {margin-right: 10px;}


.guide .list {  display: flex; justify-content: center; flex-wrap: wrap; width: 100%;  }
.guide .list > li {width: 100%}
.guide .list > li:first-child {padding-top: 0;}
.guide .list p {display: flex; align-items: flex-start; line-height: 1.6; }
.guide .list span {display: block; line-height: 1.6; }
.guide .list .cont + .cont {margin-top:40px; padding-top: 40px; border-top: 1px solid #ddd; }
/* .guide .list p span {display: inline-block; margin-right: 10px; position: relative; top:-2px; flex-shrink: 0;} */
.guide .list .flex_box {display: flex; margin-top: 15px;}
.guide .list .flex_box p + p {margin-left: 30px;}

.guide .list p span {font-size: 13px; font-weight: 400; color:#fff; display: inline-flex; align-items: center ;justify-content: center; border-radius: 3px;
width: 35px; height: 21px; background-color: #6175f5; line-height: 1; position:relative;top:2px; flex-shrink: 0; margin-right: 8px;}






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

    /* content */
    .guide {padding: 70px;}
    .guide h3 {width: 100%; margin: 0 0 20px;}
    .guide .cont {display: block; }
    .guide .cont + .cont {border-top: 30px; padding-top: 30px; border-top: 1px solid #ddd;}
    .guide .cont + .cont h3 {padding: 0;}
    .guide .cont + .cont .desc {padding: 0; border-top: 0;}



}

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

    /* content */


}



@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;}

    .flex_line_tit {display: block; margin-bottom: 40px;}
    .flex_line_tit .line {margin: 0 auto 25px; width: 70px;}
    /* .flex_line_tit .txt h2 {margin-bottom: 15px;} */

    /* 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;} */
    .col3_list > li {width: calc(33.3% - 10px); margin-right:15px; }
    .col3_list > li:nth-child(3n) {margin-right: 0;}

    .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;}

    .sub_table table th {  padding:15px;}
    .sub_table table td { padding: 15px;}

    /* font size */
    .fs_45 {font-size:35px; }
    .fs_40 {font-size:32px; }
    .fs_36 {font-size:30px; }
    .fs_34 {font-size: 27px;}
    .fs_33 {font-size: 26px;}
    .fs_32 {font-size: 26px;}
    .fs_30 {font-size: 25px;}
    .fs_28 {font-size: 22px;}
    .fs_27 {font-size: 22px;}
    .fs_26 {font-size: 21px;}
    .fs_25 {font-size: 21px;}
    .fs_24 {font-size: 20px;}
    .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 */
    #sec1 .map_wr {height:400px;}
    #sec1 .info {display: block; margin-top: 40px;}
    #sec1 .info > li {max-width: 100%; width: 100%;}
    #sec1 .info > li .desc {padding: 30px; min-height: 0; }
    #sec1 .info > li + li {margin-top: 30px;}

    .guide {padding: 30px;}
    .guide h3 {margin: 0 0 15px;}
    .guide .cont + .cont {margin-top: 20px; padding-top: 20px;}




}



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

    .flex_line_tit .line {margin: 0 auto 20px; width: 50px;}

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

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

   .sub_table table th { padding:10px;}
   .sub_table table td { padding: 10px;}


    /* font size */
    .fs_45 {font-size:27px; }
    .fs_40 {font-size:24px; }
    .fs_36 {font-size:22px; }
    .fs_34 {font-size: 21px;}
    .fs_33 {font-size: 20px;}
    .fs_32 {font-size: 20px;}
    .fs_30 {font-size: 20px;}
    .fs_28 {font-size: 19px;}
    .fs_27 {font-size: 19px;}
    .fs_26 {font-size: 18px;}
    .fs_25 {font-size: 18px;}
    .fs_24 {font-size: 17px;}
    .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 */
    #sec1 .map_wr {height:250px;}
    #sec1 .info {display: block; margin-top: 40px;}
    #sec1 .info > li .desc {padding: 20px;  }


    .guide {padding: 20px;}
    .guide h3 {margin: 0 0 10px;}

    .guide .desc b {padding-right:10px; }
    .guide .desc b i {margin-right: 5px;}
    .guide .desc p + p {margin-top: 5px;}
}
