@charset "utf-8";

/* page_txt */
.page_txt {
    font-weight: 700;
}
@media (min-width: 769px) {
    .page_txt_wrap {
        margin-top: 43rem;
    }
    .page_txt {
        font-size: 24px;
        line-height: 1.8;
    }
}
@media (max-width: 768px) {
    .page_txt_wrap {
        margin-top: 33rem;
    }
    .page_txt {
        font-size: 18rem;
        line-height: 1.8;
    }
}

/* floor_guide */
.floor_guide_box {
    display: flex;
}
.culture_ttl {
    background-color: var(--color-white);
    color: var(--color-red);
    border: 2px solid var(--color-red);
    line-height: 1.77;
    display: inline-block;
    font-weight: 900;
}
.culture_txt {
    font-weight: 700;
}
.floor_guide_list {
    display: flex;
    flex-wrap: wrap;
}
.floor_guide_item_name {
    display: flex;
}
.floor_guide_item_name > .dot {
    height: calc(1em * 1.77);
    display: flex;
    align-items: center;
}
.floor_guide_item_name > .dot::before {
    content: '';
    display: block;
    border-radius: 50%;
    background: var(--color-red);
}
.floor_guide_ttl {
    font-weight: 700;
    display: flex;
    border-bottom: 1px solid var(--color-red);
}
.floor_guide_ttl > .dot {
    height: calc(1em * 1.77);
    display: flex;
    align-items: center;
}
.floor_guide_ttl > .dot::before {
    content: '';
    display: block;
    border-radius: 50%;
    background: var(--color-red);
}
.floor_guide_txt {
    font-weight: 700;
}
.floor_guide_btn_wrap {
    display: flex;
}
.floor_guide_btn {
    background: var(--color-white);
    color: var(--color-red);
    display: flex;
    align-items: center;
    position: relative;
}
.floor_guide_btn_arrow {
    position: absolute;
}
.floor_guide_btn_arrow_path {
    stroke: var(--color-red);
}
@media (min-width: 769px) {
    .floor_guide {
        margin-top: 88rem;
    }
    .floor_guide_box {
        gap: 50rem;
    }
    .floor_guide_box_left {
        width: 680rem;
    }
    .floor_guide_box_right {
        width: 432rem;
        margin-top: -89rem;
    }
    .culture_ttl {
        padding: 3rem 13rem;
        font-size: 32rem;
        line-height: 1.51;
        letter-spacing: 0.05em;
    }
    .culture_txt {
        font-size: 18px;
        line-height: 1.8;
        margin-top: 20rem;
    }
    .floor_guide_list {
        margin-top: 97rem;
        gap: 45rem 30rem;
    }
    .floor_guide_list > li {
        width: 324rem;
    }
    .floor_guide_item_name {
        gap: 10px;
        font-size: 21px;
        line-height: 1.77;
    }
    .floor_guide_item_name > .dot {
        height: calc(1em * 1.77);
    }
    .floor_guide_item_name > .dot::before {
        width: 8px;
        height: 8px;
    }
    .floor_guide_item_img_wrap {
        margin-top: 15rem;
    }
    .floor_guide_ttl {
        font-size: 21px;
        line-height: 1.77;
    }
    .floor_guide_ttl {
        gap: 10px;
        font-size: 21px;
        line-height: 1.77;
        padding-bottom: 7px;
        margin-top: 100rem;
    }
    .floor_guide_ttl > .dot {
        height: calc(1em * 1.77);
    }
    .floor_guide_ttl > .dot::before {
        width: 8px;
        height: 8px;
    }
    .floor_guide_txt {
        font-size: 16px;
        line-height: 1.8;
        margin-top: 30rem;
    }
    .floor_guide_btn_wrap {
        margin-top: 30rem;
    }
    .floor_guide_btn {
        border: 2rem solid var(--color-red);
        font-size: 18rem;
        letter-spacing: 0.05em;
        line-height: 1.2;
        width: 412rem;
        padding: 18rem 93rem 18rem 20rem;
    }
    .floor_guide_btn_arrow {
        width: 64rem;
        top: 50%;
        right: 20rem;
        translate: 0 -50%;
    }
    @media (hover: hover) {
        .btn_anime_txt {
            overflow: hidden;
            display: inline-block;
        }
    }
}
@media (max-width: 768px) {
    .floor_guide {
        margin-top: 99rem;
    }
    .floor_guide_box {
        flex-direction: column;
        gap: 50rem;
    }
    .floor_guide_box_right {
        margin-top: 109rem;
    }
    .culture_ttl {
        padding: 3rem 13rem;
        font-size: 28rem;
        line-height: 1.51;
        letter-spacing: 0.05em;
    }
    .culture_txt {
        font-size: 16rem;
        line-height: 1.8;
        margin-top: 20rem;
    }
    .floor_guide_list {
        margin-top: 46rem;
        gap: 42rem 15rem;
    }
    .floor_guide_list > li {
        width: 160rem;
    }
    .floor_guide_item_name {
        gap: 10rem;
        font-size: 14rem;
        line-height: 1.77;
    }
    .floor_guide_item_name > .dot {
        height: calc(1em * 1.77);
    }
    .floor_guide_item_name > .dot::before {
        width: 8px;
        height: 8px;
    }
    .floor_guide_item_img_wrap {
        margin-top: 15rem;
    }
    .floor_guide_ttl {
        font-size: 21px;
        line-height: 1.77;
    }
    .floor_guide_ttl {
        gap: 10rem;
        font-size: 18rem;
        line-height: 1.77;
        padding-bottom: 8rem;
        margin-top: 105rem;
    }
    .floor_guide_ttl > .dot {
        height: calc(1em * 1.77);
    }
    .floor_guide_ttl > .dot::before {
        width: 8px;
        height: 8px;
    }
    .floor_guide_txt {
        font-size: 14rem;
        line-height: 1.8;
        margin-top: 20rem;
    }
    .floor_guide_btn_wrap {
        margin-top: 39rem;
    }
    .floor_guide_btn {
        border: 2rem solid var(--color-red);
        font-size: 18rem;
        letter-spacing: 0.05em;
        line-height: 1.2;
        padding: 7rem 143rem 6rem 18rem;
    }
    .floor_guide_btn_arrow {
        width: 64rem;
        top: 50%;
        right: 20rem;
        translate: 0 -50%;
    }
}

