@charset "UTF-8";*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)) {
    all: unset;
    display: revert
}

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

a,button {
    cursor: revert
}

ol,ul,menu {
    list-style: none
}

table {
    border-collapse: collapse
}

input,textarea {
    -webkit-user-select: auto
}

textarea {
    white-space: revert
}

meter {
    -webkit-appearance: revert;
    -moz-appearance: revert;
    appearance: revert
}

::-webkit-input-placeholder {
    color: unset
}

::-moz-placeholder {
    color: unset
};

:-ms-input-placeholder {
    color: unset
}

::-ms-input-placeholder {
    color: unset
}

::placeholder {
    color: unset
}

:where([hidden]) {
    display: none
}

:where([contenteditable]:not([contenteditable=false])) {
    -moz-user-modify: read-write;
    -webkit-user-modify: read-write;
    overflow-wrap: break-word;
    -webkit-line-break: after-white-space;
    -webkit-user-select: auto
}

:where([draggable=true]) {
    -webkit-user-drag: element
}

html {
    font-size: 10px
}

body {
    font-family: YakuHanJPs,Raleway,Noto Sans JP,-apple-system,BlinkMacSystemFont,helvetica neue,HelveticaNeue,segoe ui,ヒラギノ角ゴ pron w3,hiragino kaku gothic pron w3,HiraKakuProN-W3,ヒラギノ角ゴ pron,hiragino kaku gothic pron,ヒラギノ角ゴ pro,hiragino kaku gothic pro,メイリオ,Meiryo,Osaka,ＭＳ Ｐゴシック,ms pgothic,sans-serif;
    color: #333;
    font-size: 1.6rem;
    line-height: 2.5;
    -webkit-text-size-adjust: 100%
}

@media(max-width: 896px) {
}

@media(max-width: 576px) {
}

@media(max-width: 374px) {
    html {
        font-size:2.6vw
    }
}

a {
    color: inherit;
    text-decoration: inherit;
    font-size: inherit;
    text-align: inherit
}

img {
    line-height: 0;
    max-width: 100%;
    height: auto
}


button {
    font-size: inherit;
    font-family: inherit;
    border: none;
    padding: 0;
    cursor: pointer;
    background-color: transparent
}

button:focus {
    outline: none
}

input[type=text],select,textarea {
    color: inherit;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none;
    border-radius: 0
}

input[type=submit],input[type=button],button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font: inherit;
    outline: none
}

input,select {
    line-height: 1
}

select {
    color: inherit
}

textarea {
    resize: vertical
}

input[type=submit],input[type=button],input[type=radio],input[type=checkbox],label,button,select {
    cursor: pointer
}

select::-ms-expand {
    display: none
}

::-webkit-input-placeholder {
    color: #eee
}

::-moz-placeholder {
    color: #eee
}

:-ms-input-placeholder {
    color: #eee
}

::-ms-input-placeholder {
    color: #eee
}

::placeholder {
    color: #eee
}

@media(max-width: 896px) {
    input,button,select,textarea {
        font-size:1.6rem
    }
}

sup {
    vertical-align: super;
    font-size: smaller
}

* {
    word-wrap: break-word
}

figure {
    margin-bottom: 0!important
}

.u_tbl {
    display: none!important
}

.u_sp {
    display: none!important
}

.u_pc {
    display: block!important
}

.u_pc.u_inlineB {
    display: inline-block!important
}

.u_pc.u_inline {
    display: inline!important
}

@media(max-width: 896px) {
    .u_pc {
        display:none!important
    }

    .u_sp {
        display: none!important
    }

    .u_tbl {
        display: block!important
    }

    .u_tbl.u_pc {
        display: block!important
    }

    .u_pc.u_inlineB {
        display: none!important
    }

    .u_tbl.u_inlineB {
        display: inline-block!important
    }

    .u_tbl.u_pc.u_inlineB {
        display: inline-block!important
    }

    .u_pc.u_inline {
        display: none!important
    }

    .u_tbl.u_inline {
        display: inline!important
    }

    .u_tbl.u_pc.u_inline {
        display: inline!important
    }

    .u_sp.u_tbl {
        display: block!important
    }

    .u_sp.u_tbl.u_inlineB {
        display: inline-block!important
    }

    .u_sp.u_tbl.u_inline {
        display: inline!important
    }
}

@media(max-width: 576px) {
    .u_pc {
        display:none!important
    }

    .u_tbl {
        display: none!important
    }

    .u_sp {
        display: block!important
    }

    .u_tbl.u_pc {
        display: none!important
    }

    .u_sp.u_tbl {
        display: block!important
    }

    .u_sp.u_inlineB {
        display: inline-block!important
    }

    .u_sp.u_tbl.u_inlineB {
        display: inline-block!important
    }

    .u_sp.u_inline {
        display: inline!important
    }

    .u_sp.u_tbl.u_inline {
        display: inline!important
    }
}

.u_img,.u_img_def {
    display: block;
    line-height: 0
}

.u_img img {
    display: block;
    width: 100%;
    margin: 0 auto
}

.u_img video {
    display: block;
    width: 100%;
    margin: 0 auto
}

.u_img_def img {
    display: block;
    margin: 0 auto
}

.u_img figcaption,.u_img_def figcaption {
    line-height: 2.5
}

.u_ic {
    position: relative
}

.u_ic::before,.u_ic::after {
    content: "";
    margin: auto;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% auto;
    position: absolute;
    pointer-events: none
}

.u_bg {
    background-repeat: repeat;
    background-position: left top;
    background-size: auto
}

.u_indent {
    text-indent: -1em;
    padding-left: 1em
}

.u_alignC {
    text-align: center
}

.u_alignL {
    text-align: left
}

.u_alignR {
    text-align: right
}

@media(max-width: 1040px) {
    .u_alignC_lg {
        text-align:center
    }

    .u_alignL_lg {
        text-align: left
    }

    .u_alignR_lg {
        text-align: right
    }
}

@media(max-width: 896px) {
    .u_alignC_md {
        text-align:center
    }

    .u_alignL_md {
        text-align: left
    }

    .u_alignR_md {
        text-align: right
    }
}

@media(max-width: 576px) {
    .u_alignC_sm {
        text-align:center
    }

    .u_alignL_sm {
        text-align: left
    }

    .u_alignR_sm {
        text-align: right
    }
}

.u_fz40 {
    font-size: 4rem
}

.u_fz38 {
    font-size: 3.8rem
}

.u_fz36 {
    font-size: 3.6rem
}

.u_fz34 {
    font-size: 3.4rem
}

.u_fz32 {
    font-size: 3.2rem
}

.u_fz30 {
    font-size: 3rem
}

.u_fz28 {
    font-size: 2.8rem
}

.u_fz26 {
    font-size: 2.6rem
}

.u_fz24 {
    font-size: 2.4rem
}

.u_fz22 {
    font-size: 2.2rem
}

.u_fz20 {
    font-size: 2rem
}

.u_fz18 {
    font-size: 1.8rem
}

.u_fz16 {
    font-size: 1.6rem
}

.u_fz15 {
    font-size: 1.5rem
}

.u_fz14 {
    font-size: 1.4rem
}

.u_fz13 {
    font-size: 1.3rem
}

.u_fz12 {
    font-size: 1.2rem
}

.u_fz11 {
    font-size: 1.1rem
}

.u_fz10 {
    font-size: 1rem
}

@media(max-width: 896px) {
    .u_fz30_md {
        font-size:3rem
    }

    .u_fz28_md {
        font-size: 2.8rem
    }

    .u_fz26_md {
        font-size: 2.6rem
    }

    .u_fz24_md {
        font-size: 2.4rem
    }

    .u_fz22_md {
        font-size: 2.2rem
    }

    .u_fz20_md {
        font-size: 2rem
    }

    .u_fz18_md {
        font-size: 1.8rem
    }

    .u_fz16_md {
        font-size: 1.6rem
    }

    .u_fz15_md {
        font-size: 1.5rem
    }

    .u_fz14_md {
        font-size: 1.4rem
    }

    .u_fz13_md {
        font-size: 1.3rem
    }

    .u_fz12_md {
        font-size: 1.2rem
    }

    .u_fz11_md {
        font-size: 1.1rem
    }

    .u_fz10_md {
        font-size: 1rem
    }
}

@media(max-width: 576px) {
    .u_fz30_sm {
        font-size:3rem
    }

    .u_fz28_sm {
        font-size: 2.8rem
    }

    .u_fz26_sm {
        font-size: 2.6rem
    }

    .u_fz24_sm {
        font-size: 2.4rem
    }

    .u_fz22_sm {
        font-size: 2.2rem
    }

    .u_fz20_sm {
        font-size: 2rem
    }

    .u_fz18_sm {
        font-size: 1.8rem
    }

    .u_fz16_sm {
        font-size: 1.6rem
    }

    .u_fz15_sm {
        font-size: 1.5rem
    }

    .u_fz14_sm {
        font-size: 1.4rem
    }

    .u_fz13_sm {
        font-size: 1.3rem
    }

    .u_fz12_sm {
        font-size: 1.2rem
    }

    .u_fz11_sm {
        font-size: 1.1rem
    }

    .u_fz10_sm {
        font-size: 1rem
    }
}

.u_black {
    font-weight: 900
}

.u_bold {
    font-weight: 700
}

.u_semibold {
    font-weight: 600
}

.u_medium {
    font-weight: 500
}

.u_regular {
    font-weight: 400
}

.u_light {
    font-weight: 300
}

.u_exlight {
    font-weight: 200
}

.u_thin {
    font-weight: 100
}

.u_tt_up {
    text-transform: uppercase
}

.u_tt_low {
    text-transform: lowercase
}

.u_scrollPrevent {
    overflow: hidden
}

.l_wrap {
    width: 100%;
    margin: auto
}

.l_wrap_inr {
    max-width: 1600px;
    width: 90vw;
    margin: auto
}
.l_base--730w .l_wrap_inr {
    width: 730px;
    margin: auto
}

.l_wrapper {
    width: 100%;
    overflow: hidden
}

@media(max-width: 1040px) {
    .l_wrap_inr {
    }
}

@media(max-width: 896px) {
    .l_wrap_inr {
    }
}

@media(max-width: 576px) {
    .l_base--730w .l_wrap_inr {
        width: 90vw;
    }
}

@media(max-width: 576px) {
    .l_wrap_inr {
    }
}

.l_grid_container {
    display: -ms-grid;
    display: grid
}

.l_grid_1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr
}

.l_grid_2 {
    -ms-grid-columns: (1fr) [2];
    grid-template-columns: repeat(2,1fr)
}

.l_grid_3 {
    -ms-grid-columns: (1fr) [3];
    grid-template-columns: repeat(3,1fr)
}

.l_grid_4 {
    -ms-grid-columns: (1fr) [4];
    grid-template-columns: repeat(4,1fr)
}

.l_grid_5 {
    -ms-grid-columns: (1fr) [5];
    grid-template-columns: repeat(5,1fr)
}

.l_grid_6 {
    -ms-grid-columns: (1fr) [6];
    grid-template-columns: repeat(6,1fr)
}

@media(max-width: 1040px) {
    .l_grid_lg {
        display:-ms-grid;
        display: grid
    }

    .l_grid_lg_1 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }

    .l_grid_lg_2 {
        -ms-grid-columns: (1fr) [2];
        grid-template-columns: repeat(2,1fr)
    }

    .l_grid_lg_3 {
        -ms-grid-columns: (1fr) [3];
        grid-template-columns: repeat(3,1fr)
    }

    .l_grid_lg_4 {
        -ms-grid-columns: (1fr) [4];
        grid-template-columns: repeat(4,1fr)
    }

    .l_grid_lg_5 {
        -ms-grid-columns: (1fr) [5];
        grid-template-columns: repeat(5,1fr)
    }

    .l_grid_lg_6 {
        -ms-grid-columns: (1fr) [6];
        grid-template-columns: repeat(6,1fr)
    }
}

@media(max-width: 896px) {
    .l_grid_md {
        display:-ms-grid;
        display: grid
    }

    .l_grid_md_1 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }

    .l_grid_md_2 {
        -ms-grid-columns: (1fr) [2];
        grid-template-columns: repeat(2,1fr)
    }

    .l_grid_md_3 {
        -ms-grid-columns: (1fr) [3];
        grid-template-columns: repeat(3,1fr)
    }

    .l_grid_md_4 {
        -ms-grid-columns: (1fr) [4];
        grid-template-columns: repeat(4,1fr)
    }

    .l_grid_md_5 {
        -ms-grid-columns: (1fr) [5];
        grid-template-columns: repeat(5,1fr)
    }

    .l_grid_md_6 {
        -ms-grid-columns: (1fr) [6];
        grid-template-columns: repeat(6,1fr)
    }
}

@media(max-width: 576px) {
    .l_grid_sm {
        display:-ms-grid;
        display: grid
    }

    .l_grid_sm_1 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }

    .l_grid_sm_2 {
        -ms-grid-columns: (1fr) [2];
        grid-template-columns: repeat(2,1fr)
    }

    .l_grid_sm_3 {
        -ms-grid-columns: (1fr) [3];
        grid-template-columns: repeat(3,1fr)
    }

    .l_grid_sm_4 {
        -ms-grid-columns: (1fr) [4];
        grid-template-columns: repeat(4,1fr)
    }

    .l_grid_sm_5 {
        -ms-grid-columns: (1fr) [5];
        grid-template-columns: repeat(5,1fr)
    }

    .l_grid_sm_6 {
        -ms-grid-columns: (1fr) [6];
        grid-template-columns: repeat(6,1fr)
    }
}

.l_flex {
    display: flex
}

.l_flexWrap {
    flex-wrap: wrap
}

.l_flexNoShrink {
    flex-shrink: 0
}

.l_directionColumn {
    flex-direction: column!important
}

.l_directionRow {
    flex-direction: row!important
}

.l_alignItemsCenter {
    align-items: center!important
}

.l_alignItemsStart {
    align-items: flex-start!important
}

.l_alignItemsEnd {
    align-items: flex-end!important
}

.l_alignContentCenter {
    align-content: center!important
}

