@charset "UTF-8";

.hero {
    position: relative;
    z-index: 5;
    background: var(--color-white);
    aspect-ratio: var(--ww) / 810;
}

.hero_grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 150dvh;
    background: var(--color-white);
    vertical-align: middle;
}

.hero_logo {
    position: absolute;
    top: var(--grid-size);
    right: calc(2.5 * var(--grid-size));
    width: calc(2 * var(--grid-size));
}

.hero_logo > img {
    width: 100%;
    vertical-align: top;
}

.hero_catch {
    position: absolute;
    top: calc(4 * var(--grid-size));
    left: calc(3.5 * var(--grid-size));
}

.hero_catch.-play {
}

.hero_catch::after {
    content: "";
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(to right, #00dcff, #008df2, #008df2, #00dcff, #00dcff 50%);
    background-size: 200% 100%;
    animation: gradientMove 3s linear infinite;
    mask-image: url(../img/home/hero-catch-base.svg);
    mask-size: 100%;
    mask-repeat: no-repeat;

    -webkit-animation: gradientMove 3s linear infinite;
    -webkit-mask-image: url(../img/home/hero-catch-base.svg);
    -webkit-mask-size: 100%;
    -webkit-mask-repeat: no-repeat;
}

.hero_catch.-play::after {
    opacity: 1;
    transition: opacity 1s;

    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
}

.hero_catch > svg {
    width: calc(790 / var(--ww) * 100vw);
    height: auto;
    aspect-ratio: 790 / 257;
}

.hero_catch.-play > svg {
    opacity: 0;
    transition: opacity 0.5s 1s;

    -webkit-transition: opacity 0.5s 1s;
    -o-transition: opacity 0.5s 1s;
}

.hero_text {
    position: absolute;
    top: calc(12 * var(--grid-size));
    left: calc(3.5 * var(--grid-size));
    margin-top: -0.5em;
    font-size: var(--fz-18);
    line-height: 2;
}

.hero_text rt {
    font-size: 50%;
    ruby-align: space-around;
}

.hero_nav {
    position: absolute;
    top: calc(9 * var(--grid-size));
    right: calc(1.5 * var(--grid-size));
    width: calc(4 * var(--grid-size));
}

.hero_nav_list {
    display: -ms-grid;
    display: grid;
    gap: var(--size-16);
}

.hero_nav_list > li {
}

.hero_nav_list > li > a {
    font-size: var(--fz-14);
    transition: opacity var(--ease-out);

    -webkit-transition: opacity var(--ease-out);
    -o-transition: opacity var(--ease-out);
}

.hero_nav_list > li > a:hover {
    opacity: 0.5;
    transition: opacity var(--ease-in);

    -webkit-transition: opacity var(--ease-in);
    -o-transition: opacity var(--ease-in);
}

.hero_contact {
    position: absolute;
    top: calc(13 * var(--grid-size));
    right: calc(1.5 * var(--grid-size));
    width: calc(4 * var(--grid-size));
}

.hero_contact > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: var(--grid-size);
    padding: 0 var(--size-12) 0 var(--size-24);
    border: 1px solid var(--color-blue);
    background: var(--color-base);
    color: var(--color-blue);
    font-size: var(--fz-13);
    transition:
        background var(--ease-out),
        color var(--ease-out);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition:
        background var(--ease-out),
        color var(--ease-out);
    -o-transition:
        background var(--ease-out),
        color var(--ease-out);
}

.hero_contact > a::after {
    content: "\e902";
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--color-blue-20);
    font-weight: normal;
    font-size: var(--fz-20);
    line-height: 1;
    font-family: icomoon;
    transition: background var(--ease-out);

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition: background var(--ease-out);
    -o-transition: background var(--ease-out);
}

.hero_contact > a:hover {
    background: var(--color-blue);
    color: var(--color-white);
    transition:
        background var(--ease-in),
        color var(--ease-in);

    -webkit-transition:
        background var(--ease-in),
        color var(--ease-in);
    -o-transition:
        background var(--ease-in),
        color var(--ease-in);
}

.hero_contact > a:hover::after {
    background: var(--color-white-20);
    transition: background var(--ease-in);

    -webkit-transition: background var(--ease-in);
    -o-transition: background var(--ease-in);
}

.vision {
    background: var(--color-blue);
    color: var(--color-white);
}

