@charset "utf-8";
/* CSS Document */


/* ========================================================

　.recruitments／採用情報

=========================================================== */

#recruitments main img {
    width: 100%;
    height: auto;
    margin: 0 auto;
}

/* スクロールメニュー */
#recruitments .scroll-menu {
    margin-top: 0;
    margin-bottom: 0;
}

@media (max-width: 575.98px) {

    #recruitments .scroll-menu ul {
        display: inline;
        width: auto;
        text-align: center;
    }

    #recruitments .scroll-menu li {
        display: inline-block;
        width: 18.0rem; /* スクロールメニュー幅、絶対値 */
    }

    #recruitments .scroll-menu li:nth-of-type(2) {
        border-right: none;
    }

    #recruitments .scroll-menu li:nth-of-type(n+4) {
        margin-top: 2.0rem;
    }

}

@media (min-width: 768px) {

    #recruitments .scroll-menu li:nth-of-type(n+1) {
        width: min(25.0vw, 27.0rem);
    }

}

/* more */
#recruitments section:nth-of-type(n+2) .more-btn {
    margin-top: 4.0rem;
}

@media (min-width: 992px) {

    #recruitments section:nth-of-type(n+2) .more-btn {
        margin-top: 8.8rem;
    }

}

/*　イントロダクション
----------------------------------------------------------- */
#recruitments #sec00 {
    padding-top: 0;
    padding-bottom: min(10.0vw, 11.0rem);
    font-family: var(--kaku-font);
}

/* 画像領域 */
#recruitments #sec00 .wrapper > div:first-of-type {
    position: relative;
    text-align: right;
}

/* 右端の背景色 */
#recruitments #sec00 .background {
    display: inline-block;
    width: 30.0vw;
    height: 80.0vw;
    margin-right: 0;
    background-color: rgba(192, 218, 251, 1.00);
}

/* イメージ写真 */
#recruitments #sec00 img {
    position: absolute;
    inset: 18.0% 0 auto auto;
    width: auto;
    height: 55.0vw;
    aspect-ratio: 213 / 148;
}

/* 見出し領域 */
#recruitments #sec00 .wrapper > div:last-of-type {
    margin-top: min(10.0vw, 4.0rem);
    padding: 0 3.5vw;
}

/* 見出し */
#recruitments #sec00 h2 {
    margin-bottom: min(4.16666vw, 2.4rem);
    color: rgba(126, 126, 126, 1.00);
    font-size: min(7.0vw, 3.0rem);
    font-weight: 700;
    text-align: left;
    line-height: min(8.71794vw, 3.4rem);
    letter-spacing: 6.0%;
}

#recruitments #sec00 h2 span {
    color: var(--corp-color); /* 「価値」 */
}

/* キャッチ */
#recruitments #sec00 h3 {
    color: rgba(129, 129, 129, 1.00);
    font-size: min(4.5vw, 2.0rem);
    text-align: left;
    line-height: min(7.6923vw, 3.0rem);
    letter-spacing: 6.0%;
}

/* テキスト */
#recruitments #sec00 .container {
    margin-top: min(10.0vw, 4.0rem);
}

/* テキスト */
#recruitments #sec00 .container p {
    color: var(--gray-color1);
    font-weight: 700;
    text-align: justify;
    line-height: 3.0rem;
}

/* more（位置調整） */
#recruitments #sec00 .more-btn {
    margin: min(10.0vw, 3.0rem) auto;
}

@media (min-width: 576px) {

    /* 見出し領域 */
    #recruitments #sec00 .wrapper > div:last-of-type {
        margin-top: 0;
    }

    /* スクロールメニュー */
    #recruitments .scroll-menu li:nth-of-type(1) {
        width: 22.0%;
    }

    #recruitments .scroll-menu li:nth-of-type(2) {
        width: 34.0%;
    }

    #recruitments .scroll-menu li:nth-of-type(3) {
        width: 22.0%;
    }

    #recruitments .scroll-menu li:nth-of-type(4) {
        width: 22.0%;
    }

}

