@charset "UTF-8";
#header {
    z-index: 100;
}
.content div {
    display: flex;
}

.pc {
    display: block;
}
.sp {
    display: none;
}
.content {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    padding: 80px 2vw;
}

.new-style p {
    margin: 0;
}

.new-style picture {
    display: flex;
}
.new-style picture img {
    margin: auto;
}

.new-style .gray {
    background-color: #f5f5f5 !important;
}

.min {
    font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif;
}

.header-bg {
    width: 100%;
    background: url(../images/common/header-common.jpg) no-repeat center / cover;
}
.header-bg.header-company {
    background: url(../images/common/header-company.jpg) no-repeat center / cover;
}
.header-bg.header-first {
    background: url(../images/common/header-first.jpg) no-repeat center / cover;
}
.header-bg.header-money {
    background: url(../images/common/header-money.jpg) no-repeat center / cover;
}
.header-bg.header-free {
    background: url(../images/common/header-free.jpg) no-repeat center / cover;
}
.header-bg.header-strengths {
    background: url(../images/common/header-strengths.jpg) no-repeat center / cover;
}
.header-bg.header-concept {
    background: url(../images/common/header-concept.jpg) no-repeat center / cover;
}
.header-bg.header-contact {
    background: url(../images/common/header-contact.jpg) no-repeat center / cover;
}
#pageHeader {
    height: auto;
}
.pageHeaderBox {
    display: flex;
    flex-direction: column;
    padding: 20px 0;
}
#pageHeader h2 {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 2px;
    margin-bottom: 5px;
}
#pageHeader p {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 2px;
    margin-bottom: 0;
}

#contactArea {
    margin-top: 0;
}

.new-style .deco-ttl, .new-style .ttl {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    text-align: center;
    font-size: 24px;
}
.new-style .ttl {
    margin-bottom: 60px;
}
.new-style .deco-ttl::after {
    content: "";
    width: 49px;
    height: 4px;
    background: url(../images/common/ttl-border.png)no-repeat center/ contain;
    margin: 10px auto 60px auto;
}
.new-style .text-img {
    display: flex;
    max-height: 400px;
}

.new-style .text-img img {
    display: flex;
    width: 50%;
    object-fit: cover;
    object-position: center;
}

.text-img .text {
    display: flex;
    flex-direction: column;
    margin: 0;
    background-color: #fff;
    padding: 0 30px 0 0;
}
.tel-contact img {
    width: 50%;
    object-fit: cover;
    object-position: center;
}
.tel-contact .text {
    display: flex;
    flex-direction: column;
    text-align: center;
    padding: 30px;
    background-color: #fff;
}
.tel-contact p {
    line-height: 1.8;
    font-weight: bold;
}
.tel-contact p span {
    font-size: 18px;
}
.tel-contact a {
    width: 100%;
    max-width: 450px;
}
.tel-contact a img {
    width: 100%;
}
.dash-border {
    width: 49px;
    height: 4px;
    background: url(../images/common/ttl-border.png)no-repeat center/ contain;
    margin: 20px auto 0 auto;
}
.new-style p.ttl-sub {
    font-weight: bold;
    text-align: center;
    margin-top: -40px;
    margin-bottom: 60px;
}
.page-contact .studio-text h2 {
    font-size: 16px;
    margin-bottom: 0;
}
.page-contact .studio-text a img {
    width: 100%;
    margin-bottom: 30px;
}
.page-contact .text-img {
    box-shadow: 1px 1px 30px #ccc;
}
.page-contact.new-style .contact-wrapper {
    background-color: #fff;
}
.new-style .contact-form p.ttl-sub {
    margin-bottom: 0;
}
#logo {
    width: 144px;
}
.home #header #mainNaviArea #mainNavi ul > li.current > a {
    color: #fff !important;
}
.home #header.fixed #mainNaviArea #mainNavi ul > li.current > a {
    color: #aa4b69 !important;
}
.home #header #mainNaviArea #mainNavi ul > li a {
    color: #fff;
}
.home #header.fixed #mainNaviArea #mainNavi ul > li a {
    color: #41210e;
}
#header #mainNaviArea #mainNavi ul > li + li:before {
    display: none;
}
.home #header #headerCnt #headerRead h1 {
    color: #fff;
}
.home #header {
    background-color: transparent;
}
.home #header.fixed {
    background-color: #fff;
}
#header #headerCnt .headerInner {
    margin-top: 10px;
}
#header #mainNaviArea #mainNavi ul > li a {
    white-space: nowrap;
}
#header #headerCnt #logoArea a {
    margin-bottom: 21px;
}
#header.fixed {
    padding-bottom: 0;
}

#header #mainNaviArea #mainNavi ul > li a {
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 2px;
}
#header #headerCnt {
    width: 100%;
    padding: 0 50px;
    max-width: 1920px;
}
#header #mainNaviArea #mainNavi ul > li:last-of-type a {
    padding: 15px 30px;
    background-color: #EC8425;
    color: #fff !important;
}
#mainNaviArea #mainNavi ul > li {
    padding:  0 20px 0 0;
}

.gnav-logo {
    width: 144px;
    height: 60px;
    background: url(../images/common/logo.svg) no-repeat left center / contain;
}
.home .gnav-logo {
    background: url(../images/common/home-logo.png) no-repeat left center / contain;
}
.home #header.fixed .gnav-logo {
    background: url(../images/common/logo.svg) no-repeat left center / contain;
}
#header.fixed #headerCnt .headerInner + .headerInner {
    display: flex;
    align-items: center;
}

.drawer.home  #mainNaviSpArea .drawer-hamburger:before {
    color: #fff;
}
.drawer.home  #mainNaviSpArea .drawer-hamburger-icon, .drawer.home  #mainNaviSpArea .drawer-hamburger-icon:before, .drawer.home  #mainNaviSpArea .drawer-hamburger-icon:after {
    background-color: #fff;
}
.home.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:after, .home.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:before {
    background-color: #fff;
}

.home.drawer .fixed  #mainNaviSpArea .drawer-hamburger:before {
    color: #a57c52;
}
.home.drawer .fixed  #mainNaviSpArea .drawer-hamburger-icon, .home.drawer .fixed  #mainNaviSpArea .drawer-hamburger-icon:before, .home.drawer .fixed  #mainNaviSpArea .drawer-hamburger-icon:after {
    background-color: #a57c52;
}
.home.drawer.drawer-open .fixed #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:after, .home.drawer.drawer-open .fixed #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:before {
    background-color: #a57c52;
}

.home.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon, .home.drawer.drawer-open .fixed #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon {
    background: none;
}

#pageHeader .container {
    width: 100%;
    padding: 0;
}

.breadcrumbs {
    color: #000;
}
.breadcrumbs li a {
    color: #000;
    font-weight: bold;
}
.breadcrumbs li:first-of-type a {
    color: #EC8425;
}

.free-cta {
    background: url(../images/new/free-cta-bg.jpg)no-repeat center / cover;
    margin-top: 60px;
}
.free-cta .block {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.free-cta-img {
    width: 45%;
    object-fit: contain;
    object-position: center;
}
.free-cta .text {
    display: flex;
    flex-direction: column;
    width: 54%;
    padding-top: 20px;
}
.free-cta-text {
    width: 100%;
    margin-bottom: 50px;
}
.free-cta-btn {
    width: 100%;
    max-width: 320px;
    margin: 0 0 0 auto;
}
.free-cta-btn img {
    width: 100%;
}

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #EC8425;
    border-radius: 50px;
    color: #EC8425;
    height: 50px;
    padding: 10px 20px;
    background-color: #fff;
    width: 280px;
    position: relative;
    font-weight: bold;
    margin: 0 0 0 auto;
}
.btn.center {
    margin: 0 auto;
}
.btn.left {
    margin: 0 auto 0 0 ;
}
.btn:after {
    font-size: 30px;
    content: "▸";
    height: auto;
    color: #EC8425;
    background: none !important;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
}
.btn:after:hover {
    background: none !important;
}

#singlePage {
    margin-bottom: 60px;
}