.l_alignContentStart {
    align-content: flex-start!important
}

.l_alignContentEnd {
    align-content: flex-end!important
}

.l_alignSelfCenter {
    -ms-grid-row-align: center!important;
    align-self: center!important
}

.l_alignSelfStart {
    align-self: flex-start!important
}

.l_alignSelfEnd {
    align-self: flex-end!important
}

.l_justifyContentCenter {
    justify-content: center!important
}

.l_justifyContentStart {
    justify-content: flex-start!important
}

.l_justifyContentEnd {
    justify-content: flex-end!important
}

.l_justifyContentAround {
    justify-content: space-around!important
}

.l_justifyContentBetween {
    justify-content: space-between!important
}

.l_placeItemsStart {
    place-items: start!important
}

.l_placeItemsEnd {
    place-items: end!important
}

.l_placeItemsCenter {
    place-items: center!important
}

.l_order_1 {
    order: 1
}

.l_order_2 {
    order: 2
}

@media(max-width: 1040px) {
    .l_flex_lg {
        display:flex
    }

    .l_flexWrap_lg {
        flex-wrap: wrap
    }

    .l_flexNoShrink_lg {
        flex-shrink: 0
    }

    .l_directionColumn_lg {
        flex-direction: column!important
    }

    .l_directionRow_lg {
        flex-direction: row!important
    }

    .l_alignItemsCenter_lg {
        align-items: center!important
    }

    .l_alignItemsStart_lg {
        align-items: flex-start!important
    }

    .l_alignItemsEnd_lg {
        align-items: flex-end!important
    }

    .l_alignContentCenter_lg {
        align-content: center!important
    }

    .l_alignContentStart_lg {
        align-content: flex-start!important
    }

    .l_alignContentEnd_lg {
        align-content: flex-end!important
    }

    .l_alignSelfCenter_lg {
        -ms-grid-row-align: center!important;
        align-self: center!important
    }

    .l_alignSelfStart_lg {
        align-self: flex-start!important
    }

    .l_alignSelfEnd_lg {
        align-self: flex-end!important
    }

    .l_justifyContentCenter_lg {
        justify-content: center!important
    }

    .l_justifyContentStart_lg {
        justify-content: flex-start!important
    }

    .l_justifyContentEnd_lg {
        justify-content: flex-end!important
    }

    .l_justifyContentAround_lg {
        justify-content: space-around!important
    }

    .l_justifyContentBetween_lg {
        justify-content: space-between!important
    }

    .l_placeItemsStart_lg {
        place-items: start!important
    }

    .l_placeItemsEnd_lg {
        place-items: end!important
    }

    .l_placeItemsCenter_lg {
        place-items: center!important
    }

    .l_order_1_lg {
        order: 1
    }

    .l_order_2_lg {
        order: 2
    }
}

@media(max-width: 896px) {
    .l_flex_md {
        display:flex
    }

    .l_flexWrap_md {
        flex-wrap: wrap
    }

    .l_flexNoShrink_md {
        flex-shrink: 0
    }

    .l_directionColumn_md {
        flex-direction: column!important
    }

    .l_directionRow_md {
        flex-direction: row!important
    }

    .l_alignItemsCenter_md {
        align-items: center!important
    }

    .l_alignItemsStart_md {
        align-items: flex-start!important
    }

    .l_alignItemsEnd_md {
        align-items: flex-end!important
    }

    .l_alignContentCenter_md {
        align-content: center!important
    }

    .l_alignContentStart_md {
        align-content: flex-start!important
    }

    .l_alignContentEnd_md {
        align-content: flex-end!important
    }

    .l_alignSelfCenter_md {
        -ms-grid-row-align: center!important;
        align-self: center!important
    }

    .l_alignSelfStart_md {
        align-self: flex-start!important
    }

    .l_alignSelfEnd_md {
        align-self: flex-end!important
    }

    .l_justifyContentCenter_md {
        justify-content: center!important
    }

    .l_justifyContentStart_md {
        justify-content: flex-start!important
    }

    .l_justifyContentEnd_md {
        justify-content: flex-end!important
    }

    .l_justifyContentAround_md {
        justify-content: space-around!important
    }

    .l_justifyContentBetween_md {
        justify-content: space-between!important
    }

    .l_placeItemsStart_md {
        place-items: start!important
    }

    .l_placeItemsEnd_md {
        place-items: end!important
    }

    .l_placeItemsCenter_md {
        place-items: center!important
    }

    .l_order_1_md {
        order: 1
    }

    .l_order_2_md {
        order: 2
    }
}

@media(max-width: 576px) {
    .l_flex_sm {
        display:flex
    }

    .l_flexWrap_sm {
        flex-wrap: wrap
    }

    .l_flexNoShrink_sm {
        flex-shrink: 0
    }

    .l_directionColumn_sm {
        flex-direction: column!important
    }

    .l_directionRow_sm {
        flex-direction: row!important
    }

    .l_alignItemsCenter_sm {
        align-items: center!important
    }

    .l_alignItemsStart_sm {
        align-items: flex-start!important
    }

    .l_alignItemsEnd_sm {
        align-items: flex-end!important
    }

    .l_alignContentCenter_sm {
        align-content: center!important
    }

    .l_alignContentStart_sm {
        align-content: flex-start!important
    }

    .l_alignContentEnd_sm {
        align-content: flex-end!important
    }

    .l_alignSelfCenter_sm {
        -ms-grid-row-align: center!important;
        align-self: center!important
    }

    .l_alignSelfStart_sm {
        align-self: flex-start!important
    }

    .l_alignSelfEnd_sm {
        align-self: flex-end!important
    }

    .l_justifyContentCenter_sm {
        justify-content: center!important
    }

    .l_justifyContentStart_sm {
        justify-content: flex-start!important
    }

    .l_justifyContentEnd_sm {
        justify-content: flex-end!important
    }

    .l_justifyContentAround_sm {
        justify-content: space-around!important
    }

    .l_justifyContentBetween_sm {
        justify-content: space-between!important
    }

    .l_placeItemsStart_sm {
        place-items: start!important
    }

    .l_placeItemsEnd_sm {
        place-items: end!important
    }

    .l_placeItemsCenter_sm {
        place-items: center!important
    }

    .l_order_1_sm {
        order: 1
    }

    .l_order_2_sm {
        order: 2
    }
}

.l_gap_0 {
    gap: 0
}

.l_gap_5 {
    gap: 5px
}

.l_gap_10 {
    gap: 10px
}

.l_gap_15 {
    gap: 15px
}

.l_gap_20 {
    gap: 20px
}

.l_gap_25 {
    gap: 25px
}

.l_gap_30 {
    gap: 30px
}

.l_gap_35 {
    gap: 35px
}

.l_gap_40 {
    gap: 40px
}

.l_gap_45 {
    gap: 45px
}

.l_gap_50 {
    gap: 50px
}

.l_gap_60 {
    gap: 60px
}

.l_gap_70 {
    gap: 70px
}

.l_gap_80 {
    gap: 80px
}

.l_gap_90 {
    gap: 90px
}

.l_gap_100 {
    gap: 100px
}

.l_gap_0_x {
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0
}

.l_gap_5_x {
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
    column-gap: 5px
}

.l_gap_10_x {
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px
}

.l_gap_15_x {
    -webkit-column-gap: 15px;
    -moz-column-gap: 15px;
    column-gap: 15px
}

.l_gap_20_x {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px
}

.l_gap_25_x {
    -webkit-column-gap: 25px;
    -moz-column-gap: 25px;
    column-gap: 25px
}

.l_gap_30_x {
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px
}

.l_gap_35_x {
    -webkit-column-gap: 35px;
    -moz-column-gap: 35px;
    column-gap: 35px
}

.l_gap_40_x {
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px
}

.l_gap_45_x {
    -webkit-column-gap: 45px;
    -moz-column-gap: 45px;
    column-gap: 45px
}

.l_gap_50_x {
    -webkit-column-gap: 50px;
    -moz-column-gap: 50px;
    column-gap: 50px
}

.l_gap_60_x {
    -webkit-column-gap: 60px;
    -moz-column-gap: 60px;
    column-gap: 60px
}

.l_gap_70_x {
    -webkit-column-gap: 70px;
    -moz-column-gap: 70px;
    column-gap: 70px
}

.l_gap_80_x {
    -webkit-column-gap: 80px;
    -moz-column-gap: 80px;
    column-gap: 80px
}

.l_gap_90_x {
    -webkit-column-gap: 90px;
    -moz-column-gap: 90px;
    column-gap: 90px
}

.l_gap_100_x {
    -webkit-column-gap: 100px;
    -moz-column-gap: 100px;
    column-gap: 100px
}

.l_gap_0_y {
    row-gap: 0
}

.l_gap_5_y {
    row-gap: 5px
}

.l_gap_10_y {
    row-gap: 10px
}

.l_gap_15_y {
    row-gap: 15px
}

.l_gap_20_y {
    row-gap: 20px
}

.l_gap_25_y {
    row-gap: 25px
}

.l_gap_30_y {
    row-gap: 30px
}

.l_gap_35_y {
    row-gap: 35px
}

.l_gap_40_y {
    row-gap: 40px
}

.l_gap_45_y {
    row-gap: 45px
}

.l_gap_50_y {
    row-gap: 50px
}

.l_gap_60_y {
    row-gap: 60px
}

.l_gap_70_y {
    row-gap: 70px
}

.l_gap_80_y {
    row-gap: 80px
}

.l_gap_90_y {
    row-gap: 90px
}

.l_gap_100_y {
    row-gap: 100px
}