@media (min-width: 768px) {

    /* 横並びレイアウト */
    #recruitments #sec00 .wrapper {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(1, 1fr);
        align-items: center;
    }

    /* 右端の背景色 */
    #recruitments #sec00 .background {
        width: 18.26388vw;
        height: 46.11111vw;
    }

    /* イメージ写真 */
    #recruitments #sec00 img {
        height: 30.83333vw;
    }

    /* 画像領域 */
    #recruitments #sec00 .wrapper > div:first-child {
        order: 2;
    }

    /* 見出し領域 */
    #recruitments #sec00 .wrapper > div:last-child {
        order: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        justify-content: space-between;
        transform: translateY(0.5vw);
        height: 30.83333vw;
        padding-right: 0;
    }

    /* 見出し */
    #recruitments #sec00 h2 {
        font-size: min(7.0vw, 2.5rem);
    }

    /* キャッチ */
    #recruitments #sec00 h3 {
        font-size: min(4.5vw, 1.6rem);
    }

    #recruitments #sec00 .container p {
        letter-spacing: 6.0%;
    }

    /* テキスト */
    #recruitments #sec00 .container p {
        text-align: center;
    }

    /* more */
    #recruitments #sec00 .more-btn {
        margin: auto 0 0 auto;
    }

}

@media (min-width: 992px) {

    /* 見出し */
    #recruitments #sec00 h2 {
        font-size: min(3.47222vw, 5.0rem);
        line-height: min(6.11111vw, 8.8rem);
    }

    /* キャッチ */
    #recruitments #sec00 h3 {
        font-size: min(2.08333vw, 3.0rem);
        line-height: min(3.75vw, 5.4rem);
    }

    #recruitments #sec00 .container p {
        font-size: 2.0rem;
        line-height: min(4.44444vw, 6.4rem);
    }

}

@media (min-width: 1200px) {

    /* イメージ写真 */
    #recruitments #sec00 img {
        top: 20%;
        height: 30.83333vw;
    }

    /* 見出し領域 */
    #recruitments #sec00 .wrapper > div:last-child {
        transform: translateY(1.5vw);
    }

}

/*　会社を知る
----------------------------------------------------------- */
#recruitments #sec01 {
    padding-top: min(20.0vw, 17.5rem);
}

#recruitments #sec01 .container {
    margin-top: min(10.0vw, 10.0rem);
}

/* バナー */
#recruitments #sec01 a {
    display: block;
    width: min(100%, 56.1rem);
    margin: 0 auto;
    text-align: center;
}

/* ラベル */
#recruitments #sec01 p {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 29.4rem;
    height: 6.7rem;
    border-radius: 3.35rem;
    color: var(--text-color);
    font-family: var(--kaku-font);
    font-size: min(6.0vw, 2.0rem);
    font-weight: 700;
    letter-spacing: 1.0%;
}

#recruitments #sec01 p span {
    position: relative;
}

#recruitments #sec01 p span::after {
    position: absolute;
    inset: 0 -5.0rem auto auto;
    font-family: 'bootstrap-icons';
    font-size: 180%;
    font-weight: 400;
    content: "\f135";
    transition: 0.3s;
}

/* 画像 */
#recruitments #sec01 a figure {
    display: flex;
    justify-content: center;
    margin: 0;
    aspect-ratio: 187 / 93;
    transition: 0.3s;
}

/* １枚目のバナー */
#recruitments #sec01 a[href*="company"] figure {
    align-items: center;
    background-color: rgba(125, 165, 215, 1.00);
}

#recruitments #sec01 a[href*="company"] img {
    width: 64.17112%;
}

#recruitments #sec01 a[href*="strength"] {
    margin-top: min(10.0vw, 3.0rem);
}

/* ２枚目のバナー */
#recruitments #sec01 a[href*="strength"] figure {
    align-items: flex-end;
    background-color: rgba(207, 233, 228, 1.00);
}

#recruitments #sec01 a[href*="strength"] img {
    width: 58.82352%;
}

@media (min-width: 768px) {

    /* 横並びレイアウト */
    #recruitments #sec01 .container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(1, 1fr);
        justify-content: space-between;
        width: min(100%, 120.0rem);
    }

    /* バナー */
    #recruitments #sec01 a {
        width: calc(min(100%, 56.1rem) - 2.70833vw);
    }

    #recruitments #sec01 a[href*="company"] {
        margin-left: 0;
    }

    #recruitments #sec01 a[href*="strength"] {
        margin-top: 0;
        margin-right: 0;
    }

}