@media screen and (max-width: 1280px) {
    #header #headerCnt {
        padding: 0 2vw;
    }
}
@media screen and (max-width: 860px) {
    .free-cta .block {
        flex-direction: column;
    }
    .free-cta-img {
        width: 100%;
        margin: auto;
        max-width: 490px;
    }
    .free-cta .text {
        width: 100%;
        padding-top: 20px;
        max-width: 490px;
        margin: auto;
    }
    .free-cta-text {
        margin-bottom: 30px;
    }
    .free-cta-btn {
        margin: auto;
    }
}

/* TOP */
.home #header + #main {
    margin-top: 0;
}
.mv {
    width: 100%;
    height: 100vh;
    min-height: 660px;
    position: relative;
}
.mv-slider {
    width: 100%;
    height: 100%;
}
.mv-bg {
    display: flex;
    width: 100%;
    height: auto;
}
.mv-bg-1 {
    background: url(../images/new/mv-1.jpg)no-repeat top center/ cover;
}
.mv-bg-2 {
    background: url(../images/new/mv-2.jpg)no-repeat top center/ cover;
}
.mv .content {
    position: relative;
    width: 90%;
    max-width: 1700px;
    height: 100vh;
    min-height: 660px;
}
.mv-copy {
    width: 55%;
    max-width: 920px;
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
}
.mv-banner-block {
    max-width: 450px;
    width: 38%;
    flex-direction: column;
    position: absolute;
    right: 80px;
    bottom: 4vh;
}
.mv-banner-block a {
    width: 100%;
    margin-bottom: 10px
}
.mv-banner-block img {
    width: 100%;
}
.top-ttl {
    height: 50px;
}
#indexPage h3 span {
    font-size: 18px;
}

.top-ttl-concept {
    display: flex;
    margin: 0 auto 3px auto;
    height: 70px;
}
#conceptArea .text-img .text {
    padding-left: 0;
    padding-right: 50px;
    justify-content: center;
}
#conceptArea .text-img .text:nth-child(2n) {
    padding-right: 0;
    padding-left: 50px;
}
#conceptArea .text-img {
    margin-bottom: 70px;
}
#conceptArea .text-img:last-of-type {
    margin-bottom: 0;
}
#conceptArea .text-img h4 {
    font-size: 26px;
    margin-bottom: 20px;
}

.service-top {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
}
.service-top .item {
    display: flex;
    flex-direction: column;
    max-width: 640px;
    width: 43%;
}
.service-top .item .text {
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 30px;
    width: 100%;
    height: 100%;
}
#indexPage .service-top p {
    margin: 0 0 20px 0;
}
.service-top .item .text h4 {
    font-size: 26px;
    margin: 0;
    margin-bottom: 20px;
}
.service-top .item .text a {
    width: 100%;
    min-width: none;
    max-width: 280px;
    margin: auto 0 0 auto;
}
.service-top .item-strengths  {
    margin-right: 30px;
}
.service-top .item-strengths .text h4  {
    color: #9D5256;
}
.service-top .item-concept .text h4  {
    color: #B9A352;
}
.service-top .item-strengths .text {
    border-bottom: 7px solid #9D5256;
}
.service-top .item-concept .text {
    border-bottom: 7px solid #B9A352;
}

.service-btm {
    display: flex;
    width: 100%;
    flex-direction: column;
}
.service-link-block {
    display: flex;
    margin: auto;
}
.service-btm-link {
    width: 33%;
}

footer {
    background: #3B2B1D;
    position: relative;
}
.page-top-btn {
    width: 85px;
    height: 85px;
    position: absolute;
    top: -42px;
    right: 180px;
}
footer a, footer p {
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    margin: 0;
}
.footer-top {
    display: flex;
    align-items: flex-end;
    width: 100%;
    margin-bottom: 70px;
}
.footer-logo {
    width: 180px;
    margin-right: 30px;
}
footer .footer-info {
    display: flex;
    flex-direction: column;
}
.sns-link {
    display: flex;
    margin-top: 5px;
}
.sns-link a {
    display: flex;
    align-items: center;
    margin-right: 20px;
}
.sns-link a img {
    width: 25px;
    margin-right: 5px;
}

footer .footer-nav ul, footer .footer-nav li {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.footer-nav {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-bottom: 80px;
}
footer .footer-nav li {
    margin-bottom: 10px;
}

.footer-menu {
    flex-direction: column;
    margin-right: 10px;
}
.footer-menu:last-of-type {
    margin-right: 0;
}
.footer-menu .menu-ttl {
    font-size: 18px;
    margin-bottom: 15px;
}
.footer-btm {
    width: 100%;
    justify-content: space-between;
    align-items: center;
}
.footer-btm-right {
    display: flex;
    width: 267px;
    min-width: 267px;
}
.footer-btm-right a:first-of-type {
    margin-right: 25px;
}
.footer-btm-left {
    display: flex;
    width: 100%;
    margin-right: 40px;
}
.footer-btm-left a {
    max-width: 380px;
    width: 48%;
}
.footer-btm-left a:first-of-type {
    margin-right: 10px;
}

.copyright {
    display: flex;
    width: 100%;
    height: 90px;
    background-color: #2C1F14;
    align-items: center;
    justify-content: center;
}
.footer-info p span {
    margin-left: 7px;
}
.content div.sp-footer {
    display: none;
}
#fixedBtnSp {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    background-color: #fff;
}
#fixedBtnSp a {
    font-size: 14px;
    font-weight: bold;
    width: 50%;
    height: 50px;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background-color: #EC8425;
    border: 1px solid #fff;
}
#fixedBtnSp a:nth-of-type(2) {
    background-color: #F5F5F5;
    color: #000;
    border-left:none;
}
#fixedBtnSp a:nth-of-type(3) {
    background-color: #5E391A;
}
#fixedBtnSp a:nth-of-type(4) {
    background-color: #533E29;
    border-left:none;
}
#fixedBtnSp img {
    width: 17px;
    height: 17px;
    margin-right: 3px;
}
#sideCTA {
    max-width: 110px;
    bottom: 90px;
    top: auto;
}
#sideCTA a:first-of-type {
    display: flex;
    margin-bottom: 20px;
}
#sideCTA .line-btn {
    display: flex;
    margin-top: 25px;
}

.line-block {
    display: flex;
    justify-content: center;
    align-items: center;
}
.line-block .pc {
    display: flex;
    width: 100%;
    justify-content: center;
}
.line-block .sp {
    display: none;
    width: 100%;
    justify-content: center;
}

