/*-----------------------------------
1.共通パーツ
2.content1
3.content2
4.content3
5.content4
6.content5
7.content6

------------------------------------*/


/*-----------------------------------
1.共通パーツ
------------------------------------*/
a{
    text-decoration: none;
    color: #000;
}
#wrap{
}
div.wpcf7 .ajax-loader{
    display: none !important;
}
body::before {
    background: none !important;
}
#gHeader {
    display: none !important;
}
.gNavi {
    display: none !important;
}
#gFooter {
    display: none !important;
}
#container {
    padding-top: 0 !important;
}
.for-sp{
    display: none;
}

.wpcf7-form-control.wpcf7-submit {
    font-family: YuMincho, 'Yu Mincho', serif !important;
}
table {
    font-family: YuMincho, 'Yu Mincho', serif !important;
}
#flat-lp .inner {
    width: 1200px;
    margin: auto;
    position: relative;
}
#flat-lp section{
    margin-bottom: 75.0rem;
    overflow: hidden;
}
#flat-lp{
    font-family :
            YuMincho,    /* Mac用 */
            'Yu Mincho', /* Windows用 */
            serif;
}
#flat-lp  div img{
    width: 100%;
    height: auto;
}




/*-----------------------------------
2.content1
------------------------------------*/
#flat-lp #content1{
    width: 100%;
    margin-bottom: 45.0rem;
    position: relative;
}

#content1 .inner .fv-cont{
    position: relative;
    height: 100%;
    padding: 40px 0 120px;
}



#content1 .inner .fv-cont div {
    position: absolute;
}


#content1 .inner .fv-cont div:nth-child(1) {
    bottom: 15%;
    left: 10%;
    width: 20%;
    height: auto;
    z-index: 10;
}
#content1 .inner .fv-cont div:nth-child(1) svg {
    width: 100%;
    height: auto;
}
#fv-border {
    bottom: -5%;
    width: 100%;
    position: absolute;
    z-index: 10;
    left: -14%;
    height: 100%;
}
#fv-border.svg svg{
    stroke-dasharray: 1200;
    opacity: 0;
    transition-delay: 1s;
}

#fv-border.svg.stroke svg{
    animation-delay: 1s !important;
    animation:line-stroke2 1s;
    opacity: 1;
}

#fv-border svg {
    height: 100%;
    width: 100%;
}

.fv-cont div:nth-child(2) {
    position: absolute;
    right: 0;
    top: 3%;
    z-index: 2;
}

#content1 .inner .fv-cont span {
    margin: 0 0 0 auto;
    display: block;
    width: max-content;
}
#content1 .inner .fv-cont span.fadeIn{
    transition: all 1s ease-in;
    transition-delay: 2s;
}
#content1 .inner .fv-cont span.fv-inview{
    transform: translateY(0);
    transition: all 1s ease-in;
    transition-delay: 2s;
}

.fv-cont div:nth-child(3) {
    top: 10%;
    left: 2%;
}

.fv-cont div:nth-child(3).fadeIn {
    transition-delay: 1.5s;
}



/*-----------------------------------
3.content2
------------------------------------*/
.photo-cont {
    position: relative;
    height: 100%;
    display: block;
    margin-bottom: 90.0rem;
}

.photo-cont div{
    position: absolute;
    z-index: 10;
    height: 100%;
}

.photo-cont div.line img{
    height: 100%;
}

.photo-cont span:nth-child(2){
    position: relative;
    width: 930px;
}

.photo-cont:nth-child(2n) span:nth-child(2){
    margin: 0 0 0 auto;
}

.photo-cont span {
    display: block;
}

.photo-cont span img {
    width: 100%;
    height: auto;
}

.photo-cont1 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    z-index: 2;
    bottom: -10%;
    right: 15%;
}

.photo-cont.photo-cont1 div.line {

    text-align: right;
    height: max-content;
    right: 5%;
    top: 18.75rem;
    width: 320px;
}


.photo-cont2 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    top: 0;
    left: 5%;
}

.photo-cont.photo-cont2 div.line {
    left: 0;
    top: -30%;
    width: 60%;
    text-align: right;
    height: max-content;
    z-index: 1;

}

.photo-cont.photo-cont2 div.line img{
    width: 100%;
    height: auto;
}

.photo-cont2 span:nth-child(2){
    z-index: 2;
}


.photo-cont3 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    z-index: 2;
    top: -20%;
    right: 15%;
}

.photo-cont.photo-cont3 div.line {
    left: 60%;
    top: -55%;
    width: 75%;
    text-align: right;
    height: max-content;
    z-index: 1;
}

.photo-cont.photo-cont3 div.line img{
    width: 100%;
    height: auto;
}

.photo-cont3 span:nth-child(2){
    z-index: 2;
}



.photo-cont4 span:nth-child(3) {
    position: absolute;
    width: 240px;
    height: max-content;
    z-index: 2;
    top: -10%;
    left: 5%;
}

.photo-cont.photo-cont4 div.line {
    left: -10%;
    top: -20%;
    width: 55%;
    text-align: right;
    height: max-content;
    z-index: 5;
}

.photo-cont.photo-cont4 div.line img{
    width: 100%;
    height: auto;
}

.photo-cont4 span:nth-child(2){
    z-index: 2;
}

.photo-last-text {
    position: relative;
}

.photo-last-border {
    width: 55%;
    margin: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -15%;
}

.photo-last-border svg{
    width: 100%;
}

.photo-last-text .text {
    position: relative;
    font-size: 9.0rem;
    writing-mode: vertical-rl;
    display: block;
    left: 50%;
    transform: translateX(-50%);
}

.photo-last-text .text span{
    display: inline-flex;
    padding-right: -0.375rem;
    position: relative;
    overflow: hidden;
}


.photo-last-text .text span::before{
    content:"";
    position: absolute;
    right: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
}

.photo-cont span:nth-child(3).fadeIn{
    transition-delay: .5s !important;
}
/*-----------------------------------
4.content3
------------------------------------*/

#content3 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#content3 .inner .what-img{
    width: calc(25% - 1.875rem);
}


#content3 .inner .what-text{
    width: calc(67% - 1.875rem);
    display: flex;
    flex-wrap: wrap;
}

#content3 .inner .what-text p{
    width: calc(50% - 1.875rem);
}


/*-----------------------------------
5.content4
------------------------------------*/


#content4{
    margin-bottom: 75.0rem;
    overflow: inherit !important;
}
.works-title{
    position: relative;
}

.works-title .works-logo {
    width: 25%;
    position: absolute;
    left: 0;
    top: 42%;
    transform: translateY(-50%);
}

.works-title .line {
    width: 110%;
    left: 0;
}

.works-cont{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 60.0rem;
}

.works-cont .text-box img {
    top: 70px;
    right: 0;
    position: sticky;
}

.works-cont .img-box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 80%;
}
.works-cont .text-box{
    width: 10%;
    position: relative;
}
.works-cont .img-box span{
    display: block;
}

.works-cont.works1 .img-box span:nth-child(1),
.works-cont.works1 .img-box span:nth-child(2),
.works-cont.works2 .img-box span:nth-child(1),
.works-cont.works2 .img-box span:nth-child(2){
    width: 100%;
    margin-bottom: 1.875rem;
}

.works-cont.works1 .img-box span:nth-child(3),
.works-cont.works1 .img-box span:nth-child(4),
.works-cont.works1 .img-box span:nth-child(5),
.works-cont.works2 .img-box span:nth-child(3),
.works-cont.works2 .img-box span:nth-child(4),
.works-cont.works2 .img-box span:nth-child(5){
    width: calc((100% / 3) - 0.9375rem);
}


.works-cont.works3 .img-box span:nth-child(1),
.works-cont.works4 .img-box span:nth-child(1){
    width: 100%;
    margin-bottom: 1.875rem;
}


.works-cont.works3 .img-box span:nth-child(2),
.works-cont.works3 .img-box span:nth-child(3),
.works-cont.works3 .img-box span:nth-child(4),
.works-cont.works3 .img-box span:nth-child(5),
.works-cont.works4 .img-box span:nth-child(2),
.works-cont.works4 .img-box span:nth-child(3),
.works-cont.works4 .img-box span:nth-child(4),
.works-cont.works4 .img-box span:nth-child(5){
    width: calc((100% / 2) - 0.9375rem);

    margin-bottom: 1.875rem;
}


/*-----------------------------------
6.content5
------------------------------------*/

.recomend-cont.recomend1,
.recomend-cont.recomend2 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 45.0rem;
}

.recomend-cont.recomend3 {
    position: relative;
}

.recomend1{
    align-items: flex-end;
}

.recomend2{
    align-items: flex-start;
}

.recomend-title {
    width: 1000px;
    margin: 0 auto 45.0rem;
}

.recomend-cont.recomend1 .text-box,
.recomend-cont.recomend2 .text-box {
    width: 300px;
    height: max-content;
}

.recomend-cont.recomend3 .text-box{
    width: 770px;
    height: max-content;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 4.5rem;
}

.recomend-cont.recomend3 .text-box h3{
    width: 50%;
}

.recomend-cont.recomend3 .text-box p{
    width: 40%
}


.recomend-cont .text-box h3{
    font-size: 6.0rem;
    margin-bottom: 4.5rem;
    font-weight: normal;
}

.recomend-cont .text-box p span {
    border-bottom: 2px solid #000;
}
.recomend-cont .text-box.inview-cont.fadeIn p span::before {
    animation: under-line 1s ease;
    animation-delay: .5s;
    transition-delay: .5s;
    opacity: 1;
}

.recomend-cont.recomend1 .img-box{
    width: 870px;
    padding-bottom: 15.0rem;
}
.recomend-cont.recomend2 .img-box{
    width: 870px;
    padding-top: 15.0rem;
}
#flat-lp #content12{
    overflow: initial !important;
}

#content12 .contact-cont .btn::before {
    content: "";
    display: block;
    width: 2px;
    height: 25px;
    background: #000;
    position: absolute;
    left: 50%;
    bottom: -13px;
}
.recomend-cont.recomend3 .img-box{
    width: 970px;

    margin: 0 0 0 auto;
}
.recomend-cont .img-box.svg{
    opacity: 0;
}
.recomend-cont .img-box.svg.stroke svg{
    transition-delay: 1s;
    opacity: 1;
    animation: line-stroke 8s ease !important;
    animation-delay: 1s !important;
}