@media (min-width: 992px) {

    /* 画像 */
    #recruitments #sec01 a:hover figure {
        opacity: 0.7;
    }

    /* アイコン */
    #recruitments #sec01 a:hover p span::after {
        right: -6.0rem;
    }

}

@media (min-width: 1300px) {

    #recruitments #sec01 .container {
        padding: 0;
    }

    /* バナー */
    #recruitments #sec01 a {
        width: min(100%, 56.1rem);
    }

}

/*　価値観・カルチャー
----------------------------------------------------------- */
#recruitments #sec02 {
    background-color: rgba(245, 250, 255, 1.00);
}

/* ブロックタイトルとテキストの左右余白 */
#recruitments #sec02 .blk-title,
#recruitments #sec02 .wrapper > div:nth-of-type(2) {
    width: min(100%, 130.0rem);
    padding: 0 3.5vw;
}

/* ブロックタイトル */
#recruitments #sec02 .blk-title {
    width: min(100%, 140.0rem);
    margin: min(15.38461vw, 6.0rem) auto 2.5rem;
}

#recruitments #sec02 .blk-title h2,
#recruitments #sec02 .blk-title h3 {
    padding-left: 1.0rem;
    color: var(--corp-color);
    font-family: var(--kaku-font);
}

#recruitments #sec02 .blk-title h2 {
    display: inline-block;
    margin-bottom: 1.0rem;
    padding-bottom: 0.7rem;
    background: url("../img/recruit_sec02_title_bg.png") left bottom / 100% auto no-repeat;
    font-size: min(7.5vw, 4.4rem);
    font-weight: 700;
    letter-spacing: 17.0%;
}

#recruitments #sec02 .blk-title h3 {
    font-size: min(3.8vw, 2.3rem);
    letter-spacing: 20.0%;
}

/* ブロック１のタイトル */
#recruitments #sec02 .heading + .blk-title h2 {
    margin-left: -0.6%; /* letter-spacing によるレイアウトのズレを補正 */
}

/* ブロック２のタイトル */
#recruitments #sec02 .wrapper + .blk-title h2,
#recruitments #sec02 .wrapper + .blk-title h3 {
    text-align: right;
}

#recruitments #sec02 .wrapper + .blk-title {
    text-align: right;
}

#recruitments #sec02 .wrapper + .blk-title h2 {
    margin-right: -4.5vw; /* letter-spacing によるレイアウトのズレを補正 */
}

/* 画像領域 */
#recruitments #sec02 .wrapper > div:first-of-type {
    position: relative;
}

/* 背景色 */
#recruitments #sec02 .background {
    display: inline-block;
    width: 25.0vw;
    height: 60.0vw;
    background-color: rgba(192, 218, 251, 1.00);
}

/* イメージ写真 */
#recruitments #sec02 img {
    position: absolute;
    inset: 10.0% 0 auto auto;
    width: auto;
    height: 40.0vw;
    aspect-ratio: 574 / 313;
}

/* ブロック１の画像領域 */
#recruitments #sec02 .wrap01 .background {
    margin-left: 0;
}

#recruitments #sec02 .wrap01 img {
    inset: 10.0% auto auto 0;
}

/* ブロック２の画像領域 */
#recruitments #sec02 .wrap02 > div:first-of-type {
    text-align: right;
}

#recruitments #sec02 .wrap02 .background {
    margin-right: 0;
}

#recruitments #sec02 .wrap02 img {
    inset: 12.0% 0 auto auto;
}

/* テキスト */
#recruitments #sec02 .wrapper > div:last-of-type {
    width: min(100%, 140.0rem);
    margin: 2.0rem auto 0;
}

#recruitments #sec02 .wrapper > div:last-of-type p {
    color: var(--gray-color1);
    text-align: justify;
    line-height: 3.5rem;
}

#recruitments #sec02 .wrapper > div:last-of-type strong {
    padding: 0 0.5rem;
    font-weight: 700;
    background: linear-gradient(transparent 60%, rgba(203, 234, 228, 1.00) 60%);
}

@media (min-width: 576px) {

    #recruitments #sec02 .wrapper + .blk-title h2 {
        margin-right: -2.5rem; /* letter-spacing によるレイアウトのズレを補正 */
    }

}