@media screen and (max-width: 930px) {
    footer .sns-link {
        display: none;
    }
    .footer-info {
        margin-bottom: 0;
    }
    .footer-info p {
        display: flex;
        flex-direction: column;
        text-align: center;
        align-items: center;
        margin-top: 20px;
    }
    .footer-info p span {
        margin: 5px 0 0 0;
        width: 100%;
    }
    .footer-nav {
        display: none;
    }
    footer .footer-btm {
        display: none;
    }
    footer .footer-top {
        width: 100%;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-bottom: 0;
    }
    .content div.sp-footer {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-top: 40px;
    }
    .sp-footer .footer-banner {
        width: 100%;
        max-width: 420px;
        margin-bottom: 20px;
    }
}
@media screen and (max-width: 860px) {
    .mv {
        height: auto;
    }
    .mv-bg-1 {
        background: url(../images/new/mv-1_sp.jpg)no-repeat top center/ cover;
    }
    .mv-bg-2 {
        background: url(../images/new/mv-2_sp.jpg)no-repeat top center/ cover;
    }
    .new-style.mv .content {
        display: flex;
        flex-direction: column;
        height: fit-content;
        width: 100%;
        justify-content: flex-end;
        padding-top: 100px;
        padding-bottom: 20px;
        margin: auto auto 0 auto;
    }
    .mv-copy {
        max-height: 30%;
        display: block;
        position: static;
        width: 100%;
        transform: translateY(0%);
        margin: auto auto;
    }
    .mv-copy img {
        height: 100%;
        object-fit: contain;
        object-position: center;
    }
    .mv-banner-block {
        max-height: 70%;
        position: static;
        width: 100%;
        margin: 0 auto;
        max-width: 600px;
        justify-content: flex-end;
    }
    .mv-banner-block a {
        max-height: 30%;
    }
    .mv-banner-block a picture {
        height: 100%;
    }
    .mv-banner-block a img {
        height: 100%;
        object-fit: contain;
        object-position: center;
    }
    #header #headerCnt .headerInner {
        margin-top: 0;
    }
    #header #headerCnt #logoArea a {
        width: 110px;
    }
    #header #headerCnt #headerRead {
        margin-bottom: 3px;
    }
    .home #header.fixed {
        padding-top: 0;
    }
    #header #headerCnt #logoArea a {
        margin-bottom: 5px;
    }
    .top-ttl {
        height: 40px;
    }
    #indexPage h3 span {
        margin-top: 5px;
    }
    .top-ttl-concept {
        height: 55px;
    }
    #conceptArea .text-img .text {
        padding-left: 0;
        padding-right: 40px;
        justify-content: flex-start;
    }
    #conceptArea .text-img .text:nth-child(2n) {
        padding-right: 0;
        padding-left: 40px;
    }
    #conceptArea .text-img img {
        padding-left: 0;
        padding-right: 40px;
    }
    #conceptArea .text-img img:nth-child(2n) {
        padding-right: 0;
        padding-left: 40px;
    }
    #conceptArea .text-img {
        margin-bottom: 80px;
    }
    #conceptArea .text-img:last-of-type {
        margin-bottom: 0;
    }
    #conceptArea .text-img h4 {
        margin-top: 0;
    }
    #conceptArea.new-style .deco-ttl::after {
        margin-bottom: 30px;
    }
    #indexPage #conceptArea p {
        margin-bottom: 0;
    }
    .service-top {
        flex-direction: column;
    }
    .service-top .item {
        width: 100%;
        margin: 0;
    }
    .service-top .item-strengths {
        margin-bottom: 40px;
    }
    .service-top .item .text h4 {
        font-size: 20px;
    }
    .service-link-block {
        flex-direction: column;
    }
    .service-btm-link {
        width: 100%;
    }
    .line-block .pc {
        display: none;
    }
    .line-block .sp {
        display: flex;
    }
}

/* TOP END */

/* FREE */
.free-top {
    background: url(../images/new/free-bg-1.jpg)no-repeat center/ cover;
}
.first-top-text img {
    width: 80%;
    max-width: 650px;
    margin: auto;
}

.free-about-block {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.free-about-img {
    width: 24%;
}

.onayami {
    background: url(../images/new/free-bg-2.jpg)no-repeat bottom center/ cover;
    padding-bottom: 40px;
}
.onayami-img {
    width: 100%;
    max-width: 800px;
    margin: auto;
}

.hearing-img {
    width: 100%;
}

.soudan .text {
    width: 50%;
    display: flex;
    flex-direction: column;
    padding: 30px;
}
.soudan .text p {
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: bold;
}
.soudan .text p.last {
    margin: 0 0 0 auto;
}
.free-q-img {
    width: 100%;
    margin-bottom: 20px;
}
.access-ttl {
    margin-bottom: 
    3px;
}
.tel-link {
    text-decoration: none;
    color: #000;
    font-weight: bold;
    letter-spacing: 1px;
}
.tel-link span {
    color: #EC8425;
    text-decoration: underline;
}
.studio-text {
    flex-direction: column;
    padding: 30px;
}
.studio-text h3 {
    font-weight: bold;
    font-size: 24px;
}
.studio-text p {
    display: flex;
    margin-bottom: 6px;
    font-weight: bold;
}
.studio-text p span {
    display: block;
    width: 80px;
    min-width: 80px;
}
.new-style p.non-free {
    display: block;
    width: fit-content;
    font-weight: bold;
    margin: 20px auto 0 auto;
    text-align: center;
}
.non-free span {
    padding: 1px 3px;
    background-color: #FFECDE;
    margin: 0 5px;
}


/* first */
.first-top {
    width: 100%;
    background: url(../images/new/first-top-bg.jpg) no-repeat center / cover;
}
.first-top-block {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin: auto;
    position: relative;
}
.first-top .content {
    padding-bottom: 0;
}
.text-wrapper {
    display: flex;
    flex-direction: column;
    width: 55%;
}
.first-top-img {
    width: auto;
    height: 120%;
    margin-top: -20%;
    width: 45%;
    position: absolute;
    right: 0;
    bottom: 0;
    object-fit: contain;
    object-position: bottom;
}
.first-top-name {
    width: 120px;
    margin: 20px 0 40px auto;
}
.first-top .text-top {
    width: 100%;
    position: relative;
    margin-bottom: 20px;
}
.text-box {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 120px;
}
.text-box:last-of-type {
    margin-bottom: 0;
}
.text-box img {
    position: relative;
    width: 90%;
    max-width: 750px;
    z-index: 2;
}
.text-box .text {
    flex-direction: column;
    position: relative;
    width: 90%;
    max-width: 1030px;
    z-index: 1;
    background-color: #fff;
    border: 1px solid #707070;
    padding: 40px 30px 30px 30px;
    margin: -20px 0 auto auto;
}
.text-box .text h3 {
    display: flex;
    align-items: center;
}
.text-box img.num {
    width: 26px;
    margin-right: 5px;
}

/* strengths */
.strengths-ttl {
    display: flex;
    margin: -40px auto 0 auto;
    max-width: 45%;
}
.strengths-top {
    background: url(../images/new/strengths-bg.jpg) no-repeat center / contain;
}

/* concept */
.concept-block  {
    width: 100%;
    margin-bottom: 120px;
}
.concept-block:last-of-type {
    margin-bottom: 80px;
}
.concept-ttl-wrapper {
    width: 100%;
    padding: 80px 10px 110px 10px;
}
.concept-ttl-wrapper.concept-bg-1 {
    background: url(../images/new/concept-bg-1.jpg) no-repeat center / cover;
}
.concept-ttl-wrapper.concept-bg-2 {
    background: url(../images/new/concept-bg-2.jpg) no-repeat center / cover;
}
.concept-ttl-wrapper.concept-bg-3 {
    background: url(../images/new/concept-bg-3.jpg) no-repeat center / cover;
}
.concept-ttl {
    max-width: 690px;
    width: 100%;
    margin: auto auto auto 0;
}
.concept-text {
    display: flex;
    position: relative;
    justify-content: space-between;
    max-width: 1200px;
    width: 96%;
    padding: 60px;
    background-color: #fff;
    border: 1px solid #707070;
    margin: -50px auto 0 auto;
    z-index: 2;
}
.concept-text .text {
    width: 55%;
    line-height: 1.7;
}
.concept-text img {
    width: 43%;
    object-fit: cover;
    object-position: top center;
}
.kakaku-text {
    flex-direction: column;
}
.new-style .kakaku-text h3, .new-style .kakaku-text p {
    display: block;
    width: fit-content;
    font-weight: bold;
    margin: 20px auto 0 auto;
    text-align: center;
}
.new-style .kakaku-text h3 {
    font-size: 21px;
}
.kakaku-text span {
    padding: 1px 3px;
    background-color: #FFECD3;
    margin: 0 5px;
}
.kakaku-text {
    margin-bottom: 40px;
}
.kakaku-img {
    width: 100%;
    margin: auto;
    margin-bottom: 80px;
}
.link-block {
    justify-content: space-between;
    width: 100%;
    padding: 15px;
    background-color: #fff;
    border: 1px solid #000;
    margin-bottom: 60px;
}
.link-block-img {
    width: 50%;
}
.link-block-text {
    width: 48%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.link-block-text p {
    font-weight: bold;
    font-size: 22px;
    margin-top: 10px;
    margin-bottom: 20px;
}
.company table {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 60px 20px;
}
.company tr {
    display: flex;
    padding: 30px 5px;
    border-bottom: 1px solid #D8D8D8;
    width: 100%;
    max-width: 850px;
    margin: auto;
}
.company tr:last-of-type {
    border-bottom: none;
}
.company th {
    display: flex;
    align-items: center;
    min-width: 160px;
}
.company td {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-weight: bold;
}
.mission {
    background: url(../images/new/mission-bg.jpg) no-repeat bottom left / cover;
    margin-top: 40px;
    margin-bottom: 180px;
}
.mission-ttl {
    display: block;
    width: 80%;
    max-width: 354px;
    margin: 0 auto 80px auto;
}
.mission-text {
    width: 100%;
    max-width: 690px;
}
.mission-text img {
    width: 100%;
}
.mission-text-1 {
    margin: 0 auto 60px 0;
}
.mission-text-2 {
    margin: 0 0 0 auto;
}

.plan .block {
    width: 100%;
    flex-direction: column;
}
.plan-1 {
    background: url(../images/new/plan-1-bg.jpg)no-repeat center / cover;
}
.plan-2 {
    background: url(../images/new/plan-2-bg.jpg)no-repeat center / cover;
}
.plan-3 {
    background: url(../images/new/plan-3-bg.jpg)no-repeat center / cover;
}
.plan .inner {
    max-width: 1140px;
    margin: auto;
    position: relative;
    padding: 90px 20px;
}
.plan-btn {
    position: absolute;
    width: 388px;
    right: 20px;
    bottom: 90px;
    z-index: 2;
}
#price {
    padding-top: 80px;
}

.money-btm .ttl-wrapper {
    width: 100%;
    flex-direction: column;
    padding: 60px 0;
    margin: auto;
    justify-content: center;
    align-items: center;
    background: url(../images/new/money-btm-bg.jpg)no-repeat center / cover;
}
.money-btm .ttl-wrapper h2, .ttl-wrapper p {
    color: #fff;
}
.money-btm .ttl-wrapper h2 {
    font-size: 32px;
    text-align: center;
}
.money-btm .ttl-wrapper p {
    font-size: 20px;
    text-align: center;
}
.money-btm .text {
    flex-direction: column;
    width: 96%;
    max-width: 1140px;
    background-color: #fff;
    border: 1px solid #707070;
    padding: 60px;
    margin: -40px auto 0 auto;
}
.money-btm .text .text-top {
    margin-bottom: 20px;
    flex-direction: column;
}
.money-btm .text .text-btm {
    flex-direction: column;
}
.money-btm .text h3 {
    font-size: 22px;
    margin-bottom: 15px;
}
.money-btm {
    margin-bottom: 80px;
    margin-top: 160px;
}

/* responsiv */
@media screen and (max-width: 1250px) {
    #header #mainNaviArea #mainNavi ul > li a {
        font-size: 16px;
    }
}
@media screen and (max-width: 1150px) {
    .plan-btn {
        width: 33vw;
    }
}
@media screen and (max-width: 767px) {
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
    .new-style .text-img {
        flex-direction: column;
        max-height: unset;
    }
    .new-style .text-img .text {
        width: 100%;
        order: 2;
    }
    .new-style .text-img img {
        width: 100%;
        order: 1;
        margin-bottom: 20px;
    }
    .content {
        padding: 40px 2vw;
    }
    .tel-contact {
        flex-direction: column;
    }
    .tel-contact img {
        width: 100%;
    }
    .tel-contact a {
        margin: 0 auto;
    }
    .tel-contact .text {
        padding: 15px 30px;
    }
    .page-top-btn {
        width: 60px;
        height: 60px;
        right: 10px;
    }
}
/* FREE responsiv*/
@media screen and (max-width: 767px) {
    .new-style .free-about-img {
        width: 100%;
        max-width: 300px;
        margin: 0 auto 10px auto;
    }
    .new-style .soudan .text-img img {
        margin-bottom: 0;
    }
    .new-style .text-img .studio-text  {
        width: 100%;
        order: 2;
        padding: 0;
    }
    .onayami {
        background: url(../images/new/free-bg-2_sp.jpg)no-repeat bottom center/ cover;
        padding-bottom: 60px;
    }
}