/*-----------------------------------
7.content6
------------------------------------*/
.features-title {
    width: 340px;
    margin: 0 auto 45.0rem;

}

.features-logo{
    margin: 0 auto 13.5rem;
}

.features-lineup p span {
    display: block;
    width: max-content;
    margin: auto;
    text-align: center;
    font-size: 4.875rem;
    margin-bottom: 7.5rem;
    position: relative;
    overflow: hidden;
    line-height: 1.5;
}

.features-lineup p span:nth-child(2)::before {
    content: "";
    height: 2px;
    width: 100%;
    background-color: #000;
    display: block;
    position: absolute;
    bottom: 0;
    opacity: 0;
}
.features-title.inview-cont.fadeIn .features-lineup p.fadeIn span:nth-child(2)::before{
    animation: under-line .75s ease;
    animation-delay: .5s;
    opacity: 1;
    transition-delay: .75s;
}
.features-title.inview-cont.fadeIn .features-lineup p:nth-child(2).fadeIn span:nth-child(2)::before{
    animation-delay: .75s;
    opacity: 1;
}
.features-title.inview-cont.fadeIn .features-lineup p:nth-child(3).fadeIn span:nth-child(2)::before{
    animation-delay: 1s;
    opacity: 1;
}

.features-lineup p:nth-child(1) span:nth-child(1) {
    width: 17px;
    line-height: 1;
    margin-bottom: 4.5rem;
}

.features-lineup p:nth-child(2) span:nth-child(1) {
    width: 25px;
    line-height: 1;
    margin-bottom: 4.5rem;
}

.features-lineup p:nth-child(3) span:nth-child(1) {
    width: 25px;
    line-height: 1;
    margin-bottom: 4.5rem;
}


.features-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1100px;
    margin: 0 0 45.0rem auto;
    position: relative;
}
.features-cont.inview-cont.fadeIn h3,
.features-cont.features2 .img-box ul li div h3 {
    font-weight: normal;
}
.features-cont.features1 .img-box,
.features-cont.features3 .img-box{
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 5;
}

.features-cont.features1 .text-box,
.features-cont.features3 .text-box {
    width: 45%;
    text-align: center;
}
.features-cont .text-box h3 span:nth-child(1) {
    display: inline-block;
    width: 16%;
    margin: 0 auto 6.0rem;
}



.features-cont .text-box h3 > span:nth-child(2) {
    display: inline-block;
    font-size: 6.0rem;
    line-height: 2;
    width: 100%;
    font-weight: normal !important;
}
.features-cont .img-box span {
    display: inline-block;
}
.features-cont.features1 .img-box span:nth-child(1),
.features-cont.features1 .img-box span:nth-child(4) {
    width: 100%;
    margin-bottom: 3.75rem;
}
.features-cont.features1 .img-box span:nth-child(2),
.features-cont.features1 .img-box span:nth-child(3) {
    width: calc(50% - 1.875rem);
    margin-bottom: 4.5rem;
}

.features-cont .features-line {
    position: absolute;
    z-index: 1;
    top: 40%;
    transform: translateY(-50%);
    left: -40%;
    width: 50%;
    height: auto;
}
.features-cont .features-line2 {
    position: absolute;
    z-index: 1;
    top: 30%;
    transform: translateY(-50%);
    right: 5%;
    width: 40%;
    height: auto;
}



/* features2 */

.features-cont.features2 .text-box h3 span:nth-child(1),
.features-cont.features3 .text-box h3 span:nth-child(1) {
    width: 28%;
}


.features-cont.features2{

    margin: 0 auto 45.0rem 0;
}
.features-cont.features2 .img-box{
    width: 65%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 5;
}

.features-cont.features2 .text-box {
    width: 35%;
    text-align: center;
    padding-top: 10%;
}

.features-cont.features2 .features-line {
    top: -5%;
    left: 10%;
    height: auto;
    transform: translateY(0);
    width: 65%;
}

.features-cont.features2 .features-line2 {
    right: -50%;
    height: auto;
    top: 0;
    transform: translateY(0);
}

.features-cont .features-line svg,
.features-cont .features-line2 svg {
    width: 100%;
    height: 100%;
}

.features-cont.features2 .img-box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 3.0rem 3.0rem 3.0rem 0;
    background-color: #ffffffd1;
}

.features-cont.features2 .img-box ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: calc(50% - 1.875rem);
    margin-bottom: 22.5rem;
}

.features-cont.features2 .img-box ul li:nth-child(3),
.features-cont.features2 .img-box ul li:nth-child(4)
{
    margin-bottom: 0;
}
.features-cont.features2 .img-box ul li div{
    padding-bottom: 6.0rem;
    border-bottom: 2px solid #000;
    margin-bottom: 6.0rem;
    width: 100%;
}
.features-cont.features2 .img-box ul li div span{
    display: block;
    width: 90%;
    margin: 0 auto 7.5rem;
}
.features-cont.features2 .img-box ul li div h3{
    display: inline-block;
    font-size: 6.0rem;
    text-align: center;
    width: 100%;
}

.features-cont.features2 .img-box ul li p {
    width: 100%;
    font-size: 4.5rem;
    text-align: center;
}
.features-cont.features2 .img-box ul li p span{
    width: 100%;
    font-size: 3.0rem;
    text-align: center;
    margin-top: 1.5rem;
}
.features2-cont2 {
    margin-bottom: 45.0rem;
}
/* section3 */

.features-cont.features3 .features-line{
    top: 0;
    transform: translateY(0%);
}

.features-cont.features3 .features-line2 {
    top: 0;
    transform: translateY(0%);
    right: 5%;
}

.features-cont.features3 .text-box2 {
    position: relative;
    z-index: 5;
    background-color: #ffffffd1;
    width: 45%;
    padding: 3.0rem;
}

.features-cont.features3 .text-box2 .features3-img{
    width: 50%;
    margin: 0 auto 6.0rem;
}
.features-cont.features3 .text-box2 p {
    text-align: center;
}

.features-cont.features3 .text-box2 p:nth-child(2) {
    font-size: 6.0rem;
}

.features-cont.features3 .text-box2 p:nth-child(3) {
    font-size: 12.0rem;
}

.features-cont.features3 .text-box2 p:nth-child(3) > span{
    border-bottom: 2px solid;
}

.features-cont.features3 .text-box2 p:nth-child(3) span span {
    font-size: 3.0rem;
}

.features-cont.features3 .text-box2 p:nth-child(4) {
    font-size: 4.5rem;
}

.features3-cont2 {
    margin-bottom: 0.0rem;
}

.features3-cont2 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}


.features3-cont2 ul li {
    width: calc(50% - 11.25rem);
    margin-bottom: 22.5rem;
}

.features3-cont2 ul li img{
    width: 100%;
}



/*----------------------------------
9.content8
----------------------------------*/
#flat-lp section#content8 {
    margin-bottom: 45.0rem;
}

.section-title {
    font-size: 6.0rem;
    text-align: center;
    width: max-content;
    margin: 0 auto 22.5rem;
}

.section-title span{
    display: block;
    width: 100%;
    margin: 3.0rem auto 0;
    height: 100%;
}

.section-title span img{
    width: 100%;
    height: 100%;
}


.staff-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.staff-cont li {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-bottom: 22.5rem;
    position: relative;
}


.staff-cont li:last-child {
    margin-bottom: 0;
}

.staff-cont li:nth-child(1) {
    width: 55%;
    align-items: center;
    margin: auto;
    margin-bottom: 22.5rem;
}

.staff-cont li:nth-child(1) .text-box{
    width: 50%;
    height: max-content;
}
.staff-cont li .text-box h3{
    font-weight: normal !important;
}

.staff-cont li:nth-child(1) .text-box h3{
    font-size: 4.5rem;
    text-align: center;
    width: 100%;
}
.staff-cont li:nth-child(1) .text-box p{
    font-size: 4.5rem;
    text-align: center;
    width: 100%;
}

.staff-cont li .svg{
    position: absolute;
}

.staff-cont li:nth-child(1) .svg{
    width: 60%;
    top: -5%;
    left: 0;
}

.staff-cont li:nth-child(2) .svg{
    width: 50%;
    top: 5%;
    left: -10%;
}

.staff-cont li:nth-child(3) .svg{
    width: 70%;
    bottom: -20%;
    right: -25%;
}

.staff-cont li:nth-child(4) .svg{
    width: 60%;
    bottom: -10%;
    right: -46%;
}
.staff-cont li .text-box {
    font-size: 4.5rem;
    width: max-content;
}



.staff-cont li:nth-child(1) .img-box{
    width: 50%;
    height: max-content;
}
#flat-lp .staff-cont li:nth-child(1) .img-box img{
    width: 100%;
    height: 100%;
}

.staff-cont li .img-box {
    display: flex;
    flex-wrap: wrap;
    width: 70%;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}

.staff-cont li .img-box span{
    width: calc(50% - 0.4688rem);
    display: block;
    margin-bottom: 0.9375rem;
}

.staff-cont li:nth-child(2) .text-box,
.staff-cont li:nth-child(3) .text-box,
.staff-cont li:nth-child(4) .text-box{
    position: absolute;
}
.staff-cont li:nth-child(2) .text-box {
    writing-mode: vertical-rl;
    height: max-content;
    top: 25%;
    left: 10%;
}
.staff-cont li:nth-child(3) .text-box{
    bottom: 0;
    right: 0;
}

.staff-cont li:nth-child(4) .text-box{
    bottom: 20%;
    right: -20%;
}

/*-------------------------------------------
10.content9
--------------------------------------------*/

#flat-lp #content9 {
    margin-bottom: 22.5rem;
}

#content9 .photo-list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}


#content9 .photo-list div:nth-child(1){
    width: 50%;
}
#content9 .photo-list .right-cont{
    width: 50%;
    display: flex;
    flex-wrap: wrap;
}

#content9 .photo-list .right-cont div{
    width: 50%;
}

#content6 .map iframe {
    width: 78%;
    max-height: 600px;
    height: 60%;
    margin-left: auto;
    margin-right: 0;
    display: block;
}



/*-------------------------------------------
11.content10
--------------------------------------------*/

#flat-lp #content10 {
    margin-bottom: 22.5rem;
}

#content10 .text-box{
    text-align: center;
    font-size: 4.5rem;
    margin-bottom: 22.5rem;
}

#content10 .section-title {
    margin-bottom: 7.5rem;
}

#content10 .map iframe{
    width: 100%;
    max-height: 600px;
    height: 60%;
}



