@charset "UTF-8";
/* 変数 */
:root {
    --main-color: #40438c;
    --text-color: #323232;
    --white: #fff;
    --green: #225725;
    --sky-blue: #84bcd1;
    --gray: #f2f2f2;
    --gradation01: linear-gradient(
        95.17deg,
        #dbdec5 1.52%,
        #3a9dd7 53.7%,
        #1524ae 105.88%
    );

    --gradation02: linear-gradient(
        95.17deg,
        #8fc0cf 1.52%,
        #3a9dd7 34.4%,
        #1524ae 105.88%
    );
    --gradation_gr: linear-gradient(
        126.05deg,
        #d8f071 4.55%,
        #e7fc8a 48.82%,
        #fffcba 93.09%
    );
    --gradation_pur: linear-gradient(
        137.16deg,
        #8ec5fc -9.88%,
        #e0c3fc 101.53%
    );
}

/* pc版 */
html {
    font-family: "Helvetica Neue", Helvetica, sans-serif;
    font-size: 0.69444444444vw;
    /* 固定値（px） / 基準幅（px） * 0.69444444444vw 
       10/1440 *100 =  0.69444444444.... 
    これで1rem = 0.69444444444vw = (1440幅のとき)10px になる
    〇〇px / 10 = 〇〇rem*/
}

.sp {
    display: none;
}

/* 1440幅より大きい場合は1remを10px固定に*/
@media (width >=1440px) {
    html {
        font-size: 62.5%;
    }
}

/* 共通 */
body {
    font-size: 1.6rem;
    position: relative;
    line-height: 1.333;
}

.wrapper {
    max-width: 970px;
    margin: auto;
    padding: 0 10px;
}

.abril {
    font-family: "Abril Fatface", serif;
    font-weight: 400;
    font-style: normal;
}