@media (min-width: 992px) {

    /* 横並びレイアウト */
    #recruitments #sec02 .wrapper {
        display: flex;
        align-items: flex-start;
    }

    #recruitments #sec02 .blk-title,
    #recruitments #sec02 .wrapper > div:nth-of-type(2) {
        padding: 0;
    }

    #recruitments #sec02 .wrapper > div:nth-of-type(1) {
        width: min(39.86111vw, 57.4rem);
    }

    #recruitments #sec02 .wrapper > div:nth-of-type(2) {
        display: flex;
        width: min(49.93055vw, 71.9rem);
    }

    #recruitments #sec02 .wrap01 > div:nth-of-type(2) {
        justify-content: flex-start;
    }

    #recruitments #sec02 .wrap02 > div:nth-of-type(2) {
        justify-content: flex-end;
    }

    /* 右端の背景色 */
    #recruitments #sec02 .background {
        width: 15.69444vw;
        height: 47.22222vw;
    }

    /* イメージ写真 */
    #recruitments #sec02 img {
        height: 21.73611vw;
    }

    /* 表示順変更 */
    #recruitments #sec02 .wrap02 > div:first-of-type {
        order: 2;
    }

    #recruitments #sec02 .wrap02 > div:last-of-type {
        order: 1;
    }

}

@media (min-width: 1200px) {

    /* ブロックタイトル */
    #recruitments #sec02 .blk-title {
        margin-bottom: 4.5rem;
    }

    #recruitments #sec02 .blk-title h2,
    #recruitments #sec02 .blk-title h3 {
        padding-left: 2.5rem;
    }

    #recruitments #sec02 .blk-title h2 {
        margin-bottom: 2.0rem;
        padding-bottom: 2.4rem;
        font-size: 8.0rem
    }

    #recruitments #sec02 .blk-title h3 {
        font-size: 3.2rem
    }

    /* ブロック１のタイトル */
    #recruitments #sec02 .heading + .blk-title {
        margin-top: min(10.76388vw, 15.0rem);
    }

    #recruitments #sec02 .heading + .blk-title h2 {
        margin-left: -0.4%; /* letter-spacing によるレイアウトのズレを補正 */
    }

    /* ブロック２のタイトル */
    #recruitments #sec02 .wrapper + .blk-title h2 {
        margin-right: -5.5rem; /* letter-spacing によるレイアウトのズレを補正 */
    }

    /* テキスト */
    #recruitments #sec02 .wrapper > div:last-of-type p {
        font-size: 1.8rem;
        line-height: 4.5rem;
    }

}

@media (min-width: 1400px) {

    /* 右端の背景色 */
    #recruitments #sec02 .background {
        height: 40.0vw;
    }

    #recruitments #sec02 .wrapper + .blk-title {
        margin-top: 0;
    }

}

@media (min-width: 1500px) {

    /* ブロックタイトル */
    #recruitments #sec02 .blk-title h2,
    #recruitments #sec02 .blk-title h3 {
        padding-left: 4.0rem;
    }

}

@media (min-width: 1600px) {

    #recruitments #sec02 .wrapper + .blk-title {
        margin-top: min(-2.6vw); /* 前ブロックとの重なり、位置調整 */
    }

    /* more（位置調整） */
    #recruitments #sec02 .more-btn {
        margin-top: min(-2.6vw);
    }

}

/*　仕事を知る
----------------------------------------------------------- */
/* リード文 */
#recruitments #sec03 .heading + .container {
    width: 100%;
    margin: 4.0rem 0;
}

#recruitments #sec03 .heading + .container p {
    color: var(--gray-color1);
    font-family: var(--kaku-font);
    font-weight: 700;
    text-align: justify;
    line-height: 3.0rem;
    letter-spacing: 6.0%;
}

#recruitments #sec03 .wrapper > div:nth-of-type(n+2) {
    margin-top: min(20.0vw, 8.0rem);
}

#recruitments #sec03 .wrapper .container > div {
    position: relative;
}

/* 職種名 */
#recruitments #sec03 .container h2 {
    margin-bottom: 3.0rem;
    color: var(--gray-color1);
    font-family: var(--kaku-font);
    font-size: min(8.0vw, 4.0rem);
    font-weight: 700;
    letter-spacing: 6.0%;
}