@media(max-width: 1040px) {
    .l_gap_lg_0 {
        gap:0
    }

    .l_gap_lg_5 {
        gap: 5px
    }

    .l_gap_lg_10 {
        gap: 10px
    }

    .l_gap_lg_15 {
        gap: 15px
    }

    .l_gap_lg_20 {
        gap: 20px
    }

    .l_gap_lg_25 {
        gap: 25px
    }

    .l_gap_lg_30 {
        gap: 30px
    }

    .l_gap_lg_35 {
        gap: 35px
    }

    .l_gap_lg_40 {
        gap: 40px
    }

    .l_gap_lg_45 {
        gap: 45px
    }

    .l_gap_lg_50 {
        gap: 50px
    }

    .l_gap_lg_60 {
        gap: 60px
    }

    .l_gap_lg_70 {
        gap: 70px
    }

    .l_gap_lg_80 {
        gap: 80px
    }

    .l_gap_lg_90 {
        gap: 90px
    }

    .l_gap_lg_100 {
        gap: 100px
    }

    .l_gap_lg_0_x {
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0
    }

    .l_gap_lg_5_x {
        -webkit-column-gap: 5px;
        -moz-column-gap: 5px;
        column-gap: 5px
    }

    .l_gap_lg_10_x {
        -webkit-column-gap: 10px;
        -moz-column-gap: 10px;
        column-gap: 10px
    }

    .l_gap_lg_15_x {
        -webkit-column-gap: 15px;
        -moz-column-gap: 15px;
        column-gap: 15px
    }

    .l_gap_lg_20_x {
        -webkit-column-gap: 20px;
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    .l_gap_lg_25_x {
        -webkit-column-gap: 25px;
        -moz-column-gap: 25px;
        column-gap: 25px
    }

    .l_gap_lg_30_x {
        -webkit-column-gap: 30px;
        -moz-column-gap: 30px;
        column-gap: 30px
    }

    .l_gap_lg_35_x {
        -webkit-column-gap: 35px;
        -moz-column-gap: 35px;
        column-gap: 35px
    }

    .l_gap_lg_40_x {
        -webkit-column-gap: 40px;
        -moz-column-gap: 40px;
        column-gap: 40px
    }

    .l_gap_lg_45_x {
        -webkit-column-gap: 45px;
        -moz-column-gap: 45px;
        column-gap: 45px
    }

    .l_gap_lg_50_x {
        -webkit-column-gap: 50px;
        -moz-column-gap: 50px;
        column-gap: 50px
    }

    .l_gap_lg_60_x {
        -webkit-column-gap: 60px;
        -moz-column-gap: 60px;
        column-gap: 60px
    }

    .l_gap_lg_70_x {
        -webkit-column-gap: 70px;
        -moz-column-gap: 70px;
        column-gap: 70px
    }

    .l_gap_lg_80_x {
        -webkit-column-gap: 80px;
        -moz-column-gap: 80px;
        column-gap: 80px
    }

    .l_gap_lg_90_x {
        -webkit-column-gap: 90px;
        -moz-column-gap: 90px;
        column-gap: 90px
    }

    .l_gap_lg_100_x {
        -webkit-column-gap: 100px;
        -moz-column-gap: 100px;
        column-gap: 100px
    }

    .l_gap_lg_0_y {
        row-gap: 0
    }

    .l_gap_lg_5_y {
        row-gap: 5px
    }

    .l_gap_lg_10_y {
        row-gap: 10px
    }

    .l_gap_lg_15_y {
        row-gap: 15px
    }

    .l_gap_lg_20_y {
        row-gap: 20px
    }

    .l_gap_lg_25_y {
        row-gap: 25px
    }

    .l_gap_lg_30_y {
        row-gap: 30px
    }

    .l_gap_lg_35_y {
        row-gap: 35px
    }

    .l_gap_lg_40_y {
        row-gap: 40px
    }

    .l_gap_lg_45_y {
        row-gap: 45px
    }

    .l_gap_lg_50_y {
        row-gap: 50px
    }

    .l_gap_lg_60_y {
        row-gap: 60px
    }

    .l_gap_lg_70_y {
        row-gap: 70px
    }

    .l_gap_lg_80_y {
        row-gap: 80px
    }

    .l_gap_lg_90_y {
        row-gap: 90px
    }

    .l_gap_lg_100_y {
        row-gap: 100px
    }
}

@media(max-width: 896px) {
    .l_gap_md_0 {
        gap:0
    }

    .l_gap_md_5 {
        gap: 5px
    }

    .l_gap_md_10 {
        gap: 10px
    }

    .l_gap_md_15 {
        gap: 15px
    }

    .l_gap_md_20 {
        gap: 20px
    }

    .l_gap_md_25 {
        gap: 25px
    }

    .l_gap_md_30 {
        gap: 30px
    }

    .l_gap_md_35 {
        gap: 35px
    }

    .l_gap_md_40 {
        gap: 40px
    }

    .l_gap_md_45 {
        gap: 45px
    }

    .l_gap_md_50 {
        gap: 50px
    }

    .l_gap_md_60 {
        gap: 60px
    }

    .l_gap_md_70 {
        gap: 70px
    }

    .l_gap_md_80 {
        gap: 80px
    }

    .l_gap_md_90 {
        gap: 90px
    }

    .l_gap_md_100 {
        gap: 100px
    }

    .l_gap_md_0_x {
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0
    }

    .l_gap_md_5_x {
        -webkit-column-gap: 5px;
        -moz-column-gap: 5px;
        column-gap: 5px
    }

    .l_gap_md_10_x {
        -webkit-column-gap: 10px;
        -moz-column-gap: 10px;
        column-gap: 10px
    }

    .l_gap_md_15_x {
        -webkit-column-gap: 15px;
        -moz-column-gap: 15px;
        column-gap: 15px
    }

    .l_gap_md_20_x {
        -webkit-column-gap: 20px;
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    .l_gap_md_25_x {
        -webkit-column-gap: 25px;
        -moz-column-gap: 25px;
        column-gap: 25px
    }

    .l_gap_md_30_x {
        -webkit-column-gap: 30px;
        -moz-column-gap: 30px;
        column-gap: 30px
    }

    .l_gap_md_35_x {
        -webkit-column-gap: 35px;
        -moz-column-gap: 35px;
        column-gap: 35px
    }

    .l_gap_md_40_x {
        -webkit-column-gap: 40px;
        -moz-column-gap: 40px;
        column-gap: 40px
    }

    .l_gap_md_45_x {
        -webkit-column-gap: 45px;
        -moz-column-gap: 45px;
        column-gap: 45px
    }

    .l_gap_md_50_x {
        -webkit-column-gap: 50px;
        -moz-column-gap: 50px;
        column-gap: 50px
    }

    .l_gap_md_60_x {
        -webkit-column-gap: 60px;
        -moz-column-gap: 60px;
        column-gap: 60px
    }

    .l_gap_md_70_x {
        -webkit-column-gap: 70px;
        -moz-column-gap: 70px;
        column-gap: 70px
    }

    .l_gap_md_80_x {
        -webkit-column-gap: 80px;
        -moz-column-gap: 80px;
        column-gap: 80px
    }

    .l_gap_md_90_x {
        -webkit-column-gap: 90px;
        -moz-column-gap: 90px;
        column-gap: 90px
    }

    .l_gap_md_100_x {
        -webkit-column-gap: 100px;
        -moz-column-gap: 100px;
        column-gap: 100px
    }

    .l_gap_md_0_y {
        row-gap: 0
    }

    .l_gap_md_5_y {
        row-gap: 5px
    }

    .l_gap_md_10_y {
        row-gap: 10px
    }

    .l_gap_md_15_y {
        row-gap: 15px
    }

    .l_gap_md_20_y {
        row-gap: 20px
    }

    .l_gap_md_25_y {
        row-gap: 25px
    }

    .l_gap_md_30_y {
        row-gap: 30px
    }

    .l_gap_md_35_y {
        row-gap: 35px
    }

    .l_gap_md_40_y {
        row-gap: 40px
    }

    .l_gap_md_45_y {
        row-gap: 45px
    }

    .l_gap_md_50_y {
        row-gap: 50px
    }

    .l_gap_md_60_y {
        row-gap: 60px
    }

    .l_gap_md_70_y {
        row-gap: 70px
    }

    .l_gap_md_80_y {
        row-gap: 80px
    }

    .l_gap_md_90_y {
        row-gap: 90px
    }

    .l_gap_md_100_y {
        row-gap: 100px
    }
}

@media(max-width: 576px) {
    .l_gap_sm_0 {
        gap:0
    }

    .l_gap_sm_5 {
        gap: 1.3vw
    }

    .l_gap_sm_10 {
        gap: 2.6vw
    }

    .l_gap_sm_15 {
        gap: 4vw
    }

    .l_gap_sm_20 {
        gap: 5.3vw
    }

    .l_gap_sm_25 {
        gap: 6.6vw
    }

    .l_gap_sm_30 {
        gap: 8vw
    }

    .l_gap_sm_35 {
        gap: 9.3vw
    }

    .l_gap_sm_40 {
        gap: 10.6vw
    }

    .l_gap_sm_45 {
        gap: 12vw
    }

    .l_gap_sm_50 {
        gap: 13.3vw
    }

    .l_gap_sm_60 {
        gap: 16vw
    }

    .l_gap_sm_70 {
        gap: 18.6vw
    }

    .l_gap_sm_80 {
        gap: 21.3vw
    }

    .l_gap_sm_90 {
        gap: 24vw
    }

    .l_gap_sm_100 {
        gap: 26.6vw
    }

    .l_gap_sm_0_x {
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0
    }

    .l_gap_sm_5_x {
        -webkit-column-gap: 1.3vw;
        -moz-column-gap: 1.3vw;
        column-gap: 1.3vw
    }

    .l_gap_sm_10_x {
        -webkit-column-gap: 2.6vw;
        -moz-column-gap: 2.6vw;
        column-gap: 2.6vw
    }

    .l_gap_sm_15_x {
        -webkit-column-gap: 4vw;
        -moz-column-gap: 4vw;
        column-gap: 4vw
    }

    .l_gap_sm_20_x {
        -webkit-column-gap: 5.3vw;
        -moz-column-gap: 5.3vw;
        column-gap: 5.3vw
    }

    .l_gap_sm_25_x {
        -webkit-column-gap: 6.6vw;
        -moz-column-gap: 6.6vw;
        column-gap: 6.6vw
    }

    .l_gap_sm_30_x {
        -webkit-column-gap: 8vw;
        -moz-column-gap: 8vw;
        column-gap: 8vw
    }

    .l_gap_sm_35_x {
        -webkit-column-gap: 9.3vw;
        -moz-column-gap: 9.3vw;
        column-gap: 9.3vw
    }

    .l_gap_sm_40_x {
        -webkit-column-gap: 10.6vw;
        -moz-column-gap: 10.6vw;
        column-gap: 10.6vw
    }

    .l_gap_sm_45_x {
        -webkit-column-gap: 12vw;
        -moz-column-gap: 12vw;
        column-gap: 12vw
    }

    .l_gap_sm_50_x {
        -webkit-column-gap: 13.3vw;
        -moz-column-gap: 13.3vw;
        column-gap: 13.3vw
    }

    .l_gap_sm_60_x {
        -webkit-column-gap: 16vw;
        -moz-column-gap: 16vw;
        column-gap: 16vw
    }

    .l_gap_sm_70_x {
        -webkit-column-gap: 18.6vw;
        -moz-column-gap: 18.6vw;
        column-gap: 18.6vw
    }

    .l_gap_sm_80_x {
        -webkit-column-gap: 21.3vw;
        -moz-column-gap: 21.3vw;
        column-gap: 21.3vw
    }

    .l_gap_sm_90_x {
        -webkit-column-gap: 24vw;
        -moz-column-gap: 24vw;
        column-gap: 24vw
    }

    .l_gap_sm_100_x {
        -webkit-column-gap: 26.6vw;
        -moz-column-gap: 26.6vw;
        column-gap: 26.6vw
    }

    .l_gap_sm_0_y {
        row-gap: 0
    }

    .l_gap_sm_5_y {
        row-gap: 1.3vw
    }

    .l_gap_sm_10_y {
        row-gap: 2.6vw
    }

    .l_gap_sm_15_y {
        row-gap: 4vw
    }

    .l_gap_sm_20_y {
        row-gap: 5.3vw
    }

    .l_gap_sm_25_y {
        row-gap: 6.6vw
    }

    .l_gap_sm_30_y {
        row-gap: 8vw
    }

    .l_gap_sm_35_y {
        row-gap: 9.3vw
    }

    .l_gap_sm_40_y {
        row-gap: 10.6vw
    }

    .l_gap_sm_45_y {
        row-gap: 12vw
    }

    .l_gap_sm_50_y {
        row-gap: 13.3vw
    }

    .l_gap_sm_60_y {
        row-gap: 16vw
    }

    .l_gap_sm_70_y {
        row-gap: 18.6vw
    }

    .l_gap_sm_80_y {
        row-gap: 21.3vw
    }

    .l_gap_sm_90_y {
        row-gap: 24vw
    }

    .l_gap_sm_100_y {
        row-gap: 26.6vw
    }
}

/* 初期表示動画 */
.l_video{
  height: calc(100vh - 100px);
  width: 100vw;
  z-index: 9999;
  position: fixed;
  background: #fff;
  top: 100px;
  display: flex;
  justify-content: center;    
}
.m_video_main{
  width: 100%;
  height: 100%;
}
.m_video_btn{
  position:absolute;
  right: 5vw;
  bottom: 5vh;
}
.m_video_btnMain{
  border: 1px solid #333;
  font-size: 14px;
  color: #333;
  padding: 10px 20px;
  transition: .3s;
}
.m_video_btnMain:hover{
  opacity: 0.6;
}
@media(max-width: 896px) {
  .l_video{
    display: none;
  }
}

.px_0 {
    padding-left: auto!important;
    padding-right: auto!important
}

.py_0 {
    padding-top: 0!important;
    padding-bottom: 0!important
}

@media(max-width: 1040px) {
    .px_0_lg {
        padding-left:auto!important;
        padding-right: auto!important
    }

    .py_0_lg {
        padding-top: 0!important;
        padding-bottom: 0!important
    }
}

@media(max-width: 896px) {
    .px_0_md {
        padding-left:auto!important;
        padding-right: auto!important
    }

    .py_0_md {
        padding-top: 0!important;
        padding-bottom: 0!important
    }
}

@media(max-width: 576px) {
    .px_0_sm {
        padding-left:auto!important;
        padding-right: auto!important
    }

    .py_0_sm {
        padding-top: 0!important;
        padding-bottom: 0!important
    }
}

.pt_0 {
    padding-top: 0!important
}

.pt_5 {
    padding-top: 5px!important
}

.pt_10 {
    padding-top: 10px!important
}

.pt_15 {
    padding-top: 15px!important
}

.pt_20 {
    padding-top: 20px!important
}

.pt_25 {
    padding-top: 25px!important
}

.pt_30 {
    padding-top: 30px!important
}

.pt_35 {
    padding-top: 35px!important
}

.pt_40 {
    padding-top: 40px!important
}

.pt_45 {
    padding-top: 45px!important
}

.pt_50 {
    padding-top: 50px!important
}

.pt_60 {
    padding-top: 60px!important
}

.pt_70 {
    padding-top: 70px!important
}

.pt_80 {
    padding-top: 80px!important
}

.pt_90 {
    padding-top: 90px!important
}

.pt_100 {
    padding-top: 100px!important
}

@media(max-width: 1040px) {
    .pt_0_lg {
        padding-top:0!important
    }

    .pt_5_lg {
        padding-top: 5px!important
    }

    .pt_10_lg {
        padding-top: 10px!important
    }

    .pt_15_lg {
        padding-top: 15px!important
    }

    .pt_20_lg {
        padding-top: 20px!important
    }

    .pt_25_lg {
        padding-top: 25px!important
    }

    .pt_30_lg {
        padding-top: 30px!important
    }

    .pt_35_lg {
        padding-top: 35px!important
    }

    .pt_40_lg {
        padding-top: 40px!important
    }

    .pt_45_lg {
        padding-top: 45px!important
    }

    .pt_50_lg {
        padding-top: 50px!important
    }

    .pt_60_lg {
        padding-top: 60px!important
    }

    .pt_70_lg {
        padding-top: 70px!important
    }

    .pt_80_lg {
        padding-top: 80px!important
    }

    .pt_90_lg {
        padding-top: 90px!important
    }

    .pt_100_lg {
        padding-top: 100px!important
    }
}

@media(max-width: 896px) {
    .pt_0_md {
        padding-top:0!important
    }

    .pt_5_md {
        padding-top: 5px!important
    }

    .pt_10_md {
        padding-top: 10px!important
    }

    .pt_15_md {
        padding-top: 15px!important
    }

    .pt_20_md {
        padding-top: 20px!important
    }

    .pt_25_md {
        padding-top: 25px!important
    }

    .pt_30_md {
        padding-top: 30px!important
    }

    .pt_35_md {
        padding-top: 35px!important
    }

    .pt_40_md {
        padding-top: 40px!important
    }

    .pt_45_md {
        padding-top: 45px!important
    }

    .pt_50_md {
        padding-top: 50px!important
    }

    .pt_60_md {
        padding-top: 60px!important
    }

    .pt_70_md {
        padding-top: 70px!important
    }

    .pt_80_md {
        padding-top: 80px!important
    }

    .pt_90_md {
        padding-top: 90px!important
    }

    .pt_100_md {
        padding-top: 100px!important
    }
}

@media(max-width: 576px) {
    .pt_5_sm {
        padding-top:1.3vw!important
    }

    .pt_10_sm {
        padding-top: 2.6vw!important
    }

    .pt_15_sm {
        padding-top: 4vw!important
    }

    .pt_20_sm {
        padding-top: 5.3vw!important
    }

    .pt_25_sm {
        padding-top: 6.6vw!important
    }

    .pt_30_sm {
        padding-top: 8vw!important
    }

    .pt_35_sm {
        padding-top: 9.3vw!important
    }

    .pt_40_sm {
        padding-top: 10.6vw!important
    }

    .pt_45_sm {
        padding-top: 12vw!important
    }

    .pt_50_sm {
        padding-top: 13.3vw!important
    }

    .pt_60_sm {
        padding-top: 16vw!important
    }

    .pt_70_sm {
        padding-top: 18.6vw!important
    }

    .pt_80_sm {
        padding-top: 21.3vw!important
    }

    .pt_90_sm {
        padding-top: 24vw!important
    }

    .pt_100_sm {
        padding-top: 26.6vw!important
    }
}

.pb_0 {
    padding-bottom: 0!important
}

.pb_5 {
    padding-bottom: 5px!important
}

.pb_10 {
    padding-bottom: 10px!important
}

.pb_15 {
    padding-bottom: 15px!important
}

.pb_20 {
    padding-bottom: 20px!important
}

.pb_25 {
    padding-bottom: 25px!important
}

.pb_30 {
    padding-bottom: 30px!important
}

.pb_35 {
    padding-bottom: 35px!important
}

.pb_40 {
    padding-bottom: 40px!important
}

.pb_45 {
    padding-bottom: 45px!important
}

.pb_50 {
    padding-bottom: 50px!important
}

.pb_60 {
    padding-bottom: 60px!important
}

.pb_70 {
    padding-bottom: 70px!important
}

.pb_80 {
    padding-bottom: 80px!important
}

.pb_90 {
    padding-bottom: 90px!important
}

.pb_100 {
    padding-bottom: 100px!important
}

@media(max-width: 1040px) {
    .pb_0_lg {
        padding-bottom:0!important
    }

    .pb_5_lg {
        padding-bottom: 5px!important
    }

    .pb_10_lg {
        padding-bottom: 10px!important
    }

    .pb_15_lg {
        padding-bottom: 15px!important
    }

    .pb_20_lg {
        padding-bottom: 20px!important
    }

    .pb_25_lg {
        padding-bottom: 25px!important
    }

    .pb_30_lg {
        padding-bottom: 30px!important
    }

    .pb_35_lg {
        padding-bottom: 35px!important
    }

    .pb_40_lg {
        padding-bottom: 40px!important
    }

    .pb_45_lg {
        padding-bottom: 45px!important
    }

    .pb_50_lg {
        padding-bottom: 50px!important
    }

    .pb_60_lg {
        padding-bottom: 60px!important
    }

    .pb_70_lg {
        padding-bottom: 70px!important
    }

    .pb_80_lg {
        padding-bottom: 80px!important
    }

    .pb_90_lg {
        padding-bottom: 90px!important
    }

    .pb_100_lg {
        padding-bottom: 100px!important
    }
}

@media(max-width: 896px) {
    .pb_0_md {
        padding-bottom:0!important
    }

    .pb_5_md {
        padding-bottom: 5px!important
    }

    .pb_10_md {
        padding-bottom: 10px!important
    }

    .pb_15_md {
        padding-bottom: 15px!important
    }

    .pb_20_md {
        padding-bottom: 20px!important
    }

    .pb_25_md {
        padding-bottom: 25px!important
    }

    .pb_30_md {
        padding-bottom: 30px!important
    }

    .pb_35_md {
        padding-bottom: 35px!important
    }

    .pb_40_md {
        padding-bottom: 40px!important
    }

    .pb_45_md {
        padding-bottom: 45px!important
    }

    .pb_50_md {
        padding-bottom: 50px!important
    }

    .pb_60_md {
        padding-bottom: 60px!important
    }

    .pb_70_md {
        padding-bottom: 70px!important
    }

    .pb_80_md {
        padding-bottom: 80px!important
    }

    .pb_90_md {
        padding-bottom: 90px!important
    }

    .pb_100_md {
        padding-bottom: 100px!important
    }
}

@media(max-width: 576px) {
    .pb_5_sm {
        padding-bottom:1.3vw!important
    }

    .pb_10_sm {
        padding-bottom: 2.6vw!important
    }

    .pb_15_sm {
        padding-bottom: 4vw!important
    }

    .pb_20_sm {
        padding-bottom: 5.3vw!important
    }

    .pb_25_sm {
        padding-bottom: 6.6vw!important
    }

    .pb_30_sm {
        padding-bottom: 8vw!important
    }

    .pb_35_sm {
        padding-bottom: 9.3vw!important
    }

    .pb_40_sm {
        padding-bottom: 10.6vw!important
    }

    .pb_45_sm {
        padding-bottom: 12vw!important
    }

    .pb_50_sm {
        padding-bottom: 13.3vw!important
    }

    .pb_60_sm {
        padding-bottom: 16vw!important
    }

    .pb_70_sm {
        padding-bottom: 18.6vw!important
    }

    .pb_80_sm {
        padding-bottom: 21.3vw!important
    }

    .pb_90_sm {
        padding-bottom: 24vw!important
    }

    .pb_100_sm {
        padding-bottom: 26.6vw!important
    }
}

.mx_auto {
    margin-left: auto!important;
    margin-right: auto!important
}

.mx_0 {
    margin-left: auto!important;
    margin-right: auto!important
}

.my_auto {
    margin-top: auto!important;
    margin-bottom: auto!important
}

.my_0 {
    margin-top: 0!important;
    margin-bottom: 0!important
}

.ml_auto {
    margin-left: auto!important
}

@media(max-width: 1040px) {
    .mx_auto_lg {
        margin-left:auto!important;
        margin-right: auto!important
    }

    .mx_0_lg {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my_auto_lg {
        margin-top: auto!important;
        margin-bottom: auto!important
    }

    .my_0_lg {
        margin-top: 0!important;
        margin-bottom: 0!important
    }

    .ml_auto_lg {
        margin-left: auto!important
    }
}

@media(max-width: 896px) {
    .mx_auto_md {
        margin-left:auto!important;
        margin-right: auto!important
    }

    .mx_0_md {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my_auto_md {
        margin-top: auto!important;
        margin-bottom: auto!important
    }

    .my_0_md {
        margin-top: 0!important;
        margin-bottom: 0!important
    }

    .ml_auto_md {
        margin-left: auto!important
    }
}

@media(max-width: 576px) {
    .mx_auto_sm {
        margin-left:auto!important;
        margin-right: auto!important
    }

    .mx_0_sm {
        margin-left: auto!important;
        margin-right: auto!important
    }

    .my_auto_sm {
        margin-top: auto!important;
        margin-bottom: auto!important
    }

    .my_0_sm {
        margin-top: 0!important;
        margin-bottom: 0!important
    }

    .ml_auto_sm {
        margin-left: auto!important
    }
}

.mt_0 {
    margin-top: 0!important
}

.mt_5 {
    margin-top: 5px!important
}

.mt_10 {
    margin-top: 10px!important
}

.mt_15 {
    margin-top: 15px!important
}

.mt_20 {
    margin-top: 20px!important
}

.mt_25 {
    margin-top: 25px!important
}

.mt_30 {
    margin-top: 30px!important
}

.mt_35 {
    margin-top: 35px!important
}

.mt_40 {
    margin-top: 40px!important
}

.mt_45 {
    margin-top: 45px!important
}

.mt_50 {
    margin-top: 50px!important
}

.mt_60 {
    margin-top: 60px!important
}

.mt_70 {
    margin-top: 70px!important
}

.mt_80 {
    margin-top: 80px!important
}

.mt_90 {
    margin-top: 90px!important
}

.mt_100 {
    margin-top: 100px!important
}

@media(max-width: 1040px) {
    .mt_0_lg {
        margin-top:0!important
    }

    .mt_5_lg {
        margin-top: 5px!important
    }

    .mt_10_lg {
        margin-top: 10px!important
    }

    .mt_15_lg {
        margin-top: 15px!important
    }

    .mt_20_lg {
        margin-top: 20px!important
    }

    .mt_25_lg {
        margin-top: 25px!important
    }

    .mt_30_lg {
        margin-top: 30px!important
    }

    .mt_35_lg {
        margin-top: 35px!important
    }

    .mt_40_lg {
        margin-top: 40px!important
    }

    .mt_45_lg {
        margin-top: 45px!important
    }

    .mt_50_lg {
        margin-top: 50px!important
    }

    .mt_60_lg {
        margin-top: 60px!important
    }

    .mt_70_lg {
        margin-top: 70px!important
    }

    .mt_80_lg {
        margin-top: 80px!important
    }

    .mt_90_lg {
        margin-top: 90px!important
    }

    .mt_100_lg {
        margin-top: 100px!important
    }
}

@media(max-width: 896px) {
    .mt_0_md {
        margin-top:0!important
    }

    .mt_5_md {
        margin-top: 5px!important
    }

    .mt_10_md {
        margin-top: 10px!important
    }

    .mt_15_md {
        margin-top: 15px!important
    }

    .mt_20_md {
        margin-top: 20px!important
    }

    .mt_25_md {
        margin-top: 25px!important
    }

    .mt_30_md {
        margin-top: 30px!important
    }

    .mt_35_md {
        margin-top: 35px!important
    }

    .mt_40_md {
        margin-top: 40px!important
    }

    .mt_45_md {
        margin-top: 45px!important
    }

    .mt_50_md {
        margin-top: 50px!important
    }

    .mt_60_md {
        margin-top: 60px!important
    }

    .mt_70_md {
        margin-top: 70px!important
    }

    .mt_80_md {
        margin-top: 80px!important
    }

    .mt_90_md {
        margin-top: 90px!important
    }

    .mt_100_md {
        margin-top: 100px!important
    }
}

@media(max-width: 576px) {
    .mt_5_sm {
        margin-top:1.3vw!important
    }

    .mt_10_sm {
        margin-top: 2.6vw!important
    }

    .mt_15_sm {
        margin-top: 4vw!important
    }

    .mt_20_sm {
        margin-top: 5.3vw!important
    }

    .mt_25_sm {
        margin-top: 6.6vw!important
    }

    .mt_30_sm {
        margin-top: 8vw!important
    }

    .mt_35_sm {
        margin-top: 9.3vw!important
    }

    .mt_40_sm {
        margin-top: 10.6vw!important
    }

    .mt_45_sm {
        margin-top: 12vw!important
    }

    .mt_50_sm {
        margin-top: 13.3vw!important
    }

    .mt_60_sm {
        margin-top: 16vw!important
    }

    .mt_70_sm {
        margin-top: 18.6vw!important
    }

    .mt_80_sm {
        margin-top: 21.3vw!important
    }

    .mt_90_sm {
        margin-top: 24vw!important
    }

    .mt_100_sm {
        margin-top: 26.6vw!important
    }
}

.mb_0 {
    margin-bottom: 0!important
}

.mb_5 {
    margin-bottom: 5px!important
}

.mb_10 {
    margin-bottom: 10px!important
}

.mb_15 {
    margin-bottom: 15px!important
}

.mb_20 {
    margin-bottom: 20px!important
}

.mb_25 {
    margin-bottom: 25px!important
}

.mb_30 {
    margin-bottom: 30px!important
}

.mb_35 {
    margin-bottom: 35px!important
}

.mb_40 {
    margin-bottom: 40px!important
}

.mb_45 {
    margin-bottom: 45px!important
}

.mb_50 {
    margin-bottom: 50px!important
}

.mb_60 {
    margin-bottom: 60px!important
}

.mb_70 {
    margin-bottom: 70px!important
}

.mb_80 {
    margin-bottom: 80px!important
}

.mb_90 {
    margin-bottom: 90px!important
}

.mb_100 {
    margin-bottom: 100px!important
}

@media(max-width: 1040px) {
    .mb_0_lg {
        margin-bottom:0!important
    }

    .mb_5_lg {
        margin-bottom: 5px!important
    }

    .mb_10_lg {
        margin-bottom: 10px!important
    }

    .mb_15_lg {
        margin-bottom: 15px!important
    }

    .mb_20_lg {
        margin-bottom: 20px!important
    }

    .mb_25_lg {
        margin-bottom: 25px!important
    }

    .mb_30_lg {
        margin-bottom: 30px!important
    }

    .mb_35_lg {
        margin-bottom: 35px!important
    }

    .mb_40_lg {
        margin-bottom: 40px!important
    }

    .mb_45_lg {
        margin-bottom: 45px!important
    }

    .mb_50_lg {
        margin-bottom: 50px!important
    }

    .mb_60_lg {
        margin-bottom: 60px!important
    }

    .mb_70_lg {
        margin-bottom: 70px!important
    }

    .mb_80_lg {
        margin-bottom: 80px!important
    }

    .mb_90_lg {
        margin-bottom: 90px!important
    }

    .mb_100_lg {
        margin-bottom: 100px!important
    }
}

@media(max-width: 896px) {
    .mb_0_md {
        margin-bottom:0!important
    }

    .mb_5_md {
        margin-bottom: 5px!important
    }

    .mb_10_md {
        margin-bottom: 10px!important
    }

    .mb_15_md {
        margin-bottom: 15px!important
    }

    .mb_20_md {
        margin-bottom: 20px!important
    }

    .mb_25_md {
        margin-bottom: 25px!important
    }

    .mb_30_md {
        margin-bottom: 30px!important
    }

    .mb_35_md {
        margin-bottom: 35px!important
    }

    .mb_40_md {
        margin-bottom: 40px!important
    }

    .mb_45_md {
        margin-bottom: 45px!important
    }

    .mb_50_md {
        margin-bottom: 50px!important
    }

    .mb_60_md {
        margin-bottom: 60px!important
    }

    .mb_70_md {
        margin-bottom: 70px!important
    }

    .mb_80_md {
        margin-bottom: 80px!important
    }

    .mb_90_md {
        margin-bottom: 90px!important
    }

    .mb_100_md {
        margin-bottom: 100px!important
    }
}

@media(max-width: 576px) {
    .mb_5_sm {
        margin-bottom:1.3vw!important
    }

    .mb_10_sm {
        margin-bottom: 2.6vw!important
    }

    .mb_15_sm {
        margin-bottom: 4vw!important
    }

    .mb_20_sm {
        margin-bottom: 5.3vw!important
    }

    .mb_25_sm {
        margin-bottom: 6.6vw!important
    }

    .mb_30_sm {
        margin-bottom: 8vw!important
    }

    .mb_35_sm {
        margin-bottom: 9.3vw!important
    }

    .mb_40_sm {
        margin-bottom: 10.6vw!important
    }

    .mb_45_sm {
        margin-bottom: 12vw!important
    }

    .mb_50_sm {
        margin-bottom: 13.3vw!important
    }

    .mb_60_sm {
        margin-bottom: 16vw!important
    }

    .mb_70_sm {
        margin-bottom: 18.6vw!important
    }

    .mb_80_sm {
        margin-bottom: 21.3vw!important
    }

    .mb_90_sm {
        margin-bottom: 24vw!important
    }

    .mb_100_sm {
        margin-bottom: 26.6vw!important
    }
}

.g_en {
    font-family: Raleway,Noto Sans JP,sans-serif
}

.g_hamb {
    display: none
}

.g_hamb {
    display: flex;
    flex-wrap: wrap;
    align-items: center!important;
    justify-content: center!important;
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    border: 1px solid #fff;
    cursor: pointer
}

.g_hamb_inr {
    position: relative;
    width: 18px;
    height: 15px
}

.g_hamb_inr div {
    position: absolute;
    display: block;
    width: inherit;
    height: 1px;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #6f828e;
    transition: top .2s,bottom .2s,-webkit-transform .2s;
    transition: transform .2s,top .2s,bottom .2s;
    transition: transform .2s,top .2s,bottom .2s,-webkit-transform .2s;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
}

.g_hamb .g_hamb_inr_top {
    bottom: auto
}

.g_hamb .g_hamb_inr_btm {
    top: auto
}

@media screen and (max-width: 576px) {
    .g_hamb {
        width:35px;
        height: 35px
    }
}

.g_slider.slick-slider {
    width: 100%;
    height: auto;
    min-height: auto;
    margin: auto;
    padding-bottom: 1.041vw
}

.g_slider.slick-slider .slick-list,.g_slider.slick-slider .slick-track {
    height: inherit
}

.g_slider.slick-dotted.slick-slider {
    margin-bottom: 0
}

.g_slider .slick-dots {
    height: auto;
    bottom: -1.041vw;
    right: 0;
    left: 0;
    padding-top: 0
}

.g_slider .slick-dots li {
    width: 80px;
    height: 4px;
    margin-right: 10px;
    overflow: visible
}

.g_slider .slick-dots li:last-child {
    margin-right: 0
}

.g_slider .slick-dots li button {
    overflow: visible
}

.g_slider .slick-dots li button::before {
    background-color: #eee
}

.g_slider .slick-dots li.slick-active button::before {
    background-color: #e5002d
}

@media(max-width: 576px) {
    .g_slider .slick-dots {
        width:90vw;
        margin: auto
    }

    .g_slider .slick-dots li {
        width: 12.533vw;
        height: 6px;
        bottom: -4vw;
        margin-right: 2.667vw;
        overflow: visible
    }
}

.g_btn .g_tab {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    padding-right: 0
}

.g_btn .g_tab::before {
    background-image: url(/resource/img/recruit/2024_newcomer/ico_tab_wh.svg)
}

.gnav_cont_box .g_tab::before {
    content: "";
    position: absolute;
    width: .8em;
    height: .8em;
    top: -5px;
    bottom: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% auto;
    background-image: url(/resource/img/recruit/2024_newcomer/link_tab.png)
}

@media(max-width: 896px) {
    .g_btn .g_tab {
        right:2.2vw
    }
}

@media(max-width: 576px) {
    .g_btn .g_tab {
        right:5.3vw
    }
}

@media(any-hover: hover) {
    .gnav_cont_box .g_tab:hover {
        opacity:.5
    }
}

.g_link {
    color: #333;
    text-decoration: underline
}

@media(any-hover: hover) {
    .g_link:hover {
        text-decoration:none
    }
}

.g_link_transp {
    transition: opacity .2s
}

@media(any-hover: hover) {
    .g_link_transp:hover {
        opacity:.7
    }
}

.g_tab {
    position: relative;
    display: inline-block;
    padding-right: 1.5em
}

.external_site_itm .g_tab::before {
    content: "";
    position: absolute;
    width: .8em;
    height: .8em;
    top: -5px;
    bottom: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% auto;
    background-image: url(/resource/img/recruit/2024_newcomer/link_tab.png)
}

.external_site_itm:hover .g_tab::before {
    content: "";
    position: absolute;
    width: .8em;
    height: .8em;
    top: -5px;
    bottom: 0;
    right: 0;
    margin: auto;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% auto;
    background-image: url(/resource/img/recruit/2024_newcomer/link_tab_wh.png)
}

.g_bd {
    border: 1px solid #eee
}

.g_bd__p {
    padding: 20px;
    border: 1px solid #eee
}

.g_decoHd_bb {
    position: relative;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee
}

.g_decoHd_bb::after {
    content: "";
    position: absolute;
    display: block;
    width: 40px;
    bottom: -1px;
    border-bottom: 1px solid #333;
    z-index: 5
}

.g_decoHd_bl {
    position: relative;
    padding-left: 15px
}

.g_decoHd_bl::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: .3em;
    left: 0;
    width: 4px;
    height: 1em;
    background-color: #333
}

@media(max-width: 576px) {
    .g_decoHd_bl {
        padding-left:4vw
    }

    .g_decoHd_bl::before {
        top: 1.8vw;
        width: 1vw
    }
}

.g_gdpr {
    width: 100%;
    background-color: rgba(255,255,255,.95);
    padding: 30px 0;
    box-shadow: 0 -4px 12px rgba(0,0,0,.1);
    position: fixed;
    left: 0;
    bottom: 0;
    display: none;
    z-index: 500
}

.g_gdpr_wrp {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.g_gdpr_txt {
    font-size: 1.4rem;
    line-height: 1.6;
    width: 80%;
    color: #333
}

.g_gdpr_txt a {
    font-weight: 700;
    text-decoration: underline
}

.g_gdpr_btn {
    font-size: 1.4rem;
    font-weight: 500;
    width: 255px;
    height: 50px;
    color: #fff;
    border: 2px solid #333;
    background-color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background .3s;
    cursor: pointer;
    border-radius: 5px
}

@media(any-hover: hover) {
    .g_gdpr_txt a:hover {
        color:#666;
        text-decoration: none;
        transition: color .3s
    }

    .g_gdpr_btn:hover {
        color: #333;
        background-color: #666
    }
}

@media(max-width: 1024px) {
    .g_gdpr {
        padding-left:0
    }

    .g_gdpr_wrp {
        width: 80%
    }
}

@media(max-width: 896px) {
    .g_gdpr_wrp {
        display:block
    }

    .g_gdpr_txt {
        width: 100%
    }

    .g_gdpr_btn {
        width: 130px;
        margin: 15px 0 0 auto
    }
}

@media(max-width: 576px) {
    .g_gdpr {
        padding:3.5vw 0
    }

    .g_gdpr_wrp {
        width: 86vw
    }

    .g_gdpr_btn {
        width: 30vw;
        height: 9vw;
        margin: 4vw 0 0 auto
    }
}

.js_loading {
    width: 100vw;
    height: 100vh;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999999
}

.js_loading.js_loading__page {
    background-color: #fff
}

.loader {
    border-radius: 50%;
    width: 5em;
    height: 5em;
    margin: auto;
    font-size: 10px;
    border-top: 5px solid rgba(22,22,22,.2);
    border-right: 5px solid rgba(22,22,22,.2);
    border-bottom: 5px solid rgba(22,22,22,.2);
    border-left: 5px solid #333;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    -webkit-animation: loader 1.1s infinite linear;
    animation: loader 1.1s infinite linear
}

@-webkit-keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

html.js_notmove {
    overflow: hidden
}

.js_fadeIn {
    position: relative;
    opacity: 0;
    -webkit-transform: translate3d(0,50px,0);
    transform: translate3d(0,50px,0);
    transition: opacity .7s,-webkit-transform .7s;
    transition: transform .7s,opacity .7s;
    transition: transform .7s,opacity .7s,-webkit-transform .7s;
    z-index: 2
}

.js_fadeIn.delay {
    transition: opacity .7s .2s,-webkit-transform .7s .2s;
    transition: transform .7s .2s,opacity .7s .2s;
    transition: transform .7s .2s,opacity .7s .2s,-webkit-transform .7s .2s
}

.js_fadeIn.active {
    opacity: 1;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0)
}

.js_hide {
    display: none
}

.header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background: #fff;
    padding: 20px 40px;
    z-index: 99999
}

.logo {
    width: 110px
}

.header_logo_txt {
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    letter-spacing: 1px
}

.header_gnav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #fff;
    overflow-y: auto
}

.gnav_cont {
    display: flex;
    margin-top: calc(120px + 3.122vw);
    margin-bottom: 3.122vw;
    justify-content: center
}

.gnav_cont_box {
    width: 100%;
    text-align: center
}

.header_gnav_lst {
    width: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1px 1fr 1px 1fr;
    grid-template-columns: repeat(3,33.3%);
    -ms-grid-rows: 11.967vw 1px 11.967vw 1px 11.967vw;
    grid-template-rows: repeat(4,9.967vw);
    background-color: #333;
    grid-gap: 1px
}

.header_gnav_lst>*:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1
}

