@charset "utf-8";
@import "anime.css";

/*
------------
environment.css
------------
*/
/* title_area */
.index #title_area {
    background-image: url(../../images/content/environment/titBg.webp);
    background-position: center center;
    position: relative;
}
.index #title_area::before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .5);
    position: absolute;
    top: 0;
    left: 0;
}
.in_page.index #title_area {
    flex-wrap: wrap;
}
.in_page.index #title_area .inner {
    position: relative;
    top: 30px;
    z-index: 1;
}
.in_page.index #title_area h2 {
    display: inline-block;
    top: 0;
}
.index #title_area p {
    display: block;
    width: 100%;
    font-size: 1.9rem;
    letter-spacing: 0.2em;
    font-weight: 600;
    margin: 35px 0 0 0;
    color: #8f6627;
}
@media only screen and (max-width: 768px) {
    .index #title_area {
        background-image: url(../../images/content/environment/titBgSP.webp);
    }
    .in_page.index #title_area .inner {
        top: 20px;
    }
    .index #title_area p {
        font-size: 1.4rem;
        letter-spacing: 0.15em;
        line-height: 1.8;
        margin: 20px 0 0 0;
    }
}
/* container_box */
.container_box .inner h3 {
    display: inline-block;
    font-size: 4rem;
    color: #8f6627;
    font-weight: 600;
    letter-spacing: 0.2em;
    line-height: 1.5;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 10px;
}
.container_box .inner h3::before {
    content: "";
    width: 100%;
    height: 10px;
    background: rgba(179, 153, 97, .8);
    position: absolute;
    bottom: 2px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.container_box .inner p.lead {
    color: #8f6627;
    font-size: 1.9rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    line-height: 2.5;
    text-align: center;
    margin: 60px 0 0 0;
}
.container_box .inner figure.main {
    width: 571px;
    margin: 60px auto 0 auto;
}
@media only screen and (max-width: 768px) {
    .container_box .inner h3 {
        font-size: 1.9rem;
        letter-spacing: 0.15em;
        padding: 0 5px;
    }
    .container_box .inner h3::before {
        height: 7px;
    }
    .container_box .inner p.lead {
        font-size: 1.6rem;
        font-weight: 500;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: justify;
        margin: 35px 0 0 0;
    }
    .container_box .inner figure.main {
        width: 80vw;
        margin: 35px auto 0 auto;
    }
}
/* evaluation_area */
#evaluation_area {
    background: #f4ebd7;
    padding: 125px 0;
}
#evaluation_area .inner {
    width: 1000px;
    margin: 0 auto;
    font-feature-settings: "palt";
}
#evaluation_area .inner .element {
    margin: 200px 0 0 0;
}
#evaluation_area .inner .element article {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#evaluation_area .inner .element article:not(:first-child) {
    margin: 125px 0 0 0;
}
#evaluation_area .inner .element article:nth-child(2) {
    margin: 65px 0 0 0;
}
#evaluation_area .inner .element article .item {
    width: calc(100% - 502px - 75px);
    color: #8f6627;
}
#evaluation_area .inner .element article .item h4 {
    font-size: 4rem;
    font-weight: 600;
    letter-spacing: 0.2em;
}
#evaluation_area .inner .element article .item h4::before {
    font-family: "Lato", sans-serif;
    font-size: 4.8rem;
    letter-spacing: 0.05em;
    position: relative;
    bottom: -0.075em;
}
#evaluation_area .inner .element article:nth-child(1) .item h4::before {
    content: "1. ";
}
#evaluation_area .inner .element article:nth-child(2) .item h4::before {
    content: "2. ";
}
#evaluation_area .inner .element article:nth-child(3) .item h4::before {
    content: "3. ";
}
#evaluation_area .inner .element article .item p {
    margin: 45px 0 0 0;
    font-size: 1.9rem;
    font-weight: 600;
    color: #8f6627;
    letter-spacing: 0.125em;
    line-height: 2;
    text-align: justify;
}
#evaluation_area .inner .element article figure {
    width: 502px;
    font-size: 1.6rem;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
}
#evaluation_area .inner .element article:nth-child(1) figure img {
    position: relative;
    top: -60px;
}
#evaluation_area .inner p.txt {
    font-size: 1.9rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    line-height: 2.5;
    color: #8f6627;
    text-align: center;
    margin: 125px 0 0 0;
}
@media only screen and (max-width: 768px) {
    #evaluation_area {
        padding: 65px 0;
    }
    #evaluation_area .inner {
        width: 80vw;
    }
    #evaluation_area .inner .element {
        margin: 65px 0 0 0;
    }
    #evaluation_area .inner .element article {
        display: block;
    }
    #evaluation_area .inner .element article:not(:first-child) {
        margin: 65px 0 0 0;
    }
    #evaluation_area .inner .element article .item {
        width: 100%;
    }
    #evaluation_area .inner .element article .item h4 {
        font-size: 2.5rem;
        letter-spacing: 0.15em;
    }
    #evaluation_area .inner .element article .item h4::before {
        font-size: 3rem;
    }
    #evaluation_area .inner .element article .item p {
        margin: 20px 0 0 0;
        font-size: 1.6rem;
        font-weight: 500;
    }
    #evaluation_area .inner .element article figure {
        width: 100%;
        height: auto;
        margin: 30px 0 0 0;
    }
    #evaluation_area .inner .element article:nth-child(1) figure img {
        top: 0;
    }
    #evaluation_area .inner p.txt {
        font-size: 1.6rem;
        font-weight: 500;
        letter-spacing: 0.1em;
        line-height: 2;
        text-align: justify;
        margin: 65px 0 0 0;
    }
}
/* environment_area */
#environment_area {
    margin: 125px 0 0 0;
}
#environment_area .inner {
    position: relative;
    font-feature-settings: "palt";
}
#environment_area .inner .element {
    margin: 125px 0 0 0;
}
#environment_area .inner .element p {
    font-size: 1.6rem;
    letter-spacing: 0.2em;
    line-height: 2.2;
    font-weight: 600;
    color: #8f6627;
    text-align: justify;
    margin: 50px 0 0 0;
}
#environment_area .inner .element .entrance {
    margin: 125px 0 0 0;
    padding: calc(100vw * 320 / 1400) 0 0 0;
    position: relative;
}
#environment_area .inner .element .entrance figure.img01 {
    width: calc(100vw * 678 / 1400);
    height: auto;
    aspect-ratio: 678 / 470;
    position: absolute;
    left: calc(100vw * 600 / 1400);
    top: 0;
}
#environment_area .inner .element .entrance figure.img01::after {
    content: "";
    width: 248px;
    height: 50px;
    background-image: url(../../images/content/environment/environment_txt_entrance.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -25px;
    right: -20px;
}
#environment_area .inner .element .entrance .item {
    width: 600px;
    position: relative;
    z-index: 1;
    background: #fff;
    padding: 45px;
    margin: 0 0 0 auto;
    right: calc(100vw * 620 / 1400);
}
#environment_area .inner .element .office {
    height: auto;
    aspect-ratio: 1400 / 2570;
    margin: 40px 0 0 0;
    position: relative;
}
#environment_area .inner .element .office ul li {
    height: auto;
    position: absolute;
}
#environment_area .inner .element .office ul li:nth-child(1) {
    width: calc(100vw * 350 / 1400);
    aspect-ratio: 350 / 230;
    top: calc(100vw * 0 / 1400);
    right: calc(100vw * 506 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(2) {
    width: calc(100vw * 480 / 1400);
    aspect-ratio: 480 / 310;
    top: calc(100vw * 206 / 1400);
    right: calc(100vw * 150 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(2)::after {
    content: "";
    width: 176px;
    height: 52px;
    background-image: url(../../images/content/environment/environment_txt_office.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -25px;
    left: -25px;
}
#environment_area .inner .element .office ul li:nth-child(3) {
    width: calc(100vw * 250 / 1400);
    aspect-ratio: 1 / 1;
    top: calc(100vw * 502 / 1400);
    left: calc(100vw * 150 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(3)::before {
    content: "";
    width: calc(100vw * 270 / 1400);
    height: calc(100vw * 200 / 1400);
    background: #ece6d8;
    position: absolute;
    top: -65px;
    right: -150px;
    z-index: -1;
}
#environment_area .inner .element .office ul li:nth-child(4) {
    width: calc(100vw * 380 / 1400);
    aspect-ratio: 380 / 260;
    top: calc(100vw * 830 / 1400);
    left: calc(100vw * 890 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(5) {
    width: calc(100vw * 540 / 1400);
    aspect-ratio: 540 / 350;
    top: calc(100vw * 1020 / 1400);
    left: calc(100vw * 450 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(5)::after {
    content: "";
    width: 519px;
    height: 53px;
    background-image: url(../../images/content/environment/environment_txt_conferenceroom.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -25px;
    left: calc(100vw * 130 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(5)::before {
    content: "";
    width: calc(100vw * 380 / 1400);
    height: calc(100vw * 200 / 1400);
    background: #ece6d8;
    position: absolute;
    top: -30px;
    left: -90px;
    z-index: -1;
}
#environment_area .inner .element .office ul li:nth-child(6) {
    width: calc(100vw * 873 / 1400);
    aspect-ratio: 873 / 394;
    top: calc(100vw * 1678 / 1400);
    left: 0;
}
#environment_area .inner .element .office ul li:nth-child(6)::after {
    content: "";
    width: 210px;
    height: 63px;
    background-image: url(../../images/content/environment/environment_txt_lounge.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: -30px;
    left: calc(100vw * 160 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(6)::before {
    content: "";
    width: calc(100vw * 445 / 1400);
    height: calc(100vw * 244 / 1400);
    background: #c79c39;
    position: absolute;
    top: -45px;
    right: -85px;
    z-index: -1;
}
#environment_area .inner .element .office ul li:nth-child(7) {
    width: calc(100vw * 350 / 1400);
    aspect-ratio: 350 / 200;
    top: calc(100vw * 2175 / 1400);
    left: calc(100vw * 270 / 1400);
}
#environment_area .inner .element .office ul li:nth-child(8) {
    width: calc(100vw * 440 / 1400);
    aspect-ratio: 440 / 295;
    top: calc(100vw * 2275 / 1400);
    left: calc(100vw * 797 / 1400);
}
#environment_area .inner .element .cafeteria {
    margin: 200px 0 0 0;
    position: relative;
    height: auto;
    aspect-ratio: 1400 / 795;
    padding: calc(100vw * 220 / 1400) 0 0 0;
}
#environment_area .inner .element .cafeteria figure.img01 {
    width: calc(100vw * 770 / 1400);
    height: auto;
    aspect-ratio: 770 / 417;
    position: absolute;
    top: 0;
    left: 0;
}
#environment_area .inner .element .cafeteria figure.img01::after {
    content: "";
    width: 259px;
    height: 52px;
    background-image: url(../../images/content/environment/environment_txt_cafeteria.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: -25px;
    left: calc(100vw * 102 / 1400);
}
#environment_area .inner .element .cafeteria figure.img02 {
    width: calc(100vw * 400 / 1400);
    height: auto;
    aspect-ratio: 400 / 280;
    position: absolute;
    top: calc(100vw * 510 / 1400);
    left: calc(100vw * 210 / 1400);
}
#environment_area .inner .element .cafeteria .item {
    width: 560px;
    position: relative;
    z-index: 1;
    background: #fff;
    padding: 45px;
    margin: 0 0 0 calc(100vw * 670 / 1400);
}
#environment_area .inner .element .cafeteria .item h4 {
    width: 376px;
}
@media only screen and (max-width: 768px) {
    #environment_area {
        margin: 65px 0 0 0;
    }
    #environment_area .inner p.lead {
        width: 80vw;
        margin: 35px auto 0 auto;
    }
    #environment_area .inner .element {
        margin: 65px 0 0 0;
    }
    #environment_area .inner .element p {
        letter-spacing: 0.15em;
        line-height: 1.8;
        font-weight: 500;
        margin: 30px 0 0 0;
    }
    #environment_area .inner .element .entrance {
        margin: 65px 0 0 0;
        padding: 0;
    }
    #environment_area .inner .element .entrance figure.img01 {
        width: calc(100vw * 340 / 375);
        aspect-ratio: 340 / 230;
        position: relative;
        left: auto;
        margin: 0 0 0 auto;
    }
    #environment_area .inner .element .entrance figure.img01::after {
        width: 116px;
        height: 23px;
        bottom: auto;
        right: auto;
        top: -15px;
        left: 30px;
    }
    #environment_area .inner .element .entrance .item {
        width: calc(100vw * 340 / 375);
        padding: 20px 20px 20px 10vw;
        margin: 0;
        right: auto;
        top: -20px;
    }
    #environment_area .inner .element .office {
        height: auto;
        aspect-ratio: 375 / 1692;
        margin: 45px 0 0 0;
    }
    #environment_area .inner .element .office ul li:nth-child(1) {
        width: calc(100vw * 230 / 375);
        aspect-ratio: 230 / 165;
        right: 0;
    }
    #environment_area .inner .element .office ul li:nth-child(2) {
        width: calc(100vw * 270 / 375);
        aspect-ratio: 270 / 195;
        top: calc(100vw * 155 / 375);
        right: calc(100vw * 45 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(2)::after {
        width: 110px;
        height: 33px;
        bottom: -15px;
        left: -25px;
    }
    #environment_area .inner .element .office ul li:nth-child(3) {
        width: calc(100vw * 180 / 375);
        top: calc(100vw * 478 / 375);
        left: calc(100vw * 0 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(3)::before {
        width: calc(100vw * 157 / 375);
        height: calc(100vw * 157 / 375);
        top: -68px;
        right: calc(100vw * 80 / 375 * -1);
    }
    #environment_area .inner .element .office ul li:nth-child(4) {
        width: calc(100vw * 200 / 375);
        aspect-ratio: 200 / 145;
        top: calc(100vw * 706 / 375);
        left: auto;
        right: calc(100vw * 10 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(5) {
        width: calc(100vw * 270 / 375);
        aspect-ratio: 270 / 175;
        top: calc(100vw * 840 / 375);
        left: calc(100vw * 52 / 375)
    }
    #environment_area .inner .element .office ul li:nth-child(5)::after {
        width: 240px;
        height: 25px;
        bottom: -12px;
        left: calc(100vw * 63 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(5)::before {
        width: calc(100vw * 127 / 375);
        height: calc(100vw * 122 / 375);
        top: -45px;
        left: calc(100vw * 52 / 375 * -1)
    }
    #environment_area .inner .element .office ul li:nth-child(6) {
        width: calc(100vw * 310 / 375);
        aspect-ratio: 310 / 160;
        top: calc(100vw * 1180 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(6)::after {
        width: 98px;
        height: 30px;
        top: -15px;
        left: calc(100vw * 35 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(6)::before {
        width: calc(100vw * 166 / 375);
        height: calc(100vw * 110 / 375);
        top: -55px;
        right: -30px;
    }
    #environment_area .inner .element .office ul li:nth-child(7) {
        width: calc(100vw * 175 / 375);
        aspect-ratio: 175 / 105;
        top: calc(100vw * 1398 / 375);
        left: calc(100vw * 68 / 375);
    }
    #environment_area .inner .element .office ul li:nth-child(8) {
        width: calc(100vw * 200 / 375);
        aspect-ratio: 200 / 135;
        top: calc(100vw * 1558 / 375);
        left: auto;
        right: 0;
    }
    #environment_area .inner .element .office ul li:nth-child(9) {
        width: calc(100vw * 250 / 375);
        aspect-ratio: 250 / 140;
        left: calc(100vw * 10 / 375)
    }
    #environment_area .inner .element .cafeteria {
        aspect-ratio: auto;
        padding: 0;
        margin: 100px 0 0 0;
    }
    #environment_area .inner .element .cafeteria figure.img01 {
        width: calc(100vw * 340 / 375);
        aspect-ratio: 340 / 230;
        position: relative;
    }
    #environment_area .inner .element .cafeteria figure.img01::after {
        width: 160px;
        height: 33px;
        bottom: auto;
        left: auto;
        top: -24px;
        right: 0;
    }
    #environment_area .inner .element .cafeteria figure.img02 {
        width: calc(100vw * 235 / 375);
        aspect-ratio: 235 / 165;
        position: static;
        margin: 0 0 0 35px;
    }
    #environment_area .inner .element .cafeteria .item {
        width: calc(100vw * 285 / 375);
        padding: 20px 10vw 20px 20px;
        margin: 0 0 0 auto;
        position: relative;
        top: -30px;
    }
    #environment_area .inner .element .cafeteria .item h4 {
        width: calc(100vw * 230 / 375);
    }
}