  @charset "utf-8";

/* ────────────────────── *
 *                                              *
 * ページ共通                                   *
 *                                              *
 * ────────────────────── */

/* 見出し */
#title {
    color: #fff;
    width: 100%;
    height: 55.0rem;
    box-sizing: border-box;
}
.culture-welfare #title {
    background: url("/saiyou/image/culture/welfare/mainvisual.jpg") no-repeat center center / cover;
}
.culture-dormitory #title {
    background: url("/saiyou/image/culture/dormitory/mainvisual.jpg") no-repeat center center / cover;
}
.culture-diversity #title {
    background: url("/saiyou/image/culture/diversity/mainvisual.jpg") no-repeat center center / cover;
}
#title .inner {
    text-align: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
#title .inner h1 {
    font-size: 4.5rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    margin-bottom: 2.0rem;
}
#title .inner p.en {
    font-family: "Manrope", sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.15em;
}

/* ダイバーシティを語る */
.culture-diversity #title .inner {
    text-align: left;
    padding-left: 7.067137809187279%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.culture-diversity #title .inner h1 {
    font-feature-settings: "palt" 1;
}
.culture-diversity #title .inner p.en {
    margin-bottom: 3.5rem;
}

/* コンテンツ枠 */
.contents {
    width: 100%;
}
.contents .inner {
    width: 108.0rem;
    margin: 0 auto;
}

/* ────────────────────── *
 *                                              *
 * 次のコンテンツ                               *
 *                                              *
 * ────────────────────── */

.contents #next-contents {
    background: rgb(91,52,66);
    background: -moz-linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    background: -webkit-linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    background: linear-gradient(-225deg, rgba(91,52,66,1) 0%, rgba(43,66,101,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#5b3442",endColorstr="#2b4265",GradientType=1);
    padding: 11.0rem 0;
}
.contents #next-contents .inner {
    width: 95.96412556053812%;
    max-width: 107.0rem;
    margin: 0 auto;
}
.contents #next-contents.three .inner {
    width: 96.8609865470852%;
    max-width: 108.0rem;
}
.contents #next-contents .inner h2 {
    font-family: "Manrope", sans-serif;
    font-size: 5.6rem;
    font-weight: 200;
    color: rgba(255, 255, 255, 0.1);
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 auto 5.0rem;
}
.contents #next-contents .inner #next-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.contents #next-contents .inner #next-list .list {
    background: #fff;
    width: 48.5981308411215%;
}
.contents #next-contents.three .inner #next-list .list {
    width: 31.77570093457944%;
}
.contents #next-contents .inner #next-list .list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.contents #next-contents .inner #next-list .list p.image {
    width: 50%;
    overflow: hidden;
}
.contents #next-contents.three .inner #next-list .list p.image {
    width: 44.11764705882353%;
}
.contents #next-contents .inner #next-list .list p.image img {
    transform: scale(1);
    opacity: 1;
    transition: opacity .5s, transform .5s;
}
.contents #next-contents .inner #next-list .list a:hover p.image img {
    transform: scale(1.1);
    opacity: 0.8;
}
.contents #next-contents .inner #next-list .list p.cname {
    font-size: 2.0rem;
    line-height: 1.272727272727273;
    width: 50%;
    padding-right: 2.0rem;
    box-sizing: border-box;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    transition: opacity .5s;
}
.contents #next-contents.three .inner #next-list .list p.cname {
    width: 55.88235294117647%;
}
.contents #next-contents .inner #next-list .list p.cname span.small {
    font-size: 1.6rem;
}
.contents #next-contents .inner #next-list .list a:hover p.cname {
    opacity: 0.8;
}
.contents #next-contents .inner #next-list .list p.cname::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #006de1;
    position: absolute;
    right: 2.0rem;
    top: 50%;
    transform: translateY(-50%);
}

/* ────────────────────── *
 *                                              *
 * 福利厚生制度                                 *
 *                                              *
 * ────────────────────── */