/* ather responsiv */
@media screen and (max-width: 767px) {
    .first-top .text-top p {
        width: 70%;
    }
    .first-top-img {
        width: auto;
        height: 160%;
        margin-top: -20%;
        width: 45%;
        right: -15%;
    }
    .text-wrapper {
        width: 100%;
    }
    .text-box img {
        width: 95%;
    }
    .text-box .text {
        width: 95%;
        padding: 30px 10px 10px 10px;
    }
    .text-box {
        margin-bottom: 60px;
    }
    .text-box:last-of-type {
        margin-bottom: 0;
    }
    .concept-block  {
        margin-bottom: 60px;
    }
    .concept-block:last-of-type {
        margin-bottom: 60px;
    }
    .concept-ttl-wrapper {
        padding: 40px 10px 70px 10px;
    }
    .concept-text {
        flex-direction: column;
        margin-left: 2vw;
        margin-right: 2vw;
        padding: 30px;
    }
    .concept-text .text {
        width: 100%;
        order: 2;
    }
    .concept-text img {
        width: 100%;
        order: 1;
        max-width: 420px;
        margin: 0 auto 20px auto;
    }
    .new-style .kakaku-text h3 {
        font-size: 19px;
    }
    .kakaku-img {
        width: 100%;
        margin: auto;
        margin-bottom: 80px;
    }
    .link-block {
        padding: 30px 15px;
        flex-direction: column;
    }
    .link-block-img {
        width: 100%;
        margin-bottom: 20px;
    }
    .link-block-text {
        width: 100%;
    }
    .link-block-text p {
        font-size: 18px;
    }
    .company tr {
        flex-direction: column;
    }
    .company th {
        margin-bottom: 5px;
    }
    .company td {
        align-items: flex-start;
    }
    .company table {
        padding: 40px 2vw;
    }
    .mission-text {
        max-width: 450px;
    }
    .mission-text-1 {
        margin: 0 auto 40px auto;
    }
    .mission-text-2 {
        margin: 0 auto;
    }
    .mission {
        margin-bottom: 80px;
    }
    .plan .inner {
        flex-direction: column;
        padding: 40px 2vw;
    }
    .plan-btn {
        display: flex;
        position: static;
        width: 100%;
        margin: 30px auto 0 auto;
        max-width: 400px;
    }
    .money-btm {
        margin-bottom: 40px;
        margin-top: 60px;
    }
    .money-btm .text .text-top {
        margin-bottom: 30px;
    }
    .money-btm .text h3 {
        font-size: 18px;
    }
    .money-btm .text p {
        font-size: 16px;
    }
    .money-btm .ttl-wrapper {
        padding: 40px 2vw;
    }
    .money-btm .ttl-wrapper p {
        font-size: 16px;
    }
    .money-btm .ttl-wrapper h2 {
        font-size: 22px;
    }
    .money-btm .text {
        padding: 30px 20px;
    }
}


/* responsiv END */

/* contact */

.new-style .form-wrapper div {
    display: flex;
}

/* //////////CONTACT////////// */

.new-style .form-wrapper {
    flex-direction: column;
    padding: 60px 2vw;
}
.new-style .form-inner {
    max-width: 1200px;
    margin: auto;
    background: #fff;
}

.new-style .contact-text {
    text-align: center;
}

.new-style .contact-ttl {
    background: #fff;
    padding: 60px 2vw 30px 2vw;
}
.new-style .contact-ttl .new-style p.ttl-sub {
    margin-bottom: 0;
}
.new-style .wpcf7 {
    width: 100%;
    margin: auto;
}

.new-style .wpcf7 form {
    width: 100%;
}

.new-style .contact-form-wrapper {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    padding: 80px 2vw;
}

.new-style .contact-form-wrapper label {
    display: flex;
    align-items: center;
}

.new-style .input-wrapper {
    display: flex;
    width: 100%;
    max-width: 860px;
    margin: auto;
    border-top: 1px solid #bbb;
}

.new-style .input-wrapper.last {
    border-bottom: 1px solid #bbb;
    margin-bottom: 40px;
}

.form-agree .form-check {
    color: #DD2222;
    font-weight: bold;
}

.new-style .input-h {
    font-weight: bold;
    width: 240px;
    padding: 25px 20px;
    display: flex;
}

