@charset "utf-8";

/*-----------------------------フォント*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');

/*-----------------------------リセットCSS*/
html {
    box-sizing: border-box;
    -ms-overflow-style: scrollbar;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Remove default padding */

ul[class],
ol[class] {
    padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
figure,
blockquote,
dl,
dd {
    margin: 0;
}

/* Set core root defaults */

html {
    scroll-behavior: smooth;
}

/* Set core body defaults */

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 100%;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul[class],
ol[class] {
    list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
    max-width: 100%;
    display: block;
}

/* Natural flow and rhythm in articles by default */

article>*+* {
    margin: 0;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
    font: inherit;
}

/* Blur images when they have no alt attribute */

/* Remove all animations and transitions for people that prefer not to see them */


img {
    height: auto;
}

address,
em {
    font-style: normal;
}

table {
    border-collapse: collapse;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="number"],
textarea {
    -webkit-appearance: none;
    border-radius: 0;
}

input[type="search"],
input[type="submit"],
input[type="button"] {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    box-sizing: border-box;
    cursor: pointer;
}

input[type="search"]::-webkit-search-decoration,
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
    font-weight: normal;
}

/*-----------------------------初期値CSS*/
body {
    font-family: "Hiragino Sans", "ヒラギノ角ゴシック", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    word-break: break-all;
    background-image: url(../img/common/bg_texture_01.jpg);
    background-position: center;
    background-repeat: repeat;
    background-size: 220px auto;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

div[role="main"] {
    overflow: hidden;
}

a {
    text-decoration: none;
    color: #202732;
    display: block;
    cursor: pointer;
    -webkit-text-decoration: none;
}

ul {
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

/*-----------------------------共通CSS*/
span.kai {
    display: inline-block;
}

.flex {
    display: flex;
    flex-wrap: wrap;
}

.inner {
    max-width: 1100px;
    width: calc(100% - 80px);
    margin: 0 auto;
    box-sizing: border-box;
}

.inner2 {
    max-width: 1100px;
    width: calc(100% - 80px);
    margin: 0 auto;
    box-sizing: border-box;
}

a.anchor {
    display: block;
    padding-top: 85px;
    margin-top: -85px;
}

/*スマホ表示切り替え*/
.sp {
    display: none;
}

/*section-title*/
.section-title {
    margin-bottom: 30px;
    text-align: center;
}

.section-title .en {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .07em;
    color: #FF91B3;
    display: inline-block;
    padding: 0 16px;
    margin-bottom: 10px;
}

.section-title .en::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin: auto;
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: #FF91B3;
    z-index: 1;
}

.section-title .en::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    margin: auto;
    width: 8px;
    height: 8px;
    border-radius: 8px;
    background: #FF91B3;
    z-index: 1;
}

.section-title .ja {
    font-family: "Zen Maru Gothic", serif;
    font-size: 32px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.4;
}

.section-title-1 .ja {
    font-size: 28px;
    padding-bottom: 20px;
    background: url(../img/common/section-title-1.png) no-repeat center bottom;
    background-size: 41px;
    margin-bottom: 55px;
}

/*sub-title*/
.sub-title {
    font-size: 18px;
    line-height: 1.8;
    margin-top: 30px;
}

/*btn*/
.btn {
    text-align: center;
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
}

.btn a {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.8;
    color: #fff;
    background: #ED6D47;
    border: 1px solid #ED6D47;
    border-radius: 100px;
    text-align: center;
    padding: 17px 15px;
    box-shadow: 0 5px 0 0 rgba(219, 203, 190, .8);
    transition: .3s;
}

.btn a:hover {
    background: #fff;
    color: #ED6D47;
    box-shadow: 0 5px 0 0 rgba(219, 203, 190, 0);
}

.btn a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    margin: auto;
    width: 15px;
    height: 15px;
    background: url(../img/recruit/btn-icon.svg) no-repeat;
    background-size: 15px;
    transition: .3s;
}

.btn a:hover::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    margin: auto;
    width: 15px;
    height: 15px;
    background: url(../img/recruit/btn-icon-hover.svg) no-repeat;
    background-size: 15px;
}

@media screen and (max-width: 1023px) {

    .inner,
    .inner2 {
        width: calc(100% - 30px);
    }

    a.anchor {
        display: block;
        padding-top: 60px;
        margin-top: -60px;
    }

    /*スマホ表示切り替え*/
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    /*btn*/
    .btn {
        max-width: 310px;
    }

}

@media screen and (max-width: 599px) {

    /*section-title*/
    .section-title {
        margin-bottom: 30px;
    }

    .section-title .en {
        font-size: 15px;
        margin-bottom: 10px;
    }

    .section-title .ja {
        font-size: 28px;
    }

    .section-title-1 .ja {
        font-size: 25px;
        padding-bottom: 15px;
        background-size: 36px;
        margin-bottom: 40px;
    }

    /*sub-title*/
    .sub-title {
        margin-top: 25px;
    }

}

/*--------------------------------------------------------------------------------------------------------------------

トップページ

--------------------------------------------------------------------------------------------------------------------*/
/*-----------------------------FV*/
.fv {
    position: relative;
    padding: 20px 0;
    height: 560px;
}

.fv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: url(../img/recruit/bg_texture_01.jpg);
    word-break: break-all;
    background-position: center;
    background-repeat: repeat;
    background-size: 220px auto;
    z-index: -1;
}

/*swiper*/
.swiper-wrapper {
    align-items: center;
    min-height: 520px;
    padding-bottom: 25px;
}

.swiper-slide {
    transition: transform 3s;
    /* ゆっくり小さくさせる */
}

.swiper-slide img {
    height: auto;
    width: 100%;
    object-fit: cover;
    border-radius: 50px;
    height: 406px;
    /* 通常のスライド画像は406px */
    transition: 3s;
    /* 高さをスムーズに変化させる */
}

.swiper-slide-active img {
    height: 520px;
    /* 中央のスライド画像を520pxに拡大 */
}

/* 初期表示時、最初のスライドのみ transition を0秒で */
.swiper-slide-active img.initial {
    transition: 0s;
}

.swiper-pagination {
    top: auto !important;
    bottom: -20px !important;
}

.swiper-pagination-bullet {
    width: 12px !important;
    height: 12px !important;
    background: #E6E6E6 !important;
    opacity: 1 !important;
}

/*swiper-button*/
.swiper-button {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    max-width: 1053px;
    height: 100%;
    z-index: 3;
}

.swiper-pagination-bullet-active {
    background: #FFA3BF !important;
}

.swiper-button-prev {
    background: url(../img/recruit/icon-left.svg) no-repeat;
    background-size: cover;
    width: 30px !important;
    height: 30px !important;
    left: 0 !important;
}

.swiper-button-next {
    background: url(../img/recruit/icon-right.svg) no-repeat;
    background-size: cover;
    width: 30px !important;
    height: 30px !important;
    right: 0 !important;
}

/*items*/
.fv .items {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    max-width: 1320px;
    min-width: 1320px;
    height: 100%;
    z-index: 2;
}