.header_gnav_lst>*:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
}

.header_gnav_lst>*:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5
}

.header_gnav_lst>*:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
}

.header_gnav_lst>*:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
}

.header_gnav_lst>*:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5
}

.header_gnav_lst>*:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
}

.header_gnav_lst>*:nth-child(8) {
    -ms-grid-row: 5;
    -ms-grid-column: 3
}

.header_gnav_lst>*:nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 5
}

.header_gnav_itm {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    color: #333
}

.header_gnav_itm .gnav_en {
    font-size: clamp(12px,0.937vw,18px);
    font-weight: 400;
    text-align: center;
    line-height: 1.2;
    letter-spacing: 1px
}

.header_gnav_itm .gnav_jp {
    padding-bottom: .26vw;
    font-size: clamp(18px,1.353vw,26px);
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: 1px
}

.gnav_cont_box .g_tab {
    margin-top: 60px;
    font-size: 25px;
    line-height: 30px;
    font-weight: 400;
    color: #333;
    letter-spacing: normal
}

.header_gnav_link {
    margin-top: 60px;
    font-size: 12px;
    line-height: 33px;
    font-weight: 400;
    letter-spacing: 1px
}

.header_gnav_link_item {
    color: #333
}

.header_entry_container .entry {
    position: relative;
    height: 60px;
    padding: 0 90px;
    letter-spacing: 1px;
    color: #fff;
    background: #e5002d;
    border: 1px solid #fff;
    cursor: pointer
}
.header_entry_container .entry a{
    width: 100%;
    height: 100%;
    display: block;
}
.header_entry_container .entry span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    white-space: nowrap;
    font-size: 16px;
}

