@media only screen and (min-width: 1024px) {

}


@media only screen and (max-width: 1023px) {
    a {-webkit-tap-highlight-color: transparent;}
    img {-webkit-tap-highlight-color: transparent;}
    .btn-spmenu {-webkit-tap-highlight-color: transparent;}
    .g-nav {
        background-color: #dddddd;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: fixed;
        top: 0;
        transition: opacity .5s ease-out;
        width: 100%;
        z-index: 1004;
    }
    .menu-open .g-nav {
        opacity: 1;
        pointer-events: all;
    }
    .btn-spmenu {
        opacity: 1;
        pointer-events: all;
    }
    .u-inner {
        padding: 0 20px;
    }

    .g-hd {
        background-color: #FFF;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,.16);
        height: 60px;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 1004;
    }
    .g-logo {
        left: 13px;
        top: 15px;
    }
    .g-logo a {
        padding: 5px;
    }
    .g-logo img {
        height: 21px;
        width: 41.5px;
    }
    .wrapper {
        padding-top: 60px;
    }
    .main-visual {
        height: calc(136.8vw + 69px);
        justify-content: flex-start;
        padding-top: 0;
        width: 100%;
    }
    .main-visual .slick-slider {
        height: 136.8vw;
    }
    .main-visual .slides #bk01 {
        height: calc(68.4vw - 1px);
    }
    .main-visual .slides #bk02 {
        height: calc(68.4vw - 1px);
    }
    .home-contents {
        padding-top: 176px;
    }




    .form-clist label {
        padding-left: 28px;
    }
    .form-clist label small br {
        display: none;
    }
    .name-field-wrap input {
        width: 100%;
    }
    .form-clist {
        margin-bottom: 21px;
    }
    .name-field-wrap i {
        display: block;
        height: 14px;
    }
    .form-content dd ~ dt {
        margin-top: 20px;
    }
    .form-content dd ~ dd {
        margin-top: 0;
    }
    .form-submit {
        display: flex;
        justify-content: center;
        margin-top: 60px;
    }
    .u-btn02 {
        width: 240px;
    }
    .single-news .page-ttl {
        margin-bottom: 32px;
    }
    .entry-body {
        line-height: 2.14;
    }
    .single-nav {
        justify-content: center;
        padding: 6px 0;
    }
    .entry-body img {
        margin-bottom: 0;
        margin-top: 0;
    }
    .entry-body .wp-block-columns {
        gap: 0;
        margin-bottom: 0;
    }
    .entry-body p + p, .entry-body p + div, .entry-body p + figure, .entry-body div + figure, .entry-body div + p,.entry-body div + div.wp-block-columns, .entry-body figure + p, .entry-body figure + div, .entry-body figure + figure {
        margin-top: 30px;
    }
    .entry-body .wp-block-column:nth-child(2n) {
        margin-left: 1em;
    }
    .entry-body .wp-block-column:not(:only-child) {
        flex-basis: calc(50% - .5em) !important;
        flex-grow: 0;
    }
    .entry-body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: calc(50% - .5em) !important;
        flex-grow: 0;
    }
    .entry-body .wp-block-image figcaption {
        line-height: 1.67;
        margin-top: 0;
    }
    .entry-body .wp-block-button__link {
        margin-top: 20px;
        min-width: 240px;
        padding: 6px;
    }

    .opening-logo {
        height: 80px;
        width: 80px;
    }
    .opening-logo img {
        height: 79.1px;
        width: 80px;
    }
    label.error[for="t_sei"] {
        height: 42px;
        left: 1px;
        right: 1px;
        top: 1px;
        width: auto;
    }
    label.error[for="t_mei"] {
        bottom: 1px;
        height: 42px;
        left: 1px;
        right: 1px;
        top: auto;
        width: auto;
    }
    label.error {
        padding: 10px 14px;
    }
    .form-submit {
        align-items: center;
        flex-direction: column;
        margin-top: 63px;
    }
    .btn-back {
        margin-bottom: 10px;
        margin-right: 0;
    }
    .thanks-message {
        margin-top: -57px;
    }
    .thanks-ttl {
        margin-bottom: 32px;
        margin-left: 86px;
    }
    .thanks-message p br {
        display: none;
    }
    .thanks-message .btn-wrap {
        display: flex;
        justify-content: center;
        margin-top: 84px;
    }
    .sp-only-inline {
        display: inline;
    }
    .sp-only-flex {
        display: flex;
    }
    .hdr-home-sec {
        justify-content: flex-end;
        margin-bottom: 76px;
        padding: 0 30px;
    }
    #COMPANY .pic {
        width: 100%;
    }
    .home-bg-frame {
        display: none;
    }
    .company-dl {
        width: 100%;
    }
    .sp-none {
        display: none;
    }
    #CONCEPT {
        padding-bottom: 62px;
    }
    #COMPANY .flex-cols-wrap {
        display: flex;
        flex-direction: column;
    }
    #COMPANY .flex-cols-wrap .company-dl {
        order: 3;
        margin-bottom: 0;
        margin-top: 44px;
    }
    #COMPANY .flex-cols-wrap .pic-wrap:nth-of-type(1) {
        order: 1;
        margin-top: 9px;
    }
    #COMPANY .flex-cols-wrap .pic-wrap:nth-of-type(2) {
        order: 2;
    }
    #COMPANY .pic-wrap + .pic-wrap {
        margin-top: 1px;
    }
    .home .container {
        padding-bottom: 217px;
    }
    .container {
        padding-bottom: 137px;
    }
    .g-ft {
        padding: 9px 0 10px;
        text-align: center;
    }
    .g-ft::before {
        background-color: #AAAAAA;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: calc(100% - 40px);
    }
    .btn-top {
        bottom: 10px;
        display: none;
        right: 13px;
    }
    .works-card {
        width: 100%;
    }
    .works-card:nth-child(3n+1),
    .works-card:nth-child(3n+2) {
        margin-right: 0;
    }
    .works-card + .works-card {
        margin-top: 56px;
    }
    .page-head.-works-archive-head .archive-nav-col,
    .page-head.-info-archive-head .archive-nav-col {
        display: none;
    }
    .page-head.-archive-head .ttl-col {
        display: flex;
        justify-content: flex-end;
        width: 100%;
    }
    .page-head.-archive-head .page-ttl {
        padding: 0 27px;
    }
    #works-archive .page-ttl img {
        height: 61.3px;
        width: 26px;
    }
    .page-contents#works-archive {
        padding-top: 92px;
    }
    .works-cards-wrap {
        border-top: none;
        padding-top: 0;
    }
    .page-head.-works-archive-head {
        margin-bottom: 107px;
    }
    #info-archive .page-ttl img {
        height: 60.7px;
        width: 27px;
    }
    .page-contents#info-archive {
        padding-top: 93px;
    }
    .page-head.-info-archive-head {
        margin-bottom: 109px;
    }
    .info-list a {
        flex-wrap: wrap;
        height: auto;
    }
    .info-list a .headline {
        order: 1;
        width: 100%;
    }
    .info-list a .date {
        order: 2;
        margin-top: 7px;
        padding-top: 0;
        width: auto;
    }
    .info-list a .cats {
        order: 3;
        margin-left: 3px;
        margin-top: 7px;
        padding-top: 0;
        width: auto;
    }
    .info-list a {
        flex-wrap: wrap;
        padding: 16px 0 18px;
    }
    .form-content dl {
        display: block;
    }
    .form-content dt {
        width: 100%;
    }
    .form-content dd {
        width: 100%;
    }
    .form-note {
        margin-left: 0;
        margin-top: 26px;
    }
    .form-submit {
        margin-left: 0;
        margin-top: 77px;
    }
    .pc-only {
        display: none;
    }
    .page-contents#contact {
        padding-top: 94px;
    }
    #contact .page-ttl.sp-only-flex {
        justify-content: flex-end;
        margin-bottom: 51px;
        padding: 0 30px;
    }
    #contact .page-ttl img {
        width: 20.5px;
    }
    .form-content dt {
        font-size: 12px;
        padding: 2px 0;
    }
    [type="tel"], [type="email"], [type="text"] {
        height: 40px;
        padding: 10px 12px;
    }
    .form-submit .u-btn02 {
        letter-spacing: 0.4em;
        padding-bottom: 2px;
        text-indent: 0.4em;
        width: 100%;
    }
    .page-contact .container {
        padding-bottom: 161px;
    }
    .g-menu {
        align-items: flex-start;
        flex-direction: row-reverse;
        height: auto;
        position: relative;
        padding-bottom: 0;
        padding-top: 0;
        width: auto;
    }
    .g-menu li + li::before {
        display: none;
    }
    .g-menu-wrap {
        display: flex;
        flex-direction: row-reverse;
        justify-content: center;
        padding-top: 28.2vh;
    }
    .g-menu-wrap a::before {
        display: none;
    }
    .g-menu li + li {
        padding-top: 0;
    }
    .g-menu-sns {
        bottom: auto;
        margin-right: 4px;
        padding-right: 0;
        position: relative;
        width: auto;
    }
    .g-menu-wrap a {
        width: auto;
    }
    .g-menu li {
        margin-left: 23px;
    }
    .nav-ig img {
        height: 62.7px;
        width: 12.1px;
    }
    .entry .entry-header {
        border-bottom: none;
        margin-bottom: 56px;
        text-align: center;
    }
    .entry .entry-ttl {
        font-size: 1.25rem;
    }
    .page-contents#works-single,
    .page-contents#info-single {
        padding-top: 146px;
    }
    .entry .entry-meta {
        display: block;
        margin-top: 6px;
        position: relative;
    }
    .entry .entry-meta time {
        font-size: 0.75rem;
    }
    .entry .entry-meta .cat {
        font-size: 0.75rem;
        margin-left: 0;
    }
    .single-nav-lists {
        display: none;
    }
    .btn-scroll {
        display: block;
    }
    label.error span {
        left: 8px;
        top: 12px;
    }
    [data-animation="after"] {
        transition: opacity 800ms cubic-bezier(.455,.03,.515,.955);
        will-change: opacity;
    }
    .archive-nav {
        justify-content: center;
        margin-top: 82px;
    }
    .archive-nav .single-nav-prev {
        margin-left: -4px;
    }
    .entry-body {
        padding-bottom: 50px;
    }
    .single-nav {
        margin-top: 22px;
        position: relative;
    }
    .single-nav-all {
        display: block;
    }
    .nav-child {
        display: flex;
        flex-direction: row-reverse;
        opacity: 0;
        padding-top: 83px;
        pointer-events: none;
        right: 0;
        top: 74px;
        transition: opacity .6s;
    }
    .nav-child.is-show {
        opacity: 1;
        pointer-events: all;
    }
    .nav-child::before {
        background-color: #7B7B7B;
        content: "";
        display: block;
        height: 54px;
        position: absolute;
        right: 9px;
        top: 0;
        width: 1px;
    }
    .nav-child li {
        margin-left: 0;
        width: 17px;
    }
    .nav-child li + li {
        margin-right: 15px;
    }
    .nav-child a {
        color: #7B7B7B;
        font-size: 13px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        -webkit-text-orientation: sideways;
        text-orientation: sideways;
    }
}

/* @media only screen and (max-width: 767px) {
    .entry-body .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }
    .entry-body .wp-block-column:nth-child(2n) {
        margin-left: 0;
    }
    .entry-body .wp-block-column:nth-child(2n) {
        margin-top: 30px;
    }
} */