.fv .items::before {
    content: "";
    position: absolute;
    bottom: 19px;
    left: 0;
    width: 577px;
    height: 521.73px;
    background: url(../img/recruit/fv-item-1.png) no-repeat;
    background-size: cover;
}

.fv .items::after {
    content: "";
    position: absolute;
    top: 75px;
    right: 50px;
    width: 337.75px;
    height: 510.97px;
    background: url(../img/recruit/fv-item-2.png) no-repeat;
    background-size: cover;
    z-index: 2;
}

/*page-title*/
.fv .page-title {
    position: absolute;
    bottom: 40px;
    left: 205px;
}

.fv .page-title .en {
    font-family: "Zen Maru Gothic", serif;
    font-size: 80px;
    font-weight: 900;
    color: #FFA3BF;
    line-height: 1;
    margin-bottom: 20px;
}

.fv .page-title .ja {
    font-family: "Zen Maru Gothic", serif;
    font-size: 20px;
    font-weight: 500;
}

@media screen and (max-width: 1023px) {

    .fv .items {
        width: 140vw;
        min-width: 950px;
    }

}

@media screen and (max-width: 599px) {

    .fv {
        position: relative;
        padding: 20px 0;
        height: auto;
    }

    /*swiper*/
    .swiper-wrapper {
        align-items: center;
        padding-bottom: 25px;
        min-height: 100%;
    }

    .swiper-slide img {
        border-radius: 20px;
    }

    /* 初期表示時、最初のスライドのみ transition を0秒で */
    .swiper-slide-active img.initial {
        transition: max-height 0s ease;
    }

    .swiper-pagination {
        bottom: -10px !important;
    }

    .swiper-pagination-bullet {
        width: 10px !important;
        height: 10px !important;
    }

    /*swiper-button*/
    .swiper-button-prev {
        left: -7.5px !important;
        width: 14px !important;
        height: 14px !important;
    }

    .swiper-button-next {
        right: -7.5px !important;
        width: 14px !important;
        height: 14px !important;
    }

    /*items*/
    .fv .items {
        width: 100%;
        min-width: 100%;
    }

    .fv .items::before {
        bottom: 22px;
        left: 3px;
        width: 173px;
        height: 191.05px;
        background: url(../img/recruit/fv-item-sp-1.png) no-repeat;
        background-size: cover;
    }

    .fv .items::after {
        top: 30px;
        right: 3px;
        width: 113.53px;
        height: 181.19px;
        background: url(../img/recruit/fv-item-sp-2.png) no-repeat;
        background-size: cover;
    }

    /*page-title*/
    .fv .page-title {
        bottom: 30px;
        left: 45px;
    }

    .fv .page-title .en {
        font-size: 30px;
        margin-bottom: 5px;
    }

    .fv .page-title .ja {
        font-size: 13px;
    }

}

@media screen and (max-width: 599px) {

    .fv {
        position: relative;
        padding: 20px 0;
        height: 220px;
    }

    /*swiper*/
    .swiper-wrapper {
        align-items: center;
        height: 177px !important;
        min-height: auto;
        padding-bottom: 25px;
    }

    .swiper-slide img {
        border-radius: 20px;
        height: 177px;
        /* 通常のスライド画像は406px */
    }

    .swiper-slide-active img {
        height: 177px;
        /* 中央のスライド画像を520pxに拡大 */
    }

    /* 初期表示時、最初のスライドのみ transition を0秒で */
    .swiper-slide-active img.initial {
        transition: max-height 0s ease;
    }

    .swiper-pagination-bullet {
        width: 10px !important;
        height: 10px !important;
    }

    /*swiper-button*/
    .swiper-button-prev {
        left: -7.5px !important;
        width: 14px !important;
        height: 14px !important;
    }

    .swiper-button-next {
        right: -7.5px !important;
        width: 14px !important;
        height: 14px !important;
    }

    /*items*/
    .fv .items {
        width: 100%;
        min-width: 100%;
    }

    .fv .items::before {
        bottom: 22px;
        left: 3px;
        width: 173px;
        height: 191.05px;
        background: url(../img/recruit/fv-item-sp-1.png) no-repeat;
        background-size: cover;
    }

    .fv .items::after {
        top: 30px;
        right: 3px;
        width: 113.53px;
        height: 181.19px;
        background: url(../img/recruit/fv-item-sp-2.png) no-repeat;
        background-size: cover;
    }

    /*page-title*/
    .fv .page-title {
        bottom: 30px;
        left: 45px;
    }

    .fv .page-title .en {
        font-size: 30px;
        margin-bottom: 5px;
    }

    .fv .page-title .ja {
        font-size: 13px;
    }

}

/*page-menu*/
.page-menu {
    margin: 70px auto;
    justify-content: center;
    row-gap: 20px;
}

.page-menu .box {
    position: relative;
    text-align: center;
    padding: 50px 0 0 0;
    width: calc(100% / 5);
    transition: .3s;
    text-align: center;
}

.page-menu .box:nth-child(1) {
    background: url(../img/recruit/menu-1.png) no-repeat center top 7px;
    background-size: 40px;
}

.page-menu .box:hover:nth-child(1) {
    background: url(../img/recruit/menu-1.png) no-repeat center top 2px;
    background-size: 40px;
}

.page-menu .box:nth-child(2) {
    background: url(../img/recruit/menu-2.png) no-repeat center top 7px;
    background-size: 40px;
}

.page-menu .box:hover:nth-child(2) {
    background: url(../img/recruit/menu-2.png) no-repeat center top 2px;
    background-size: 40px;
}

.page-menu .box:nth-child(3) {
    background: url(../img/recruit/menu-3.png) no-repeat center top 7px;
    background-size: 40px;
}

.page-menu .box:hover:nth-child(3) {
    background: url(../img/recruit/menu-3.png) no-repeat center top 2px;
    background-size: 40px;
}

.page-menu .box:nth-child(4) {
    background: url(../img/recruit/menu-4.png) no-repeat center top 7px;
    background-size: 40px;
}

.page-menu .box:hover:nth-child(4) {
    background: url(../img/recruit/menu-4.png) no-repeat center top 2px;
    background-size: 40px;
}

.page-menu .box:nth-child(5) {
    background: url(../img/recruit/menu-5.png) no-repeat center top 7px;
    background-size: 40px;
}

.page-menu .box:hover:nth-child(5) {
    background: url(../img/recruit/menu-5.png) no-repeat center top 2px;
    background-size: 40px;
}

.page-menu .box::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background: url(../img/recruit/dotto.png);
    background-size: auto 100%;
}

.page-menu .box:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background: url(../img/recruit/dotto.png);
    background-size: auto 100%;
}

.page-menu .box .menu {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 16px;
    font-weight: 700;
    padding-left: 25px;
    background: url(../img/recruit/icon-right.svg) no-repeat top 8px left;
    background-size: 15px;
    line-height: 1.8;
    padding-bottom: 3px;
    text-align: left;
    display: inline-block;
}

.page-menu .box .menu::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #FFA3BF;
    bottom: 0;
    /*アンダーラインがaタグの下端から現れる*/
    transform: scale(0, 1);
    /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
    transform-origin: left top;
    /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
    transition: transform 0.3s;
    /*変形の時間*/
}