.header_entry_container .entry span:nth-child(2) {
    opacity: 0
}

.header_entry_container .event_internship {
    position: relative;
    height: 60px;
    padding: 0 110px;
    letter-spacing: 1px;
    color: #fff;
    background: #333;
    border: 1px solid #fff;
    cursor: pointer
}
.header_entry_container .event_internship a{
    display: block;
    width: 100%;
}

.header_entry_container .event_internship span {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    white-space: nowrap;
    font-size: 16px;
}

.gnav_entry {
    position: fixed;
    top: 20px;
    right: 85px
}

.gnav_hamb {
    position: fixed;
    top: 40px;
    right: 40px;
    background: #fff;
    border: 1px solid #fff
}

.gnav_hamb_top {
    -webkit-transform: rotate(45deg)!important;
    transform: rotate(45deg)!important;
    width: 5px!important;
    height: 1px!important;
    top: calc(50% + -4px)!important;
    bottom: 50%!important;
    right: 0!important;
    color: #6f828e!important
}

.gnav_hamb_btm {
    -webkit-transform: rotate(-45deg)!important;
    transform: rotate(-45deg)!important;
    width: 5px!important;
    height: 1px!important;
    top: calc(50% + 2px)!important;
    bottom: 50%!important;
    right: 0!important;
    color: #6f828e!important
}

.gnav_hamb_mdl {
    -webkit-transform: rotate(0deg)!important;
    transform: rotate(0deg)!important;
    width: 100%!important
}

@media(max-width: 896px) {
    .header_gnav {
        padding-top:100px;
        padding-bottom: 20px;
        overflow-y: auto;
        overflow-x: hidden
    }

    .gnav_hamb {
        width: 35px;
        height: 35px
    }

    .gnav_cont.l_wrap_inr {
        width: 100vw;
        margin: auto
    }

    .header_gnav_lst {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1,1fr);
        -ms-grid-rows: 1fr;
        grid-template-rows: repeat(1,1fr);
        background-color: #333;
        grid-gap: 1px;
        border-top: 1px solid #333;
        border-bottom: 1px solid #333
    }

    .gnav_cont_box .g_tab {
        margin-top: 13.333vw
    }

    .header_gnav_lst>*:nth-child(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }

    .header_gnav_itm {
        padding: 30px 0
    }

    .gnav_cont_box {
        width: 100%;
        margin-top: auto
    }

    .header_gnav_link {
        width: 64.426vw;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: auto 14.006vw auto;
        grid-template-columns: repeat(2,auto);
        -ms-grid-rows: auto 5.602vw auto 5.602vw auto 5.602vw auto;
        grid-template-rows: repeat(4,auto);
        grid-column-gap: 14.006vw;
        grid-row-gap: 5.602vw;
        margin: 14.006vw auto 17.333vw;
        text-align: start
    }

    .header_gnav_link>*:nth-child(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }

    .header_gnav_link>*:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 3
    }

    .header_gnav_link>*:nth-child(3) {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }

    .header_gnav_link>*:nth-child(4) {
        -ms-grid-row: 3;
        -ms-grid-column: 3
    }

    .header_gnav_link>*:nth-child(5) {
        -ms-grid-row: 5;
        -ms-grid-column: 1
    }

    .header_gnav_link>*:nth-child(6) {
        -ms-grid-row: 5;
        -ms-grid-column: 3
    }

    .header_gnav_link>*:nth-child(7) {
        -ms-grid-row: 7;
        -ms-grid-column: 1
    }

    .header_gnav_link>*:nth-child(8) {
        -ms-grid-row: 7;
        -ms-grid-column: 3
    }

    .header_gnav_link_item01 {
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 1/1/2/2
    }

    .header_gnav_link_item02 {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 2/1/3/2
    }

    .header_gnav_link_item03 {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 3/1/4/2
    }

    .header_gnav_link_item04 {
        -ms-grid-row: 4;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 4/1/5/2
    }

    .header_gnav_link_item05 {
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 1/2/2/3
    }

    .header_gnav_link_item06 {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 2/2/3/3
    }

    .header_gnav_link_item07 {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 3/2/4/3
    }

    .entry,.event_internship {
        display: none
    }

    .gnav_cont_box_link {
        width: 84vw;
        margin: 0 auto
    }

    .entry.entry__gnav {
        display: block;
        position: relative;
        margin-top: 10px;
        height: 80px;
        padding: 0 90px;
        letter-spacing: 1px;
        color: #fff;
        background: #e5002d;
        border: 1px solid #fff;
        cursor: pointer
    }

    .entry.entry__gnav span:nth-child(2) {
        opacity: 0
    }

    .entry.entry__gnav span {
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        display: block;
        white-space: nowrap;
        font-size: 16px
    }

    .event_internship__gnav.event_internship {
        display: block;
        position: relative;
        height: 80px;
        padding: 0 135px;
        letter-spacing: 1px;
        color: #fff;
        background: #333;
        border: 1px solid #fff;
        cursor: pointer
    }

    .event_internship span {
        position: absolute;
        display: block;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        white-space: nowrap;
        font-size: 16px
    }
}

