@keyframes loop {
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
  }
  @keyframes loop2 {
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(-200%);
    }
  }

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px), print {
    
/* fv
-------------------------------------*/
.p-fv {
    background: url(../images/house/fv_bg.jpg) no-repeat top center/cover;
    display: grid;
    grid-template-rows: 1fr auto;
    margin-inline: auto;
    max-width: 1920px;
    width: 100%;
    margin:0 0 -1px 0;
}
.p-fv .l-inner.l-fv {
    padding-block: 138px 40px;
}
.p-fv .p-fv__copy {
    position: relative;
    left: 13px;
    width: min(95%,1125px);
    margin-inline: auto;
}
.p-fv .p-fv__ttl {
    margin-bottom: 44px;
}
.p-fv .p-fv__txt {
    color: #ffffff;
    font-size: 22px;
    font-size: clamp(1.125rem, 0.958rem + 0.35vw, 1.375rem);
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 2.0909090909;
    min-width: 0;
    text-align: left;
    width: 100%;
}

.p-fv .p-fv__loop {
    overflow: hidden;
    position: relative;
    width: 100%;
}
.p-fv .p-fv__loop-box {
    display: flex;
    width: 100vw;
}
.p-fv .p-fv__loop-box img {
    box-sizing: content-box;
    min-width: 147.6vw;
    height: auto;
    padding-right: 40px;
}
.p-fv .p-fv__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-fv .p-fv__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}

/* considering
-------------------------------------*/
.p-considering {
    position: relative;
}
.p-considering .p-considering__bg {
    background: #1B190C;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 133px), 50% 100%, 0 calc(100% - 133px));
    margin-bottom: -133px;
    position: relative;
    z-index: 2;
}
.p-considering .l-inner.l-considering {
    padding-block: 148px 177px;
}
.p-considering .p-considering__en {
    color: #E8E8E8;
    font-size: clamp(10.625rem, 4.833rem + 12.07vw, 19.313rem);
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-bottom: -260px;
    opacity: 0.15;
    text-align: center;
    margin-left: 44px;
}
.p-considering .p-considering__dark .l-inner.l-considering {
    padding-block: 136px 160px;
}
.p-considering .p-considering__ttl {
    font-weight: 900;
    font-size: 78px;
    letter-spacing: 0.05em;
    line-height: 1.6025;
    color: #fff;
    margin-bottom: 10px;
    position: relative;
    text-align: center;
    z-index: 1;
    margin-left: 4px;
}
.p-considering .p-considering__lead {
    font-weight: 900;
    font-size: 40px;
    letter-spacing: 0.05em;
    color: #fff;
    margin-bottom: 105px;
    text-align: center;
}
.p-considering .p-considering__row {
    align-items: flex-start;
    display: grid;
    gap: 0 40px;
    grid-template-columns: 46.3636% 50%;
    margin-inline: auto;
    width: min(95%, 1100px);
}
.p-considering .p-considering__name {
    font-weight: bold;
    font-size: 45px;
    letter-spacing: 0.02em;
    line-height: 1.55555;
    text-align: left;
    color: #fff;
    margin-bottom: 33px;
}
.p-considering .p-considering__txt {
    color: #ffffff;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.9;
    text-align: left;
}
.p-considering .p-considering__choices {
    display: grid;
    gap: 12px 0;
    padding-block: 21px;
}
.p-considering .p-considering__choice {
    background: #ffffff;
    border-radius: 60px;
    display: inline-block;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 7px 22px;
    text-align: center;
    width: fit-content;
}
.p-considering .p-considering__media {
    padding-block: 13px 0;
}
.p-considering .p-considering__media img {
    height: auto;
    width: 100%;
}
.p-considering .p-considering__light {
    background: #dedbd7;
    position: relative;
    z-index: 1;
}
.p-considering .p-considering__light .p-considering__row {
    width: min(95%, 1280px);
    grid-template-columns: 50% 39.84375%;
    align-items: center;
}
.p-considering .p-considering__light .l-inner.l-considering {
    padding-block: 213px 140px;
}
.p-considering .p-considering__light .p-considering__media {
    padding-block: 0;
}
.p-considering .p-considering__light .p-considering__name {
    font-weight: 900;
    color: #1B100D;
    margin-bottom: 44px;
}
.p-considering .p-considering__light .p-considering__txt {
    color: #1B100D;
}

