@charset "utf-8";

/* --------------------
Reset
-------------------- */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

ul,
ol {
    list-style: none;
}

a {
    text-decoration: none;
    color: inherit;
}

/* PC表示 / SP非表示 */
.pc {
    display: block;
}

/* SP表示 / PC非表示 */
.sp {
    display: none;
}

/* 899px以下をスマホ扱い */
@media screen and (max-width: 899px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

/* PCで表示、スマホで非表示 */
.br-pc {
    display: block;
}

.br-sp {
    display: none;
}

/* スマホ時（899px以下など自由に調整可能） */
@media screen and (max-width: 899px) {
    .br-pc {
        display: none;
    }

    .br-sp {
        display: block;
    }
}

body {
    font-family:
        "Yu Gothic",
        "YuGothic",
        "Hiragino Kaku Gothic ProN",
        sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #333;
    background: #fff;
}

.inner {
    max-width: 1020px;
    margin: 0 auto;
    padding: 0 20px;
}

/***** ふわっと表示 *****/

.fadein {
    opacity: 1;
    transform: translateY(0);
}

.fadein.js-fade {
    opacity: 0;
    transform: translateY(30px);
    transition:
        opacity .8s ease,
        transform .8s ease;
}

.fadein.js-fade.active {
    opacity: 1;
    transform: translateY(0);
}