body {
    margin: 0;
    padding: 0;
}

.img-txt {
    position: relative;
}

.img-txt img {
    width: 100%;
    height: auto;
}

.img-txt .txt {
    position: absolute;
    left: 5.52vw;
    top: 16.88vw;
    color: #fff;
}

.img-txt .txt .sup {
    font-size: 3vw;
    font-weight: bold;
}

.img-txt .txt .sub {
    font-size: 1.4vw;
}

.section2 {
    padding: 0 9.58vw;
    padding-bottom: 9vw;
    background-color: #fff;
}

.section2 .sup {
    font-size: 3.44vw;
    font-weight: bold;
    color: #000;
    margin-top: 7.08vw;
    margin-bottom: 3.33vw;
}

.section2 .txt-img-2 {
    display: flex;
    justify-content: space-between;
}

.section2 .txt-img-2 .txt {
    font-size: 1.6vw;
    color: #777777;
    width: 27vw;
    line-height: 1.28em;
    height: 31.25vw;
    overflow: hidden;
    font-family: inter;
}

.section2 .txt-img-2 img {
    width: 48.75vw;
    position: absolute;
    right: 9.58vw;
}

.section3 {
    padding: 5.21vw 6.25vw;
    background-color: #f5f5f5;
}

.section3 .sup {
    font-size: 3.44vw;
    font-weight: bold;
    color: #000;
}

.section3 .txt-img-2 {
    margin-top: 3.33vw;
    padding: 4.69vw 11.88vw;
    box-sizing: border-box;
    width: 100%;
    height: 37.40vw;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
}

.section3 .txt {
    width: 36.98vw;
    height: 26.88vw;
}

.section3 .txt .sup {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    color: #B2B2B2;
    padding-top: 0.52vw;
    margin-bottom: 0.52vw;
}

.section3 .txt .sup-a {
    font-size: 1.67vw;
    font-weight: bold;
    width: fit-content;
    cursor: pointer;
}

.section3 .txt .sup-b {
    width: 2.08vw;
    height: 2.08vw;
    line-height: 2.08vw;
    text-align: center;
}

.section3 .txt .txtt-active .sup {
    color: #000;
}

.section3 .sub {
    height: 0;
    overflow: hidden;
    transition: all 1s ease;
}

.section3 .txt .txtt-active .sub {
    height: 3.96vw;
    line-height: 1.2em;
    padding-bottom: 1.04vw;
    transition: all 1s ease;
}

.section3 .txt .sub {
    font-size: 1.04vw;
    color: #777777;
}

.section3 .txtt {
    border-bottom: 0.05vw solid #CFCDCD;
}

.section3 img {
    height: 26.88vw;
}

.section4 {
    background-color: #fff;
    position: relative;
    padding-bottom: 2.08vw;
}

.section4 .title {
    color: #000;
    font-size: 3.75vw;
    font-weight: bold;
    text-align: center;
    padding-top: 3.13vw;
    padding-bottom: 2.08vw;
}

.section4 img {
    width: 90%;
    display: block;
    margin: auto;
}

.section4 .card-wrap {
    margin: auto;
    width: 90vw;
    height: 10.42vw;
    display: flex;
    align-items: center;
    justify-content: space-between; 
    position: absolute;
    left: 5vw;
    bottom: 6.25vw;
}

.section4 .card-info {
    width: 22.66vw;
    height: 10.42vw;
    box-shadow: rgba(0, 0, 0, 0.05) 0.00vw 0.31vw 1.56vw;
    color: #4E4E4E;
    background-color: #fff;
    font-weight: bold;
    text-align: center;
}

.section4 .card-info:hover {
    color: rgb(255, 255, 255);
    background: rgba(198, 0, 11, 0.8);
    transition: 0.3s ease-in;
}

.section4 .card-info .t1 {
    font-size: 4.17vw;
    margin-top: 1.35vw;
    vertical-align: top;
}
.section4 .card-info .t2 {
    font-size: 1.25vw;
}