/* inspection
-------------------------------------*/
.p-inspection {
    position: relative;
}
.p-inspection .p-inspection__head {
    background: #9C8725;
    overflow: hidden;
    padding-block: 0 82px;
    position: relative;
    text-align: center;
}
.p-inspection .p-inspection__loop {
    overflow: hidden;
    width: 100%;
    z-index: 0;
    position: relative;
    margin-bottom: -97px;
}
.p-inspection .p-inspection__loop-box {
    display: flex;
    width: 100vw;
}
.p-inspection .p-inspection__loop-box img {
    box-sizing: content-box;
    flex-shrink: 0;
    height: auto;
    min-width: 150.6vw;
    padding-right: 40px;
    width: auto;
}
.p-inspection .p-inspection__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-inspection .p-inspection__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}
.p-inspection .p-inspection__ttl {
    font-weight: 900;
    font-size: 77px;
    letter-spacing: 0.02em;
    text-align: left;
    width: fit-content;
    margin-inline: auto;
    position: relative;
    left: -1px;
}
.p-inspection .p-inspection__ttl .span01 {
    margin-right: -28px;
    display: inline-block;
}
.p-inspection .p-inspection__ttl .span02 {
    letter-spacing: -0.02em;
}

.p-inspection .p-inspection__body {
    background: #302C17;
}
.p-inspection .l-inner.l-inspection {
    padding-block: 120px 140px;
}
.p-inspection .p-inspection__row {
    align-items: center;
    display: grid;
    justify-content: flex-end;
    gap: 0 50px;
    grid-template-columns: 41.6666% 50%;
    margin-bottom: 100px;
    margin-inline: auto;
    width: min(95%, 1200px);
}
.p-inspection .p-inspection__row:last-child {
    margin-bottom: 0;
}
.p-inspection .p-inspection__name {
    font-weight: bold;
    font-size: 40px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    text-align: left;
    color: #fff;
    margin-bottom: 36px;
}
.p-inspection .p-inspection__row:last-child .p-inspection__name {
    margin-left: -23px;
}
.p-inspection .p-inspection__txt {
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.9;
    text-align: left;
    color: #fff;
}
.p-inspection .p-inspection__media img {
    height: auto;
    width: 100%;
}

/* communication
-------------------------------------*/
.p-communication {
    position: relative;
}
.p-communication .p-communication__head {
    background: #9C8725;
    overflow: hidden;
    padding-block: 0 88px;
    position: relative;
    text-align: center;
}
.p-communication .p-communication__loop {
    margin-bottom: -97px;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 0;
}
.p-communication .p-communication__loop-box {
    display: flex;
    width: 100vw;
}
.p-communication .p-communication__loop-box img {
    box-sizing: content-box;
    flex-shrink: 0;
    height: auto;
    min-width: 148.4vw;
    padding-right: 40px;
    width: auto;
}
.p-communication .p-communication__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-communication .p-communication__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}
.p-communication .p-communication__ttl {
    font-size: 77px;
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.55844;
    margin-inline: auto;
    position: relative;
    text-align: left;
    width: fit-content;
    z-index: 1;
    left: 17px;
}
.p-communication .p-communication__body {
    background: #dedbd7;
}
.p-communication .l-inner.l-communication {
    padding-block: 100px 140px;
}
.p-communication .p-communication__row {
    align-items: center;
    display: grid;
    gap: 0 50px;
    grid-template-columns: 41.6666% 50%;
    justify-content: flex-end;
    margin-bottom: 100px;
    margin-inline: auto;
    width: min(95%, 1200px);
}
.p-communication .p-communication__row:last-child {
    margin-bottom: 0;
}
.p-communication .p-communication__name {
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-bottom: 36px;
    text-align: left;
}
.p-communication .p-communication__row:last-child .p-communication__name {
    text-indent: -27px;
}
.p-communication .p-communication__txt {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.9;
    text-align: left;
}
.p-communication .p-communication__media img {
    height: auto;
    width: 100%;
}

