@charset "utf-8";
/* contents */
.contents {font-size: 2.4rem; line-height: 1.3; letter-spacing: -0.05rem;}

@media screen and (max-width: 1280px) {
    .contents {font-size: 2.2rem;}
}

@media screen and (max-width: 1026px) {
    .contents {font-size: 2rem;}
}

@media screen and (max-width: 768px) {
    .contents {font-size: 1.6rem;}
}

/* text align */
.tr {text-align: right !important;}

/* font weight */
.fwt600 {font-weight: 600 !important;}

/* color */
.cblue {color: #2359c8 !important;}

/* basicTxt */
.basicTxt {font-weight: 500;}


/* contTItle & iconTit */
.iconTit {display: flex; align-items: center; gap: 1.2rem; margin-bottom: 1.9rem;}

h2.conTitle {font-size: 3.5rem; letter-spacing: -0.05rem; font-weight: 600; line-height: 1.1;}

h3.conTitle {position: relative; font-size: 2.6rem; letter-spacing: -0.05rem; line-height: 1.3; padding-left: 1.7rem; font-weight: 600; margin-bottom: 3rem;}
h3.conTitle::before {content: ''; position: absolute; top: 0.6rem; left: 0; width: 0.6rem; height: 2.3rem; border-radius: 0.3rem; background: #01c8f7;}
h4.conTitle {font-size: 3rem; letter-spacing: -0.05rem; font-weight: 600; margin-bottom: 5rem;}
h5.conTitle {font-size: 2.6rem; font-weight: 600; letter-spacing: -0.05rem;}

@media screen and (max-width: 1280px) {
    h2.conTitle {font-size: 3.2rem;}
}

@media screen and (max-width: 1026px) {
    .iconTit {margin-bottom: 1.2rem;}
    .iconTit img {width: 3rem;}

    h2.conTitle {font-size: 2.6rem;}

    h3.conTitle {font-size: 2.4rem;}
    h3.conTitle::before {top: 0.5rem;}

    h4.conTitle {font-size: 2.4rem; margin-bottom: 3rem;}

    h5.conTitle {font-size: 2.2rem;}
}

@media screen and (max-width: 768px) {
    .iconTit {gap: 0.8rem;}
    .iconTit img {width: 2.2rem;}

    h2.conTitle {font-size: 2.2rem;}

    h3.conTitle {font-size: 1.8rem; padding-left: 1rem; margin-bottom: 1.5rem;}
    h3.conTitle::before {width: 0.47rem; height: 1.8rem; top: 0.4rem;}

    h4.conTitle {font-size: 2.2rem;}

    h5.conTitle {font-size: 2rem;}
}

/* hSection & conSection */
.h4Section {margin: 0 0 10rem 0;}
.h4Section:last-of-type {margin-bottom: 0;}
.h5Section {padding-left: 2rem; margin-bottom: 7rem; margin-left: 0;}
.h5Section:last-of-type {margin-bottom: 0;}

.conSection {margin-bottom: 6rem;}
.conSection.type2 {margin-bottom: 2.5rem;}
.conSection:last-of-type {margin-bottom: 0;}

@media screen and (max-width: 1026px) {
    .h4Section {margin-bottom: 7rem;}
    .h5Section {padding-left: 1.2rem; margin: 0 0 5rem 0;}

    .conSection {margin-bottom: 5rem;}
}

@media screen and (max-width: 768px) {
    .h5Section {margin: 0 0 3rem 0;}
}

/* link */
.sm_link {display: inline-block; position: relative; padding: 0.6rem 3.6rem 0.5rem 1.2rem; border: 1px solid #6cb7c7; border-radius: 0.5rem; font-size: 2.2rem;}
.sm_link::before {content: ''; position: absolute; top: 1.3rem; right: 1.4rem; width: 1.5rem; height: 1.5rem; background-image: url('/humanframe/theme/100days/assets/img/common/sm_link.png'); background-repeat: no-repeat; background-size: 100%; transition: all 0.3s;}
.sm_link:hover {background: #6cb7c7; color: #fff;}
.sm_link:hover::before {background-image: url('/humanframe/theme/100days/assets/img/common/sm_link_on.png');} 

@media screen and (max-width: 1280px) {
    .sm_link {font-size: 2rem;}
    .sm_link::before {top: 1.2rem;}
}

@media screen and (max-width: 1026px) {
    .sm_link {font-size: 1.8rem; padding: 0.6rem 3rem 0.5rem 1.2rem;}
    .sm_link::before {top: 1.2rem; right: 1.2rem; width: 1.3rem; height: 1.3rem;}
}

@media screen and (max-width: 768px) {
    .sm_link {font-size: 1.4rem; padding: 0.5rem 2.5rem 0.4rem 0.8rem;}
    .sm_link::before {top: 0.9rem; right: 0.9rem; width: 1rem; height: 1rem;}
}

/* list */
ul.list>li {font-weight: 500;}
ul.list>li:not(:last-child) {margin-bottom: 1.5rem;}
ul.list>li>ul {margin-top: 1.5rem;}
ul.list>li>ul>li {color: #2062cf; font-weight: 400;}
ul.list>li>ul>li:not(:last-child) {margin-bottom: 0.8rem;}

ul.list.check>li {padding-left: 3rem; position: relative;}
ul.list.check>li::before {content: ''; position: absolute; top: 1rem; left: 0; background: url('/humanframe/theme/100days/assets/img/common/list_check.png') no-repeat; background-size: 100%; width: 1.5rem; height: 1rem;}
ul.list.check>li>ul>li {padding-left: 1.6rem; position: relative; font-weight: 400;}
ul.list.check>li>ul>li::before {content: ''; position: absolute; top: 1.2rem; left: 0; width: 0.4rem; height: 0.4rem; border-radius: 50%; background: #333333;}

ul.list.dot>li {padding-left: 1.4rem; position: relative;}
ul.list.dot>li::before {content: ''; position: absolute; top: 1.4rem; left: 0; width: 0.4rem; height: 0.4rem; border-radius: 50%; background: #333333;}


@media screen and (max-width: 1026px) {
    ul.list>li:not(:last-child) {margin-bottom: 1rem;}
    ul.list>li>ul {margin-top: 1rem;}

    ul.list.check>li {padding-left: 2.5rem;}
    ul.list.check>li::before {width: 1.3rem; top: 0.8rem;}
    ul.list.check>li>ul>li {padding-left: 1.2rem;}
    ul.list.check>li>ul>li::before {top: 1rem;}
    
    ul.list.dot>li {padding-left: 1.2rem;}
    ul.list.dot>li::before {top: 1rem;}
}

@media screen and (max-width: 768px) {
    ul.list.check>li {padding-left: 1.8rem;}
    ul.list.check>li::before {top: 0.6rem; width: 1rem;}
    ul.list.check>li>ul>li::before {top: 0.7rem;}

    ul.list.dot>li::before {top: 0.7rem;}
}

/* table */
.tableMt {margin: 2rem 0; border-left: none; border-right: none; border-top: 2px solid #000; border-bottom: 1px solid #dbdbdb; font-weight: 500;}
.tableMt thead th, .tableMt tbody th {background: #f8f8f8;}
.tableCol tbody td, .tableCol tbody th, .tableCol thead th, .tableColRow tbody td, .tableColRow tbody th, .tableColRow thead th, .tableMt tbody td, .tableMt tbody th, .tableMt thead th {border-right: 1px solid #dbdbdb;}
.tableMt > tbody > tr:first-child > * {border-top: 1px solid #dbdbdb;}
.tableMt > thead > tr > th:last-child ,
.tableMt > tbody > tr td:last-child {border-right: none;}
.tableMt th, .tableMt td {padding: 2rem;}
.tableMt thead th {font-weight: 600;}
.tableMt .numBx {margin-bottom: 0;}
.tableMt .numBx p {font-weight: 500;}

@media screen and (max-width: 1026px) {
    .tableMt th, .tableMt td {padding: 1.5rem;}
}

@media screen and (max-width: 768px) {
    .tableMt th, .tableMt td {padding: 1.2rem;}

    .srcoll-table {margin-bottom: 2rem;}
    .srcoll-table table {width: 100% !important; margin-bottom: 0;}
    .srcoll-table:before, .srcoll-table:after {display: none;}
}

@media screen and (max-width: 480px) {
    .srcoll-table table {width: 500px !important;}
    .srcoll-table:before, .srcoll-table:after {display: block;}
}
/* table */

/* bannerBx */
.bannerBx {padding: 3rem 6rem; display: flex; align-items: center; border-radius: 2rem; gap: 8rem; background: #f8f8f8; margin-bottom: 10rem;}
.bannerBx .iconBx {flex-shrink: 0;}
.bannerBx h2.conTitle {word-break: keep-all;}
.bannerBx .txt {font-weight: 500; margin-top: 1.5rem; word-break: keep-all;}

@media screen and (max-width: 1280px) {
    .bannerBx {padding: 3rem 5rem; gap: 6rem;}
}

@media screen and (max-width: 1026px) {
    .bannerBx {gap: 3rem; padding: 2.5rem 3.6rem; border-radius: 1rem; margin-bottom: 5rem;}
    .bannerBx .iconBx {transform: scale(0.8);}
    .bannerBx .txt {margin-top: 1.4rem;}
}

@media screen and (max-width: 768px) {
    .bannerBx {padding: 2.5rem 2.3rem; margin-bottom: 3rem;}
    .bannerBx .iconBx {display: none;}
}

/* numBx */
.numBx {display: flex; gap: 0.6rem; margin-bottom: 2.5rem;}
.numBx.type2 {margin-bottom: 1.8rem;}
.numBx span {display: flex; align-items: center; justify-content: center; width: 2.3rem; height: 2.3rem; border-radius: 50%; background: #666666; font-size: 1.8rem; font-weight: 600; color: #fff; line-height: 1.5; flex-shrink: 0; margin-top: 0.4rem;}
.numBx p {font-weight: 600;}

.numSection {padding-left: 2rem; margin-bottom: 6rem;}
.numSection.type2 {margin-bottom: 2.5rem;}

@media screen and (max-width: 768px) {
    .numBx, .numBx.type2 {margin-bottom: 1.5rem;}
    .numBx span {font-size: 1.4rem; width: 1.8rem; height: 1.8rem; line-height: 2; font-weight: 500;}

    .numSection {margin-bottom: 4rem;}
    .numSection.type2 {margin-bottom: 1.5rem;}
}

/* bordeBx */
.borderBx {padding: 3.7rem 4.1rem; border: 1px solid #e4e4e4; border-radius: 1.5rem; margin-bottom: 6rem;}
.borderBx:last-of-type {margin-bottom: 0;}

@media screen and (max-width: 1026px) {
    .borderBx {padding: 3rem 3.5rem; margin-bottom: 4rem;}
}

@media screen and (max-width: 768px) {
    .borderBx {padding: 2rem 2.5rem;}
}

/* dlList */
.dlList div {display: flex; gap: 3.3rem;}
.dlList div:not(:last-child) {margin-bottom: 1rem;}
.dlList dt {position: relative; font-weight: 600; flex-shrink: 0;}
.dlList dt::before {content: ''; position: absolute; top: 0.7rem; right: -1.8rem; width: 0.2rem; height: 1.7rem; background: #cccccc;}
.dlList dd {color: #555555;}

@media screen and (max-width: 1026px) {
    .dlList dt::before {top: 0.5rem;}
}

@media screen and (max-width: 768px) {
    .dlList div {gap: 2rem;}
    .dlList dt::before {top: 0.3rem; right: -1.2rem; height: 1.3rem;}
}

/* contactBx */
.contactBx {display: flex; align-items: center; gap: 4.8rem; padding: 4rem; border-radius: 1.2rem; background: #f5f9fa;}
.contactBx .titBx {position: relative; display: flex; align-items: center; gap: 1.4rem; flex-shrink: 0;}
.contactBx .titBx::before {content: ''; position: absolute; top: 0.7rem; right: -2.4rem; width: 0.1rem; height: 1.7rem; background: #cdcdcd;}
.contactBx .titBx p {font-weight: 600;}
.contactBx .number {font-weight: 500;}

@media screen and (max-width: 1026px) {
    .contactBx {padding: 3rem; gap: 3rem;}
    .contactBx .titBx {gap: 1.1rem;}
    .contactBx .titBx::before {height: 1.4rem; top: 0.6rem; right: -1.5rem;}
    .contactBx .titBx img {width: 1.8rem;}
}

@media screen and (max-width: 768px) {
    .contactBx {padding: 2.5rem; gap: 2rem;}
    .contactBx .titBx {gap: 0.9rem;}
    .contactBx .titBx::before {height: 1.2rem; top: 0.4rem; right: -1.1rem;}
    .contactBx .titBx img {width: 1.5rem;}
}