.inter {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.btn {
    a {
        background-color: var(--text-color);
        color: var(--white);
        padding: 2.5rem 2.7rem 2.5rem 2.6rem;
        display: flex;
        column-gap: 1.5rem;
        justify-content: center;
        align-items: center;
        transition: 0.3s;

        &::after {
            content: "";
            display: block;
            width: 4rem;
            height: 1rem;
            background-image: url(../images/btn_arrow.svg);
            background-size: contain;
            background-repeat: no-repeat;
        }
        &:hover {
            transform: translate(5px, 5px);
            box-shadow: rgb(217, 217, 217) 2px 2px 2px 0px;
        }
    }
    &.shadow a {
        box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
    }
}

.btn_head {
    display: flex;
    align-items: center;
    column-gap: 5rem;
    margin-bottom: 6.3rem;
}

.bg_line {
    display: inline;
    background: linear-gradient(
        to bottom,
        transparent 50%,
        #d8f071 50%,
        #e7fc8a 48.82%,
        #fffcba 93.09%
    );
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

/* cta */
.cta.pc {
    opacity: 0;
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: var(--gradation_gr);
    width: fit-content;
    padding: 2.6rem 2.5rem 2.3rem 2.2rem;
    font-size: 1.2rem;
    z-index: 10;
    color: var(--green);
    border-radius: 5px;
    transition: opacity 2s ease-out, transform 2s ease-out;

    .cta_toptxt {
        font-size: 2.2rem;
        font-weight: bold;
        margin-bottom: 1.6rem;
    }

    div {
        display: flex;
        column-gap: 1.2rem;
        align-items: center;
    }

    img {
        width: 8rem;
        height: 8rem;
    }
}

/* .cta.pc.active {
    display: block;
} */

/*　上に上がる動き　*/
/* #cta_pc.UpMove {
    animation: UpAnime 0.5s forwards;
} */
/* @keyframes UpAnime {
    from {
        opacity: 0;
        transform: translateY(100%);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
} */

/*　下に下がる動き　*/

/* #cta_pc.DownMove {
    animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 1;
        transform: translateY(400px);
    }
} */

/* header */

header {
    font-weight: bold;
    color: var(--main-color);
}
.header {
    background-color: var(--white);
    display: flex;
    justify-content: space-between;
    height: 6rem;
    padding-left: 5rem;
    position: fixed;
    z-index: 10;
    width: 100%;
}
.header_logo {
    height: 100%;
    place-content: center;
    display: grid;
    img {
        width: 20rem;
        height: 4rem;
    }
}

.header_list {
    display: flex;
    column-gap: 3rem;
    align-items: center;
}

.header_list > li.bg {
    background-color: var(--main-color);
    color: var(--white);
    display: grid;
    place-content: center;
    height: 100%;
    padding: 2rem 2.4rem;
}

.header_list > li.parent {
    padding-right: 2.2rem;
    position: relative;
    cursor: pointer;
    &::after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        background-image: url(../images/header_arrow.svg);
        width: 1.1rem;
        height: 0.8rem;
        background-size: contain;
        background-repeat: no-repeat;
    }
}

.header .sub-menu {
    display: none;
}

.header .sub-menu.open {
    position: fixed;
    z-index: 10;
    top: 6rem;
    left: 0;
    height: 6rem;
    width: 100%;
    background-color: rgba(64, 67, 140, 0.6);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 7.3rem;
    column-gap: 1.2rem;
    li {
        background-color: var(--white);
        width: 20rem;
        height: 4rem;
        display: grid;
        place-content: center;
        border: var(--main-color) 1px solid;
    }
}

/* main */
/* kv */
.kv {
    padding-top: 6rem;
    img {
        width: 100%;
        height: auto;
    }
}

/* 左からkv_pointが出てくる */
/* .slide-in {
    display: inline-block;
}

.slide-in_inner {
    display: inline-block;
} */

/*左右のアニメーション*/
.leftAnime {
    opacity: 0; /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
    animation-name: slideTextX100;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes slideTextX100 {
    from {
        transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
    }

    to {
        transform: translateX(0); /*要素を元の位置に移動*/
        opacity: 1;
    }
}

/* ふわっとアニメ */
.fuwat_first {
    opacity: 0;
}

.fuwatAnime {
    animation-fill-mode: both;
    animation-duration: 2s;
    animation-name: fuwatAnime;
    visibility: visible !important;
}
@keyframes fuwatAnime {
    0% {
        opacity: 0;
        -webkit-transform: translateY(40px);
        -ms-transform: translateY(40px);
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.kv_h2 {
    font-size: 7.2rem;
    color: var(--white);
    font-weight: bold;
    margin-bottom: 1.6rem;
    line-height: 1.25;
}
.kv_text {
    color: var(--white);
    margin-bottom: 0.9rem;
    font-size: 2.4rem;
    font-weight: bold;
    span {
        font-size: 3.6rem;
    }
}

.kv_text2 {
    color: var(--white);
    font-size: 1.2rem;
    margin-bottom: 3.6rem;
    &::before {
        content: "※";
        font-size: 1.2rem;
        display: inline-block;
    }
}

.kv_cta {
    background: var(--gradation_gr);
    width: 63.7rem;
    height: 18rem;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 5.3rem;
    border-radius: 5px;

    p {
        color: var(--green);
        font-size: 1.2rem;
        font-weight: bold;
        &:first-of-type {
            font-size: 2.4rem;
            margin-bottom: 1.2rem;
        }
    }
    img {
        width: 13rem;
        height: 13rem;
    }
}
.kv_pic {
    position: absolute;
    top: 0;
    right: 0;
    display: grid;
    grid-template-columns: 23.9rem 6.1rem 23.8rem;
    grid-template-rows: 21.1rem 18.9rem 21.1rem;
    div {
        position: relative;
        width: fit-content;
        &:first-of-type {
            grid-column: 2/4;
            grid-row: 1/3;
        }
        &:last-of-type {
            grid-column: 1/3;
            grid-row: 2/4;
        }
        img {
            width: 100%;
            height: 100%;
        }
        .kv_pic_txt {
            position: absolute;
            right: 0;
            bottom: 0;
            background-color: var(--white);
            padding: 1rem 2.2rem;
            p {
                font-size: 2.4rem;
                background: var(--gradation02);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
                font-weight: bold;
            }
        }
    }
}

/* 見出し */
.simple_h2 {
    font-size: 3.2rem;
    font-weight: bold;
    color: var(--main-color);
    &.leftline {
        width: 144rem;
        margin: auto;
        position: relative;
        padding-left: 24.6rem;
        &::before {
            content: "";
            position: absolute;
            background: var(--gradation_pur);
            width: calc(22rem + (100vw - 100%) / 2);
            height: 3px;
            left: calc((100% - 100vw) / 2);
            top: 50%;
            transform: translateY(-50%);
            display: inline-block;
        }
    }
    &.grade {
        background: var(--gradation02);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
}

.bg_gr_h2 {
    background: var(--gradation02);
    font-size: 4rem;
    font-weight: bold;
    color: var(--white);
}

.bg_box_gr_h2 {
    font-size: 3.6rem;
    font-weight: bold;
    color: var(--white);
    width: 104rem;
    margin: auto;
    > h2 {
        position: relative;
        padding-left: 8rem;
        height: 7rem;
        display: grid;
        align-content: center;
        &::after {
            content: "";
            background: var(--gradation02);
            position: absolute;
            height: 100%;
            width: calc(100% + ((100vw - 100%) / 2));
            top: 0;
            left: 0;
            z-index: -1;
        }
        &:before {
            content: "Course";
            color: #fbfbfb;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            opacity: 0.2;
            position: absolute;
            /* right: calc((100% + ((100vw - 100%) / 2)) + 6.2rem); */
            left: 75.6rem;
            top: -4.5rem;
            line-height: 1;
        }
    }
}

.bg_box_gr_h2.left {
    width: 103.8rem;
    > h2 {
        padding-left: 5rem;
        padding-right: 12.6rem;
        &::after {
            left: auto;
            right: 0;
            z-index: -1;
        }
        &:before {
            content: "Flow";
            color: #fbfbfb;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            opacity: 0.2;
            position: absolute;
            right: 12.6rem;
            left: auto;
        }
    }
}

.simple_h3 {
    font-size: 2.4rem;
    font-weight: bold;
    color: var(--text-color);
    &.grade {
        display: block;
        width: fit-content;
        background: var(--gradation02);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    &.sky_h3 {
        color: var(--sky-blue);
        padding-left: 4.5rem;
        position: relative;
        &::before {
            content: "";
            height: 2px;
            background-color: skyblue;
            width: 3rem;
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
        }
    }
}

/* media */
.media {
    position: relative;
    padding: 5rem 0 4.4rem 0;
    h2 {
        text-align: center;
    }
    &::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--gradation_pur);
        opacity: 0.3;
        z-index: -1;
    }
}

.media_list {
    display: flex;
    flex-direction: column;
    align-items: self-end;
    justify-content: center;
    row-gap: 2rem;
    font-weight: bold;
    color: var(--text-color);

    ul {
        display: flex;
        flex-direction: column;
        row-gap: 2rem;
        width: fit-content;
    }

    li {
        background-color: var(--white);
        border-radius: 10rem;
        width: 22rem;
        height: 4rem;
        font-size: 2.4rem;
        display: grid;
        place-content: center;
    }
}

.media_img {
    img {
        width: 56rem;
        height: 31.5rem;
        object-fit: cover;
    }
}

.media_flex {
    display: flex;
    column-gap: 4.7rem;
    justify-content: center;
    margin-top: 2.5rem;
}

/* 慶應大学 */
.keio {
    background: var(--gradation_pur);
    color: var(--white);
    font-weight: bold;
    font-size: 2.4rem;
    display: grid;
    place-content: center;
    padding: 2rem 0 1.6rem 0;

    span {
        font-size: 3.2rem;
    }
}

/* キャッシュバック */
.cashback {
    margin-bottom: 5.6rem;
}
.cashback_wrapper {
    max-width: 1200px;
    margin: auto;
    display: grid;
    place-items: center;
    position: relative;
    padding-top: 7.3rem;
    margin-top: 5rem;
    visibility: hidden;
}

.scale_anime {
    animation: scale 0.8s ease-in 0.8s forwards;
}

@keyframes scale {
    from {
        opacity: 0;
        transform: scale(1.3);
        visibility: visible;
    }
    to {
        opacity: 1;
        transform: scale(1);
        visibility: visible;
    }
}

.cashback_head {
    background: var(--gradation02);
    color: var(--white);
    font-weight: bold;
    padding: 0 5.2rem 0 5rem;
    height: 15rem;
    display: flex;
    column-gap: 3rem;
    width: fit-content;
    align-items: center;
    position: absolute;
    top: 0;
    img {
        width: 25.853rem;
        height: 12.5rem;
        object-fit: contain;
    }
    p {
        font-size: 2.4rem;
        line-height: 1.333;
    }
}
.cashback_box {
    border: 5px solid;
    border-image: var(--gradation02) 1;
    width: 120rem;
    height: 63rem;
    padding: 10.7rem 10rem 7.1rem 10rem;
    display: flex;
    flex-direction: column;
    row-gap: 3rem;
    align-items: center;
}
.cashback_txt_box {
    display: flex;
    flex-direction: column;
    row-gap: 3rem;
}

.cashback_maintxt {
    img {
        width: 84.6rem;
        height: 17.9rem;
    }
}

.cashback_notes {
    font-size: 1.2rem;
    color: var(--text-color);
    width: fit-content;
    margin-left: 0.6rem;
}

.cashback_question {
    display: flex;
    position: relative;
    padding: 0 2.5rem;
    height: 15rem;
    align-items: center;
    &::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 15rem;
        background-color: var(--sky-blue);
        opacity: 0.2;
        z-index: -2;
    }
    .cashback_question_illust {
        display: flex;
        height: 15rem;
        align-items: center;
    }
    .cashback_bubble {
        p {
            color: var(--text-color);
            font-weight: bold;
            height: fit-content;
            position: relative;
            padding: 2.9rem 2rem 3.963rem 2.1rem;
            line-height: 1.25;
            &::before {
                content: "";
                display: block;
                width: 20.1rem;
                height: 12.863rem;
                background-image: url(../images/cash_bubble_l.svg);
                background-size: contain;
                background-repeat: no-repeat;
                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
            }
        }

        &:nth-of-type(2) > p {
            padding: 3.9rem 2.1rem 4.963rem 2rem;
            &::before {
                background-image: url(../images/cash_bubble_r.svg);
            }
        }
    }
    img {
        width: 15.894rem;
        height: auto;
        object-fit: contain;
        align-self: end;
    }
    .btn {
        margin-left: 4.9rem;
    }
}

/* ネクステとは？ */
.what {
    margin-bottom: 10rem;
    position: relative;
}

.what_head_box {
    display: grid;
    grid-template-columns: 13rem 1fr;
    grid-template-rows: 6.6rem 1fr;
    width: 121.6rem;
    margin: auto;
    justify-items: left;
    position: relative;
}
/* @media (width >=1441px) {
    .what_head_box {
        &::after {
            width: calc(96.3rem + ((100vw - 100%) / 2));
        }
    }
} */

.what_head {
    grid-column: 1/3;
    font-size: 12.8rem;
    font-family: "Abril Fatface", serif;
    font-weight: 400;
    font-style: normal;
    color: var(--white);
    width: fit-content;
    padding-right: 9rem;
    line-height: 1;
    position: relative;
    z-index: -1;
    &::after {
        content: "";
        width: calc(100% + ((100vw - 100%) / 2));
        height: 30rem;
        position: absolute;
        right: 0;
        top: 0;
        background: var(--gradation_pur);
        opacity: 0.3;
        z-index: -2;
    }
    p {
        margin-top: -3.6rem;
        line-height: 1.172;
    }
}

.what_about {
    grid-column: 2/3;
    grid-row: 2/3;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    h2 {
        font-size: 4rem;
        margin-bottom: -0.7rem;
        margin-top: -0.7rem;
    }
    img {
        width: 30.8rem;
        height: 30.8rem;
    }
    p:first-of-type {
        margin-top: 3.8rem;
    }
    p:not(:last-of-type) {
        margin-bottom: 2.4rem;
    }
    .btn {
        align-self: end;
        a {
            width: 25rem;
            margin-top: 3.5rem;
            height: 5.2rem;
            padding: 0;
            align-items: center;
        }
    }
    .what_about_txt {
        display: flex;
        flex-direction: column;
        line-height: 1.25;
        p {
            font-size: 10px;
        }
    }
}

.what_list {
    margin-top: 9.1rem;
    display: grid;
    place-content: center;

    img {
        width: 50rem;
        height: auto;
        object-fit: cover;
    }
    ul {
        width: auto;
        counter-reset: number 0;
        display: flex;
        row-gap: 6rem;
        flex-direction: column;
        position: relative;
        &::after {
            content: "Strengths";
            writing-mode: vertical-rl;
            position: absolute;
            right: -7.5rem;
            top: 0;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            background: var(--gradation_pur);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            opacity: 0.2;
            line-height: 1;
            overflow: hidden;
            width: 30rem;
            margin-top: -2.8rem;
        }
    }
    li {
        display: flex;
        column-gap: 3rem;
        &:nth-of-type(2) {
            flex-direction: row-reverse;
        }
        .what_list_txt {
            display: flex;
            flex-direction: column;
            row-gap: 2rem;
            width: 41.9rem;
        }
        &:nth-of-type(1) .what_list_txt {
            width: 41.7rem;
        }
        &:nth-of-type(3) .what_list_txt {
            width: 41.6rem;
            justify-content: space-between;
            h3 {
                font-size: 2rem;
            }
        }
    }
    .what_list_txt {
        h3 {
            line-height: 1.167;
        }
        .num {
            img {
                height: 6.9rem;
                width: auto;
                object-fit: contain;
                margin-top: 1.2rem;
                margin-bottom: 0.8rem;
            }
        }
        p {
            line-break: strict;
            font-size: 1.2rem;
        }
    }
}

/* 学べる講座 */
.study {
    position: relative;
    padding-top: 6.9rem;
    padding-bottom: 7rem;
    margin-bottom: 9.6rem;
    &::after {
        content: "";
        display: block;
        background-color: var(--gray);
        position: absolute;
        z-index: -2;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
    }
}

.study_pickup_box_wrapper {
    display: grid;
    place-content: center;
}

.study_period {
    color: var(--sky-blue);
    border: 1px solid var(--sky-blue);
    font-size: 1.2rem;
    width: 13rem;
    height: 2rem;
    display: grid;
    place-content: center;
    font-weight: bold;
    padding-top: 0.2rem;
}

.study_pickup_box a {
    display: flex;
    position: relative;
    margin-top: 9.5rem;
    column-gap: 5.3rem;
    background-color: var(--white);
    width: 95rem;
    height: 45rem;
    box-shadow: 6px 6px 6px 2px rgba(217, 217, 217, 1);
    justify-content: space-between;
    transition: 0.3s;

    &:hover {
        transform: translate(5px, 5px);
        box-shadow: 2px 2px 2px 0px rgba(217, 217, 217, 1);
    }

    .study_pic {
        width: 40.2rem;
        height: 100%;
        object-fit: cover;
    }
    .study_pickup_point {
        position: absolute;
        top: -1.8rem;
        left: -5rem;
        font-size: 2.4rem;
        font-weight: bold;
        color: var(--green);
        z-index: 1;
        p {
            position: relative;
            width: 10rem;
            text-align: center;
            &::after {
                content: "";
                display: block;
                position: absolute;
                width: 10rem;
                height: 10rem;
                background: var(--gradation_gr);
                transform: rotate(45deg);
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                margin: auto;
                z-index: -1;
                box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.25);
            }
        }
    }

    .study_pickup_box_txt {
        background-color: var(--white);
        padding: 4.1rem 0 2.5rem 5.4rem;
        display: flex;
        flex-direction: column;
        row-gap: 1.5rem;
    }
    .study_pickup_catch {
        display: flex;
        font-weight: bold;
        column-gap: 2rem;
    }

    .study_pickup_txt_innnerbox {
        width: 43.8rem;
        p {
            font-size: 10px;
            line-break: strict;
        }
        .study_pickup_title {
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 3.2rem;
            font-weight: bold;
            margin-bottom: 1.5rem;
        }
    }
    .study_pickup_skill {
        display: flex;
        column-gap: 1.7rem;
        li {
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 1.2rem;
            font-weight: bold;
            width: 13.5rem;
            height: 3rem;
            border: 2px solid;
            border-image-source: var(--gradation02);
            border-image-slice: 1;
            display: grid;
            place-content: center;
        }
    }

    .study_pickup_list {
        color: var(--sky-blue);
        font-size: 1.2rem;
        font-weight: bold;
        display: flex;
        column-gap: 1.4rem;
        align-items: center;
        position: relative;
        z-index: 1;
        height: 14rem;
        padding: 0 0.9rem 0 0;
        &::after {
            content: "";
            display: block;
            position: absolute;
            background-color: var(--sky-blue);
            width: calc(100% + 5.4rem);
            height: 100%;
            top: 0;
            left: -5.4rem;
            z-index: -1;
            opacity: 0.15;
            z-index: -1;
        }
        ul {
            display: flex;
            flex-direction: column;
            row-gap: 0.7rem;
            padding-left: 1.4rem;
            border-left: 1px solid var(--sky-blue);
            li {
                padding-left: 2.1rem;
                font-weight: normal;
                font-size: 1.2rem;
                position: relative;
                &::before {
                    content: "";
                    background-image: url(../images/study_check.svg);
                    background-repeat: no-repeat;
                    background-position: left center;
                    width: 1rem;
                    height: 0.64rem;
                    position: absolute;
                    left: 0;
                    top: 50%;
                    transform: translateY(-50%);
                }
            }
        }
    }

    .study_arrow {
        width: 5.5rem;
        height: 1rem;
        object-fit: contain;
        align-self: end;
    }
}

.study_course_list {
    margin-top: 5rem;
    display: grid;
    place-content: center;
    ul {
        display: flex;
        column-gap: 2.5rem;
    }
    li {
        background-color: var(--white);
        box-shadow: 6px 6px 6px #d9d9d9;
        transition: 0.3s;
        &:hover {
            transform: translate(5px, 5px);
            box-shadow: 2px 2px 2px 0px rgba(217, 217, 217, 1);
        }
        img {
            width: 30rem;
            height: 20.5rem;
            object-fit: cover;
        }
        .study_txt_list {
            height: 14.5rem;
            padding-left: 2.7rem;
            padding-right: 3rem;
            display: grid;
            align-content: center;
            > p:first-of-type {
                font-weight: bold;
                margin-bottom: 0.4rem;
            }
            > p:nth-of-type(2) {
                background: var(--gradation02);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
                font-size: 2.4rem;
                font-weight: bold;
                margin-bottom: 1.8rem;
            }
            > div {
                display: flex;
                justify-content: space-between;

                img {
                    width: 4.7rem;
                    height: auto;
                    object-fit: contain;
                }
            }
        }
    }
}

/* 学習形態 */
.studytype {
    margin-bottom: 10rem;
    .splide__arrows {
        display: none;
    }
    .studytype_head {
        display: flex;
        column-gap: 3.6rem;
        margin-bottom: 6.25rem;
        justify-content: center;
        p {
            color: var(--main-color);
            font-size: 1.2rem;
            flex: 1;
        }
    }
    ul {
        display: flex !important;
        flex-direction: row;
        column-gap: 6rem;
        justify-content: center;
        img {
            width: 10.7rem;
            height: 10.2rem;
            object-fit: contain;
        }
        li {
            display: flex;
            align-items: center;
            flex-direction: column;
            width: 42rem;
            p:first-of-type {
                font-size: 2.4rem;
                font-weight: bold;
                margin-bottom: 1rem;
                margin-top: 3rem;
                text-align: center;
            }
            p:last-of-type {
                font-size: 10px;
            }
        }
    }
}

/* サポート */
.support {
    margin: auto;
    width: fit-content;
    position: relative;
    margin-bottom: 8rem;
    .support_head {
        position: absolute;
        width: 144rem;
        left: 50%;
        transform: translateX(-50%);
        top: 5.8rem;
    }
    .support_list {
        /* margin-top: 2.9rem; */
        padding: 13.4rem 16.4rem 4.4rem 0;
        position: relative;
        &::after {
            content: "";
            display: block;
            background: var(--gradation_pur);
            width: calc(100% + (100vw - 100%) / 2);
            position: absolute;
            left: auto;
            top: 0;
            right: 0;
            height: 100%;
            z-index: -1;
            opacity: 0.3;
        }
        &::before {
            content: "Support";
            writing-mode: vertical-rl;
            position: absolute;
            right: 1rem;
            top: 0;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            line-height: 1;
            overflow: hidden;
            width: 30rem;
            color: var(--white);
            margin-right: -3.1rem;
        }
    }

    ol {
        display: flex;
        flex-direction: column;
        row-gap: 3rem;
        padding-left: 14.5rem;
        li {
            display: grid;
            grid-template-columns: 12.6rem 1.9rem 42.1rem 15.4rem 30rem;
            grid-auto-rows: auto;
            justify-items: center;
            align-items: center;
            .support_txt {
                display: flex;
                justify-self: left;
                flex-direction: column;
                grid-column: 2/5;
                grid-row: 1/2;
                z-index: 1;
                color: var(--main-color);
                font-weight: bold;
                text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff,
                    1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff,
                    1px 0 0 #fff;
                p:nth-of-type(1) {
                    font-size: 2.4rem;
                }
                p:last-of-type {
                    font-size: 10px;
                    margin-top: 1rem;
                }
            }
            .support_num {
                grid-column: 1/3;
                grid-row: 1/2;
                p {
                    font-family: "Abril Fatface", serif;
                    font-weight: 400;
                    font-style: normal;
                    font-size: 6.4rem;
                    color: var(--white);
                    position: relative;
                    display: inline-block;
                    width: fit-content;
                    &::after {
                        content: "";
                        width: 10.7rem;
                        height: 10.7rem;
                        border: 2px solid var(--white); /* 線の太さと色を指定 */
                        transform: rotate(45deg);
                        display: block;
                        position: absolute;
                        top: 50%;
                        left: 50%;
                        transform: translate(-50%, -50%) rotate(45deg); /* 菱形を中央に配置 */
                    }
                }
            }

            img {
                width: 45.5rem;
                height: 15rem;
                object-fit: cover;
                grid-column: 4/6;
                grid-row: 1/2;
                justify-self: left;
            }
        }
    }
}

/* 比較 */
.comparison {
    position: relative;
    padding-top: 2.4rem;
    > h2 {
        width: 144rem;
        margin: auto;
        &::after {
            content: "Comparison";
            position: absolute;
            right: 0;
            top: 0;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            line-height: 1;
            overflow: hidden;
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            opacity: 0.2;
            margin-top: -3rem;
        }
        &.leftline {
            &::before {
                background: var(--gradation01);
            }
        }
    }
}
.comparison_wrapper {
    max-width: 950px;
    margin: auto;
    margin-bottom: 8rem;
}
.comparison_table {
    margin: auto;
    margin-top: 7.5rem;
    thead {
        font-size: 2.4rem;
        margin-bottom: 1.6rem;
        display: block;
        tr {
            display: grid;
            grid-template-rows: repeat(1, 1fr);
            grid-template-columns: repeat(5, 1fr);
            column-gap: 1.3rem;
        }
        th {
            width: 18rem;
            display: grid;
            place-content: center;
        }
    }
    tbody {
        font-weight: bold;
        display: flex;
        flex-direction: column;
        row-gap: 1.4rem;
        tr {
            display: grid;
            grid-template-rows: repeat(1, 1fr);
            grid-template-columns: repeat(5, 1fr);
            column-gap: 1.3rem;
        }
        th {
            display: grid;
            place-content: center;
            width: 18rem;
            height: 10.5rem;
            text-align: center;
            position: relative;
            &::after {
                content: "";
                width: 100%;
                height: 100%;
                border: 5px solid;
                border-image: var(--gradation_pur) 1;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0.3;
            }
        }
        td {
            display: grid;
            place-content: center;
            width: 18rem;
            height: 10.5rem;
            text-align: center;
            position: relative;
            &:not(:first-of-type) {
                &::after {
                    content: "";
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    left: 0;
                    background: var(--gray);
                    z-index: -2;
                }
            }
            &:first-of-type {
                &::after {
                    content: "";
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    left: 0;
                    background: var(--gradation_pur);
                    opacity: 0.3;
                    z-index: -2;
                }
            }
            &.abril {
                font-size: 4rem;
                &:nth-of-type(2) {
                    font-size: 3.2rem;
                }
            }
            &::before {
                content: "";
                position: absolute;
                height: 9.8rem;
                width: 9.8rem;
                background-repeat: no-repeat;
                background-size: contain;
                background-position: center;
                left: 1.1rem;
                top: 50%;
                transform: translateY(-50%);
                opacity: 0.8;
                z-index: -1;
            }
            &.double_circle::before {
                background-image: url(../images/icon_double_circle.svg);
            }
            &.circle::before {
                background-image: url(../images/icon_circle.svg);
            }
            &.triangle::before {
                background-image: url(../images/icon_triangle.svg);
            }
        }
    }
}

.job_seeker_support {
    margin-bottom: 14.2rem;
}

.comparison_hellowork_box {
    font-size: 3.2rem;
    font-weight: bold;
    color: var(--white);
    width: 104rem;
    height: 8rem;
    margin: auto;
    display: grid;
    place-content: center;
    margin-bottom: 0.9rem;
    position: relative;
    span:not(.breakthrough) {
        font-size: 8rem;
    }
    &::after {
        content: "";
        position: absolute;
        background: var(--gradation02);
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -1;
        transform-origin: right center;
    }
}
/* .comparison_hellowork_box.to__left::after {
    background: var(--gradation02);
} */

.comparison_gr_txt {
    font-size: 1.2rem;
    font-weight: bold;
    background: var(--gradation02);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: center;
    margin-bottom: 2rem;
}

.comparison_recruit {
    h3 {
        margin: auto;
    }
    ul {
        display: grid;
        grid-template-columns: repeat(3, 21.3rem);
        grid-template-rows: repeat(2, 7.1rem);
        row-gap: 1.2rem;
        column-gap: 1rem;
        place-content: center;
        margin-top: 2.6rem;
        img {
            height: auto;
            width: 100%;
        }
    }
}

/* splide */
.splide {
    width: 103rem;
    padding: 0 4rem;
    margin: auto;
}
.studytype,
.interview {
    .splide {
        padding-bottom: 0;
    }
}
.splide__arrows {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.splide__arrow {
    background: none;
    position: static;
    transform: none;
    display: block;
    width: auto;
}
.splide__pagination {
    column-gap: 2rem;
    position: static;
    margin-top: 40px;
}
.splide__pagination__page {
    background: #d0d0d0;
    opacity: 1;
}
.splide__pagination__page.is-active {
    background: var(--gradation02);
}
.course .splide__pagination__page.is-active {
    background: var(--gradation_pur);
}

/* 受講生の声、インタビュー共通 */
.voice,
.interview {
    margin-bottom: 10rem;
    .btn_head {
        position: relative;
        width: fit-content;
        margin: auto;
        .btn {
            position: absolute;
            right: 73.5rem;
            a {
                width: 25rem;
                height: 5rem;
            }
        }
    }
    h2 {
        &.leftline {
            &::before {
                background: var(--gradation02);
            }
        }
        &::after {
            content: "Voice";
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 12.8rem;
            position: absolute;
            top: -2.3rem;
            right: 30.1rem;
            font-family: "Abril Fatface", serif;
            opacity: 0.2;
        }
    }
}

/* 受講生の声 */
.voice_wrapper {
    width: 103.5rem;
    margin: auto;
    margin-top: 7rem;
}
.voice_list {
    li {
        border: 2px solid;
        border-image: var(--gradation02) 1;
    }
}
.voice_img {
    img {
        width: 100%;
        height: 22rem;
        object-fit: cover;
    }
}
.voice_title {
    background-color: var(--text-color);
    color: var(--white);
    padding: 1rem 2rem;
}
.voice_content {
    padding: 1.5rem 2rem;
    font-weight: bold;
    display: grid;
    place-content: center;
}

/* 卒業生インタビュー */
.interview {
    .splide__arrows {
        display: none;
    }
    h2 {
        &::after {
            content: "Interview";
            right: 3.5rem;
        }
    }
    .btn_head {
        .btn {
            right: 60.7rem;
        }
    }
}

.interview_wrapper {
    width: 104.2rem;
    margin: auto;
    margin-top: 7rem;
}

.interview_list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    row-gap: 2.2rem;
    column-gap: 4.2rem;
    li {
        display: flex;
        column-gap: 1.8rem;
        border: 2px solid;
        border-image: var(--gradation02) 1;
        .interview_img {
            position: relative;
            img {
                width: 20rem;
                height: 100%;
                object-fit: cover;
            }
            p {
                position: absolute;
                padding: 0.95rem 1.4rem;
                background-color: rgba(50, 50, 50, 0.8);
                font-size: 1.2rem;
                font-weight: bold;
                color: var(--white);
                bottom: 1.5rem;
                left: 0;
            }
        }
        .interview_txt {
            padding: 2.1rem 2.4rem 2.1rem 0;
            .interview_title {
                font-weight: bold;
                &::after {
                    content: "";
                    height: 1px;
                    background-color: var(--text-color);
                    width: 100%;
                    display: block;
                    margin-top: 1.5rem;
                    margin-bottom: 1.5rem;
                }
            }
            .interview_content {
                font-size: 1.2rem;
            }
        }
    }
}

/* コースのときのinterview、voice */
.course.voice,
.course.interview {
    & h2 {
        -webkit-background-clip: unset;
        background: none;
        -webkit-text-fill-color: var(--main-color);
        color: var(--main-color);
        &.leftline {
            &::before {
                content: none;
            }
        }
        &::after {
            background: var(--gradation_pur);
            -webkit-background-clip: text;
        }
    }
    .voice_list,
    .interview_list {
        li {
            border-image: var(--gradation_pur) 1;
        }
    }
    .btn_head {
        .btn {
            right: 49.6rem;
        }
    }
}

.course.interview {
    .btn_head {
        .btn {
            right: 60.6rem;
        }
    }
}

/* 受講の流れ */
.flow {
    position: relative;
    padding: 7rem 0 8rem 0;
    margin-bottom: 10rem;
    .wrapper {
        max-width: 970px;
    }
    &::after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #f2f2f2;
        z-index: -2;
    }
    ol {
        margin-top: 5rem;
        counter-reset: number 0;
        display: flex;
        flex-direction: column;
        row-gap: 3rem;

        li {
            display: flex;
            column-gap: 4rem;
            background-color: var(--white);
            /* padding: 2.5rem 8.3rem; */
            height: 16rem;
            align-items: center;
            justify-content: center;
            .flow_list_txt {
                width: 58.4rem;
                display: flex;
                flex-direction: column;
                row-gap: 1rem;
                justify-content: center;
                &::before {
                    counter-increment: number 1;
                    content: "STEP 0" counter(number);
                    font-family: "Abril Fatface", serif;
                    font-weight: 400;
                    font-style: normal;
                    color: var(--sky-blue);
                    font-size: 2.4rem;
                    margin-top: -0.3rem;
                    margin-bottom: -0.3rem;
                }
                h3 {
                    margin-top: -0.4rem;
                    margin-bottom: -0.4rem;
                }
                p {
                    line-height: 1.25;
                }
            }
            .flow_img {
                width: 16rem;
                height: 12.5rem;
                display: grid;
                place-content: center;
            }
            img {
                object-fit: contain;
                width: 16rem;
                height: 12.5rem;
            }
            &:nth-of-type(1) {
                img {
                    width: 6.6rem;
                    height: 11.5rem;
                }
            }
            &:nth-of-type(2) {
                img {
                    width: 11rem;
                    height: 8.6rem;
                }
            }
            &:nth-of-type(3) {
                img {
                    width: 10.48rem;
                    height: 10.79rem;
                }
            }
            &:nth-of-type(4) {
                img {
                    width: 82.1rem;
                    height: 10.6rem;
                }
            }
            &:nth-of-type(5) {
                img {
                    width: 10.7rem;
                    height: 7.4rem;
                }
            }
        }
    }
}

/* 実績のある講師 */
.instructor {
    margin-bottom: 10rem;
    position: relative;
    h2 {
        &.leftline {
            &::before {
                background: var(--gradation02);
            }
        }
        &::after {
            content: "Instructor";
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 15rem;
            position: absolute;
            top: -4.4rem;
            right: 0;
            font-family: "Abril Fatface", serif;
            opacity: 0.2;
        }
    }
}
.instructor_wrapper {
    margin-top: 7rem;
}
.instructor_list {
    li {
        border: 2px solid;
        border-image: var(--gradation02) 1;
    }
}
.instructor_img {
    position: relative;
    img {
        width: 100%;
        height: 22.8rem;
        object-fit: cover;
    }
    p {
        position: absolute;
        left: 0;
        bottom: 2rem;
        background-color: var(--text-color);
        color: var(--white);
        padding: 0.15rem 2.7rem;
    }
}
.instructor_txt {
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
    padding: 2rem;
    .instructor_read {
        font-size: 1.2rem;
        font-weight: bold;
    }
    .instructor_content {
        font-size: 1.2rem;
    }
}

/* footer */
footer {
    color: var(--white);
    position: relative;
    padding: 11.1rem 0;
    .footer_box {
        display: grid;
        place-content: center;
    }
    &::before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-image: url(/wp-content/uploads/2024/08/footer_bg-scaled.webp);
        z-index: -2;
        background-size: cover;
        background-position: center;
    }
    /* &::after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-image: url(/wp-content/uploads/2024/08/footer_bg-scaled.webp);
        background-size: cover;
        z-index: -1;
    } */
    .footer_top {
        display: flex;
        margin-bottom: 5.5rem;
        .footer_txt {
            h2 {
                font-size: 4rem;
                font-weight: bold;
                text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);
                margin-bottom: 1.6rem;
                line-height: 1.3;
            }
            p {
                font-size: 2.4rem;
                line-height: 1.458;
                text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);
            }
        }
        .footer_qr {
            display: grid;
            place-items: center;
            row-gap: 1.2rem;
            p {
                display: block;
                position: relative;
                padding: 0 2.2rem;
                text-align: center;
                line-height: 1.25;
                &::before {
                    content: url(../images/footer_qr_line_l.svg);
                    position: absolute;
                    bottom: 0;
                    left: 0;
                    width: 2.2rem;
                    height: 2.8rem;
                }
                &::after {
                    content: url(../images/footer_qr_line_r.svg);
                    position: absolute;
                    top: 0;
                    right: 0;
                    width: 2.2rem;
                    height: 2.8rem;
                    bottom: 0;
                }
            }
            img {
                width: 15rem;
                height: 15rem;
                object-fit: contain;
            }
        }
    }
    .footer_under {
        padding-top: 5.4rem;
        position: relative;
        font-weight: bold;
        line-height: 1.25;
        &::before {
            content: "";
            display: block;
            position: absolute;
            height: 1px;
            width: 114.9rem;
            background-color: var(--white);
            top: 0;
            left: 50%;
            transform: translateX(-50%);
        }
    }
    .footer_link {
        display: flex;
        margin-top: 1rem;
        column-gap: 1rem;
        a {
            text-decoration: underline;
        }
    }
    .footer_copy {
        position: absolute;
        text-align: center;
        bottom: 1.6rem;
        left: 50%;
        transform: translateX(-50%);
    }
}