@media screen and (max-width: 576px) {
    .header {
        padding:20px
    }

    .logo {
        width: 80px
    }

    .header_logo_txt {
        font-size: 10px;
        white-space: nowrap
    }
}

@media(any-hover: hover) {
    .header_entry_container .entry:hover span:nth-child(1) {
        opacity:0
    }

    .header_entry_container .entry:hover span:nth-child(2) {
        opacity: 1
    }

    .event_internship:hover {
        background-color: #6f828e
    }

    .header_gnav_link_item:hover {
        opacity: .5
    }

    .header_gnav_itm:hover {
        opacity: .5
    }
}

.m_linmkbanner a {
    transition: .3s;
}

.m_linmkbanner a:hover {
    opacity: 0.6;
}
.footer {
    padding-bottom: 1rem
}

.external_site {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 50% (12.5%)[4];
    grid-template-columns: 50% repeat(4,12.5%);
    -ms-grid-rows: 5.208vw;
    grid-template-rows: 5.208vw;
    place-items: center;
    background-color: #fff;
    border-bottom: 2px solid #fafafa
}

.external_site>*:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1
}

.external_site>*:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
}

.external_site>*:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
}

.external_site>*:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4
}

.external_site>*:nth-child(5) {
    -ms-grid-row: 1;
    -ms-grid-column: 5
}

.external_site_itm {
    width: 100%;
    height: 100%;
    border-left: 2px solid #eee
}

.external_site_itm a {
    display: inline-block;
    padding: 5.602vw
}

.external_site_itm_01 {
    display: flex;
    justify-content: center;
    align-items: center;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1/1/2/2;
    font-size: 2.5rem;
    font-size: clamp(1.197vw,2.5rem,1.301vw)
}

.external_site_itm_02 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 1/2/2/3
}

.external_site_itm_03 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-area: 1/3/2/4
}

.external_site_itm_04 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 4;
    -ms-grid-column-span: 1;
    grid-area: 1/4/2/5
}

.external_site_itm_05 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 5;
    -ms-grid-column-span: 1;
    grid-area: 1/5/2/6
}

.external_site_itm__half {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

.external_site_itm__half span {
    display: block;
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    white-space: nowrap;
    opacity: 0
}

.sns_txt_pc {
    font-size: clamp(0.728vw,1.6rem,0.832vw)
}

@media screen and (max-width: 896px) {
    .sns_txt_sm {
        font-size:14px
    }

    .external_site_itm {
        height: auto
    }
}

.footer_nav {
    position: relative;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (auto)[2];
    grid-template-columns: repeat(2,auto);
    -ms-grid-rows: auto 10px auto;
    grid-template-rows: repeat(2,auto);
    grid-row-gap: 10px;
    padding-left: 5vw;
    font-size: 12px;
    background-color: #fff
}

.footer_nav figure {
    width: 42px
}

.footer_nav>*:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1
}

.footer_nav>*:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2
}

.footer_nav>*:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    text-align: left
}

.footer_nav>*:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 2
}

.footer_nav_lst {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1/1/2/2
}

.footer_nav_right {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 2/1/3/2;
    line-height: 1.75
}

.footer_nav_ico {
    position: absolute;
    right: 43px;
    top: 0;
    bottom: 0;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 1/2/3/3
}

.footer_nav_lst a:hover {
    color: rgba(0,0,0,.5)
}

@media(any-hover: hover) {
    .external_site_itm__half:hover figure {
        opacity:0
    }

    .external_site_itm__half:hover span {
        color: #fff;
        text-align: center;
        opacity: 1
    }
}

@media screen and (max-width: 896px) {
    .footer_nav {
        display:block;
        border-top: 1px solid #eee
    }

    .footer_nav_ico {
        position: relative;
        padding-top: 20px;
        border-top: 1px solid #eee
    }

    .footer_nav_right {
        margin-top: 20px;
        padding-bottom: 90px;
        font-size: 12px;
        text-align: center!important
    }

    .external_site {
        display: block
    }

    .external_site {
        margin-top: 90px
    }

    .external_site_itm {
        border-top: 1px solid #eee
    }

    .external_site_itm_01 {
        font-size: 25px
    }

    .external_site_itm__half {
        display: block
    }

    .external_site_itm__half figure {
        margin: 0 auto;
        width: 3.403vw
    }

    .external_site_itm__half p {
        line-height: 1;
        margin-top: 2.241vw
    }

    .footer_nav_lst {
        display: -ms-grid;
        display: grid;
        font-size: 12px;
        width: 64.426vw;
        margin: 5.602vw auto auto;
        -ms-grid-columns: auto 100px auto;
        grid-template-columns: repeat(2,auto);
        -ms-grid-rows: auto 0 auto 0 auto 0 auto;
        grid-template-rows: repeat(4,auto);
        grid-column-gap: 14.006vw;
        grid-row-gap: 5.602vw;
        flex-wrap: wrap;
        justify-items: start
    }

    .footer_nav_lst>*:nth-child(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }

    .footer_nav_lst>*:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 3
    }

    .footer_nav_lst>*:nth-child(3) {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }

    .footer_nav_lst>*:nth-child(4) {
        -ms-grid-row: 3;
        -ms-grid-column: 3
    }

    .footer_nav_lst>*:nth-child(5) {
        -ms-grid-row: 5;
        -ms-grid-column: 1
    }

    .footer_nav_lst>*:nth-child(6) {
        -ms-grid-row: 5;
        -ms-grid-column: 3
    }

    .footer_nav_lst>*:nth-child(7) {
        -ms-grid-row: 7;
        -ms-grid-column: 1
    }

    .footer_nav_lst>*:nth-child(8) {
        -ms-grid-row: 7;
        -ms-grid-column: 3
    }

    .footer_nav_item_01 {
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 1/1/2/2
    }

    .footer_nav_item_02 {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 2/1/3/2
    }

    .footer_nav_item_03 {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 3/1/4/2
    }

    .footer_nav_item_04 {
        -ms-grid-row: 4;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 4/1/5/2
    }

    .footer_nav_item_05 {
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 1/2/2/3
    }

    .footer_nav_item_06 {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 2/2/3/3
    }

    .footer_nav_item_07 {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-area: 3/2/4/3
    }

    .external_site_itm a {
        width: 100%
    }

    .external_site_itm_01 {
        text-align: center
    }

    @media(any-hover: hover) {
        .external_site_itm__half:hover span {
            opacity:0
        }
    }
}

@media screen and (max-width: 576px) {
    .external_site_itm__half figure {
        margin:0 auto;
        width: 8.403vw
    }
}

@media(any-hover: hover) {
    .external_site_itm:hover {
        background-color:#6f828e
    }

    .external_site_itm_01:hover {
        color: #fff
    }
}

body {
}

.sec_main_ttl {
    font-size: clamp(2.6rem,2.601vw,5rem);
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #333
}

.sec_ttl_en {
    margin: 3.122vw auto auto 5.203vw;
    font-size: clamp(1.5rem,1.561vw,3rem);
    line-height: 1.6;
    font-weight: 400;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #333;
    white-space: nowrap
}

.sec_ttl_en::before {
    content: "";
    width: 3.122vw;
    height: 2px;
    background: #e5002d;
    position: absolute;
    left: -5.203vw;
    top: 0;
    bottom: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.sec_ttl_en__alignC {
    text-align: center;
    margin: auto;
    padding-left: 0!important;
    padding-bottom: 20px
}

.sec_ttl_en__alignC::before {
    top: auto;
    bottom: 0;
    right: 0;
    left: 0
}

.recruit_freshers__arrow::before {
    content: "";
    width: 3.122vw;
    height: 3.122vw;
    max-width: 60px;
    max-height: 60px;
    background-image: url(/resource/img/recruit/2024_newcomer/link_arrow.png);
    background-size: contain;
    transition: .3s;
    z-index: 10
}

.recruit_freshers__arrow::after {
    content: "";
    width: 3.12vw;
    height: 3.12vw;
    max-width: 60px;
    max-height: 60px;
    background-image: url(/resource/img/recruit/2024_newcomer/link_arrow_hover.png);
    background-size: contain;
    z-index: 0
}

.header_entry_container .entry span,.header_entry_container .event_internship,.header_gnav_itm,.gnav_cont_box .g_tab,.header_gnav_link_item,.about_link_itm a,.message_txt__link,.message_txt__link::before,.interview_look a,.interview_look_inr::before,.interview_item01 a,.link_entrya,.link_entry span,.link_internship a,.link_contain_lst a,.external_site_itm,.external_site_itm__half figure,.external_site_itm .g_tab::before,.footer_nav_lst a,.interview_hover_item {
    transition: all cubic-bezier(.39,.575,.565,1) .3s
}

@media screen and (max-width: 896px) {
    .recruit_freshers__arrow::after {
        display:none
    }
}

@media screen and (max-width: 576px) {
    .recruit_freshers__arrow::before {
        width:8vw;
        height: 8vw
    }

    .sec_ttl_en {
        margin-left: 0;
        padding-left: 80px
    }

    .sec_ttl_en::before {
        width: 60px;
        left: 0
    }
}

.top {
    position: relative;
    margin-top: 175px
}

.mv_inr_contain {
    position: relative;
    display: flex;
    justify-content: space-between
}

.mv_txt {
    width: 41.883vw;
    margin-top: 7.552vw;
    padding: 0 0 4.167vw 10.504vw;
    background-image: url(/resource/img/recruit/2024_newcomer/mv_bg.png);
    background-size: 41.883vw;
    background-repeat: no-repeat;
    background-position: top left
}

.mv_ttl {
    margin: 3.642vw auto auto;
    padding-left: 0!important;
    padding-bottom: 20px;
    font-size: clamp(3.3rem,3.122vw,6rem);
    line-height: 2;
    letter-spacing: .12em;
    white-space: nowrap
}

.mv_ttl_en {
    display: block;
    padding-bottom: 1.977vw;
    font-size: clamp(1.6rem,1.3vw,2rem)
}

.mv_ttl_en::before {
    content: "";
    position: absolute;
    margin-top: calc((1em * 1.6) + 1em - 1px);
    width: 60px;
    height: 2px;
    top: auto;
    bottom: 0;
    background: #e5002d
}

.mv_img {
  width: 46.875vw;
  margin-right: 40px;
}

.scrolldown {
    position: absolute;
    width: 41.883vw;
    top: 38.625vw;
    left: 0
}

.scrolldown span {
    position: absolute;
    width: 45px;
    left: 50%;
    right: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #333;
    font-size: 10px;
    letter-spacing: .05em
}

.scrolldown::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 80vw;
    top: 30px;
    left: 50%;
    right: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #333;
    -webkit-animation: scrollmove 2s ease-in-out infinite;
    animation: scrollmove 2s ease-in-out infinite;
    opacity: 0
}

@-webkit-keyframes scrollmove {
    0% {
        height: 0;
        opacity: 0
    }

    30% {
        opacity: 1
    }

    100% {
        height: 13.609vw;
        opacity: 0
    }
}

@keyframes scrollmove {
    0% {
        height: 0;
        opacity: 0
    }

    30% {
        opacity: 1
    }

    100% {
        height: 15.609vw;
        opacity: 0
    }
}

@media screen and (min-width: 1921px) {
    .mv {
        background-image:none
    }

    .mv_inr {
        position: relative
    }

    .mv_inr_contain {
        display: flex;
        justify-content: center;
        gap: 125px
    }

    .mv_img {
        padding-right: 90px
    }

    .mv_txt {
        margin-top: 0;
        padding: 100px 80px 0
    }

    .mv_ttl {
        margin: 32px auto auto;
        padding-left: 0!important;
        padding-bottom: 20px;
        font-size: clamp(3.3rem,3.122vw,6rem);
        line-height: 2;
        letter-spacing: .12em;
        white-space: nowrap
    }

    .mv_ttl_en {
        margin-top: 20px;
        padding-bottom: 38px;
        font-size: clamp(1.6rem,1.3vw,2rem)
    }

    .mv_ttl_en::before {
        margin-top: 38px;
        width: 60px
    }

    .scrolldown {
        position: absolute;
        width: 41.883vw;
        top: 33.625vw
    }
}

@media screen and (max-width: 896px) {
    .top {
        margin-top:90px
    }

    .mv {
        margin-top: 70px
    }

    .mv_txt {
        width: 90vw;
        padding: 0;
        margin: auto;
        background-image: none
    }

    .mv_ttl {
        margin-top: 2.667vw;
        padding-bottom: 0
    }

    .mv_ttl_en::before {
        width: 23px
    }

    .mv_inr_contain {
        display: block;
        background-image: url(/resource/img/recruit/2024_newcomer/mv_bg.png);
        background-repeat: no-repeat
    }

    .mv_img {
        width: 78.667vw;
        margin: 18.667vw 0 0 auto
    }

    .scrolldown {
        width: auto;
        margin-top: 0;
        left: 5vw;
        top: 129.333vw
    }

    .scrolldown span {
        position: relative;
        left: auto;
        right: auto;
        -webkit-transform: none;
        transform: none
    }

    .scrolldown::after {
        width: 1px
    }

    @-webkit-keyframes scrollmove {
        0% {
            height: 0;
            opacity: 0
        }

        30% {
            opacity: 1
        }

        100% {
            height: 29.333vw
        }
    }

    @keyframes scrollmove {
        0% {
            height: 0;
            opacity: 0
        }

        30% {
            opacity: 1
        }

        100% {
            height: 29.333vw
        }
    }
}