/*-----------------------------------------------
12.content11
-----------------------------------------------*/

.company-cont {
    display: flex;
    flex-wrap: wrap;
    width: 85%;
    margin: auto;
    justify-content: space-between;
}

.company-cont div{
    width: 45%;
    line-height: 2;
}
.company-cont div p {
    margin-bottom: 4.5rem;
}

.company-cont div h3 {
    margin-bottom: 4.5rem;
    padding-bottom: 4.5rem;
    border-bottom: 2px solid;
    line-height: 1;
}

.company-cont .left-cont ul li {
    display: flex;
    flex-wrap: wrap;
}

.company-cont .left-cont ul li span:nth-child(1) {
    width: 40%;
    display: block;
}

.company-cont .left-cont ul li span:nth-child(2) {
    width: 60%;
    display: block;
}

.company-cont .left-cont ul li.long span{
    width: 100%;
    display: block;
}

.company-cont div.right-cont ul {
    margin-bottom: 4.5rem;
}

.company-cont div h3.bold {
    font-size: 4.5rem;
    margin: 7.5rem auto 4.5rem;
}

.company-cont div.right-cont div.sekou-chiiki {
    margin-bottom: 4.5rem;
    width: 100%;
}
.company-cont .right-cont p {
    margin-bottom: 0;
}

#flat-lp #content11{
    margin-bottom:45.0rem;
}


/*-----------------------------------------------
13.content12
-----------------------------------------------*/
#content12 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

#content12 .left-cont {
    position: inherit;
    width: 35%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
#content12 .left-cont .title{
    width: 60%;
    margin: auto;
    position: relative;
    top: -41.25rem;
}
#content12 .left-cont .svg {
    position: absolute;
    width: 200%;
    top: -67%;
    transform: translateY(-50%);
    left: -50%;
}

#content12 .right-cont {
    display: flex;
    flex-wrap: wrap;
    width: 63%;
    justify-content: space-between;
    margin: 0 0 0 auto;
    align-items: flex-end;
}
#content12 .right-cont .contact-cont {
    width: calc(50% - 1.875rem);
    background-color: #fff;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
#content12 .right-cont .contact-cont h2{
    padding: 3.0rem;
    font-size: 4.5rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
    width: 100%;
    height: max-content;
    text-align: center;
    font-weight: normal !important;
    align-items: flex-end;
}
#content12 .right-cont .contact-cont h2 {
    padding: 3.0rem;
    font-size: 4.5rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
    width: 100%;
    height: max-content;
    text-align: center;
    position: relative;
}
#content12 .right-cont .contact-cont h2::before {
    content: "|";
    background: #fff;
    position: absolute;
    right: 5%;
    display: block;
    bottom: -19%;
    width: 25px;
    transform: rotate(30deg);
    height: 3.75rem;
    font-weight: bold;
}
.contact-main {
    display: flex;
    flex-wrap: wrap;
    margin-top: 12.0rem;
    height: 87%;
}
.left-cont .contact-main {
    display: flex;
    flex-wrap: wrap;
    margin-top: 0;
    height: 87%;
}
.left-cont .contact-box{
    padding:5.25rem;
}
.left-cont .contact-cont {
    z-index: 999;
    background: #fff;
    position: absolute;
    bottom: -342px;
}
#kengaku-button a {
    padding: 3.0rem 0;
}
.contact-box {
    padding: 6.75rem;
    border: 2px solid;
    border-bottom: none;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.contact-box h3 {
    font-size: 4.5rem;
    text-align: right;
    width: 100%;
    position: relative;
}
.contact-box h3::before {
    content: "";
    background-image: url('https://yamashitaya.co.jp/wp-content/themes/kenchikukobo/img/flat/4-border2.png');
    height: 45%;
    width: 69%;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    background-size: contain;
    transform: translateY(-50%);
}
.contact-box h3 span{
    background-color: #fff;
    font-size: 4.5rem;
    padding-left: 3.0rem;
    position: relative;
    z-index: 2;
    font-weight: normal !important;
}

.contact-cont .img-box{
    margin: 6.0rem auto 0;
    position: relative;
    width: 100%;
    height: max-content;
}

.contact-box h4 {
    margin: 4.5rem 0;
    width: 100%;
    height: max-content;
}
.contact-box p{
    height: max-content;
    position: relative;
    top: -1.875rem;
}

.contact-cont.contact1 .img-box::before {
    width: 18.75rem;
    height: 18.75rem;
    display: block;
    bottom: -0.9375rem;
    right: -0.9375rem;
    content: "";
    position: absolute;
    background-image: url("https://yamashitaya.co.jp/wp-content/themes/kenchikukobo/img/flat/contact-point.png");
    background-size: cover;
    background-repeat: no-repeat;
}
.book-btn {
    width: 100%;
    display: flex;
    padding: 1.5rem;
    border: 2px solid;
    align-items: center;
    justify-content: center;
    transition: .25s;
}
.book-btn:hover{
    transition: .25s;
    background: #000;
    color: #fff;
    border: 2px solid #000;
}
.book-btn:hover span:nth-child(2) img:nth-child(1){
    display: none;
}
.book-btn:hover span:nth-child(2) img:nth-child(2){
    display: block;
}
.book-btn span:nth-child(2) img:nth-child(2){
    display: none;
}
.book-btn:hover span{
    transition: .25s;
}
#popup-btn {
    display: none;
}
input[type=checkbox]:checked + .book-btn span:nth-child(2) img:nth-child(1){
    display: none;
}
input[type=checkbox]:checked + .book-btn span:nth-child(2) img:nth-child(2){
    display: block;
}
input[type=checkbox]:checked + .book-btn {
    transition: .25s;
    background: #000;
    color: #fff;
    border: 2px solid #000;
}
.book-btn span:nth-child(1){
    width: auto;
    font-size: 3.375rem;
    display: block;
}
.book-btn span:nth-child(2) {
    width: 7%;
    display: block;
    height: max-content;
    display: flex;
    margin-left: 5%;
}
#contact-form td.full-width {
    width: 100%;
    white-space: nowrap;
    margin-top: 3.0rem;
}
.contact2 .img-box{
    margin: 6.0rem auto 6.0rem;
    width: 90%;
}
#content12 .contact-cont button.btn {
    text-align: center;
    width: 100%;
    border: 2px solid #000;
    position: relative;
    height: 10%;
}
#content12 .contact-cont .contact-main .btn a{
    font-size: 4.5rem;
    height: 100%;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 3.75rem 0;
}
#content12 .contact-cont .contact-main:hover .btn a {
    color: #fff;
    background-color: #000;
    text-decoration: none;
    transition: .25s;
}
#content12 .left-cont .contact-cont .btn a {
    padding: 18px;
}

#wpcf7-f5796-o1 form table tr,
#wpcf7-f5796-o1 form table input,
#wpcf7-f5796-o1 form table textarea,
#wpcf7-f5796-o1 form .submit_area input{
    font-family: YuMincho, 'Yu Mincho', serif !important;
}
.wpcf7-form-control-wrap.checkbox-501 input {
    width: max-content !important;
    font-family: YuMincho, 'Yu Mincho', serif !important;
    display: inline-block;
}
.wpcf7-form-control-wrap.checkbox-501 .wpcf7-list-item-label{
    font-size: 3.375rem;
    margin-left: 5%;
    font-weight: normal !important;
}
#contact-form .title h2 {
    font-size: 6.0rem;
    line-height: 1.7;
    margin-bottom: 4.5rem;
    font-weight: normal;
}

#contact-form .title{
    margin-bottom: 7.5rem;
    position: relative;
}
.contact-book {
    position: absolute;
    bottom: -20%;
    right: 0;
    width: 40%;
}
.raiten-book {
    position: absolute;
    bottom: -10%;
    right: 10px;
    width: 35%;
}
#contact-form .inner {
    width: 760px;
}

#contact-form th {
    width: 40%;
}
#contact-form td {
    width: 60%;
    display: flex;
    justify-content: space-between;
}
.wpcf7-form-control-wrap.your-name,
.wpcf7-form-control-wrap.your-name2,
.wpcf7-form-control-wrap.your-kana,
.wpcf7-form-control-wrap.your-kana2 {
    width: 48%;
    display: block;
}

th label .required {
    color: #E46379;
    font-size: 2.25rem;
    padding: 0.375rem 1.875rem;
    margin-left: 1.875rem;
    border-radius: 3.75rem;
    border: 2px solid #E46379;
}

#contact-form th label {
    font-size: 4.5rem;
    display: inline-block;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-weight: normal;
}
#contact-form tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 7.5rem;
}

#contact-form td input{
    width: 100%;
    border: none;
    padding-bottom: 1.5rem;
    border-bottom: 2px solid #000;
    font-size: 3.375rem;
}

#contact-form td textarea{
    width: 100%;
    border-radius: 0;
    border: none;
    padding-bottom: 1.5rem;
    font-size: 3.375rem;
    border-bottom: 2px solid #000;
}

.check_group {
    width: max-content;
    text-align: center;
    margin: 0 auto 3.75rem;
    padding: 1.5rem 3.0rem;
    font-size: 4.5rem;
    padding: 3.0rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
    display: block;
    display: flex;
    align-items: center;
}
.privacy.for-pc {
    text-align: center;
    margin: 0 auto 11.25rem;
    font-size: 4.5rem;
}
.privacy.for-pc a{
    text-decoration: none;
    border-bottom: 2px solid;
}
.check_group .required{
    font-size: 3.0rem;
    border: 2px solid #E46379;
    color: #E46379;
    border-radius: 11.25rem;
    padding: 0.1875rem 2.8125rem;
    margin-right: 3.0rem;
}
.wpcf7-list-item.first.last {
    display: flex;
    align-items: center;
    margin-left: auto;
}
.check_group > span {
    width: max-content;
    display: inline-block;
}
.submit_area{
    width: 40%;
    margin: auto;
    border: 2px solid #000;
    position: relative;
}

input.wpcf7-form-control.wpcf7-submit {
    font-size: 6.0rem;
    background-color: transparent;
    border: none;
    padding: 13.125rem 0 1.875rem;
    width: 100%;
    display: block;
    position: relative;
    z-index: 100;
}
.submit_area .mail-icon{
    position: absolute;
    margin: auto;
    top: 3.0rem;
    left: 50%;
    transform: translateX(-50%);
    width: 20%;
    height:auto;
    background-size: cover;
    background-image: url("https://yamashitaya.co.jp/wp-content/themes/kenchikukobo/img/flat/mail-icon.png");
}
.submit_area .svg {
    position: absolute;
    width: 15%;
    height: auto;
    z-index: 5;
    display: block;
    stroke: #000;
}

