@charset "utf-8";

:root {
    --blue: #6DB2C0;
    --pink: #F1928F;
    --green: #72BA9D;
    --lightgray: #f4f5f5;
    --lightorange: #fef6f4;
    --white: #FFFFFF;
    --white-rgb: 255, 255, 255;
    --black: #272422;
    --black-rgb: 0, 0, 0;
    --spacer: 10px;
}

/* --- margin ---*/
#event_summarize {
    .mt-0 {
        margin-top: calc(var(--spacer)*0) !important;
    }

    .mt-1 {
        margin-top: calc(var(--spacer)*1) !important;
    }

    .mt-2 {
        margin-top: calc(var(--spacer)*2) !important;
    }

    .mt-3 {
        margin-top: calc(var(--spacer)*3) !important;
    }

    .mt-4 {
        margin-top: calc(var(--spacer)*4) !important;
    }

    .mt-5 {
        margin-top: calc(var(--spacer)*5) !important;
    }

    .mt-8 {
        margin-top: calc(var(--spacer)*8) !important;
    }

    .mt-10 {
        margin-top: calc(var(--spacer)*10) !important;
    }

    .mb-0 {
        margin-bottom: calc(var(--spacer)*0) !important;
    }

    .mb-1 {
        margin-bottom: calc(var(--spacer)*1) !important;
    }

    .mb-2 {
        margin-bottom: calc(var(--spacer)*2) !important;
    }

    .mb-3 {
        margin-bottom: calc(var(--spacer)*3) !important;
    }

    .mb-4 {
        margin-bottom: calc(var(--spacer)*4) !important;
    }

    .mb-5 {
        margin-bottom: calc(var(--spacer)*5) !important;
    }

    .mb-8 {
        margin-bottom: calc(var(--spacer)*8) !important;
    }

    .mb-10 {
        margin-bottom: calc(var(--spacer)*10) !important;
    }

    /* --- padding ---*/
    .pt-0 {
        padding-top: calc(var(--spacer)*0) !important;
    }

    .pt-1 {
        padding-top: calc(var(--spacer)*1) !important;
    }

    .pt-2 {
        padding-top: calc(var(--spacer)*2) !important;
    }

    .pt-3 {
        padding-top: calc(var(--spacer)*3) !important;
    }

    .pt-4 {
        padding-top: calc(var(--spacer)*4) !important;
    }

    .pt-5 {
        padding-top: calc(var(--spacer)*5) !important;
    }

    .pt-8 {
        padding-top: calc(var(--spacer)*8) !important;
    }

    .pt-10 {
        padding-top: calc(var(--spacer)*810) !important;
    }

    .pb-0 {
        padding-bottom: calc(var(--spacer)*0) !important;
    }

    .pb-1 {
        padding-bottom: calc(var(--spacer)*1) !important;
    }

    .pb-2 {
        padding-bottom: calc(var(--spacer)*2) !important;
    }

    .pb-3 {
        padding-bottom: calc(var(--spacer)*3) !important;
    }

    .pb-4 {
        padding-bottom: calc(var(--spacer)*4) !important;
    }

    .pb-5 {
        padding-bottom: calc(var(--spacer)*5) !important;
    }

    .pb-8 {
        padding-bottom: calc(var(--spacer)*8) !important;
    }

    .pb-10 {
        padding-bottom: calc(var(--spacer)*10) !important;
    }

    .px-0 {
        padding-right: calc(var(--spacer)*0) !important;
        padding-left: calc(var(--spacer)*0) !important;
    }

    .px-1 {
        padding-right: calc(var(--spacer)*1) !important;
        padding-left: calc(var(--spacer)*1) !important;
    }

    .px-2 {
        padding-right: calc(var(--spacer)*2) !important;
        padding-left: calc(var(--spacer)*2) !important;
    }

    .px-3 {
        padding-right: calc(var(--spacer)*3) !important;
        padding-left: calc(var(--spacer)*3) !important;
    }

    .px-4 {
        padding-right: calc(var(--spacer)*4) !important;
        padding-left: calc(var(--spacer)*4) !important;
    }

    .px-5 {
        padding-right: calc(var(--spacer)*5) !important;
        padding-left: calc(var(--spacer)*5) !important;
    }

    .px-8 {
        padding-right: calc(var(--spacer)*8) !important;
        padding-left: calc(var(--spacer)*8) !important;
    }

    .px-10 {
        padding-right: calc(var(--spacer)*10) !important;
        padding-left: calc(var(--spacer)*10) !important;
    }

    .py-0 {
        padding-top: calc(var(--spacer)*0) !important;
        padding-bottom: calc(var(--spacer)*0) !important;
    }

    .py-1 {
        padding-top: calc(var(--spacer)*1) !important;
        padding-bottom: calc(var(--spacer)*1) !important;
    }

    .py-2 {
        padding-top: calc(var(--spacer)*2) !important;
        padding-bottom: calc(var(--spacer)*2) !important;
    }

    .py-3 {
        padding-top: calc(var(--spacer)*3) !important;
        padding-bottom: calc(var(--spacer)*3) !important;
    }

    .py-4 {
        padding-top: calc(var(--spacer)*4) !important;
        padding-bottom: calc(var(--spacer)*4) !important;
    }

    .py-5 {
        padding-top: calc(var(--spacer)*5) !important;
        padding-bottom: calc(var(--spacer)*5) !important;
    }

    .py-8 {
        padding-top: calc(var(--spacer)*8) !important;
        padding-bottom: calc(var(--spacer)*8) !important;
    }

    .py-10 {
        padding-top: calc(var(--spacer)*10) !important;
        padding-bottom: calc(var(--spacer)*10) !important;
    }

    .d-sp {
        display: none;
    }

    .d-pc {
        display: block;
    }

}