.page-menu .box:hover .menu::after {
    transform: scale(1, 1);
    /*ホバー後、x軸方向に1（相対値）伸長*/
}

@media screen and (max-width: 1023px) {

    .page-menu .box {
        width: calc(100% / 3);
    }

}

@media screen and (max-width: 599px) {

    .page-menu {
        margin: 30px auto 40px auto;
    }

    .page-menu .box {
        padding: 40px 5px 0 5px;
    }

    .page-menu .box:nth-child(1),
    .page-menu .box:hover:nth-child(1),
    .page-menu .box:nth-child(2),
    .page-menu .box:hover:nth-child(2),
    .page-menu .box:nth-child(3),
    .page-menu .box:hover:nth-child(3),
    .page-menu .box:nth-child(4),
    .page-menu .box:hover:nth-child(4),
    .page-menu .box:nth-child(5),
    .page-menu .box:hover:nth-child(5) {
        background-size: 24px;
    }

    .page-menu .box .menu {
        font-size: 14px;
        padding-left: 16px;
        background: url(../img/recruit/icon-right.svg) no-repeat top 3px left;
        background-size: 12.51px;
        line-height: 1.28;
        padding-bottom: 5px;
    }

    .page-menu .box:nth-child(1) .menu {
        width: 100px;
    }

    .page-menu .box:nth-child(2) .menu,
    .page-menu .box:nth-child(4) .menu {
        width: 86px;
    }

    .page-menu .box:nth-child(3) .menu,
    .page-menu .box:nth-child(5) .menu {
        width: 72px;
    }

}

/*about*/
.about {
    position: relative;
    background: url(../img/recruit/about-bg-pc.jpg) no-repeat top center;
    background-color: #FFEDED;
    padding: 97px 0 93px 0;
}

.about::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 1340px;
    height: 308px;
    background: url(../img/recruit/about-item-1.png) no-repeat right;
    background-size: auto 100%;
}

.about::after {
    content: "";
    position: absolute;
    bottom: -42px;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 1320px;
    height: 270.24px;
    background: url(../img/recruit/about-item-3.png) no-repeat left;
    background-size: auto 100%;
    z-index: 3;
}

.about .item {
    background: url(../img/recruit/about-item-2.png) no-repeat top 458px right 95px;
    background-size: 456px;
}

.about .box {
    position: relative;
    justify-content: space-between;
    align-items: center;
    column-gap: 80px;
    row-gap: 30px;
    margin-bottom: 40px;
    z-index: 4;
}

.about .box .img {
    width: calc(50% - 40px);
}

.about .box .text {
    width: calc(50% - 40px);
}

.about .box-2 .img {
    order: 2;
}

.about .box-2 .text {
    order: 1;
}

.about .box .text .pink {
    font-family: "Zen Maru Gothic", serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    color: #FF91B3;
    padding-left: 34px;
    margin-bottom: 15px;
    background: url(../img/recruit/icon-pink.svg) no-repeat top 5px left;
    background-size: 24px;
}

.about .box .text .title {
    font-family: "Zen Maru Gothic", serif;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.44;
    color: #6D553D;
    margin-bottom: 20px;
}

.about .btn-area {
    position: relative;
    z-index: 4;
    max-width: 760px;
    margin: 0 auto;
    row-gap: 20px;
    column-gap: 80px;
}

@media screen and (max-width: 1023px) {

    /*about*/
    .about {
        background: url(../img/recruit/about-bg-sp.jpg) no-repeat top center;
        background-color: #FFEDED;
        padding: 70px 0 55px 0;
    }

    .about::before,
    .about::after {
        display: none;
    }

    .about .item {
        background: none;
    }

    .about .box {
        margin-bottom: 30px;
    }

    .about .box .img,
    .about .box .text {
        width: 100%;
    }

    .about .box-2 .img {
        order: 1;
    }

    .about .box-2 .text {
        order: 2;
    }

    .about .box .text .pink {
        margin-bottom: 10px;
    }

    .about .box .text .title {
        font-size: 22px;
        line-height: 1.4;
    }

}

/*data*/
.data {
    position: relative;
    background: url(../img/recruit/data-bg-pc.jpg) no-repeat top center;
    background-color: #FFD7CB;
    padding: 97px 0 0 0;
    z-index: 2;
}

.data::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 100%;
}

.data .section-title .en {
    color: #ED6D47;
}

.data .section-title .en::before,
.data .section-title .en::after {
    background: #ED6D47;
}

.data .data-list {
    column-gap: 40px;
    row-gap: 40px;
    margin-bottom: 67px;
}

.data .data-list li {
    width: calc(50% - 20px);
}

@media screen and (max-width: 1023px) {

    .data {
        background: url(../img/recruit/data-bg-sp.jpg) no-repeat top center;
        background-color: #FFD7CB;
        padding: 60px 0 65px 0;
    }

    .data::before {
        background: url(../img/recruit/data-bg-sp-2.jpg) no-repeat bottom center;
        background-size: 100% auto;
        min-height: 28px;
        height: 7.466666666666668vw;
    }

    .data .data-list {
        row-gap: 25px;
        margin-bottom: 40px;
    }

}

@media screen and (max-width: 599px) {

    .data .data-list li {
        width: 100%;
    }

}

/*pro*/
.pro {
    position: relative;
    background: #FFEDED;
}

.pro::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    background: url(../img/recruit/data-bg-pc.png) no-repeat bottom center;
    width: 100%;
    height: 153px;
    z-index: 1;
}

.pro .inner {
    position: relative;
    background: url(../img/recruit/pro-pc.jpg) no-repeat center;
    background-size: 100% auto;
    padding: 367px 0 190px 0;
}

.pro .text {
    max-width: 463px;
}

.pro .text .title {
    font-family: "Zen Maru Gothic", serif;
    font-size: 36px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.8;
    margin-bottom: 10px;
}

.pro .text .line {
    color: #FF91B3;
    border-radius: 5px;
    background: #fff;
    padding: 5px 5px 8px 5px;
    display: inline-block;
    margin-bottom: 5px;
    line-height: 1;
}

.pro .text .line:first-child {
    margin-right: 5px;
}

.pro .text .line:last-child {
    margin-left: 5px;
}

.pro .text .pink {
    font-family: "Zen Maru Gothic", serif;
    color: #FF91B3;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .07em;
    margin-bottom: 25px;
}

.pro img.sp {
    margin-top: 30px;
}

@media screen and (max-width: 1023px) {

    .pro::before {
        display: none;
    }

    .pro .inner {
        background: none;
        padding: 55px 0;
    }

    .pro .text {
        max-width: 100%
    }

    .pro .text .title {
        font-size: 25px;
        line-height: 1.52;
        margin-bottom: 10px;
    }

    .pro .text .pink {
        font-size: 12px;
        margin-bottom: 20px;
    }

}

/*voice*/
.voice {
    position: relative;
    background: #FFEDED;
    padding-bottom: 95px;
}