.vision_wrap {
    display: flex;
    justify-content: space-between;
    position: relative;
    margin-top: var(--size-90);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.vision_photo {
    position: absolute;
    bottom: 0;
    left: calc(-204 / var(--ww) * 100vw);
}

.vision_photo > img {
    display: inline-block;
    width: calc(405 / var(--ww) * 100vw);
    height: auto;
    will-change: transform;
}

.vision_photo > img.-photo01 {
}

.vision_photo > img.-photo02 {
    position: absolute;
    bottom: calc(187 / var(--ww) * 100vw);
    left: var(--size-90);
    transform: rotate(3deg);

    -webkit-transform: rotate(3deg);
    -ms-transform: rotate(3deg);
}

.vision_cnt {
    width: calc(676 / var(--ww) * 100vw);
    margin-left: auto;
}

.vision_catch {
}

.vision_catch .-jp {
    font-size: var(--fz-32);
    line-height: 1.45;
}

.vision_catch .-en {
    margin-top: var(--size-6);
}

.vision_text {
    display: -ms-grid;
    display: grid;
    gap: var(--size-30);
    margin-top: var(--size-60);
}

.biz {
    padding-bottom: 0;
    background: var(--color-green);
}

.biz_intro {
    padding-bottom: calc(109 / var(--ww) * 100vw);
}

.biz_mission {
    margin-top: calc(76 / var(--ww) * 100vw);
}

.biz_mission_ttl {
}

.biz_mission_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: var(--size-24);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.biz_mission_catch {
    font-size: var(--fz-30);
}

.biz_mission_text {
    width: calc(586 / var(--ww) * 100vw);
}

.biz_flow {
    position: relative;
}

.biz_flow_grid {
    width: 100%;
    height: auto;
    vertical-align: middle;
    aspect-ratio: var(--ww) / 1262;
}

.biz_flow_ttl {
    position: absolute;
    top: calc(1.9 * var(--grid-size));
    width: 100%;
    font-weight: 300;
    font-size: var(--fz-36);
    line-height: 1;
    text-align: center;
}

.biz_flow_text {
    position: absolute;
    top: calc(3.5 * var(--grid-size));
    width: 100%;
    text-align: center;
}

.biz_flow_img {
    position: absolute;
    top: calc(7 * var(--grid-size));
    width: 100%;
    text-align: center;
}

.biz_flow_img > img {
    width: calc(15 * var(--grid-size));
    height: auto;
}

.biz_flow_arrow {
    position: absolute;
    top: calc(13 * var(--grid-size));
    width: 100%;
    text-align: center;
}

.biz_flow_arrow > img {
    width: var(--size-18);
    height: auto;
}

.biz_flow_step {
    display: flex;
    flex-wrap: wrap;
    gap: calc(0.5 * var(--grid-size)) calc(1 * var(--grid-size));
    position: absolute;
    top: calc(15 * var(--grid-size));
    left: calc(4.5 * var(--grid-size));
    width: calc(24 * var(--grid-size));

    -ms-flex-wrap: wrap;
}

.biz_flow_step_item {
    position: relative;
    width: calc(7 * var(--grid-size));
    height: calc(5 * var(--grid-size));
    padding: calc(39 / var(--ww) * 100vw) calc(34 / var(--ww) * 100vw);
    background: var(--color-green-10);
}

.biz_flow_step_item.-infinity {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--color-black);
    background: var(--color-green);

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.biz_flow_step_item:not(:nth-child(3n + 1))::before {
    content: "\e900";
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(2 * var(--grid-size));
    left: calc(-1 * var(--grid-size));
    width: var(--grid-size);
    height: var(--grid-size);
    font-size: var(--fz-16);
    font-family: icomoon;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.biz_flow_step_no {
    font-size: var(--fz-12);
    text-align: center;
}

.biz_flow_step_ttl {
    margin-top: var(--size-6);
    font-size: var(--fz-20);
    text-align: center;
}

.biz_flow_step_list {
    display: -ms-grid;
    display: grid;
    gap: var(--size-6);
    margin-top: var(--size-16);
    font-size: var(--fz-15);
    line-height: 1.4;
}

.biz_flow_step_list > li {
    display: flex;
    gap: var(--size-8);
}

.biz_flow_step_list > li::before {
    content: "\e903";
    opacity: 0.4;
    font-weight: normal;
    font-family: icomoon;
}

.biz_flow_step_infinity {
    text-align: center;
}

.biz_flow_step_text {
    text-align: center;
}

.about {
    background: var(--color-beige);
}

.about_row {
    display: flex;
    justify-content: space-between;
    margin-top: calc(82 / var(--ww) * 100vw);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.about_col {
}

.about_col.-outline {
    width: calc(580 / var(--ww) * 100vw);
}

.about_col.-history {
    width: calc(450 / var(--ww) * 100vw);
}

.about_sec {
}

.about_ttl {
    line-height: 1;
}

.about_tbl {
    display: -ms-grid;
    display: grid;
    gap: var(--size-18);
    margin-top: var(--size-36);
    font-size: var(--fz-15);
    line-height: 1.8;
}

.about_tbl > dl {
    display: flex;
}

.about_tbl > dl > dt {
    flex-shrink: 0;
    width: calc(136 / var(--ww) * 100vw);
    font-weight: 500;

    -ms-flex-negative: 0;
}

.about_tbl > dl > dd {
}

.about_tbl > dl > dd a {
    color: var(--color-black-60);
    text-decoration: underline;
    text-underline-offset: 0.2em;
    transition: opacity var(--ease-out);

    -webkit-transition: opacity var(--ease-out);
    -o-transition: opacity var(--ease-out);
}

.about_tbl > dl > dd a:hover {
    opacity: 0.5;
    transition: opacity var(--ease-in);

    -webkit-transition: opacity var(--ease-in);
    -o-transition: opacity var(--ease-in);
}

.about_message {
    margin-top: var(--size-90);
}

.about_message_link {
    display: block;
    position: relative;
    padding: var(--size-45) var(--size-45) var(--size-65);
    border: 1px solid;
}

.about_message_ttl {
    line-height: 1;
}

.about_message_catch {
    margin-top: var(--size-30);
    font-weight: 700;
    font-size: var(--fz-20);
    line-height: 1.45;
}

.about_message_more {
    display: inline-flex;
    align-items: center;
    gap: var(--size-30);
    position: absolute;
    right: 0;
    bottom: 0;
    height: var(--size-44);
    padding: 0 var(--size-10) 0 var(--size-24);
    border-top: 1px solid;
    border-left: 1px solid;
    font-size: var(--fz-13);
    transition: background var(--ease-out);

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition: background var(--ease-out);
    -o-transition: background var(--ease-out);
}

.about_message_link:hover .about_message_more {
    background: var(--color-black-10);
    transition: background var(--ease-in);

    -webkit-transition: background var(--ease-in);
    -o-transition: background var(--ease-in);
}

.about_message_more::after {
    content: "\e902";
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--color-black-20);
    font-weight: normal;
    font-size: var(--fz-20);
    line-height: 1;
    font-family: icomoon;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.net {
    background: var(--color-white);
}

.net_comp {
    display: flex;
    justify-content: space-between;
    margin-top: var(--size-80);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.net_ttl {
}

.net_comp_list {
    width: calc(720 / var(--ww) * 100vw);
    font-size: var(--fz-15);
    line-height: 1.8;
}

.net_comp_item {
    display: flex;
    justify-content: space-between;
    align-items: center;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.net_comp_item:not(:first-child) {
    margin-top: var(--size-30);
    padding-top: var(--size-30);
    border-top: 1px solid var(--color-black-10);
}

.net_comp_item_cnt {
}

.net_comp_item_ttl {
    font-weight: 500;
}

.net_comp_item_info {
}

.net_comp_item_web {
    display: inline-flex;
    align-items: center;
    gap: var(--size-8);
    font-size: var(--fz-12);
    transition: opacity var(--ease-out);

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition: opacity var(--ease-out);
    -o-transition: opacity var(--ease-out);
}

.net_comp_item_web:hover {
    opacity: 0.5;
    transition: opacity var(--ease-in);

    -webkit-transition: opacity var(--ease-in);
    -o-transition: opacity var(--ease-in);
}

.net_comp_item_web::after {
    content: "\e902";
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--color-black-20);
    font-weight: normal;
    font-size: var(--fz-20);
    line-height: 1;
    font-family: icomoon;
    transform: rotate(-45deg);

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
}

.net_row {
    display: flex;
    justify-content: space-between;
    margin-top: calc(105 / var(--ww) * 100vw);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.net_conect {
    display: flex;
    flex: auto;
    gap: var(--size-90);
    margin-right: auto;

    -webkit-box-flex: 1;
    -ms-flex: auto;
}

.net_conect_list {
    font-size: var(--fz-15);
    line-height: 2.1;
}

.net_conect_list > li {
}

.net_conect_list > li > a {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    transition: opacity var(--ease-out);

    -webkit-transition: opacity var(--ease-out);
    -o-transition: opacity var(--ease-out);
}

.net_conect_list > li > a:hover {
    opacity: 0.5;
    transition: opacity var(--ease-in);

    -webkit-transition: opacity var(--ease-in);
    -o-transition: opacity var(--ease-in);
}

.recruit {
    background: var(--color-orange);
}

.recruit_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: var(--size-50);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

.recruit_cnt {
    width: calc(450 / var(--ww) * 100vw);
    padding-top: var(--size-36);
}

.recruit_text {
}

.recruit_link {
    margin-top: var(--size-36);
}

.recruit_link > a {
    display: inline-flex;
}

.recruit_link > a:hover {
}

.recruit_menu {
    width: calc(540 / var(--ww) * 100vw);
    line-height: 1;
}

.recruit_menu_item {
}

.recruit_menu_item_link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--size-24);
    padding: var(--size-40) 0;
    border-bottom: 1px solid var(--color-black-20);
    transition: opacity var(--ease-out);

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-transition: opacity var(--ease-out);
    -o-transition: opacity var(--ease-out);
}

.recruit_menu_item_link:hover {
    opacity: 0.5;
    transition: opacity var(--ease-in);

    -webkit-transition: opacity var(--ease-in);
    -o-transition: opacity var(--ease-in);
}

.recruit_menu_item_link::after {
    content: "\e902";
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    border-radius: 50%;
    background: var(--color-black-20);
    font-weight: normal;
    font-size: var(--fz-20);
    line-height: 1;
    font-family: icomoon;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}

.recruit_menu_item_ttl {
    font-weight: 300;
    font-size: var(--fz-32);
}

.recruit_menu_item_jp {
}

@media screen and (max-width: 991.98px) {
}

@media screen and (max-width: 767.98px) {
    .hero {
        aspect-ratio: 375 / 540;
    }

    .hero_grid {
    }

    .hero_logo {
        top: calc(0.45 * var(--grid-size));
        right: auto;
        left: calc(0.5 * var(--grid-size));
        width: calc(2 * var(--grid-size));
    }

    .hero_logo > img {
    }

    .hero_catch {
        top: calc(7 * var(--grid-size));
        left: calc(0.5 * var(--grid-size));
    }

    .hero_catch > svg {
        width: calc(8 * var(--grid-size));
    }

    .hero_text {
        top: calc(10.28 * var(--grid-size));
        left: calc(0.5 * var(--grid-size));
        width: calc(8 * var(--grid-size));
        font-size: 0.85rem;
        line-height: 1.8;
    }

    .hero_nav {
        display: none;
    }

    .hero_nav_list {
    }

    .hero_nav_list > li {
    }

    .hero_nav_list > li > a {
    }

    .hero_contact {
        display: none;
    }

    .hero_contact > a {
    }

    .hero_contact > a::after {
    }

    .vision {
    }

    .vision_wrap {
        margin-top: var(--size-40);
    }

    .vision_photo {
        display: none;
    }

    .vision_photo > img {
    }

    .vision_photo > img.-photo01 {
    }

    .vision_photo > img.-photo02 {
    }

    .vision_cnt {
    }

    .vision_catch {
    }

    .vision_catch .-jp {
        font-size: var(--fz-21);
    }

    .vision_catch .-en {
        font-size: var(--fz-12);
    }

    .vision_text {
        gap: var(--size-20);
        margin-top: var(--size-30);
    }

    .biz {
    }

    .biz_intro {
        padding-bottom: calc(66 / var(--ww) * 100vw);
    }

    .biz_mission {
        margin-top: var(--size-40);
    }

    .biz_mission_ttl {
        line-height: 1;
    }

    .biz_mission_wrap {
        flex-direction: column;
        gap: var(--size-30);
        margin-top: var(--size-16);
    }

    .biz_mission_catch {
        font-size: var(--fz-20);
    }

    .biz_mission_text {
        width: auto;
    }

    .biz_flow {
    }

    .biz_flow_grid {
        aspect-ratio: var(--ww) / 2260;
    }

    .biz_flow_ttl {
        top: calc(1.35 * var(--grid-size));
        font-size: var(--fz-30);
    }

    .biz_flow_text {
        top: calc(2.9 * var(--grid-size));
        left: calc(0.5 * var(--grid-size));
        width: calc(8 * var(--grid-size));
        text-align: left;
    }

    .biz_flow_img {
        top: calc(8 * var(--grid-size));
        left: calc(1.5 * var(--grid-size));
        width: calc(6 * var(--grid-size));
    }

    .biz_flow_img > img {
    }

    .biz_flow_arrow {
        top: calc(18.45 * var(--grid-size));
    }

    .biz_flow_arrow > img {
    }

    .biz_flow_step {
        gap: var(--grid-size);
        top: calc(20.5 * var(--grid-size));
        left: calc(1.5 * var(--grid-size));
        width: calc(6 * var(--grid-size));
    }

    .biz_flow_step_item {
        height: calc(4.5 * var(--grid-size));
        padding: calc(36 / var(--ww) * 100vw) calc(24 / var(--ww) * 100vw);
    }

    .biz_flow_step_item.-infinity {
        height: calc(3.5 * var(--grid-size));
    }

    .biz_flow_step_item:not(:nth-child(3n + 1))::before {
        display: none;
    }

    .biz_flow_step_item:not(:first-child)::before {
        content: "\e900";
        display: inline-flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: calc(-1 * var(--grid-size));
        left: calc(2.5 * var(--grid-size));
        width: var(--grid-size);
        height: var(--grid-size);
        font-size: var(--fz-16);
        font-family: icomoon;
        transform: rotate(90deg);

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
    }

    .biz_flow_step_no {
    }

    .biz_flow_step_ttl {
        font-size: var(--fz-16);
    }

    .biz_flow_step_list {
        font-size: 0.78rem;
    }

    .biz_flow_step_list > li {
    }

    .biz_flow_step_list > li::before {
    }

    .biz_flow_step_infinity {
    }

    .biz_flow_step_text {
        font-size: var(--fz-13);
    }

    .about {
    }

    .about_row {
        flex-direction: column;
        gap: var(--size-40);
        margin-top: var(--size-40);
    }

    .about_col {
    }

    .about_col.-outline {
        width: auto;
    }

    .about_col.-history {
        width: auto;
    }

    .about_sec {
    }

    .about_ttl {
    }

    .about_tbl {
        gap: var(--size-12);
        margin-top: var(--size-24);
        font-size: var(--fz-13);
    }

    .about_tbl > dl {
    }

    .about_tbl > dl > dt {
        width: calc(105 / var(--ww) * 100vw);
    }

    .about_tbl > dl > dd {
    }

    .about_message {
        margin-top: var(--size-36);
    }

    .about_message_link {
        padding: var(--size-36) var(--size-30) var(--size-60);
    }

    .about_message_ttl {
    }

    .about_message_catch {
        margin-top: var(--size-24);
        font-size: var(--fz-16);
    }

    .about_message_more {
        gap: var(--size-10);
        padding: 0 var(--size-12) 0 var(--size-20);
        font-size: var(--fz-12);
    }

    .about_message_more::after {
    }

    .net {
    }

    .net_comp {
        flex-direction: column;
        gap: var(--size-24);
        margin-top: var(--size-40);
    }

    .net_ttl {
        width: 100%;
    }

    .net_comp_list {
        width: auto;
        padding-bottom: var(--size-20);
        border-bottom: 1px solid var(--color-black-10);
    }

    .net_comp_item {
        flex-direction: column;
        align-items: flex-start;

        -webkit-box-align: start;
        -ms-flex-align: start;
    }

    .net_comp_item:not(:first-child) {
        margin-top: var(--size-20);
        padding-top: var(--size-24);
    }

    .net_comp_item_cnt {
    }

    .net_comp_item_ttl {
        font-size: var(--fz-14);
    }

    .net_comp_item_info {
        font-size: var(--fz-13);
    }

    .net_comp_item_web {
        align-self: flex-end;
        margin-top: var(--size-4);

        -ms-flex-item-align: end;
    }

    .net_comp_item_web::after {
    }

    .net_row {
        flex-direction: column;
        gap: var(--size-40);
        margin-top: var(--size-40);
    }

    .net_conect {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--size-20) var(--size-30);

        -ms-flex-wrap: wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
    }

    .net_conect_list {
        font-size: var(--fz-14);
        line-height: 2;
    }

    .recruit {
    }

    .recruit_wrap {
        flex-direction: column;
        margin-top: var(--size-40);
    }

    .recruit_cnt {
        width: auto;
        padding-top: 0;
    }

    .recruit_text {
    }

    .recruit_link {
        margin-top: var(--size-24);
    }

    .recruit_link > a {
    }

    .recruit_menu {
        width: auto;
        margin-top: var(--size-16);
    }

    .recruit_menu_item {
    }

    .recruit_menu_item_link {
        gap: var(--size-16);
        padding: var(--size-30) 0;
    }

    .recruit_menu_item_link::after {
    }

    .recruit_menu_item_ttl {
        font-size: var(--fz-22);
    }

    .recruit_menu_item_jp {
        font-size: var(--fz-13);
    }
}

@-webkit-keyframes gradientMove {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 100% 100%;
    }
}

@keyframes gradientMove {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 100% 100%;
    }
}
