@charset "utf-8";

* {
    margin: 0;
    padding: 0;
}

html {
    /*overflow-y: scroll;*/
    font-size: 62.5%;
    /* -> 10px; */
}

a {
    color: #000;
    text-decoration: none;
}

a:hover {
    color: #238ff4;
    text-decoration: none;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0;
    font-size: 1.3rem;
    /* -> 14px; */
}

article,
aside,
canvas,
footer,
header,
hgroup,
nav,
section,
figure,
figcaption {
    display: block;
    margin: 0;
    padding: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
    font-style: normal;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption,
th {
    text-align: left;
}

q:before,
q:after {
    content: '';
}

object,
embed {
    vertical-align: top;
}

hr,
legend {
    display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    line-height: 1.25;
    margin: 1rem 0 1.5rem;
    font-feature-settings: "palt"1;
}

p {

    margin: 0 0 1em 0;
    font-feature-settings: "palt"1;
    text-align: justify;
    text-justify: inter-ideograph;
}

img,
abbr,
acronym,
fieldset {
    border: 0;
    vertical-align: bottom;
}

li {
    list-style-type: none;
    font-feature-settings: "palt"1;
    text-align: justify;
    text-justify: inter-ideograph;
}

/*------------ fontStyle------------*/
body {
    font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ ProN W3', "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, 'MS Pゴシック', 'MS PGothic', sans-serif;
    letter-spacing: 1px;
    line-height: 1.6;
    color: #111;
    -webkit-text-size-adjust: 100%;
}


.margin-10 {
    margin-bottom: 10px !important;
}

.margin-20 {
    margin-bottom: 20px !important;
}

.margin-30 {
    margin-bottom: 30px !important;
}

.margin-40 {
    margin-bottom: 40px !important;
}

.margin-50 {
    margin-bottom: 50px !important;
}

.margin-60 {
    margin-bottom: 60px !important;
}

.margin-70 {
    margin-bottom: 70px !important;
}

.margin-80 {
    margin-bottom: 80px !important;
}

.margin-90 {
    margin-bottom: 90px !important;
}

.margin-100 {
    margin-bottom: 100px !important;
}

.topspace-10 {
    margin-top: 10px !important;
}

.topspace-20 {
    margin-top: 20px !important;
}

.topspace-30 {
    margin-top: 30px !important;
}

.topspace-40 {
    margin-top: 40px !important;
}

.topspace-50 {
    margin-top: 50px !important;
}

.topspace-60 {
    margin-top: 60px !important;
}

.topspace-70 {
    margin-top: 70px !important;
}

.topspace-80 {
    margin-top: 80px !important;
}

.topspace-90 {
    margin-top: 90px !important;
}

.topspace-100 {
    margin-top: 100px !important;
}








.marginbottom-0 {
    margin-bottom: 0px !important;
}

.marginbottom-10 {
    margin-bottom: 10px !important;
}

.marginbottom-20 {
    margin-bottom: 20px !important;
}

.marginbottom-30 {
    margin-bottom: 30px !important;
}

.marginbottom-40 {
    margin-bottom: 40px !important;
}

.marginbottom-50 {
    margin-bottom: 50px !important;
}

.marginbottom-60 {
    margin-bottom: 60px !important;
}

.marginbottom-70 {
    margin-bottom: 70px !important;
}

.marginbottom-80 {
    margin-bottom: 80px !important;
}

.marginbottom-90 {
    margin-bottom: 90px !important;
}

.marginbottom-100 {
    margin-bottom: 100px !important;
}

.margintop-10 {
    margin-top: 10px !important;
}

.margintop-20 {
    margin-top: 20px !important;
}

.margintop-30 {
    margin-top: 30px !important;
}

.margintop-40 {
    margin-top: 40px !important;
}

.margintop-50 {
    margin-top: 50px !important;
}

.margintop-60 {
    margin-top: 60px !important;
}

.margintop-70 {
    margin-top: 70px !important;
}

.margintop-80 {
    margin-top: 80px !important;
}

.margintop-90 {
    margin-top: 90px !important;
}

.margintop-100 {
    margin-top: 100px !important;
}

.marginleft-10 {
    margin-left: 10px !important;
}

.marginleft-20 {
    margin-left: 20px !important;
}

.marginleft-30 {
    margin-left: 30px !important;
}

.marginleft-40 {
    margin-left: 40px !important;
}

.marginleft-50 {
    margin-left: 50px !important;
}

.marginleft-60 {
    margin-left: 60px !important;
}

.marginleft-70 {
    margin-left: 70px !important;
}

.marginleft-80 {
    margin-left: 80px !important;
}

.marginleft-90 {
    margin-left: 90px !important;
}

.marginleft-100 {
    margin-left: 100px !important;
}

.marginright-10 {
    margin-right: 10px !important;
}

.marginright-20 {
    margin-right: 20px !important;
}

.marginright-30 {
    margin-right: 30px !important;
}

.marginright-40 {
    margin-right: 40px !important;
}

.marginright-50 {
    margin-right: 50px !important;
}

.marginright-60 {
    margin-right: 60px !important;
}

.marginright-70 {
    margin-right: 70px !important;
}

.marginright-80 {
    margin-right: 80px !important;
}

.marginright-90 {
    margin-right: 90px !important;
}

.marginright-100 {
    margin-right: 100px !important;
}







.margintop--100 {

    margin-top: calc(-40px - 50 * ((100vw - 320px) / 1120)) !important;
}


.margintop--200 {

    margin-top: calc(-80px - 180 * ((100vw - 320px) / 1120)) !important;
}





.mb-01 {
    margin-bottom: calc(30px + 3vw);
}

.mt-01 {
    margin-top: calc(30px + 3vw);
}






.paddingbottom-10 {
    padding-bottom: 10px !important;
}

.paddingbottom-20 {
    padding-bottom: 20px !important;
}

.paddingbottom-30 {
    padding-bottom: 30px !important;
}

.paddingbottom-40 {
    padding-bottom: 40px !important;
}

.paddingbottom-50 {
    padding-bottom: 50px !important;
}

.paddingbottom-60 {
    padding-bottom: 60px !important;
}

.paddingbottom-70 {
    padding-bottom: 70px !important;
}

.paddingbottom-80 {
    padding-bottom: 80px !important;
}

.paddingbottom-90 {
    padding-bottom: 90px !important;
}

.paddingbottom-100 {
    padding-bottom: 100px !important;
}

.paddingtop-10 {
    padding-top: 10px !important;
}

.paddingtop-20 {
    padding-top: 20px !important;
}

.paddingtop-30 {
    padding-top: 30px !important;
}

.paddingtop-40 {
    padding-top: 40px !important;
}

.paddingtop-50 {
    padding-top: 50px !important;
}

.paddingtop-60 {
    padding-top: 60px !important;
}

.paddingtop-70 {
    padding-top: 70px !important;
}

.paddingtop-80 {
    padding-top: 80px !important;
}

.paddingtop-90 {
    padding-top: 90px !important;
}

.paddingtop-100 {
    padding-top: 100px !important;
}

.paddingleft-10 {
    padding-left: 10px !important;
}

.paddingleft-20 {
    padding-left: 20px !important;
}

.paddingleft-30 {
    padding-left: 30px !important;
}

.paddingleft-40 {
    padding-left: 40px !important;
}

.paddingleft-50 {
    padding-left: 50px !important;
}

.paddingleft-60 {
    padding-left: 60px !important;
}

.paddingleft-70 {
    padding-left: 70px !important;
}

.paddingleft-80 {
    padding-left: 80px !important;
}

.paddingleft-90 {
    padding-left: 90px !important;
}

.paddingleft-100 {
    padding-left: 100px !important;
}

.paddingright-10 {
    padding-right: 10px !important;
}

.paddingright-20 {
    padding-right: 20px !important;
}

.paddingright-30 {
    padding-right: 30px !important;
}

.paddingright-40 {
    padding-right: 40px !important;
}

.paddingright-50 {
    padding-right: 50px !important;
}

.paddingright-60 {
    padding-right: 60px !important;
}

.paddingright-70 {
    padding-right: 70px !important;
}

.paddingright-80 {
    padding-right: 80px !important;
}

.paddingright-90 {
    padding-right: 90px !important;
}

.paddingright-100 {
    padding-right: 100px !important;
}


.mlnagative-20 {
    margin-left: -50px;
}

.col-xl-five-1,
.col-lg-five-1,
.col-md-five-1,
.col-sm-five-1,
.col-xs-five-1,
.col-xl-five-2,
.col-lg-five-2,
.col-md-five-2,
.col-sm-five-2,
.col-xs-five-2,
.col-xl-five-3,
.col-lg-five-3,
.col-md-five-3,
.col-sm-five-3,
.col-xs-five-3,
.col-xl-five-4,
.col-lg-five-4,
.col-md-five-4,
.col-sm-five-4,
.col-xs-five-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
}