/* img_area_list */
.img_area_list {
    display: flex;
}
.img_area_list > li {
    position: relative;
    flex: 1;
}
.img_area_list {
    display: flex;
}
.img_area_item_1 {
    background: url(../img/culture_office/img_area_item_1.jpg) no-repeat 50% 50% / cover;
}
.img_area_item_2 {
    background: url(../img/culture_office/img_area_item_2.jpg) no-repeat 50% 50% / cover;
}
.img_area_item_3 {
    background: url(../img/culture_office/img_area_item_3.jpg) no-repeat 50% 50% / cover;
}
.img_area_item_4 {
    background: url(../img/culture_office/img_area_item_4.jpg) no-repeat 50% 50% / cover;
}
.img_area_item_5 {
    background: url(../img/culture_office/img_area_item_5.jpg) no-repeat 50% 50% / cover;
}
.img_area_item_6 {
    background: url(../img/culture_office/img_area_item_6.jpg) no-repeat 50% 50% / cover;
}
.img_area_list > li > p {
    position: absolute;
    color: #fff;
    text-align: center;
    width: 100%;
    left: 0;
    font-weight: 500;
}
@media (min-width: 769px) {
    .img_area_list_1 {
        margin-top: 70rem;
    }
    .img_area_list_2 {
        margin-top: 50rem;
    }
    .img_area_list > li {
        padding-top: 520rem;
    }
    .img_area_list > li > p {
        bottom: 28rem;
        font-size: 25px;
        line-height: 1.3;
    }
}
@media (max-width: 768px) {
    .img_area_list_1 {
        margin-top: 76rem;
    }
    .img_area_list_2 {
        margin-top: 30rem;
    }
    .img_area_list > li {
        padding-top: 230rem;
    }
    .img_area_list > li > p {
        bottom: 10rem;
        font-size: 12rem;
        line-height: 1.3;
    }
}

/* working_style */
.working_style {
}
@media (min-width: 769px) {
    .working_style {
        margin-top: 110rem;
    }
}
@media (max-width: 768px) {
    .working_style {
        margin-top: 110rem;
    }
}

