@media all and (max-width: 780px) {
    /* --------------------------------------------------- */
    /* 共通設定 */
    /* --------------------------------------------------- */
    #content p{
        font-size: 15px;
    }

    .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:  #f2f7ff;
    }

    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:  #f2f7ff;
        color: #364b6e;
        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: #364b6e;
    }

    .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: #364b6e;
        color: white;
        text-align: left;
        padding: 15px;
    }

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

	

    .popup {
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        z-index: 99;
        background-color: rgba(255,255,255,0.9);
        overflow: hidden;
        border-top: 1px solid white;
    }

    .popup ul {
        display: table;
        width: 100%;
    }

    .popup ul li {
        width: 33.333%;
        display: table-cell;
    }

    .pop-tel {
        position: fixed;
        left: 0;
        top: 0;
        z-index: 999;
        width: 100%;
        height: 100vh;
        background-color: rgba(0,0,0,0.8);
        opacity: 0;
        pointer-events: none;
    }

    input#sp-tel:checked + .pop-tel {
        opacity: 1;
        pointer-events: all;
    }

    .pop-tel-in {
        width: 90%;
        margin: auto;
        background-color: white;
        border-radius: 10px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .pop-tel-title {
        font-size: 5vw;
        text-align: center;
        font-weight: bold;
        color: #6fa60c;
        padding: 15px;
    }

    .pop-tel-botan {
        background-color: #eeffcc;
        padding: 15px;
    }

    .pop-tel-botan ul {
        width: 100%;
        overflow: hidden;
    }

    .pop-tel-botan ul li {
        width: 50%;
        float: left;
        padding: 0 1%;
    }

    .pop-tel-end {
        padding: 15px;
    }

    .pop-tel-end label {
        display: block;
        background-color: #6fa60c;
        color: white;
        position: relative;
        padding: 15px;
        width: 70%;
        margin: 0 auto;
        border-radius: 50px;
        text-align: center;
    }

    .pop-tel-end label::after {
        content: " ";
        display: inline-block;
        width: 5px;
        height: 5px;
        border-top: 2px solid white;
        border-right: 2px solid white;
        position: absolute;
        right: 15px;
        top: 50%;
        transform: rotate(45deg) translateY(-50%);
    }	
	
    p.copyright {
        padding: 1em 5%;
        padding-bottom: 17.5%;
    }

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

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

    .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,  #f2f7ff, 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;
        padding-left: 0;
    }
    ul.page-contact-access li:nth-child(2) {        
        display: flex;
        align-items: center;
        justify-content: left;
    }
    ul.page-contact-access li span {
        //width: 25%;
        position: static;
        text-align: center;
        width: 6.5em;
        min-width: 6.5em;
    }

    .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;
    }
    .home #content .top-content .float-box h2 {
        margin-bottom: 2%;
        margin-top: 4%;
        font-size: 6vw;
        font-weight: bold;
        border-bottom: dotted 2px #888;
        border-radius: 0;
    }
    .home #content .top-content .float-box p{
        margin-top: 0;
    }
    .syorei-icon{
        width: 100%;
        float: none;
    }
    ul.syorei-icon-list{
        display: flex;
        justify-content: center;
        flex-wrap: nowrap;
    }
    ul.syorei-icon-list li{
        text-align: center;
        width: 23%;
        margin: 0 1%;
    }
    ul.syorei-icon-list li img{
        max-width: 90%;
        margin: 0 auto;
    }
}