/* 下層ページ */
.under_kv {
    position: relative;
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: 20.7rem 4.3rem 3.7rem;
    img {
        height: 25rem;
        width: 100%;
        object-fit: cover;
        grid-row: 1/3;
        grid-column: 1/2;
        z-index: -2;
    }
}
.under_kv_h2 {
    /* position: absolute; */
    grid-row: 2/4;
    grid-column: 1/2;
    color: var(--white);
    font-weight: bold;
    padding-left: 12.6rem;
    padding-right: 49.8rem;
    font-size: 3.2rem;
    bottom: 0;
    left: 0;
    width: 120rem;
    margin: auto;
    height: 8rem;
    h2 {
        width: 100%;
        height: 100%;
        position: relative;
        padding-left: 12.6rem;
        display: grid;
        align-content: center;
        &::after {
            content: "";
            position: absolute;
            background: var(--gradation01);
            width: calc(100% + ((100vw - 100%) / 2));
            height: 100%;
            right: 0;
            top: 0;
            z-index: -1;
        }
    }
}

.bubble {
    width: fit-content;
    margin: auto;
    display: grid;
    place-content: center;
    position: relative;
    padding-bottom: 1.4rem;
    margin-bottom: 1rem;
    p {
        background-color: var(--white);
        width: 41.7rem;
        height: 3.5rem;
        text-align: center;
        color: var(--sky-blue);
        font-weight: bold;
        display: grid;
        place-content: center;
    }
    &::after {
        content: "";
        background: var(--white);
        height: calc(tan(60deg) * 1.9rem / 2);
        width: 1.9rem;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
}

ul.tag_box {
    display: flex;
    column-gap: 1rem;
    li {
        background-color: skyblue;
        padding: 0 2.7rem;
        border-radius: 999px;
        color: var(--white);
        font-weight: bold;
        width: fit-content;
        height: 2.5rem;
        display: grid;
        place-content: center;
    }
}

ul.skill_box {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1rem;
    row-gap: 1rem;
    li {
        padding: 0.3rem 2.7rem;
        border-radius: 999px;
        color: var(--white);
        font-weight: bold;
        width: fit-content;
    }
}

.under_pickup_list {
    color: var(--sky-blue);
    font-size: 1.2rem;
    font-weight: bold;
    display: flex;
    column-gap: 1rem;
    align-items: center;
    position: relative;
    border: 1px solid var(--sky-blue);
    width: 100%;
    padding: 1.35rem 0 1.45rem 2.5rem;

    div:first-of-type {
        width: 7.8rem;
    }
    ul {
        padding-left: 1rem;
        border-left: 1px solid var(--sky-blue);
        display: flex;
        flex-direction: column;
        row-gap: 0.7rem;
        li {
            background-image: url(../images/study_check.svg);
            background-repeat: no-repeat;
            background-position: left center;
            padding-left: 2.4rem;
            background-size: 1.4rem;
        }
    }
}

/* about */
.about_carrier_wrapper {
    max-width: 790px;
    margin: auto;
}
.about_carrier_ul_wrapper {
    max-width: 950px;
    margin: auto;
    padding: 0 10px;
}
.about_carrier {
    margin-top: 7rem;
    h2 {
        font-size: 2.4rem;
        font-weight: bold;
        text-align: center;
        margin-bottom: 2.5rem;
        /* span {
            position: relative;
            &::after {
                content: "";
                position: absolute;
                bottom: 0;
                left: 0;
                width: 100%;
                height: 1.5rem;
                background: var(--gradation_gr);
                z-index: -1;
            }
        } */
    }
}

.about_carrier_list {
    width: 100%;
    display: flex;
    margin-top: 2.5rem;
    justify-content: center;
    column-gap: 3rem;
    li {
        width: 37.8rem;
        height: 16rem;
        display: flex;
        border: 2px solid;
        border-image: var(--gradation_pur) 1;
        justify-content: center;
        align-items: center;
        img {
            width: 12.8rem;
            height: 11.5rem;
        }
        p {
            color: var(--main-color);
            font-weight: bold;
        }
        &:nth-of-type(2) {
            img {
                width: 14.1rem;
                height: 12rem;
            }
        }
    }
}

.about_carrier_point {
    font-weight: bold;
    font-size: 2.4rem;
    color: var(--main-color);
    text-align: center;
    margin-top: 3rem;
}

.about_strengths {
    margin-top: 6.5rem;
    position: relative;
    padding-top: 5rem;
    padding-bottom: 8.2rem;
    &::after {
        content: "";
        position: absolute;
        background-color: var(--sky-blue);
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        opacity: 0.15;
        z-index: -1;
    }
    h2 {
        text-align: center;
    }
}

.about_strengths_list {
    display: flex;
    width: fit-content;
    flex-direction: column;
    row-gap: 6rem;
    margin: auto;
    margin-top: 5rem;
    position: relative;
    li {
        display: flex;
        column-gap: 3rem;
        align-items: center;
        justify-content: center;
        img {
            width: 50rem;
            height: 30rem;
            object-fit: cover;
        }
        h3 {
            font-size: 3.2rem;
            font-weight: bold;
        }
        &:nth-last-of-type(2) {
            flex-direction: row-reverse;
        }
    }
    &::after {
        content: "Strengths";
        writing-mode: vertical-rl;
        position: absolute;
        right: -7.5rem;
        top: -18.9rem;
        font-family: "Abril Fatface", serif;
        font-weight: 400;
        font-style: normal;
        font-size: 12.8rem;
        color: var(--sky-blue);
        opacity: 0.2;
        line-height: 1;
        z-index: -1;
    }
}
.about_strengths_list_txt {
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
    width: 41.9rem;
    line-break: strict;
    p {
        font-size: 1.4rem;
    }
}

.about_strengths_last {
    margin-top: 6rem;
    display: flex;
    justify-content: center;
    column-gap: 3.6rem;
    align-items: center;
    div:first-of-type {
        .about_strengths_last_txt {
            color: var(--sky-blue);
            font-size: 3.2rem;
            font-weight: bold;
        }
    }
    img {
        width: 21.9rem;
        height: 29rem;
        object-fit: contain;
    }
    .bubble {
        margin-left: 0;
    }
}

.about_project_introduction {
    position: relative;
    padding: 9.6rem 0;
    .about_project_introduction_wrapper {
        max-width: 794px;
        margin: auto;
    }
    &::before {
        content: "";
        background-color: var(--sky-blue);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -2;
    }
    &::after {
        content: "";
        background-image: url(/wp-content/uploads/2024/08/about_project_introduction-bg-scaled.webp);
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-size: cover;
        z-index: -1;
        background-position: center;
    }
    h2 {
        color: var(--white);
        font-weight: bold;
        font-size: 2.4rem;
        text-align: center;
        position: relative;
        line-height: 1.333;
        width: fit-content;
        margin: auto;
        &::before {
            content: "";
            background-image: url(/wp-content/uploads/2024/08/about_project_introduction01.webp);
            position: absolute;
            width: 16rem;
            height: 16rem;
            top: 4rem;
            left: -14.3rem;
            background-size: contain;
            background-repeat: no-repeat;
        }
        &::after {
            content: "";
            background-image: url(/wp-content/uploads/2024/08/about_project_introduction02.webp);
            position: absolute;
            width: 15.6rem;
            height: 16.1rem;
            top: 4rem;
            right: -14.3rem;
            background-size: contain;
            background-repeat: no-repeat;
        }
    }
}

.study.about {
    margin-top: 0;
    &::after {
        background-color: var(--white);
    }
}

.about_company {
    margin-top: 5rem;
    margin-bottom: 8rem;
}

.about_company_wrapper {
    max-width: 1040px;
    margin: auto;
}

.about_company_box {
    display: grid;
    place-content: center;
    place-items: center;
    row-gap: 3rem;
    background-color: var(--gray);
    padding: 5.2rem 0 5.3rem 0;

    h2 {
        font-weight: bold;
        font-size: 3.2rem;
        text-align: center;
    }

    p {
        width: 73rem;
    }

    .btn a {
        background-color: var(--main-color);
        height: 5rem;
        width: 25rem;
        padding: 0;
        align-items: center;
    }
}

/* subsidy(リスキリング補助金) */
.subsidy_cash_back {
    box-shadow: 6px 6px 6px 2px rgba(217, 217, 217, 0.5);
    max-width: 104rem;
    height: 47.8rem;
    margin: auto;
    margin-top: 3.4rem;
    margin-bottom: 6rem;
    padding: 4.5rem;
    border: 2px solid rgba(242, 242, 242, 1);
}

.subsidy_cash_back_img {
    background-image: url(/wp-content/uploads/2024/08/subsidy_cash_back_img.webp);
    background-size: cover;
    background-repeat: no-repeat;
    height: 16rem;
    color: var(--white);
    padding-right: 4.7rem;
}

.subsidy_cash_back_img_txt {
    display: flex;
    align-items: self-end;
    justify-content: flex-end;
    height: 100%;
    padding-bottom: 1.9rem;

    div:nth-of-type(1) {
        position: relative;
        p:nth-of-type(1) {
            position: absolute;
            top: 0;
            left: 0;
            text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);
        }
        p:nth-of-type(2) {
            font-size: 11.2rem;
            margin-bottom: -2.7rem;
            text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);

            span {
                font-size: 9.6rem;
                font-family: Helvetica, sans-serif;
            }
        }
    }
    div:nth-of-type(2) {
        font-size: 3.2rem;
        font-weight: bold;
        text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);
        p:first-of-type {
            letter-spacing: 0.2em;
        }
        p:last-of-type {
            letter-spacing: -0.03em;
        }
    }
}