/* living
-------------------------------------*/
.p-living {
    background: #1B190C;
    position: relative;
}
.p-living .l-inner.l-living {
    padding-block: 117px 140px;
}
.p-living .p-living__ttl {
    color: #ffffff;
    font-size: 77px;
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.55844;
    margin-bottom: 75px;
    text-align: center;
    margin-left: 40px;
}
.p-living .p-living__row {
    align-items: center;
    display: grid;
    gap: 0 50px;
    grid-template-columns: 41.6666% 50%;
    justify-content: flex-end;
    margin-bottom: 100px;
    margin-inline: auto;
    width: min(95%, 1200px);
}
.p-living .p-living__row:last-child {
    margin-bottom: 0;
}
.p-living .p-living__row--reverse {
    grid-template-columns: 50% 41.6666%;
    justify-content: flex-start;
}
.p-living .p-living__name {
    color: #ffffff;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-bottom: 36px;
    text-align: left;
}
.p-living .p-living__txt {
    color: #ffffff;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.9;
    text-align: left;
}
.p-living .p-living__media img {
    height: auto;
    width: 100%;
}

/* links
-------------------------------------*/
.p-links .p-links__items {
    display: grid;
    gap: 0 40px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 1100px);
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1440px) {
======================================== */
@media screen and (min-width:768px) and (max-width:1440px) {
.p-considering .p-considering__en {
    margin-left: 0;
}
}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1140px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1140px) {

/* considering
-------------------------------------*/
.p-considering .p-considering__bg {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 11.667vw), 50% 100%, 0 calc(100% - 11.667vw));
    margin-bottom: -11.667vw;
}
.p-considering .l-inner.l-considering {
    padding-block: 12.982vw 15.526vw;
}
.p-considering .p-considering__en {
    font-size: 18.105vw;
    margin-bottom: -22.807vw;
    margin-left: 0;
}
.p-considering .p-considering__ttl {
    font-size: 6.842vw;
    margin-bottom: 0.877vw;
    margin-left: 0.351vw;
}
.p-considering .p-considering__lead {
    font-size: 3.509vw;
    margin-bottom: 9.211vw;
}
.p-considering .p-considering__row {
    gap: 0 3.509vw;
    width: min(95%, 100vw);
}
.p-considering .p-considering__name {
    font-size: 3.947vw;
    margin-bottom: 2.895vw;
}
.p-considering .p-considering__txt {
    font-size: 1.754vw;
}
.p-considering .p-considering__choices {
    gap: 1.053vw 0;
    padding-block: 1.842vw;
}
.p-considering .p-considering__choice {
    border-radius: 5.263vw;
    font-size: 1.93vw;
    padding: 0.614vw 1.93vw;
}
.p-considering .p-considering__media {
    padding-block: 1.14vw 0;
}
.p-considering .p-considering__light .p-considering__row {
    width: min(95%, 100vw);
}
.p-considering .p-considering__light .l-inner.l-considering {
    padding-block: 18.684vw 12.281vw;
}
.p-considering .p-considering__light .p-considering__name {
    margin-bottom: 3.86vw;
}

}

