@keyframes letterAnime {
    0% {
        opacity: 0;
        letter-spacing: .2em;
        transform: translateX(0.5em)
    }

    100% {
        opacity: 1;
        letter-spacing: .05em;
        transform: translateX(0)
    }
}

@keyframes imgAnime {
    0% {
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0)
    }

    100% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }
}

* {
    margin: 0;
    padding: 0;
    overflow-wrap: break-word
}


body.recruit {
    font-size: 1.4rem;
    line-height: 1.5
}

a {
    word-break: break-word
}

[class*=page-width] {
    max-width: 124rem;
    padding-right: 6.4rem;
    padding-left: 6.4rem;
    box-sizing: content-box
}

@media only screen and (max-width: 1272px) {
    [class*=page-width] {
        padding-right:3.2rem;
        padding-left: 3.2rem
    }
}

@media only screen and (max-width: 640px) {
    [class*=page-width] {
        padding-right:2.4rem;
        padding-left: 2.4rem
    }
}

.page-width-02 {
    max-width: 88rem;
    margin-right: auto;
    margin-left: auto
}

.page-width-02.title_wrapper-01 {
    box-sizing: content-box
}

.link_recruit {
    color: #1f1f1f;
    font-size: 1.4rem;
    text-decoration: none;
    line-height: 1.5;
    display: block
}

.entry-button a {
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    background-color: #f05353;
    display: flex;
    align-items: center
}

.recruit .cart-notification-wrapper .cart-notification {
    display: none
}

.pagination-wrapper {
    margin-top: 6.4rem
}

@media only screen and (max-width: 640px) {
    .pagination-wrapper {
        margin-top:3.2rem
    }
}

.pagination__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem
}

.pagination__list .pagination__item--current:after {
    display: none
}

.pagination__list .pagination__item:hover:after,.pagination__list .pagination__item:focus-visible:after {
    width: 1.6rem !important
}

.pagination__list .pagination__item:focus-visible:after {
    content: "";
    display: block;
    width: 2rem;
    height: .1rem;
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translate(-50%);
    background-color: currentColor
}

@media only screen and (max-width: 1023px) {
    .pagination__list li:has(.pagination__item--next),.pagination__list li:has(.pagination__item--prev),.pagination__list li:has(span.pagination__item) {
        display:none
    }
}

@media only screen and (max-width: 640px) {
    .pagination__list li {
        margin-right:0 !important;
        flex: none !important
    }

    .pagination__list .pagination__item:hover:after,.pagination__list .pagination__item:focus-visible:after {
        width: 1.2rem !important;
        bottom: 4px !important
    }
}

.pagination__list a,.pagination__list span {
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4.8rem;
    min-width: 4.8rem
}

@media only screen and (max-width: 640px) {
    .pagination__list a,.pagination__list span {
        height:3.2rem;
        min-width: 3.2rem
    }
}

.pagination__list a {
    text-decoration: none;
    border: 1px solid #bcbcbc;
    border-radius: .4rem;
    box-sizing: border-box
}

.pagination__list a.pagination__item--current {
    border: 2px solid #7ed7d1
}

.pagination__list .pagination__item .icon-caret {
    height: .6rem
}

.pagination__list .pagination__item--next .icon {
    transform: rotate(90deg)
}

.pagination__list .pagination__item--prev .icon {
    transform: rotate(-90deg)
}

[class*=section-0] {
    background-color: #fff;
    position: relative
}

.section-01 {
    padding-top: 12.8rem;
    padding-bottom: 12.8rem
}

@media only screen and (max-width: 640px) {
    .section-01 {
        padding-top:6.4rem;
        padding-bottom: 6.4rem
    }
}

.section-02 {
    padding-top: 3.2rem;
    padding-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .section-02 {
        padding-top:1.6rem;
        padding-bottom: 1.6rem
    }
}

.section-03 {
    padding-top: 6.4rem;
    padding-bottom: 12.8rem
}

@media only screen and (max-width: 640px) {
    .section-03 {
        padding-top:3.2rem;
        padding-bottom: 6.4rem
    }
}

.section-04 {
    padding-top: 1.6rem;
    padding-bottom: 12.8rem
}

@media only screen and (max-width: 640px) {
    .section-04 {
        padding-bottom:6.4rem
    }
}

.section-fixed {
    color: #d5e1f5;
    font-size: 50rem;
    background-image: url("/cdn/shop/files/recruit-icon-symbol.svg");
    background-position: -40px center;
    background-repeat: no-repeat;
    background-size: 888px auto;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0
}

@media only screen and (max-width: 888px) {
    .section-fixed {
        background-size:100% auto
    }
}

.section-fixed:empty {
    display: block
}

[class*=column-0] {
    list-style: none
}

[class*=column-0]:not([class*=column-01]) {
    display: flex;
    flex-wrap: wrap
}

.column-inner {
    width: 100%
}

[class*=column-0]+[class*=column-0]:not(.column-02_separate-02) {
    margin-top: 6.4rem
}

@media only screen and (max-width: 640px) {
    [class*=column-0]+[class*=column-0]:not(.column-02_separate-02) {
        margin-top:3.2rem
    }
}

.title-03-03+[class*=column-0] {
    margin-top: 1.6rem
}

@media only screen and (max-width: 640px) {
    .title-03-03+[class*=column-0] {
        margin-top:.8rem
    }
}

p+[class*=column-0] {
    margin-top: 1.6rem
}

@media only screen and (max-width: 640px) {
    p+[class*=column-0] {
        margin-top:.8rem
    }
}

.column-01_slim {
    max-width: 656px;
    margin-right: auto;
    margin-left: auto
}

.column-01_slim .column-inner+.column-inner {
    margin-top: 3.2rem
}

@media only screen and (max-width: 640px) {
    .column-01_slim .column-inner+.column-inner {
        margin-top:1.6rem
    }
}

[class*=column-02_equality] {
    gap: 6.4rem
}

@media only screen and (max-width: 1272px) {
    [class*=column-02_equality] {
        gap:3.2rem
    }
}

@media only screen and (max-width: 640px) {
    [class*=column-02_equality] {
        gap:1.6rem
    }
}

[class*=column-02_equality] .column-inner {
    width: calc((100% - 6.4rem)/2)
}

@media only screen and (max-width: 1272px) {
    [class*=column-02_equality] .column-inner {
        width:calc((100% - 3.2rem)/2)
    }
}

@media only screen and (max-width: 640px) {
    [class*=column-02_equality] .column-inner {
        width:calc((100% - 1.6rem)/2)
    }
}

@media only screen and (max-width: 640px) {
    .column-02_equality-02 {
        gap:3.2rem
    }
}

@media only screen and (max-width: 652px) {
    .column-02_equality-02 .column-inner {
        width:100%
    }

    .column-02_equality-02 .column-inner .box_text .title-02-01 {
        text-align: center
    }

    .column-02_equality-02 .column-inner .box_text .link_button-wrapper {
        text-align: center
    }
}