.subsidy_cash_back_carrier {
    background-color: var(--sky-blue);
    height: 4rem;
    display: grid;
    place-content: center;
    margin-top: 2rem;
    p {
        color: var(--white);
        font-weight: bold;
        font-size: 2.4rem;
    }
}

.subsidy_cash_back_money {
    display: flex;
    justify-content: center;
    height: 12.7rem;
    margin-top: 1.7rem;
}
.subsidy_cash_back_carrier_attention {
    width: 52.6rem;
    margin: auto;
    margin-top: 1.9rem;
    font-size: 1.2rem;
    &::before {
        content: "※";
        display: inline-block;
    }
}

.subsidy_cash_back_money_before {
    display: flex;
    align-items: center;
    color: var(--sky-blue);
    div:nth-of-type(1) {
        font-size: 4.8rem;
        margin-right: 1.2rem;
    }
    div:nth-of-type(2) {
        font-weight: bold;
        margin-right: 3.3rem;
        p:nth-of-type(1) {
            font-size: 1.2rem;
        }
        p:nth-of-type(2) {
            font-size: 2.4rem;
        }
    }
    &::after {
        content: "";
        background: var(--sky-blue);
        height: calc(tan(60deg) * 2.6rem / 2);
        width: 2.6rem;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
    }
}

.subsidy_cash_back_money_after {
    display: flex;
    align-items: baseline;
    position: relative;
    column-gap: 2.1rem;
    div:nth-of-type(1) {
        display: flex;
        align-items: baseline;
        position: relative;
        padding-left: 5.2rem;
        margin-left: 1.4rem;
        p:nth-of-type(1) {
            font-weight: bold;
            background-color: var(--sky-blue);
            width: 7rem;
            height: 3rem;
            color: var(--white);
            display: grid;
            place-content: center;
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1;
        }
        p:nth-of-type(2) {
            position: relative;
            font-size: 16rem;
            background: var(--gradation02);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            width: fit-content;
            margin-right: 1.9rem;
            margin-top: -4.7rem;
            &::before {
                content: "0";
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                font-size: 16rem;
                color: var(--white);
                -webkit-text-stroke: 8px var(--white);
                z-index: -1;
            }
        }
        p:nth-of-type(3) {
            font-size: 4.8rem;
            font-weight: bold;
            margin-left: -0.4rem;
        }
    }
    div:nth-of-type(2) {
        p {
            font-size: 4.8rem;
            font-weight: bold;
            span {
                font-size: 8rem;
                background: var(--gradation02);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
            }
        }
    }
}

.subsidy_strengths {
    .wrapper {
        max-width: 970px;
        padding: 0 10px;
    }
    position: relative;
    padding: 2.6rem 0 3.4rem 0;
    overflow-x: hidden;
    &::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: var(--sky-blue);
        opacity: 0.15;
        top: 0;
        left: 0;
        z-index: -3;
    }
    .simple_h2 {
        width: fit-content;
        margin: auto;
    }
    .strengths_double_box {
        position: relative;
        width: fit-content;
        margin: auto;
        &::before {
            content: "Strengths";
            writing-mode: vertical-rl;
            position: absolute;
            right: -7rem;
            top: -7.4rem;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            color: var(--sky-blue);
            opacity: 0.2;
            line-height: 1;
            width: 30rem;
            z-index: -2;
        }
    }
}

.subsidy_strengths_grbox {
    width: 58.3rem;
    height: 5rem;
    display: grid;
    place-content: center;
    background-color: var(--gray);
    border: 2px solid var(--white);
    margin-top: 4.9rem;
    span {
        font-size: 2.4rem;
        font-weight: bold;
        margin-left: 1.4rem;
    }
}

.subsidy_strengths_gradebox {
    width: 62.9rem;
    height: 7rem;
    display: grid;
    place-content: center;
    background: var(--gradation02);
    margin-top: 4.7rem;
    color: var(--white);
    font-weight: bold;
    span {
        margin-left: 2.6rem;
        font-size: 3.2rem;
    }
}

.subsidy_strengths_whbox {
    padding: 14.9rem 0 3.3rem 0;
    width: 95rem;
    height: 25rem;
    position: relative;
    &::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: var(--white);
        z-index: -2;
    }
}

