@charset "utf-8";


/* ========================================
 * .topic
 * ======================================== */
.topic .topicInner {
    background-color: #dce6f2;
    border-radius: 16px;
    position: relative;
}
.topic .topicInner::before {
    content: "";
    background: url( /assets/img/common/topic_img.png );
    position: absolute;
}
.topic .topicInner h2 {
    line-height: 1.3;
    border-bottom: 2px solid #215968;
}
.topic .topicInner .area_2clm {
    background-color: #fff;
}
.topic .topicInner h3 {
    display: inline-block;
    border-bottom: 1px solid #000;
    margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
    .topic .topicInner {
        margin: 0 0 0 32px;
        padding: 32px;
    }
    .topic .topicInner::before {
        width: 200px;
        height: 70px;
        top: 24px;
        left: -26px;
    }
    .topic .topicInner h2 {
        font-size: calc(30 / 16 * 1rem);
        text-align: center;
        padding-bottom: 24px;
    }
    .topic .topicInner h2+p {
        margin-top: 16px;
    }
    .topic .topicInner .area_2clm {
        -webkit-box-pack: justify;
        justify-content: space-between;
        padding: 16px;
        margin-top: 32px;
    }
    .topic .topicInner .topicTxt {
        flex: 1;
    }
    .topicFlex {
        display: flex;
    }
    .topicFlex > div:first-child {
        margin-right: 16px;
        width: 50%;
    }
    .topicFlex > div:last-child {
        margin-left: 16px;
        width: 50%;
    }
    .title {
        display: flex;
        align-items: center;
        justify-content: space-evenly;
    }
}
@media not all and ( min-width: 768px ) {
    .topic .topicInner {
        margin: 0 0 0 13px;
        padding: 16px;
    }
    .topic .topicInner::before {
        background-size: 100px 35px;
        width: 100px;
        height: 35px;
        top: 16px;
        left: -13px;
    }
    .topic .topicInner h2 {
        padding: 0 0 8px 72px;
    }
    .topic .topicInner h2+p {
        margin-top: 8px;
    }
    .topic .topicInner .area_2clm {
        padding: 16px;
        margin-top: 16px;
    }
    .br-sp {
        display: none;
    }
}
.title {
    text-align: center;
}
.title > p:first-child {
    font-size: 12px;
}

/* pc */
@media ( min-width: 768px ) {
    .flex {
        display: flex;
    }
    .block {
        min-width: 150px;
        margin: 10px;
        padding: 10px;
    }
    .jc-center {
        justify-content: center;
    }
    .jc-space-between {
        justify-content: space-between;
    }
    .w30 {
        width: 30%;
        margin-left: 20px;
    }

    .triangle {
        width: 0;
        height: 0;
        border-style: solid;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-right: 0;
    }
    .t1 {
        border-left: 17px solid #cbfbb4;
        margin-left: 10px
    }
    .t2 {
        border-left: 17px solid #a8f984;
    }
    .t3 {
        border-left: 17px solid #69f727;
    }
}

/* sp */
@media (max-width: 767px) {
    .block {
        max-width: 250px;
        margin: 10px auto;
        padding: 10px;
    }
    .marginAuto {
        margin: 10px auto;
    }
    .sp--mb-12 {
        margin-bottom: 12px;
    }
    .w40 {
        width: 40%;
    }

    .triangle {
        display: none;
    }
}

.BGBlue {
    background: lightskyblue;
}
.BGPink {
    background: pink;
}
.BGGreen {
    background: lightgreen;
}
.center {
    text-align: center;
    align-items: center;
}