.col-xs-five-1 {
    width: 20%;
    flex: 0 0 20%;
    float: left;
}

.col-xs-five-2 {
    width: 40%;
    flex: 0 0 40%;
    float: left;
}

.col-xs-five-3 {
    width: 60%;
    flex: 0 0 60%;
    float: left;
}

.col-xs-five-4 {
    width: 80%;
    flex: 0 0 80%;
    float: left;
}

@media (min-width: 468px) {
    .col-sm-five-1 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }

    .col-sm-five-2 {
        width: 40%;
        flex: 0 0 40%;
        float: left;
    }

    .col-sm-five-3 {
        width: 60%;
        flex: 0 0 60%;
        float: left;
    }

    .col-sm-five-4 {
        width: 80%;
        flex: 0 0 80%;
        float: left;
    }
}

@media (min-width: 767px) {
    .col-md-five-1 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }

    .col-md-five-2 {
        width: 40%;
        flex: 0 0 40%;
        float: left;
    }

    .col-md-five-3 {
        width: 60%;
        flex: 0 0 60%;
        float: left;
    }

    .col-md-five-4 {
        width: 80%;
        flex: 0 0 80%;
        float: left;
    }

    .col-md-offset-five-1 {
        margin-left: 4.3333333%;
    }
}

@media (min-width: 992px) {
    .col-lg-five-1 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }

    .col-lg-five-2 {
        width: 40%;
        flex: 0 0 40%;
        float: left;
    }

    .col-lg-five-3 {
        width: 60%;
        flex: 0 0 60%;
        float: left;
    }

    .col-lg-five-4 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-xl-five-1 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }

    .col-xl-five-2 {
        width: 40%;
        flex: 0 0 40%;
        float: left;
    }

    .col-xl-five-3 {
        width: 60%;
        flex: 0 0 60%;
        float: left;
    }

    .col-xl-five-4 {
        width: 20%;
        flex: 0 0 20%;
        float: left;
    }
}


