@charset "UTF-8";
/* Setting */
body a {
    transition: .2s all linear;
}

    body a:hover {
        opacity: 0.7;
    }

hgroup {
    position: relative;
}

    hgroup::after,
    .main-menu-container::after {
        display: block;
        width: 100%;
        content: "";
        clear: both;
    }

.lb {
    float: left;
}

.rb {
    float: right;
}

body .site {
    color: #000;
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 1px;
}

body #main-menu,
body #main-menu ul {
    margin: 0;
    list-style: none;
}

    body #main-menu li {
        display: inline-block;
        margin: 0;
        padding: 0 30px;
        position: relative;
        float: left;
        vertical-align: top;
    }

        body #main-menu li.menu-hide a {
            display: none;
        }

    body #main-menu ul {
        display: none;
        width: 100%;
        padding: 10px 5px 5px;
        position: absolute;
        left: 0;
        top: 100%;
        z-index: 2;
        background: rgba(255,255,255,0.8);
        visibility: hidden;
        opacity: 0;
    }

    body #main-menu li:hover ul {
        display: block;
        visibility: visible;
        opacity: 1;
    }

    body #main-menu ul li {
        display: block;
        margin: 0 0 5px;
        padding: 0;
        float: none;
    }

body .main-menu-container {
    position: relative;
}

.module-fancy-heading .fancy-heading {
    margin: 0;
}

body .footer-nav {
    margin: 0;
    text-align: center;
}

    body .footer-nav li {
        display: inline-block;
        margin: 0 0 5px;
        padding: 0 5px 0 10px;
        position: relative;
        float: none;
        text-align: center;
        vertical-align: top;
    }

        body .footer-nav li::before {
            width: 1px;
            height: 90%;
            position: absolute;
            left: 0;
            top: 0;
            background: #000;
            content: "";
        }

        body .footer-nav li ul.sub-menu {
            display: inline-block;
            margin: 0 0 0 5px;
            padding: 0;
            position: relative;
        }

            body .footer-nav li ul.sub-menu::before {
                content: "[";
            }

            body .footer-nav li ul.sub-menu::after {
                content: "]";
            }

            body .footer-nav li ul.sub-menu li:first-child::before,
            body .footer-nav li:first-child::before {
                display: none;
            }

            body .footer-nav li ul.sub-menu li {
                margin-bottom: 0;
            }

body .copyright-container {
    padding: 5px 3%;
    font-size: 14px;
    text-align: center;
}

body #pc-backtop {
    right: 10px;
    bottom: 50px;
}

/* Font */
body {
    font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", sans-serif;
}
/* custom css */
.header-brand-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0 30px;
    position: relative;
}

    .header-brand-container::after {
        display: block;
        width: 100%;
        clear: both;
        content: "";
    }

.rb {
    padding-top: 15px;
}

body #main-menu-container {
    padding: 0 22px;
    box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
    background: #000;
}

body #main-menu li {
    padding: 0 22px;
    line-height: 1.8;
}

    body #main-menu li a {
        display: block;
        padding: 10px 0;
        position: relative;
        color: #fff;
        font-size: 15px;
        font-weight: bold;
    }

        body #main-menu li a::after {
            display: block;
            width: 0%;
            height: 4px;
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            background: #1356ff;
            content: "";
            transition: 0.2s all linear;
        }

        body #main-menu li a:hover {
            opacity: 1;
            text-decoration: none;
        }

            body #main-menu li a:hover::after {
                width: 100%;
            }

body #main-menu ul {
    width: calc( 100% + 44px );
    padding: 5px;
    left: -22px;
    background: #eeeeee;
}

    body #main-menu ul li {
        text-align: center;
    }

        body #main-menu ul li a {
            padding: 0;
            position: relative;
            color: #000;
            font-size: 14px;
            font-weight: 600;
            text-decoration: underline;
        }

            body #main-menu ul li a:hover {
                opacity: 0.7;
                color: #1356ff;
            }

            body #main-menu ul li a::after {
                display: none;
            }