.new-style .input-h p {
    display: flex;
    align-items: flex-start;
    margin-top: 0;
    height: fit-content;
}
.new-style .input-h.para p {
    flex-direction: column;
}
.new-style .sub-text {
    font-size: 14px;
}

.new-style .input-h .required {
    height: 24px;
    font-size: 12px;
    color: #fff;
    background-color: #D52332;
    padding: 3px 10px;
    margin-left: 10px;
}

.new-style .input-h .small {
    font-size: 12px;
}

.new-style .input-d {
    display: flex;
    flex-direction: column;
    width: calc(100% - 240px);
    padding: 25px 20px;
    background: #F2F2F2;
}

.new-style input,
.new-style textarea,
.new-style select {
    border-radius: 3px;
    padding: 0 5px;
    height: 40px;
    width: 100%;
    border: 1px solid #bbb;
}

.new-style input {
    max-width: 100%;
}

input[type=checkbox] {
    width: 15px;
    height: 15px;
    min-width: 15px;
    min-height: 15px;
    margin: auto 8px auto 0;
}

.new-style textarea {
    height: 250px;
    padding: 10px;
}

.new-style .your-day {
    width: 190px;
    height: 40px;
    margin-right: 20px;
}

.new-style .your-time {
    width: 190px;
    height: 40px;
}

.new-style .your-day-text {
    font-size: 12px;
    margin-top: 10px;
    color: #a72424;
    font-weight: bold;
}

.new-style .your-day-text-02 {
    margin-top: 0;
}

.new-style .your-check {
    display: flex;
    flex-direction: column;
}

.new-style .your-check span {
    margin-left: 0;
}

.new-style .your-check .wpcf7-list-item {
    margin-bottom: 10px;
}

.your-check .wpcf7-list-item.last {
    margin-bottom: 0;
}

.new-style .your-studio span {
    margin: 0;
}

.new-style input[type=radio] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    margin: auto 8px auto 0;
}

.new-style .new-style p.form-agree {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 30px auto;
    color: #D52332;
    font-weight: bold;
    font-size: 14px;
}

.new-style .form-agree label {
    margin: auto;
}

.new-style .form-check input[type=checkbox] {
    min-width: 20px;
    min-height: 20px;
}

.new-style .wpcf7-list-item {
    margin-left: 0 !important;
}

.new-style .form-submit {
    width: 220px;
    display: flex;
    align-items: center;
}

.new-style .wpcf7-submit {
    border: none;
    color: #fff;
    background-color: #EC8425;
    padding: 10px;
    border-radius: 3px;
    font-weight: bold;
    min-width: 100%;
    height: 55px;
    font-size: 18px;
}

.new-style .contact-privacy {
    flex-direction: column;
    width: 100%;
    max-width: 800px;
}

.new-style .contact-privacy-ttl {
    font-weight: bold;
    font-size: 18px;
    margin: 40px 0 10px 0;
}

.new-style .contact-privacy-text {
    font-size: 12px;
    line-height: 1.8;
}

.new-style .form-btm-text {
    flex-direction: column;
    margin: 80px auto 0 auto;
}

.new-style .form-btm-text p {
    line-height: 1.5;
}
.new-style .form-btm-text p.ttl {
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    margin: 0 auto 10px 0;
}

.new-style .form-btm-text p.big {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 13px;
}

#contact .content {
    max-width: 1100px;
}

.new-style .contact-wrapper {
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #f7f7f7;
    padding: 60px 2vw;
}

.new-style .contact-wrapper .ttl {
    width: 100%;
    text-align: center;
}
.new-style .contact-wrapper h2 {
    margin: auto;
}

.new-style .contact-wrapper .ttl .ttl-sub {
    color: #000;
}

