@charset "utf-8";
/* ===========================================
 * フォーマット
 * ======================================== */
#cp h1, #cp h2, #cp h3, #cp h4, #cp h5, #cp h6, #cp strong {
    width: 100%;
    padding: 0;
    margin: 0;
    font-weight: normal;
    display: block;
}
#cp p, #cp b, #cp dl, #cp dt, #cp dd {
    padding: 0px;
    margin: 0px;
}
#cp a {
    text-decoration: none;
}
#cp button {
    outline: none;
}
#cp button:focus {
    outline: none;
}
#cp small {
    font: inherit;
    display: block;
}
#cp img {
    max-width: 100%;
    padding: 0px;
    margin: 0px auto;
    margin-bottom: -1px;
    border: none;
    vertical-align: bottom;
    -webkit-backface-visibility: hidden;
    display: block;
}
#cp ul,
#cp ol {
    padding: 0px;
    margin: 0px;
    list-style: none;
}
#cp .clear {
    clear: both;
    margin: 0px;
    padding: 0px;
}
#cp .clearfix {
    zoom: 1; /* for IE6/7 */
}
#cp .clearfix::after {
    content: '';
    display: block;
    clear: both;
}
#cp * {
    box-sizing: border-box;
    margin: 0px;
    padding: 0px;
}

/* ===========================================
 * 全体共通
 * ======================================== */
#cp {
    position: relative;
    z-index: auto;
    width: 100vw;
    margin-left: calc(50% - 50vw)!important;/*重要*/
    font: inherit;
    color: #000;
    border: none;
    list-style: none;
    background-color: #FFFFFF;
    vertical-align: baseline;
}

/* ===========================================
 * SP・PC
 * ======================================== */
#cp .pc {
    display: block!important;
}
#cp .sp {
    display: none!important;
}
@media screen and (max-width:767px) {
    #cp .pc {
        display: none!important;
    }
    #cp .sp {
        display: block!important;
    }
}