/* culture_box */
.culture_box {
    background: var(--color-white);
}
.culture_box_ttl {
    font-weight: 700;
}
.culture_box_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.culture_box_list > li {
    background: var(--color-gray);
    overflow: hidden;
    position: relative;
}
.culture_box_item_num {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color-red);
    color: var(--color-white);
    font-weight: 700;
}
.culture_box_list > li > dl > dt {
    color: var(--color-red);
    text-align: center;
    font-weight: 700;
}
.culture_box_list > li > dl > dd {
    text-align: center;
    font-weight: 700;
}
@media (min-width: 769px) {
    .culture_box {
        margin-top: 70rem;
        padding: 50rem 45rem 40rem;
    }
    .culture_box_ttl {
        font-size: 32px;
        line-height: 1.3;
        border-bottom: 2px solid var(--color-gray);
        padding-bottom: 28px;
    }
    .culture_img {
        margin: 54rem 30rem 68rem;
    }
    .culture_box_list {
        gap: 30rem;
    }
    .culture_box_list > li {
        border-radius: 8px;
        padding: 40rem 20rem;
        min-width: 336rem;
    }
    .culture_box_item_num {
        width: 38rem;
        height: 38rem;
        font-size: 22rem;
        line-height: 1.3;
        letter-spacing: 0%;
    }
    .culture_box_list > li > dl > dt {
        font-size: 24px;
        line-height: 1.3;
    }
    .culture_box_list > li > dl > dd {
        font-size: 18px;
        line-height: 1.8;
        margin-top: 30rem;
    }
}
@media (max-width: 768px) {
    .culture_box {
        margin-top: 73rem;
        padding: 52rem 30rem 50rem;
    }
    .culture_box_ttl {
        font-size: 24rem;
        line-height: 1.3;
        border-bottom: 2rem solid var(--color-gray);
        padding-bottom: 18rem;
    }
    .culture_img {
        margin: 20rem 0rem 18rem;
    }
    .culture_box_list {
        gap: 20rem;
    }
    .culture_box_list > li {
        border-radius: 8px;
        padding: 42rem 20rem;
        width: 100%;
    }
    .culture_box_item_num {
        width: 44px;
        height: 44px;
        font-size: 25px;
        line-height: 1.3;
        letter-spacing: 0%;
    }

    .culture_box_list > li > dl > dt {
        font-size: 18rem;
        line-height: 1.3;
    }
    .culture_box_list > li > dl > dd {
        font-size: 14rem;
        line-height: 1.8;
        margin-top: 10rem;
    }
}

