.basic-frame-fv__maincopy {
    font-size: 41px;
    color: #0078a3;
}

.basic-frame-fv__maincopy-inner {
    background: #0297bf;
    color: #fff;
    padding: 10px 20px 12px;
    text-align: center;
    display: inline-block;
    box-shadow: 0px 5px 14px rgba(0, 0, 0, 0.15);
}

.basic-frame-fv__maincopy-inner:first-child {
    margin-bottom: 14px;
}

.basic-frame-fv__maincopy .text--marker {
    background: none;
    /*background: linear-gradient(transparent 94%, #f6e490e6 94%);*/
}

.basic-frame br.pc {
    display: block;
}

.basic-frame-overview__heading {
    display: flex;
    align-items: center;
}

.basic-frame-overview__heading[data-heading-number] {
    position: relative;
}

.basic-frame-overview__heading[data-heading-number]::before {
    content: attr(data-heading-number);
    font-size: 39px;
    font-weight: 700;
    color: #33B1CD;
    font-family: "Roboto", sans-serif;
    width: 42px;
    height: 62px;
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    float: left;
    margin-right: 16px;
    margin-left: 14px;
    border-right: solid 2px #33B1CD;
    padding-right: 24px;
}

.basic-frame-overview__image {
    border: solid 1px #e7e7e7;
}

.curriculum__inner {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.curriculum__box {
    cursor: pointer;
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    font-weight: 700;
    color: #0078A3;
    font-size: 20px;
    border: solid 1px;
}

.curriculum__description {
    color: #003240;
    font-size: 14px;
    margin: 5px 0 2px;
    line-height: 1.8;
    font-weight: 400;
}

.curriculum__detail {
    display: block;
    font-size: 14px;
    text-decoration: underline;
    text-underline-offset: 4px;
    color: #0097BF;
    width: fit-content;
    margin-right: 0;
    margin-left: auto;
}

.basic-frame-column.bg--light-blue .basic-frame-inner {
    background: #fff;
    padding: 60px;
    width: fit-content;
}

.basic-frame-column__heading {
    background: #F2F5F5;
    border-left: solid 5px #0097BF;
    border-bottom: solid 3px #cdd2d2;
    color: inherit;
    padding: 20px;

    text-align: left;
    max-width: 800px;
    margin: 0 auto 1.8rem;
    line-height: 1.4;
}

.basic-frame-column__heading:not(:first-child) {
    margin-top: 60px;
}

@media (max-width: 1560px) {
    .basic-frame-fv.basic-frame-fv {
        background-position: -358px;
    }
}

@media (max-width: 1460px) {
    .basic-frame-fv.basic-frame-fv {
        background-position: -428px;
    }
}

@media (max-width: 767px) {
    .basic-frame-fv__maincopy {
        font-size: 25px;
        background: #0297bfd6;
        padding: 12px 12px 18px;
        font-size: 22px;
        margin-bottom: 14px;
        letter-spacing: 0;
        color: #fff;
        line-height: 1.6;
    }

    .basic-frame-fv__maincopy-inner {
        background: unset;
        box-shadow: unset;
        padding: 0;
    }

    .basic-frame-fv__maincopy-inner:first-child {
        margin-bottom: 2px;
    }

    .basic-frame-fv__maincopy .text--marker {
        background: linear-gradient(transparent 92%, #F6E490 92%);
    }

    .basic-frame br.pc {
        display: none;
    }

    .basic-frame-fv__feature {
        width: 100%;
        padding: 14px;
    }

    .basic-frame-overview__heading[data-heading-number]::before {
        font-size: 28px;
        width: 32px;
        height: 42px;
    }

    .basic-frame-column.bg--light-blue .basic-frame-inner {
        padding: 30px 20px;
        width: 90vw;
        border-radius: 0;
    }

    .basic-frame-column__heading {
        padding: 14px;
    }

    .curriculum__inner {
        grid-template-columns: 1fr;
    }
}

@media (hover: hover) {
    .curriculum__box:hover {
        background: #fffeea;
    }
}