.submit_area svg {
    position: absolute;
    fill: #000;
    stroke: #000;
    width: 15%;
}
.submit_area svg:nth-child(1) {
    top:-30%;
    left: -5%;
    stroke-dasharray:283.2900390625px;
    animation: line-stroke3-out 1s ease-out ;
}
.submit_area svg:nth-child(2) {
    bottom: -30%;
    right: -5%;
    stroke-dasharray: 283.2900390625px;
    animation: line-stroke4-out 1s ease-out ;
}

.submit_area:hover svg:nth-child(2){
    opacity: 1;
    -webkit-animation: line-stroke3 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s both;
    animation: line-stroke3 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s both;
}

.submit_area:hover svg:nth-child(1) {
    -webkit-animation: line-stroke4 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s both;
    animation: line-stroke4 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s both;
}

#flat-lp #contact-form {
    overflow: initial;
}

.features-cont .text-box h3 span span {
    position: relative;
    overflow: hidden;
    border-bottom: 2px solid;
}

.features-cont .text-box h3 span span::before {
    position: absolute;
    bottom: 0;
    display: block;
    height: 2px;
    left: 0;
    content: "";
    width: 100%;
}

.features-cont.inview-cont.fadeIn .text-box h3 span span::before {
    animation: under-line 1s ease;
}
section.bottom-logo div{
    width: 30%;
    margin: auto;
    max-width: 300px;
}
#flat-lp section#contact-form {
    margin-bottom: 30.0rem;
}
.accordion h2{
    font-size: 4.5rem;
    margin-bottom: 3.0rem;
}
.accordion p{
    font-size: 3.0rem;
    margin-bottom: 4.5rem;
}
#flat-lp section.bottom-logo {
    margin-bottom: 9.375rem;
}

#flat-lp button{
    padding: 0 !important;
    background-color: transparent;
    font-family: inherit !important;
}

.contact-kengaku {
    position: absolute;
    bottom: -5%;
    right: 1%;
    width: 50%;
}

/*popup*/
.book-btn2 #popup {
    display: none;
}
.book-btn2 input[type="checkbox"]:checked + #popup .overlay{
    display: block;
    z-index: 9999;
    background-color: #00000070;

    width: 100%;
    height: 100vh;
    top: 50%;
    left: 50%;
    position: fixed;
    transform: translate(-50%,-50%);
}
.box ul{
    width: 50%;
    max-width: 800px;
    height: 90vh;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-color: #fff;
    padding: 11.25rem;
    overflow-y: scroll;
}
.box ul::before {
    width: 50px;
    height: 50px;
    content: "×";
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    background-color: #000;
    color: #fff;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.box ul li{
    width: 100%;
    filter: drop-shadow(2px 2px 2px #ccc);
    margin: 0 auto 9.375rem;
    text-align: center;
}
.pdf-link a {
    width: 40%;
    padding: 2.8125rem 7.5rem;
    background-color: #000;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
}
.box ul li:last-child {
    margin-bottom: 0;
}
img{
    width:100%;
}
.book-btn label{
    display:block;
}
.book-btn label span:hover{
    cursor:pointer;
}
.book-btn input[type="checkbox"]{
    display:none;
}

.book-btn2 input[type="checkbox"]:checked + #popup{
    display:block;
    transition:.2s;
}

/*-----------------------------------
1.共通パーツ
------------------------------------*/
__HTML_BODY_BLOCK_2__
.for-sp{
    display: none;
}
__HTML_BODY_BLOCK_3__
div#container{
    width: 1400px;
    margin: auto;
}
#flat-lp .inner{
    width: 1200px;
    margin: auto;
    position: relative;
}

#flat-lp section {
    margin-left: auto;
    margin-right: auto;
}
#flat-lp{
    font-family :
            YuMincho,    /* Mac用 */
            'Yu Mincho', /* Windows用 */
            serif;
}
#flat-lp  div img{
    width: 100%;
    height: auto;
}




/*-----------------------------------
2.content1
------------------------------------*/
#flat-lp #content1{
    margin-bottom: 45.0rem;
    position: relative;
}

#content1 .inner .fv-cont{
    position: relative;
    height: 100%;
    padding: 40px 0 120px;
}



#content1 .inner .fv-cont div {
    position: absolute;
}


#content1 .inner .fv-cont div:nth-child(1) {
    bottom: 15%;
    left: 10%;
    width: 20%;
    height: auto;
    z-index: 10;
}

#content1 .inner .fv-cont div:nth-child(1) svg {
    width: 100%;
    height: auto;
}

#content1 .inner .fv-cont div:nth-child(2) {
    width: 80%;
}

#fv-border {
    bottom: -5%;
    width: 100%;
    position: absolute;
    z-index: 10;
    left: -14%;
    height: 100%;
}

#fv-border svg {
    height: 100%;
    width: 100%;
}

.fv-cont div:nth-child(2) {
    position: absolute;
    right: 0;
    top: 3%;
    z-index: 2;
}

#content1 .inner .fv-cont span {
    margin: 0 0 0 auto;
    display: block;
    width: 70%;

}

.fv-cont div:nth-child(3) {
    left: 5%;
    width: 12%;
}




/*-----------------------------------
3.content2
------------------------------------*/
.photo-cont {
    position: relative;
    height: 100%;
    display: block;
    margin-bottom: 90.0rem;
}

.photo-cont div{
    position: absolute;
    z-index: 10;
    height: 100%;
}

.photo-cont div.line img{
    height: 100%;
}

.photo-cont span:nth-child(2){
    position: relative;
    width: 75%;
}

.photo-cont:nth-child(2n) span:nth-child(2){
    margin: 0 0 0 auto;
}

.photo-cont span {
    display: block;
}

.photo-cont span img {
    width: 100%;
    height: auto;
}

.photo-cont1 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    z-index: 2;
    bottom: -10%;
    right: 15%;
}

.photo-cont.photo-cont1 div.line {

    text-align: right;
    height: max-content;
    right: 5%;
    top: 18.75rem;
    width: 20%;
}


.photo-cont2 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    top: 0;
    left: 5%;
}

.photo-cont.photo-cont2 div.line {
    left: 0;
    top: -30%;
    width: 60%;
    text-align: right;
    height: max-content;
    z-index: 1;

}

.photo-cont.photo-cont2 div.line img{
    width: 100%;
    height: auto;
}

.photo-cont2 span:nth-child(2){
    z-index: 2;
}


.photo-cont3 span:nth-child(3) {
    position: absolute;
    width: 140px;
    height: max-content;
    z-index: 2;
    top: -20%;
    right: 15%;
}

.photo-cont.photo-cont3 div.line {
    left: 60%;
    top: -55%;
    width: 75%;
    text-align: right;
    height: max-content;
    z-index: 1;
}

.photo-cont.photo-cont3 div.line img{
    width: 100%;
    height: auto;
}

.photo-cont3 span:nth-child(2){
    z-index: 2;
}



.photo-cont4 span:nth-child(3) {
    position: absolute;
    width: 240px;
    height: max-content;
    z-index: 2;
    top: -10%;
    left: 5%;
}

.photo-cont4 span:nth-child(2){
    z-index: 2;
}

.photo-last-text {
    position: relative;
}

.photo-last-border {
    width: 55%;
    margin: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -15%;
}

.photo-last-border svg{
    width: 100%;
}

.photo-last-text .text {
    position: relative;
    font-size: 7.5rem;
    writing-mode: vertical-rl;
    display: block;
    left: 50%;
    transform: translateX(-50%);

}

.photo-last-text .text span{
    display: inline-flex;
    padding-right: -0.375rem;
    position: relative;
    overflow: hidden;
    height: max-content;
}


.photo-last-text .text span::before{
    content:"";
    position: absolute;
    right: 0;
    width: 2px;
    height: 100%;
    background-color: #000;
}

.photo-cont span:nth-child(3).fadeIn{
    transition-delay: .5s !important;
}

.features-cont.features3 .text-box2 p:nth-child(2){
    font-size: 5.625rem;
}
/*-----------------------------------
4.content3
------------------------------------*/

#content3 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#content3 .inner .what-img{
    width: calc(25% - 1.875rem);
}


#content3 .inner .what-text{
    width: calc(67% - 1.875rem);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#content3 .inner .what-text p{
    width: calc(50% - 1.875rem);
}


/*-----------------------------------
5.content4
------------------------------------*/
.works-title{
    position: relative;
}

.works-title .works-logo {
    width: 25%;
    position: absolute;
    left: 0;
    top: 42%;
    transform: translateY(-50%);
}

.works-title .line {
    width: 110%;
    left: 0;
}

.works-cont{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 60.0rem;
}

.works-cont .text-box img {
    top: 70px;
    right: 0;
}

.works-cont .img-box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 80%;
}

.works-cont .img-box span{
    display: block;
}

.works-cont.works1 .img-box span:nth-child(1),
.works-cont.works1 .img-box span:nth-child(2),
.works-cont.works2 .img-box span:nth-child(1),
.works-cont.works2 .img-box span:nth-child(2){
    width: 100%;
    margin-bottom: 1.875rem;
}

.works-cont.works1 .img-box span:nth-child(3),
.works-cont.works1 .img-box span:nth-child(4),
.works-cont.works1 .img-box span:nth-child(5),
.works-cont.works2 .img-box span:nth-child(3),
.works-cont.works2 .img-box span:nth-child(4),
.works-cont.works2 .img-box span:nth-child(5){
    width: calc((100% / 3) - 0.9375rem);
}


.works-cont.works3 .img-box span:nth-child(1),
.works-cont.works4 .img-box span:nth-child(1){
    width: 100%;
    margin-bottom: 1.875rem;
}


.works-cont.works3 .img-box span:nth-child(2),
.works-cont.works3 .img-box span:nth-child(3),
.works-cont.works3 .img-box span:nth-child(4),
.works-cont.works3 .img-box span:nth-child(5),
.works-cont.works4 .img-box span:nth-child(2),
.works-cont.works4 .img-box span:nth-child(3),
.works-cont.works4 .img-box span:nth-child(4),
.works-cont.works4 .img-box span:nth-child(5){
    width: calc((100% / 2) - 0.9375rem);

    margin-bottom: 1.875rem;
}


/*-----------------------------------
6.content5
------------------------------------*/

