@media all and (max-width: 780px) {
    /* --------------------------------------------------- */
    /* 共通設定 */
    /* --------------------------------------------------- */

    .center {
        width: 100%;
    }

    #sidebar {
        display: none;
    }

    #content h1 {
        font-size: 24px;
        background-size: auto 100%;
    }

    #content h2 {
        font-size: 21px;
    }

    #content h3 {
        font-size: 18px;
    }

    table.table, table.table tbody, table.table tr, table.table th, table.table td {
        display: block;
        margin-bottom: 1px;
        width: 100%;
    }

    table.table th {
        text-align: left;
    }

    /* --------------------------------------------------- */
    /* ヘッダー */
    /* --------------------------------------------------- */

    .sp-header-top {
        width: 100%;
        background-color: white;
    }

    .sp-header-top a {
        display: block;
        padding: 10px;
    }

    .sp-header-top img {
        margin: auto;
    }

    .sp-menu-icon {
        overflow: hidden;
        width: 100%;
        background-color: #fcebee;
    }

    ul.sp-menu-icon {
        width: 100%;
        overflow: hidden;
        display: table;
        table-layout: fixed;
    }

    ul.sp-menu-icon li {
        display: table-cell;
    }

    ul.sp-menu-icon li a, ul.sp-menu-icon li label {
        display: block;
        padding: 10px;
    }

    ul.sp-menu-icon li a img, ul.sp-menu-icon li label img {
        margin: auto;
        height: 40px;
    }

    input#sp-menu + .sp {
        position: sticky;
        position: -webkit-sticky;position: sticky;
        top: 0;
        z-index: 10;
    }

    .main-img {
        /* padding: 35% 0; */
        padding: 0;
    }

    /* --------------------------------------------------- */
    /* グローバルナビ */
    /* --------------------------------------------------- */

    .sp-menu ul {
        width: 100%;
        overflow: hidden;
        background-color: white;
        padding-left: 1px;
        padding-top: 1px;
        transition: 0.2s;
        height: 0;
        opacity: 0;
    }

    .sp-menu ul li {
        width: 50%;
        float: left;
        padding-right: 1px;
        padding-bottom: 1px;
    }

    .sp-menu ul li a {
        display: block;
        position: relative;
        background-color: #fcebee;
        color: #de005b;
        padding: 15px;
        padding-left: 20%;
        text-decoration: none;
    }

    .sp-menu ul li a::after {
        content: " ";
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 15%;
        z-index: 1;
        background-color: #de005b;
    }

    .sp-menu ul li a::before {
        content: " ";
        position: absolute;
        left: 5.5%;
        top: 50%;
        width: 5px;
        height: 5px;
        border-top: 2px solid white;
        border-right: 2px solid white;
        transform: translateY(-50%) rotate(45deg);
        z-index: 2;
    }

    input#sp-menu:checked + .sp .sp-menu ul {
        height: auto;
        opacity: 1;
    }

    /* --------------------------------------------------- */
    /* フッター */
    /* --------------------------------------------------- */

    .footer-main-blcok {
        padding: 10px 5%;
    }

    .footer-main-blcok > ul {
        display: block;
    }

    .footer-main-blcok > ul > li {
        display: block;
        padding: 0;
    }

    .footer-main-blcok > ul > li:first-of-type {
        width: 100%;
    }

    .footer-menu ul {
        padding-left: 1px;
        padding-top: 1px;
        margin-bottom: 1em;
        display: block;
    }

    .footer-menu ul li {
        padding-right: 1px;
        padding-bottom: 1px;
        margin: 0;
        width: 50%;
        display: block;
        float: left;
    }

    .footer-menu ul li a {
        display: block;
        background-color: #de005b;
        color: white;
        text-align: left;
        padding: 15px;
    }

    .footer-menu ul li a::before {
        border-left-color: white;
    }

    p.copyright {
        padding: 1em 5%;
        padding-bottom: 20%;
    }

    /* --------------------------------------------------- */
    /* サイドバー */
    /* --------------------------------------------------- */

    /* --------------------------------------------------- */
    /* その他 */
    /* --------------------------------------------------- */

    .home #wrapper {
        padding: 0;
    }

    .float-l, .float-r {
        float: none;
        width: 100%;
    }

    .float-l {
        margin-bottom: 1em;
    }

    .float-box img {
        width: auto;
    }

    .top-content {
        padding: 40px 5%;
    }

    .top-contact-botan ul li {
        width: 100%;
        float: none;
        margin-bottom: 1em;
    }

    .top-contact-botan ul li:last-of-type {
        margin-bottom: 0;
    }

    .syorei-sub {
        width: 100%;
        float: none;
    }

    .home #content h2 {
        font-size: 24px;
    }

    .top-contact {
        background-size: auto 100%;
    }

    .top-syorei {
        background: linear-gradient(to top left, #fcebee, white);
    }

    .top-syorei-block img {
        margin: auto;
    }

    .page-company img, ul.page-contact-access {
        width: 100%;
        float: none;
    }

    .page-company img {
        margin-bottom: 1em;
    }

    ul.page-contact-access li {
        margin-bottom: 10px;
    }

    ul.page-contact-access li span {
        display: block;
        width: 25%;
        text-align: center;
    }

    .staff-block ul li {
        width: 50%;
    }

    .first-text img {
        width: 100%;
        float: none;
        margin-left: 0;
    }

    .first-sub img {
        margin-bottom: 2em;
    }

    ul.cashress {
        width: 100%;
        display: block;
    }

    ul.cashress li {
        width: 50%;
        float: left;
        display: block;
    }

    ul.cashress li div {
        font-size: 16px;
    }

    .price-top-banar {
        margin: 2em 0;
    }

}