.subsidy_strengths_flow {
    color: var(--white);
    font-weight: bold;
    font-size: 2.4rem;
    display: flex;
    justify-content: center;
    > div {
        position: relative;
        display: grid;
        align-content: center;
        > p {
            color: var(--white);
            font-weight: bold;
            font-size: 2.4rem;
        }
        &:nth-of-type(1) {
            width: 33.4rem;
            height: 6.8rem;
            padding-left: 10.2rem;
            &::before {
                content: "";
                background-image: url(/wp-content/uploads/2024/08/subsidy_strengths_whbox01.webp);
                position: absolute;
                left: 0;
                top: -13rem;
                width: 12.5rem;
                height: 13rem;
                background-size: contain;
                background-repeat: no-repeat;
                /* transform: scale(-1, 1); */
            }

            &::after {
                content: "";
                background-image: url(../images/subsidy_strength_arrow_01.svg);
                width: 100%;
                height: 100%;
                background-size: contain;
                background-repeat: no-repeat;
                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
            }
            .subsidy_strengths_flow_grbox {
                position: absolute;
                right: -2.7rem;
                top: -10.9rem;
                color: var(--text-color);
                font-size: 1.2rem;
                text-align: center;
                width: 12rem;
                height: 10.9rem;
                display: grid;
                place-content: center;
                padding-bottom: 1.4rem;
                background-repeat: no-repeat;
                background-position: bottom;
                background-image: url(../images/subsidy_flow_bubble_01.svg);
                background-size: contain;
                span {
                    font-size: 3.2rem;
                }
            }
        }
        &:nth-of-type(1).subsidy_strengths_flow_img02 {
            &::before {
                background-image: url(/wp-content/uploads/2024/08/subsidy_strengths_whbox02.webp);
                width: 12.9rem;
                top: -14rem;
                height: 14rem;
                background-position: bottom;
            }
        }
        &:nth-of-type(2) {
            width: 24.3rem;
            height: 6.8rem;
            padding-left: 7.7rem;
            margin-left: -1.9rem;
            &::after {
                content: "";
                background-image: url(../images/subsidy_strength_arrow_02.svg);
                width: 100%;
                height: 100%;
                background-size: contain;
                background-repeat: no-repeat;
                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
            }
            .subsidy_strengths_flow_grbox {
                position: absolute;
                right: -2.7rem;
                top: -8.7rem;
                color: var(--text-color);
                font-size: 1.2rem;
                text-align: center;
                width: 12rem;
                height: 8.07rem;
                display: grid;
                place-content: center;
                background-repeat: no-repeat;
                background-position: bottom;
                padding-bottom: 1.4rem;
                background-image: url(../images/subsidy_flow_bubble_02.svg);
                background-size: contain;
                span {
                    font-size: 3.2rem;
                }
            }
        }
        &:nth-of-type(3) {
            width: 29.6rem;
            height: 6.8rem;
            padding-left: 7.7rem;
            margin-left: -1.9rem;
            &::after {
                content: "";
                background-image: url(../images/subsidy_strength_arrow_03.svg);
                width: 100%;
                height: 100%;
                background-size: contain;
                background-repeat: no-repeat;
                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
            }
            .subsidy_strengths_flow_grbox {
                position: absolute;
                right: -2.7rem;
                top: -10.9rem;
                color: var(--text-color);
                font-size: 1.2rem;
                text-align: center;
                width: 12rem;
                height: 10.9rem;
                display: grid;
                place-content: center;
                padding-bottom: 1.4rem;
                background-repeat: no-repeat;
                background-position: bottom;
                background-image: url(../images/subsidy_flow_bubble_01.svg);
                background-size: contain;
                span {
                    font-size: 3.2rem;
                }
            }
        }
    }
}

.subsidy_strengths_p {
    font-size: 1.2rem;
    width: 95rem;
    margin: auto;
    margin-top: 1.3rem;
}

.subsidy_strengths_last {
    margin-top: 7.1rem;
    display: flex;
    justify-content: center;
    column-gap: 3.6rem;
    align-items: flex-start;
    div:first-of-type {
        .about_strengths_last_txt {
            color: var(--sky-blue);
            font-size: 3.2rem;
            font-weight: bold;
        }
    }
    img {
        width: 25.2rem;
        height: 25.6rem;
    }
    .bubble {
        margin-left: 0;
        margin-bottom: 2rem;
        p {
            width: 36.8rem;
        }
    }
}

.subsidy_strengths_last_txt {
    font-weight: bold;
    p:nth-of-type(1) {
        font-size: 2.4rem;
    }
    p:nth-of-type(2) {
        font-size: 3.2rem;
        color: var(--sky-blue);
        margin-top: 1.4rem;
    }
}

.sbsidy_carrier_wrapper {
    max-width: 792px;
    margin: auto;
    width: fit-content;
}
.sbsidy_carrier {
    margin-top: 6rem;
    padding: 0 0 7.8rem 0;
    h2 {
        font-size: 2.4rem;
        font-weight: bold;
        width: fit-content;
        margin: auto;
        span {
            position: relative;
            &::after {
                content: "";
                position: absolute;
                bottom: 0;
                left: 0;
                width: 100%;
                height: 1.5rem;
                background: var(--gradation_gr);
                z-index: -1;
            }
        }
    }
}

.sbsidy_carrier_about {
    display: flex;
    align-items: center;
    column-gap: 3.5rem;
    margin-top: 3.9rem;
    justify-content: center;
    img {
        width: 19.8rem;
        height: 9rem;
        margin-left: 3rem;
    }
    p {
        width: 52.2rem;
        line-break: strict;
    }
}

.sbsidy_flow {
    max-width: 792px;
    margin: auto;
    ul {
        width: 100%;
        display: flex;
        margin-top: 3.7rem;
        justify-content: center;
        column-gap: 3.7rem;
        li {
            display: grid;
            position: relative;
            row-gap: 2rem;
            place-content: center;
            place-items: center;
            width: 17rem;
            height: 20rem;
            border: 2px solid;
            border-image: var(--gradation_pur) 1;
            img {
                width: 11.4rem;
                height: 10rem;
            }
            p {
                color: var(--main-color);
                font-weight: bold;
                text-align: center;
            }
            &:not(:last-of-type) {
                &::after {
                    content: "";
                    position: absolute;
                    right: -3.2rem;
                    top: 50%;
                    transform: translateY(-50%);
                    height: 1.9rem;
                    width: 1.9rem;
                    background-size: contain;
                    background-repeat: no-repeat;
                    background-image: url(../images/subsidy_carrier_arrow.svg);
                }
            }
        }
    }
}

.sbsidy_carrier_txt {
    color: var(--main-color);
    font-weight: bold;
    font-size: 2.4rem;
    text-align: center;
    margin-top: 3rem;
}

.sbsidy_carrier_attention {
    margin-top: 8rem;
    h2 {
        font-size: 3.2rem;
        font-weight: bold;
        margin: 0;
        margin-bottom: 4rem;
    }
}

.sbsidy_carrier_attention_box {
    &:not(:first-of-type) {
        margin-top: 3rem;
    }
    h3 {
        margin-bottom: 1rem;
    }
    .tag_box {
        margin-bottom: 1rem;
    }
    .attention_list {
        li {
            font-size: 1.2rem;
            position: relative;
            padding-left: 1.2rem;
            &::before {
                content: "・";
                position: absolute;
                top: 0;
                left: 0;
            }
        }
    }
    p {
        font-size: 1.2rem;
    }
    .attention_mark {
        padding-left: 1.2rem;
        position: relative;
        &::before {
            content: "※";
            position: absolute;
            left: 0;
        }
    }
    .sbsidy_carrier_attention_point {
        font-weight: bold;
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }
}

.sbsidy_receiving {
    background-color: var(--gray);
    padding: 4.5rem 0 4rem 0;
    h2 {
        font-size: 3.2rem;
        font-weight: bold;
        margin: 0;
        margin-bottom: 4rem;
    }
}

.sbsidy_receiving_wrapper {
    max-width: 970px;
    padding: 0 10px;
    margin: auto;
    width: fit-content;
}

.sbsidy_flow.receiving {
    max-width: 100%;
    ul {
        margin-bottom: 1rem;
        justify-content: space-between;
        li {
            row-gap: 0;
            place-content: space-between;
            width: 20.4rem;
            height: 23rem;
            border: none;
            border-image: none;
            background-color: var(--white);
            padding: 1.1rem 1.4rem;
            p {
                color: var(--sky-blue);
            }
            &:not(:last-of-type) {
                &::after {
                    background-image: url(../images/subsidy_receving_arrow.svg);
                    top: 50%;
                    transform: translateY(-50%);
                    right: -4rem;
                }
            }
            .flow_li_head {
                width: 17rem;
                background-color: var(--sky-blue);
                height: 3rem;
                color: var(--white);
                display: grid;
                place-content: center;
            }
            img {
                width: 11.4rem;
                height: 10rem;
            }
        }
    }
}

.sbsidy_flow_receiving_attention {
    margin-top: 2.5rem;
    width: 97.5rem;
    p {
        position: relative;
        padding-left: 1.6rem;
        &::before {
            content: "※";
            position: absolute;
            left: 0;
            top: 0;
        }
    }
}

.sbsidy_faq {
    padding: 8rem 0 10rem 0;
    margin-top: 9rem;
    h2 {
        font-size: 2.4rem;
        font-weight: bold;
        margin-bottom: 2.5rem;
        &:nth-of-type(2) {
            margin-top: 7rem;
        }
    }
    .wrapper {
        position: relative;
        &::after {
            content: "FAQ";
            position: absolute;
            font-family: "Abril Fatface", serif;
            font-weight: 400;
            font-style: normal;
            font-size: 12.8rem;
            line-height: 1;
            top: -87px;
            left: -59px;
            background: var(--gradation_pur);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            opacity: 0.2;
        }
    }
}

.sbsidy_faq_list {
    display: flex;
    flex-direction: column;
    row-gap: 2.5rem;
    li {
        font-weight: bold;
        color: var(--main-color);
        div:nth-of-type(1) {
            width: 100%;
            height: 6rem;
            position: relative;
            display: grid;
            align-items: center;
            padding: 0 10.5rem 0 5rem;
            &::after {
                content: "";
                position: absolute;
                background: var(--gradation_pur);
                opacity: 0.3;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                z-index: -1;
            }
            p {
                position: relative;
                width: 100%;
                &::after {
                    content: "";
                    width: 3rem;
                    height: 0.3rem;
                    background-color: var(--main-color);
                    position: absolute;
                    top: 50%;
                    right: 0;
                    transform: translateY(-50%);
                }
                &::before {
                    content: "";
                    width: 0.3rem;
                    height: 3rem;
                    background-color: var(--main-color);
                    position: absolute;
                    top: 50%;
                    right: 1.3rem;
                    transform: translateY(-50%);
                    transition: transform 0.1s linear;
                }
            }
        }
        div:nth-of-type(2) {
            width: 100%;
            height: 6rem;
            display: grid;
            align-items: center;
            padding: 0.5rem 10.5rem 0 5rem;
            position: relative;
        }
    }
    li.open {
        div:nth-of-type(1) {
            p {
                position: relative;
                width: 100%;
                &::before {
                    transform: translateY(-50%) rotate(90deg);
                }
            }
        }
        /* div:nth-of-type(2) {
            width: 100%;
            height: 6rem;
            display: grid;
            align-items: center;
            padding: 0.5rem 10.5rem 0 5rem;
            position: relative;
        } */
    }
}

.course_about_wrapper {
    max-width: 666px;
    margin: auto;
}

.course_about {
    margin-top: 7rem;
    margin-bottom: 5rem;
    h2 {
        margin-top: 1rem;
        margin-bottom: 2.5rem;
        font-size: 2.4rem;
        font-weight: bold;
        em {
            font-style: normal;
            display: inline;
            background: linear-gradient(
                to bottom,
                transparent 50%,
                #d8f071 50%,
                #e7fc8a 48.82%,
                #fffcba 93.09%
            );
            -webkit-box-decoration-break: clone;
            box-decoration-break: clone;
        }
        + p {
            margin-bottom: 2.5rem;
        }
    }
}

.carrier_select_wrapper {
    max-width: 765px;
    margin: auto;
}

.carrier_select {
    position: relative;
    padding: 4.4rem 0;
    margin-bottom: 5rem;
    &::after {
        content: "";
        background: var(--gradation_pur);
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0.3;
        z-index: -2;
    }
    ul {
        display: flex;
        position: relative;
        width: 60rem;
        justify-content: space-between;
        margin: auto;
        li {
            font-weight: bold;
            color: var(--main-color);
            border: 2px solid;
            border-image: var(--gradation_pur) 1;
            background-color: var(--white);
            width: 17rem;
            height: 20rem;
            display: grid;
            place-content: center;
            row-gap: 2rem;
            p {
                justify-self: center;
            }
            img {
                width: 11.4rem;
                height: 10rem;
                object-fit: contain;
                justify-self: center;
            }
        }
        &::after {
            content: "";
            position: absolute;
            width: 100%;
            height: 3px;
            top: 50%;
            left: 0;
            transform: translateY(-50%);
            z-index: -1;
            background: var(--gradation_pur);
        }
        + p {
            color: var(--main-color);
            font-weight: bold;
            font-size: 2.4rem;
            text-align: center;
            margin-top: 3.5rem;
        }
    }
}

.course_content_wrapper {
    max-width: 64.4rem;
    margin: auto;
}

.course_content {
    margin-bottom: 10rem;
    h3 {
        margin-bottom: 1.4rem;
    }
    h4 {
        font-weight: bold;
        margin-bottom: 1rem;
        font-size: 1.6rem;
    }
}

