@charset "UTF-8";
.content {
  display: none; /*必須*/
}
.content.show {
  display: block; /*必須*/
}
.c-page-sub__container {
    position: relative;
}
.c-page-sub__container img {
    width: 100%;
}

/* c-page-sub-welfare
----------------------------------------*/
.c-page-sub-welfare__main {
    padding: 19.2rem 0 0;
}
.c-page-sub-welfare__main-img {
    width: 100%;
    margin: 7.4rem auto 0;
    max-width: 123.2rem;
}
.c-page-sub-welfare__main-img::after {
    content: "";
    position: absolute;
    background: url(../img/index/img-parts-welfare.png) no-repeat;
    background-size: 100%;
    width: 54.1rem;
    height: 29.5rem;
    bottom: -6rem;
    right: -19rem;
    z-index: 0;
}
.c-page-sub-welfare__main-inner {
    max-width: 123.2rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.c-page-sub-welfare__main-inner .c-page-sub__breadcrumb {
    padding-inline: 0;
}
.c-page-sub-welfare__main-inner h2 {
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
}
.c-page-sub-welfare__main-inner h2::after {
    content: "";
    position: absolute;
    background: url(../img/index/img-parts-about02.png) no-repeat;
    background-size: 100%;
    width: 73.3rem;
    height: 39.9rem;
    top: -9rem;
    left: -33rem;
    z-index: -1;
}
.c-page-sub-welfare__main-inner h2 .en {
    font-size: 10.2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    display: block;
    line-height: 1.3;
}
.c-page-sub-welfare__main-inner h2 .ja {
    margin-left: 3rem;
}
.c-page-sub-welfare__main-inner h2 .ja::before {
    content: "";
    position: absolute;
    background: url("../img/common/ico-ttl.svg") no-repeat;
    background-size: 100% 100%;
    width: 1.3rem;
    height: 1.3rem;
    top: .8rem;
    left: -3rem;
}
.c-page-sub-welfare__main-link {
    display: flex;
    justify-content: center;
    gap: 2.8rem;
    max-width: 63.8rem;
    margin: 13.5rem auto 0;
}
.c-page-sub-welfare__main-link a {
    font-size: 1.4rem;
    padding: 3rem 9.6rem 3rem 9.7rem;
    display: inline-block;
    color: #fff;
    font-weight: bold;
    width: 100%;
}
.c-page-sub-welfare__main-link a.active {
    background: #005BAC;
}
.c-page-sub-welfare__main-link a {
    background: #8E9CB7;
}

@media only screen and (max-width: 768px) {
    .c-page-sub-welfare__main-link a:hover {
        opacity: 1;
    }
    .c-page-sub-welfare__main {
        padding-top: calc(20 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-img {
        max-width: 100%;
        margin-top: calc(19 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-inner {
        max-width: 100%;
        padding-inline: calc(25 / 375 * 100vw);
        position: unset;
        flex-direction: column;
    }
    .c-page-sub-welfare__main-inner h2 {
        font-size: calc(13 / 375 * 100vw);
        margin-top: calc(91 / 375 * 100vw);
        margin-right: auto;
    }
    .c-page-sub-welfare__main-inner h2 .en {
        font-size: calc(44 / 375 * 100vw);
        margin-bottom: calc(12 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-inner h2 .ja {
        margin-left: calc(15 / 375 * 100vw);
        font-size: calc(14 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-inner h2 .ja::before {
        width: calc(9 / 375 * 100vw);
        height: calc(9 / 375 * 100vw);
        top: calc(-3 / 375 * 100vw);
        left: calc(-15 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-inner h2::after {
        width: calc(351 / 375 * 100vw);
        height: calc(191 / 375 * 100vw);
        top: calc(-46 / 375 * 100vw);
        left: calc(-154 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-img::after {
        width: calc(203 / 375 * 100vw);
        height: calc(110 / 375 * 100vw);
        bottom: calc(-34 / 375 * 100vw);
        right: calc(-70 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-wrapper {
        flex-direction: column;
    }
    .c-page-sub-welfare__main-wrapper p {
        max-width: 100%;
        font-size: calc(14 / 375 * 100vw);
        margin-bottom: calc(50 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-link {
        width: 100%;
    }
    .c-page-sub-welfare__main-link::after {
        width: calc(230 / 375 * 100vw);
        height: calc(171 / 375 * 100vw);
        top: calc(14 / 375 * 100vw);
        left: calc(29 / 375 * 100vw);
    }
    .c-page-sub-welfare__main-link a {
        font-size: calc(14 / 375 * 100vw);
        color: #fff;
    }
}


/* c-page-welfare__navi
----------------------------------------*/
.c-page-welfare__navi {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 3.6rem;
    z-index: 2000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s;
}
.c-page-welfare__navi.scroll {
    opacity: 1;
}
.c-page-welfare__navi a {
    width: 11.9rem;
    height: 9.6rem;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    padding-bottom: .2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: .24;
}
.c-page-welfare__navi.scroll a {
    pointer-events: all;
}
.c-page-welfare__navi .current a {
    opacity: 1;
}
.c-page-welfare__navi a::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -.9rem;
    margin: auto;
    width: 13.5rem;
    height: 6rem;
    border-radius: 50%;
    background: linear-gradient(to right, #65beff 10%,#005bac 100%);
    transform: rotate(-36deg);
}
@media (hover:hover) {
    .c-page-welfare__navi a {
        transition: opacity .3s
    }
    .c-page-welfare__navi a:hover {
        opacity: .24;
    }
}
@media screen and (max-width: 767px) {
    .c-page-welfare__navi {
        top: auto;
        bottom: 5rem;
        right: 5rem;
    }
    .c-page-welfare__navi a {
        width: 35.7rem;
        height: 28.8rem;
        font-size: 4.5rem;
        padding-bottom: .6rem;
    }
    .c-page-welfare__navi a::before {
        right: -2.7rem;
        width: 40.5rem;
        height: 18rem;
    }
}

/* c-page-welfare__welfare
----------------------------------------*/
.c-page-welfare__welfare {
    padding: 11.9rem 2rem 4.2rem;
}
.c-page-welfare__welfare h2.ttl-h2 {
    margin-bottom: 9.7rem;
}
.c-page-welfare__welfare-inner {
    z-index: 1;
    max-width: 119rem;
    margin: 0 auto;
}
.c-page-welfare__welfare-item {
    max-width: 105rem;
    margin: 0 auto;
}
.c-page-welfare__welfare-slide + .c-page-welfare__welfare-item {
    margin-top: 16rem;
}
.c-page-welfare__welfare-item h3 {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    color: #005BAC;
    margin-bottom: 3.1rem;
}
.c-page-welfare__welfare-item h3 span:nth-child(1) {
    display: block;
    width: 11.2rem;
    font-size: 2.4rem;
    background: #005BAC;
    padding: .55rem;
    color: #fff;
    margin-right: 2rem;
    text-align: center;
}
.c-page-welfare__welfare-item h3 span:nth-child(2) {
    flex: 1;
}
.c-page-welfare__welfare-text {
    font-size: 1.4rem;
    line-height: 2;
    font-weight: 500;
}
.c-page-welfare__welfare-note {
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 3rem;
}
.c-page-welfare__welfare-slide {
    margin-top: 11.2rem;
}
.c-page-welfare__welfare-slide .swiper-slide.swiper-slide-active,
.c-page-welfare__welfare-slide .swiper-slide.swiper-slide-duplicate-active {
    filter: none;
    transition: filter 0s !important;
}
.c-page-welfare__welfare-slide img {
    transition: transform .3s;
}
.c-page-welfare__welfare-slide.swiper-container {
    overflow: visible;
}
.c-page-welfare__welfare-slide .swiper-slide-active img,
.c-page-welfare__welfare-slide .swiper-slide-duplicate-active img {
    transform: scale(1.21);
}
.c-page-welfare__welfare-slide .swiper-slide-duplicate-next img,
.c-page-welfare__welfare-slide .swiper-slide-duplicate-prev img,
.c-page-welfare__welfare-slide .swiper-slide:not(.swiper-slide-next):not(.swiper-slide-prev):not(.swiper-slide-active):not(.swiper-slide-duplicate-active) img {
    transform: translateY(-20rem) scale(.8);
}
.c-page-welfare__welfare-slide-arrow {
    display: flex;
    justify-content: center;
    margin-top: 7.5rem;
    gap: 4rem;
}
.c-page-welfare__welfare-slide-arrow-next,
.c-page-welfare__welfare-slide-arrow-prev {
    width: 4.1rem;
    height: 4.1rem;
    border-radius: 50%;
    background: #000 url(../img/common/btn-arrow.svg) no-repeat center center / 1.147rem auto;
    cursor: pointer;
}
.c-page-welfare__welfare-slide-arrow-prev {
    transform: scale(-1, 1);
}
.c-page-welfare__welfare-list {
    max-width: 106rem;
    margin: 15rem auto 0;
    background: #005BAC;
    color: #fff;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5rem 0;
    padding: 8rem 0;
}
.c-page-welfare__welfare-list li {
    border-left: .1rem solid #00A7FF;
    padding: 1.5rem 5.5rem 6.3rem;
}
.c-page-welfare__welfare-list li:nth-child(3n+1) {
    border: 0;
}
.c-page-welfare__welfare-list li:nth-child(n+3) {
    padding-bottom: 3.5rem;
}
.c-page-welfare__welfare-list figure {
    max-width: 12.2rem;
    margin: 0 auto 4.7rem;
}
.c-page-welfare__welfare-list h3 {
    font-size: 2.4rem;
    height: 8.1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.6667;
    text-align: center;
    margin-bottom: 1.4rem;
}
.c-page-welfare__welfare-list p {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .c-page-welfare__welfare {
        padding: calc(40 / 375 * 100vw) 0 8rem;
    }
    .c-page-welfare__welfare h2.ttl-h2 {
        margin-bottom: calc(15 / 375 * 100vw);
    }
    .c-page-welfare__welfare-inner {
        display: block;
        max-width: 100%;
        padding-inline: calc(30 / 375 * 100vw) calc(30 / 375 * 100vw);
    }
    .c-page-welfare__welfare-item {
        max-width: none;
    }
    .c-page-welfare__welfare-slide + .c-page-welfare__welfare-item {
        margin-top: 32rem;
    }
    .c-page-welfare__welfare-item h3 {
        font-size: 5.4rem;
        margin-bottom: 9rem;
    }
    .c-page-welfare__welfare-item h3 span:nth-child(1) {
        width: 28rem;
        font-size: 6rem;
        padding: 1.65rem;
        margin-right: 5rem;
    }
    .c-page-welfare__welfare-text {
        font-size: calc(14 / 375 * 100vw);
    }
    .c-page-welfare__welfare-note {
        font-size: 4rem;
        margin-top: 9rem;
    }
    .c-page-welfare__welfare-slide {
        margin: 30rem -20rem;
    }
    .c-page-welfare__welfare-slide .swiper-slide-duplicate-next img,
    .c-page-welfare__welfare-slide .swiper-slide-duplicate-prev img,
    .c-page-welfare__welfare-slide .swiper-slide:not(.swiper-slide-next):not(.swiper-slide-prev):not(.swiper-slide-active):not(.swiper-slide-duplicate-active) img {
        transform: translateY(-30rem) scale(.8);
    }
    .c-page-welfare__welfare-slide .swiper-slide-active img,
    .c-page-welfare__welfare-slide .swiper-slide-duplicate-active img {
        transform-origin: center top;
        transform: scale(1.52);
    }
    .c-page-welfare__welfare-slide-arrow {
        margin-top: 35rem;
        gap: 10rem;
    }
    .c-page-welfare__welfare-slide-arrow-next,
    .c-page-welfare__welfare-slide-arrow-prev {
        width: 12.3rem;
        height: 12.3rem;
        background: #000 url(../img/common/btn-arrow.svg) no-repeat center center / 3.441rem auto;
    }
    .c-page-welfare__welfare-list {
        max-width: none;
        margin: 15rem calc(30 / 375 * 100vw) 0;
        grid-template-columns: repeat(1, 1fr);
        gap: 0;
        padding: 0 10rem;
    }
    .c-page-welfare__welfare-list li {
        border-left: 0;
        padding: 10rem 0;
    }
    .c-page-welfare__welfare-list li:nth-child(n+3) {
        padding-bottom: 10rem;
    }
    .c-page-welfare__welfare-list li + li {
        border-top: .3rem solid #00A7FF !important;
    }
    .c-page-welfare__welfare-list figure {
        max-width: 36.6rem;
        margin: 0 auto 4.7rem;
    }
    .c-page-welfare__welfare-list h3 {
        font-size: 7.2rem;
        height: auto;
        margin-bottom: 4.2rem;
    }
    .c-page-welfare__welfare-list p {
        font-size: calc(14 / 375 * 100vw);
    }
}

/* c-page-welfare__training
----------------------------------------*/
.c-page-welfare__training {
    padding: 11.9rem 2rem 14.9rem;
}
.c-page-welfare__training h2.ttl-h2 {
    margin-bottom: 5.7rem;
}
.c-page-welfare__training-inner {
    z-index: 1;
    max-width: 119rem;
    margin: 0 auto;
}
.c-page-welfare__training-item {
    max-width: 102rem;
    margin: 0 auto;
}
.c-page-welfare__training-item + .c-page-welfare__training-item {
    margin-top: 12.1rem;
}
.c-page-welfare__training h3 {
    background: #005BAC;
    color: #fff;
    font-size: 2.4rem;
    padding: .8rem 2rem;
    width: fit-content;
    margin-bottom: 7rem;
}
.c-page-welfare__training-list li {
    border-bottom: .1rem solid #8E9CB7;
    display: flex;
    align-items: center;
    padding: 0 0 4.4rem 2.5rem;
}
.c-page-welfare__training-list li + li {
    margin-top: 4.4rem;
}
.c-page-welfare__training-list li figure {
    width: 6.8rem;
    margin-right: 4.4rem;
}
.c-page-welfare__training-list li h4 {
    width: 20.8rem;
    font-size: 2rem;
    color: #005BAC;
}
.c-page-welfare__training-list li p {
    flex: 1;
    font-size: 1.4rem;
    line-height: 2;
    font-weight: 500;
}

.c-page-welfare__training-ph {
    display: flex;
    flex-wrap: wrap;
    max-width: 102rem;
    margin: 5rem auto;
    gap: 2rem;
}
.c-page-welfare__training-ph figure {
    width: calc(50% - 1rem);
}

@media only screen and (max-width: 768px) {
    .c-page-welfare__training {
        padding: 20rem 0 30rem;
    }
    .c-page-welfare__welfare-inner {
        display: block;
        max-width: 100%;
        padding-inline: calc(30 / 375 * 100vw) calc(30 / 375 * 100vw);
    }
    .c-page-welfare__training h2.ttl-h2 {
        margin-bottom: calc(18 / 375 * 100vw);
    }
    .c-page-welfare__training-inner {
        display: block;
        max-width: 100%;
        padding-inline: calc(30 / 375 * 100vw) calc(30 / 375 * 100vw);
    }
    .c-page-welfare__training-item {
        max-width: none;
    }
    .c-page-welfare__training-item + .c-page-welfare__training-item {
        margin-top: 24rem;
    }
    .c-page-welfare__training h3 {
        font-size: 5.8rem;
        padding: 1.6rem 3rem;
        margin-bottom: 14rem;
    }
    .c-page-welfare__training-list li {
        border-bottom-width: .3rem;
        display: block;
        padding: 0 0 14rem;
    }
    .c-page-welfare__training-list li + li {
        margin-top: 14rem;
    }
    .c-page-welfare__training-list li figure {
        width: calc(96 / 375 * 100vw);
        margin: 0 auto calc(40 / 375 * 100vw);
    }
    .c-page-welfare__training-list li h4 {
        width: auto;
        text-align: center;
        font-size: 6.5rem;
        margin-bottom: 5rem;
    }
    .c-page-welfare__training-list li p {
        font-size: calc(14 / 375 * 100vw);
    }
    .c-page-welfare__training-ph {
        max-width: inherit;
        margin: calc(30 / 375 * 100vw) auto;
    }

}