.sec_speed_challenge {
    position: relative;
    margin-top: 4.167vw
}

.speed_challenge_bg {
    width: 53.802vw;
    max-width: 1035px;
    margin-left: auto
}

.speed_challenge_contain {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    gap: 3.226vw
}

.speed_challenge_txt {
}

.speed_challenge_img__container {
    max-width: 1033px;
    order: 2
}

.speed_challenge_img01 {
    position: absolute;
    width: 24.558vw;
    max-width: 470px;
    top: 6.2%;
    right: 20.625%
}

.speed_challenge_img02 {
    position: absolute;
    width: 18.106vw;
    max-width: 350px;
    top: 47.8%;
    right: -3.75%
}

.speed_challenge_description__contain {
    width: 37.5vw;
    max-width: 600px;
    margin: 5.203vw 0 0 60px;
    font-family: noto sans jp
}

.speed_challenge_description {
    font-size: .832vw;
    font-size: clamp(1.4rem,0.832vw,1.6rem);
    font-weight: 400;
    line-height: 2
}

.speed_challenge_description:nth-of-type(2),.speed_challenge_description:nth-of-type(3),.speed_challenge_description:nth-of-type(4) {
    margin-top: 2.081vw
}

@media screen and (min-width: 1920px) {
    .speed_challenge_bg {
        position:relative;
        right: calc((100vw - 1920px)/2)
    }
}

@media screen and (max-width: 1110px) {
    .speed_challenge_bg {
        position:absolute;
        top: 0;
        right: 0
    }

    .speed_challenge_contain {
        position: static;
        display: block
    }

    .speed_challenge_description {
        line-height: 1.5
    }

    .speed_challenge_description__contain {
        width: 100%;
        max-width: none;
        margin-left: 0
    }

    .speed_challenge_img__container {
        width: 100%
    }

    .speed_challenge_img01 {
        width: 49.333vw;
        max-width: none;
        padding-top: 70px;
        top: 100px;
        left: 2.6vw;
        right: auto;
        padding-bottom: 0
    }

    .speed_challenge_img02 {
        position: relative;
        width: 41.176vw;
        padding-top: 70px;
        margin-left: auto;
        max-width: none;
        top: 140px;
        right: -1.3vw
    }

    .speed_challenge_txt {
        margin-top: 190px
    }
}

@media screen and (max-width: 896px) {
    .sec_speed_challenge {
        margin-top:29.333vw
    }

    .speed_challenge_bg {
        width: 83.7%
    }

    .speed_challenge_img01 {
        top: 26.667vw;
        padding-top: 0
    }

    .speed_challenge_img02 {
        top: 39.216vw;
        padding-top: 0
    }

    .sec_ttl__speed_challenge {
        margin-top: 3.348vw
    }

    .speed_challenge_txt {
        margin-top: 45vw
    }
}

@media screen and (max-width: 576px) {
    .speed_challenge_txt {
        margin-top:55vw
    }

    .sec_ttl__speed_challenge {
        margin-top: 8vw
    }
}

.sec_message {
    margin-top: 8vw
}

.message_contain {
    gap: 5.203vw
}

.message_img_name {
    margin-top: .78vw;
    font-size: .832vw;
    font-size: clamp(1.4rem,0.832vw,1.6rem);
    font-weight: 400
}

.message_txt__contain {
    margin-left: auto;
    width: 35.9vw;
    max-width: 690px;
    font-family: noto sans jp
}

.message_txt {
    margin-top: 5.203vw;
    font-size: clamp(1.4rem,0.937vw,1.8rem);
    font-weight: 400;
    line-height: 2
}

.message_txt_btm {
    margin-top: .78vw
}

.message_txt__link {
    display: inline-block;
    font-size: clamp(1.4rem,0.832vw,1.6rem);
    font-weight: 400;
    line-height: 2.5
}

.message_txt__contain a {
    display: inline-block;
    margin-top: 2.601vw;
    padding: 0 4.162vw 0 0
}

.message_txt__link::before {
    top: 0;
    bottom: 0;
    right: -4.122vw
}

.message_txt__link::after {
    width: 3vw;
    height: 2.8vw;
    top: 0;
    bottom: 0;
    right: -4.122vw
}

@media(any-hover: hover) {
    .message_txt__contain a:hover .message_txt__link {
        color:rgba(0,0,0,.5)
    }

    .message_txt__contain a:hover .recruit_freshers__arrow::before {
        opacity: 0
    }
}

@media screen and (max-width: 896px) {
    .message_contain {
        display:block
    }

    .message_txt__contain {
        margin: 0 auto;
        width: 100%
    }

    .message_txt {
        line-height: 1.5
    }

    .message_txt_btm {
        margin-top: 13.333vw
    }

    .message_txt__link {
        margin-top: 5.602vw
    }

    .message_txt__link:before {
        width: 8vw;
        height: 8vw;
        right: -10.801vw
    }

    @media(any-hover: hover) {
        .message_txt__contain a:hover .recruit_freshers__arrow::before {
            opacity:1
        }
    }
}

.sec_news {
    margin-top: 120px
}

.sec_news>div {
    gap: 5.203vw
}

.news_ttl {
    width: 4.162vw;
    font-size: clamp(1.8rem,0.937vw,1.8rem);
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 2.08;
    white-space: nowrap
}

.news_contain {
    width: 1000px;
    margin: 0 auto;
    padding: 1.041vw 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee
}

.news_lst {
    max-width: 900px
}

.news_lst_item {
    gap: 1.301vw
}

.news_lst__data {
    font-size: 1.4rem;
    font-weight: 400;
    font-family: noto sans jp;
    color: #6f828e;
    line-height: 1.714
}

.news_lst__txt {
    font-size: 1.4rem;
    font-weight: 400;
    font-family: noto sans jp;
    color: #333;
    line-height: 1.75
}

@media screen and (max-width: 894px) {
    .sec_news {
        margin-top:90px
    }

    .news_contain {
        display: block;
        width: 100%;
        padding: 5.602vw 0
    }

    .news_ttl {
        width: 100%;
        text-align: center;
        line-height: 2
    }

    .news_lst {
        width: 100%;
        margin-top: 20px
    }

    .news_lst__data {
        font-size: 1rem
    }

    .news_lst_item {
        display: block;
        margin-top: 10px
    }

    .news_lst__txt {
        margin-top: 2px;
        font-size: 1.2rem
    }
}

.sec_about {
    margin-top: 130px
}

.sec_about::before {
    content: "";
    background: url(/resource/img/recruit/2024_newcomer/mv_bg.png);
    background-repeat: no-repeat;
    width: 36.42vw;
    height: 20.812vw;
    top: 0;
    left: 0;
    z-index: -1
}

.sec_about_inr {
    gap: 4.688vw
}

.sec_ttl__about {
    white-space: nowrap
}

.sec_main_ttl__about {
    white-space: nowrap
}

.sec_ttl__about::before {
    bottom: -2.604vw;
    bottom: -50px
}

.sec_main_ttl__about_sub {
    font-size: clamp(1.9rem,1.563vw,3rem);
    font-weight: 400;
    line-height: 2.6
}

.sec_main_ttl__about_sub_txt {
    margin: auto;
    font-size: 1.6rem;
    line-height: 2.5
}

.about_link_lst {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 32.882vw 2px 32.882vw 2px 32.882vw;
    grid-template-columns: repeat(3,1fr);
    -ms-grid-rows: 15.609vw 2px 15.609vw 2px 15.609vw;
    grid-template-rows: repeat(3,1fr);
    grid-column-gap: 2px;
    grid-row-gap: 2px;
    margin-top: 6.764vw;
    border: 10px solid #e8e8e8;
    background: #e8e8e8;
    position: relative
}

.about_link_lst>*:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1
}

.about_link_lst>*:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3
}

.about_link_lst>*:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5
}

.about_link_lst>*:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1
}

.about_link_lst>*:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3
}

.about_link_lst>*:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5
}

.about_link_lst>*:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 1
}

.about_link_lst>*:nth-child(8) {
    -ms-grid-row: 5;
    -ms-grid-column: 3
}

.about_link_lst>*:nth-child(9) {
    -ms-grid-row: 5;
    -ms-grid-column: 5
}

.about_link_itm01 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1/1/2/2
}

.about_link_itm02 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 1/2/2/3
}

.about_link_itm03 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-area: 1/3/2/4
}

.about_link_itm04 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 2/1/3/2
}

.about_link_itm05 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 2/2/3/3
}

.about_link_itm06 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-area: 2/3/3/4
}

.about_link_itm07 {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 3/1/4/2
}

.about_link_itm08 {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 3/2/4/3
}

.about_link_itm09 {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-area: 3/3/4/4
}

.about_link_itm::before {
    top: 70%;
    left: 85%
}

.about_link_itm::after {
    width: 3.122vw;
    height: 3.122vw;
    top: 70%;
    left: 85%
}

.about_link_itm__txt {
    position: absolute;
    top: 13.3%;
    left: 6.3%;
    font-size: clamp(18px,1.353vw,26px);
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    z-index: 1
}

.about_link_itm__txt:before {
    content: attr(data-about);
    position: absolute;
    display: block;
    top: 2.081vw;
    font-size: clamp(15px,0.937vw,18px);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .06em;
    color: #fff;
    white-space: nowrap
}

@media(any-hover: hover) {
    .about_link_itm a:hover {
        -webkit-filter:brightness(.4);
        filter: brightness(.4)
    }

    .about_link_itm:hover::before {
        opacity: 0
    }

    @media screen and (max-width: 896px) {
        .about_link_itm:hover::before {
            width:8vw;
            height: 8vw
        }
    }
}

@media screen and (min-width: 1921px) {
    .about_link_lst {
        -ms-grid-rows:(300px)[3];
        grid-template-rows: repeat(3,300px)
    }

    .about_link_itm__img {
        width: 100%;
        height: 300px;
        overflow: hidden
    }
}

@media screen and (max-width: 896px) {
    .sec_about {
        margin-top:90px
    }

    .sec_about_inr {
        display: block
    }

    .about_link_lst {
        display: block;
        margin-top: 60px
    }

    .about_link_itm {
        width: 100%;
        height: auto;
        margin-top: 2px
    }

    .about_link_itm figure {
        width: 100%
    }

    .sec_about_inr::before {
        background: 0 0
    }

    .sec_about::before {
        background: url(/resource/img/recruit/2024_newcomer/mv_bg_sp.png);
        background-repeat: no-repeat;
        top: 0;
        left: 0;
        width: 249.6vw;
        height: 137.867vw
    }

    .about_link_itm::before {
        width: 8vw;
        height: 8vw
    }

    .about_link_itm::after {
        width: 8vw;
        height: 8vw
    }

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

    .about_link_itm__txt {
        top: 14.2%;
        left: 5.3%;
        line-height: 2.16
    }

    .about_link_itm__txt:before {
        top: 8vw;
        line-height: 1.8;
        letter-spacing: .06em
    }

    @media(any-hover: hover) {
        .about_link_itm:hover::before {
            opacity:1
        }
    }
}

.sec_interview {
    padding-top: 180px;
    padding-bottom: 8.325vw;
    background-image: repeating-linear-gradient( 90deg,#EEEEEE,#EEEEEE 2px,transparent 2px,transparent 160px ),repeating-linear-gradient( 0deg,#EEEEEE,#EEEEEE 2px,transparent 2px,transparent 180px )
}

.sec_ttl_en__alignC__interview {
    margin-top: 1.665vw
}

.interview_slider_wrap {
    margin-top: 160px
}

.interview_slider {
    width: 100%
}

.interview_slider_itm {
    width: 100%
}

.interview_slider_arrow {
    position: relative
}

.interview_slider_btm {
    margin-left: 15px
}

.interview_look {
    display: inline-block;
    text-align: end
}

.interview_look a {
    display: inline-block;
    margin-top: 1.301vw;
    padding: .52vw 4.162vw .52vw 0;
    line-height: 0;
    font-size: .832vw;
    font-size: clamp(1.4rem,0.832vw,1.6rem);
    font-weight: 400
}

.interview_look_inr {
    display: inline-block;
    font-size: clamp(1.4rem,0.832vw,1.6rem);
    font-weight: 400;
    line-height: 2.5
}

.interview_look_inr::before {
    top: 0;
    bottom: 0;
    right: -4.162vw
}

.interview_look_inr::after {
    width: 3vw;
    height: 2.9vw;
    top: 0;
    bottom: 0;
    right: -4.162vw
}

.interview_wrap {
    position: relative;
    width: 100%;
    max-width: 1600px;
    margin: 4.266vw auto 0
}

.interview_container {
    display: -ms-grid;
    display: grid;
    height: 913px;
    -ms-grid-rows: 506px 2px 405px;
    -ms-grid-columns: 520px 2px 714px 2px 362px;
    grid-template: "interview_item01 interview_item02 interview_item03" 506px "interview_item04 interview_item05 interview_item06" 405px/520px 714px 362px;
    gap: 2px
}

.interview_item01 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: interview_item01
}

.interview_item02 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: interview_item02;
    height: 404px
}

.interview_item03 {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    grid-area: interview_item03;
    height: 404px
}

.interview_item04 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    grid-area: interview_item04
}

.interview_item05 {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    grid-area: interview_item05;
    width: 459px;
    margin-top: -102px;
    height: 507px
}

.interview_item06 {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
    grid-area: interview_item06;
    margin-left: -255px;
    margin-top: -102px;
    width: 617px;
    height: 507px
}