.recomend-cont.recomend1,
.recomend-cont.recomend2 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 45.0rem;
}

.recomend-cont.recomend3 {
    position: relative;
}

.recomend1{
    align-items: flex-end;
}

.recomend2{
    align-items: flex-start;
}

.recomend-title {
    width: 100%;
    margin: 0 auto 45.0rem;
}

.recomend-cont.recomend1 .text-box,
.recomend-cont.recomend2 .text-box {
    width: 30%;
    height: max-content;
}

.recomend-cont.recomend3 .text-box{
    width: 70%;
    height: max-content;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 4.5rem;
}

.recomend-cont.recomend3 .text-box h3{
    width: 50%;
}

.recomend-cont.recomend3 .text-box p{
    width: 46%
}

.recomend-cont.recomend1 .img-box{
    width: 60%;
    padding-bottom: 15.0rem;
}
.recomend-cont.recomend2 .img-box{
    width: 65%;
    padding-top: 15.0rem;
}

.recomend-cont.recomend3 .img-box{
    width: 970px;

    margin: 0 0 0 auto;
}

/*-----------------------------------
7.content6
------------------------------------*/
.features-title {
    width: 100%;
    margin: 0 auto 45.0rem;

}

.features-logo {
    width: 370px;
    margin-left: 0 auto 13.5rem;
}

.features-lineup p span:nth-child(2)::before {
    content: "";
    height: 2px;
    width: 100%;
    background-color: #000;
    display: block;
    position: absolute;
    bottom: 0;
}

.features-lineup p:nth-child(1) span:nth-child(1) {
    width: 17px;
    margin-bottom: 3.0rem;
}

.features-lineup p:nth-child(2) span:nth-child(1) {
    width: 30px;
    margin-bottom: 3.0rem;
}

.features-lineup p:nth-child(3) span:nth-child(1) {
    width: 30px;
    margin-bottom: 3.0rem;
}


.features-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    margin: 0 0 45.0rem auto;
    position: relative;
}
.features-cont.features1 .img-box,
.features-cont.features3 .img-box{
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 5;
}

.features-cont.features1 .text-box,
.features-cont.features3 .text-box {
    width: 45%;
    text-align: center;
}
.features-cont .text-box h3 span:nth-child(1) {
    display: inline-block;
    width: 16%;
    margin: 0 auto 6.0rem;
}



.features-cont .text-box h3 > span:nth-child(2) {
    display: inline-block;
    font-size: 6.0rem;
    line-height: 2;
    width: 100%;
}
.features-cont .img-box span {
    display: inline-block;
}
.features-cont.features1 .img-box span:nth-child(1),
.features-cont.features1 .img-box span:nth-child(4) {
    width: 100%;
    margin-bottom: 3.75rem;
}
.features-cont.features1 .img-box span:nth-child(2),
.features-cont.features1 .img-box span:nth-child(3) {
    width: calc(50% - 1.875rem);
    margin-bottom: 4.5rem;
}

.features-cont .features-line {
    position: absolute;
    z-index: 1;
    top: 40%;
    transform: translateY(-50%);
    left: -40%;
    width: 50%;
    height: auto;
}
.features-cont .features-line2 {
    position: absolute;
    z-index: 1;
    top: 30%;
    transform: translateY(-50%);
    right: 5%;
    width: 40%;
    height: auto;
}



/* features2 */

.features-cont.features2 .text-box h3 span:nth-child(1),
.features-cont.features3 .text-box h3 span:nth-child(1) {
    width: 28%;
}


.features-cont.features2{

    margin: 0 auto 45.0rem 0;
}
.features-cont.features2 .text-box {
    width: 35%;
    text-align: center;
    padding-top: 10%;
}

.features-cont.features2 .features-line {
    top: -5%;
    left: 10%;
    height: auto;
    transform: translateY(0);
    width: 65%;
}

.features-cont.features2 .features-line2 {
    right: -50%;
    height: auto;
    top: 0;
    transform: translateY(0);
}

.features-cont .features-line svg,
.features-cont .features-line2 svg {
    width: 100%;
    height: 100%;
}
.features2-cont2 {
    margin-bottom: 45.0rem;
}
/* section3 */


.features-cont.features3 .features-line2 {
    top: 0;
    transform: translateY(0%);
    right: -25%;
    width: 50%;
}

.features-cont.features3 .text-box2 {
    position: relative;
    z-index: 5;
    background-color: #ffffffd1;
    width: 40%;
    padding: 3.0rem;
}

.features-cont.features3 .text-box2 .features3-img{
    width: 45%;
    margin: 0 auto 6.0rem;
}
.features-cont.features3 .text-box2 p {
    text-align: center;
}

.features-cont.features3 .text-box2 p:nth-child(3) {
    font-size: 12.0rem;
}

.features-cont.features3 .text-box2 p:nth-child(3) span span {
    font-size: 3.0rem;
}

.features-cont.features3 .text-box2 p:nth-child(4) {
    font-size: 4.5rem;
}


.features3-cont2 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}


.features3-cont2 ul li {
    width: calc(50% - 11.25rem);
    margin-bottom: 22.5rem;
}

.features3-cont2 ul li img{
    width: 100%;
}



/*----------------------------------
9.content8
----------------------------------*/
#flat-lp section#content8 {
    margin-bottom: 45.0rem;
}

.section-title {
    font-size: 6.0rem;
    text-align: center;
    width: max-content;
    margin: 0 auto 22.5rem;
}

.section-title span{
    display: block;
    width: 100%;
    margin: 3.0rem auto 0;
    height: 100%;
}

.section-title span img{
    width: 100%;
    height: 100%;
}


.staff-cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.staff-cont li {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-bottom: 22.5rem;
    position: relative;
}


.staff-cont li:last-child {
    margin-bottom: 0;
}

.staff-cont li:nth-child(1) {
    width: 55%;
    align-items: center;
    margin: auto;
    margin-bottom: 22.5rem;
}

.staff-cont li:nth-child(1) .text-box{
    width: 50%;
    height: max-content;
}

.staff-cont li:nth-child(1) .text-box h3{
    font-size: 4.5rem;
    text-align: center;
    width: 100%;
}
.staff-cont li:nth-child(1) .text-box p{
    font-size: 4.5rem;
    text-align: center;
    width: 100%;
}

.staff-cont li .svg{
    position: absolute;
}

.staff-cont li:nth-child(1) .svg{
    width: 60%;
    top: -5%;
    left: 0;
}

.staff-cont li:nth-child(2) .svg{
    width: 50%;
    top: 5%;
    left: -10%;
}

.staff-cont li:nth-child(3) .svg{
    width: 70%;
    bottom: -20%;
    right: -25%;
}

.staff-cont li:nth-child(4) .svg{
    width: 60%;
    bottom: -10%;
    right: -46%;
}
.staff-cont li .text-box {
    font-size: 4.5rem;
    width: max-content;
}



.staff-cont li:nth-child(1) .img-box{
    width: 50%;
}

.staff-cont li .img-box {
    display: flex;
    flex-wrap: wrap;
    width: 70%;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}

.staff-cont li .img-box span{
    width: calc(50% - 0.4688rem);
    display: block;
    margin-bottom: 0.9375rem;
}

.staff-cont li:nth-child(2) .text-box,
.staff-cont li:nth-child(3) .text-box,
.staff-cont li:nth-child(4) .text-box{
    position: absolute;
}
.staff-cont li:nth-child(2) .text-box {
    writing-mode: vertical-rl;
    height: max-content;
    top: 25%;
    left: 10%;
}
.staff-cont li:nth-child(3) .text-box{
    bottom: 0;
    right: 0;
}

.staff-cont li:nth-child(4) .text-box{
    bottom: 20%;
    right: -20%;
}

/*-------------------------------------------
10.content9
--------------------------------------------*/
#content9 .photo-list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}


#content9 .photo-list div:nth-child(1){
    width: 50%;
}
#content9 .photo-list .right-cont{
    width: 50%;
    display: flex;
    flex-wrap: wrap;
}

#content9 .photo-list .right-cont div{
    width: 50%;
}



/*-------------------------------------------
11.content10
--------------------------------------------*/

#flat-lp #content10 {
    margin-bottom: 22.5rem;
}

#content10 .text-box{
    text-align: center;
    font-size: 4.5rem;
    margin-bottom: 22.5rem;
}

#content10 .section-title {
    margin-bottom: 7.5rem;
}

#content10 .map iframe{
    width: 100%;
    max-height: 600px;
    height: 60%;
}


/*-----------------------------------------------
12.content11
-----------------------------------------------*/

.company-cont {
    display: flex;
    flex-wrap: wrap;
    width: 85%;
    margin: auto;
    justify-content: space-between;
}

.company-cont div{
    width: 45%;
    line-height: 2;
}
.company-cont div p {
    margin-bottom: 4.5rem;
}

.company-cont div h3 {
    margin-bottom: 4.5rem;
    padding-bottom: 4.5rem;
    border-bottom: 2px solid;
    line-height: 1;
}

.company-cont .left-cont ul li {
    display: flex;
    flex-wrap: wrap;
}

.company-cont .left-cont ul li span:nth-child(1) {
    width: 40%;
    display: block;
}

.company-cont .left-cont ul li span:nth-child(2) {
    width: 60%;
    display: block;
}

.company-cont .left-cont ul li.long span{
    width: 100%;
    display: block;
}

.company-cont div h3.bold {
    font-size: 4.5rem;
    margin: 7.5rem auto 4.5rem;
}

.company-cont div.right-cont div.sekou-chiiki {
    margin-bottom: 4.5rem;
    width: 100%;
}
.company-cont .right-cont p {
    margin-bottom: 0;
}

#flat-lp #content11{
    margin-bottom:45.0rem;
}


/*-----------------------------------------------
13.content12
-----------------------------------------------*/
#content12 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

#content12 .right-cont .contact-cont h2{
    padding: 3.0rem;
    font-size: 4.5rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
    width: 100%;
    height: max-content;
    text-align: center;
}
#content12 .right-cont .contact-cont h2 {
    padding: 3.0rem;
    font-size: 4.5rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
    width: 100%;
    height: max-content;
    text-align: center;
    position: relative;
}
#content12 .right-cont .contact-cont h2::before {
    content: "|";
    background: #fff;
    position: absolute;
    right: 5%;
    display: block;
    bottom: -19%;
    width: 25px;
    transform: rotate(30deg);
    height: 3.75rem;
    font-weight: bold;
}

