@charset "UTF-8";

/* font
============================================================================= */
@font-face {
    font-family: 'Noto Serif JP';
    src: url("../fonts/NotoSerif.woff") format("woff");
}
@font-face {
    font-family: 'Noto Sans JP';
    src: url("../fonts/NotoSans.woff") format("woff");
}

/* base
============================================================================= */
html {
    font-size: 0.694vw;/* 1440pxの時1rem=10px */
}
body {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.6rem;
    color: #000;
    line-height: 1.8;
    /*letter-spacing: .14em*/
}
img {
    width: 100%;
    height: auto;
}
/* safari vwレスポンシブ対応 */
_::-webkit-full-page-media, _:future, :root, body {
    -webkit-animation: safariFix 1s forwards infinite;
}
@-webkit-keyframes safariFix {
    100% {
        z-index: 1;
    }
}
::placeholder {
    color: #ccc;
}
.hp_tac {
    text-align: center;
}
.anim_fadeLeft {
    display: block!important;
    background-color: #fff;
    animation: fadeLeft 1s 1;
}
.js_scroll {
    visibility: hidden;
}


/* 769px以上
============================================================================= */
@media print,screen and (min-width:769px) {
    .hp_pc {
        display:block;
    }
    .hp_sp {
        display:none;
    }
}


/* 768px以下
============================================================================= */
@media screen and (max-width:768px) {
    html {
        font-size: 3.125vw;/* 320pxの時1rem=10px */
    }
    body {
        /*font-size: calc(14px + 10 * (100vw - 320px)/448);*/
        font-size: 1.4rem;
    }
    .hp_pc {
        display: none;
    }
    .hp_sp {
        display: block;
    }
}