.voice::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    width: 320px;
    height: 163.11px;
    background: url(../img/recruit/voice_back.png) no-repeat;
    background-size: cover;
}

.voice .voice-inner {
    position: relative;
    max-width: 1200px;
    padding-bottom: 57px;
}

.voice .voice-inner::before {
    content: "";
    position: absolute;
    top: 35px;
    left: 0;
    width: 100%;
    height: calc(100% - 35px);
    bottom: 100%;
    background: #fff;
    border-radius: 30px;
}

.voice .voice-inner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    height: 143.83px;
    width: 100%;
    max-width: 1000px;
    background: url(../img/common/voice-item.png) no-repeat center right;
    background-size: auto 100%;
}

.voice .section-title {
    position: relative;
    margin-bottom: 60px;
}

.voice .section-title .sub-title {
    padding: 0 20px;
}

.voice-list {
    position: relative;
    max-width: 1050px;
    column-gap: 50px;
    row-gap: 40px;
    margin-bottom: 50px;
    justify-content: space-between;
}

.voice-list .box {
    position: relative;
    width: calc(100% / 4 - 38px);
}

.voice-list .box .img {
    position: relative;
    height: 310px;
    overflow: hidden;
    border-radius: 300px;
    margin-bottom: 25px;
    width: 100%;
}

.voice-list .box .img img {
    border-radius: 300px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    transform-origin: top;
    width: 100%;
    height: 100%;
    transition: .3s;
    object-fit: cover;
}

.voice-list .box:hover .img img {
    transform: translateX(-50%) scale(1.04);
}

.voice-list .box .tag {
    position: absolute;
    top: 0;
    left: 13px;
    font-family: "Zen Maru Gothic", serif;
    font-size: 18px;
    font-weight: 700;
    display: inline-block;
    padding: 10px 2px 5px 2px;
    border-radius: 3px;
    color: #fff;
    writing-mode: vertical-rl;
    letter-spacing: .3em;
}

.voice-list .box .tag-1 {
    background: #FFA3BF;
}

.voice-list .box .tag-2 {
    background: #ED6D47;
}

.voice-list .box .tag-3 {
    background: #F5A000;
}

.voice-list .box .title {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 15px;
}

.voice-list .box .cm {
    font-size: 14px;
    line-height: 1.8;
}

.voice-list .box:hover .title,
.voice-list .box:hover .cm {
    text-decoration: underline;
}

@media screen and (max-width: 1023px) {

    .voice-list {
        max-width: 530px;
    }

    .voice-list .box {
        width: calc(100% / 2 - 25px);
    }

    .voice .voice-inner::after {
        top: -30px;
        height: 79.91px;
        max-width: 344px;
    }

    .voice .section-title .sub-title .pc {
        display: block;
    }

    .voice .section-title .sub-title .sp {
        display: none;
    }

}

@media screen and (max-width: 599px) {

    .voice {
        padding-top: 30px;
        padding-bottom: 40px;
    }

    .voice::before {
        top: 0;
        width: 240px;
        height: 181.49px;
        background: url(../img/recruit/voice_back-sp.png) no-repeat;
        background-size: cover;
    }

    .voice .voice-inner {
        padding-bottom: 42px;
    }

    .voice .voice-inner::before {
        top: 65px;
        height: calc(100% - 65px);
    }

    .voice .section-title {
        margin-bottom: 40px;
    }

    .voice .section-title .sub-title {
        padding: 0 20px;
        text-align: left;
    }

    .voice .section-title .sub-title .pc {
        display: none;
    }

    .voice .section-title .sub-title .sp {
        display: block;
    }

    .voice-list {
        max-width: 230px;
        margin-bottom: 40px;
    }

    .voice-list .box {
        width: 100%;
    }

    .voice-list .box .img {
        margin-bottom: 20px;
    }

}

/*blog*/
.blog {
    background: url(../img/recruit/recruit-bg-pc.jpg) no-repeat center bottom;
    background-size: 100% auto;
    padding: 95px 0 min(475px, 33.92857142857143vw) 0;
}

.blog .section-title {
    margin-bottom: 50px;
}

.blog-list {
    column-gap: 40px;
    row-gap: 48px;
    margin-bottom: 95px;
    justify-content: center;
}

.blog-list .box {
    width: calc(100% / 3 - 27px);
}

.blog-list .box .img {
    position: relative;
    height: 18vw;
    max-height: 220px;
    overflow: hidden;
    border-radius: 30px;
    margin-bottom: 30px;
    width: 100%;
}

.blog-list .box .img img {
    border-radius: 30px;
    width: 100%;
    height: 100%;
    transition: .3s;
    object-fit: cover;
}

.blog-list .box:hover .img img {
    transform: scale(1.2);
}

.blog-list .box .date {
    font-size: 16px;
    font-weight: 600;
    color: #FF91B3;
    margin-bottom: 10px;
}

.blog-list .box .title {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 15px;
}

.blog-list .box .cm {
    font-size: 14px;
    line-height: 1.8;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    /* 制限したい行数が3の場合 */
    overflow: hidden;
}

.blog-list .box:hover .title,
.blog-list .box:hover .cm {
    text-decoration: underline;
}

.blog .bana {
    position: relative;
    border: 1px solid #FFA3BF;
    border-radius: 30px;
    height: 200px;
    background: #FFEDED;
    padding-right: min(90px, 6.428571428571428vw);
}

.blog .bana::before {
    content: "";
    position: absolute;
    top: 50%;
    right: min(50px, 3.571428571428571vw);
    transform: translateY(-50%);
    margin: auto;
    max-width: 40px;
    width: 2.857142857142857vw;
    max-height: 40px;
    height: 2.857142857142857vw;
    background: url(../img/recruit/icon-right.svg) no-repeat;
    background-size: cover;
}

.blog .bana:hover::before {
    background: url(../img/recruit/btn-icon.svg) no-repeat;
    background-size: cover;
}

.blog .bana:hover {
    background: #FF91B3;
}

.blog .bana .img {
    width: 45.4%;
    position: relative;
    height: 198px;
    overflow: hidden;
    border-radius: 30px 0 0 30px;
}

.blog .bana .img::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: url(../img/recruit/bana-item-pc.png) no-repeat right;
    background-size: auto 100%;
    z-index: 1;
}

.blog .bana:hover .img::before {
    background: url(../img/recruit/bana-item-hover-pc.png) no-repeat right;
    background-size: auto 100%;
}

.blog .bana .img img {
    border-radius: 30px 0 0 30px;
    width: 100%;
    height: 100%;
    transition: .3s;
    object-fit: cover;
    transform-origin: top;
}

.blog .bana:hover .img img {
    transform: scale(1.06);
}

.blog .bana .text {
    width: 54.6%;
    padding-top: 50px;
    margin-bottom: 0;
}

.blog .bana:hover .section-title .en,
.blog .bana:hover .section-title .ja {
    color: #fff;
}

.blog .bana:hover .section-title .en::before,
.blog .bana:hover .section-title .en::after {
    background: #F0D6D6;
}