/* イントロ */
.culture-welfare .contents #intro {
    padding: 9.0rem 0 11.0rem;
}
.culture-welfare .contents #intro .inner {
    font-size: 2.4rem;
    line-height: 2;
    font-weight: 700;
    text-align: center;
    width: 96.0rem;
    margin: 0 auto;
}
.culture-welfare .contents .welfare {
    padding: 11.0rem 0;
}
.culture-welfare .contents .welfare.odd {
    background: #ebedf0;
}
.culture-welfare .contents .welfare .inner {
    width: 96.0rem;
    margin: 0 auto;
}
.culture-welfare .contents .welfare .inner h2 {
    font-size: 3.2rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 1.5rem;
}
.culture-welfare .contents .welfare .inner p.en {
    font-family: "Manrope", sans-serif;
    font-size: 1.4rem;
    font-weight: 600;
    color: #006ee1;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 9.0rem;
}
.culture-welfare .contents .welfare .inner h3 {
    font-size: 2.4rem;
    line-height: 1.66;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding-left: 2.0rem;
    margin-bottom: 4.0rem;
    position: relative;
}
.culture-welfare .contents .welfare .inner h3::before {
    content: "";
    background : -moz-linear-gradient(50% 100% 90deg,rgba(240, 40, 50, 1) 0%,rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(240, 40, 50, 1) ),color-stop(0.9996,rgba(0, 110, 225, 1) ));
    background : -o-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -ms-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#F02832', endColorstr='#006EE1' ,GradientType=0)";
    background : linear-gradient(0deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#006EE1',endColorstr='#F02832' , GradientType=0);
    width: 0.4rem;
    height: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.culture-welfare .contents .welfare .inner p.txt {
    font-size: 1.4rem;
    line-height: 2.14;
    margin-bottom: 6.0rem;
}
.culture-welfare .contents .welfare .inner ul.photo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.culture-welfare .contents .welfare .inner ul.photo li {
    width: 31.0rem;
}
.culture-welfare .contents .welfare .inner #example {
    background: #fff;
    text-align: center;
    padding: 11.0rem 6.0rem;
    margin: 12.0rem auto 0;
    position: relative;
}
.culture-welfare .contents .welfare .inner #example h4 {
    font-size: 1.6rem;
    line-height: 1.3125;
    font-weight: 700;
    border: 1px solid rgba(240, 40, 50, 1);
    border-image: linear-gradient(135deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    border-image-slice: 1;
    text-align: center;
    display: inline-block;
    margin-bottom: 3.5rem;
    position: absolute;
    left: 50%;
    top: -3.65rem;
    transform: translateX(-50%);
}
.culture-welfare .contents .welfare .inner #example h4::before {
    content: "";
    background: #fff;
    width: 3.0rem;
    height: 3.0rem;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
}
.culture-welfare .contents .welfare .inner #example h4::after {
    content: "";
    background : -moz-linear-gradient(50% 100% 90deg,rgba(240, 40, 50, 1) 0%,rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -webkit-gradient(linear,50% 100% ,50% 0% ,color-stop(0,rgba(240, 40, 50, 1) ),color-stop(0.9996,rgba(0, 110, 225, 1) ));
    background : -o-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    background : -ms-linear-gradient(90deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#F02832', endColorstr='#006EE1' ,GradientType=0)";
    background : linear-gradient(0deg, rgba(240, 40, 50, 1) 0%, rgba(0, 110, 225, 1) 99.96%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#006EE1',endColorstr='#F02832' , GradientType=0);
    width: 1px;
    height: 2.4rem;
    position: absolute;
    left: 50%;
    top: calc(100% - 0.6rem);
}
.culture-welfare .contents .welfare .inner #example h4 span {
    background: rgba(235, 237, 240, 0.5);
    height: 7.3rem;
    padding: 0 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.culture-welfare .contents .welfare .inner #example h5 {
    font-size: 2.3rem;
    color: #fff;
    background: #006ee1;
    letter-spacing: 0.1em;
    text-align: center;
    padding: 0.8rem;
    margin-bottom: 5.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex {
    margin: 0 auto 10.0rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.culture-welfare .contents .welfare .inner #example .flex:last-of-type {
    margin: 0 auto;
}
.culture-welfare .contents .welfare .inner #example .flex .left {
    text-align: left;
    width: 43.5rem;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dt {
    font-size: 2.0rem;
    line-height: 1.6;
    color: #363746;
    font-weight: 700;
    padding-bottom: 2.0rem;
    margin-bottom: 2.0rem;
    border-bottom: 1px solid #363746;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd {
    font-size: 1.6rem;
    line-height: 1.875;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd dl.equipment {
    margin-top: 5.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd dl.equipment dt {
    font-size: 1.6rem;
    font-weight: 700;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd dl.equipment dt::before {
    content: "■";
    font-size: 1.0rem;
    color: rgba(0, 110, 225, 0.9);
    vertical-align: 0.2rem;
    margin-right: 1.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd dl.equipment dd {
    font-size: 1.4rem;
    line-height: 1.78;
    font-feature-settings: "palt" 1;
}
.culture-welfare .contents .welfare .inner #example .flex .left > dl > dd dl.equipment dd + dt {
    margin-top: 4.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex .right {
    width: 33.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex .right ul li {
    margin-bottom: 1.0rem;
}
.culture-welfare .contents .welfare .inner #example .flex .right ul li:last-child {
    margin-bottom: 0;
}

.culture-welfare .contents .welfare .inner ul#childcare {
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 700;
    color: #006ee1;
    text-align: center;
    width: 100%;
    margin: 7.5rem auto 6.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.culture-welfare .contents .welfare .inner ul#childcare li {
    background: #f2f8fd;
    width: 46.5rem;
    height: 13.5rem;
    margin-bottom: 3.0rem;
    border: 1px solid #363746;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.culture-welfare .contents .welfare .inner ul#childcare li:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.culture-welfare .contents .welfare .inner ul#childcare li span.notice {
    font-size: 1.4rem;
    font-weight: 400;
    color: #363746;
}

.culture-welfare .contents .welfare .inner ul#nursery {
    margin: 0 auto 6.0rem;
}

.culture-welfare .contents .welfare .inner #nadeshiko {
    background: #ebedf0;
    padding: 5.0rem 8.0rem;
    margin: 0 auto 6.0rem;
}
.culture-welfare .contents .welfare .inner #nadeshiko dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.culture-welfare .contents .welfare .inner #nadeshiko dl dt {
    font-size: 1.8rem;
    line-height: 2.22;
    font-weight: 700;
    color: #363746;
}
.culture-welfare .contents .welfare .inner #nadeshiko dl dd {
    width: 35.0rem;
}

.culture-welfare .contents .welfare .inner ul.documents {
    font-size: 1.4rem;
    text-decoration: underline;
    text-align: center;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.culture-welfare .contents .welfare .inner ul.documents li {
    width: 46.5rem;
    height: 11.5rem;
    border: 1px solid #363746;
    box-sizing: border-box;
}
.culture-welfare .contents .welfare .inner ul.documents li a {
    width: 100%;
    height: 100%;
    transition: background .5s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.culture-welfare .contents .welfare .inner ul.documents li a:hover {
    background: #f2f8fd;
}
.culture-welfare .contents .welfare .inner ul.documents li span.icon {
    display: inline-block;
    padding-right: 7.0rem;
    position: relative;
}
.culture-welfare .contents .welfare .inner ul.documents li span.icon::after {
    content: "";
    background: url("/saiyou/image/culture/welfare/icon-pdf@2x.png") no-repeat center center / cover;
    width: 5.2rem;
    height: 6.4rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

/* ────────────────────── *
 *                                              *
 * 独身寮紹介                                   *
 *                                              *
 * ────────────────────── */

/* イントロ */
.culture-dormitory .contents #intro {
    padding: 9.0rem 0 11.0rem;
}
.culture-dormitory .contents #intro .inner {
    text-align: center;
    width: 96.0rem;
    margin: 0 auto;
}
.culture-dormitory .contents #intro .inner p {
    font-size: 1.7rem;
    line-height: 2.23;
    font-weight: 500;
}
.culture-dormitory .contents #intro .inner dl#name {
    background: #e5f0fc;
    width: 72.0rem;
    padding: 6.0rem;
    margin: 8.0rem auto 0;
    border: 1px solid #363746;
    box-sizing: border-box;
}
.culture-dormitory .contents #intro .inner dl#name dt {
    font-size: 2.8rem;
    font-weight: 700;
    color: #006ee1;
    letter-spacing: 0.08em;
    padding-bottom: 3.0rem;
    margin-bottom: 3.0rem;
    border-bottom: 1px solid #72737d;
}
.culture-dormitory .contents #intro .inner dl#name dd {
    font-size: 1.6rem;
    line-height: 1.875;
}
.culture-dormitory .contents h2 {
    width: 100%;
    max-width: 66.2rem;
    margin: 0 auto -4.1rem;
    position: relative;
    z-index: 2;
}
.culture-dormitory .contents .dormitory {
    background: #eaebee url("../../image/culture/dormitory/bg-dormitory.png") no-repeat top center / contain;
    padding: 10.0rem 0 14.0rem;
    overflow: hidden;
}
.culture-dormitory .contents .dormitory .inner {
    width: 108.0rem;
    margin: 0 auto;
}
.culture-dormitory .contents .dormitory .inner .detail {
    padding: 9.0rem;
    margin-bottom: 7.0rem;
    position: relative;
    z-index: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.culture-dormitory .contents .dormitory .inner .detail:last-of-type {
    margin-bottom: 0;
}
.culture-dormitory .contents .dormitory .inner .detail.even {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.culture-dormitory .contents .dormitory .inner .detail::before {
    content: "";
    background: #fff;
    width: 100%;
    height: 100%;
    border-radius: 1.0rem;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    filter: drop-shadow(0.5rem 0.5rem 0.3rem rgba(0,0,0,0.1));
}
.culture-dormitory .contents .dormitory .inner .detail dl {
    width: 35.0rem;
}
.culture-dormitory .contents .dormitory .inner .detail dl dt {
    font-size: 3.2rem;
    line-height: 1.5625;
    font-weight: 500;
    font-feature-settings: "palt";
    color: #363746;
    letter-spacing: 0.08em;
    white-space: nowrap;
    padding: 0.25rem 2.5rem;
    margin-bottom: 4.0rem;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.culture-dormitory .contents .dormitory .inner .detail dl dt::before {
    content: "";
    width: 0.5rem;
    height: 5.5rem;
    position: absolute;
    left: 0;
    top: 0;
}
.culture-dormitory .contents .dormitory .inner .detail.odd dl dt::before {
    background: #006ee1;
}
.culture-dormitory .contents .dormitory .inner .detail.even dl dt::before {
    background: #f02832;
}
.culture-dormitory .contents .dormitory .inner .detail dl dt span.en {
    font-family: "Manrope", sans-serif;
    font-size: 2.0rem;
    line-height: 2.5;
    font-weight: 800;
    letter-spacing: normal;
    vertical-align: 0.6rem;
    display: inline-block;
    margin-right: 1.5rem;
}
.culture-dormitory .contents .dormitory .inner .detail.odd dl dt span.en {
    color: #006ee1;
}
.culture-dormitory .contents .dormitory .inner .detail.even dl dt span.en {
    color: #f02832;
}
.culture-dormitory .contents .dormitory .inner .detail dl dd {
    font-size: 1.6rem;
    line-height: 1.875;
    text-align: justify;
}
.culture-dormitory .contents .dormitory .inner .detail p.image {
    width: 48.0rem;
    position: relative;
    z-index: 0;
}
.culture-dormitory .contents .dormitory .inner .detail p.image::before {
    content: "";
    background: rgba(245, 245, 246, 0.9);
    width: 10.0rem;
    height: 10.0rem;
    position: absolute;
    top: -3.0rem;
    z-index: -1;
}
.culture-dormitory .contents .dormitory .inner .detail.odd p.image::before {
    left: -3.0rem;
}
.culture-dormitory .contents .dormitory .inner .detail.even p.image::before {
    right: -3.0rem;
}
.culture-dormitory .contents .dormitory .inner .detail p.image::after {
    content: "";
    width: 10.0rem;
    height: 10.0rem;
    position: absolute;
    bottom: -4.0rem;
    z-index: 1;
}
.culture-dormitory .contents .dormitory .inner .detail.odd p.image::after {
    background: rgba(242, 248, 253, 0.9);
    right: -4.0rem;
}
.culture-dormitory .contents .dormitory .inner .detail.even p.image::after {
    background: rgba(254, 244, 245, 0.9);
    left: -4.0rem;
}
.culture-dormitory .contents .dormitory .inner .detail p.comment {
    font-size: 1.5rem;
    line-height: 1.66;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 20.4rem;
    height: 20.4rem;
    position: absolute;
    top: -5.4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.culture-dormitory .contents .dormitory .inner .detail.odd p.comment {
    background: url("/saiyou/image/culture/dormitory/bg-comment-odd.png") no-repeat center center / cover;
    right: -5.4rem;
}
.culture-dormitory .contents .dormitory .inner .detail.even p.comment {
    background: url("/saiyou/image/culture/dormitory/bg-comment-even.png") no-repeat center center / cover;
    left: -5.4rem;
}
.culture-dormitory .contents .dormitory .inner p.notice {
    font-size: 1.7rem;
    line-height: 2;
    text-align: center;
    margin: 9.0rem auto 0;
}


/* ────────────────────── *
 *                                              *
 * ダイバーシティを語る                         *
 *                                              *
 * ────────────────────── */

/* イントロ */
.culture-diversity .contents #intro {
    padding: 7.0rem 0;
}
.culture-diversity .contents #intro .inner {
    font-size: 1.6rem;
    line-height: 1.875;
    width: 84.0rem;
    margin: 0 auto;
}
.culture-diversity .contents #intro .inner p {
    text-align: justify;
}

/* メンバー */
.culture-diversity .contents #member {
    background: #eaebee;
    padding: 8.0rem 0 20.0rem;
}
.culture-diversity .contents #member .inner {
    width: 84.0rem;
}
.culture-diversity .contents #member .inner .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.culture-diversity .contents #member .inner .flex .item {
    width: 25.0rem;
}
.culture-diversity .contents #member .inner .flex .item p.head {
    font-size: 1.4rem;
    font-weight: 500;
    text-align: center;
    padding: 13px;
    margin: 0 auto 4.0rem;
    position: relative;
    border: 1px solid rgba(54, 55, 70, 0.9);
}
.culture-diversity .contents #member .inner .flex .item p.head::before {
    content: "";
    background: #ebecef;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 50%;
    bottom: -1.2rem;
    transform: translateX(-50%);
}
.culture-diversity .contents #member .inner .flex .item p.head::after {
    content: "";
    background: rgba(54, 55, 70, 0.9);
    width: 1px;
    height: 20px;
    position: absolute;
    left: 50%;
    bottom: -1.5rem;
    z-index: 1;
}
.culture-diversity .contents #member .inner .flex .item .profile p.image {
    width: 14.0rem;
    margin: 0 auto 1.5rem;
    position: relative;
}
.culture-diversity .contents #member .inner .flex .item .profile p.image span.division {
    font-size: 1.7rem;
    font-weight: 500;
    color: #fff;
    text-align: center;
    display: block;
    width: 11.0rem;
    padding: 0.6rem;
    box-sizing: border-box;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}