body .module_row > .row_inner,
body .module_row.fullwidth > .row_inner {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

body.home .module_row > .row_inner,
body.home .module_row.fullwidth > .row_inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

body .module_row.fullwidth.row--width--1280 > .row_inner {
    max-width: 1280px;
}

.row--bg--black {
    background: #000;
}

.module_row.fullwidth.row-tel-info .row_inner {
    background: #000;
}

.module_row.fullwidth.row-tel-info .row_inner {
    padding: 11px 0;
}

.module.image-head-tel {
    text-align: right;
}

.arrow {
    display: block;
    width: 2px;
    height: 100px;
    margin: 0 auto;
    overflow: hidden;
}

    .arrow::before {
        display: block;
        width: 2px;
        height: 100px;
        position: absolute;
        left: 0;
        top: -100px;
        z-index: 1;
        background: #000;
        content: "";
        -webkit-animation: arrow 2.5s ease 0s infinite normal;
        animation: arrow 2.5s ease 0s infinite normal;
    }

@keyframes arrow {
    0% {
        -webkit-transform: translate3d(-50%, 0, 0);
        transform: translate3d(-50%, 0, 0);
    }

    60% {
        -webkit-transform: translate3d(-50%, 100px, 0);
        transform: translate3d(-50%, 100px, 0);
    }

    100% {
        -webkit-transform: translate3d(-50%, 100px, 0);
        transform: translate3d(-50%, 100px, 0);
    }
}

.module.what-new-text {
    padding: 32px 0 0 0;
    position: relative;
    line-height: 0;
}

    .module.what-new-text .image-wrap {
        display: inline-block;
        margin: 0;
        position: absolute;
        left: 40px;
        top: 0;
    }

    .module.what-new-text .image-content {
        display: inline-block;
        padding: 8px 40px 4px 380px;
        background: #b7f06e;
        color: #000;
        font-size: 18px;
        font-weight: 600;
        line-height: 2;
    }

.module.news-post {
    padding: 35px;
    border: #b7f06e solid 5px;
}

    .module.news-post .list-post {
        height: 120px;
        overflow: auto;
    }

    .module.news-post .post {
        margin-bottom: 23px;
    }

    .module.news-post .post-date {
        display: inline-block;
        margin-bottom: 0;
        margin-right: 50px;
        float: left;
        color: #e90000;
        font-size: 15px;
        font-weight: bold;
        line-height: 1.8;
    }

    .module.news-post .post-title {
        margin-bottom: 0;
        font-size: 20px;
        line-height: 1.8;
    }

        .module.news-post .post-title a {
            text-decoration: underline;
        }

            .module.news-post .post-title a,
            .module.news-post .post-title a:visited,
            .module.news-post .post-title a:focus,
            .module.news-post .post-title a:active,
            .module.news-post .post-title a:hover {
                color: #000;
            }

                .module.news-post .post-title a:hover {
                    text-decoration: none;
                }

.module.title-image .image-content {
    padding: 0;
}

.module.title-image {
    margin-bottom: 15px;
}

.module-text p:last-of-type {
    margin-bottom: 0;
}

.module.button-red a {
    display: block;
    width: 260px;
    padding: 20px 10px;
    background: url(../../uploads/btn-red-bg.jpg) repeat-x left center;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 1.8;
    box-sizing: border-box;
    text-decoration: none;
}

    .module.button-red a,
    .module.button-red a:visited,
    .module.button-red a:active,
    .module.button-red a:focus,
    .module.button-red a:hover {
        color: #fff;
    }

        .module.button-red a:hover {
            text-decoration: none;
        }

.row-about-studio {
    padding: 300px 0 0 0;
    background: url(../../uploads/h-img02.jpg) no-repeat center top;
}

.module.title-image.title-studio {
    margin-bottom: 10px;
}

body .module_row.fullwidth.row--width--1000 > .row_inner {
    max-width: 1000px;
}

.module.text-about-cars {
    padding: 30px 30px 25px;
    border: #000 solid 2px;
}

    .module.text-about-cars .module-title {
        margin-bottom: 10px;
        padding: 2px 0 2px 55px;
        background: url(../../uploads/red-cars-icon.png) no-repeat left center;
        color: #000;
        font-size: 20px;
        font-weight: bold;
    }

body .module.text-about-cars a,
body .module.text-about-cars a:visited,
body .module.text-about-cars a:focus,
body .module.text-about-cars a:active,
body .module.text-about-cars a:hover {
    color: #e90000;
}

    body .module.text-about-cars a:hover {
        text-decoration: none;
    }

body .module.text-about-cars a {
    text-decoration: underline;
}

body .module_row.fullwidth.row-studio > .row_inner {
    max-width: 1200px;
    padding: 40px 0;
    background: #eeeeee;
}

.module.text--size--20 {
    font-size: 20px;
}

body .module_row.fullwidth.row--width--1200 > .row_inner {
    max-width: 1200px;
}

.inner--bg--gray .row_inner {
    background: #eeeeee;
}

.subrow-price-banner .tb-column-inner {
    display: flex;
    display: -ms-flexbox;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 387px;
    height: 160px;
    margin: 0 auto 25px;
    padding: 10px;
    position: relative;
    box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -moz-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -webkit-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -o-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    background: url(../../uploads/price-banner-bg.png) no-repeat center center;
    background-size: 100% 100%;
    transition: 0.2s all linear;
}

    .subrow-price-banner .tb-column-inner:hover {
        opacity: 0.7;
    }

.subrow-price-banner .first .tb-column-inner {
    margin-right: 0;
}

.subrow-price-banner .last .tb-column-inner {
    margin-left: 0;
}

.module.price-banner {
    display: flex;
    display: -ms-flexbox;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 96px;
    padding: 5px 0 0 100px;
    box-sizing: border-box;
}

    .module.price-banner.banner01 {
        background: url(../../uploads/price-banner-icon01.png) no-repeat left center;
    }

    .module.price-banner.banner02 {
        background: url(../../uploads/price-banner-icon02.png) no-repeat left center;
    }

    .module.price-banner.banner03 {
        background: url(../../uploads/price-banner-icon03.png) no-repeat left center;
    }

    .module.price-banner.banner04 {
        background: url(../../uploads/price-banner-icon04.png) no-repeat left center;
    }

    .module.price-banner.banner05 {
        background: url(../../uploads/twitter.png) no-repeat left center;
    }

    .module.price-banner.banner06 {
        background: url(../../uploads/blog-logo03.png) no-repeat left center;
    }

.module-image.image-top.price-banner .image-content {
    margin: 5px 0 0 0;
    font-size: 16px;
    font-weight: bold;
}

.module.price-banner-link {
    position: initial;
}

    .module.price-banner-link a {
        display: block;
        width: 100%;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        text-indent: 200%;
        overflow: hidden;
        white-space: nowrap;
    }

.module.image-center {
    margin-bottom: 15px;
}

body .module-image.image-center.ft-title .image-content {
    padding: 0;
    color: #000;
    font-size: 26px;
    font-weight: bold;
}

.module.ft-address-text {
    margin-top: 20px;
    font-size: 15px;
}

body .footer-nav {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 5px 15px;
    box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -moz-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -webkit-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    -o-box-shadow: 3px 3px 6px rgba(4,0,0,0.15);
    background: #000;
}

    body .footer-nav li a {
        color: #fff;
        font-size: 14px;
    }

    body .footer-nav li::before {
        height: 13px;
        top: 50%;
        transform: translateY(-50%);
        background: #fff;
    }

    body .footer-nav li.menu-item-has-children {
        display: block;
        clear: left;
    }

        body .footer-nav li.menu-item-has-children::before {
            display: none;
        }

    body .footer-nav li ul.sub-menu::before,
    body .footer-nav li ul.sub-menu::after {
        color: #fff;
    }

body .copyright-container {
    padding-top: 20px;
    padding-bottom: 15px;
}

.copyright-container span.copyright {
    font-size: 14px;
}

body .copyright-container span {
    padding: 0 5px 0 15px;
}

    body .copyright-container span img {
        vertical-align: middle;
    }

.n-logo,
.x-logo,
.t-logo,
.r-logo {
    position: relative;
}

    .x-logo::before,
    .t-logo::before,
    .r-logo::before {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        content: "/";
        color: #bababa;
        line-height: 1;
    }

body.single #content {
    max-width: 1100px;
    margin: 0 auto 40px auto;
}