@media screen and (max-width: 599px) {

    .blog {
        background-size: 800px;
        padding: 80px 0 300px 0;
    }

    .blog .section-title {
        margin-bottom: 30px;
    }

    .blog-list {
        margin-bottom: 60px;
        row-gap: 30px;
    }

    .blog-list .box {
        width: 100%;
    }

    .blog-list .box .img {
        min-height: 220px;
        height: 58.666666666666664vw;
        max-height: 100%;
    }

    .blog .bana {
        border-radius: 25px;
        height: 320px;
        padding-right: 0;
        padding-bottom: 55px;
    }

    .blog .bana::before {
        top: auto;
        bottom: 20px;
        left: 50%;
        right: auto;
        transform: translateX(-50%);
        width: 24px;
        height: 24px;
    }

    .blog .bana .img {
        width: 100%;
        height: 191.36px;
        border-radius: 25px 25px 0 0;
    }

    .blog .bana .img::before {
        bottom: 0;
        background: url(../img/recruit/bana-item-sp.png) no-repeat bottom;
        background-size: 100% auto;
    }

    .blog .bana:hover .img::before {
        background: url(../img/recruit/bana-item-hover-sp.png) no-repeat bottom;
        background-size: 100% auto;
    }

    .blog .bana .img img {
        border-radius: 25px 25px 0 0;
    }

    .blog .bana .text {
        width: 100%;
        padding-top: 5px;
    }

    .blog .bana .section-title .en {
        margin-bottom: 5px;
    }

}

/*--------------------------------------------------------------------------------------------------------------------

下層ページ

--------------------------------------------------------------------------------------------------------------------*/
/*page*/
.page {
    position: relative;
    padding: 50px 0 120px 0;
}

.page::before {
    content: "";
    position: absolute;
    top: 240px;
    left: 0;
    width: 100%;
    height: calc(100% - 240px);
    background: #FFEDED;
    z-index: -1;
}

.page-1::before {
    display: none;
}

/*page-fv*/
.page-fv {
    position: relative;
    margin-bottom: 70px;
}

.page-1 .page-fv {
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc;
}

.page-fv .section-title {
    position: relative;
    margin-bottom: 40px;
    z-index: 1;
}

.page-fv .img {
    position: relative;
    height: 300px;
}

.page-fv .img::before {
    content: "";
    position: absolute;
    top: -78px;
    left: -28px;
    width: 195.61px;
    height: 351.76px;
    background: url(../img/common/page-fv-item-1.png) no-repeat;
    background-size: cover;
}

.page-fv .img::after {
    content: "";
    position: absolute;
    top: -68px;
    right: -18px;
    width: 221.93px;
    height: 223.33px;
    background: url(../img/common/page-fv-item-2.png) no-repeat;
    background-size: cover;
}

.page-fv .img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 20px;
}

@media screen and (max-width: 599px) {

    /*page*/
    .page {
        padding: 25px 0 100px 0;
    }

    .page::before {
        top: 175px;
        height: calc(100% - 175px);
    }

    /*page-fv*/
    .page-fv {
        margin-bottom: 45px;
    }

    .page-fv .section-title {
        margin-bottom: 25px;
    }

    .page-fv .img {
        min-height: 130px;
        height: 34.66666666666667vw;
        padding: 0 10px;
    }

    .page-fv .img::before {
        top: -10px;
        left: 0;
        width: 45px;
        height: 131.81px;
        background: url(../img/common/page-fv-item-sp-1.png) no-repeat;
        background-size: cover;
    }

    .page-fv .img::after {
        top: -8px;
        right: 0;
        width: 53.65px;
        height: 80px;
        background: url(../img/common/page-fv-item-sp-2.png) no-repeat;
        background-size: cover;
    }

}

/*page-about*/
.page-about .top-message {
    margin-bottom: 63px;
    column-gap: 80px;
    row-gap: 30px;
    align-items: center;
}

.page-about .top-message .text,
.page-about .top-message .img {
    width: calc(50% - 40px);
}

.page-about .top-message .text .title {
    font-family: "Zen Maru Gothic", serif;
    font-size: 40px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.5;
    margin-bottom: 30px;
}

.page-about .top-message .text .hart {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 25px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.4;
    margin-bottom: 17px;
    padding: 0 117px 0 50px;
    background: url(../img/about/hart.png) no-repeat center left;
    background-size: 40px;
    display: inline-block;
}

.page-about .top-message .text .hart::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    margin: auto;
    width: 100px;
    height: 1px;
    background: #6D553D;
}

@media screen and (max-width: 1023px) {

    .page-about .top-message .text,
    .page-about .top-message .img {
        width: 100%;
    }

}

@media screen and (max-width: 599px) {

    .page-about .top-message {
        margin-bottom: 40px;
    }

    .page-about .top-message .text .title {
        font-size: 30px;
        line-height: 1.6;
    }

    .page-about .top-message .text .hart {
        font-size: 22px;
        padding: 0 90px 0 43px;
        background-size: 37px;
    }

    .page-about .top-message .text .hart::before {
        width: 80px;
    }

}

.page .content {
    background: #fff;
    border-radius: 30px;
    padding: 65px 0;
}

.page-about .content-1 {
    margin-bottom: 85px;
}

.page-about .content-inner {
    max-width: 920px;
}

.page-about .content-1 .flex-area {
    position: relative;
    margin-top: 70px;
}

.page-about .content-1 .flex-area::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: url(../img/about/line.jpg) left top;
    background-size: auto 100%;
}

.page-about .flex-area .box {
    column-gap: 60px;
    row-gap: 15px;
}

.page-about .content-1 .flex-area .box {
    padding-top: 70px;
}

.page-about .content-2 .flex-area .box {
    align-items: center;
    margin-bottom: 50px;
}

.page-about .flex-area .box .text,
.page-about .flex-area .box .img {
    width: calc(50% - 30px);
}

.page-about .flex-area .box-2 .img {
    order: 1;
}

.page-about .flex-area .box-2 .text {
    order: 2;
}

.page-about .flex-area .box .text .title {
    font-family: "Zen Maru Gothic", serif;
    font-size: 23px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.56;
    margin-bottom: 15px;
}

.page-about .content-2 .flex-area .box .text .title {
    margin-bottom: 20px;
    line-height: 1.65;
}

.page-about .flex-area .box .text .small {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 700;
    font-size: 16px;
    color: #6D553D;
}

.page-about .flex-area .box .text .pink,
.page-about .flex-area .box .text .pink .small {
    color: #FF91B3;
}

.page-about .flex-area .box .img {
    border-radius: 30px;
    max-height: 280px;
}