.interview_item {
    position: relative;
    overflow: hidden
}

.interview_hover_item {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 1.821vw;
    width: 100%;
    height: 100%;
    padding: 2.341vw 1.041vw;
    top: inherit;
    left: 0;
    bottom: 0;
    background-color: rgba(0,0,0,.4)
}

.interview_hover_txt {
    display: block;
    font-size: clamp(1.4rem,1.041vw,2rem);
    font-weight: 400;
    line-height: 1.5;
    color: #fff
}

.interview_hover_txt+.interview_hover_txt {
    display: block
}

.slick-slide {
    height: auto!important
}

@media(any-hover: hover) {
    .interview_item:hover .interview_hover_item {
        background-color:transparent
    }

    .interview_look a:hover {
        color: rgba(0,0,0,.5)
    }

    .interview_look a:hover .interview_look_inr::before {
        opacity: 0
    }
}

@media(max-width: 1600px) {
    .interview_container {
        height:57.063vw;
        -ms-grid-rows: 31.625vw .125vw 25.313vw;
        -ms-grid-columns: 32.5vw .125vw 44.625vw .125vw 22.625vw;
        grid-template: "interview_item01 interview_item02 interview_item03" 31.625vw "interview_item04 interview_item05 interview_item06" 25.313vw/32.5vw 44.625vw 22.625vw;
        gap: .125vw
    }

    .interview_item02 {
        height: 25.25vw
    }

    .interview_item03 {
        height: 25.25vw
    }

    .interview_item05 {
        width: 28.688vw;
        margin-top: -6.375vw;
        height: 31.688vw
    }

    .interview_item06 {
        margin-left: -15.937vw;
        margin-top: -6.375vw;
        width: 38.563vw;
        height: 31.688vw
    }

    .interview_item01 {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }

    .interview_item02 {
        -ms-grid-row: 1;
        -ms-grid-column: 3
    }

    .interview_item03 {
        -ms-grid-row: 1;
        -ms-grid-column: 5
    }

    .interview_item04 {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }

    .interview_item05 {
        -ms-grid-row: 3;
        -ms-grid-column: 3
    }

    .interview_item06 {
        -ms-grid-row: 3;
        -ms-grid-column: 5
    }
}

@media(max-width: 896px) {
    .interview_slider_wrap {
        width:100%
    }

    .interview_slider {
        width: 100vw;
        margin-right: 0
    }

    .interview_slider_itm {
        max-width: 24.9vw;
        padding: 15px
    }

    .interview_slider_itm .g_info_itm_thum_img::before {
        font-size: 2rem
    }

    .interview_slider_arrow {
        position: relative
    }

    @media(any-hover: hover) {
        .interview_look a:hover .interview_look_inr::before {
            opacity:1
        }
    }
}

@media(max-width: 576px) {
    .sec_interview {
        padding-top:90px
    }

    .sec_ttl_en__alignC__interview {
        margin-top: 20px
    }

    .interview_container__sp {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        -ms-grid-rows: 32vw 2px 32vw 2px 32vw;
        grid-template-rows: repeat(3,32vw);
        grid-column-gap: 0;
        grid-row-gap: 2px
    }

    .interview_container__sp>*:nth-child(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1
    }

    .interview_container__sp>*:nth-child(2) {
        -ms-grid-row: 3;
        -ms-grid-column: 1
    }

    .interview_container__sp>*:nth-child(3) {
        -ms-grid-row: 5;
        -ms-grid-column: 1
    }

    .interview_container__sp div::before {
        content: attr(data-interview);
        display: block;
        position: absolute;
        width: 19.467vw;
        bottom: 4vw;
        right: 14.667vw;
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 1.7;
        letter-spacing: .06em;
        color: #fff
    }

    .interview_container__sp .interview_item03__sp::before {
        width: 17.333vw;
        max-width: 65px;
        right: 21.867vw
    }

    .interview_container__sp div::after {
        content: "";
        width: 8vw;
        height: 8vw;
        bottom: 2.667vw;
        right: 4vw;
        background-image: url(/resource/img/recruit/2024_newcomer/link_arrow.png);
        background-size: contain;
        z-index: 201
    }

    .interview_item01__sp {
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 1/1/2/2
    }

    .interview_item02__sp {
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 2/1/3/2
    }

    .interview_item03__sp {
        -ms-grid-row: 3;
        -ms-grid-row-span: 1;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-area: 3/1/4/2
    }

    .interview_item01__sp,.interview_item02__sp,.interview_item03__sp,.interview_item04__sp,.interview_item05__sp,.interview_item06__sp {
        width: 100%;
        height: 32vw
    }

    .interview_look {
        margin-top: 50px;
        text-align: center
    }

    .interview_look_inr::before {
        width: 11.204vw;
        height: 11.204vw;
        top: 0;
        bottom: 0;
        right: -14.006vw
    }

    .interview_hover_item_sp {
        position: absolute;
        right: 14.667vw;
        bottom: 2.667vw
    }

    .interview_hover_txt_sp {
        display: block;
        font-size: clamp(1.8rem,1.041vw,2rem);
        font-weight: 400;
        line-height: 1.5;
        color: #fff
    }
}

.link_entry span {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    display: block;
    white-space: nowrap
}

.link_entry span:nth-child(2) {
    opacity: 0
}

.link_entry a {
    display: block;
    position: relative;
    width: 100%;
    padding: 11.198vw 0;
    font-size: clamp(50px,5.203vw,100px);
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 1px;
    text-align: center;
    color: #fff;
    background-color: #e5002d;
    border-bottom: 2px solid #fafafa
}

.link_internship a {
    display: block;
    width: 100%;
    padding: 8.854vw 0;
    font-size: clamp(25px,2.601vw,50px);
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
    color: #fff;
    background-color: #333;
    border-bottom: 2px solid #fafafa
}

.link_contain_item {
    padding: 2.081vw;
    aspect-ratio: 319/140
}

.link_casual {
    content: '';
    background-image: url(/resource/img/recruit/2024_newcomer/link__casual_interview.jpg);
    background-size: contain;
    background-repeat: no-repeat
}

.link_application {
    content: '';
    background-image: url(/resource/img/recruit/2024_newcomer/link__application_requirements.jpg);
    background-size: contain;
    background-repeat: no-repeat
}

.link_qaf {
    content: '';
    background-image: url(/resource/img/recruit/2024_newcomer/link__qaf.jpg);
    background-size: contain;
    background-repeat: no-repeat
}

.link_contain_item>p {
    font-size: clamp(1.8rem,1.353vw,2.6rem);
    font-weight: 400;
    line-height: 1.5;
    color: #fff
}

.link_casual>p::before,.link_application>p::before,.link_qaf>p::before {
    content: attr(data-link);
    position: absolute;
    display: block;
    bottom: -16px;
    left: 0;
    font-size: clamp(1.5rem,0.937vw,1.8rem);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: 1px;
    color: #fff
}

.link_contain_lst {
    position: relative
}

.link_contain_lst::before {
    top: 70%;
    left: 85%
}

.link_contain_lst::after {
    top: 70%;
    left: 85%
}

@media screen and (max-width: 896px) {
    .sec_link {
        margin-top:10vw
    }

    .link_entry a {
        padding: 170px 0 155px;
        border: none
    }

    .link_internship a {
        padding: 80px;
        line-height: 1.68;
        border: none
    }

    .link_contain {
        display: block
    }

    .link_contain_item {
        padding: 5.333vw;
        aspect-ratio: 375/140
    }

    .link_casual {
        background-image: url(/resource/img/recruit/2024_newcomer/link__casual_interview_sp.jpg)
    }

    .link_application {
        background-image: url(/resource/img/recruit/2024_newcomer/link__application_requirements_sp.jpg)
    }

    .link_qaf {
        background-image: url(/resource/img/recruit/2024_newcomer/link__qaf_sp.png)
    }

    .link_contain_lst+.link_contain_lst {
        margin-top: 2px
    }

    .link_contain_lst::before {
        width: 8vw;
        height: 8vw
    }

    .link_contain_lst::after {
        width: 8vw;
        height: 8vw
    }
}

@media(any-hover: hover) {
    .link_contain_lst a:hover {
        -webkit-filter:brightness(.4);
        filter: brightness(.4)
    }

    .link_entry a:hover {
        background-color: #333
    }

    .link_internship a:hover {
        background-color: #6f828e
    }

    .link_entry:hover span:nth-child(1) {
        opacity: 0
    }

    .link_entry:hover span:nth-child(2) {
        opacity: 1
    }

    .link_contain_lst:hover::before {
        opacity: 0
    }
}

.qr2024_contain {
    margin: 245px auto
}

.qr2024_txt {
    margin-top: 125px;
    font-size: 1.8rem;
    line-height: 1.5
}

.qr2024_img {
    width: 200px;
    margin: 0 auto
}

.qr2024_btn {
    background-color: #6f828e;
    color: #fff;
    display: inline-block;
    padding: 30px 120px;
    line-height: 1
}

.qr2024_btn::before {
    content: "";
    width: 15px;
    height: 15px;
    margin: auto;
    left: 20px;
    top: 0;
    bottom: 0;
    background-image: url(/resource/img/recruit/2024_newcomer/qr_arrow.png)
}

.qr_ttl {
    font-size: 5rem;
    letter-spacing: .12em;
    line-height: 1
}

.qr_ttl:before {
    content: attr(data-qr);
    position: absolute;
    display: block;
    font-size: 3rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .06em;
    color: #333;
    white-space: nowrap;
    left: 0;
    right: 0;
    bottom: -55px
}

@media screen and (max-width: 576px) {
    .qr2024_contain {
        width:90vw;
        margin: 160px auto 90px
    }

    .qr2024_txt {
        margin-top: 90px;
        line-height: 1.75;
        text-align: left
    }

    .qr_ttl {
        font-size: 3.5rem
    }

    .qr_ttl:before {
        font-size: 2rem
    }
}

.m_keyvisual__2024 {
    position: relative;
    max-width: 765px;
    width: 100%;
    margin: 125px auto 85px;
    padding-bottom: 375px
}
.m_keyvisual__2024--include__iframe{
  padding-bottom: 0;
}
.l_base--730w .m_keyvisual__2024 {
    width: 100%;
}


.m_keyvisual_about {
colauisor: #333;
    line-height: 1.6;
    font-size: 40px;
    padding: 0;
    border-bottom: none;
    top: -65px;
    right: 0;
    text-align: start;
    z-index: 1
}

.m_keyvisual_about::before {
    position: absolute;
    display: block;
    top: 65px;
    left: 10px;
    font-size: 25px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 1px;
    color: #333;
    white-space: nowrap
}

.m_keyvisual_about--about::before {
    content: "ABOUT"
}
.m_keyvisual_about--president::before {
    content: "MESSAGE"
}
.m_keyvisual_about--purpose::before {
    content: "PURPOSE"
}
.m_keyvisual_about--training::before {
    content: "EDUCATION"
}
.m_keyvisual_about--wanted::before {
    content: "SPEED&CHALLENGE"
}
.m_keyvisual_about--naiteisya-pj::before {
    content: "PROJECT"
}
.m_keyvisual_about--branch::before {
    content: "WORKFLOW"
}
.m_keyvisual_about--faq::before {
    content: "Q&A"
}
.m_keyvisual_about--summary::before {
    content: "APPLICATION REQUIREMENTS"
}

.m_keyvisual_about--sales::before {
    content: "CONSULTING"
}
.m_keyvisual_about--energy::before {
    content: "ENERGY"
}
.m_keyvisual_about--se::before {
    content: "SYSTEM"
}
.m_keyvisual_about--designer::before {
    content: "DESIGNER"
}
.m_keyvisual_about--content::before {
    content: "DEVELOPMENT"
}


.m_keyvisual__2024_img {
    position: absolute;
    max-width: 720px;
    width: 100%;
    right: 0
}

@media screen and (max-width: 768px) {
    .m_keyvisual__2024 {
        position:relative;
        width: auto;
        margin: 185px 0 0;
        padding-bottom: 250px
    }
    .m_keyvisual--wanted {
        background-image: none
    }
    .m_keyvisual__2024--include__iframe{
        padding-bottom: 0;
    }
    .m_keyvisual__ttl__2024 {
        position: absolute;
        font-size: 30px;
        top: -140px;
        left: 10px
    }

    .m_keyvisual__2024_img {
        width: 100%
    }

    .m_keyvisual__2024_img img{
        height: 228px;
        object-fit: cover;
    }

    .l_base--730w .m_keyvisual__2024_img img{
        object-position: top;
    }

    .m_keyvisual__ttl__2024::before {
        top: 95px;
        font-size: 20px
    }
}

.m_iframeBox{
  margin: 20px auto;
  max-width: 765px;
}
.m_iframeBox__inner{
  position: relative;
  width: 100%;
  padding-top: calc(100%* 9 / 16);
}
.m_iframeBox__inner > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.g_breadcrumb {
    padding: 25px 0;
    background-color: #fff
}

.g_breadcrumb_lst {
    margin-bottom: 120px
}

.g_breadcrumb_lst_li {
    position: relative;
    font-size: 16px;
    line-height: 1.5
}

.g_breadcrumb_lst_li+.g_breadcrumb_lst_li {
    display: flex;
    padding-left: 2.5em
}

.g_breadcrumb_lst_li+.g_breadcrumb_lst_li::before {
    content: "";
    position: absolute;
    margin: auto;
    width: 9px;
    height: 9px;
    top: .4em;
    left: .85em;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.g_breadcrumb_lst_li a {
    transition: color .2s
}

@media(max-width: 896px) {
    .g_breadcrumb {
        padding:15px 0
    }

    .g_breadcrumb_lst {
        margin-bottom: 60px;
        overflow-x: scroll;
        white-space: nowrap
    }

    .g_breadcrumb_lst_li {
        display: inline-block;
        font-size: 12px;
        white-space: nowrap
    }
}

@media(max-width: 576px) {
    .g_breadcrumb {
        padding:4vw 0
    }
}

@media(any-hover: hover) {
    .g_breadcrumb_lst_li a:hover {
        opacity:.7
    }
}