body.single .post-date {
    font-size: 14px;
}

body.single .post-title {
    font-size: 18px;
}

.history-back-container .history-back-button {
    display: block;
    width: 220px;
    margin: 0 auto;
    padding: 15px 5px;
    background: #000;
    color: #fff;
    font-size: 14px;
    text-align: center;
}

.history-back-container a.history-back-button,
.history-back-container a.history-back-button:visited,
.history-back-container a.history-back-button:active,
.history-back-container a.history-back-button:focus,
.history-back-container a.history-back-button:hover {
    color: #fff;
}

    .history-back-container a.history-back-button:hover {
        text-decoration: none;
    }

.subpage-main-row .image-center {
    margin-bottom: 0;
}

.subpage-main-row {
    margin-bottom: 40px;
    padding: 119px 0;
}

.module.title-black .module-title {
    margin-bottom: 20px;
    padding: 7px 20px;
    background: #000;
    color: #fff;
    font-size: 20px;
    line-height: 1.8;
}

.module.title-have-icon .module-title {
    margin-bottom: 15px;
    padding: 3px 0 0 35px;
    color: #000;
    font-size: 20px;
    line-height: 1.8;
}

.module.title-have-icon.icon-micro .module-title {
    background: url(../../uploads/icon-micro.png) no-repeat left center;
}

.module.title-have-icon.icon-drum .module-title {
    background: url(../../uploads/icon-drum.png) no-repeat left center;
}

.module.title-have-icon.icon-ticket .module-title {
    padding-left: 45px;
    background: url(../../uploads/icon-ticket.png) no-repeat left center;
}

.module.table-price table {
    width: 100%;
    border-collapse: collapse;
}

    .module.table-price table tr td {
        padding: 13px 30px;
        background: #fff;
        border: #000 solid 1px;
    }

        .module.table-price table tr td:first-child {
            width: 47%;
            max-width: 250px;
            background: #eee;
            font-weight: bold;
            box-sizing: border-box;
        }

.module.table-price.table-price2 table tr td:first-child {
    max-width: 350px;
    width: 65.7%;
}

.row--bg--gray .row_inner {
    padding: 50px;
    background: #eee;
}

.module_row.fullwidth.subrow--pd--50 > .row_inner {
    padding: 50px;
}

body .module-text a,
body .module-text a:visited,
body .module-text a:focus,
body .module-text a:active,
body .module-text a:hover {
    color: #000;
}

body .module-text a {
    text-decoration: underline;
}

    body .module-text a:hover {
        text-decoration: none;
    }

.module.privacy-text {
    height: 250px;
    padding-right: 30px;
    overflow-y: scroll;
}

.module.list-pink ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

    .module.list-pink ul li {
        margin-bottom: 5px;
        position: relative;
        font-size: 15px;
        line-height: 1.6;
    }

        .module.list-pink ul li::before {
            padding-right: 5px;
            content: "■";
            color: #f03fc8;
            font-size: 15px;
        }

