@charset "utf-8";
/* CSS Document */

@media only screen and (min-device-width: 960px) and (max-device-width: 1024px) and (orientation:portrait) {
}

@media only screen and (min-device-width: 768px) and (max-device-width: 959px) and (orientation:portrait) {
}
@media all and (max-width: 1300px) {
    header#header  .l-header__logo .c-catchphrase {
    }
}
@media all and (min-width: 768px) and (max-width: 959px) {
    header#header .l-header__logo {
        /* padding: 0 4vw; */
    }
    header#header .l-header__logo #logo {
        margin: 8px 0 0 0;
    }
    header .l-header__inner .c-catchphrase {
        left: 230px;
        font-size: 0.75rem;
        width: calc(100% - 300px);
    }
    #main_visual .p-mainVisual__inner {
        /* height: 70vh; */
    }
    #main_visual .p-mainVisual__textLayer .p-mainVisual__slideTitle {
        font-size: 3.5vw;
    }
    #main_visual .p-mainVisual__textLayer .p-mainVisual__slideText {
        font-size: 3vw;
    }
    .post_content #about .ttl {
        margin: -10.5em 0 -4em !important;
    }
    #content .post_content #about h3 {
        margin: 1em 0 !important;
    }
    #content .post_content .swell-block-column h3 {
        font-size: 2.4vw;
        /* text-align: center; */
    }
    /* footer#footer #f_contact {
        background: url(../../../../uploads/bg_contact.svg) no-repeat center #d7eefb;
        background-size: cover;
    } */
    #menu > div {
        width: 90%;
    }
    #menu #info #ccopy {
        letter-spacing: 0;
        line-height: 1.5;
        text-align: center;
    }
    .post_content h2 {
        line-height: 1.3;
    }
    footer#footer #f_contact {
        padding: 6vw 4vw 0;
    }
    footer#footer #f_contact dl dt, footer#footer #f_contact dl dd {
        margin: 0.25em 0.5em;
    }
    footer #info dl + ul li {
        display: inline-block;
    }
    footer #info #unei + dl {
        text-align: center;
    }
    .post_content br.sp_ {
        display: none;
    }
    #menu ul.c-gnav {
        padding-right: 5%;
        margin-right: 5%;
    }
    #menu ul.c-gnav li a .ttl {
        font-weight: bold;
        font-size: 1.3rem;
    }
    #content .post_content #about h2 {
        font-size: 4vw;
    }
    #content .post_content h2 {
        font-size: 4vw;
    }
    #content .post_content h3 {
        font-size: 3.5vw;
    }
    #content .post_content h4 {
        font-size: 3.2vw;
    }
    .post_content .pc_only {
        display: block !important;
    }
    .post_content .sp_only {
        display: none !important;
    }
    .post_content #nayami .swell-block-columns__inner {
        align-items: end;
    }
    .post_content #feat .swell-block-column figure.is-resized {
        width: 70px;
        margin: auto;
    }
    #body_wrap header + #btn_cta li a {
        max-width: unset;
    }
    #top_title_area {
        min-height: 180px;
    }
    .c-pageTitle {
        font-size: 4vw;
    }
    footer #ft_l #f_logo {
        margin: 30px auto 10px;
        max-width: 320px;
    }
    footer#footer #f_contact ul li a.btn {
        min-width: unset;
    }
    #menu #info #menu_logo {
        width: 280px;
    }
    .post_content .swell-block-columns__inner {
        margin-left: calc(2rem * -1);
    }
    .post_content .swell-block-columns .swell-block-column {
        margin: 0 0 0 2rem;
        width: calc(var(--clmn-w) - 2rem);
    }
    .post_content > .wp-block-group {
        padding-top: 2em;
        padding-bottom: 2em;
    }
    .post_content > .wp-block-group + .wp-block-group {
        padding-top: 0;
    }
    .post_content .wp-block-group.alignfull.has-background {
        padding-top: 2em !important;
        padding-bottom: 2em;
        margin-bottom: 0;
    }
    .btn, [class*=is-style-btn_] a, .swell-block-button__link, .wp-block-button__link, footer #btn_tel a {
        max-width: 420px;
    }
    footer#footer #f_contact {
        padding: 6em 0 0;
    }
    footer#footer #f_contact > section {
        padding: 0 1vw 0vw;
    }
    footer#footer #f_contact hgroup h2 {
        font-size: 4.2vw;
    }
    footer#footer #f_contact hgroup p {
        font-size: 2.5vw;
    }
    footer#footer #f_contact ul li {
        width: 33%;
    }
    footer#footer #f_contact ul li a.btn {
        padding: 14px 30px 16px 18px;
    }
    footer#footer #f_contact ul li a.btn em {
        font-size: 2vw;
        color: #fff;
    }
    footer#footer #f_contact a.btn.tel em {
        font-size: 2.3vw;
        color: var(--color_main);
    }
    footer#footer #f_contact ul li p {
        font-size: 0.8rem;
        margin-top: 0.5em;
        letter-spacing: 0;
    }
    .btn.line em {
        background: url(../../../../uploads/icon_line.svg) no-repeat;
        background-size: 25px;
        padding-left: 35px;
    }
    #top footer#footer {
        margin-top: -6em;
    }
    #company footer#footer, #about footer#footer {
        margin-top: -2em;
    }
    h1.c-pageTitle {
        font-size: 4vw;
    }
    #top_title_area .c-pageTitle__subTitle {
        font-size: 2.2vw;
    }
    .post_content > .wp-block-group {
        padding-left: 0;
        padding-right: 0;
    }
    .post_content > .wp-block-group.alignfull {
        padding-left: 4vw;
        padding-right: 4vw;
    }
    .fs_xl, .has-huge-font-size, .has-xl-font-size, .u-fz-xl {
        font-size: 3vw !important;
    }
    .post_content .read p {
        font-size: 2.6vw;
        line-height: 1.8;
    }
}

@media screen and (max-width: 480px) {

}