.new-style .nop .input-d span {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.new-style .nop .input-d span:first-of-type {
    margin-bottom: 5px;
}

.new-style .nop .input-d p {
    display: flex;
    flex-direction: column;
}

.nop .input-d input span:first-of-type {
    margin-bottom: 0;
}

.new-style .nop br {
    display: none;
}
.new-style .file-wrapper {
    flex-direction: column;
}
.new-style .file-wrapper p {
    display: flex;
    flex-direction: column;
}
.new-style .wpcf7 input[type="file"] {
    width: auto;
    height: auto;
    padding: 0;
    border: none;
    margin-bottom: 15px;
}

.new-style .contact-btm-text-ttl {
    font-size: 16px;
    margin-top: 30px;
    font-weight: bold;
    text-align: left;
}
.new-style .contact-btm-text {
    font-size: 14px;
    margin-top: 3px;
    text-align: left;
}
.new-style .input-d p {
    width: 100%;
    display: flex;
    align-items: center;
}
.new-style .adult-num {
    width: 100px;
    margin-left: 10px;
    margin-right: 25px;
}
.new-style .child-num {
    width: 100px;
    margin-left: 10px;
}

.new-style .new-style p.contact-privacy-ttl {
    margin-bottom: 20px;
    margin-top: 40px;
}

.new-style .input-d .sub-text {
    margin-top: 10px;
}
.new-style p.form-agree {
    margin-bottom: 60px;
}
.new-style .column {
    display: flex;
}
.new-style .input-h .column .required {
    height: 27px;
}
.book-img {
    width: 100%;
    max-width: 480px;
    height: 150px;
    background: url(../images/new/contact-book.png)no-repeat left center / contain;
    margin-top: 20px;
}
.new-style.page-contact .contact-form-wrapper {
    padding-top: 0;
}
.input-h.para {
    flex-direction: column;
}

@media screen and (max-width: 1000px) {
    .new-style .contact-wrapper .ttl {
        margin-bottom: 60px;
    }
    .new-style .contact-form-wrapper {
        padding: 40px 2vw;
        margin-top: 0;
    }
    .new-style .input-wrapper {
        flex-direction: column;
    }
    .new-style .input-d,
    .new-style .input-h {
        width: 100%;
    }
    .new-style .input-h {
        padding: 0;
        margin-bottom: 20px;
    }
    .new-style .input-d {
        background-color: transparent;
        padding: 0;
        margin-bottom: 20px;
    }
    .new-style .input-wrapper {
        border: none;
    }
    .new-style .input-column-wrapper {
        display: flex;
        flex-direction: column;
    }
    .new-style .your-time {
        margin-top: 15px;
    }
    .new-style .form-agree label {
        display: flex;
        align-items: center;
    }
    .new-style #contact-form .contact-form-wrapper {
        padding: 0;
        margin-top: 20px;
    }
    .new-style .form-btm-text {
        margin: 60px auto 0 0;
    }
    .new-style .form-btm-text p {
        text-align: left;
    }
    .new-style .input-d {
        font-size: 14px;
    }
    .new-style .input-wrapper {
        margin-bottom: 20px;
    }
    .new-style .input-column p {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    .page-contact .form-wrapper .pc {
        display: none;
    }
}

@media (hover: hover) and (pointer: fine) {
    .new-style .wpcf7 .wpcf7-submit {
        cursor: pointer;
    }
    .new-style .wpcf7 .wpcf7-submit:disabled {
        cursor: not-allowed;
    }
}


/* //////////animation////////// */

.fade {
    opacity: 0;
    transition: all 1.3s;
}

.fade-up {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1.3s;
}

.fade-R {
    opacity: 0;
    transform: translateX(20px);
    transition: all 1.3s;
}

.fade-L {
    opacity: 0;
    transform: translateX(-20px);
    transition: all 1.3s;
}

.marker {
    padding: 0 5px;
    background-image: linear-gradient(#FFF6A1, #FFF6A1);
    background-size: 0 50%;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: 2s ease;
}

.marker.active {
    background-size: 100% 50%;
}


/* SPnav */
#sp-nav {
    display: none;
}
@media screen and (max-width: 1085px) {
    .sp-nav-wrapper a.sp-nav-logo::after {
        display: none;
    }
    .sp-nav-wrapper a.sp-nav-logo {
        width: 120px;
        position: absolute;
        left: 25px;
        top: 25px;
    }
    .sp-sns-link {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
    }
    #sp-nav .sp-nav-wrapper .sp-sns-link a {
        width: auto;
        height: 40px;
        font-size: 14px;
        line-height: 1.2;
    }
    #sp-nav .sp-nav-wrapper .sp-sns-link a img {
        height: 40px;
        margin-right: 5px;
    }
    .sp-nav-banner-wrapper {
        display: flex;
        flex-direction: column;
    }
    .sp-nav-banner {
        width: 100%;
        margin-bottom: 20px;
    }
    @media (hover: hover) and (pointer: fine) {
        #sp-nav .sp-nav-wrapper .sp-sns-link a:hover {
            opacity: 0.6;
        }
        .sp-nav-banner:hover {
            opacity: 0.6;
        }
    }
    .sp-sns-link a:first-of-type {
        margin-right: 20px;
    }
    #sp-nav {
        display: flex;
        z-index: 20000;
    }
    #sp-nav a {
        color: #fff;
        text-decoration: none;
    }
    #sp-nav p {
        margin: 0;
    }
    #sp-nav ul {
        padding-left: 0;
        margin: 0;
    }
    #sp-nav li {
        list-style: none;
    }
    .drawer_menu-wrapper {
        padding: 15px 15px;
        background-color: transparent;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10000;
        cursor: pointer;
    }
    .drawer_menu {
        width: 30px;
        height: 30px;
        display: flex;
        position: relative;
        z-index: 1000;
    }
    .menu-trigger,
    .menu-trigger span {
        display: flex;
        transition: all .4s;
        box-sizing: border-box;
    }
    .menu-trigger {
        width: 30px;
        height: 30px;
    }
    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #000;
        /*//border-color//*/
        border-radius: 4px;
    }
    .home #header .menu-trigger span {
        background-color: #fff;
    }
    .home #header.fixed .menu-trigger span {
        background-color: #000;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
    .menu-trigger span:nth-of-type(2) {
        top: 15px;
    }
    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
    .drawer_menu.active .menu-trigger span:nth-of-type(1) {
        transform: translateY(14px) rotate(-45deg);
    }
    .drawer_menu.active .menu-trigger span:nth-of-type(2) {
        opacity: 0;
    }
    .drawer_menu.active .menu-trigger span:nth-of-type(3) {
        transform: translateY(-14px) rotate(45deg);
    }
    .drawer_menu-wrapper.active+.sp-nav-wrapper {
        left: 0;
    }
    .sp-nav-wrapper {
        width: 100%;
        height: 100vh;
        flex-direction: column;
        align-items: center;
        padding: 102px 2vw 60px 2vw;
        position: fixed;
        top: 0;
        left: 200vw;
        opacity: 0;
        background-color: rgba(94, 57, 26, .95);
        overflow-y: scroll;
        transition: ease .5s;
        z-index: 999;
    }
    .sp-nav-inner {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: 450px;
        margin: auto;
    }
    .drawer_menu-wrapper.active+.sp-nav-wrapper {
        left: 0;
        opacity: 1;
    }
    .sp-nav-wrapper a {
        width: 100%;
        display: flex;
        align-items: center;
        font-weight: bold;
    }
    .sp-nav-wrapper a::after {
        font-size: 30px;
        content: "▸";
        display: flex;
        justify-self: flex-end;
        align-self: center;
        margin: auto 0 auto auto;
    }
    .sp-nav-wrapper .sp-nav-banner-wrapper a::after {
        display: none;
    }
    .sp-nav-wrapper a.link-box:after {
        display: none;
        content: '';
    }
    .sp-nav-wrapper .sp-sns-link a::after {
        display: none;
    }
    .sp-nav-wrapper a.link-box {
        justify-content: center;
        height: 55px;
        margin: 0 auto 15px auto;
        border: 1px solid #fff;
        text-align: center;
    }
    .sp-nav-link {
        padding-bottom: 10px;
        padding-top: 10px;
        border-top: 1px solid #fff;
        font-size: 18px;
    }
    .sp-nav-link.btm {
        border-top: none;
    }
    .sp-nav-wrapper a.sp-nav-sns {
        width: fit-content;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        margin: 0 auto 25px auto;
    }
    .sp-nav-sns img {
        width: 30px;
        margin-right: 5px;
        filter: invert(100);
    }
    .sp-nav-wrapper a.sp-nav-sns::after {
        display: none;
    }
    .sp-nav-1 a {
        display: flex;
        font-size: 18px;
        align-items: center;
    }
    .sp-nav-1 li a {
        padding-bottom: 10px;
        border-top: 1px solid #fff;
        padding-top: 10px;
    }
    .sp-nav-1 li.last {
        padding-bottom: 10px;
        border-bottom: 1px solid #fff;
    }
    .sp-nav-1 a span {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 25px;
        height: 25px;
        font-size: 16px;
        background-color: #fff;
        color: #5E391A;
        margin: 0 10px 0 3px;
    }
    .ac-menu {
        flex-direction: column;
    }
    .ac-ttl {
        width: 100%;
        position: relative;
        display: flex;
        font-size: 18px;
        border-bottom: 1px solid #fff;
        padding-bottom: 10px;
        padding-top: 10px;
        cursor: pointer;
        font-weight: bold;
        color: #fff;
        align-items: center;
        height: 68px;
    }
    .ac-ttl span {
        position: absolute;
        right: 6px;
        width: 15px;
        height: 2px;
        background-color: #fff;
        /*//border-color//*/
        border-radius: 4px;
        transition: .6s ease;
    }
    .ac-ttl span:nth-of-type(1) {
        top: 50%;
    }
    .ac-ttl span:nth-of-type(2) {
        top: 50%;
        transform: rotate(90deg);
    }
    .ac-ttl.active span:nth-of-type(2) {
        transform: rotate(0deg);
    }
    .sp-nav-2 {
        display: flex;
        height: 0;
        overflow: hidden;
    }
    .ac-ttl.active+.sp-nav-2 {
        display: flex;
        flex-direction: column;
        height: auto;
        overflow: hidden;
    }
    .sp-nav-2 a {
        width: calc(100% - 15px);
        font-size: 14px;
        margin-left: 15px;
        padding-top: 10px;
        border-bottom: 1px dashed #fff;
        padding-bottom: 10px;
    }
    .sp-renov-link {
        display: flex;
        width: 100%;
        max-width: 290px;
        height: 55px;
        align-items: center;
        justify-content: center;
        background-color: rgb(25, 71, 23);
        font-size: 18px;
        color: #fff;
        margin: 0 auto 30px auto;
        position: relative;
        border: 1px solid #38602D;
    }
    a.sp-renov-link::after {
        content: "";
        background: url(../img/common/link-mark-white.png) no-repeat center / contain;
        position: absolute;
        width: 18px;
        height: 18px;
        right: 5px;
        bottom: 5px;
    }
}
@media screen and (max-width: 600px) {
    .sp-renov-link {
        max-width: 100%;
    }
}


/* 20240410修正 */
#indexPage #mindArea {padding-bottom:0;}
#iezukuri_guide .guide_bg{
    background: #faf8f6;
    margin-bottom:40px;
}
#iezukuri_guide .guide_box{padding:40px 15px 0;}
#iezukuri_guide .guide_flex .guide_flex_item:first-child{margin-bottom:20px;}
#iezukuri_guide .guide_flex .guide_flex_item:last-child p{margin:0;}
#iezukuri_guide .btnWrap{
    padding:40px 0;
    margin:0;
}
@media print, screen and (min-width:768px){
    #iezukuri_guide .guide_box{
        max-width:720px;
        padding-bottom:40px;
        margin:auto;
    }
    #iezukuri_guide .guide_flex{
        display:flex;
        justify-content:space-between;
    }
    #iezukuri_guide .guide_flex .guide_flex_item{width:calc(50% - 20px);}
    #iezukuri_guide .guide_flex .guide_flex_item:first-child{margin-bottom:0;}
    #iezukuri_guide .btnWrap{padding-bottom:0;}
}
@media print, screen and (min-width:992px){
    #indexPage #mindArea {padding-bottom:40px;}
    #iezukuri_guide .guide_bg{margin-bottom:80px;}
    #iezukuri_guide .guide_box{
        max-width:940px;
        padding:80px 0;
    }
    #iezukuri_guide .guide_flex{justify-content:flex-start;}
    #iezukuri_guide .guide_flex .guide_flex_item:first-child{/* width:40%; *//* max-width:455px; */}
    #iezukuri_guide .guide_flex .guide_flex_item:last-child{width:50%; max-width:562px;margin-left:80px;}
    #iezukuri_guide .btnWrap{text-align:right;}
}
@media print, screen and (min-width:1200px){
    #iezukuri_guide .guide_box{
        max-width:1140px;
    }
}