.course_content_box {
    margin: auto;
    width: 100%;
    background-color: #fff;
    column-count: 2;
    column-gap: 3.4rem;

    > div {
        width: fit-content;
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        &:not(:first-of-type) {
            margin-top: 3.4rem;
        }
        p {
            font-size: 1.2rem;
        }
    }
}

.course_skill_box,
.course_future_box {
    margin-top: 3rem;
}

/* .course_content_box.specialize {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
} */

[class^="skill-drk"],
[class^="occupation-drk"] {
    background-color: rgba(132, 188, 209, 1);
}

[class^="skill-nor"],
[class^="occupation-nor"] {
    background-color: rgba(132, 188, 209, 0.8);
}

[class^="skill-lit"],
[class^="occupation-lit"] {
    background-color: rgba(132, 188, 209, 0.6);
}

/* 右から左へフェードイン */
/* .fade-box.to__left::after {
    animation: toleft 1s linear forwards;
}

@keyframes toleft {
    0% {
        transform: scaleX(0);
    }
    100% {
        transform: scaleX(1);
    }
} */

/* clipをつかって右から左に要素が表示 */
.clipbox {
    transition: all 0.8s ease;
    clip-path: inset(0 0 0 100%);
}
.clipbox.open {
    clip-path: inset(0);
}

/* 利用規約 */
.termsofservice {
    .content {
        max-width: 970px;
        margin: 3rem auto;
        padding: 0 10px;
    }
}