.page-about .flex-area .box .img img {
    border-radius: 30px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (max-width: 1023px) {

    .page-about .flex-area .box .text,
    .page-about .flex-area .box .img {
        width: 100%;
    }

    .page-about .flex-area .box-2 .img {
        order: 2;
    }

    .page-about .flex-area .box-2 .text {
        order: 1;
    }

    .page-about .content-inner {
        width: calc(100% - 50px);
    }

    .page-about .flex-area .box .img {
        max-height: 100%;
        min-height: 190px;
        height: 50.66666666666667vw;
    }

}

@media screen and (max-width: 599px) {

    .page .content {
        padding: 35px 0;
    }

    .page-about .content-1 {
        margin-bottom: 60px;
    }

    .page-about .content-1 .flex-area {
        margin-top: 30px;
    }

    .page-about .content-1 .flex-area .box {
        padding-top: 40px;
    }

    .page-about .flex-area .box .text .title {
        font-size: 20px;
        line-height: 1.4;
    }

    .page-about .content-2 .flex-area .box .text .title {
        line-height: 1.8;
    }

    .page-about .content-2 .flex-area .box {
        row-gap: 32px;
    }

    .page-about .flex-area .box .text .pink .small {
        font-size: 14px;
    }

    .page-about .content-2 .flex-area .box {
        margin-bottom: 40px;
    }

}

/*voice*/
.page-voice .top-message {
    text-align: center;
}

.page-voice .top-message .section-title-1 .ja {
    margin-bottom: 40px;
}

.page-voice .content {
    position: relative;
    margin-top: 50px;
    padding-top: 105px;
}

.page-voice .content::before {
    content: "";
    position: absolute;
    top: -50px;
    right: 26px;
    height: 143.83px;
    width: 177.14px;
    max-width: 1000px;
    background: url(../img/common/voice-item.png) no-repeat center right;
    background-size: 100% auto;
}

.page-voice .voice-list {
    max-width: 920px;
}

.page-voice .voice-list::after {
    content: "";
    display: block;
    width: calc(100% / 3 - 34px);
}

.page-voice .voice-list .box {
    width: calc(100% / 3 - 34px);
}

.page-voice .voice-list .box .img {
    height: 360px;
    margin-bottom: 15px;
}

.page-voice .voice-list .box .tag {
    position: relative;
    top: auto;
    left: auto;
    writing-mode: inherit;
    letter-spacing: 0;
    font-size: 14px;
    padding: 1px 10px 2px 10px;
    min-width: 86px;
    text-align: center;
    margin-bottom: 10px;
    line-height: 1.8;
}

.page-voice .voice-list .box .title {
    margin-bottom: 10px;
}

@media screen and (max-width: 1023px) {

    .page-voice .voice-list {
        max-width: 594px;
    }

    .page-voice .voice-list::after {
        width: calc(100% / 2 - 34px);
    }

    .page-voice .voice-list .box {
        width: calc(100% / 2 - 34px);
    }

}


@media screen and (max-width: 599px) {

    .page-voice .top-message .section-title-1 .ja {
        margin-bottom: 20px;
    }

    .page-voice .content {
        margin-top: 75px;
        padding-top: 53px;
        padding-bottom: 0;
    }

    .page-voice .content::before {
        right: 0;
        height: 125.26px;
        width: 101.71px;
    }

    .page-voice .voice-list {
        max-width: 270px;
        margin-bottom: 0;
    }

    .page-voice .voice-list::after,
    .page-voice .voice-list .box {
        width: 100%;
    }

    .page-voice .voice-list .box .img {
        margin-bottom: 10px;
    }

}

/*page-voice_sub*/
.page-voice_sub {
    position: relative;
    background: #FFEDED;
    padding-top: 60px;
}

.page-voice_sub::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 122px;
    background: #fff;
    z-index: 1;
}

.page-voice_sub::after {
    content: "";
    position: absolute;
    top: 122px;
    left: 0;
    width: 100%;
    height: 22px;
    background: url(../img/voice/bg.jpg) left center;
    background-size: auto 100%;
    z-index: 1;
}

.page-voice_sub .voice-fv {
    position: relative;
    z-index: 2;
    align-items: center;
    margin-bottom: 60px;
    max-width: 1010px;
}

.page-voice_sub .voice-fv .section-title {
    width: 43.6%;
    text-align: left;
    padding: 0 45px 0 10px;
}

.page-voice_sub .voice-fv .img {
    position: relative;
    width: 56.4%;
    height: 346px;
    border-radius: 300px;
}

.page-voice_sub .voice-fv .img::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 143.88px;
    height: 335.99px;
}