@media only screen and (min-width: 653px) {
    .column-02_equality-02 .box_text {
        max-width:46rem;
        margin-right: auto;
        margin-left: auto
    }
}

@media only screen and (min-width: 653px) {
    .column-02_equality-02 .title-en-ja {
        display:inline-flex;
        width: auto;
        min-width: 18.2rem
    }
}

.column-02_separate-01,.column-02_separate-02 {
    max-width: 88rem;
    margin-right: auto;
    margin-left: auto;
    justify-content: center;
    gap: 3.2rem
}

.column-02_separate-01 .column-inner,.column-02_separate-02 .column-inner {
    width: 19.2rem
}

.column-02_separate-01 .column-inner:nth-of-type(2n),.column-02_separate-02 .column-inner:nth-of-type(2n) {
    width: calc(100% - 3.2rem - 19.2rem)
}

@media only screen and (max-width: 640px) {
    .column-02_separate-01 .column-inner:nth-of-type(2n),.column-02_separate-02 .column-inner:nth-of-type(2n) {
        width:100%
    }

    .column-02_separate-01 .column-inner:nth-of-type(2n) .title-03-03,.column-02_separate-02 .column-inner:nth-of-type(2n) .title-03-03 {
        text-align: center
    }
}

@media only screen and (max-width: 640px) {
    .column-02_separate-01 {
        gap:.8rem
    }

    .column-02_separate-01 .column-inner:has(img) {
        max-width: 10.6rem
    }
}

.column-02_separate-02 {
    border-top: 1px solid #bcbcbc;
    border-bottom: 1px solid #bcbcbc;
    padding-top: 3.2rem;
    padding-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .column-02_separate-02 {
        gap:1.6rem
    }
}

.column-02_separate-02+.column-02_separate-02 {
    border-top: none
}

@media only screen and (max-width: 640px) {
    .column-02_separate-02 .column-inner {
        width:100%
    }
}