/* SP版 */
@media (width <=768px) {
    /* 1remを10px固定 */
    html {
        font-size: 62.5%;
    }
    .sp {
        display: block;
    }
    .pc {
        display: none !important;
    }
    .wrapper {
        max-width: 375px;
        padding: 0 25px;
    }

    header {
        width: 100vw;
    }
    .header {
        position: static;
    }
    .header_logo {
        height: 60px;
        padding-left: 50px;
    }
    .sp_header {
        background-color: var(--white);
        width: 100%;
        display: flex;
        justify-content: space-between;
        position: fixed;
        left: 0;
        z-index: 200;
    }

    .hamburger {
        display: flex;
        height: 60px;
        width: 60px;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 100;
        cursor: pointer;
        background-color: var(--main-color);
    }

    /* ハンバーガーメニューのアイコン */
    .hamburger span,
    .hamburger span:before,
    .hamburger span:after {
        content: "";
        display: block;
        height: 1px;
        width: 25px;
        border-radius: 3px;
        background: var(--white);
        transition: 0.5s;
        position: absolute;
    }

    /* 三本線の一番上の棒の位置調整 */
    .hamburger span:before {
        bottom: 8px;
    }

    /* 三本線の一番下の棒の位置調整 */
    .hamburger span:after {
        top: 8px;
    }

    .hamburger.close span {
        background: transparent; /* 中央の線を非表示 */
    }

    .hamburger.close span:before {
        transform: rotate(45deg);
        top: 0;
    }

    .hamburger.close span:after {
        transform: rotate(-45deg);
        top: 0;
    }

    .sp_menu {
        position: fixed;
        top: -120%;
        left: 0;
        height: calc(100% - 60px);
        width: 100%;
        background-color: var(--sky-blue);
        padding: 0;
        padding-bottom: 45px;
        z-index: 100;
        transition: all 0.6s;
    }

    .sp_menu.open {
        top: 60px;
        overflow-y: scroll;
    }
    .header_list {
        position: relative;
        margin-top: 51px;
        padding-left: 50px;
        flex-direction: column;
        row-gap: 15px;
        width: 100%;
        align-items: flex-start;
        color: var(--white);
        > li {
            position: relative;
            padding-top: 15px;
            padding-left: 15px;
            width: 100%;
            &::after {
                content: "";
                height: 1px;
                width: 100%;
                position: absolute;
                bottom: -15px;
                left: 0;
                background-color: var(--white);
            }
        }
    }

    .header_list > li.parent {
        pointer-events: none;
        padding-right: 0;
        &::after {
            content: none;
        }
    }
    .header_list > li.bg {
        padding: 0;
        width: 250px;
        height: 60px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        &::after {
            content: none;
        }
    }

    .header .sub-menu {
        display: flex;
        flex-direction: column;
        width: fit-content;
        row-gap: 15px;
        margin-top: 20px;
        pointer-events: auto;
        li {
            background-color: var(--white);
            border: none;
            color: skyblue;
            width: 200px;
            height: 40px;
            display: grid;
            place-content: center;
        }
    }
    .header_cta {
        background: var(--gradation_gr);
        width: 250px;
        height: 60px;
        color: var(--green);
        margin: auto;
        margin-top: 40px;
        display: grid;
        place-content: center;
        p:nth-of-type(1) {
            font-size: 12px;
            font-weight: normal;
            position: relative;
            padding: 0 11px;
            &::after {
                content: "";
                position: absolute;
                left: 0;
                top: 2px;
                background-image: url(../images/sp_header_line_l.svg);
                width: 7.5px;
                height: 10px;
                background-size: contain;
            }
            &::before {
                content: "";
                position: absolute;
                right: 0;
                top: 2px;
                background-image: url(../images/sp_header_line_r.svg);
                width: 7.5px;
                height: 10px;
                background-size: contain;
            }
        }
        p:nth-of-type(2) {
            font-weight: bold;
        }
    }

    .header_company {
        background: var(--main-color);
        width: 250px;
        height: 60px;
        display: grid;
        place-content: center;
        color: var(--white);
        font-weight: bold;
        margin: auto;
        margin-top: 15px;
    }

    .header_address {
        color: var(--white);
        font-size: 12px;
        width: 250px;
        margin: auto;
        margin-top: 20px;
    }

    /* cta */
    @keyframes slideUp {
        0% {
            opacity: 0;
            transform: translateY(80px);
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .sp_cta {
        position: fixed;
        bottom: 0;
        animation: slideUp 1s ease-out;
        width: 100%;
        z-index: 50;
        a {
            width: 100%;
            display: grid;
            height: 80px;
            place-content: center;
            background: var(--gradation_gr);
        }
        .sp_cta_box {
            display: flex;
            column-gap: 16px;
            align-items: center;
            color: var(--green);
            > div:nth-of-type(2) {
                display: grid;
                place-items: center;
                > p:nth-of-type(1) {
                    font-size: 12px;
                    font-weight: normal;
                    position: relative;
                    padding: 0 11px;
                    &::after {
                        content: "";
                        position: absolute;
                        left: 0;
                        top: 2px;
                        background-image: url(../images/sp_header_line_l.svg);
                        width: 7.5px;
                        height: 10px;
                        background-size: contain;
                    }
                    &::before {
                        content: "";
                        position: absolute;
                        right: 0;
                        top: 2px;
                        background-image: url(../images/sp_header_line_r.svg);
                        width: 7.5px;
                        height: 10px;
                        background-size: contain;
                    }
                }
                > p:nth-of-type(2) {
                    font-weight: bold;
                }
            }
        }
    }

    /* 見出し */
    .bg_box_gr_h2,
    .bg_box_gr_h2.left {
        width: 339px;
        font-size: 24px;
        > h2 {
            padding-left: 7px;
            width: 100%;
            &::after {
                right: 0;
                left: auto;
            }
            &::before {
                left: auto;
                right: 0;
                font-size: 64px;
                top: auto;
                bottom: -7px;
            }
        }
    }

    .simple_h2 {
        font-size: 24px;
        &.leftline {
            width: 339px;
            padding-left: 42px;
            &::before {
                width: calc(32px + (100vw - 100%) / 2);
                top: 16px;
            }
        }
    }

    .simple_h3 {
        font-size: 16px;
        &.sky_h3 {
            padding-left: 40px;
        }
    }

    /* kv */
    .kv {
        padding-top: 0;
    }

    /* media */
    .media_flex {
        display: flex;
        flex-direction: column;
    }
    .media_img {
        margin-top: 25px;
        img {
            width: 100%;
            height: 182px;
        }
    }

    .media_list {
        position: relative;
        ul {
            flex-wrap: wrap;
            flex-direction: row;
            row-gap: 11px;
            column-gap: 11px;
        }
        li {
            width: 150px;
            font-size: 16px;
        }
        > p {
            position: absolute;
            bottom: 0;
            left: 171px;
        }
    }

    .keio {
        font-size: 16px;
        text-align: center;
        span {
            font-size: 16px;
        }
    }

    /* cashback */
    .cashback {
        margin-bottom: 40px;
    }
    .cashback_wrapper {
        max-width: 375px;
        padding: 103px 20px 0 20px;
    }
    .cashback_head {
        height: 225px;
        width: 280px;
        flex-direction: column;
    }
    .cashback_box {
        width: 100%;
        padding: 130px 15px 15px 15px;
        height: auto;
    }
    .cashback_maintxt {
        img {
            width: 29.9rem;
            height: 27.2rem;
        }
    }
    .cashback_head {
        justify-content: center;
        padding: 0;
        row-gap: 10px;
        p {
            font-size: 16px;
            width: 230px;
        }
        img {
            width: 258.53px;
            height: 125px;
        }
    }
    .cashback_notes {
        line-height: 1.667;
    }
    .cashback_txt_box {
        row-gap: 10px;
    }
    .cashback_question {
        padding: 0;
        position: relative;
        width: 100%;
        height: 350px;
        flex-direction: column;
        background-color: rgba(132, 188, 209, 0.15);
        z-index: -2;

        &::after {
            background-color: transparent;
        }

        .cashback_question_illust {
            justify-content: center;
            width: auto;
            height: auto;
        }
        img {
            width: 173px;
            height: auto;
            position: absolute;
            top: 126px;
        }
        .cashback_bubble {
            position: absolute;
            top: 25px;
            left: 0;
            font-size: 12px;
            p {
                padding: 1.8rem 1.2rem 2.68rem 1.3rem;
                &::before {
                    width: 14.5rem;
                    height: 9.28rem;
                    background-image: url(../images/cash_bubble_l_sp.svg);
                    top: 0;
                    left: 0;
                }
            }
            &:nth-of-type(2) {
                left: auto;
                right: 0;
                > p {
                    padding: 2.8rem 1.2rem 3.28rem 1.3rem;
                    &::before {
                        background-image: url(../images/cash_bubble_r_sp.svg);
                    }
                }
            }
        }
        .btn {
            position: absolute;
            bottom: 28px;
            margin-left: 0;
            a {
                margin: auto;
                column-gap: 14px;
                width: 265px;
                height: 50px;
                padding: 0;
                font-size: 16px;
                font-weight: bold;
                box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);

                &::after {
                    width: 30px;
                    height: 7px;
                    align-items: center;
                }
            }
        }
    }
    /* what */
    .what {
        margin-bottom: 50px;
    }
    .what_head {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        padding-right: 10px;
        font-size: 64px;
        width: 100%;
        margin: auto;
        height: 100%;
        margin-left: -25px;
        &::after {
            height: 100%;
        }
        p {
            margin-top: -16px;
            position: absolute;
            right: -19px;
        }
    }
    .what_head_box {
        grid-template-columns: 100%;
        grid-template-rows: 100%;
        width: 100%;
    }

    .what_about {
        grid-column: 1 / 2;
        grid-row: 1 / 3;
        flex-direction: column;
        width: 339px;
        margin: auto;
        padding-left: 7px;
        padding-right: 17px;
        padding-bottom: 40px;
        position: relative;
        p:first-of-type {
            margin-top: 30px;
        }
        p:not(:last-of-type) {
            margin-bottom: 29px;
        }

        .what_about_txt {
            line-height: 1.667;
            font-size: 12px;
        }
        h2 {
            margin-top: 70px;
            font-size: 24px;
        }
        img {
            width: 170px;
            height: 170px;
            object-fit: cover;
            opacity: 0.3;
            position: absolute;
            right: 6px;
            bottom: 75px;
            z-index: -1;
        }
        .btn a {
            margin-top: 102px;
            align-self: center;
        }
    }
    .what_list {
        margin-top: 60px;
        ul {
            row-gap: 30px;
            &::after {
                margin-top: 0;
                font-size: 70px;
                font-size: 70px;
                margin-right: -15px;
                right: 0;
                top: -20px;
                width: fit-content;
            }
        }
        li {
            flex-direction: column-reverse;
            row-gap: 30px;
            &:nth-of-type(2) {
                flex-direction: column-reverse;
            }
            .what_list_txt {
                width: 100%;
            }
            &:nth-of-type(odd) .what_list_txt {
                width: 100%;
                & .num {
                    height: 93px;
                    display: grid;
                    align-content: center;
                    img {
                        height: 72px;
                    }
                }
            }
            &:nth-of-type(3) .what_list_txt {
                h3 {
                    font-size: 16px;
                }
            }
        }
        img {
            width: 100%;
            height: 195.4px;
        }
    }
    /* 学べる講座 */
    .study {
        padding-top: 50px;
        padding-bottom: 50px;
        margin-bottom: 50px;
    }
    .study_pickup_box_wrapper {
        display: block;
    }
    .study_pickup_box a {
        flex-direction: column;
        flex-direction: column-reverse;
        width: 100%;
        margin-top: 60px;
        box-shadow: 6px 6px 6px 2px rgba(217, 217, 217, 1);
        height: auto;

        .study_pic {
            width: 100%;
            height: 200px;
        }
        .study_pickup_box_txt {
            padding: 20px 12px 18.59px 12px;
            row-gap: 0;
        }
        .study_pickup_catch {
            position: relative;
            margin-bottom: 8px;
            margin-left: 10.5px;
            > p:nth-of-type(2) {
                position: absolute;
                bottom: -66px;
                left: 0;
            }
        }
        .study_pickup_txt_innnerbox {
            padding: 0 10.5px;
            width: auto;
            .study_pickup_title {
                font-size: 24px;
                margin-bottom: 40px;
            }
        }
        .study_pickup_skill {
            flex-wrap: wrap;
            justify-content: center;
            gap: 10px;
            margin-top: 15px;
        }
        .study_pickup_list {
            flex-direction: column;
            padding: 12px 25px 14px 25px;
            height: 100%;
            margin-top: 15px;
            &::after {
                left: 0;
                width: 100%;
            }
            ul {
                padding: 0;
                border: none;
                display: flex;
                flex-direction: column;
                row-gap: 5px;
            }
            div:first-of-type {
                width: fit-content;

                &::after {
                    content: "";
                    height: 1.16px;
                    width: 120px;
                    background-color: var(--sky-blue);
                    display: block;
                    margin-top: 7px;
                    margin-bottom: 7px;
                }
            }
        }
        .study_arrow {
            margin-top: 15px;
        }
        .study_pickup_point {
            font-size: 16px;
            top: -18px;
            left: -17px;
            p {
                width: 90px;
                &::after {
                    width: 70px;
                    height: 70px;
                }
            }
        }
    }
    .study_course_list {
        display: block;
        margin-top: 30px;
        ul {
            display: flex;
            flex-direction: column;
            row-gap: 30px;
        }
        li {
            img {
                width: 100%;
                height: 100px;
            }
            .study_txt_list {
                display: block;
                width: 100%;
                padding: 6px 14px 13px 20px;
                height: auto;
                > p:first-of-type {
                    font-size: 12px;
                    margin-bottom: 6px;
                }
                > p:nth-of-type(2) {
                    margin-bottom: 9px;
                }
                > div {
                    img {
                    }
                }
            }
        }
    }

    .studytype {
        margin-bottom: 50px;
        .splide__arrows {
            display: flex;
        }
        .studytype_head {
            flex-direction: column;
            margin-bottom: 20px;
            h2 {
                text-align: center;
                margin-bottom: 20px;
            }
        }
        ul {
            column-gap: 0;
            justify-content: start;
            li {
                width: 100%;
                position: relative;
                padding: 16px 15px 18px 15px;
                border: 1px solid;
                border-image: var(--gradation_pur) 1;
                align-items: flex-start;
                row-gap: 8px;
                p:first-of-type {
                    font-size: 16px;
                    text-align: left;
                    margin: 0;
                }
            }
            img {
                position: absolute;
                opacity: 0.5;
                z-index: -1;
                right: 19px;
                bottom: 19px;
            }
        }
    }

    /* splide */
    .splide_wrapper {
        max-width: 375px;
        padding: 0 12px;
        margin: auto;
    }
    .splide {
        width: 100%;
        padding: 0;
    }
    .splide__pagination {
        display: none;
        margin-top: 20px;
    }
    .splide__arrows {
        position: absolute;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .splide__arrow {
        background: none;
        position: static;
        transform: none;
        display: block;
        width: auto;
    }
    .splide__track {
        width: 300px;
        margin: auto;
    }

    /* splideここまで */

    .voice,
    .interview {
        padding-top: 32px;
        padding-bottom: 75px;
        position: relative;
        margin-bottom: 50px;
        .splide__arrows {
            display: flex;
        }
        .btn_head {
            margin-bottom: 20px;
            position: static;
            .btn {
                position: absolute;
                bottom: 0;
                left: 50%;
                right: auto;
                transform: translateX(-50%);
                a {
                    width: 230px;
                    height: 50px;
                }
            }
        }
        h2 {
            &.leftline {
                &::before {
                    background: var(--gradation02);
                }
            }
            &::after {
                content: "Voice";
                background: var(--gradation02);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
                font-size: 64px;
                position: absolute;
                top: -32px;
                right: 0;
                font-family: "Abril Fatface", serif;
                opacity: 0.2;
            }
        }
    }
    .voice_wrapper {
        max-width: 375px;
        padding: 0 12px;
        margin: auto;
    }
    .voice_list {
        width: 300px;
        ul {
            flex-shrink: 1;
        }
        li {
            width: 100%;
        }
    }

    /* コースのときのinterview、voice  */
    .course.voice,
    .course.interview {
        h2 {
            &.leftline {
                padding: 0;
            }
        }
        .btn_head {
            .btn {
                right: auto;
            }
        }
    }

    .interview {
        h2 {
            &::after {
                content: "Interview";
            }
        }
    }
    .interview_wrapper {
        max-width: 375px;
        padding: 0 12px;
        margin: auto;
    }
    .interview_list {
        display: flex !important;
        column-gap: 0px;
        li {
            flex-direction: column;
            .interview_img {
                img {
                    width: 100%;
                    height: 200px;
                }
            }
            .interview_txt {
                padding: 20px 21px 22px 21px;
                .interview_title {
                    width: fit-content;
                }
                .interview_content {
                    width: fit-content;
                }
            }
        }
    }

    .instructor {
        position: relative;
        padding-top: 32px;
        margin-bottom: 70px;
        h2 {
            margin-bottom: 20px;
            &.leftline {
                &::before {
                    background: var(--gradation01);
                }
            }
            &::after {
                content: "Instructor";
                background: var(--gradation02);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
                font-size: 64px;
                position: absolute;
                top: -32px;
                right: 0;
                font-family: "Abril Fatface", serif;
                opacity: 0.2;
            }
        }
    }

    .instructor_wrapper {
        max-width: 375px;
        padding: 0 12px;
        margin: auto;
        margin-top: 20px;
    }

    .support {
        margin-bottom: 70px;
        .support_head {
            width: 100%;
            top: 50px;
            h2 {
                padding-left: 42px;
            }
        }
        .support_list {
            padding: 0;
            padding-top: 141.26px;
            &::after {
                content: none;
            }
            &::before {
                right: 0px;
                font-size: 64px;
                width: auto;
                margin-right: -23px;
            }
        }
        ol {
            padding: 0;
            row-gap: 18.38px;
            li {
                display: block;
                position: relative;
                padding-top: 48.62px;
                &:first-of-type {
                    padding-top: 20.93px;
                }
                .support_num {
                    position: absolute;
                    top: 0;
                    left: -38px;
                    z-index: -1;
                    p {
                        font-size: 48px;
                        &::after {
                            width: 71.59px;
                            height: 71.59px;
                        }
                    }
                }
            }
        }
    }
    .support_parent {
        width: 339px;
        margin: auto;
        padding: 0 12px 50px 42px;
        position: relative;
        &::after {
            content: "";
            display: block;
            background: var(--gradation_pur);
            width: calc(100% + (100vw - 100%) / 2);
            position: absolute;
            left: auto;
            top: 0;
            right: 0;
            height: 100%;
            z-index: -2;
            opacity: 0.3;
        }
    }

    .comparison {
        margin-top: 100px;
        padding-top: 0;
        .sp {
            text-align: center;
            margin-top: 15px;
        }
        & > h2.leftline {
            width: 339px;
            padding-left: 42px;
            &::after {
                font-size: 64px;
                left: auto;
                right: calc((100% - 100vw) / 2);
                top: -17px;
            }
            &::before {
                /* width: calc(50px + (100vw - 100%) / 2); */
            }
        }
    }

    .comparison_wrapper {
        overflow-x: scroll;
        margin: auto;
        margin-left: 25px;
        max-width: 100%;
        padding: 0;
        margin-bottom: 60px;
    }

    .comparison_table {
        width: 100%;
        min-width: 300px;
        border-collapse: collapse;
        margin-top: 25px;
    }

    .comparison_hellowork_wrapper {
        max-width: 375px;
        padding: 0 25px;
        margin: auto;
    }

    .comparison_hellowork {
        .comparison_hellowork_box {
            width: 100%;
            font-size: 16px;
            height: 90px;
            margin-top: 0;
            span {
                font-size: 56px;
                display: inline-block;
                &:first-of-type {
                    margin: -9px 6px -9px 0;
                }
            }
            .breakthrough {
                font-size: 32px;
                vertical-align: bottom;
            }
        }
    }
    .comparison_gr_txt,
    .comparison_recruit {
        max-width: 375px;
        padding: 0 25px;
        margin: auto;
    }
    .comparison_recruit {
        ul {
            display: flex;
            flex-wrap: wrap;
            row-gap: 8px;
            column-gap: 9px;
            img {
                width: 142.86px;
                height: 47.62px;
            }
        }
    }
    .job_seeker_support {
        margin-bottom: 50px;
    }
    .flow {
        padding-top: 50px;
        padding-bottom: 50px;
        margin-bottom: 50px;
        .wrapper {
            max-width: 375px;
            padding: 0 25px;
        }
        ol {
            margin-top: 30px;
            li {
                padding: 40px 22px 28px 22px;
                position: relative;
                height: auto;
                .flow_img {
                    position: absolute;
                    top: 28px;
                    right: 22px;
                    opacity: 0.4;
                    width: 108px;
                    height: 84px;
                }
                .flow_list_txt {
                    width: auto;
                    row-gap: 0;
                    h3 {
                        margin-top: 10px;
                        font-size: 24px;
                        line-height: 1.167;
                    }
                    p {
                        margin-top: 20px;
                        font-size: 12px;
                        line-height: 1.333;
                    }
                }
                img {
                    width: 108px;
                    height: 84px;
                }
                &:nth-of-type(1) {
                    img {
                        width: 44px;
                        height: 77px;
                    }
                }
                &:nth-of-type(2) {
                    img {
                        width: 75px;
                        height: 58px;
                    }
                }
                &:nth-of-type(3) {
                    img {
                        width: 70px;
                        height: 72px;
                    }
                }
                &:nth-of-type(4) {
                    img {
                        width: 55px;
                        height: 71px;
                    }
                }
                &:nth-of-type(5) {
                    img {
                        width: 72px;
                        height: 49px;
                    }
                }
            }
        }
    }

    footer {
        &::before {
            background-image: url(/wp-content/uploads/2024/08/sp_footer_bg.webp);
        }
        .footer_box {
            display: flex;
            flex-direction: column;
            width: 300px;
            margin: auto;
        }
        .footer_top {
            .footer_txt {
                h2 {
                    font-size: 24px;
                    line-height: 1.167;
                }
                p {
                    font-size: 16px;
                    line-height: 1.25;
                }
            }
        }
        .footer_under {
            font-size: 16px;
            line-height: 1.25;
            &::before {
                width: 100%;
            }
        }
    }

    /* 下層ページ */

    .btn a {
        padding: 15px 25px;
        font-size: 16px;
        &::after {
        }
        &.shadow {
        }
    }

    .under_kv {
        grid-template-rows: 105px 35px 35px;
        img {
            height: 140px;
        }
    }

    .under_kv_h2 {
        padding-left: 7px;
        padding-right: 7px;
        font-size: 3.2rem;
        width: 339px;
        height: 70px;
        h2 {
            padding-left: 7px;
            font-size: 24px;
        }
    }
    .about_carrier {
        h2 {
            font-size: 2.4rem;
            text-align: left;
        }
        .about_carrier_toptxt {
            font-size: 12px;
        }
    }

    .about_carrier_wrapper {
        max-width: 375px;
        padding: 0 25px;
    }
    .about_carrier_ul_wrapper {
        max-width: 375px;
        padding: 0 25px;
    }

    .about_carrier_list {
        row-gap: 20px;
        flex-direction: column;
        li {
            width: 100%;
            height: 150px;
            img {
                width: 112px;
                height: 101px;
            }
            &:nth-of-type(2) {
                img {
                    width: 123px;
                    height: 105px;
                }
            }
            p {
                font-size: 16px;
            }
        }
    }
    .about_carrier_point {
        font-size: 16px;
        line-height: 1.25;
    }
    .bubble {
        width: 100%;
        display: block;
        margin: auto;
        p {
            width: 100%;
        }
        &::after {
        }
    }

    .about_strengths {
        margin-top: 70px;
        padding-bottom: 24px;
        &::after {
        }
        h2 {
            text-align: left;
        }
    }

    .about_strengths_list {
        margin-top: 29.6px;
        li {
            flex-direction: column;
            img {
                width: 100%;
                height: auto;
            }
            h3 {
                font-size: 24px;
                line-height: 1.167;
            }
            &:nth-last-of-type(2) {
                flex-direction: column;
            }
        }
        &::after {
            font-size: 64px;
            right: 0;
            top: -262px;
        }
    }
    .about_strengths_list_txt {
        margin-top: 30px;
        width: 100%;
        row-gap: 10px;
    }
    .about_strengths_last {
        flex-direction: column;
        margin-top: 49.6px;
        div:first-of-type {
            margin-bottom: 10px;
            .about_strengths_last_txt {
                color: var(--sky-blue);
                font-size: 24px;
                font-weight: bold;
                margin-top: 10px;
            }
        }
        img {
            width: 22rem;
            height: 23.4rem;
        }
        .bubble {
            margin-left: 0;
        }
    }

    .about_project_introduction {
        padding: 55px 0 44px 0px;
        .about_project_introduction_wrapper {
            max-width: 288px;
            margin: auto;
        }
        &::before {
        }
        &::after {
        }
        h2 {
            font-size: 16px;
            padding-bottom: 169px;
            &::before {
                width: 137.64px;
                height: 137.64px;
                top: auto;
                left: 0;
                bottom: 0;
            }
            &::after {
                width: 137.64px;
                height: 137.64px;
                top: auto;
                right: 0;
                bottom: 0;
            }
        }
    }
    .about_company_wrapper {
        max-width: 375px;
        padding: 0 25px;
        margin: auto;
    }

    .about_company_box {
        padding: 60px 38px;
        row-gap: 35px;

        h2 {
            font-size: 24px;
        }

        p {
            width: 100%;
        }

        .btn a {
            width: 250px;
            height: 50px;
        }
    }

    /* リスキリング補助金 */
    .subsidy_cash_back {
        max-width: 350px;
        padding: 0;
        height: auto;
    }

    .subsidy_cash_back_img {
        width: 325px;
        height: 368px;
        padding-right: 0;
        padding-top: 172px;
        margin: auto;
        background-image: url(/wp-content/uploads/2024/08/sp_subsidy_cash_back_img.webp);
    }
    .subsidy_cash_back_box {
        padding: 30px 12px;
    }

    .subsidy_cash_back_img_txt {
        display: block;
        position: relative;
        width: 280px;
        margin: auto;

        div:nth-of-type(1) {
            p:nth-of-type(1) {
                position: static;
                padding-bottom: 40px;
            }
            p:nth-of-type(2) {
                font-size: 112px;
                margin-top: -25px;
                span {
                    font-size: 112px;
                }
            }
        }
        div:nth-of-type(2) {
            font-size: 32px;
            p:nth-of-type(1) {
                position: absolute;
                top: 20px;
                left: 0;
            }
            p:nth-of-type(2) {
                position: absolute;
                bottom: 0;
                right: 0;
            }
        }
    }

    .subsidy_cash_back_carrier {
        p {
            font-size: 16px;
        }
    }

    .subsidy_cash_back_money {
        flex-direction: column;
        row-gap: 13px;
        height: auto;
    }

    .subsidy_cash_back_carrier_attention {
        width: fit-content;
    }

    .subsidy_cash_back_money_before {
        position: relative;
        padding-bottom: 45px;
        margin: auto;
        margin-top: 16px;
        height: 82px;
        div:nth-of-type(1) {
            font-size: 48px;
        }
        div:nth-of-type(2) {
            margin-right: 0;
            p:nth-of-type(1) {
                font-size: 12px;
                margin-bottom: -5px;
            }
            p:nth-of-type(2) {
                font-size: 24px;
                margin-bottom: -5px;
            }
        }
        &::after {
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            height: calc(tan(60deg) * 26px / 2);
            width: 26px;
            clip-path: polygon(0 0, 100% 0, 50% 100%);
        }
    }

    .subsidy_cash_back_money_after {
        flex-direction: column;
        align-items: center;
        column-gap: 10px;
        div:nth-of-type(1) {
            align-items: flex-start;
            height: 127px;
            margin-bottom: 10px;
            p:nth-of-type(1) {
                top: 0;
            }
            p:nth-of-type(2) {
                &::before {
                }
            }
            p:nth-of-type(3) {
                font-size: 4.8rem;
                font-weight: bold;
                align-self: end;
            }
        }
        div:nth-of-type(2) {
            margin-bottom: 15px;
            p {
                font-size: 40px;
                span {
                    font-size: 48px;
                }
            }
        }
        > p {
            font-size: 12px;
            position: relative;
            padding-left: 12px;
            &::before {
                position: absolute;
                top: 0;
                left: 0;
            }
        }
    }

    .subsidy_strengths {
        padding: 60px 0 0 0;
        .wrapper {
            max-width: 375px;
            margin: auto;
            padding: 0 12px;
            &::before {
                font-size: 64px;
                right: 0;
                top: -16px;
            }
        }
        .strengths_double_box {
            position: relative;
            &::before {
                font-size: 64px;
                right: 0px;
                top: -160px;
            }
        }
    }

    .subsidy_strengths_p {
        width: 325px;
        margin-top: 30px;
    }
    .subsidy_strengths_grbox {
        width: 100%;
        height: 75px;
        margin-top: 30px;
        p {
            text-align: center;
        }
        span {
            font-size: 24px;
            margin-left: 0;
        }
    }

    .subsidy_strengths_gradebox {
        width: 100%;
        height: 100px;
        margin-top: 40px;
        text-align: center;
        font-weight: normal;
        span {
            font-size: 24px;
            font-weight: bold;
            margin-left: 0;
        }
    }

    .subsidy_strengths_whbox {
        padding: 117.43px 12px 15px 12px;
        width: 100%;
        height: 160px;
    }

    .subsidy_strengths_flow {
        color: var(--white);
        font-weight: bold;
        font-size: 2.4rem;
        display: flex;
        justify-content: center;
        height: 100%;
        > div {
            > p {
                font-size: 12px;
            }
            &:nth-of-type(1) {
                width: 129.69px;
                height: 26.44px;
                padding-left: 26.92px;
                &::before {
                    left: 0;
                    top: -86.43px;
                    width: 71px;
                    height: 74px;
                    background-color: var(--white);
                    z-index: 1;
                    left: -8px;
                }
                &::after {
                }
                .subsidy_strengths_flow_grbox {
                    right: auto;
                    left: 69px;
                    top: -105.43px;
                    width: 106.64px;
                    height: 98.18px;
                    padding-bottom: 11px;
                    p {
                        font-size: 12px;
                    }
                    span {
                        font-size: 24px;
                    }
                }
            }
            &:nth-of-type(1).subsidy_strengths_flow_img02 {
                &::before {
                    width: 74px;
                    height: 80px;
                    top: -93px;
                    left: -8px;
                }
            }
            &:nth-of-type(2) {
                width: 94.27px;
                height: 26.44px;
                padding-left: 23px;
                margin-left: -6px;
                &::after {
                }
                .subsidy_strengths_flow_grbox {
                    display: none;
                }
            }
            &:nth-of-type(3) {
                width: 114.78px;
                height: 26.44px;
                padding-left: 23px;
                margin-left: -6px;
                &::after {
                }
                .subsidy_strengths_flow_grbox {
                    right: -6px;
                    top: -105.43px;
                    width: 106.64px;
                    height: 98.18px;
                    padding-bottom: 11px;
                    p {
                        font-size: 12px;
                    }
                    span {
                        font-size: 24px;
                    }
                }
            }
        }
    }
    .subsidy_strengths_last {
        flex-direction: column;
        margin-top: 30px;
        align-items: center;
        margin-bottom: 32px;
        img {
            margin-top: 15px;
            width: 238px;
            height: 242px;
        }
        .bubble {
            p {
                width: 325px;
            }
        }
    }

    .subsidy_strengths_last_txt {
        font-weight: bold;
        p:nth-of-type(1) {
            font-size: 16px;
            text-align: center;
            margin-top: 10px;
        }
        p:nth-of-type(2) {
            font-size: 24px;
            margin-top: 15px;
            text-align: center;
        }
    }
    .sbsidy_carrier_wrapper {
        max-width: 375px;
        padding: 0 25px;
    }

    .sbsidy_carrier_about {
        flex-direction: column;
        row-gap: 20px;
        img {
            width: 198.53px;
            height: 90px;
        }
        p {
            width: fit-content;
            font-size: 12px;
        }
    }

    .sbsidy_flow {
        ul {
            overflow-x: scroll;
            column-gap: 37px;
            justify-content: left;
            li {
                width: 170px;
                height: 200px;
                flex-shrink: 0;
                &:first-of-type {
                    margin-left: 104px;
                }
                img {
                    width: 114px;
                    height: 100px;
                }
                p {
                    font-size: 16px;
                    line-height: 1.25;
                }
                &:not(:last-of-type) {
                    &::after {
                        right: -30px;
                    }
                }
            }
        }
    }

    .sbsidy_carrier_txt {
        font-size: 16px;
    }

    .sbsidy_carrier_attention {
        h2 {
            font-size: 24px;
        }
    }

    ul.tag_box {
        flex-wrap: wrap;
        column-gap: 10px;
        row-gap: 5px;
        li {
            font-size: 12px;
            height: 25px;
        }
    }

    .sbsidy_carrier_attention_box {
        .sbsidy_carrier_attention_point {
            font-size: 12px;
        }
        li {
            font-size: 12px;
        }
    }
    .sbsidy_receiving {
        h2 {
            font-size: 24px;
        }
    }

    .sbsidy_receiving_wrapper {
        max-width: 370px;
        padding: 0 25px;
        margin: auto;
    }

    .sbsidy_flow.receiving {
        ul {
            overflow: hidden;
            row-gap: 30px;
            flex-direction: column;
            li {
                display: grid;
                grid-template-columns: 114px 140px;
                grid-template-rows: 30px auto;
                row-gap: 10px;
                column-gap: 20px;
                column-gap: 20px;
                width: 100%;
                height: 140px;
                padding: 0;
                /* padding: 10.5px 0; */
                border: 2px solid var(--sky-blue);
                place-content: center;

                &:first-of-type {
                    margin-left: 0;
                }
                .flow_li_head {
                    width: 100%;
                }
                img {
                    width: 114px;
                    height: 100px;
                    grid-column: 1/2;
                    grid-row: 1/3;
                }
                p {
                    text-align: left;
                    line-height: 1.25;
                    justify-self: left;
                }
                &:not(:last-of-type) {
                    &::after {
                        content: "";
                        background-image: url(../images/subsidy_receving_arrow_down.svg);
                        right: auto;
                        left: 50%;
                        transform: translateX(-50%);
                        top: auto;
                        bottom: -28px;
                    }
                }
            }
        }
    }

    .sbsidy_flow_receiving_attention {
        width: fit-content;
        p {
            font-size: 12px;
            padding-left: 12px;
        }
    }

    .sbsidy_faq {
        padding-top: 60px;
        margin-top: 80px;
        padding-bottom: 100px;
        .wrapper {
            &::after {
                font-size: 64px;
                top: -45px;
                left: 0;
            }
        }
        h2 {
            font-size: 16px;
        }
    }

    .sbsidy_faq_list {
        row-gap: 20px;
        li {
            div:nth-of-type(1) {
                height: 60px;
                padding: 0 9px 0 16px;
                &::after {
                }
                p {
                    font-size: 16px;
                    padding-right: 40px;
                    line-height: 1.25;
                    &::after {
                        width: 20px;
                        height: 3px;
                        right: 5px;
                    }
                    &::before {
                        width: 3px;
                        height: 20px;
                    }
                }
            }
            div:nth-of-type(2) {
                height: auto;
                padding: 5px 9px 5px 16px;
            }
        }
        li.open {
            div:nth-of-type(1) {
                p {
                    position: relative;
                    width: 100%;
                    &::before {
                        transform: translateY(-50%) rotate(90deg);
                    }
                }
            }
            /* div:nth-of-type(2) {
                height: auto;
                padding: 5px 9px 5px 16px;
            } */
        }
    }
    .course_about_wrapper {
        max-width: 375px;
        padding: 0 25px;
        margin: auto;
    }
    .under_pickup_list {
        flex-direction: column;
        padding: 15px 27px;
        div:first-of-type {
            width: 100%;
            text-align: center;
            position: relative;
            padding-bottom: 9px;
            &::after {
                content: "";
                position: absolute;
                width: 130px;
                height: 1px;
                background-color: var(--sky-blue);
                left: 50%;
                transform: translateX(-50%);
                bottom: 0;
            }
        }
        ul {
            border: none;
            margin-top: 19px;
        }
    }

    .carrier_select_wrapper {
        max-width: 375px;
        padding: 0 25px;
        margin: auto;
    }

    .carrier_select {
        &::after {
        }
        ul {
            flex-direction: column;
            width: 100%;
            row-gap: 30px;
            li {
                display: flex;
                width: 100%;
                height: 140px;
                align-items: center;
                justify-content: flex-start;
                padding: 20px 16px 20px 30px;
                column-gap: 13px;
                img {
                    width: 114px;
                    height: 100px;
                    object-fit: contain;
                }
            }
            &::after {
                content: "";
                position: absolute;
                width: 3px;
                height: 100%;
                top: 0;
                left: 50%;
                transform: translateX(-50%);
                z-index: -1;
                background: var(--gradation_pur);
            }
            + p {
                font-size: 16px;
                line-height: 1.25;
                margin-top: 30px;
            }
        }
    }
    .course_content_wrapper {
        max-width: 375px;
        padding: 0 25px;
    }
    .course_content_box {
        column-count: 1;
        > div {
        }
    }

    ul.skill_box {
        font-size: 12px;
        li {
            padding: 3px 26px;
            line-height: 1.25;
            height: 25px;
            align-content: center;
            &:nth-of-type(1) {
                width: 158px;
                padding: 0;
                text-align: center;
            }
            &:nth-of-type(2) {
                width: 157px;
                padding: 0;
                text-align: center;
            }
        }
    }

    /* ul.skill_box.all_course01 {
        margin-bottom: 3rem;
    }

    ul.skill_box.market,
    ul.skill_box.designer,
    ul.skill_box.engineer {
        li {
            &:nth-of-type(1),
            &:nth-of-type(2) {
                background-color: var(--sky-blue);
            }
        }
    } */
    .termsofservice {
        .content {
            max-width: 375px;
            padding: 0 25px;
        }
    }
}