#content12 .contact-cont .btn:hover {
    color: #fff;
    background-color: #000;
    border: 2px solid #000;
    transition: .25s;
}

#content12 .contact-cont .contact-main .btn a{
    font-size: 16px;
}

#contact-form .title{
    margin-bottom: 7.5rem;
    position: relative;
}
#contact-form .inner {
    width: 760px;
}

#contact-form th {
    width: 40%;
}

th label .required {
    color: #E46379;
    font-size: 2.25rem;
    padding: 0.375rem 1.875rem;
    margin-left: 1.875rem;
    border-radius: 3.75rem;
    border: 2px solid #E46379;
}

#contact-form th label {
    font-size: 4.5rem;
    display: inline-block;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#contact-form tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 7.5rem;
}



.check_group {
    width: max-content;
    margin: 0 auto 3.75rem;
    font-size: 4.5rem;
    padding: 3.0rem;
    border: 2px solid #000;
    border-radius: 1.875rem;
}
.privacy.for-pc{
    margin: 0 auto 11.25rem;
}
.wpcf7-list-item.first.last {
    display: flex;
    align-items: center;
}
.check_group > span {
    width: max-content;
    display: inline-block;
}
.submit_area{
    width: 40%;
    margin: auto;
    border: 2px solid #000;
    position: relative;
}

.submit_area .mail-icon{
    position: absolute;
    margin: auto;
    top: 3.0rem;
    left: 50%;
    transform: translateX(-50%);
    width: 20%;
    height:auto;
    background-size: cover;
    background-image: url("https://yamashitaya.co.jp/wp-content/themes/kenchikukobo/img/flat/mail-icon.png");
}
.submit_area .svg {
    position: absolute;
    width: 15%;
    height: auto;
    z-index: 5;
    display: block;
    stroke: #000;
}
.submit_area:hover .svg1 {
    left: -5%;
    top: -5%;
}
.submit_area:hover .svg2{
    bottom: -5%;
    right: -5%;
}
.submit_area .mail-icon{
    width: 11.25rem;
}


/*-----------------------------------
1.共通パーツ
------------------------------------*/

div#container{
    width: 100%;
    overflow: hidden;
}
.for-pc{
    display: none;
}
.for-sp{
    display: block;
}
__HTML_BODY_BLOCK_4__
.contact-main{
    margin-top: 0;
}
__HTML_BODY_BLOCK_5__
body::before {
    background: none !important;
}
#flat-lp .inner{
    width: 100% !important;
    margin: auto;
    position: relative;
}
#flat-lp section{
    width: 100%;
    margin-bottom: 5.625rem;
    overflow: inherit;
}
#flat-lp {
    font-family: YuMincho, 'Yu Mincho', serif !important;
    width: 100%;
    overflow: hidden;
    background: #fff;
    line-height: 2;
}
#flat-lp  div img{
    width: 100%;
    height: auto;
}
#flat-lp p {
    font-size: 1.125rem;
}
#flat-lp p strong {
	font-weight: 600;
}
#content12 .contact-cont .contact-main .btn a {
    font-size: 16px;
    padding: 0.9375rem 0;
}
#flat-lp #content1{
    width: 100%;
}

#content1 .inner .fv-cont{
    padding: 0;
}

#content1 .inner .fv-cont span{
    width: 100%;
}

.fv-cont div:nth-child(2){
    width: 130%;
}

#content1 .inner .fv-cont div:nth-child(1) {
    top: 50%;
    right: 10%;
    width: 20%;
    left: auto;
}
#content1 .inner .fv-cont span.fadeIn{
    height: 100vh;
}
#content1 .inner .fv-cont span.fadeIn img{
    object-fit: cover;
    height: 100vh;
}

#flat-lp #content1 {
    margin-bottom: 7.5rem;
}

.fv-cont div:nth-child(3) {
    top: 22%;
    left: 23%;
    z-index: 10;
    width: 25%;
}
#content1 .inner .fv-cont div:nth-child(2) {
    right: 10%;
    top: 45%;
    z-index: 2;
    transform: translateY(-50%);
    width: 120%;
}

/*------------------------------------------
3.content2
------------------------------------------*/
.photo-cont span:nth-child(2){
    width: 80%;
}
.photo-cont1 span:nth-child(3){
    width: 20%;
    bottom: -60%;
}

.photo-cont.photo-cont1 div.line{
    right: 0;
    top: 10%;
    width: 30%;
    display: block;
}
.line.svg.inview-cont.fadeIn.stroke svg {
    width: 100%;
    height: auto;
}
.photo-cont{
    margin-bottom: 18.75rem;
}


.photo-cont2 span:nth-child(3) {
    position: absolute;
    height: max-content;
    top: none;
    left: 5%;
    width: 20%;
    bottom: -50%;
    z-index: 10;
}

.photo-cont3 span:nth-child(3) {
    width: 20%;
    top: 20%;
    right: 15%;
}

.photo-cont4 span:nth-child(3) {
    position: absolute;
    width: 30%;
    height: max-content;
    z-index: 2;
    top: 0;
    left: 30%;
}

.photo-cont.photo-cont4 {
    padding-top: 13.125rem;
    margin-bottom: 0;
}

.photo-cont.photo-cont4 div.line {
    top: 20%;
    width: 70%;
    z-index: 1;
}
.photo-cont.photo-cont4 span:nth-child(2){
    position: relative;
    z-index: 2;
}
.photo-last-text {
    position: relative;
    padding: 18.75rem 0;
}

.photo-last-text .text {
    font-size: 2.25rem;
    line-height: 1.8;
    white-space: nowrap;

}
.photo-last-text .text span::before{
    width: 2px;
}

.photo-last-border {
    width: 85%;
    margin: auto;
    left: auto;
    transform: translateY(-50%);
    right: 0;
    top: 55%;
}


#content3 .inner {
    width: 90%;
}

#content3 .inner .what-img {
    width: 100%;
}

#content3 .inner .what-text {
    width: 100%;
    font-size: 1.875rem;
    font-size: 1.4062rem;
}

#content3 .inner .what-text p{
    width: 100%;
}

.what-img {
    margin-bottom: 5.625rem;
}

#flat-lp section#content4{
    overflow: initial !important;
    margin-bottom: 15.0rem;
}
#flat-lp section#content3 {
    width: 80%;
    margin: 0 auto 18.75rem;
}

.works-title {
    position: relative;
    width: 90%;
	aspect-ratio: 1;
    margin: auto;
    border: 2px solid #000;
    left: -1%;
    z-index: 3;
    top: -1%;
}
.works-title::before {
    position: absolute;
    content: "";
    display: block;
    z-index: 1;
    width: 100%;
	aspect-ratio: 1;
    border: 2px dotted;
    top: 2%;
    left: 2%;
}
.works-title::after {
    position: absolute;
    content: "";
    display: block;
    z-index: 2;
    width: calc(100% - 4px);
	aspect-ratio: 1;
    background-color: #fff;
    top: 0;
    left: 0;
}
.works-title .line {
    width: 130%;
    left: -15%;
    position: absolute;
    top: -10%;
    z-index: 5;
}
.works-title .works-logo {
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 5;
}

.works-cont {
    margin-top: 15.0rem;
    position: relative;
}
.works-cont:nth-child(1) {
    margin-top: 9.375rem;
    position: relative;
}

.works-cont .img-box{
    width: 100%;
}
.works-cont .text-box img {
    top: 0;
    right: 0;
}
.works-cont.works1 .img-box span {
    margin-bottom: 3.75rem;
}

.works-cont.works1 .img-box span:nth-child(1),
.works-cont.works1 .img-box span:nth-child(2),
.works-cont.works2 .img-box span:nth-child(1),
.works-cont.works2 .img-box span:nth-child(2),
.works-cont.works3 .img-box span:nth-child(1),
.works-cont.works4 .img-box span:nth-child(1) {
    margin-bottom: 3.75rem;
}

.works-cont.works1 .img-box span:nth-child(2) {
    width: 80%;
    margin-left: 0;
    margin-right: auto;
}
.works-cont.works1 .img-box span:nth-child(3) {
    width: 80%;
    margin-right: 0;
    margin-left: auto;
}
.works-cont.works1 .img-box span:nth-child(4) {
    width: 80%;
    margin-left: 0;
    margin-right: auto;
}
.works-cont.works1 .img-box span:nth-child(5) {
    width: 80%;
    margin-right: 0;
    margin-left: auto;
}