.culture-diversity .contents #member .inner .flex .item.officework .profile p.image span.division {
    background: rgba(240, 40, 50, 0.9);
}
.culture-diversity .contents #member .inner .flex .item.technology .profile p.image span.division {
    background: rgba(0, 110, 225, 0.9);
}
.culture-diversity .contents #member .inner .flex .item .profile dl {
    text-align: center;
}
.culture-diversity .contents #member .inner .flex .item .profile dl dt {
    font-size: 1.8rem;
    margin-bottom: 1.0rem;
}
.culture-diversity .contents #member .inner .flex .item .profile dl dt span.join {
    font-size: 1.1rem;
    vertical-align: 0.2rem;
    display: inline-block;
    margin-left: 1.0rem;
}
.culture-diversity .contents #member .inner .flex .item .profile dl dd {
    font-size: 1.4rem;
    line-height: 1.5;
}

/* ターム */
.culture-diversity .contents .term {
    background: #fff;
    width: 108.0rem;
    padding: 7.0rem 0 1.0rem;
    margin: 0 auto;
    position: relative;
    top: -10.0rem;
}
.culture-diversity .contents .term.last {
    padding: 7.0rem 0 6.5rem;
}
.culture-diversity .contents .term p.subtitle {
    position: absolute;
    top: 0;
    z-index: 1;
}
.culture-diversity .contents .term.odd p.subtitle {
    right: 0;
}
.culture-diversity .contents .term.even p.subtitle {
    left: 0;
}
.culture-diversity .contents .term p.subtitle img {
    width: auto;
    height: 12.2rem;
}