.page-voice_sub .voice-fv .img-1::before {
    background: url(../img/voice/main-item-1.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-2::before {
    background: url(../img/voice/main-item-1-2.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-3::before {
    background: url(../img/voice/main-item-1-3.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-4::before {
    background: url(../img/voice/main-item-1-4.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-5::before {
    background: url(../img/voice/main-item-1-5.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-6::before {
    background: url(../img/voice/main-item-1-6.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-7::before {
    background: url(../img/voice/main-item-1-7.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img-8::before {
    background: url(../img/voice/main-item-1-8.png) no-repeat center left;
    background-size: 100% auto;
}

.page-voice_sub .voice-fv .img::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 108.5px;
    height: 326.38px;
    background: url(../img/voice/main-item-2.png) no-repeat center right;
    background-size: auto 100%;
}

.page-voice_sub .voice-fv .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 300px;
}

.page-voice_sub .voice-fv .tag {
    font-family: "Zen Maru Gothic", serif;
    font-size: 18px;
    font-weight: 700;
    display: inline-block;
    padding: 1px 15px 2px 15px;
    border-radius: 3px;
    color: #fff;
    min-width: 100px;
    margin-bottom: 20px;
    text-align: center;
}

.page-voice_sub .voice-fv .tag-1 {
    background: #FFA3BF;
}

.page-voice_sub .voice-fv .tag-2 {
    background: #ED6D47;
}

.page-voice_sub .voice-fv .tag-3 {
    background: #F5A000;
}

.page-voice_sub .voice-fv .ja {
    background: none;
    margin-bottom: 20px;
    padding-bottom: 0;
}

.page-voice_sub .voice-fv .cm {
    font-size: 16px;
}

.page-voice_sub .voice-inner {
    max-width: 920px;
}

.page-voice_sub .content {
    margin-bottom: 70px;
}

.page-voice_sub .voice-inner .q {
    font-family: "Zen Maru Gothic", serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    color: #6D553D;
    padding-bottom: 10px;
    margin-bottom: 20px;
    margin-top: 40px;
    border-bottom: 1px solid #B3B3B3;
}

.page-voice_sub .voice-inner .q:first-child {
    margin-top: 0;
}

.page-voice_sub .voice-inner .img {
    max-width: 620px;
    max-height: 400px;
    height: 28.57142857142857vw;
    margin: 40px auto 0 auto;
}

.page-voice_sub .voice-inner .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (max-width: 1023px) {

    .page-voice_sub .voice-fv .section-title {
        padding: 0;
    }

}

@media screen and (max-width: 599px) {

    .page-voice_sub {
        padding-top: 40px;
    }

    .page-voice_sub::before {
        height: 33px;
    }

    .page-voice_sub::after {
        top: 33px;
    }

    .page-voice_sub .voice-fv {
        margin-bottom: 45px;
    }

    .page-voice_sub .voice-fv .section-title {
        width: 100%;
    }

    .page-voice_sub .voice-fv .img {
        width: 100%;
        min-height: 207px;
        height: 55.2vw;
    }

    .page-voice_sub .voice-fv .img::before {
        width: 85.98px;
        height: 200.77px;
    }

    .page-voice_sub .voice-fv .img::after {
        width: 64.84px;
        height: 195.03px;
    }

    .page-voice_sub .voice-fv .tag {
        font-size: 14px;
        min-width: 80px;
    }

    .page-voice_sub .voice-fv .ja {
        font-size: 20px;
    }

    .page-voice_sub .content {
        padding: 47px 0;
        margin-bottom: 48px;
    }

    .page-voice_sub .voice-inner {
        width: calc(100% - 60px);
    }

    .page-voice_sub .voice-inner .q {
        font-size: 18px;
        padding-bottom: 10px;
        margin-bottom: 15px;
        border-bottom: 1px solid #B3B3B3;
    }

    .page-voice_sub .voice-inner .img {
        max-height: 100%;
        min-height: 187px;
        height: 49.86666666666667vw;
        margin: 25px auto 0 auto;
    }

}

/*page-data*/
.page-data .data {
    background: none;
    padding: 0;
}

.page-data .data .data-list {
    margin-bottom: 0;
}

@media screen and (max-width: 1023px) {

    .page-data .data::before {
        display: none;
    }

}

/*page-blog*/
.page-blog .blog-list {
    margin-bottom: 60px;
}

.pagination .flex {
    justify-content: center;
    align-items: center;
    column-gap: 10px;
    row-gap: 10px;
}

.pagination .button a {
    width: 8.48px;
    height: 16.97px;
    margin: 0 auto;
}

.pagination .button.prev a {
    background: url(../img/common/prev.png) no-repeat center;
    background-size: 100% auto;
}

.pagination .button.prev a:hover {
    background: url(../img/common/prev-hover.png) no-repeat center;
    background-size: 100% auto;
}

.pagination .button.next a {
    background: url(../img/common/next.png) no-repeat center;
    background-size: 100% auto;
}

.pagination .button.next a:hover {
    background: url(../img/common/next-hover.png) no-repeat center;
    background-size: 100% auto;
}

.pagination .num a {
    width: 40px;
    height: 40px;
    text-align: center;
    border: 2px solid #FFA3BF;
    padding-top: 5px;
}

.pagination .num a:hover {
    background: #FFA3BF;
    color: #fff;
}

@media screen and (max-width: 599px) {

    .page-blog .blog-list {
        margin-bottom: 40px;
    }

    .pagination {
        max-width: 240px;
    }

    .pagination .button {
        width: 100%;
    }

}

/*staffblog_detail*/
.article {
    margin-bottom: 55px;
    max-width: 920px;
}

.article .article-title {
    margin-bottom: 50px;
}

.article .article-title .date {
    margin-bottom: 10px;
}

.article .article-title .title {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 25px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.568;
    padding-bottom: 15px;
}

.article .article-title .title::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #FFA3BF;
}

.article .img {
    max-width: 780px;
    height: 420px;
    margin: 0 auto 50px auto;
}

.article .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pagination-1 {
    max-width: 920px;
}

.pagination-1 .flex {
    justify-content: space-between;
    align-items: center;
    column-gap: 20px;
    row-gap: 20px;
}

.pagination-1 .btn-1 {
    max-width: 150px;
    margin: 0;
}

.pagination-1 .btn-1 a {
    background: #ccc;
    border: 1px solid #ccc;
    padding: 13px 15px;
    box-shadow: none;
}

.pagination-1 .btn-1 a:hover {
    background: #B3B3B3;
    border: 1px solid #B3B3B3;
    color: #fff;
}

.pagination-1 .btn-1.prev a::before {
    left: 15px;
    right: auto;
    background: url(../img/recruit/btn-icon-prev.svg) no-repeat left;
    background-size: 15px;
    transition: .3s;
}

.pagination-1 .btn-1.next a:hover::before {
    background: url(../img/recruit/btn-icon.svg) no-repeat left;
    background-size: 15px;
}

@media screen and (max-width: 694px) {

    .pagination-1 .flex {
        justify-content: space-between;
        column-gap: 40px;
    }

    .pagination-1 .btn {
        order: 1;
        max-width: 100%;
    }

    .pagination-1 .btn-1.prev {
        order: 2;
        width: calc(50% - 20px);
        max-width: 100%;
    }

    .pagination-1 .btn-1.next {
        order: 3;
        width: calc(50% - 20px);
        max-width: 100%;
    }

}

@media screen and (max-width: 599px) {

    .article {
        padding-top: 15px;
        margin-bottom: 35px;
    }

    .article .article-title {
        margin-bottom: 30px;
    }

    .article .article-title .date {
        font-size: 14px;
        margin-bottom: 5px;
    }

    .article .article-title .title {
        font-size: 22px;
        line-height: 1.78;
    }

    .article .article-title .title::before {
        width: 40px;
    }

    .article .img {
        min-height: 185px;
        height: 49.333333333333336vw;
        margin: 0 auto 40px auto;
    }

    .pagination-1 .flex {
        justify-content: space-between;
        align-items: center;
        column-gap: 20px;
        row-gap: 20px;
    }

    .pagination-1 .btn-1 {
        max-width: 150px;
    }

    .pagination-1 .btn-1 a {
        background: #ccc;
        border: 1px solid #ccc;
        padding: 13px 15px;
        box-shadow: none;
    }

    .pagination-1 .btn-1 a:hover {
        background: #B3B3B3;
        border: 1px solid #B3B3B3;
        color: #fff;
    }

    .pagination-1 .btn-1.prev a::before {
        left: 15px;
        right: auto;
        background: url(../img/recruit/btn-icon-prev.svg) no-repeat left;
        background-size: 15px;
        transition: .3s;
    }

    .pagination-1 .btn-1.next a:hover::before {
        background: url(../img/recruit/btn-icon.svg) no-repeat left;
        background-size: 15px;
    }

}

/*page-recruitment*/
.page-recruitment .page-link {
    margin: 0 auto;
    column-gap: 13px;
    row-gap: 10px;
    justify-content: space-between;
}

.page-recruitment .page-link .btn-2 {
    width: calc(100% / 3 - 10.4px);
    margin: 0;
}

.page-recruitment .page-link .btn-2 a {
    border-radius: 5px;
    box-shadow: none;
    color: #ED6D47;
    background: #fff;
    border: 2px solid #ED6D47;
}

.page-recruitment .page-link .btn-2 a:hover {
    color: #fff;
    background: #ED6D47;
}

.page-recruitment .page-link .btn-2 a::before {
    background: url(../img/recruit/btn-icon-hover.svg) no-repeat;
    background-size: 15px;
}

.page-recruitment .page-link .btn-2 a:hover::before {
    background: url(../img/recruit/btn-icon.svg) no-repeat;
    background-size: 15px;
}

/* @media screen and (max-width: 1144px) {

    .page-recruitment .page-link .btn-2_3 a {
        padding: 17px 35px 17px 0;
        text-align: right;
    }

} */

@media screen and (max-width: 979px) {

    .page-recruitment .page-link {
        justify-content: center;
    }

    .page-recruitment .page-link .btn-2 {
        width: calc(100% / 3 - 10.4px);
        max-width: 100%;
    }

    .page-recruitment .page-link .btn-2_3 a {
        padding: 17px 15px;
        text-align: center;
    }

    .page-recruitment .page-link .btn-2 a::before {
        right: 5px;
    }

}

@media screen and (max-width: 599px) {

    .page-recruitment .page-link {
        justify-content: flex-start;
    }

    .page-recruitment .page-link .btn-2 {
        width: calc(100% / 2 - 10.4px);
    }

    .page-recruitment .page-link .btn-2_3 a {
        padding: 8px 10px 9px 10px;
        text-align: center;
    }

    .page-recruitment .page-link .btn-2 a {
        font-size: 15px;
        padding: 8px 10px 9px 10px;
    }

}

@media screen and (max-width: 399px) {

    .page-recruitment .page-link .btn-2_3 a {
        padding: 8px 25px 9px 10px;
        text-align: right;
    }

}

.page-recruitment .section {
    padding-top: 70px;
}

.page-recruitment .section-1 .box {
    background: #FFEDED;
    border-radius: 10px;
    padding: 32px 37px;
    margin-bottom: 20px;
}

.page-recruitment .section-1 .box .title {
    font-family: "Zen Maru Gothic", serif;
    font-size: 18px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.55;
    margin-bottom: 20px;
}

.page-recruitment .section-1 .box .title .pink {
    font-size: 15px;
    color: #FF91B3;
    line-height: 1.86;
}

.page-recruitment .section-1 .box .list {
    row-gap: 10px;
}

.page-recruitment .section-1 .box .list li {
    position: relative;
    padding-left: 22px;
    margin-right: 25px;
}

.page-recruitment .section-1 .box .list li::before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
}

.page-recruitment .section-1 .cm {
    text-align: right;
}

@media screen and (max-width: 599px) {

    .page-recruitment .section {
        padding-top: 50px;
    }

    .page-recruitment .section-1 .box {
        padding: 30px 22px;
        margin-bottom: 25px;
    }

    .page-recruitment .section-1 .box .title {
        margin-bottom: 15px;
    }

    .page-recruitment .section-1 .box .list {
        row-gap: 5px;
        flex-direction: column;
    }

    .page-recruitment .section-1 .box .list li {
        margin-right: 0;
    }

}

.table,
.table th,
.table td {
    border-collapse: collapse;
}

.table {
    width: 100%;
    border-top: 1px solid #707070;
}

.table th,
.table td {
    padding: 20px;
    vertical-align: middle;
    border-bottom: 1px solid #707070;
    text-align: left;
}

.table th {
    background: #F5F5F5;
    width: 30%;
}

.table td {
    width: 70%;
}

.table .link {
    color: #0071BC;
    text-decoration: underline;
    display: inline-block;
}

.table .link:hover {
    text-decoration: none;
}

@media screen and (max-width: 599px) {

    .table tr {
        border-bottom: 1px solid #707070;
    }

    .table th,
    .table td {
        display: block;
        border-bottom: none;
    }

    .table th {
        width: 100%;
        padding: 15px 10px;
    }

    .table td {
        width: 100%;
        padding: 20px 10px;
    }

    .table .list li {
        position: relative;
        padding-left: 22px;
        margin-right: 25px;
    }

}

.page-recruitment .section-3 .section-title,
.page-recruitment .section-3 .section-title .ja {
    margin-bottom: 0;
}

.page-recruitment .section .title-1 {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 25px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.568;
    padding-bottom: 15px;
    padding-top: 55px;
    margin-bottom: 40px;
}

.page-recruitment .section .title-1::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: #FFA3BF;
}

.page-recruitment .section .title-1#recruit_4 {
    padding-top: 90px;
}

.page-recruitment .section .title-2 {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 20px;
    font-weight: 700;
    color: #6D553D;
    line-height: 1.4;
    padding-bottom: 10px;
    margin: 60px 0 25px 0;
    border-bottom: 1px solid #ccc;
}

.table .list {
    row-gap: 5px;
}

.table .list-1 {
    flex-direction: column;
}

.table .list li {
    position: relative;
    padding-left: 22px;
}

.table .list-2 li {
    margin-right: 25px;
}

.table .list li::before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (max-width: 599px) {

    .page-recruitment .section .title-1 {
        font-size: 22px;
        line-height: 1.78;
        margin-bottom: 30px;
        padding-top: 40px;
    }

    .page-recruitment .section .title-1#recruit_4 {
        padding-top: 60px;
    }

    .page-recruitment .section .title-1::before {
        width: 40px;
    }

    .table .list {
        row-gap: 0;
    }

    .table .list-3 {
        flex-direction: column;
    }

    .table .list-2 li {
        margin-right: 20px;
    }

}

.page-recruitment .section-3 {
    margin-bottom: 88px;
}

.page-recruitment .section-4 {
    background: #FFEDED;
    padding: 75px 90px;
}

.page-recruitment .section-4 .title-2 {
    margin-top: 0;
}

.page-recruitment .section-4 .flex {
    margin-bottom: 15px;
}

.page-recruitment .section-4 .flex .step {
    position: relative;
    font-family: "Zen Maru Gothic", serif;
    font-size: 18px;
    font-weight: 700;
    width: 100px;
    background: #FF91B3;
    color: #fff;
    text-align: center;
    padding: 23px 0;
    line-height: 1;
}

.page-recruitment .section-4 .flex .step .inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    justify-content: center;
}

.page-recruitment .section-4 .flex .text {
    width: calc(100% - 100px);
    font-size: 18px;
    font-weight: 600;
    background: #fff;
    padding: 20px 25px;
    vertical-align: middle;
}

.page-recruitment .section-4 .flex .text .cm {
    font-size: 16px;
    font-weight: 400;
    display: inline-block;
    margin-left: 25px;
    vertical-align: middle;
}

.page-recruitment .section-4 .flex .text .link {
    color: #FF91B3;
    display: inline-block;
}

@media screen and (max-width: 1023px) {

    .page-recruitment .section-4 {
        padding: 75px 22px;
    }

    .page-recruitment .section-4 .flex .text .sp {
        display: none;
    }

}

@media screen and (max-width: 599px) {

    .page-recruitment .section-3 {
        margin-bottom: 65px;
    }

    .page-recruitment .section-4 {
        background: #FFEDED;
        padding: 40px 22px;
    }

    .page-recruitment .section-4 .flex .step {
        width: 100%;
        padding: 14px 0;
        height: 48px;
    }

    .page-recruitment .section-4 .flex .text {
        width: 100%;
        padding: 20px 15px;
    }

    .page-recruitment .section-4 .flex .text .cm {
        margin-left: 0;
        display: block;
        margin-top: 5px;
    }

    .page-recruitment .section-4 .flex .text .sp {
        display: block;
    }

}

/*----------追記*/
body {
    background: none !important;
}

header {
    background-image: url(../img/common/bg_texture_01.jpg);
    background-position: center;
    background-repeat: repeat;
    background-size: 220px auto;
}