@charset "UTF-8";

/* ユーティリティ */

.u-small {
    font-size: .75em!important
}

.u-middle {
    font-size: 1.4rem!important
}

.u-large {
    font-size: 2rem!important
}

.u-fw-b {
    font-weight: bold!important
}

.u-fs-14 {
    font-size: 1.4rem!important
}

.u-fs-14 * {
    font-size: 1.4rem!important
}

.u-fs-18 {
    font-size: 1.8rem!important
}

.u-mt {
    margin-top: 4rem!important
}

.u-mt-1 {
    margin-top: 1rem!important
}

.u-mt-2 {
    margin-top: 2rem!important
}

.u-mt-3 {
    margin-top: 3rem!important
}

.u-mt-4 {
    margin-top: 4rem!important
}

.u-mt-5 {
    margin-top: 5rem!important
}

.u-mt-6 {
    margin-top: 6rem!important
}

.u-mr {
    margin-right: 4rem!important
}

.u-mb {
    margin-bottom: 4rem!important
}

.u-mb-2 {
    margin-bottom: 2rem!important
}

.u-mb-4 {
    margin-bottom: 4rem!important
}

.u-mb-0 {
    margin-bottom: 0!important;
}

.u-ml {
    margin-left: 0!important
}

.u-ml-5 {
    margin-left: 5rem!important
}

.u-align-right {
    text-align: right!important
}

.u-align-center {
    text-align: center!important
}

.u-outline {
    border: solid 2px #000!important
}

.u-inline {
    display: inline-block;
}

.u-pl-2 {
    padding-left: 2rem!important
}

.u-pl-4 {
    padding-left: 4rem!important
}

.u-pd {
    padding: 1em;
}

.u-pd-2 {
    padding: 2em;
}

.u-box-shadow {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5)!important
}

.u-pdf::after {
    content: url(../common/images/icon_download.png);
    position: relative;
    top: 10px;
    left: 5px;
}

.u-flex {
    display: flex!important
}

.u-flex .col-three {
    flex-basis: 33%;
    padding: 5px;
}
.u-flex.u-wrap {
    flex-flow: wrap;
}
.u-flex.u-space-around {
    justify-content: space-around;
}

@media (max-width:500px) {
    .u-flex.sp-flex {
        flex-wrap: wrap;
    }
    .u-flex .col-three {
        flex-basis: 100%;
    }
}

.u-w75 {
    width: 75%!important
}

.u-mw100 {
    max-width: 100% !important;
}

.u-rel {
    position: relative!important
}
.u-figcaption {
    color: #999;
    font-size: 0.95em;
}

@media (min-width:768px) {
    .u-ml {
        margin-left: 4rem!important
    }
    .u-abs {
        position: absolute!important
    }
    .u-small-pc {
        font-size: .75em!important
    }
}
.pc-only {
    display: none;
}

@media (min-width: 768px) {
    .sp-only {
        display: none;
    }
    .pc-only {
        display: block;
    }
}