/*gridのgutter調整*/

.row-0 {
    margin-left: 0px;
    margin-right: 0px;
}

.row-0>div {
    padding-right: 0px;
    padding-left: 0px;
}

.row-10 {
    margin-left: -5px;
    margin-right: -5px;
}

.row-10>div {
    padding-right: 5px;
    padding-left: 5px;
}

.row-20 {
    margin-left: -10px;
    margin-right: -10px;
}

.row-20>div {
    padding-right: 10px;
    padding-left: 10px;
}



.row-40 {
    margin-left: -15px;
    margin-right: -15px;
}

.row-40>div {
    padding-right: 20px;
    padding-left: 20px;
}

.row-50 {
    margin-left: -15px;
    margin-right: -15px;
}

.row-50>div {
    padding-right: 25px;
    padding-left: 25px;
}

.row-60 {
    margin-left: -15px;
    margin-right: -15px;
}

.row-60>div {
    padding-right: 30px;
    padding-left: 30px;
}



.row-70 {
    margin-left: -15px;
    margin-right: -15px;
}

.row-70>div {
    padding-right: 35px;
    padding-left: 35px;
}


.row-80 {
    margin-left: -15px;
    margin-right: -15px;
}

.row-80>div {
    padding-right: 40px;
    padding-left: 40px;
}








/*-----------------------------------------------------------------------------------------------------------clearfix-----------------*/

.clearfix {
    /zoom: 1;
}

.clearfix:after {
    content: '';
    display: block;
    clear: both;
    height: 0;
}

.clr {
    content: ".";
    clear: both;
    visibility: hidden;
    height: 1px;
    display: block;
}

/*--------------------------------------------------------------------------------------------------------------jsMessage----------*/