/* working_style */
.working_style_box {
    background: var(--color-white);
}
.working_style_box_ttl {
    text-align: center;
    color: var(--color-red);
    font-weight: 700;
}
.working_style_box_txt {
    text-align: center;
    color: var(--color-black);
    font-weight: 700;
}
.working_style_box_list {
    display: flex;
    justify-content: center;
}
.working_style_box_list > li {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.working_style_box_list > li:nth-child(1)::before {
    background: url(../img/culture_office/circle.svg) no-repeat 50% 50% / contain;
}
.working_style_box_list > li:nth-child(2)::before {
    background: url(../img/culture_office/circle_center.svg) no-repeat 50% 50% / contain;
}
.working_style_box_list > li:nth-child(3)::before {
    background: url(../img/culture_office/circle.svg) no-repeat 50% 50% / contain;
}
.working_style_box_list > li::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.working_style_box_list > li > dl > dt {
    text-align: center;
    color: var(--color-red);
    font-weight: 700;
}
.working_style_box_list > li > dl > dd {
    color: var(--color-black);
    text-align: center;
    font-weight: 700;
}
@media (min-width: 769px) {
    .working_style {
        margin-top: 180rem;
    }
    .working_style_box {
        margin-top: 80rem;
        padding: 56rem 40rem;
    }
    .working_style_box_list {
        margin-top: 32rem;
    }
    .working_style_box_list > li {
        width: 363rem;
        height: 362rem;
    }
    .working_style_box_list > li:nth-child(1)::before {
        rotate: 0deg;
    }
    .working_style_box_list > li:nth-child(2)::before {
        rotate: 0deg;
    }
    .working_style_box_list > li:nth-child(3)::before {
        rotate: 120deg;
    }
    .working_style_box_list > li + li {
        margin-left: -55rem;
    }
    .working_style_box_ttl {
        font-size: 38px;
        line-height: 1.3;
    }
    .working_style_box_txt {
        font-size: 22px;
        line-height: 1.8;
        margin-top: 12rem;
    }
    .working_style_box_list > li > dl > dt {
        font-size: 33rem;
        line-height: 1.3;
    }
    .working_style_box_list > li > dl > dd {
        font-size: 18rem;
        line-height: 1.8;
        margin-top: 17rem;
    }
    .working_style_box_bottom {
        margin-top: 180px;
    }
}
@media (max-width: 768px) {
    .working_style {
        margin-top: 78rem;
    }
    .working_style_box {
        margin-top: 80rem;
        padding: 50rem 30rem;
    }
    .working_style_box_ttl {
        font-size: 24rem;
        line-height: 1.8;
    }
    .working_style_box_txt {
        font-size: 15rem;
        line-height: 1.8;
        margin-top: 10rem;
    }
    .working_style_box_list {
        margin-top: 30rem;
        flex-direction: column;
    }
    .working_style_box_list > li {
        width: 220rem;
        height: 220rem;
        margin-inline: auto;
    }
    .working_style_box_list > li:nth-child(1)::before {
        rotate: 90deg;
    }
    .working_style_box_list > li:nth-child(2)::before {
        rotate: 88deg;
    }
    .working_style_box_list > li:nth-child(3)::before {
        rotate: 212deg;
    }
    .working_style_box_list > li + li {
        margin-top: -30rem;
    }
    .working_style_box_list > li > dl > dt {
        font-size: 25rem;
        line-height: 1.3;
    }
    .working_style_box_list > li > dl > dd {
        font-size: 12rem;
        line-height: 1.8;
        margin-top: 8rem;
    }
    .working_style_box_bottom {
        margin-top: 116rem;
    }
}

/* cafeteria */
.cafeteria_box {
    display: flex;
}
.cafeteria_box_txt {
    font-weight: 700;
}
@media (min-width: 769px) {
    .cafeteria {
        margin-top: 180rem;
    }
    .cafeteria_box {
        margin-top: 34rem;
    }
    .cafeteria_box_logo_wrap {
        width: 160rem;
        margin-left: 50rem;
        margin-right: 40rem;
    }
    .cafeteria_box_txt_wrap {
        width: 440rem;
        margin-top: -6rem;
    }
    .cafeteria_box_txt {
        font-size: 18px;
        line-height: 1.8;
    }
    .cafeteria_box_img_wrap {
        margin-left: 70rem;
    }
    .cafeteria_box_img {
        width: 400rem;
        margin-top: -13rem;
    }
    @media (max-width: 1000px) {
        .cafeteria_box_logo_wrap {
            margin-left: 0;
        }
        .cafeteria_box_txt_wrap {
            width: auto;
            flex: 1;
        }
        .cafeteria_box_img_wrap {
            display: none;
        }
    }
}
@media (max-width: 768px) {
    .cafeteria {
        margin-top: 100rem;
    }
    .cafeteria_box {
        margin-top: 40rem;
        flex-direction: column;
    }
    .cafeteria_box_logo_wrap {
        width: 160rem;
        margin-inline: auto;
    }
    .cafeteria_box_txt_wrap {
        margin-top: 50rem;
    }
    .cafeteria_box_txt {
        font-size: 14rem;
        line-height: 1.8;
    }
    .cafeteria_box_img_wrap {
        margin-top: 50rem;
    }
    .cafeteria_box_img {
        width: 400rem;
        margin-top: -13rem;
    }
}

.link_circle_list_1 {
    --link-circle-color: var(--color-blue);
}
.link_circle_list_1 .link_circle::before {
    background: var(--gradation-3);
}
.link_circle_list_2 {
    --link-circle-color: var(--color-purple);
}
.link_circle_list_2 .link_circle::before {
    background: var(--gradation-7);
}
.link_circle_list_3 {
    --link-circle-color: var(--color-pink);
}
.link_circle_list_3 .link_circle::before {
    background: var(--gradation-1);
}
@media (min-width: 769px) {
    .links_list {
        margin-top: 180rem;
    }
    .btn_back_wrap {
        margin-top: 140rem;
    }
}
@media (max-width: 768px) {
    .section_ttl_en {
        letter-spacing: 0em;
    }
    .links_list {
        margin-top: 120rem;
    }
    .btn_back_wrap {
        margin-top: 149rem;
    }
    br + .link_circle_label {
        margin-left: -16rem;
    }
}