#recruitments #sec03 .container h2 span {
    display: inline-block;
    margin-right: 1.0vw;
    transform: translateY(0.6vw);
    font-family: var(--heading-font);
    font-optical-sizing: auto;
    font-size: 119.45647%;
    line-height: 90%;
}

/* テキスト */
#recruitments #sec03 .wrapper .container h3 {
    margin-bottom: min(5.1282vw, 3.0rem);
    color: var(--corp-color);
    font-size: min(6.0vw, 3.0rem);
    font-weight: 700;
    text-align: left;
    line-height: 3.5rem;
    letter-spacing: 6.0%;
}

#recruitments #sec03 .wrapper .container p {
    font-weight: 700;
    line-height: 3.0rem;
    text-align: justify;
    letter-spacing: 6.0%;
}

/* 先輩の声ボタン */
#recruitments #sec03 .container .more-btn {
    margin-top: min(7.0vw, 6.5rem);
}

#recruitments #sec03 .container .more-btn a {
    border: 0.2rem solid var(--corp-color);
    border-radius: 0.6rem;
    color: var(--corp-color);
}

/* arrow */
#recruitments #sec03 .container .more-btn a::after {
    background: url("../img/arrow_r_b.png") center center / contain no-repeat;
}

/* イメージ画像 */
#recruitments #sec03 .container img {
    position: absolute;
    inset: -5.7rem 0 auto auto;
    width: auto;
    border-bottom-width: auto;
}

/* イメージ画像のサイズとテキストの右余白を個別に調整 */
#recruitments #sec03 .wrapper .container:nth-of-type(1) img {
    height: 58.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(1) p:nth-of-type(-n+2) {
    margin-right: 20.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(2) img {
    height: 58.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(2) p:nth-of-type(-n+3) {
    margin-right: 20.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(3) img {
    width: 36.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(3) p:nth-of-type(1) {
    margin-right: 33.0vw;
}

#recruitments #sec03 .wrapper .container:nth-of-type(4) {
    margin-top: -2.0rem;
}

#recruitments #sec03 .wrapper .container:nth-of-type(4) > div {
    margin-top: min(20.0vw, 8.0rem);
    text-align: center;
}

#recruitments #sec03 .wrapper .container:nth-of-type(4) > div > img {
    display: none;
}

#recruitments #sec03 .wrapper .container:nth-of-type(4) img {
    position: static;
    width: min(40.0vw, 20.0rem);
    margin: -4.0rem 0 auto auto;
}

/* ブロック４の職種名と先輩社員の声ボタンを非表示 */
#recruitments #sec03 .wrapper .container:nth-of-type(4) h2 {
    visibility: hidden;
}

#recruitments #sec03 .wrapper .container:nth-of-type(4) .more-btn {
    display: none;
}

@media (min-width: 544px) {

    /* イメージ画像のサイズとテキストの右余白を個別に調整 */
    #recruitments #sec03 .container img {
        top: -6.7rem;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) img {
        position: absolute;
        inset: 5.0rem 0 auto auto;
        width: min(40.0vw, 18.0rem);
        margin-top: 0;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) p:nth-of-type(-n+3) {
        margin-right: 19.0rem;
    }

}

@media (min-width: 576px) {

    /* イメージ画像のサイズとテキストの右余白を個別に調整 */
    #recruitments #sec03 .wrapper .container:nth-of-type(2) img {
        width: 20.0vw;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) img {
        width: min(40.0vw, 20.0rem);
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) p:nth-of-type(-n+3) {
        margin-right: min(40.0vw, 21.0rem);
    }

}

@media (min-width: 768px) {

    #recruitments #sec03 .container h2 span {
        transform: translateY(0.1vw);
    }

    #recruitments #sec03 .heading + .container p {
        text-align: center;
    }

    /* イメージ画像のサイズとテキストの右余白を個別に調整 */
    #recruitments #sec03 .wrapper .container:nth-of-type(1) img,
    #recruitments #sec03 .wrapper .container:nth-of-type(2) img {
        width: auto;
        height: 40.0rem;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(3) img,
    #recruitments #sec03 .wrapper .container:nth-of-type(4) img {
        width: 30.0rem;
        height: auto;
    }

    /* イメージ画像に被るテキストの右余白 */
    #recruitments #sec03 .wrapper .container:nth-of-type(1) p:nth-of-type(-n+2),
    #recruitments #sec03 .wrapper .container:nth-of-type(2) p:nth-of-type(-n+3),
    #recruitments #sec03 .wrapper .container:nth-of-type(3) p:nth-of-type(1) {
        margin-right: 0;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) {
        margin-top: 0;
    }

}