/* --- cmn ---*/


#event_summarize {

    img,
    a img {
        border: 0;
        vertical-align: top;
    }

    img {
        max-width: 100%;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: auto;
    }

    img[height] {
        height: auto;
    }

    .d-sp {
        display: none;
    }

    .d-pc {
        display: block;
    }

    .d-flex {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        justify-content: space-between;
        width: 100%;
    }

    .justify-content-center {
        justify-content: center
    }

    h4 {
        margin-block-start: .5em;
        margin-block-end: .5em;
    }

    .color-brown {
        color: var(--brown);
    }

    .max-600 {
        max-width: 600px;
        margin-right: auto;
        margin-left: auto;
    }

    .max-800 {
        max-width: 800px;
        margin-right: auto;
        margin-left: auto;
    }

    section {
        margin-top: calc(var(--spacer)*4) !important;
        margin-bottom: calc(var(--spacer)*4) !important;
    }

    .d-flex.title {
        justify-content: flex-start;
        align-items: center;
        margin-bottom: 1em;
    }

    .d-flex.title p {
        margin-left: 20px;
        font-weight: bold;
    }

    .title-cap {
        text-align: center;
        margin-bottom: 2em;
    }

    .pagenav {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        justify-content: space-between;
        width: 100%;
    }

    .pagenav>* {
        width: 30%;
    }

    .btn {
        text-align: center;
        border-radius: 12px;
        box-sizing: border-box;
        font-weight: bold;
        position: relative;
    }

    .btn.graduate {
        border: solid 2px var(--blue);
    }

    .btn.junior {
        border: solid 2px var(--pink);
    }

    .btn.junior-high {
        border: solid 2px var(--green);
    }

    .btn a {
        display: block;
        padding: calc(var(--spacer)*3) !important;
        font-size: 1.2em;
    }

    .btn :after {
        content: '';
        width: 8px;
        height: 8px;
        border: 0px;
        border-top: solid 2px #282828;
        border-right: solid 2px #282828;
        -ms-transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        position: absolute;
        bottom: calc(var(--spacer) * 1);
        left: 50%;
        margin-left: -4px;
    }



    .bg-lightorange {
        background: var(--lightorange);
        margin-inline: calc(50% - 50vw);
        width: 100vw;
        padding: calc(var(--spacer) * 3) 0;
    }

    .bg-lightgray {
        background: var(--lightgray);
        margin-inline: calc(50% - 50vw);
        width: 100vw;
        padding: calc(var(--spacer) * 3) 0;
    }

    .bg-border {
        border-top: 1px solid #ccc;
        margin-inline: calc(50% - 50vw);
        width: 100vw;
        padding: calc(var(--spacer) * 3) 0;
    }

    h3 {
        font-size: 1.375rem;
        font-weight: bold;
        position: relative;
        border-bottom: 1px solid #ccc;
        padding-bottom: .5em;
        text-align: center;
        margin-block-end: 1em;
    }

    h3 span {
        position: relative;
        font-weight: bold;
    }

    h3 span:after {
        position: absolute;
        bottom: -.5em;
        content: "";
        width: 80px;
        height: 3px;
        left: calc(50% - 40px);
    }

    h3.graduate span:after {
        background: var(--blue);
    }

    h3.junior span:after {
        background: var(--pink);
    }

    h3.junior-high span:after {
        background: var(--green);
    }

    .d-flex.bnr>* {
        width: 30%;
        padding-bottom: 15px;
    }

    .d-flex.article {
        align-items: flex-start;
        border-bottom: 1px dotted #ccc;
        padding-bottom: 2em;
        margin-bottom: 2em;
    }

    .d-flex.article figure {
        width: 30%;
    }

    .d-flex.article>div {
        width: 68%;
    }

    .d-flex.article>div p {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
    }
}

.d-flex.application>* {
    max-width: 322px;
    margin: 0 auto;
}


@media screen and (max-width: 750px) {
    #event_summarize {

        .d-sp {
            display: block;
        }

        .d-pc {
            display: none;
        }

        .d-flex>* {
            width: 100%;
        }

        .justify-content-center {
            justify-content: center
        }

        .sp-max {
            max-width: 75%;
            margin-right: auto;
            margin-left: auto;
        }

        .pagenav>* {
            width: 32%;
        }

        .d-flex.title p {
            margin-left: 0px;
        }



        .btn {
            border-radius: 6px;
        }

        .btn a {
            display: block;
            padding: calc(var(--spacer)*1) calc(var(--spacer)*.6) !important;
            padding-bottom: calc(var(--spacer)*2) !important;
            font-size: .8em;
            line-height: 1.2;
        }

        .btn a span {
            display: block;
        }

        .btn :after {
            content: '';
            width: 4px;
            height: 4px;
            border: 0px;
            border-top: solid 1px #282828;
            border-right: solid 1px #282828;
            bottom: calc(var(--spacer) * 1);
            margin-left: -2px;
        }

        .d-flex.bnr>* {
            width: 32% !important;
        }


    }
}

@media screen and (max-width: 430px) {
    #event_summarize {
        section {
            margin-top: calc(var(--spacer)*2) !important;
            margin-bottom: calc(var(--spacer)*2) !important;
        }

        .d-flex {
            flex-direction: column;
            margin: auto;
        }

        .title-cap {
            text-align: left;
        }

        .d-flex.bnr>* {
            width: 100% !important;
        }

        .d-flex.article figure {
            width: 100%;
        }

        .d-flex.article>div {
            width: 100%;
        }
    }
}