/* renovation */

.header-bg.header-renovation {
    background: url(../images/common/header-renovation.jpg) no-repeat center / cover;
}

.renovation-block  {
    width: 100%;
    margin-bottom: 120px;
}
.renovation-block:last-of-type {
    margin-bottom: 80px;
}
.renovation-ttl-wrapper {
    width: 100%;
    padding: 80px 10px 110px 10px;
}
.renovation-ttl-wrapper.renovation-ttl-bg {
    background: url(../images/new/renovation-ttl-bg.jpg) no-repeat center / cover;
}
.renovation-ttl {
    max-width: 1000px;
    width: 100%;
    margin: auto;
}
.renovation-text {
    display: flex;
    flex-direction: column;
    position: relative;
    max-width: 1200px;
    width: 96%;
    padding: 60px;
    background-color: #fff;
    border: 1px solid #707070;
    margin: -50px auto 0 auto;
    z-index: 2;
}
.renovation-text h3 {
    font-weight: bold;
    font-size: 24px;
    text-align: center;
    margin: 0 auto 40px auto;
}
.renovation-text .inner {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}
.renovation-text .list {
    width: 55%;
}
.renovation-text .list p {
    display: flex;
    flex-direction: column;
    width: 100%;
    font-size: 21px;
    font-weight: bold;
    color: #4D2A0A;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dashed #CBCBCB;
}
.renovation-text .list p:last-of-type {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
.renovation-text .list p span {
    font-size: 17px;
}
.renovation-text img {
    width: 43%;
    object-fit: cover;
    object-position: top center;
}
.renovation-btm-text {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
.question {
    margin-top: 140px;
}
.renov-q-top {
    position: relative;
    background-color: #F5F5F5;
    padding: 50px 0;
}
.renov-q-top img {
    display: flex;
    position: absolute;
    width: 260px;
    max-width: 70%;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
.renov-q-text {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.renov-q-text p {
    display: flex;
    width: 48%;
    height: 60px;
    font-size: 23px;
    font-weight: bold;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    border: 1px solid #000;
}
.renov-q-btm {
    background-color: #EC8425;
    position: relative;
}
.renov-q-btm:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 70px solid transparent;
    border-right: 70px solid transparent;
    border-top: 70px solid #F5F5F5;
    position: absolute;
    top: -3px;
    left: 50%;
    transform: translateX(-50%);
}
.renov-q-logo {
    position: absolute;
    width: 500px;
    left: 0;
    bottom: 0;
}
.renov-q-img {
    position: absolute;
    width: 270px;
    right: 16vw;
    bottom: 0;
    z-index: 1;
}
.renov-q-btm .content {
    display: flex;
    justify-content: center;
    align-items: center;
}
.renov-q-btm p {
    display: inline-block;
    margin: 80px auto;
    position: relative;
    font-size: 30px;
    color: #fff;
    border-bottom: 3px solid #fff;
    text-align: center;
    z-index: 2;
    font-weight: bold;
    letter-spacing: 2px;
    filter: drop-shadow(0 0 2px #EC8425);
    text-shadow: 1px 1px 0 #EC8425, -1px 1px 0 #EC8425, -1px -1px 0 #EC8425,1px -1px 0 #EC8425;
}
.renov-ba {
    background: url(../images/new/renov-ba-bg.jpg) no-repeat center / cover;
}
.renov-ba-block {
    display: flex;
    flex-direction: column;
    margin-top: 80px;
}
.renov-ba-img {
    width: 100%;
    margin-bottom: 80px;
}
.renov-ba-img:last-of-type {
    margin-bottom: 0;
}
.renov-ba .deco-ttl, .renov-ba .ttl-sub {
    color: #fff;
}
.renov-ba .deco-ttl::after {
    filter: brightness(1000%);
}
.renov6-block {
    flex-direction: column;
}
.renov6-item {
    display: flex;
    flex-direction: column;
    position: relative;
    margin-bottom: 80px;
}
.renov6-item:last-of-type {
    margin-bottom: 0;
}
.renov6-item .item-top {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    position: relative;
    z-index: 2;
}
.renov6-item:nth-of-type(2n) .item-top {
    justify-content: flex-start;
}
.renov6-icon {
    display: flex;
    width: 40%;
    margin: auto 0;
}
.renov6-text {
    position: relative;
    flex-direction: column;
    width: 70%;
    padding: 30px;
    background-color: #fff;
    border: 1px solid #000;
    z-index: 2;
    margin-top: -112px;
}
.renov6-item:nth-of-type(2n) .renov6-text {
    margin: -112px 0 0 auto;
}
.renov6-text h3 {
    font-size: 23px;
    font-weight: bold;
    padding-bottom: 5px;
    border-bottom: 1px solid #888888;
    margin-bottom: 10px;
    margin-top: 0;
}
.renov6-text p {
    font-size: 18px;
    font-weight: bold;
}
.renov6-br_sp {
    display: none;
}
.renov-contact {
    background-color: #EBEBEB;
}
.renov-contact .content {
    background-color: #fff;
}
.renov-contact .contact-ttl {
    flex-direction: column;
    background-color: transparent;
    padding: 0;
}
.new-style .renov-contact p.ttl-sub {
    margin-bottom: 0;
}

.renov-contact .form-inner {
    padding: 80px 2vw;
    background-color: transparent;
}

@media screen and (max-width: 1200px) {
    .renov-q-img {
        right: 3vw;
    }
}
@media screen and (max-width: 767px) {
    .renovation-block  {
        margin-bottom: 60px;
    }
    .renovation-block:last-of-type {
        margin-bottom: 60px;
    }
    .renovation-text .inner {
        flex-direction: column;
    }
    .renovation-text h3 {
        font-size: 21px;
    }
    .renovation-text .list p {
        font-size: 18px;
    }
    .new-style p {
        font-size: 16px;
    }
    .renovation-ttl-wrapper {
        padding: 40px 10px 70px 10px;
    }
    .renovation-text {
        flex-direction: column;
        margin-left: 2vw;
        margin-right: 2vw;
        padding: 30px;
    }
    .renovation-text .list {
        width: 100%;
        order: 2;
    }
    .renovation-text img {
        width: 100%;
        order: 1;
        max-width: 420px;
        margin: 0 auto 20px auto;
    }
    .renov-q-text {
        flex-direction: column;
    }
    .renov-q-text p {
        width: 100%;
        height: 45px;
        font-size: 17px;
        margin-top: 20px;
    }
    .renov-q-img {
        right: -60px;
    }
    .renov-q-logo {
        max-width: 80%;
        opacity: 0.6;
    }
    .renov-q-btm p {
        font-size: 19px;
    }
    .renov-q-top img {
        width: 210px;
        top: -40px;
    }
    .question {
        margin-top: 100px;
    }
    .renov-ba-block {
        margin-top: 40px;
    }
    .renov-ba-img {
        margin-bottom: 40px;
    }
    .renov-ba-img:last-of-type {
        margin-bottom: 0;
    }
    .renov6-icon {
        display: none;
    }
    .renov6-text {
        width: 100%;
        margin-top: 0;
    }
    .renov6-item:nth-of-type(2n) .renov6-text {
        margin-top: 0;
    }
    .renov6-img {
        width: 100%;
    }
    .renov6-img img {
        width: 100%;
    }
    .renov6-item {
        margin-bottom: 40px;
    }
    .renov6-text {
        padding: 20px 2vw;
    }
    .renov6-text h3 {
        font-size: 18px;
    }
    .renov6-text p {
        font-size: 16px;
    }
    .renovation .tel-contact .text {
        padding: 15px 10px;
    }
    .renovation .tel-contact p span {
        display: inline-block;
        width: 100%;
    }
    .renovation .tel-contact p span.kudoku {
        width: auto;
        display: inline;
        font-size: 16px;
    }
}

@media screen and (max-width: 460px) {
    .renov6-br_sp {
        display: block;
    }
}

/* メニューにリフォーム */
#header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) {
    padding-right: 5px;
}
#header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a {
    display: flex;
    padding: 15px 30px;
    background-color: transparent;
    color: #fff;
    height: 60px;
    align-items: center;
}
.home.page #header.fixed #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a, .archive #header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a, .single #header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a, .page #header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a {
    color: #41210e;
}
.home.page #header #mainNaviArea #mainNavi ul > li:nth-last-of-type(2) a {
    color: #fff;
}
#header #mainNaviArea #mainNavi ul > li:last-of-type a {
    display: flex;
    height: 60px;
    align-items: center;
}
#header.fixed {
    padding-top: 0;
}
#header #headerCnt #logoArea a {
    margin: 3px 0 15px;
}
#pageHeader {
    margin-top: 120px;
}