@media (min-width: 992px) {

    /* リード文 */
    #recruitments #sec03 .heading + .container {
        margin: min(5.20833vw, 7.5rem) auto min(6.25vw, 9.0rem);
    }

    #recruitments #sec03 .heading + .container p {
        font-size: 2.0rem;
        line-height: 6.4rem;
    }

    #recruitments #sec03 .wrapper {
        background: url("../img/recruitments_bg.png") left 40.0% top / auto 90% no-repeat;
    }

    #recruitments #sec03 .wrapper > div:nth-of-type(n+2),
    #recruitments #sec03 .wrapper .container:nth-of-type(4) {
        margin-top: min(11.11111vw, 16.0rem);
    }

    /* コンテンツ領域横並びレイアウトに */
    #recruitments #sec03 .wrapper .container {
        display: flex;
        justify-content: space-between;
        width: min(100%, 118.3rem);
    }

    /* 職種名 */
    #recruitments #sec03 .wrapper .container h2 {
        width: 23.49957%;
    }

    /* イメージ画像とテキスト領域 */
    #recruitments #sec03 .wrapper .container > div {
        display: flex;
        justify-content: space-between;
        width: 67.9628%;
    }

    /* イメージ画像 */
    #recruitments #sec03 .wrapper .container img {
        order: 1;
        position: static;
        height: min(26.38888vw, 38.0rem);
        margin: 0;
    }

    /* イメージ画像位置調整 */
    #recruitments #sec03 .wrapper .container:nth-of-type(2) img {
        transform: translateY(10.0%);
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(3) img {
        width: auto;
        height: min(25.0vw, 32.6rem);
        margin: 8.0% auto auto -10.0vw;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(-n+3) h3 + img {
        display: none;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) img {
        display: none;
    }

    /* テキスト領域 */
    #recruitments #sec03 .wrapper .container > div > div {
        order: 2;
        width: 65%;
    }

    /* 先輩の声ボタン */
    #recruitments #sec03 .container .more-btn a:hover {
        background-color: var(--blue-color);
    }

    /* ブロック４ */
    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div {
		margin-top: 0;
		text-align: inherit;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div > img {
        order: 1;
        position: static;
        display: block;
        width: min(50.0%, 35.0rem);
        margin: 5.0% auto auto -22.0vw;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div > div {
        order: 2;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 65%;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div > div > div p {
        width: 100%;
    }

}

@media (min-width: 1200px) {

    #recruitments #sec03 .wrapper .container h2 {
        width: 26.0%;
    }

    #recruitments #sec03 .wrapper .container > div {
        display: flex;
        justify-content: space-between;
        width: 70.0%;
    }

    /* イメージ画像位置調整 */
    #recruitments #sec03 .wrapper .container:nth-of-type(3) img {
        margin: 10.0% auto auto -5.0vw;
    }

    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div > img {
        margin: 5.0% auto auto -21.0rem;
    }

    /* 職種名 */
    #recruitments #sec03 .container h2 {
        font-size: min(5.4vw, 6.697rem);
    }

    #recruitments #sec03 .container h2 span {
        transform: translateY(0.25rem);
    }

    /* テキスト */
    #recruitments #sec03 .wrapper .container h3 {
        margin-bottom: 3.5rem;
    }

    #recruitments #sec03 .wrapper .container p {
        line-height: 3.5rem;
    }

}

@media (min-width: 1300px) {

    #recruitments #sec03 .wrapper .container {
        padding: 0;
    }

}

@media (min-width: 1900px) {

    #recruitments #sec03 .wrapper .container:nth-of-type(4) > div > img {
        margin: 5.0% auto auto -25.0rem;
    }

}

/*　人を知る
----------------------------------------------------------- */
/* リード文 */
#recruitments #sec04 .lead {
    margin-top: 4.5rem;
}