.culture-diversity .contents .term h2 {
    font-size: 3.6rem;
    font-feature-settings: "palt" 1;
    color: #fff;
    letter-spacing: 0.04em;
    margin-bottom: 7.0rem;
    position: relative;
    z-index: 2;
}
.culture-diversity .contents .term.even h2 {
    text-align: right;
}
.culture-diversity .contents .term h2 span.line-pc {
    display: inline-block;
    padding: 1.2rem;
}
.culture-diversity .contents .term.odd h2 span.line-pc {
    background: rgba(0, 110, 225, 0.9);
}
.culture-diversity .contents .term.even h2 span.line-pc {
    background: rgba(240, 40, 50, 0.9);
}

.culture-diversity .contents p.image-full {
    width: 100%;
}
.culture-diversity .contents p.image-full img {
    width: 100%;
}

.culture-diversity .contents .term .talk {
    width: 84.0rem;
    margin: 0 auto;
}
.culture-diversity .contents .term .talk dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3.5rem;
}
.culture-diversity .contents .term .talk dl:last-of-type {
    margin-bottom: 0;
}
.culture-diversity .contents .term .talk dl dt {
    font-size: 1.4rem;
    font-weight: 500;
    width: 8.0rem;
    position: relative;
    flex-shrink: 0;
}
.culture-diversity .contents .term .talk dl.m1 dt {
    background: url("/saiyou/image/culture/diversity/image-member-01.png") no-repeat left top / contain;
}
.culture-diversity .contents .term .talk dl.m2 dt {
    background: url("/saiyou/image/culture/diversity/image-member-02.png") no-repeat left top / contain;
}
.culture-diversity .contents .term .talk dl.m3 dt {
    background: url("/saiyou/image/culture/diversity/image-member-03.png") no-repeat left top / contain;
}
.culture-diversity .contents .term .talk dl dt span {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
}
.culture-diversity .contents .term .talk dl dd {
    font-size: 1.6rem;
    line-height: 1.875;
    text-align: justify;
    width: calc(100% - 10.0rem);
    margin-top: 2.0rem;
    box-sizing: border-box;
}
.culture-diversity .contents .term .talk dl dd .fukidashi {
    background: #eaebee;
    display: inline-block;
    max-width: 54.0rem;
    padding: 2.2rem 3.0rem;
    box-sizing: border-box;
    position: relative;
}
.culture-diversity .contents .term .talk dl dd .fukidashi::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    position: absolute;
    top: 2.0rem;
}

