
.contents article {
    margin-bottom: 100px;
}
.contents article h5 {
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 15px;
    word-break: break-all;
    text-align: justify;
}

.contents .intro {
    background-color: #8DC53E;
    padding: 30px 40px;
    border-radius: 30px;
    color: white;
}

.contents .fig2 {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}
.contents article p {
    word-break: break-all;
    text-align: justify;
}
.contents article p sup {
    margin: 0 3px;
    color: #8DC53E;
    line-height: 0;
}

.contents .source {
    font-size: 16px;
    line-height: 22px;
    font-weight: 500;
    color: #8DC53E;
}

@media all and (max-width:1200px) {
    .contents .fig1 {
        max-width: 600px;
        margin: 0 auto;
    }
}
@media all and (max-width:700px) {
    .contents .intro {
        margin-left: -6vw;
        width: calc(100% + 12vw);
        padding: 25px 6vw;
        border-radius: 0;
    }
    .contents article {
        margin-bottom: 80px;
    }
    .contents article h5 {
        font-size: 22px;
        line-height: 32px;
        margin-bottom: 10px;
    }
    .contents .source {
        font-size: 15px;
        line-height: 18px;
    }
}
@media all and (max-width:500px) {
    .contents article {
        margin-bottom: 60px;
    }
    .contents .fig1 {
        max-width: 600px;
        margin: 0 auto;
    }
    
    .contents article h5 {
        font-size: 19px;
        line-height: 29px;
    }
}