#recruitments #sec04 .lead p {
    color: var(--gray-color1);
    font-family: var(--kaku-font);
    font-size: 1.6rem;
    font-weight: 700;
    text-align: justify;
    line-height: 3.0rem;
    letter-spacing: 6.0%;
}

/* 社員の声 */
#recruitments #sec04 .voice {
    margin-top: 5.0rem;
}

#recruitments #sec04 .voice > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    max-width: 40.0rem;
    margin: 0 auto;
    padding: 3.5rem 2.6rem 0;
    border: 0.1rem solid rgba(120, 120, 120, 1.00);
}

#recruitments #sec04 .voice > div:nth-of-type(n+2) {
    margin-top: 2.0rem;
}

/* コーナーの三角 */
#recruitments #sec04 .voice > div::after {
    position: absolute;
    inset: 0 auto auto 0;
    border-style: solid;
    border-width: 8.6rem 8.6rem 0 0;
    border-color: var(--corp-color) transparent transparent transparent;
    content: '';
}

/* 見出し */
#recruitments #sec04 .voice h2 {
    font-size: min(7.0vw, 3.2rem);
    font-weight: 700;
    letter-spacing: 11%.0;
}

/* アイコン*/
#recruitments #sec04 .voice img {
    width: min(100%, 20.6rem);
    margin: 3.0rem auto;
}

/* キャッチ */
#recruitments #sec04 .voice h3 {
    font-family: var(--kaku-font);
    font-size: min(5.4vw, 2.2rem);
    font-weight: 700;
    text-align: center;
    line-height: 3.0rem;
    letter-spacing: 22%.0;
}

/* 続きを見る領域 */
#recruitments #sec04 .readmore {
    margin-top: 3.4rem;
}

#recruitments #sec04 .readmore .readmore-toggle {
    padding-bottom: 6.0rem;
}

#recruitments #sec04 .readmore.open .readmore-toggle {
    display: none; /* 開いたら「続きを見る」を非表示に */
}

#recruitments #sec04 .readmore > div:first-of-type {
    text-align: center; /* 続きを見るボタン */
}

/* 続き／閉じるボタン */
#recruitments #sec04 .readmore-toggle,
#recruitments #sec04 .readmore-close {
    margin: 0 auto;
    padding: 0;
    border: none;
    background: none;
    color: var(--corp-color);
    font-family: var(--kaku-font);
    font-size: min(5.4vw, 2.16rem);
    font-weight: 700;
}

#recruitments #sec04 .readmore-toggle span,
#recruitments #sec04 .readmore-close span {
    position: relative;
}

#recruitments #sec04 .readmore-toggle span::after,
#recruitments #sec04 .readmore-close span::after {
    position: absolute;
    inset: 0 -3.0rem auto auto;
    font-family: 'bootstrap-icons';
    content: "\f282";
}

#recruitments #sec04 .readmore-close span::after {
    content: "\f286";
}

#recruitments #sec04 .readmore-content > div:last-of-type {
    padding-right: 2.0rem;
    padding-bottom: 1.0rem;
    text-align: right;
}

/* テキスト */
#recruitments #sec04 .readmore-content {
    visibility: hidden;
    height: 0;
    opacity: 0;
    transition: height 0.5s ease, opacity 0.4s ease;
}

#recruitments #sec04 .readmore.open .readmore-content {
    visibility: visible;
    opacity: 1; /* オープンしたら表示 */
}

#recruitments #sec04 .readmore-toggle,
#recruitments #sec04 .readmore-close {
    cursor: pointer;
}

/* テキスト内の見出し */
#recruitments #sec04 .voice h4 {
    width: 100%;
    color: var(--corp-color);
    font-size: 1.6rem;
    font-weight: 700;
    text-align: left;
    line-height: 3.4rem;
}

#recruitments #sec04 .voice h4:nth-of-type(n+2) {
    margin-top: 4.0rem;
}

#recruitments #sec04 .voice p {
    text-align: justify;
    line-height: 3.4rem;
}

/* エントリー */
#recruitments #sec04 .readmore-content > div:first-of-type {
    margin: 6.0rem auto 4.0rem;
    text-align: center;
}