.works-cont.works2 .img-box span:nth-child(2) {
    width: 75%;
    margin-right: 0;
    margin-left: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works2 .img-box span:nth-child(3) {
    width: 90%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works2 .img-box span:nth-child(4) {
    width: 75%;
    margin-right: 0;
    margin-left: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works2 .img-box span:nth-child(5) {
    width: 80%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}

.works-cont.works3 .img-box span:nth-child(2) {
    width: 75%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works3 .img-box span:nth-child(3) {
    width: 90%;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 3.75rem;
}
.works-cont.works3 .img-box span:nth-child(4) {
    width: 75%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works3 .img-box span:nth-child(5) {
    width: 80%;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 3.75rem;
}

.works-cont.works4 .img-box span:nth-child(2) {
    width: 75%;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 3.75rem;
}
.works-cont.works4 .img-box span:nth-child(3) {
    width: 90%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}
.works-cont.works4 .img-box span:nth-child(4) {
    width: 75%;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 3.75rem;
}
.works-cont.works4 .img-box span:nth-child(5) {
    width: 80%;
    margin-left: 0;
    margin-right: auto;
    margin-bottom: 3.75rem;
}

.works-cont .text-box {
    position: absolute;
    top: 10%;
    z-index: 20;
}

.works1 .text-box {
    width: 20%;
    top: 15%;
    right: 0%;
}

.works2 .text-box {
    width: 15%;
    top: 14%;
    left: 5%;
    right: auto;
}

.works3 .text-box {
    width: 15%;
    top: 20%;
    right: 5%;
}

.works4 .text-box {
    width: 20%;
    top: 15%;
    left: 0;
}


.recomend-title {
    width: 100%;
    margin: 0 auto 9.375rem;
}

.recomend-cont.recomend1, .recomend-cont.recomend2 {
    flex-wrap: wrap;
    margin-bottom: 9.375rem;
}

.recomend-cont.recomend1 .text-box, .recomend-cont.recomend2 .text-box {
    width: 100%;
    height: max-content;
}

.recomend-cont.recomend1 .img-box {
    width: 100%;
    padding-bottom: 1.875rem;
    order: 1;
}

.recomend-cont.recomend1 .text-box, .recomend-cont.recomend2 .text-box,.recomend-cont.recomend3 .text-box
{
    width: 100%;
    height: max-content;
    order: 2;
}

.recomend-cont.recomend1 h3.for-sp,
.recomend-cont.recomend2 h3.for-sp,
.recomend-cont.recomend3 h3.for-sp {
    font-size: 2.25rem;
    margin-bottom: 4.5rem;
    width: 100%;
    text-align: center;
    font-weight: normal;
}

.recomend-cont.recomend3 .text-box p{
    width: 100%;
}
.recomend-cont.recomend2 .img-box,
.recomend-cont.recomend3 .img-box {
    width: 100%;
}


.recomend-cont.recomend2 .img-box {
    width: 100%;
    padding-top: 0;
    margin-bottom: 1.875rem;
}

#content5 .inner {
    width: 85% !important;
}

.recomend-cont.recomend3 {
    display: flex;
    flex-wrap: wrap;
}
.recomend-cont .text-box p span{
    border-bottom: 1px solid;
}


.features-lineup p span{
    font-size: 1.875rem;
    margin-bottom: 5.625rem;
}

.features-lineup p:nth-child(1) span:nth-child(1) {
    width: 4%;
    margin-bottom: 1.875rem;
}
.features-lineup p:nth-child(2) span:nth-child(1),
.features-lineup p:nth-child(3) span:nth-child(1)  {
    width: 6%;
    margin-bottom: 1.875rem;
}

.features-logo {
    width: 50%;
    margin: 0 auto 5.625rem;
}

.section-title.inview-cont.fadeIn span ,
.section-title.inview-cont.fadeIn {
    line-height: 1;
}
.features-title {
    width: 100%;
    margin: 0 auto 9.375rem;
}


.features-cont{
    width: 100%;
    margin-bottom: 18.75rem;
}

.features-cont.features1 .text-box, .features-cont.features3 .text-box {
    width: 100%;
    text-align: center;
    margin-bottom: 3.75rem;
}
.features-cont .text-box h3 > span:nth-child(2) {
    font-size: 1.875rem;
}
.features-cont.features1 .img-box, .features-cont.features3 .img-box {
    width: 100%;
}
.features-cont.features1 .img-box span:nth-child(1) {
    margin-bottom: 0;
}
.features-cont.features1 .img-box span:nth-child(4){
    width: 90%;
    margin: 0 auto ;
}
.features-cont.features1 .img-box span:nth-child(2), .features-cont.features1 .img-box span:nth-child(3) {
    width: 50%;
    margin-bottom: 4.5rem;
}
.features-cont .text-box h3 span:nth-child(1) {
    width: 12%;
    margin: 0 auto 3.75rem;
}

.features-cont.features2 .text-box {
    width: 100%;
    text-align: center;
    padding-top: 0;
    order: 1;
}
.features-cont.features2 .img-box {
    width: 100%;
    z-index: 5;
    order: 2;
}

.features-cont.features2 .features-line {
    top: -2%;
    left: -50%;
    height: auto;
    transform: translateY(0);
    width: 90%;
}

.features-cont.features2 .features-line2  {
    right: -40%;
    height: auto;
    top: 0;
    transform: translateY(0);
    width: 80%;
}

.features-cont.features1 .features-line{
    top: -5%;
    left: -60%;
    height: auto;
    transform: translateY(0);
    width: 90%;
}


.features-cont.features1 .features-line2{
    right: -50%;
    height: auto;
    top: 0;
    transform: translateY(0);
    width: 80%;
}
.features-cont.features2 .img-box ul {
    padding: 3.0rem 0;
}
.features-cont.features2 .img-box ul li {
    width: 85%;
    margin: 0 auto 5.625rem;
}
.features-cont.features2 .img-box ul li:nth-child(3), .features-cont.features2 .img-box ul li:nth-child(4){
    margin: 0 auto 5.625rem;
}
.features-cont.features2 .img-box ul li div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem;
}
.features-cont.features2 .img-box ul li p {
    font-size: 1.875rem;
}
.features-cont.features2 .img-box ul li p span {
    font-size: 1.875rem;
    margin-top: 0.9375rem;
}

.features-cont.features2 .img-box ul li div h3 {
    font-size: 1.875rem;
}
.features-cont.features2 .img-box ul li div span {
    width: 70%;
    margin: 0 auto 1.875rem;
}
.features-cont .text-box h3 {
    margin-bottom: 9.375rem;
}

.features-cont.features2 {
    margin: 0;
}
.features2-cont2 {
    margin-bottom: 18.75rem;
}
.features-cont.features3 .text-box2 {
    width: 100%;
    padding: 0;
}
.features-cont.features3 .text-box{
    margin-bottom: 0;
}
.features-cont.features3 .text-box2 p:nth-child(3) {
    font-size: 3.75rem;
}
.features-cont.features3 .text-box2 p:nth-child(3) span  span,
.features-cont.features3 .text-box2 p:nth-child(4),
.features-cont.features3 .text-box2 p:nth-child(2)   {
    font-size: 1.875rem;
}

.features3-cont2 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 85%;
    margin: auto;
}

.features3-cont2 ul li {
    width: 100%;
    margin-bottom: 9.375rem;
}
.features3-cont2 ul li:last-child {
    margin-bottom: 0;
}

.features3-cont2 {
    margin-bottom: 13.125rem;
}

.section-title {
    font-size: 3.75rem;
    margin: 0 auto 5.625rem;
    width: 80%;
}
.section-title span {
    width: 100%;
    margin: 1.875rem auto 0;
}
.staff-cont li:nth-child(1) {
    width: 85%;
    margin-bottom: 9.375rem;
}

.staff-cont li:nth-child(1) .text-box p {
    font-size: 1.875rem;
    text-align: center;
}

.staff-cont li:nth-child(1) .text-box h3 {
    font-size: 1.875rem;
}
.staff-cont li {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    margin-bottom: 9.375rem;
}

.staff-cont .img-box span img {
    width: 100%;
    height: 100%;
}
.book-btn span:nth-child(1) {
    font-size: 1.5rem;
}
.staff-cont li .img-box.sp-staff::before {
    content: "";
    width: calc(50% - 0.4688rem);
    height: 0;
    display: block;
}

#flat-lp section#content8 ul li:nth-child(2){
    justify-content: flex-start;
}
#flat-lp section#content8 ul li:nth-child(3){
    justify-content: flex-end;
}
#flat-lp section#content8 ul li:nth-child(4){
    justify-content: flex-start;
}
.staff-cont li:nth-child(2) .svg {
    width: 85%;
    top: -20%;
    left: auto;
    right: -30%;
}

.staff-cont li:nth-child(2) .text-box {
    top: 25%;
    left: 80%;
    position: absolute;
    z-index: 10;
    font-size: 1.875rem;
}

.staff-cont li:nth-child(3) .text-box {
    bottom: auto;
    right: auto;
    left: 0;
    top: 0;
    font-size: 1.875rem;
}


.staff-cont li:nth-child(3) .svg {
    width: 70%;
    bottom: auto;
    right: auto;
    left: -20%;
    top: -15%;
}
.staff-cont li:last-child h3{
    height: max-content;
    font-size: 1.875rem;
}
.staff-cont li:nth-child(4) .text-box {
    bottom: 0;
    right: 6%;
}
.staff-cont li:nth-child(4) .svg {
    bottom: -30%;
    right: -10%;
}

#flat-lp section#content8 {
    margin-bottom: 18.75rem;
}

#content9 .photo-list > div:nth-child(1) {
    width: 100%;
}

#content9 .photo-list .right-cont {
    width: 100%;
}
#flat-lp #content9 {
    margin-bottom: 15.0rem;
}
#content10 .section-title {
    margin-bottom: 5.625rem;
    line-height: 1;
}
#content10 .text-box {
    font-size: 1.875rem;
    margin-bottom: 5.625rem;
}
#flat-lp #content10 {
    margin-bottom: 15.0rem;
}

.company-cont{
    width: 80%;
}
.company-cont div {
    width: 100%;
    line-height: 2;
    font-size: 1.125rem;
    margin-left: auto;
    margin-right: auto;
}
.company-cont div.left-cont {
    margin-bottom: 1.875rem;
}
.left-cont .contact-cont {
    background: #fff;
    position: relative;
    bottom: 0;
    width: 80%;
    margin: 0 auto 9.375rem;
}
.left-cont .contact-box {
    padding: 1.5rem 1.5rem 3.0rem;
}
.company-cont .left-cont ul li span:nth-child(1) {
    width: 30%;
    display: block;
}

.company-cont .left-cont ul li span:nth-child(2) {
    width: 70%;
    display: block;
}
.company-cont div.right-cont ul {
    margin-bottom: 1.875rem;
}
.company-cont div p {
    margin-bottom: 1.875rem;
}

.company-cont div h3 {
    margin-bottom: 1.875rem;
    padding-bottom: 1.875rem;
    border-bottom: 2px solid;
    line-height: 1;
    font-size: 1.875rem;
}
.company-cont div p {
    margin-bottom: 1.875rem;
}
.book-btn span:nth-child(2) {
    display: block;
    line-height: 1;
}

#content12 .left-cont {
    width: 100%;
}

#content12 .right-cont {
    width: 100%;
}

#content12 .right-cont .contact-cont {
    display: flex;
    width: 80%;
    margin: auto;
}
#content12 .left-cont .contact-cont .btn a {
    padding: 0.9375rem;
}

#content12 .right-cont .contact-cont h2 {
    padding: 0.9375rem;
    font-size: 1.875rem;
    border-radius: 0.9375rem;
    display: none;
}
.contact-box h3 span {
    background-color: #fff;
    font-size: 1.875rem;
    padding: 0 0 0 1.5rem;
}
.contact-box h3{
    line-height: 1;
    font-size: 1.875rem;
    margin: 1.875rem 0;
}
.contact-cont.contact1 .img-box {
    margin-bottom: 0;
}
.contact-box p{
    top: -0.5625rem;
}
.contact-box h3::before {
    width: 69%;
    left: 0;
    transform: translateY(-50%);
    height: 85%;
}
#flat-lp section#content12 {
    overflow: initial;
    margin-bottom: 11.25rem;
}
#content12 .contact-cont .btn a{
    padding: 0.9375rem;
    font-size: 1.875rem;
}
#content12 .right-cont .contact-cont h2::before {
    right: 8%;
    bottom: -64%;
}
.box ul{
    width: 80%;
}