/* ========================================
@media screen and (min-width:768px) and ( max-width:1240px) {
======================================== */
@media screen and (min-width: 768px) and (max-width: 1240px) {

/* inspection
-------------------------------------*/
.p-inspection .p-inspection__head {
    padding-block: 0 6.613vw;
}
.p-inspection .p-inspection__loop {
    margin-bottom: -7.823vw;
}
.p-inspection .p-inspection__loop-box img {
    padding-right: 3.226vw;
}
.p-inspection .p-inspection__ttl {
    font-size: 6.21vw;
    left: -0.081vw;
}
.p-inspection .p-inspection__ttl .span01 {
    margin-right: -2.258vw;
}
.p-inspection .l-inner.l-inspection {
    padding-block: 9.677vw 11.29vw;
}
.p-inspection .p-inspection__row {
    gap: 0 4.032vw;
    margin-bottom: 8.065vw;
    width: min(95%, 100vw);
}
.p-inspection .p-inspection__name {
    font-size: 3.226vw;
    margin-bottom: 2.903vw;
}
.p-inspection .p-inspection__row:last-child .p-inspection__name {
    margin-left: -1.855vw;
}
.p-inspection .p-inspection__txt {
    font-size: 1.613vw;
}

/* communication
-------------------------------------*/
.p-communication .p-communication__head {
    padding-block: 0 7.097vw;
}
.p-communication .p-communication__loop {
    margin-bottom: -7.823vw;
}
.p-communication .p-communication__loop-box img {
    padding-right: 3.226vw;
}
.p-communication .p-communication__ttl {
    font-size: 6.21vw;
    left: 1.371vw;
}
.p-communication .l-inner.l-communication {
    padding-block: 8.065vw 11.29vw;
}
.p-communication .p-communication__row {
    gap: 0 4.032vw;
    margin-bottom: 8.065vw;
    width: min(95%, 100vw);
}
.p-communication .p-communication__name {
    font-size: 3.226vw;
    margin-bottom: 2.903vw;
}
.p-communication .p-communication__row:last-child .p-communication__name {
    text-indent: -2.177vw;
}
.p-communication .p-communication__txt {
    font-size: 1.613vw;
}

/* living
-------------------------------------*/
.p-living .l-inner.l-living {
    padding-block: 9.435vw 11.29vw;
}
.p-living .p-living__ttl {
    font-size: 6.21vw;
    margin-bottom: 6.048vw;
    margin-left: 3.226vw;
}
.p-living .p-living__row {
    gap: 0 4.032vw;
    margin-bottom: 8.065vw;
    width: min(95%, 100vw);
}
.p-living .p-living__name {
    font-size: 3.226vw;
    margin-bottom: 2.903vw;
}
.p-living .p-living__txt {
    font-size: 1.613vw;
}

}


/* ========================================
@media screen and (min-width:768px) and (max-width:1100px)
======================================== */
@media screen and (min-width:768px) and (max-width:1100px) {

/* links
-------------------------------------*/
.p-links .p-links__items {
    gap: 0 3.636vw;
}
.p-links .p-links__item {
    min-width: 0;
}
.p-links .p-links__item .top .en img {
    height: auto;
    max-width: 100%;
    width: auto;
}
.p-links .p-links__item .top .txt {
    font-size: 1.636vw;
    max-width: 100%;
    padding: 0 1.273vw;
}
.p-links .p-links__item .top .en {
    max-width: 90%;
}
.p-links .p-links__item .wrap .left h3 {
    font-size: 2.364vw;
}
.p-links .p-links__item .bottom-txt {
    font-size: 1.636vw;
    padding-block: 0 1.091vw;
}
    
}


/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
/* fv
-------------------------------------*/
.p-fv {
    background: url(../images/house/fv_bg_sp.jpg) no-repeat top center/cover;
    display: grid;
    grid-template-rows: 1fr auto;
    margin-inline: auto;
    max-width: 100vw;
    width: 100%;
    margin:-7.4vw auto -0.5vw auto;
}
.p-fv .l-inner.l-fv {
    width: min(95%, 87.92vw);
    margin-inline: auto;
    padding-block: 18.0vw 0;
    margin-bottom: -7vw;
}
.p-fv .p-fv__copy {
    margin-inline: auto;
    position: relative;
}
.p-fv .p-fv__ttl {
    margin-bottom: 37.67vw;
}
.p-fv .p-fv__txt {
    color: #ffffff;
    font-size:5.314vw;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 2;
    min-width: 0;
    text-align: left;
    width: 100%;
}

.p-fv .p-fv__loop {
    overflow: hidden;
    position: relative;
    width: 100%;
    margin-bottom: -0.5vw;
}
.p-fv .p-fv__loop-box {
    display: flex;
    width: 100vw;
}
.p-fv .p-fv__loop-box img {
    box-sizing: content-box;
    min-width: 338.6vw;
    height: auto;
    padding-right: 9.66vw;
}
.p-fv .p-fv__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-fv .p-fv__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}