/* 奇数 */
.culture-diversity .contents .term .talk dl.odd {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.culture-diversity .contents .term .talk dl.odd dt {
    margin-right: 2.0rem;
}
.culture-diversity .contents .term .talk dl.odd dt span {
    left: 10.0rem;
}
.culture-diversity .contents .term .talk dl.odd dd {
    padding-right: 10.0rem;
}
.culture-diversity .contents .term .talk dl.odd dd .fukidashi::before {
    border-width: 0.75rem 1.0rem 0.75rem 0;
    border-color: transparent #eaebee transparent transparent;
    right: 100%;
}

/* 偶数 */
.culture-diversity .contents .term .talk dl.even {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.culture-diversity .contents .term .talk dl.even dt {
    margin-left: 2.0rem;
}
.culture-diversity .contents .term .talk dl.even dt span {
    text-align: right;
    right: 10.0rem;
}
.culture-diversity .contents .term .talk dl.even dd  {
    padding-left: 10.0rem;
}
.culture-diversity .contents .term .talk dl.even dd .fukidashi {
    float: right;
}
.culture-diversity .contents .term .talk dl.even dd .fukidashi::before {
    border-width: 0.75rem 0 0.75rem 1.0rem;
    border-color: transparent transparent transparent #eaebee;
    left: 100%;
}