.contact-cont .img-box{
    margin: 1.875rem auto;
    position: relative;
}
.contact-box {
    margin-top: 0;
    padding: 1.5rem 1.5rem 3.0rem;
}
.contact-box h4 {
    margin: 0.9375rem 0;
}
#content12 .left-cont .svg {
    position: absolute;
    width: 100%;
    top: 40%;
    transform: translateY(-50%);
    left: 0;
}
#content12 .left-cont .title {
    width: 40%;
    margin: 0 auto 9.375rem;
    position: inherit;
    top:-7.5rem;
}

#content12 .left-cont .svg {
    position: absolute;
    width: 110%;
    top: 40%;
    transform: translate(-50%,-50%);
    left: 55%;
}
#contact-form .title h2 {
    font-size: 1.875rem;
    line-height: 1.7;
    margin-bottom: 1.125rem;
    padding-left: 1.875rem;
}
#contact-form th label {
    font-size: 1.875rem;
}
.contact-cont.contact1 .img-box::before {
    width: 9.375rem;
    height: 9.375rem;
}
th label .required {
    font-size: 1.125rem;
    padding: 0.1875rem 0.9375rem;
}
#contact-form td input{
    padding-bottom: 0.9375rem;
    font-size: 1.875rem;
    border-radius: 0;
}
#contact-form td textarea{
    font-size: 1.875rem;
}
#contact-form tr {
    margin-bottom: 3.75rem;
}
#contact-form th {
    width: 100%;
    margin-bottom: 0.9375rem;
}
#contact-form td {
    width: 100%;
}
#contact-form form {
    width: 90%;
    margin: auto;
}
.check_group .required {
    font-size: 0.9375rem;
    padding: 0.1875rem 1.875rem;
    margin-right: 0.9375rem;
}
.check_group {
    width: max-content;
    margin: 0 auto 9.375rem;
    font-size: 1.5rem;
    padding: 0.9375rem;
    border-radius: 0.9375rem;
}
.submit_area {
    width: 100%;
}
input.wpcf7-form-control.wpcf7-submit{
    padding: 7.5rem 0 1.875rem;
    font-size: 1.875rem;
}
.submit_area .mail-icon {
    top: 1.875rem;
}
.contact-book {
    right: 5%;
    width: 50%;
}

.raiten-book {
    right: 5%;
    width: 50%;
    bottom: 0;
}
#fv-border {
    bottom: auto;
    top: -20%;
    width: 50%;
    left: 10%;
}
#contact-form td.full-width {
    white-space: inherit;
    margin-top: 1.5rem;
}
.company-cont div.right-cont div.sekou-chiiki {
    margin-bottom: 1.875rem;
}
#flat-lp #content11 {
    margin-bottom: 28.125rem;
}
#content12 .right-cont .contact-cont.contact2 {
    margin-top: 9.375rem;
}
.recomend-cont.recomend3 .img-box{
    margin-bottom: 1.875rem;
}

#flat-lp section#contact-form {
    margin-bottom: 0;
}
.submit_area .mail-icon{
    width: 7.5rem;
}
.wpcf7-form-control-wrap.checkbox-501 .wpcf7-list-item-label {
    font-size: 1.875rem;
}
td {
    font-size: 1.5rem;
}
.box ul{
    padding: 3.75rem;
    width: 90%;
}
.box ul li{
    margin: 0 auto 3.75rem;
}
.pdf-link a {
    width: 100%;
    padding: 1.5rem 0;
    font-size: 1.5rem;
}
.box ul::before {
    width: 10%;
    height: 10%;
}
.contact-kengaku {
    right: 5%;
    width: 60%;
}
#content6 .map iframe {
    width: 100%;
}


.btn-black {
    width: 100%;
    margin-top: 80px;
}
.btn-black a{
    background-color: #000;
    display: block;
    width: 80%;
    max-width: 600px;
    padding: 32px 0;
    font-size: 32px;
    color: #ccc;
    margin: auto;
    color: #ccc;
    text-align: center;
    line-height: 1;

}

.btn-black a {
    padding: 18px 0;
    font-size: 16px;
    margin: auto;
    color: #ccc;
    text-align: center;
}
.btn-black {
    margin-top: 24px;
}

/*===========
アニメーション
===========*/
/*フォーム切り替え*/
.form-content{
    display: none;
}

.form-tab.active, .form-tab.active{
    color: #fff !important;
    background-color: #000 !important;
}

.form-content.show1 {
    display: block;
}

/* inview */
.inview-cont{
    opacity:0;
    transform: translateY(30px);
}
.fadeIn{
    transition: all 1s ease-in;
    transform: translateY(0);
    opacity: 1 !important;
}
/* svg */
.svg svg{
    stroke-dasharray: 3000;
    opacity: 0;
}
.svg.stroke svg{
    transition-delay: 1s;
    animation-delay: 1s !important;
    opacity: 1;
    animation:line-stroke 3s;
    stroke-dasharray: 3000;
}
@keyframes line-stroke {
    0% {
        stroke-dashoffset:3000;
    }
    100% {
        stroke-dashoffset:0px;
    }
}

@-webkit-keyframes line-stroke3 {
    0% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 141.64501953125px;
    }

    100% {
        stroke-dashoffset: 141.64501953125px;
        stroke-dasharray: 141.64501953125px;
    }
}

@keyframes line-stroke3 {
    0% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 141.64501953125px;
    }

    100% {
        stroke-dashoffset: 141.64501953125px;
        stroke-dasharray: 141.64501953125px;
    }
}


@-webkit-keyframes line-stroke3-out {
    0% {
        stroke-dashoffset: 141.64501953125px;
        stroke-dasharray: 141.64501953125px;
    }

    100% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 141.64501953125px;
    }
}

@keyframes line-stroke3-out {
    0% {
        stroke-dashoffset: 141.64501953125px;
        stroke-dasharray: 141.64501953125px;
    }

    100% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 141.64501953125px;
    }
}

@keyframes line-stroke2 {
    0% {
        stroke-dashoffset:1200;
        opacity: 1;
    }
    100% {
        stroke-dashoffset:0px;
        opacity: 1 !important;
    }

}

@-webkit-keyframes line-stroke4 {
    0% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 140px;
    }

    100% {
        stroke-dashoffset: 200px;
        stroke-dasharray: 200px;
    }
}

@keyframes line-stroke4 {
    0% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 140px;
    }

    100% {
        stroke-dashoffset:200px;
        stroke-dasharray: 200px;
    }
}
@-webkit-keyframes line-stroke4-out {
    0% {
        stroke-dashoffset: 200px;
        stroke-dasharray: 200px;
    }

    100% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 140px;
    }
}

@keyframes line-stroke4-out {
    0% {
        stroke-dashoffset: 200px;
        stroke-dasharray: 200px;
    }

    100% {
        stroke-dashoffset: 283.2900390625px;
        stroke-dasharray: 140px;
    }
}
/* アンダーライン */
@keyframes under-line {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0);
    }
}
/* 点滅 */
.flash{
    animation: flash 2s linear infinite;
    animation-delay: 1s;
    opacity: 0;
}
#content1 .flash{
    animation-delay: 3s;
}

@keyframes flash {
    0%,10%,15%,100%{
        opacity: 1;
    }

    5%{
        opacity: 0;
    }

    12%{
        opacity: 0;
    }
}




/* プライバシーポリシーの展開 */
.policy_box{
    width: 85%;
    margin: auto;
    margin: 45.0rem auto 22.5rem;}
.policy_box{
    width: 94%;
    max-width: 600px;
    margin: auto;
    margin: 9.375rem auto;}
.accordion-close p::nth-child(1) {
    font-size: 1.875rem;
}
.accordion-close p {
    font-size: 1.5rem;
}
.accordion-close h2 {
    font-size: 2.25rem;
    text-align: center;
}
.policy_box .text_center{
    text-align: center;
}
.text_w{
    color: #FFF;
}
*,
*::after,
*::before {
    box-sizing: border-box;
}
.accordion-hidden{
    display: none;
}

.policy_box .accordion-open {
    display: block;
    padding: 10px;
    border-bottom: solid 3px #000;
    cursor: pointer;
    margin: 5px 0;
    font-weight: normal;
    position: relative;
    color: #000;
    font-size: 16px;
}

.policy_box .accordion-open::before,
.policy_box .accordion-open::after {
    content: '';
    width: 20px;
    height: 3px;
    background: #000;
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
}

.policy_box .accordion-open::after {
    transform: translateY(-50%) rotate(90deg);
    transition: .5s;
}

.accordion-hidden:checked + .accordion-open:after {
    transform: translateY(-50%) rotate(0);
}

.accordion-close {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    transition: 0.5s;
}

.accordion-hidden:checked + .accordion-open + .accordion-close {
    height: auto;
    opacity: 1;
    padding: 10px;
    font-weight: normal;
}
.policy_box .accordion-open {
    font-size: 16px;
}
.accordion-hidden:checked + .accordion-open + .accordion-close {font-size: 40%;
    font-weight: normal;
}
.loading-logo {
    margin-top: 32px !important;
}


/*loading*/
#loader-bg {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #fff;
    z-index: 1;
}
#loader {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 200px;
    height: 200px;
    text-align: center;
    color: #000;
    z-index: 2;
    transform: translate(-50%,-50%);
}

#loader p {
    color:#999;
    font-size:24px;
}
@import url(https://fonts.googleapis.com/css?family=Roboto:400,300);

#load {
    width: 150px;
    animation: loading 3s linear infinite;
}
#loading-inner {
    animation: loading-circle 2s linear infinite;
    stroke: #999;
    fill: transparent;
}
#load #loading-inner {
    stroke-dashoffset: 0;
    stroke-dasharray: 300;
    stroke-width: 10;
    stroke-miterlimit: 10;
    stroke-linecap: round;
    animation: loading-circle 2s linear infinite;
    stroke: #999;
    fill: transparent;
    color:#999;
}
.loading-logo {
    width: 70%;
    margin: 6.0rem auto 0;
}

@keyframes loading {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
@keyframes loading-circle {
    0% {
        stroke-dashoffset: 0
    }
    100% {
        stroke-dashoffset: -600;
    }
}



a.contact-box.form-tab2 ,.contact-box h3 a{
    text-decoration: none;
}

section#content6 {
    margin-bottom: 37.5rem;
}