/* considering
-------------------------------------*/
.p-considering {
    position: relative;
}
.p-considering .p-considering__bg {
    background: #1B190C;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 13.3vw), 50% 100%, 0 calc(100% - 13.3vw));
    margin-bottom: -13.3vw;
    position: relative;
    z-index: 2;
}
.p-considering .l-inner.l-considering {
    padding-block: 22.281vw 22.736vw;
}
.p-considering .p-considering__en {
    color: #ffffff;
    font-size: 19.32vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-bottom: -12.666vw;
    opacity: 0.12;
    text-align: center;
}
.p-considering .p-considering__dark .l-inner.l-considering {
    padding-block: 11.666vw 13.333vw;
}
.p-considering .p-considering__ttl {
    font-weight: 900;
    font-size:7.729vw;
    letter-spacing: 0.02em;
    line-height: 1.6875;
    color: #fff;
    margin-bottom: 3.83vw;
    position: relative;
    text-align: center;
    z-index: 1;
}
.p-considering .p-considering__lead {
    font-weight: 900;
    font-size:4.831vw;
    line-height: 1.7;
    letter-spacing: 0.02em;
    color: #fff;
    margin-bottom: 3.25vw;
    text-align: center;
}
.p-considering .p-considering__row {
    align-items: flex-start;
    display: grid;
    gap: 6.85vw 0;
    margin-inline: auto;
    width: min(95%, 91.79vw);
}
.p-considering .p-considering__body {
    order: 2;
}
.p-considering .p-considering__name {
    font-weight: bold;
    font-size:6.522vw;
    letter-spacing: 0.02em;
    line-height: 1.55555;
    text-align: left;
    color: #fff;
    margin-bottom: 6.25vw;
}
.p-considering .p-considering__txt {
    color: #ffffff;
    font-size:4.348vw;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.7777;
    text-align: left;
}
.p-considering .p-considering__choices {
    display: grid;
    gap: 2.90vw 0;
    padding-block: 6.25vw;
}
.p-considering .p-considering__choice {
    background: #ffffff;
    border-radius: 14.49vw;
    display: inline-block;
    font-size:5.314vw;
    font-weight: 900;
    letter-spacing: 0.02em;
    padding: 1.792vw 5.266vw;
    text-align: center;
    width: fit-content;
}
.p-considering .p-considering__media {
    padding-block: 3.226vw 0;
    order: 1;
}
.p-considering .p-considering__media img {
    height: auto;
    width: 100%;
}
.p-considering .p-considering__light {
    background: #dedbd7;
    position: relative;
    z-index: 1;
}
.p-considering .p-considering__light .l-inner.l-considering {
    padding-block: 21.466vw 11.281vw;
}
.p-considering .p-considering__light .p-considering__media {
    padding-block: 0;
}
.p-considering .p-considering__light .p-considering__name {
    font-weight: 900;
    color: #1B100D;
    font-size: 7.729vw;
    line-height: 1.625;
    margin-bottom: 5.75vw;
}
.p-considering .p-considering__light .p-considering__txt {
    color: #1B100D;
}


/* inspection
-------------------------------------*/
.p-inspection {
    position: relative;
}
.p-inspection .p-inspection__head {
    background: #9C8724;
    overflow: hidden;
    padding-block: 0 6.2vw;
    position: relative;
    text-align: center;
}
.p-inspection .p-inspection__loop {
    overflow: hidden;
    width: 100%;
    z-index: 0;
    position: relative;
    margin-bottom: -8.7vw;
}
.p-inspection .p-inspection__loop-box {
    display: flex;
    width: 100vw;
}
.p-inspection .p-inspection__loop-box img {
    box-sizing: content-box;
    flex-shrink: 0;
    height: auto;
    min-width: 247.6vw;
    padding-right: 4vw;
    width: auto;
}
.p-inspection .p-inspection__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-inspection .p-inspection__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}
.p-inspection .p-inspection__ttl {
    font-weight: 900;
    font-size:7.729vw;
    letter-spacing: 0.02em;
    text-align: left;
    width: fit-content;
    margin-inline: auto;
    position: relative;
    left: -0.081vw;
    line-height: 1.65;
}
.p-inspection .p-inspection__ttl .span01 {
    margin-right: -4.258vw;
    display: inline-block;
}
.p-inspection .p-inspection__ttl .span02 {
    letter-spacing: -0.02em;
}