@media screen and (max-width: 1085px) {
    #mainNaviArea {
        display: none;
    }
    .sp-nav-wrapper a.link-box.re {
        background-color: #ff7a00a3;
    }
}

#customerSinglePage h3 {
    font-size: 32px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #999;
}
.customerName p {
    font-size: 18px;
}
.customerName {
    margin-bottom: 20px;
}
#customerSinglePage .works-slider {
    display: flex;
    flex-direction: column;
}
#customerSinglePage .slide-item {
    width: 100%;
    padding: 0 40px;
}
#customerSinglePage .slide-item img {
    width: 100%;
    height: 570px;
    max-height: 50vw;
    object-fit: contain;
    object-position: center;
    margin: auto;
}
#customerSinglePage p.slide-text {
    text-align: center;
    margin: 10px 0;
    display: flex;
    width: 100%;
    padding: 10px;
}
#customerSinglePage .thum-wrapper .slide-item {
    height: auto;
    padding: 10px;
    width: 14% !important;
    opacity: 0.3;
}
#customerSinglePage .thum-wrapper .slide-item img {
    height: auto;
    object-fit: cover;
}
#customerSinglePage .thum-wrapper .slick-track {
    transform: unset !important;
    width:100% !important;
}
#customerSinglePage .thum-wrapper .slide-item.slick-active {
    opacity: 1;
}
#customerSinglePage .thum {
    width: 100%;
    position: relative;
    margin-top: 20px;
    margin-bottom: 40px;
}
.slick-prev {
    display: flex;
    position: absolute;
    z-index: 2;
    left: 0;
    width: 20px;
    height: 30px;
    background: url(../images/common/prev-arrow.png) no-repeat center / contain;
}
.slick-next {
    display: flex;
    position: absolute;
    z-index: 2;
    right: 0;
    width: 20px;
    height: 30px;
    background: url(../images/common/next-arrow.png) no-repeat center / contain;
}
.slick-prev::before,.slick-next::before {
    content: "";
}
.slick-prev:hover,.slick-prev:focus {
    background: url(../images/common/prev-arrow.png) no-repeat center / contain;
}
.slick-next:hover,.slick-next:focus {
    background: url(../images/common/next-arrow.png) no-repeat center / contain;
}
@media (hover: hover) and (pointer: fine) {
    .slick-prev:hover {
        background: url(../images/common/prev-arrow.png) no-repeat center / contain;
        opacity: 0.5;
    }
    .slick-next:hover {
        background: url(../images/common/next-arrow.png) no-repeat center / contain;
        opacity: 0.5;
    }
}

#customerSinglePage h4 {
    display: flex;
    width: 100%;
    padding: 8px 15px;
    background-color: #93785b;
    color: #fff;
    border: none;
    font-size: 21px;
    margin-bottom: 40px;
}
.single-point-block {
    margin-bottom: 40px;
}
#customerSinglePage h5 {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    display: flex;
    width: 90px;
    min-width: 90px;
    font-size: 16px;
    font-weight: bold;
    color: #000;
    border: none;
    padding: 0;
    margin: 0;
}
.single-info-block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.single-info-item {
    display: flex;
    width: 48%;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e5e5e5;
    align-items: center;
}
.single-info-item p {
    border-left: 2px solid #999;
    padding-left: 20px;
}

.tags {
    display: flex;
    width: 100%;
    margin-top: 40px;
    flex-wrap: wrap;
}
.tags-item {
    display: flex;
    color: #fff;
    background-color: #333;
    padding: 3px 8px;
    border: none;
    text-decoration: none;
    width: fit-content;
    margin-right: 10px;
    margin-bottom: 10px;
}
.tags.top-tags {
    justify-content: flex-end;
    margin-bottom: 20px;
}
.top-tags .tags-item {
    margin: 0 0 10px 10px !important;
}
.archive-tags {
    margin-top: 0;
    margin-bottom: 40px;
}
@media (hover: hover) and (pointer: fine) {
    .tags-item:hover {
        opacity: 0.6;
    }
    .top-tags .tags-item:hover {
        opacity: 1;
    }
}

@media screen and (max-width: 767px) {
    #customerSinglePage h3 {
        font-size: 23px;
    }
    .customerName p {
        font-size: 18px;
    }
    .customerName {
        margin-bottom: 20px;
    }
    #customerSinglePage .thum-wrapper .slide-item {
        width: 20% !important;
        padding: 5px;
    }
    #customerSinglePage h4 {
        font-size: 18px;
    }
}
@media screen and (max-width: 600px) {
    #customerSinglePage .slide-item img {
        height: 230px;
    }
    #customerSinglePage h3 {
        font-size: 21px;
    }
    .customerName p {
        font-size: 16px;
    }
    .single-info-item {
        width: 100%;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    #customerSinglePage h5 {
        font-size: 14px;
        width: 75px;
        min-width: 75px;
    }
    .single-info-item p {
        font-size: 14px;
        padding-left: 15px;
    }
    .tags-item {
        font-size: 14px;
        width: fit-content;
        margin-right: 10px;
        margin-bottom: 10px;
    }
    .tags.top-tags {
        justify-content: flex-start;
        margin-bottom: 20px;
        margin-top: 0;
    }
    .top-tags .tags-item {
        margin: 0 10px 10px 0 !important;
    }
}

p.post-ttl {
    margin: 0;
    color: #a57c52;
}

.tags {
    display: flex;
    width: 100%;
    margin-top: 40px;
    flex-wrap: wrap;
}
p.tags-item {
    display: flex;
    color: #fff;
    background-color: #000;
    padding: 3px 8px;
    border: none;
    text-decoration: none;
    width: fit-content;
    margin: 0 10px 10px 0;
    font-size: 14px;
}
@media screen and (max-width: 768px) {
    p.tags-item {
        font-size: 12px;
        margin: 0 5px 5px 0;
    }
}

.archive-tags-wrapper {
    display: flex;
    width: 100%;
    padding: 10px 0 10px 0;
    box-sizing: border-box;
    flex-wrap: wrap;
}

#catList.customerCatListPage .postListWrap .postBox .postCnt p.archive-tags {
    font-size: 14px;
    color: #fff;
    background-color: #333;
    padding: 1px 5px;
    margin: 0 5px 5px 0;
    box-sizing: border-box;
}
@media screen and (max-width: 768px) {
    .archive-tags-wrapper {
        flex-direction: column;
    }
    .archive-tags {
        width: 100%;
        text-align: center;
        margin-right: 0;
    }
}

/* 250317 LPのリンク追加 */
.sns-link a:nth-of-type(3) img {
    width: 21px;
}
@media screen and (max-width: 1085px){
    .sp-sns-link:nth-of-type(2) {
        padding-top: 0;
    }
    #sp-nav .sp-nav-wrapper .sp-sns-link:nth-of-type(2) a img {
        height: 25px;
        margin-right: 7px;
    }
}