@charset "utf-8";

/* --------------------------------------------

lead

---------------------------------------------- */

.lead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 120px auto;
    width: 1024px;
}

.lead h2 {
    margin-bottom: 40px;
    font-size: 36px;
    font-size: 3.6rem;
}

.lead img {
    width: 520px;
}

@media only screen and (max-width:640px) {

    .lead {
        display: block;
        margin: 80px auto;
        width: 94%;
    }

    .lead h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }

    .lead img {
        margin-top: 40px;
        width: 100%;
    }
}

/* --------------------------------------------

overview

---------------------------------------------- */


.overview {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 120px auto;
    width: 1024px;
}

.overview h2 {
    margin-bottom: 40px;
    text-align: center;
    font-weight: bold;
    font-size: 36px;
    font-size: 3.6rem;
}

.overview table,
.overview img {
    width: 480px;
}

.overview table th,
.overview table td {
    padding: 10px 20px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: justify;
}

.overview table th {
    position: relative;
    white-space: nowrap;
}

.overview table th::before {
    position: absolute;
    display: block;
    content: "";
    width: 4px;
    height: 24px;
    top: 12px;
    left: 12px;
    background-color: #FFC800;
}

@media only screen and (max-width:640px) {

    .overview {
        display: block;
        margin: 80px auto;
        width: 94%;
    }

    .overview h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }

    .overview table,
    .overview img {
        width: 100%;
    }

    .overview table th::before {
        width: 6px;
        height: 40px;
        top: 12px;
        left: 8px;
    }
}


/* --------------------------------------------

history

---------------------------------------------- */


.history {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 120px auto;
    width: 1024px;
}

.history h2 {
    margin-bottom: 40px;
    text-align: center;
    font-weight: bold;
    font-size: 36px;
    font-size: 3.6rem;
}

.history table,
.history img {
    width: 480px;
    margin-bottom: 40px;
}

.history table th,
.history table td {
    padding: 10px 20px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: justify;
}

.history table th {
    position: relative;
    white-space: nowrap;
}

.history table th::before {
    position: absolute;
    display: block;
    content: "";
    width: 4px;
    height: 24px;
    top: 12px;
    left: 12px;
    background-color: #FFC800;
}

@media only screen and (max-width:640px) {

    .history {
        display: block;
        margin: 80px auto;
        width: 94%;
    }

    .history h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }

    .history table,
    .history img {
        width: 100%;
    }

    .history table th::before {
        width: 6px;
        height: 40px;
        top: 12px;
        left: 8px;
    }
}


/* --------------------------------------------

like

---------------------------------------------- */


.like {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin: 120px auto;
    width: 1024px;
}

.like h2 {
    margin-bottom: 40px;
    text-align: center;
    font-weight: bold;
    font-size: 36px;
    font-size: 3.6rem;
}

.like table,
.like img {
    width: 480px;
    margin-bottom: 40px;
}

.like table th,
.like table td {
    padding: 10px 20px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: justify;
}

.like table th {
    position: relative;
    white-space: nowrap;
}

.like table th::before {
    position: absolute;
    display: block;
    content: "";
    width: 4px;
    height: 24px;
    top: 12px;
    left: 12px;
    background-color: #FFC800;
}

@media only screen and (max-width:640px) {

    .like {
        display: block;
        margin: 80px auto;
        width: 94%;
    }

    .like h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }

    .like table,
    .like img {
        width: 100%;
    }

    .like table th::before {
        width: 6px;
        height: 40px;
        top: 12px;
        left: 8px;
    }
}


/* --------------------------------------------

partner

---------------------------------------------- */

.partner {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin: 120px auto 200px;
    width: 1024px;
}

.partner h2 {
    margin-bottom: 40px;
    text-align: center;
    font-weight: bold;
    font-size: 36px;
    font-size: 3.6rem;
}

.partner figure figcaption {
    margin: 8px 0 40px;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
}

.partner img {
    width: 440px;
}

.partner a {
    font-weight: normal;
}

@media only screen and (max-width:640px) {

    .partner {
        display: block;
        margin: 80px auto 160px;
        width: 94%;
    }

    .partner h2 {
        margin-bottom: 20px;
        font-size: 24px;
        font-size: 2.4rem;
    }

    .partner img {
        margin-top: 40px;
        width: 100%;
    }
}