.p-inspection .p-inspection__body {
    background: #302C17;
}
.p-inspection .l-inner.l-inspection {
    padding-block: 14.5vw 14.0vw;
}
.p-inspection .p-inspection__row {
    align-items: center;
    display: grid;
    gap: 7.25vw;
    margin-bottom: 11.08vw;
    margin-inline: auto;
    width: min(95%, 91.79vw);
}
.p-inspection .p-inspection__row:last-child {
    margin-bottom: 0;
}
.p-inspection .p-inspection__name {
    font-weight: bold;
    font-size:6.763vw;
    letter-spacing: 0.05em;
    line-height: 1.5;
    text-align: left;
    color: #fff;
    margin-bottom: 6.25vw;
}
.p-inspection .p-inspection__row:last-child .p-inspection__name {
    margin-left: -3.786vw;
}
.p-inspection .p-inspection__content {
    order: 2;
}
.p-inspection .p-inspection__txt {
    font-size:4.348vw;
    letter-spacing: 0.05em;
    line-height: 1.7777;
    text-align: left;
    color: #fff;
    font-weight: 400;
}
.p-inspection .p-inspection__media {
    order: 1;
}
.p-inspection .p-inspection__media img {
    height: auto;
    width: 100%;
}


/* communication
-------------------------------------*/
.p-communication {
    position: relative;
}
.p-communication .p-communication__head {
    background: #9C8724;
    overflow: hidden;
    padding-block: 0 6.4vw;
    position: relative;
    text-align: center;
}
.p-communication .p-communication__loop {
    margin-bottom: -8.7vw;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 0;
}
.p-communication .p-communication__loop-box {
    display: flex;
    width: 100vw;
}
.p-communication .p-communication__loop-box img {
    box-sizing: content-box;
    flex-shrink: 0;
    height: auto;
    min-width: 247.6vw;
    padding-right: 4vw;
    width: auto;
}
.p-communication .p-communication__loop-box img:first-child {
    -webkit-animation: loop 50s -25s linear infinite;
    animation: loop 50s -25s linear infinite;
}
.p-communication .p-communication__loop-box img:last-child {
    -webkit-animation: loop2 50s linear infinite;
    animation: loop2 50s linear infinite;
}
.p-communication .p-communication__ttl {
    font-size:7.729vw;
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.65;
    margin-inline: auto;
    position: relative;
    text-align: left;
    width: fit-content;
    z-index: 1;
    left: -0.3vw;
}
.p-communication .p-communication__body {
    background: #dedbd7;
}
.p-communication .l-inner.l-communication {
    padding-block: 9.34vw 14.0vw;
}
.p-communication .p-communication__row {
    align-items: center;
    display: grid;
    gap: 7.25vw 0;
    margin-bottom: 9vw;
    margin-inline: auto;
    width: min(95%, 91.79vw);
}
.p-communication .p-communication__row:last-child {
    margin-bottom: 0;
}
.p-communication .p-communication__content {
    order: 2;
}
.p-communication .p-communication__name {
    font-size:6.763vw;
    font-weight: 900;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-bottom: 6.25vw;
    text-align: left;
}
.p-communication .p-communication__row:last-child .p-communication__name {
    text-indent: -4.386vw;
}
.p-communication .p-communication__txt {
    font-size:4.348vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.7777;
    text-align: left;
}
.p-communication .p-communication__media {
    order: 1;
}
.p-communication .p-communication__media img {
    height: auto;
    width: 100%;
}


/* living
-------------------------------------*/
.p-living {
    background: #1B190C;
    position: relative;
}
.p-living .l-inner.l-living {
    padding-block: 10.9vw 14.0vw;
}
.p-living .p-living__ttl {
    color: #ffffff;
    font-size:8.696vw;
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.5;
    margin-bottom: 9.5vw;
    text-align: center;
    text-indent: -4.5vw;
    position: relative;
    left: 2.5vw;
}
.p-living .p-living__row {
    align-items: center;
    display: grid;
    gap: 7.25vw 0;
    margin-bottom: 11.08vw;
    margin-inline: auto;
    width: min(95%, 91.79vw);
}
.p-living .p-living__row:last-child {
    margin-bottom: 0;
}
.p-living .p-living__content {
    order: 2;
}
.p-living .p-living__name {
    color: #ffffff;
    font-size:6.763vw;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-bottom: 6.25vw;
    text-align: left;
}
.p-living .p-living__txt {
    color: #ffffff;
    font-size:4.348vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.7777;
    text-align: left;
}
.p-living .p-living__media {
    order: 1;
}
.p-living .p-living__media img {
    height: auto;
    width: 100%;
}

/* links
-------------------------------------*/
.p-links .p-links__item:last-child .top {
    padding-block: 23.014vw 12.434vw;
}

}