.column-02_separate-02 .column-inner:nth-of-type(2n) {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.column-02_separate-02 .column-inner:nth-of-type(2n) p+.title-05-03,.column-02_separate-02 .column-inner:nth-of-type(2n) ul+.title-05-03 {
    margin-top: .8rem
}

.column-02_separate-03 {
    gap: 6.4rem
}

@media only screen and (max-width: 640px) {
    .column-02_separate-03 {
        flex-direction:column;
        gap: 3.2rem
    }
}

.column-02_separate-03 .column-inner {
    width: calc((100% - 9.6rem)/4 - 3.2rem)
}

@media only screen and (max-width: 640px) {
    .column-02_separate-03 .column-inner {
        width:100%
    }
}

.column-02_separate-03 .column-inner:nth-of-type(2n) {
    width: calc(100% - 6.4rem - ((100% - 9.6rem)/4 - 3.2rem))
}

@media only screen and (max-width: 640px) {
    .column-02_separate-03 .column-inner:nth-of-type(2n) {
        width:100%
    }
}

[class*=column-03_equality] {
    gap: 3.2rem
}

@media only screen and (max-width: 640px) {
    [class*=column-03_equality] {
        gap:1.6rem
    }
}

[class*=column-03_equality] .column-inner,[class*=column-03_equality]>li {
    width: calc((100% - 6.4rem)/3)
}

@media only screen and (max-width: 668px) {
    [class*=column-03_equality] .column-inner,[class*=column-03_equality]>li {
        width:calc((100% - 3.2rem)/2)
    }
}

@media only screen and (max-width: 640px) {
    [class*=column-03_equality] .column-inner,[class*=column-03_equality]>li {
        width:calc((100% - 1.6rem)/2)
    }
}

[class*=column-04_equality] {
    gap: 3.2rem
}

@media only screen and (max-width: 640px) {
    [class*=column-04_equality] {
        gap:1.6rem
    }
}

[class*=column-04_equality] .column-inner,[class*=column-04_equality]>li {
    width: calc((100% - 9.6rem)/4)
}

@media only screen and (max-width: 668px) {
    [class*=column-04_equality] .column-inner,[class*=column-04_equality]>li {
        width:calc((100% - 3.2rem)/2)
    }
}

@media only screen and (max-width: 640px) {
    [class*=column-04_equality] .column-inner,[class*=column-04_equality]>li {
        width:calc((100% - 1.6rem)/2)
    }
}

@media only screen and (max-width: 960px) {
    .column-04_equality-02 .column-inner,.column-04_equality-03 .column-inner {
        width:calc((100% - 3.2rem)/2)
    }
}

@media only screen and (max-width: 768px) {
    .column-04_equality-02 .column-inner,.column-04_equality-03 .column-inner {
        width:100%
    }
}

@media only screen and (max-width: 640px) {
    .column-04_equality-03 {
        gap:3.2rem
    }
}

[class*=column-06_equality] {
    gap: 3.2rem
}

@media only screen and (max-width: 640px) {
    [class*=column-06_equality] {
        row-gap:3,2rem;
        -moz-column-gap: 1.2rem;
        column-gap: 1.2rem
    }
}

[class*=column-06_equality] .column-inner {
    width: calc((100% - 16rem)/6)
}

@media only screen and (max-width: 960px) {
    [class*=column-06_equality] .column-inner {
        width:calc((100% - 6.4rem)/3)
    }
}

@media only screen and (max-width: 640px) {
    [class*=column-06_equality] .column-inner {
        width:calc((100% - 2.4rem)/3)
    }
}

@media only screen and (max-width: 640px) {
    .column-06_equality-02 {
        gap:1.6rem
    }
}

@media only screen and (max-width: 640px) {
    .column-06_equality-02 .column-inner {
        width:calc((100% - 1.6rem)/2)
    }
}

[class*=column-0].box_align-center-a .column-inner {
    display: flex;
    align-items: center
}

[class*=column-0].box_justify-center-a {
    justify-content: center
}

@media only screen and (min-width: 653px) {
    .column_row-reverse {
        flex-direction:row-reverse
    }
}

.box_main-visual-01 {
    max-width: 144rem;
    height: calc(100vh - 83px);
    margin-right: auto;
    margin-left: auto;
    padding-right: 3.2rem;
    padding-left: 6.4rem;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 3.2rem
}

@media only screen and (max-width: 1272px) {
    .box_main-visual-01 {
        padding-right:3.2rem;
        padding-left: 3.2rem
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 {
        height:auto;
        padding-right: 0;
        padding-bottom: 3.2rem;
        padding-left: 0;
        flex-direction: column
    }
}

.box_main-visual-01 .inner {
    width: 50%;
    max-width: 58.8rem;
    padding-right: 3.2rem;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    position: relative
}

@media only screen and (max-width: 1272px) {
    .box_main-visual-01 .inner {
        padding-right:0
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 .inner {
        width:100%;
        max-width: none;
        padding-right: 2.4rem;
        padding-left: 2.4rem;
        box-sizing: border-box;
        order: 1
    }

    .box_main-visual-01 .inner .link_button-wrapper {
        text-align: center
    }
}

.box_main-visual-01 .inner .box_align-inner {
    position: relative
}

.box_main-visual-01 .inner .box_align-inner:before {
    content: "";
    background-image: url("/cdn/shop/files/recruit-icon-symbol.svg");
    background-repeat: no-repeat;
    background-size: cover;
    width: 24rem;
    height: 20.6rem;
    position: absolute;
    top: -5.6rem;
    left: 10.4rem;
    z-index: -1
}

@media only screen and (max-width: 1168px) {
    .box_main-visual-01 .inner .box_align-inner:before {
        left:3.2rem
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 .inner .box_align-inner:before {
        width:17.6rem;
        height: 15.1rem;
        position: absolute;
        top: -3.2rem;
        left: 8.8rem
    }
}

@media only screen and (max-width: 1168px) {
    .box_main-visual-01 .inner .title-01 br {
        display:none
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 .inner .title-01 br {
        display:inline
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 .splide1 {
        order:2
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-01 .splide2 {
        order:0
    }
}

.box_main-visual-02 img {
    width: 100%;
    height: auto
}

.box_main-visual-03 {
    margin-top: 1.6rem
}

@media only screen and (max-width: 880px) {
    .box_main-visual-03 p {
        margin-right:-3.2rem;
        margin-left: -3.2rem
    }
}

@media only screen and (max-width: 640px) {
    .box_main-visual-03 p {
        margin-right:-2.4rem;
        margin-left: -2.4rem
    }
}

.box_text p:not(:last-child),.box_text ul:not(:last-child) {
    margin-bottom: 8px
}

.box_two-image {
    width: 100%
}

.box_two-image p:first-child {
    text-align: right
}

.box_two-image p:last-child {
    margin-top: -8.14%
}

.box_two-image img {
    width: 72.79%
}

@media only screen and (max-width: 640px) {
    .box_two-image img {
        width:82.26%
    }
}

[class*=box_flow] {
    display: flex;
    flex-direction: column;
    gap: 3.2rem
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] {
        flex-direction:row;
        gap: 1.6rem
    }
}

[class*=box_flow] ul {
    list-style: none;
    display: flex
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] ul {
        flex-direction:column
    }
}

[class*=box_flow] ul li {
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    box-sizing: border-box
}

[class*=box_flow] .flow {
    gap: 3.2rem
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .flow {
        width:calc(100% - 4.8rem)
    }
}

[class*=box_flow] .flow li {
    text-align: center;
    background-color: #efefef;
    min-height: 14.4rem;
    padding: .4rem;
    justify-content: center;
    position: relative
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .flow li {
        min-height:6.4rem
    }
}

[class*=box_flow] .flow li:before,[class*=box_flow] .flow li:after {
    content: "";
    width: 2.4rem;
    height: 100%;
    position: absolute;
    top: 0
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .flow li:before,[class*=box_flow] .flow li:after {
        width:100%;
        height: 2.4rem;
        left: 0
    }
}

[class*=box_flow] .flow li:before {
    left: -2.4rem;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,240v-120L0,240h207.8ZM0,0l207.8,120V0H0Z" fill="%23EFEFEF"/></svg>');
    background-repeat: no-repeat;
    background-size: 100% 100%
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .flow li:before {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M0,240h103.9L0,0v240ZM207.8,0l-103.9,240h103.9V0Z" fill="%23EFEFEF"/></svg>');
        top: -2.4rem;
        left: 0
    }
}

[class*=box_flow] .flow li:after {
    right: -2.4rem;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,120L0,240V0l207.8,120Z" fill="%23EFEFEF"/></svg>');
    background-repeat: no-repeat;
    background-size: 100% 100%
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .flow li:after {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M103.9,240L0,0h207.8l-103.9,240Z" fill="%23EFEFEF"/></svg>');
        top: auto;
        right: auto;
        bottom: -2.4rem
    }
}

[class*=box_flow] .flow li:first-child:before {
    display: none
}

[class*=box_flow] .flow li:last-child:after {
    display: none
}

[class*=box_flow] .domain li {
    min-height: 3.2rem;
    justify-content: flex-start
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .domain li {
        justify-content:center;
        position: relative
    }
}

[class*=box_flow] .domain li span {
    color: #fff;
    display: flex;
    align-items: center;
    width: 100%;
    padding: .4rem 3.2rem
}

@media only screen and (max-width: 767px) {
    [class*=box_flow] .domain li span {
        padding-right:1.6rem;
        padding-left: 1.6rem;
        transform: rotate(90deg);
        position: absolute
    }
}

[class*=box_flow] .domain li.frontend span {
    background-color: #373737
}

[class*=box_flow] .domain li.backend span {
    background-color: #595959
}

.box_flow-01 .flow li {
    width: calc((100% - 16rem)/6);
    flex-direction: column;
    gap: .8rem
}

@media only screen and (max-width: 767px) {
    .box_flow-01 .flow li {
        width:100%;
        flex-direction: row-reverse;
        justify-content: flex-end
    }

    .box_flow-01 .flow li .text {
        width: calc(100% - 5.6rem);
        padding-right: 6.4rem
    }

    .box_flow-01 .flow li .image {
        width: 5.6rem
    }
}

.box_flow-01 .domain li.frontend {
    width: calc((100% - 16rem)/6*2.5 + 6.4rem)
}

@media only screen and (max-width: 767px) {
    .box_flow-01 .domain li.frontend {
        width:3.2rem;
        height: 22.4rem
    }

    .box_flow-01 .domain li.frontend span {
        width: 22.4rem
    }
}

.box_flow-01 .domain li.backend {
    width: calc((100% - 16rem)/6*3.5 + 9.6rem)
}

@media only screen and (max-width: 767px) {
    .box_flow-01 .domain li.backend {
        width:3.2rem;
        height: 32rem
    }

    .box_flow-01 .domain li.backend span {
        width: 32rem
    }
}

.box_flow-02 .flow li {
    background-color: #fff;
    width: calc((100% - 22.4rem)/8)
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .flow li {
        width:100%
    }
}

.box_flow-02 .flow li:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,240v-120L0,240h207.8ZM0,0l207.8,120V0H0Z" fill="%23FFFFFF"/></svg>')
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .flow li:before {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M0,240h103.9L0,0v240ZM207.8,0l-103.9,240h103.9V0Z" fill="%23FFFFFF"/></svg>')
    }
}

.box_flow-02 .flow li:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,120L0,240V0l207.8,120Z" fill="%23FFFFFF"/></svg>')
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .flow li:after {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M103.9,240L0,0h207.8l-103.9,240Z" fill="%23FFFFFF"/></svg>')
    }
}

.box_flow-02 .flow li.mark {
    background-color: #83d1c9
}

.box_flow-02 .flow li.mark:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,240v-120L0,240h207.8ZM0,0l207.8,120V0H0Z" fill="%2383D1C9"/></svg>')
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .flow li.mark:before {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M0,240h103.9L0,0v240ZM207.8,0l-103.9,240h103.9V0Z" fill="%2383D1C9"/></svg>')
    }
}

.box_flow-02 .flow li.mark:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M207.8,120L0,240V0l207.8,120Z" fill="%2383D1C9"/></svg>')
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .flow li.mark:after {
        background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 207.8 240"><path d="M103.9,240L0,0h207.8l-103.9,240Z" fill="%2383D1C9"/></svg>')
    }
}

.box_flow-02 .domain li.frontend {
    width: calc((100% - 22.4rem)/8*4.5 + 12.8rem)
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .domain li.frontend {
        width:3.2rem;
        height: 41.6rem
    }

    .box_flow-02 .domain li.frontend span {
        width: 41.6rem
    }
}

.box_flow-02 .domain li.backend {
    width: calc((100% - 22.4rem)/8*3.5 + 9.6rem)
}

@media only screen and (max-width: 767px) {
    .box_flow-02 .domain li.backend {
        width:3.2rem;
        height: 32rem
    }

    .box_flow-02 .domain li.backend span {
        width: 32rem
    }
}

.box_job .title-03 {
    background-color: #efefef;
    padding: 1.6rem 3.2rem;
    display: flex;
    justify-content: center;
    align-items: center
}

.box_job-type {
    background-color: #fff;
    border: 1px solid #bcbcbc;
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow: hidden
}

.box_job-type .title-05,.box_job-type .detail {
    padding: 1.6rem 3.2rem;
    display: flex
}

.box_job-type .title-05 {
    min-height: 8rem;
    justify-content: center;
    align-items: center;
    box-sizing: border-box
}

.box_job-type .detail {
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between
}

.box_job-type .detail ul {
    font-weight: bold;
    display: flex;
    flex-direction: column;
    gap: .8rem
}

.box_mission {
    width: 100%;
    display: flex;
    justify-content: center;
    position: relative
}

.box_mission .image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.box_mission .image svg {
    width: 100%;
    height: 100%
}

.box_culture {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.6rem
}

@media only screen and (max-width: 640px) {
    .box_culture {
        gap:.8rem
    }
}

.box_business {
    max-width: 83.2rem;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 4.8rem
}

@media only screen and (max-width: 640px) {
    .box_business {
        flex-direction:column
    }
}

.box_business .inner {
    border-radius: .8rem;
    width: calc((100% - 9.6rem)/2);
    padding: 3.2rem 4rem;
    box-sizing: border-box;
    position: relative
}

@media only screen and (max-width: 767px) {
    .box_business .inner {
        width:100%;
        padding-right: 2.4rem;
        padding-left: 2.4rem
    }
}

.box_business .inner:after {
    content: "";
    background-repeat: no-repeat;
    background-size: cover;
    width: 12.8rem;
    height: 3rem;
    position: absolute;
    top: 50%;
    z-index: 1
}

@media only screen and (max-width: 640px) {
    .box_business .inner:after {
        width:3rem;
        height: 12.8rem
    }
}

.box_business .inner:first-child {
    background-color: #c6e5e2
}

.box_business .inner:first-child:after {
    background-image: url("/cdn/shop/files/recruit_business_arrow-pc-01.png");
    right: -11.2rem;
    z-index: 1;
    transform: translateY(calc(-50% - 96px))
}

@media only screen and (max-width: 640px) {
    .box_business .inner:first-child:after {
        background-image:url("/cdn/shop/files/recruit_business_arrow-sp-01.png");
        top: auto;
        right: auto;
        bottom: -11.2rem;
        left: 50%;
        transform: translateX(calc(-50% - 96px))
    }
}

.box_business .inner:last-child {
    background-color: #83d1c9
}

.box_business .inner:last-child:after {
    background-image: url("/cdn/shop/files/recruit_business_arrow-pc-02.png");
    left: -11.2rem;
    z-index: 1;
    transform: translateY(calc(-50% + 96px))
}

@media only screen and (max-width: 640px) {
    .box_business .inner:last-child:after {
        background-image:url("/cdn/shop/files/recruit_business_arrow-sp-02.png");
        top: -11.2rem;
        left: 50%;
        transform: translateX(calc(-50% + 96px))
    }
}

.box_business .inner .heading {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 1.6rem
}

.box_business .inner .list-wrapper {
    background-color: #fff;
    border-radius: .8rem;
    padding: 1.6rem;
    display: flex;
    justify-content: center
}

.box_business .inner dl {
    font-size: 1.6rem;
    font-weight: bold;
    display: inline-flex;
    flex-direction: column
}

.box_business .inner dl dt {
    text-align: center;
    margin-bottom: .8rem
}

.box_business .inner dl dd {
    list-style-type: disc;
    margin-left: 1.6rem;
    display: list-item
}

.box_business .note {
    position: relative;
    z-index: 1
}

.box_business .note span {
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    background-color: #373737;
    border-radius: 50%;
    width: 12.8rem;
    height: 12.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.box_service-type {
    background-color: #efefef;
    border-radius: 8px;
    padding: 3.2rem 1.6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .8rem;
    overflow: hidden
}

@media only screen and (max-width: 640px) {
    .box_service-type {
        padding-top:1.6rem;
        padding-bottom: 1.6rem
    }
}

.box_service-type .title-05 {
    text-align: center;
    display: flex;
    flex-grow: 1;
    align-items: center
}

.box_service-type .link_button-wrapper:has(.link_button-01) {
    margin-top: .8rem
}

.box_service-type a.link_button-01 {
    word-break: keep-all
}

.box_service-type a.link_button-01 span {
    min-width: auto
}

.box_team {
    width: 100%;
    aspect-ratio: 1/1;
    position: relative
}

.box_team .inner {
    border-radius: 100%;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .8rem;
    position: relative
}

@media only screen and (max-width: 640px) {
    .box_team .inner {
        gap:.4rem
    }
}

.box_team .inner:before,.box_team .inner:after {
    border-radius: 100%;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.box_team .inner:before {
    background: linear-gradient(to bottom, #7ED7D1, #85ABE8);
    width: calc(100% - 6.4rem);
    height: calc(100% - 6.4rem)
}

.box_team .inner:after {
    background: #fff;
    width: calc(100% - 12.8rem);
    height: calc(100% - 12.8rem)
}

.box_team .inner p {
    position: relative;
    z-index: 1
}

.box_team .inner .heading {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.25;
    background: #7ed7d1;
    border: #fff .2rem solid;
    border-radius: 2.4rem;
    box-sizing: border-box;
    min-height: 4.8rem;
    padding: .2rem 1.6rem;
    display: flex;
    align-items: center
}

@media only screen and (max-width: 1272px) {
    .box_team .inner .heading {
        min-height:3.2rem
    }
}

.box_team .inner .text {
    text-align: center
}

.box_team ul li {
    list-style: none;
    border: #7ed7d1 1px solid;
    border-radius: 100%;
    box-sizing: border-box;
    width: 36%;
    height: 36%;
    padding: 1.3%;
    position: absolute
}

.box_team ul li:nth-child(1) {
    top: 0;
    left: 0
}

.box_team ul li:nth-child(2) {
    top: 0;
    right: 0
}

.box_team ul li:nth-child(3) {
    bottom: 0;
    left: 0
}

.box_team ul li:nth-child(4) {
    bottom: 0;
    right: 0
}

.box_team ul li span {
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    -webkit-text-stroke: 3px #373737;
    text-stroke: 3px #373737;
    paint-order: stroke;
    line-height: 1.25;
    background: #373737;
    border: #fff .2rem solid;
    border-radius: 100%;
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.16));
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.box_team ul li span br {
    display: none
}

@media only screen and (max-width: 1272px) {
    .box_team ul li span br {
        display:inline
    }
}

.box_sales {
    min-height: 10.6rem;
    margin-top: 3.2rem;
    display: flex;
    justify-content: center;
    align-items: center
}

.box_sales p {
    padding-left: 4rem;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .4rem;
    position: relative
}

@media only screen and (max-width: 640px) {
    .box_sales p {
        gap:.4rem
    }
}

.box_sales p:before {
    content: "";
    background-color: #7ed7d1;
    border-radius: 50%;
    width: 10.6rem;
    height: 10.6rem;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.box_sales p span {
    font-weight: bold;
    position: relative
}

.box_work-style .image {
    border-radius: 50%
}

.box_work-style:nth-of-type(odd) .image {
    background-color: #83d1c9
}

.box_work-style:nth-of-type(even) .image {
    background-color: #c6e5e2
}

.box_lead {
    margin-bottom: 6.4rem
}

@media only screen and (max-width: 640px) {
    .box_lead {
        margin-bottom:3.2rem
    }
}

.decoration_border-01 {
    border: 1px solid #bcbcbc;
    box-sizing: border-box
}

.decoration_bg-color-01 {
    background-color: #e4e4e4
}

.decoration_bg-color-02 {
    background-color: #efefef
}

.decoration_bg-color-03 {
    background-color: #fff
}

.decoration_bg-color-brand {
    background-color: #d5e1f5 !important
}

.decoration_bg-color-production {
    background-color: #d7eff0 !important
}

.decoration_bg-color-marketing {
    background-color: #f4d9d9 !important
}

.decoration_bg-color-operation {
    background-color: #efe1ef !important
}

.decoration_bg-color-management {
    background-color: #f3f194 !important
}

.decoration_bg-color-transparent {
    background-color: rgba(0,0,0,0) !important
}

.decoration_bg-color-01.multiply {
    background-color: rgba(0,0,0,0) !important;
    position: relative
}

.decoration_bg-color-01.multiply:before {
    width: 100%;
    height: 100%;
    background-color: #e4e4e4;
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: multiply;
    transform: translate3d(0, 0, 0)
}

.decoration_bg-color-01.multiply>* {
    position: relative
}

.decoration_padding-01 {
    padding: 3.2rem
}

@media only screen and (max-width: 640px) {
    .decoration_padding-01 {
        padding-right:1.6rem;
        padding-left: 1.6rem
    }
}

[class*=decoration_text] {
    position: relative
}

[class*=decoration_text]:after {
    font-size: 16rem;
    font-weight: bold;
    white-space: nowrap;
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    mix-blend-mode: multiply
}

@media only screen and (max-width: 640px) {
    [class*=decoration_text]:after {
        font-size:8rem
    }
}

.decoration_text-01:after,.decoration_text-03:after,.decoration_text-04:after {
    color: #d7eff0;
    text-align: left
}

.decoration_text-02:after,.decoration_text-05:after {
    color: #d5e1f5;
    text-align: right
}

.decoration_text-01:after {
    content: "MVVC"
}

.decoration_text-02:after {
    content: "Services"
}

.decoration_text-03:after {
    content: "Work Style"
}

.decoration_text-04:after {
    content: "Topics"
}

.decoration_text-05:after {
    content: "Media"
}

[class*=title-] {
    font-weight: bold;
    line-height: 1.5;
    margin-top: 0;
    margin-bottom: 0
}

.title-01 {
    font-size: 4rem;
    margin-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .title-01 {
        font-size:3.2rem;
        margin-bottom: 1.6rem
    }
}

[class*=title-02] {
    font-size: 3.2rem
}

@media only screen and (max-width: 640px) {
    [class*=title-02] {
        font-size:2.4rem
    }
}

.title-02-01,.title-02-03 {
    margin-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .title-02-01,.title-02-03 {
        margin-bottom:1.6rem
    }
}

.title-02-02 {
    margin-bottom: 6.4rem
}

@media only screen and (max-width: 640px) {
    .title-02-02 {
        margin-bottom:3.2rem
    }
}

[class*=title-03] {
    font-size: 2.4rem
}

@media only screen and (max-width: 640px) {
    [class*=title-03] {
        font-size:2rem
    }
}

.title-03-01 {
    margin-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .title-03-01 {
        margin-bottom:1.6rem
    }
}

.title-03-02 {
    margin-bottom: 1.6rem
}

@media only screen and (max-width: 640px) {
    .title-03-02 {
        margin-bottom:.8rem
    }
}

p+.title-03-02 {
    margin-top: 3.2rem
}

@media only screen and (max-width: 640px) {
    p+.title-03-02 {
        margin-top:1.6rem
    }
}

.title-03-03,.title-03-04 {
    margin-bottom: .8rem
}

.title-03-04 {
    border-bottom: 1px solid #e4e4e4;
    padding-bottom: .8rem
}

[class*=title-04] {
    font-size: 2rem
}

@media only screen and (max-width: 640px) {
    [class*=title-04] {
        font-size:1.8rem
    }
}

.title-04-01 {
    margin-bottom: 1.6rem
}

@media only screen and (max-width: 640px) {
    .title-04-01 {
        margin-bottom:.8rem
    }
}

[class*=title-05] {
    font-size: 1.6rem
}

.title-05-01 {
    margin-bottom: 3.2rem
}

@media only screen and (max-width: 640px) {
    .title-05-01 {
        margin-bottom:1.6rem
    }
}

.title-05-02 {
    margin-bottom: 1.6rem
}

@media only screen and (max-width: 640px) {
    .title-05-02 {
        margin-bottom:.8rem
    }
}

.title-05-03 {
    margin-bottom: .4rem
}

[class*=title_wrapper-0] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.title_wrapper-01 {
    min-height: 8rem;
    gap: .8rem;
    box-sizing: border-box
}

@media only screen and (max-width: 640px) {
    .title_wrapper-01 {
        min-height:auto;
        gap: .4rem
    }
}

.title_wrapper-02 {
    margin-bottom: 3.2rem;
    gap: .8rem
}

.title-en-ja {
    letter-spacing: .03em;
    width: 100%;
    margin-bottom: 3.2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .8rem
}

@media only screen and (max-width: 640px) {
    .title-en-ja {
        margin-bottom:1.6rem
    }
}

.title-en-ja span {
    text-align: center;
    min-width: 18.2rem
}

@media only screen and (max-width: 640px) {
    .title-en-ja span {
        min-width:15.8rem
    }
}

.title-en-ja .font_en {
    font-size: 4rem;
    border-bottom: 1px solid #bcbcbc
}

@media only screen and (max-width: 640px) {
    .title-en-ja .font_en {
        font-size:3.2rem
    }
}

.title-en-ja .ja {
    font-size: 1.6rem
}

@media only screen and (max-width: 640px) {
    .title-en-ja .ja {
        font-size:1.4rem
    }
}

.notes {
    font-size: 1.2rem
}

.list_circle {
    padding-left: 1.4rem
}

.list_style-none {
    list-style: none
}

.list_job {
    list-style: none;
    padding: 3.2rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem
}

@media only screen and (max-width: 640px) {
    .list_job {
        flex-direction:column;
        gap: .8rem
    }

    .list_job .link_button-02 {
        width: 100%
    }
}

.list_job+.link_button-wrapper:has(.link_button-large-02) {
    text-align: center;
    margin: 0 3.2rem 3.2rem 3.2rem
}

@media only screen and (max-width: 640px) {
    .list_job+.link_button-wrapper:has(.link_button-large-02) a.link_button-large-02 {
        width:100%
    }

    .list_job+.link_button-wrapper:has(.link_button-large-02) a.link_button-large-02 span {
        min-width: 100%
    }
}

.list_mission {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 3.2rem;
    position: relative
}

@media only screen and (max-width: 640px) {
    .list_mission {
        gap:1.6rem
    }
}

.list_mission li:nth-of-type(odd) .ja {
    background-color: #85abe8
}

.list_mission li:nth-of-type(even) .ja {
    background-color: #83d1c9
}

.list_mission .font_en {
    font-size: 4.8rem;
    font-weight: bold;
    display: flex;
    justify-content: center
}

@media only screen and (max-width: 640px) {
    .list_mission .font_en {
        font-size:3.2rem
    }
}

.list_mission .detail-wrap {
    display: flex;
    align-items: center;
    gap: .8rem
}

.list_mission .ja {
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: .1em;
    min-width: 8.8rem;
    padding: .2rem .8rem;
    box-sizing: border-box;
    display: flex;
    justify-content: center
}

html.en .list_mission .detail-wrap {
    justify-content: center
}

.list_blog-tag {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: .8rem
}

@media only screen and (max-width: 640px) {
    .list_blog-tag {
        flex-direction:row;
        flex-wrap: wrap
    }
}

.list_article-tag {
    list-style: none;
    display: flex;
    gap: .4rem
}

@media only screen and (max-width: 640px) {
    .list_article-tag {
        flex-direction:row;
        flex-wrap: wrap
    }
}

.list_article-tag li {
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem
}

.list_article-tag li a {
    color: #000
}

.list_article-tag li a span {
    line-height: 1.25;
    border: 1px solid #1f1f1f;
    border-radius: 1.6rem;
    box-sizing: border-box;
    min-height: 1.8rem;
    padding: .1rem .8rem;
    display: inline-flex;
    transition: background-color .25s ease
}

.list_article-tag li a:hover span,.list_article-tag li a:focus-visible span {
    background-color: #e4e4e4
}

a[class*=link_button-0],span[class*=link_button-0],button[class*=link_button-0] {
    color: #1f1f1f;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    line-height: 1.5;
    margin-right: auto;
    margin-left: auto;
    display: inline-block
}

a[class*=link_button-0] span,span[class*=link_button-0] span,button[class*=link_button-0] span {
    min-height: 4.8rem;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border: 1px solid #bcbcbc;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: .4rem;
    box-sizing: border-box
}

a[class*=link_button-0] span,button[class*=link_button-0] span {
    min-height: 4.8rem;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border: 1px solid #bcbcbc;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: .4rem;
    box-sizing: border-box;
    transition: background-color .25s ease
}

a[class*=link_button-0]:hover span,a[class*=link_button-0]:focus-visible span,button[class*=link_button-0]:hover span,button[class*=link_button-0]:focus-visible span {
    background-color: #e4e4e4
}

button[class*=link_button-0] {
    background-color: rgba(0,0,0,0);
    border: none;
    cursor: pointer
}

.link_button-wrapper:has(.link_button-01) {
    margin-top: 1.6rem
}

a.link_button-01 span,span.link_button-01 span {
    min-width: 13.6rem;
    padding-right: 1.6rem;
    padding-left: 1.6rem;
    border-radius: 4.8rem;
    background-color: #fff
}

a.link_button-01 span:after,span.link_button-01 span:after {
    background-image: url("/cdn/shop/files/icon-recruit-arrow.svg");
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    content: ""
}

a.link_button-01[target=_blank] span:after,span.link_button-01[target=_blank] span:after {
    background-image: url("/cdn/shop/files/icon-recruit-blank.svg")
}

a.link_button-01:not([class*=link_button-large]),span.link_button-01:not([class*=link_button-large]) {
    font-size: 1.2rem
}

a.link_button-01:not([class*=link_button-large]) span:after,span.link_button-01:not([class*=link_button-large]) span:after {
    width: .8rem;
    height: .8rem
}

a.link_button-02 span,span.link_button-02 span,button.link_button-02 span {
    min-width: 16rem;
    padding-right: 1.2rem;
    padding-left: 1.2rem;
    border-radius: .8rem;
    background-color: #efefef;
    transition: border .25s ease
}

a.link_button-02:hover span,a.link_button-02:focus-visible span,span.link_button-02:hover span,span.link_button-02:focus-visible span,button.link_button-02:hover span,button.link_button-02:focus-visible span {
    border: 1px solid #181818
}

a.link_button-03,span.link_button-03 {
    font-weight: normal
}

a.link_button-03 span,span.link_button-03 span {
    text-align: left;
    min-height: 3.2rem;
    padding: .2rem 1.6rem;
    border-radius: .8rem
}

a.link_button-04,span.link_button-04,button.link_button-04 {
    font-size: 1.2rem;
    font-weight: normal
}

a.link_button-04 span,span.link_button-04 span,button.link_button-04 span {
    min-width: 14.4rem;
    min-height: 3.2rem;
    padding: .2rem 3.2rem;
    background-color: #efefef;
    border-radius: 1.6rem
}

a[class*=link_button-large],span[class*=link_button-large] {
    position: relative
}

a[class*=link_button-large] span,span[class*=link_button-large] span {
    min-width: 28rem;
    padding-right: 3.6rem;
    padding-left: 3.6rem
}

@media only screen and (max-width: 374px) {
    a[class*=link_button-large] span,span[class*=link_button-large] span {
        min-width:auto
    }
}

a[class*=link_button-large] span:after,span[class*=link_button-large] span:after {
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1.3rem
}

.link_button-wrapper:has(.link_button-large-01) {
    margin-top: 6.4rem
}

@media only screen and (max-width: 640px) {
    .link_button-wrapper:has(.link_button-large-01) {
        margin-top:3.2rem
    }
}

.link_button-wrapper:has(.link_button-large-02) {
    margin-top: 3.2rem
}

@media only screen and (max-width: 640px) {
    .link_button-wrapper:has(.link_button-large-02) {
        margin-top:1.6rem
    }
}

.link_card-01 {
    color: #1f1f1f;
    text-decoration: none;
    border: 1px solid #bcbcbc;
    border-radius: 8px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: background-color .25s ease
}

.link_card-01>span {
    display: flex
}

.link_card-01:hover,.link_card-01:focus-visible {
    background-color: #e4e4e4
}

.link_card-01 .image {
    max-height: 30.6rem;
    align-items: center;
    overflow: hidden
}

.link_card-01 .image img {
    height: auto;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.link_card-01 .text {
    padding: 1.6rem .8rem;
    flex-direction: column;
    flex-grow: 1;
    justify-content: center;
    box-sizing: border-box
}

@media only screen and (min-width: 653px) {
    .link_card-01 .text {
        padding:3.2rem
    }
}

@media only screen and (min-width: 901px) {
    .link_card-01 {
        flex-direction:row-reverse
    }

    .link_card-01>span {
        width: 50%
    }

    .link_card-01 .image {
        max-height: none
    }

    .link_card-01 .image img {
        height: 100%;
        width: auto
    }
}

@media only screen and (max-width: 900px) {
    .link_card-01 .text {
        justify-content:flex-start
    }

    .link_card-01 .text .link_button-wrapper {
        text-align: center
    }
}

@media only screen and (max-width: 640px) {
    .link_card-01 .text a[class*=link_button-0] span,.link_card-01 .text span[class*=link_button-0] span {
        min-height:3.2rem
    }
}

.link_card-02 {
    color: #1f1f1f;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    gap: .4rem
}

.link_card-02 .image img {
    border-radius: .8rem
}

.link_card-02 .label {
    font-size: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem
}

.link_card-02 .label span {
    line-height: 1.25;
    border: 1px solid #1f1f1f;
    border-radius: 1.6rem;
    box-sizing: border-box;
    min-height: 1.8rem;
    padding: .1rem .8rem;
    display: inline-flex
}

a.link_card-02 .image img {
    opacity: 1;
    transition: opacity .25s ease
}

a.link_card-02 .label span {
    transition: background-color .25s ease
}

a.link_card-02:hover .image img,a.link_card-02:focus-visible .image img {
    opacity: .5
}

a.link_card-02:hover .label span,a.link_card-02:focus-visible .label span {
    background-color: #e4e4e4
}

.ta-c {
    text-align: center
}

.jc-c {
    justify-content: center
}

@media only screen and (max-width: 1279px) {
    .sample_load {
        color:#1f1f1f
    }
}

.js .splide .splide__slide img {
    display: none
}

.js .splide.is-active .splide__slide img {
    display: block
}

.splide__slide img {
    width: 100%;
    height: auto
}

@media only screen and (max-width: 640px) {
    .splide__slide img {
        width:auto;
        height: 100%
    }
}

.splide__toggle {
    text-indent: -9999px;
    background-color: #fff;
    border: 1px solid #bcbcbc;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    position: absolute;
    right: -24px;
    bottom: 6px;
    z-index: 1
}

@media only screen and (max-width: 640px) {
    .splide__toggle {
        right:6px;
        bottom: -24px
    }
}

.splide__toggle.is-active .splide__toggle__pause {
    display: block
}

.splide__toggle__play,.splide__toggle__pause {
    width: 48px;
    height: 48px
}

.splide__toggle__play {
    background-image: url("/cdn/shop/files/icon-recruit-arrow.svg");
    background-repeat: no-repeat;
    background-position: center;
    display: block
}

.splide__toggle__pause {
    background-image: url("/cdn/shop/files/icon-recruit-pause.svg");
    background-repeat: no-repeat;
    background-position: center
}

#cm_adjust .splide__toggle {
    background-color: rgba(0,0,0,.75);
    transition: .25s ease background-color
}

#cm_adjust .splide__toggle:hover,#cm_adjust .splide__toggle:focus-visible {
    background-color: #000
}

.open-button,.close-button {
    margin-top: 1.6rem;
    position: relative
}

.open-button:after,.close-button:after {
    width: 1rem;
    height: 1rem;
    display: block;
    box-sizing: border-box;
    display: block;
    content: "";
    z-index: 0;
    position: absolute;
    top: 50%;
    right: 11px;
    transform: translateY(-50%)
}

.open-button:after {
    background-image: url("/cdn/shop/files/icon-recruit-open.svg");
    background-repeat: no-repeat;
    background-size: cover
}

.close-button:after {
    background-image: url("/cdn/shop/files/icon-recruit-close.svg");
    background-repeat: no-repeat;
    background-size: cover
}

@media only screen and (max-width: 640px) {
    .js .list_circle {
        display:none
    }

    .js .list_circle.open {
        display: block
    }
}

.js .open-button,.js .close-button {
    display: none
}

@media only screen and (max-width: 640px) {
    .js .open-button.active,.js .close-button.active {
        display:block
    }
}

.box_job-narrow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3.2rem
}

@media only screen and (max-width: 768px) {
    .box_job-narrow {
        max-width:27.2rem;
        margin-right: auto;
        margin-left: auto;
        flex-direction: column;
        align-items: flex-start;
        gap: 1.6rem
    }
}

.box_job-narrow .inner {
    display: flex;
    gap: 1.6rem
}

@media only screen and (max-width: 768px) {
    .box_job-narrow .inner {
        flex-direction:column;
        gap: .8rem
    }
}

.box_job-narrow .select-wrapper {
    display: flex;
    align-items: center;
    gap: .8rem
}

.box_job-narrow .select-wrapper p {
    font-size: 1.6rem
}

@media only screen and (max-width: 768px) {
    .box_job-narrow .select-wrapper p {
        width:9.6rem
    }
}

.box_job-narrow .select-wrapper .box_select {
    border-radius: 2.4rem;
    display: inline-block;
    position: relative
}

.box_job-narrow .select-wrapper .box_select:after {
    width: 1rem;
    height: 1rem;
    background-image: url("/cdn/shop/files/icon-recruit-arrow2.svg");
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    box-sizing: border-box;
    display: block;
    content: "";
    z-index: 0;
    position: absolute;
    top: 50%;
    right: 11px;
    transform: translateY(-50%)
}

.box_job-narrow .select-wrapper .box_select select {
    color: #181818;
    font-size: 1.6rem;
    font-weight: bold;
    width: 16.8rem;
    min-height: 4.8rem;
    padding: 1.2rem 3.2rem 1.2rem 1.6rem;
    border: 1px solid #bcbcbc;
    border-radius: .8rem;
    background-color: rgba(0,0,0,0);
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: border .25s ease
}

.box_job-narrow .select-wrapper .box_select select:hover,.box_job-narrow .select-wrapper .box_select select:focus-visible {
    border: 1px solid #181818
}

@media only screen and (max-width: 768px) {
    .box_job-narrow .button-wrapper {
        width:100%;
        display: flex
    }
}

.box_job-narrow .button-wrapper .link_button-02 span {
    min-width: 11.2rem
}

#job-list.brand .box_job {
    display: none
}

#job-list.brand .box_job#anchor_brand {
    display: block
}