.module.table-info table {
    width: 100%;
    border-collapse: collapse;
}

.module.table-info tr th,
.module.table-info tr td {
    padding: 13px 20px;
    border: #000000 solid 1px;
}

.module.table-info tr th {
    background: #eee;
    text-align: left;
}

.iframe-box iframe {
    vertical-align: top;
}

.module--width--850 {
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
}

body.page-id-308 .ft-contact-row {
    display: none;
}

.news-list .post-date,
body.single .post-date {
    margin-bottom: 5px;
    color: #000;
    font-weight: bold;
    font-size: 15px;
    line-height: 1.8;
}

.news-list .post-title,
body.single .post-title {
    margin-bottom: 10px;
    padding: 11px 10px 11px 20px;
    background: rgb(183,240,110);
    background: -moz-linear-gradient(180deg, rgba(183,240,110,1) 0%, rgba(183,240,110,1) 50%, rgba(149,197,86,1) 50%, rgba(149,197,86,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(183,240,110,1) 0%, rgba(183,240,110,1) 50%, rgba(149,197,86,1) 50%, rgba(149,197,86,1) 100%);
    background: linear-gradient(180deg, rgba(183,240,110,1) 0%, rgba(183,240,110,1) 50%, rgba(149,197,86,1) 50%, rgba(149,197,86,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b7f06e",endColorstr="#95c556",GradientType=1);
    color: #000;
    font-size: 16px;
    line-height: 1.8;
}

body .news-list .post-title a,
body .news-list .post-title a:visited,
body .news-list .post-title a:focus,
body .news-list .post-title a:active,
body .news-list .post-title a:hover {
    color: #000;
}

.news-list .entry-content p:last-of-type {
    margin-bottom: 0;
}

.news-list .post {
    margin-bottom: 45px;
}

.news-list a.more-link {
    color: #000;
}

body .pagenav {
    padding-bottom: 0;
    text-align: center;
}

    body .pagenav a,
    body .pagenav span {
        min-width: 35px;
        min-height: 35px;
        padding: 8px 0 0 0;
        border-radius: 0;
        border: #fc4141 1px solid;
        background: #fff;
        color: #fc4141;
        text-decoration: underline;
    }

        body .pagenav .current,
        body .pagenav a:hover {
            background: #fc4141;
            color: #fff;
            text-decoration: none;
            opacity: 1;
        }

.module.anchor-menu ul {
    margin: 0;
    padding: 0;
    text-align: center;
    list-style: none;
}

    .module.anchor-menu ul li {
        display: inline-block;
        padding: 0 5px 0 10px;
        position: relative;
    }

        .module.anchor-menu ul li::before {
            width: 1px;
            height: 15px;
            position: absolute;
            left: 0;
            top: calc( 50% - 7px );
            background: #666666;
            content: "";
        }

        .module.anchor-menu ul li:first-child::before {
            display: none;
        }

.module.table-price-color table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.module.table-price-color tr td {
    padding: 13px 5px;
    border: solid 1px #000;
    background: #fff;
    color: #000;
    font-size: 15px;
    text-align: center;
    table-layout: fixed;
}

    .module.table-price-color tr td:first-child {
        background: #eee;
        font-weight: bold;
        width: 22.7%;
        max-width: 250px;
        box-sizing: border-box;
    }

.module.table-price-color tr:first-child td:first-child {
    border-left: 0;
    border-top: 0;
    background: #fff;
}

.module.table-price-color.table-price3 tr:first-child td:first-child {
    width: 150px;
}

.module.table-price-color tr:first-child td {
    font-weight: bold;
}

    .module.table-price-color tr:first-child td:nth-child(2) {
        background: #fc4141;
        color: #fff;
    }

    .module.table-price-color tr:first-child td:nth-child(3) {
        background: #30d58d;
        color: #fff;
    }

    .module.table-price-color tr:first-child td:nth-child(4) {
        background: #fff000;
        color: #000;
    }

    .module.table-price-color tr:first-child td:nth-child(5) {
        background: #6893ff;
        color: #fff;
    }

    .module.table-price-color tr:first-child td:nth-child(6) {
        background: #f03fc8;
        color: #fff;
    }

.module.price-text-black {
    margin-bottom: 25px;
    position: relative;
}

    .module.price-text-black::before {
        width: 100%;
        height: 40px;
        position: absolute;
        left: 0;
        bottom: 0;
        background: #000;
        content: "";
    }

.module.image-center {
    margin-bottom: 0;
}

.module.table-price01 table,
.module.table-price02 table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.module.table-price02 table {
    table-layout: initial;
}

.module.table-price01 tr td,
.module.table-price02 tr td {
    padding: 13px 30px;
    border: #000 solid 1px;
    background: #fff;
    text-align: center;
}

.module.table-price02 tr td {
    text-align: left;
}

    .module.table-price01 tr:first-child td,
    .module.table-price01 tr td:first-child,
    .module.table-price02 tr td:first-child {
        background: #eeeeee;
        font-weight: bold;
    }

    .module.table-price02 tr td:first-child {
        width: 31.8%;
        max-width: 350px;
    }

.module.table-price01 tr td {
    box-sizing: border-box;
}

    .module.table-price01 tr td:first-child,
    .module.table-price01 tr td:nth-child(2) {
        width: 38.6%;
        max-width: 425px;
    }

.module.table-studio table {
    width: 100%;
    border-collapse: collapse;
}

.module.table-studio tr td {
    padding: 13px 30px;
    border: #000 solid 1px;
    box-sizing: border-box;
    text-align: center;
}

.module.table-studio tr:first-child td:first-child {
    border-left: 0;
    border-top: 0;
    background: #fff;
}

.module.table-studio tr td:first-child,
.module.table-studio tr td:nth-child(3) {
    width: 160px;
}

.module.table-studio tr td:nth-child(2) {
    width: 160px;
}

.module.table-studio tr td:first-child,
.module.table-studio tr:first-child td {
    background: #eeeeee;
    font-weight: bold;
}

.module.table-studio tr:nth-child(2) td:first-child {
    background: #fc4141;
    color: #fff;
}

.module.table-studio tr:nth-child(3) td:first-child {
    background: #30d58d;
    color: #fff;
}

.module.table-studio tr:nth-child(4) td:first-child {
    background: #fff000;
    color: #000;
}

.module.table-studio tr:nth-child(5) td:first-child {
    background: #6893ff;
    color: #fff;
}

.module.table-studio tr:nth-child(6) td:first-child {
    background: #f03fc8;
    color: #fff;
}

.module.table-studio-gray table {
    width: 100%;
    border-collapse: collapse;
}

.module.table-studio-gray tr td {
    padding: 13px 30px;
    border: 1px solid #000;
}

.module.table-studio-gray tr th {
    width: 150px;
    background: #eee;
    font-weight: bold;
    box-sizing: border-box;
    border: 1px solid #000;
}















.module_row.fullwidth.i-pt--60 > .row_inner {
    padding-top: 60px;
}

.module_row.fullwidth.i-pb--60 > .row_inner {
    padding-bottom: 60px;
}

.module_row.fullwidth.i-pb--35 > .row_inner {
    padding-bottom: 35px;
}

.module.mb--40 {
    margin-bottom: 40px;
}

.module.mb--35 {
    margin-bottom: 35px;
}

.module.mb--30 {
    margin-bottom: 30px;
}

.module.mb--25 {
    margin-bottom: 25px;
}

.module.mb--20 {
    margin-bottom: 20px;
}

.module.mb--15 {
    margin-bottom: 15px;
}


.pt--55 {
    padding-top: 55px;
}

.pt--40 {
    padding-top: 40px;
}

.pt--25 {
    padding-top: 25px;
}

.pt--20 {
    padding-top: 20px;
}

.pb--55 {
    padding-bottom: 55px;
}

.pb--40 {
    padding-bottom: 40px;
}

.pb--30 {
    padding-bottom: 30px;
}

.pb--25 {
    padding-bottom: 25px;
}

.pb--20 {
    padding-bottom: 20px;
}
/* Spacing */
.pt--60 {
    padding-top: 60px;
}

.pt--50 {
    padding-top: 50px;
}

.pb--60 {
    padding-bottom: 60px;
}

.pb--50 {
    padding-bottom: 50px;
}

.pb--20 {
    padding-bottom: 20px;
}


/* add */
.about-studio-w {
    background: #fff;
    padding: 50px;
    margin-top: -50px;
    width: calc(100% - 100px);
    margin: 0 auto;
}

.wpcf7-form table {
    width: 100%;
    border-collapse: collapse;
}

    .wpcf7-form table tr th,
    .wpcf7-form table tr td {
        padding: 13px;
        border: solid 1px #000;
    }

    .wpcf7-form table tr th {
        background: #eee;
        width: 25%;
    }

.wpcf7-form .submit-btn {
    display: block;
}

.wpcf7-form input[type=submit] {
    background-color: #000;
    color: #fff;
    font-family: "Font Awesome 5 Free",YuGothic, "Yu Gothic Medium", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3″", "Hiragino Kaku Gothic ProN", sans-serif;
    font-weight: bold;
    border-radius: 0;
    margin: 30px auto;
    padding: 10px 0;
    min-width: 250px;
    display: block;
}

    .wpcf7-form input[type=submit]:hover {
        opacity: 0.7;
    }

.wpcf7-form table tr th span {
    font-size: 12px;
    color: #fc4141;
    display: inline-block;
    margin-left: 10px;
}

.wpcf7-form input[type="tel"] {
    background-color: #f3f3f3;
    border: solid 1px #ddd;
    padding: 6px 10px;
    border-radius: 5px;
    -webkit-appearance: none;
}

.wpcf7-form input[type=text],
.wpcf7-form input[type=search],
.wpcf7-form input[type=email],
.wpcf7-form input[type=url] {
    width: auto;
}

.wpcf7-form table tr td span input {
    margin-top: 10px;
}

.wpcf7-form table tr td span:first-child input {
    margin-top: 0;
}

body #main-menu li.sp-only {
    display: none;
}
/*===================================================================
==============================     WIDTH 1024px     =================
===================================================================*/
@media screen and (max-width: 1024px) {
    /* Copy old file */
    /* Mobile Menu Button */
    #menu-button {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: fixed;
        z-index: 900;
        top: 0;
        right: 0;
        width: 48px;
        height: 48px;
        background-color: #cee;
    }

        #menu-button .ham-lines {
            position: relative;
            margin: 0 auto;
            width: 32px;
            height: 32px;
        }

            #menu-button .ham-lines span,
            #menu-button .ham-lines::before,
            #menu-button .ham-lines::after {
                position: absolute;
                display: block;
                right: 0;
                left: 0;
                margin: 0 auto;
                width: 28px;
                height: 2px;
                background-color: #555;
                border-radius: 1px;
            }

            #menu-button .ham-lines span {
                bottom: 15px;
                transition: all .25s .25s;
                opacity: 1;
            }

            #menu-button .ham-lines::before,
            #menu-button .ham-lines::after {
                content: "";
            }

            #menu-button .ham-lines::before {
                bottom: 24px;
                animation: menu-bar01 .75s forwards;
            }

            #menu-button .ham-lines::after {
                bottom: 6px;
                animation: menu-bar03 .75s forwards;
            }

        #menu-button .ham-text {
            font-size: 12px;
            line-height: 1;
        }

        #menu-button.is-active .ham-lines span {
            opacity: 0;
        }

        #menu-button.is-active .ham-lines::before {
            animation: active-menu-bar01 .5s forwards;
        }

        #menu-button.is-active .ham-lines::after {
            animation: active-menu-bar03 .5s forwards;
        }

    @keyframes menu-bar01 {
        0% {
            transform: translateY(9px) rotate(45deg);
        }

        50% {
            transform: translateY(9px) rotate(0);
        }

        100% {
            transform: translateY(0) rotate(0);
        }
    }

    @keyframes menu-bar03 {
        0% {
            transform: translateY(-9px) rotate(-45deg);
        }

        50% {
            transform: translateY(-9px) rotate(0);
        }

        100% {
            transform: translateY(0) rotate(0);
        }
    }

    @keyframes active-menu-bar01 {
        0% {
            transform: translateY(0) rotate(0);
        }

        50% {
            transform: translateY(9px) rotate(0);
        }

        100% {
            transform: translateY(9px) rotate(45deg);
        }
    }

    @keyframes active-menu-bar03 {
        0% {
            transform: translateY(0) rotate(0);
        }

        50% {
            transform: translateY(-9px) rotate(0);
        }

        100% {
            transform: translateY(-9px) rotate(-45deg);
        }
    }
    /* Mobile Header Menu Container */
    #main-menu-container {
        position: fixed;
        z-index: 700;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        padding-top: 64px;
        overflow-y: auto;
        background-color: #cec;
        transition: .3s;
        visibility: hidden;
        opacity: 0;
    }

        #main-menu-container.is-active {
            visibility: visible;
            opacity: 1;
            /*overflow-y: scroll;
    height: 100vh;*/
        }
    /* Search Form in Header Nav */
    #headerwrap #header #searchform {
        position: static;
        width: auto;
        margin: 0 auto;
        padding: 8px 16px;
        text-align: center;
    }

        #headerwrap #header #searchform #s {
            float: none;
            width: 80%;
            height: auto;
            font-size: 16px;
            line-height: 1.6;
        }
    /* Header Main Menu */
    #main-menu-container .main-menu,
    #main-menu-container .sub-menu {
        margin: 0;
        list-style: none;
    }

    #main-menu-container .menu-item {
        margin: 0;
        padding: 8px 0 0 16px;
    }

    #main-menu-container .main-menu {
        position: static;
        width: 100%;
        max-width: 94%;
        margin: 0 auto 16px;
        padding: 0;
        border: none;
        border-radius: 0;
        background-color: transparent;
        box-shadow: none;
    }

        #main-menu-container .main-menu > li {
            margin: 0 16px;
            padding: 8px;
            border-bottom: dotted 1px #aaa;
        }

            #main-menu-container .main-menu > li:last-of-type {
                border-bottom: none;
            }

        #main-menu-container .main-menu li a {
            font-size: 16px;
            line-height: 2;
            color: #333;
        }
    /* Setting */
    body #menu-button {
        width: 100%;
    }

    body #menu-button,
    body .sp-footer-icons-container a {
        background: #13587c;
    }

        body #menu-button .ham-lines span,
        body #menu-button .ham-lines::before,
        body #menu-button .ham-lines::after {
            background: #fff;
        }

        body #menu-button .ham-lines {
            margin-left: auto;
            margin-right: 10px;
        }

    body #header,
    body.mobile_menu_active #header {
        padding-top: 48px;
    }

    body.default_width #layout .module_row > .row_inner,
    body .module-layout-part .module_row.fullwidth > .row_inner,
    body .module_row.fullwidth > .row_inner {
        max-width: 94%;
    }

    body #main-menu-container {
        background: rgba(0,0,0,0.8);
        height: 100vh;
        overflow-y: scroll;
    }

        body #main-menu-container .main-menu {
            display: none;
            max-width: 100%;
            width: 100%;
            margin: 0 auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: -2;
            overflow-y: scroll;
            opacity: 0;
            visibility: hidden;
        }

        body #main-menu-container.is-active .main-menu {
            display: block;
            z-index: 1;
            opacity: 1;
            visibility: visible;
        }

        body #main-menu-container .main-menu > li {
            display: block;
            width: 100%;
            margin-left: 0;
            float: none;
            border-bottom: 0;
            text-align: center;
        }

        body #main-menu-container .main-menu li a {
            padding: 0;
            color: #fff;
            font-size: 16px;
            text-align: center;
            margin-bottom: 10px;
        }

        body #main-menu-container .main-menu > li > a {
            margin-bottom: 10px;
        }

            body #main-menu-container .main-menu > li > a::after {
                display: inline-block;
                width: 50px;
                margin: 0px auto;
                height: 2px;
                background: #1356ff;
                position: absolute;
                top: 34px;
            }

        body #main-menu-container .main-menu li li a {
            font-size: 14px;
            margin: 0;
            font-weight: normal;
        }

    body #main-menu li a::after {
        display: none;
    }

    body #main-menu li.menu-hide a {
        display: block;
    }

    body #main-menu ul {
        display: block;
        padding: 0;
        position: relative;
        left: 0;
        background: none;
        visibility: visible;
        opacity: 1;
    }

    #main-menu-container .menu-item {
        padding-left: 0;
    }

        #main-menu-container .menu-item li a {
            text-decoration: none;
            font-size: 12px;
        }

    .ham-text {
        display: none;
    }

    #header.pagewidth,
    body .module_row.fullwidth > .row_inner,
    body .module_row.fullwidth.home-row02 > .row_inner {
        max-width: 94%;
        margin-left: auto;
        margin-right: auto;
    }

    body .pagewidth {
        max-width: 100%;
    }

    body.single #content {
        max-width: 94%;
    }

    body #main-menu ul {
        width: 100%;
    }

    body .module_row > .row_inner,
    body .module_row.fullwidth > .row_inner {
        max-width: 94%;
    }

    .about-studio-w {
        /*width:90%;*/
        margin-top: 0;
        width: auto;
        padding: 20px 0 30px 0;
    }

    body #main-menu li.sp-only {
        display: block;
    }

    .row-about-studio {
        background-size: contain;
    }
}
/* 1024px */
/*===================================================================
==============================     WIDTH 768px     =================
===================================================================*/
@media screen and (max-width: 768px) {
    /* Setting */
    hgroup {
        padding: 15px 0;
    }

    .lb,
    .rb {
        width: 100%;
        padding: 0;
        float: none;
        text-align: center;
    }

    body #site-logo {
        margin-bottom: 10px;
        top: 0;
    }

        body #site-logo a {
            display: inline-block;
        }

    body .sp-footer-icons-container {
        bottom: 0;
    }

        body .sp-footer-icons-container a {
            display: block;
            width: 33.33%;
            border-radius: 0;
            -moz-border-radius: 0;
            -webkit-border-radius: 0;
            -o-border-radius: 0;
            border-left: solid 1px #fff;
        }

            body .sp-footer-icons-container a:first-of-type {
                border-left: 0;
            }

            body .sp-footer-icons-container a i {
                color: #fff;
            }

    body #pagewrap {
        padding-bottom: 48px;
    }

    body #main-menu ul {
        width: 100%;
    }

    body .module_row.fullwidth.row-studio > .row_inner {
        padding-left: 30px;
        padding-right: 30px;
    }

    .module_row.fullwidth.row-price > .row_inner {
        padding-left: 3%;
        padding-right: 3%;
    }

    .module-image.image-top.price-banner .image-content {
        font-size: 14px;
    }

    body .module-image.image-center.ft-title .image-content {
        font-size: 20px;
    }

    .module.table-price table tr td,
    .module.table-studio tr td,
    .module.table-studio-gray tr td,
    .module.table-price01 tr td,
    .module.table-price02 tr td,
    .module.table-info tr th,
    .module.table-info tr td {
        padding: 7px 10px;
    }

    .module.table-info tr th {
        width: 100px;
    }
    /* Spacing */
    .md_pt--50 {
        padding-top: 50px;
    }

    .md_pb--50 {
        padding-bottom: 50px;
    }

    .module.md_mb--25 {
        margin-bottom: 25px;
    }

    .row-about-studio {
        padding: 225px 0 0 0;
    }
}
/* 768px */
/*===================================================================
==============================     WIDTH 680px     =================
===================================================================*/
@media screen and (max-width: 680px) {
    /* Setting */
    body .footer-nav li.menu-item-has-children {
        padding-left: 0;
    }

        body .footer-nav li.menu-item-has-children::before {
            display: none;
        }

    .module.what-new-text {
        padding: 0;
    }

        .module.what-new-text .image-wrap {
            display: block;
            width: 100%;
            padding: 5px;
            position: relative;
            left: 0;
            background: #b7f06e;
            text-align: center;
            box-sizing: border-box;
        }

        .module.what-new-text .image-content {
            display: block;
            padding: 0 5px;
            text-align: center;
        }

    .module.image-head-tel {
        margin-bottom: 10px;
        text-align: center;
    }

    .module.image-head-contact {
        text-align: center;
    }

    .header-brand-container {
        padding: 15px 0 5px;
    }

    .module.news-post .post-date {
        display: block;
        float: none;
        margin-right: 0;
    }

    .module.news-post {
        padding: 10px;
    }

        .module.news-post .list-post {
            height: 240px;
        }

    .module.button-red a {
        margin: 0 auto;
    }

    .row-about-studio {
        padding: 0;
        background: none;
    }

    .module.title-studio {
        padding-top: 20px;
    }

    .module.text-about-cars {
        padding: 15px;
    }

    body .module_row.fullwidth.row-studio > .row_inner {
        padding-left: 15px;
        padding-right: 15px;
    }

    body .module_row.fullwidth.row-studio > .row_inner {
        padding-bottom: 20px;
    }

    .module.ft-tel-number,
    .module.ft-contact-btn {
        text-align: center;
    }

    .module.ft-tel-number {
        margin-bottom: 10px;
    }

    .module.ft-address-text {
        margin-bottom: 40px;
        font-size: 13px;
    }

    .module.sp_mb--30 {
        margin-bottom: 30px;
    }

    .module.sp_mb--20 {
        margin-bottom: 20px;
    }

    .module.sp_mb--15 {
        margin-bottom: 15px;
    }

    .copyright-container span.copyright {
        display: block;
        font-size: 13px;
    }

    .module-image.image-top.price-banner {
        display: block;
        width: 90%;
        text-align: left;
    }

    .module.price-banner.banner01,
    .module.price-banner.banner02,
    .module.price-banner.banner03,
    .module.price-banner.banner04 {
        background-position: left 10px center;
    }

    body.single #content {
        padding-left: 3%;
        padding-right: 3%;
    }

    .subpage-main-row {
        padding: 50px 0;
    }

    .module.text--size--20 {
        font-size: 16px;
    }

    .module.title-black .module-title {
        margin-bottom: 15px;
        padding: 5px 10px;
        font-size: 16px;
    }

    body .site {
        font-size: 13px;
    }

    .module.title-have-icon .module-title {
        font-size: 18px;
    }

    .module.table-price table tr td {
        padding: 5px 10px;
    }

    .module_row.fullwidth.subrow--pd--50 > .row_inner {
        padding: 20px 15px;
    }

    .module.ft-title {
        margin-bottom: 10px;
    }

    .table-studio .tb_text_wrap,
    .table-price-color .tb_text_wrap {
        overflow-x: auto;
    }

    .module.table-studio table,
    .module.table-price-color table {
        width: 180%;
    }

    .module.table-studio tr td:first-child {
        width: 100px;
    }

    .module.table-price-color tr td {
        padding: 10px 5px;
        font-size: 14px;
    }

    .module.table-price-color.tb_74mo998 tr td {
        width: 200px;
    }

    .module.price-text-black::before {
        display: none;
    }

    .module.table-price01 tr td:first-child {
        width: 120px;
    }

    .news-list .post-title {
        padding: 5px 10px;
        font-size: 15px;
    }

    .news-list .post {
        margin-bottom: 20px;
    }



    /*杉山*/
    .module.table-studio-gray table tr th,
    .module.table-studio-gray table tr td,
    .module.table-info tr th,
    .module.table-info tr td {
        width: auto;
        display: block;
        border-bottom: 0;
        padding: 10px;
        text-align: center;
    }

    .module.table-studio-gray tr:last-child td,
    .module.table-info tr:last-child td {
        border: 1px solid #000;
    }

    .module.table-studio tr td:first-child,
    .module.table-studio tr td:nth-child(3) {
        width: 100px;
    }

    .module.table-studio tr td:nth-child(2) {
        width: 100px;
    }

    /* add */

    .wpcf7-form table tr th,
    .wpcf7-form table tr td,
    .module.table-price table tr td,
    .module.table-price table tr td:first-child,
    .module.table-price.table-price2 table tr td:first-child,
    .module.table-price02.sp-b tr td {
        display: block;
        width: auto;
        border-bottom: 0;
        max-width: 100%;
    }

    .wpcf7-form table tr:last-child td,
    .module.table-price table tr:last-child td:last-child,
    .module.table-price02.sp-b tr:last-child td:last-child {
        border-bottom: 1px solid #000;
    }

    .subrow-price-banner .tb-column-inner {
        padding: 10px 10px 25px;
    }

    .module.table-price table tr td {
        padding: 10px;
    }

    #body .wpcf7-form table tr td span input {
        width: 100%;
        box-sizing: border-box;
        max-width: 100%;
    }

    body #main-menu-container .main-menu {
        top: 60%;
        padding: 100px 0 50px;
    }

    #body .sp-main01 {
        background-image: url("../../uploads/about_studio_sp.jpg");
    }
}
/* 680px */
@media screen and (max-width: 320px) {
    body #main-menu-container .main-menu {
        top: 70%;
    }
}