#recruitments #sec04 .readmore-content a[href*="contact"] {
    display: inline-flex;
    align-items: center;
    position: relative;
    margin: 0 auto;
    padding-left: 1.0rem;
    color: rgba(44, 107, 187, 1.00);
    font-family: var(--kaku-font);
    font-size: min(5.4vw, 2.16rem);
    font-weight: 700;
    text-align: center;
    line-height: 2.644rem;
}

#recruitments #sec04 .readmore-content a[href*="contact"]::after {
    display: inline-block;
    position: absolute;
    inset: auto 0 -0.2rem 0;
    width: 100%;
    height: 0.2rem;
    background-color: rgba(44, 107, 187, 1.00);
    content: '';
}

#recruitments #sec04 .readmore-content i {
    position: relative;
    top: 0.2vw;
    font-size: 150%;
    transition: 0.3s;
}

@media (min-width: 768px) {

	#recruitments #sec04 .lead p {
		text-align: center;
	}

    /* 横並びレイアウト */
    #recruitments #sec04 .voice {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(1, 1fr);
        gap: 2.0rem;
    }

    #recruitments #sec04 .voice > div {
        max-width: auto;
        padding: 3.5rem 2.0rem 0;
    }

    #recruitments #sec04 .voice > div:nth-of-type(n+2) {
        margin-top: 0;
    }

    #recruitments #sec04 .voice > div::after {
        border-width: 4.0rem 4.0rem 0 0;
    }

    /* 見出し */
    #recruitments #sec04 .voice h2 {
        font-size: min(7.0vw, 2.6rem);
    }

    /* アイコン */
    #recruitments #sec04 .voice img {
        width: min(100%, 14.0rem);
    }

    /* キャッチ */
    #recruitments #sec04 .voice h3 {
        font-size: min(5.4vw, 1.8rem);
        line-height: 2.6rem;
    }

    /* テキスト */
    #recruitments #sec04 .readmore-toggle,
    #recruitments #sec04 .readmore-close {
        font-size: min(5.4vw, 1.8rem);
    }

    #recruitments #sec04 .voice h4,
    #recruitments #sec04 .voice p {
        font-size: 1.5rem;
        line-height: 2.8rem;
    }

    #recruitments #sec04 .readmore-content a[href*="contact"] {
        font-size: min(5.4vw, 1.8rem);
    }

    #recruitments #sec04 .readmore-content i {
        top: 0.1rem;
    }

}

@media (min-width: 992px) {

    /* リード文 */
    #recruitments #sec04 .lead {
        margin-top: min(6.25vw, 9.0rem);
    }

    #recruitments #sec04 .lead p {
        font-size: 2.0rem;
        line-height: 6.4rem;
    }

    /* 社員の声 */
    #recruitments #sec04 .voice {
        margin-top: 8.0rem;
    }

    #recruitments #sec04 .readmore-content a[href*="contact"]:hover span::after {
        right: -6.0rem;
    }

    #recruitments #sec04 .readmore-content a:hover i {
        transform: translateX(1.0rem);
    }

}

@media (min-width: 1200px) {

    #recruitments #sec04 .voice > div {
        padding: 3.5rem 2.6rem 0;
    }

    #recruitments #sec04 .voice > div::after {
        border-width: 8.6rem 8.6rem 0 0;
    }

    /* 見出し */
    #recruitments #sec04 .voice h2 {
        font-size: min(7.0vw, 3.2rem);
    }

    /* アイコン*/
    #recruitments #sec04 .voice img {
        width: min(100%, 20.6rem);
    }

    /* キャッチ */
    #recruitments #sec04 .voice h3 {
        font-size: min(5.4vw, 2.16rem);
        line-height: 3.6rem;
    }

    /* テキスト */
    #recruitments #sec04 .readmore-toggle,
    #recruitments #sec04 .readmore-close {
        font-size: min(5.4vw, 2.16rem);
    }

    #recruitments #sec04 .voice h4,
    #recruitments #sec04 .voice p {
        font-size: 1.6rem;
        line-height: 3.4rem;
    }

    #recruitments #sec04 .readmore-content > div:first-of-type {
        margin-top: 10.0rem;
        margin-bottom: 7.0rem;
    }

    #recruitments #sec04 .readmore-content a[href*="contact"] {
        font-size: min(5.4vw, 2.16rem);
    }

    #recruitments #sec04 .readmore-content i {
        font-size: 160%;
    }

}



/* ---- End of file --------------------------------------- */