#job-list.production .box_job {
    display: none
}

#job-list.production .box_job#anchor_production {
    display: block
}

#job-list.marketing .box_job {
    display: none
}

#job-list.marketing .box_job#anchor_marketing {
    display: block
}

#job-list.operation .box_job {
    display: none
}

#job-list.operation .box_job#anchor_operation {
    display: block
}

#job-list.management .box_job {
    display: none
}

#job-list.management .box_job#anchor_management {
    display: block
}

#job-list.tokyo .list_job li {
    display: none
}

#job-list.tokyo .list_job li.tokyo {
    display: block
}

#job-list.fukuoka .list_job li {
    display: none
}

#job-list.fukuoka .list_job li.fukuoka {
    display: block
}

#job-list.sapporo .list_job li {
    display: none
}

#job-list.sapporo .list_job li.sapporo {
    display: block
}

.recruit-blog-detail {
    margin-top: 6.4rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail {
        margin-top:3.2rem
    }
}

.recruit-blog-detail h2,.recruit-blog-detail h3,.recruit-blog-detail h4,.recruit-blog-detail h5,.recruit-blog-detail h6 {
    font-weight: bold
}

.recruit-blog-detail h2,.recruit-blog-detail h3 {
    position: relative
}

.recruit-blog-detail h2:before,.recruit-blog-detail h3:before {
    content: "";
    border-radius: .6rem;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.recruit-blog-detail h2 {
    font-size: 3.2rem;
    margin-top: 6.4rem;
    margin-bottom: 3.2rem;
    padding-left: 2rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h2 {
        font-size:2.4rem;
        margin-top: 3.2rem;
        margin-bottom: 1.6rem
    }
}

.recruit-blog-detail h2:before {
    background-color: #83d1c9;
    width: 1.2rem
}

.recruit-blog-detail h3 {
    font-size: 2.4rem;
    margin-top: 6.4rem;
    margin-bottom: 3.2rem;
    padding-left: 1.6rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h3 {
        font-size:2rem;
        margin-top: 3.2rem;
        margin-bottom: 1.6rem
    }
}

.recruit-blog-detail h3:before {
    background-color: #85abe8;
    width: .8rem
}

.recruit-blog-detail h4,.recruit-blog-detail h5,.recruit-blog-detail h6 {
    margin-top: 3.2rem;
    margin-bottom: 1.6rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h4,.recruit-blog-detail h5,.recruit-blog-detail h6 {
        margin-top:1.6rem;
        margin-bottom: .8rem
    }
}

.recruit-blog-detail h4 {
    font-size: 2rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h4 {
        font-size:1.8rem
    }
}

.recruit-blog-detail h5 {
    font-size: 1.8rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h5 {
        font-size:1.7rem
    }
}

.recruit-blog-detail h6 {
    font-size: 1.7rem
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail h6 {
        font-size:1.6rem
    }
}

.recruit-blog-detail p:not(:last-child),.recruit-blog-detail ul:not(:last-child) {
    margin-bottom: 8px
}

.recruit-blog-detail p:has(img),.recruit-blog-detail ul:has(img) {
    margin-top: 6.4rem;
    margin-bottom: 6.4rem !important
}

@media only screen and (max-width: 640px) {
    .recruit-blog-detail p:has(img),.recruit-blog-detail ul:has(img) {
        margin-top:3.2rem;
        margin-bottom: 3.2rem !important
    }
}

.recruit-blog-detail ul {
    padding-left: 1.4rem
}

.recruit-blog-detail ol {
    padding-left: 1.8rem
}

.recruit-job-detail ul {
    padding-left: 1.4rem
}

.recruit-job-detail ol {
    padding-left: 1.8rem
}

.column-0-media {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: 3.2rem;
    column-gap: 3.2rem;
    row-gap: 6.4rem
}

.column-0-media .column-inner {
    width: calc((100% - 3.2rem)/2)
}

@media only screen and (max-width: 668px) {
    .column-0-media .column-inner {
        width:100%
    }
}

.column-0-media ul {
    list-style: none;
    display: flex;
    gap: 3.2rem
}

@media only screen and (max-width: 640px) {
    .column-0-media ul {
        gap:1.6rem
    }
}

.column-0-media ul li {
    width: calc((100% - 3.2rem)/2)
}

@media only screen and (max-width: 640px) {
    .column-0-media ul li {
        width:calc((100% - 1.6rem)/2)
    }
}

.media-info {
    border-top: 1px solid #dedede;
    min-height: 9.6rem;
    margin-bottom: 1.6rem;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box
}

@media only screen and (max-width: 668px) {
    .media-info {
        min-height:auto
    }

    .media-info img {
        max-width: 19.2rem
    }
}

a.link_button-05,span.link_button-05 {
    font-size: 1.2rem
}

a.link_button-05 span,span.link_button-05 span {
    border: none
}

a.link_button-05 span:after,span.link_button-05 span:after {
    background-image: url("/cdn/shop/files/icon-recruit-arrow.svg");
    background-repeat: no-repeat;
    background-size: cover;
    width: .8rem;
    height: .8rem;
    display: block;
    content: ""
}

a.link_button-05[target=_blank] span:after,span.link_button-05[target=_blank] span:after {
    background-image: url("/cdn/shop/files/icon-recruit-blank.svg")
}
