.u-fe {
    display: flex;

    justify-content: flex-end;
    align-items: center;
}

.u-flex {
    display: flex;

    flex-wrap: wrap;
}

.u-flex.fe-aj {
    justify-content: flex-end;
    align-items: flex-end;
}

.u-flex.fe-a {
    align-items: flex-end;
}

.u-flex.fe-j {
    justify-content: flex-end;
}

.u-flex.fs-aj {
    justify-content: flex-start;
    align-items: flex-start;
}

.u-flex.fs-a {
    justify-content: flex-start;
    align-items: center;
}

.u-flex.fs-j {
    justify-content: flex-start;
}

.u-flex.fc-aj {
    justify-content: center;
    align-items: center;
}

.u-flex.fc-a {
    align-items: center;
}

.u-flex.fc-j {
    justify-content: center;
}

.u-flex.fsb-j {
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .u-flex__sp-rev {
        flex-direction: column-reverse;
    }
}

.u-pt__n {
    padding-top: 0 !important;
}

.u-pt__xs {
    padding-top: 8px;
}

@media screen and (max-width: 768px) {
    .u-pt__xs {
        padding-top: 1.4018691589vw;
    }

    .u-pt__xs-sp {
        padding-top: 1.4018691589vw;
    }
}

.u-pt__sm {
    padding-top: 16px;
}

@media screen and (max-width: 768px) {
    .u-pt__sm {
        padding-top: 2.8037383178vw;
    }

    .u-pt__sm-sp {
        padding-top: 2.8037383178vw;
    }
}

.u-pt__base {
    padding-top: 24px;
}

@media screen and (max-width: 768px) {
    .u-pt__base {
        padding-top: 3.738317757vw;
    }

    .u-pt__base-sp {
        padding-top: 3.738317757vw;
    }
}

.u-pt__lg {
    padding-top: 32px;
}

@media screen and (max-width: 768px) {
    .u-pt__lg {
        padding-top: 5.6074766355vw;
    }

    .u-pt__lg-sp {
        padding-top: 5.6074766355vw;
    }
}

.u-pt__xl {
    padding-top: 48px;
}

@media screen and (max-width: 768px) {
    .u-pt__xl {
        padding-top: 7.476635514vw;
    }

    .u-pt__xl-sp {
        padding-top: 7.476635514vw;
    }
}

.u-pt__2xl {
    padding-top: 64px;
}

@media screen and (max-width: 768px) {
    .u-pt__2xl {
        padding-top: 11.214953271vw;
    }

    .u-pt__2xl-sp {
        padding-top: 11.214953271vw;
    }
}

.u-pt__3xl {
    padding-top: 80px;
}

@media screen and (max-width: 768px) {
    .u-pt__3xl {
        padding-top: 14.953271028vw;
    }

    .u-pt__3xl-sp {
        padding-top: 14.953271028vw;
    }
}

.u-pt__4xl {
    padding-top: 96px;
}

@media screen and (max-width: 768px) {
    .u-pt__4xl {
        padding-top: 14.953271028vw;
    }

    .u-pt__4xl-sp {
        padding-top: 14.953271028vw;
    }
}

.u-pt__5xl {
    padding-top: 128px;
}

@media screen and (max-width: 768px) {
    .u-pt__5xl {
        padding-top: 22.4299065421vw;
    }

    .u-pt__5xl-sp {
        padding-top: 22.4299065421vw;
    }
}

.u-pb__xs {
    padding-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .u-pb__xs {
        padding-bottom: 1.4018691589vw;
    }

    .u-pb__xs-sp {
        padding-bottom: 1.4018691589vw;
    }
}

.u-pb__sm {
    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .u-pb__sm {
        padding-bottom: 2.8037383178vw;
    }

    .u-pb__sm-sp {
        padding-bottom: 2.8037383178vw;
    }
}

.u-pb__base {
    padding-bottom: 24px;
}

@media screen and (max-width: 768px) {
    .u-pb__base {
        padding-bottom: 3.738317757vw;
    }

    .u-pb__base-sp {
        padding-bottom: 3.738317757vw;
    }
}

.u-pb__lg {
    padding-bottom: 32px;
}

@media screen and (max-width: 768px) {
    .u-pb__lg {
        padding-bottom: 5.6074766355vw;
    }

    .u-pb__lg-sp {
        padding-bottom: 5.6074766355vw;
    }
}

.u-pb__xl {
    padding-bottom: 48px;
}

@media screen and (max-width: 768px) {
    .u-pb__xl {
        padding-bottom: 7.476635514vw;
    }

    .u-pb__xl-sp {
        padding-bottom: 7.476635514vw;
    }
}

.u-pb__2xl {
    padding-bottom: 64px;
}

@media screen and (max-width: 768px) {
    .u-pb__2xl {
        padding-bottom: 11.214953271vw;
    }

    .u-pb__2xl-sp {
        padding-bottom: 11.214953271vw;
    }
}

.u-pb__3xl {
    padding-bottom: 80px;
}

@media screen and (max-width: 768px) {
    .u-pb__3xl {
        padding-bottom: 14.953271028vw;
    }

    .u-pb__3xl-sp {
        padding-bottom: 14.953271028vw;
    }
}

.u-pb__4xl {
    padding-bottom: 96px;
}

@media screen and (max-width: 768px) {
    .u-pb__4xl {
        padding-bottom: 14.953271028vw;
    }

    .u-pb__4xl-sp {
        padding-bottom: 14.953271028vw;
    }
}

.u-pb__5xl {
    padding-bottom: 128px;
}

@media screen and (max-width: 768px) {
    .u-pb__5xl {
        padding-bottom: 22.4299065421vw;
    }

    .u-pb__5xl-sp {
        padding-bottom: 22.4299065421vw;
    }
}

.u-pr__xs {
    padding-right: 8px;
}

@media screen and (max-width: 768px) {
    .u-pr__xs {
        padding-right: 1.4018691589vw;
    }

    .u-pr__xs-sp {
        padding-right: 1.4018691589vw;
    }
}

.u-pr__sm {
    padding-right: 16px;
}

@media screen and (max-width: 768px) {
    .u-pr__sm {
        padding-right: 2.8037383178vw;
    }

    .u-pr__sm-sp {
        padding-right: 2.8037383178vw;
    }
}

.u-pr__base {
    padding-right: 24px;
}

@media screen and (max-width: 768px) {
    .u-pr__base {
        padding-right: 3.738317757vw;
    }

    .u-pr__base-sp {
        padding-right: 3.738317757vw;
    }
}

.u-pr__lg {
    padding-right: 32px;
}

@media screen and (max-width: 768px) {
    .u-pr__lg {
        padding-right: 5.6074766355vw;
    }

    .u-pr__lg-sp {
        padding-right: 5.6074766355vw;
    }
}

.u-pr__xl {
    padding-right: 48px;
}

@media screen and (max-width: 768px) {
    .u-pr__xl {
        padding-right: 7.476635514vw;
    }

    .u-pr__xl-sp {
        padding-right: 7.476635514vw;
    }
}

.u-pr__2xl {
    padding-right: 64px;
}

@media screen and (max-width: 768px) {
    .u-pr__2xl {
        padding-right: 11.214953271vw;
    }

    .u-pr__2xl-sp {
        padding-right: 11.214953271vw;
    }
}

.u-pr__3xl {
    padding-right: 80px;
}

@media screen and (max-width: 768px) {
    .u-pr__3xl {
        padding-right: 14.953271028vw;
    }

    .u-pr__3xl-sp {
        padding-right: 14.953271028vw;
    }
}

.u-pr__4xl {
    padding-right: 96px;
}

@media screen and (max-width: 768px) {
    .u-pr__4xl {
        padding-right: 14.953271028vw;
    }

    .u-pr__4xl-sp {
        padding-right: 14.953271028vw;
    }
}

.u-pr__5xl {
    padding-right: 128px;
}

@media screen and (max-width: 768px) {
    .u-pr__5xl {
        padding-right: 22.4299065421vw;
    }

    .u-pr__5xl-sp {
        padding-right: 22.4299065421vw;
    }
}

.u-pl__xs {
    padding-left: 8px;
}

@media screen and (max-width: 768px) {
    .u-pl__xs {
        padding-left: 1.4018691589vw;
    }

    .u-pl__xs-sp {
        padding-left: 1.4018691589vw;
    }
}

.u-pl__sm {
    padding-left: 16px;
}

@media screen and (max-width: 768px) {
    .u-pl__sm {
        padding-left: 2.8037383178vw;
    }

    .u-pl__sm-sp {
        padding-left: 2.8037383178vw;
    }
}

.u-pl__base {
    padding-left: 24px;
}

@media screen and (max-width: 768px) {
    .u-pl__base {
        padding-left: 3.738317757vw;
    }

    .u-pl__base-sp {
        padding-left: 3.738317757vw;
    }
}

.u-pl__lg {
    padding-left: 32px;
}

@media screen and (max-width: 768px) {
    .u-pl__lg {
        padding-left: 5.6074766355vw;
    }

    .u-pl__lg-sp {
        padding-left: 5.6074766355vw;
    }
}

.u-pl__xl {
    padding-left: 48px;
}

@media screen and (max-width: 768px) {
    .u-pl__xl {
        padding-left: 7.476635514vw;
    }

    .u-pl__xl-sp {
        padding-left: 7.476635514vw;
    }
}

.u-pl__2xl {
    padding-left: 64px;
}

@media screen and (max-width: 768px) {
    .u-pl__2xl {
        padding-left: 11.214953271vw;
    }

    .u-pl__2xl-sp {
        padding-left: 11.214953271vw;
    }
}

.u-pl__3xl {
    padding-left: 80px;
}

@media screen and (max-width: 768px) {
    .u-pl__3xl {
        padding-left: 14.953271028vw;
    }

    .u-pl__3xl-sp {
        padding-left: 14.953271028vw;
    }
}

.u-pl__4xl {
    padding-left: 96px;
}

@media screen and (max-width: 768px) {
    .u-pl__4xl {
        padding-left: 14.953271028vw;
    }

    .u-pl__4xl-sp {
        padding-left: 14.953271028vw;
    }
}

.u-pl__5xl {
    padding-left: 128px;
}

@media screen and (max-width: 768px) {
    .u-pl__5xl {
        padding-left: 22.4299065421vw;
    }

    .u-pl__5xl-sp {
        padding-left: 22.4299065421vw;
    }
}

.u-txt__sm {
    font-size: 12px;
}

.u-txt__md {
    font-size: 14px;
}

.u-txt__base {
    font-size: 16px;
    line-height: 2;
}

.u-txt__lg {
    font-size: 18px;
    line-height: 2;
}

.u-txt__xl {
    font-size: 20px;
    line-height: 2;
}

.u-tal {
    text-align: left;
}

.u-tar {
    text-align: right;
}

@media screen and (max-width: 768px) {
    .u-tar.sp-reset {
        text-align: left;
    }
}

.u-tac {
    text-align: center;
}

@media screen and (max-width: 768px) {
    .u-tac.sp-reset {
        text-align: left;
    }
}

.u-ispc {
    display: block !important;
}

@media (min-width:768px) {
    .cta-unit .u-ispc {
        width: 50px;
    }
}

@media screen and (max-width: 768px) {
    .u-ispc {
        display: none !important;
    }
}

.u-ispc-f {
    display: flex !important;
}

@media screen and (max-width: 768px) {
    .u-ispc-f {
        display: none !important;
    }
}

.u-issp {
    display: none !important;
}

@media screen and (max-width: 768px) {
    .u-issp {
        display: block !important;
    }
}

.u-issp-f {
    display: none !important;
}

@media screen and (max-width: 768px) {
    .u-issp-f {
        display: flex !important;
    }
}

.u-inavtive {
    pointer-events: none !important;

    opacity: .3;
}

.u-dn {
    display: none !important;
}

.u-por {
    position: relative;
}

main {
    position: relative;
}

.u-col__wh {
    color: #fff;
}

.u-card__date {
    font-size: 14px;

    padding: 4px 0;
}

@media screen and (max-width: 768px) {
    .u-card__date {
        font-size: 2.8037383178vw;
    }
}

.u-icn__cate {
    font-size: 12px;
    line-height: 1;

    display: inline-flex;

    padding: 6px 8px;

    border: solid 1px #fff;
}

.u-icn__cate-ch {
    font-size: 12px;
    line-height: 1;

    display: inline-flex;

    padding: 6px 8px;

    border: solid 1px #fff;
    background: linear-gradient(90deg, #4b34be 0%, #1235b9 54.94%, #00f1ee 113.28%);
}

.u-icn__cate-off {
    font-size: 12px;
    line-height: 1;

    display: inline-flex;

    padding: 6px 8px;

    color: #666;
    border: solid 1px #666;
}

.u-date__wrapper {
    display: flex;

    padding-top: 12px;
    padding-bottom: 8px;

    justify-content: space-between;
    align-items: center;
}

.u-date__wrapper>.date {
    font-size: 14px;
}

@media screen and (max-width: 768px) {
    .u-date__wrapper {
        display: flex;

        padding-top: 12px;
        padding-bottom: 8px;

        justify-content: space-between;
        align-items: center;
    }

    .u-date__wrapper>.date {
        font-size: 2.8037383178vw;
    }
}

.u-content__def {
    width: 1140px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .u-content__def {
        width: 100%;
    }
}

.u-content__sm {
    width: 950px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .u-content__sm {
        width: 100%;
    }
}

.u-content__xs {
    width: 950px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .u-content__xs {
        width: 100%;
    }
}

.u-catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 48px */

    letter-spacing: .96px;

    color: #fff;
}

.u-catch.addjust-01 {
    letter-spacing: 0;
}

.u-read {
    font-family: 'Noto Sans JP';
    font-size: 18px;
    font-weight: 700;
    font-style: normal;
    line-height: 200%;
    /* 36px */

    letter-spacing: .72px;

    color: #fff;
}

.u-fs-noto {
    font-family: 'Noto Sans JP';
}

.u-tag__wrapper {
    display: flex;

    gap: 8px;
    flex-wrap: wrap;
}

.u-tag__wrapper>.item {
    font-size: 13px;
    line-height: 1;

    display: inline-flex;

    padding: 4px 8px;

    border-radius: 2px;
    background: #2d2b2b;

    align-items: center;
}

@media screen and (max-width: 768px) {
    .u-tag__wrapper>.item {
        font-size: 11px;
    }
}

.u-title__en {
    font-weight: bold;
    position: relative;
    display: inline-flex;
    color: #fff;
    background: linear-gradient(90deg, #4735be 0%, #03dde8 100%);
    line-height: 1;
    align-items: center;
    justify-content: center;
}

.u-title__en-wrapper {
    display: inline-flex;
}

.u-title__en-wrapper:before {
    content: '';
    width: 28px;
    height: 28px;
    background: url(/assets/img/aibuddy/title_en_l.svg);
}

.u-title__en-wrapper:after {
    content: '';
    width: 28px;
    height: 28px;
    background: url(/assets/img/aibuddy/title_en_r.svg);
}

.u-title__sm {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
}

.u-title__lg {
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    line-height: normal;

    letter-spacing: .96px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .u-title__lg {
        font-size: 4.6728971963vw;
    }
}

.u-title__page {
    font-size: 40px;
    font-weight: 700;
    font-style: normal;
    line-height: 200%;
    /* 80px */

    letter-spacing: 1.6px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .u-title__page {
        line-height: 1;
    }
}

.u-title__page span {
    font-size: 24px;

    display: inline-block;

    padding-left: 24px;
}

@media screen and (max-width: 768px) {
    .u-title__page span {
        padding-top: 24px;
        padding-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .u-title__page {
        font-size: 32px;

        padding: 0 24px;
    }
}

.u-title__detail {
    font-size: 24px !important;
    font-weight: bold !important;
    line-height: 1.6 !important;

    padding-top: 32px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;

    color: #333 !important;
}

.u-title__detail.wh {
    color: #fff !important;
}

@media screen and (max-width: 768px) {
    .u-title__detail {
        font-size: 20px !important;

        padding-top: 5.6074766355vw !important;
    }
}

.u-wh__2col {
    flex-basis: 544px;
}

.u-bd__def {
    border-radius: 24px;
    box-shadow: 0 0 80px #22389a, 0 0 4px rgba(255, 255, 255, .1);
}

@media screen and (max-width: 768px) {
    .u-bd__def {
        border-radius: 8px;
    }
}

.u-border__def {
    border-top: solid 1px rgba(255, 255, 255, .1);
}

.u-box__wh {
    padding: 40px;

    border-radius: 8px;
    background: #fff;
}

@media screen and (max-width: 768px) {
    .u-box__wh {
        padding: 16px;
    }
}

.u-box__def {
    padding: 24px;

    border-radius: 8px;
    background: #333;
}

.u-box__def.lg {
    padding: 40px;
}

@media screen and (max-width: 768px) {
    .u-box__def.lg {
        padding: 0;
        padding-top: 40px;

        background: none;
    }
}

@media screen and (max-width: 768px) {
    .u-box__def {
        padding: 16px;
    }
}

.u-box__def.heading {
    padding: 2px;

    border-radius: 4px;
}

.u-box__def.heading>.title {
    font-size: 14px;
    font-weight: bold;

    padding: 4px 8px;

    text-align: center;

    border-radius: 2px;
    background: #000;
}

.u-box__def.heading>.contents {
    font-size: 13px;

    padding: 14px 16px 16px 16px;
}

.u-box__sub {
    padding: 24px;

    border-radius: 8px;
    background: #222;
}

@media screen and (max-width: 768px) {
    .u-box__sub {
        padding: 16px;
    }
}

.u-box__2col {
    flex-basis: 520px;
}

.u-box__bdt {
    border-top: solid 1px #222;
}

.u-box__disc {
    font-size: 18px;
    line-height: 1.8;

    width: 736px;
    margin: 0 auto;

    text-align: left;
}

@media screen and (max-width: 768px) {
    .u-box__disc {
        font-size: 14px;

        width: 100%;
    }
}

.u-form__select {
    position: relative;
}

.u-form__select-wrapper {
    width: 400px;
}

@media screen and (max-width: 768px) {
    .u-form__select-wrapper {
        width: 100%;
    }
}

.u-form__select select {
    font-size: 16px;
    line-height: 40px;

    position: relative;

    width: 100%;
    height: 40px;
    padding: 0 32px 0 16px;

    border: solid 1px rgba(255, 255, 255, .1);
    border-radius: 4px;
    outline: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 768px) {
    .u-form__select select {
        width: 100%;
        height: 48px;
        padding: 0 24px 0 8px;
    }
}

.u-form__select::after {
    position: absolute;
    top: 8px;
    right: 10px;

    width: 24px;
    height: 24px;
    margin: auto;

    content: '';

    background: url(../img/common/icn_arrow_select.svg) no-repeat;
}

@media screen and (max-width: 768px) {
    .u-form__select::after {
        right: 6px;
    }
}

.u-form__base {
    font-size: 16px;
    line-height: 40px;

    position: relative;

    width: 100%;
    height: 40px;
    padding: 0 16px;

    border: solid 1px rgba(255, 255, 255, .1);
    border-radius: 4px;
    outline: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 768px) {
    .u-form__base {
        line-height: 1;

        display: inline-flex;

        height: 48px;
        padding: 8px;

        align-items: center;
    }
}

.u-form__textarea {
    font-size: 16px;

    position: relative;

    width: 100%;
    height: 200px;
    padding: 16px;

    border-radius: 4px;
    outline: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 768px) {
    .u-form__textarea {
        line-height: 1;

        display: inline-flex;

        padding: 8px;

        align-items: center;
    }
}

.u-form__sm {
    font-size: 16px;
    line-height: 40px;

    position: relative;

    width: 100px;
    height: 40px;
    padding: 0 16px;

    border: solid 1px rgba(255, 255, 255, .1);
    outline: none;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media screen and (max-width: 768px) {
    .u-form__sm {
        line-height: 1;

        display: inline-flex;

        height: 48px;
        padding: 8px;

        align-items: center;
    }
}

.u-form__xs {
    font-size: 16px;
    line-height: 32px;

    width: 56px;
    height: 32px;
    padding: 0 8px;

    border: solid rgba(255, 255, 255, .1) 1px;
}

.u-form__radio input[type=radio] {
    display: none;
}

.u-form__radio input[type=radio]+label,
.u-form__radio input[type=radio]+span {
    position: relative;

    display: block;

    min-height: 24px;
    padding-left: 32px;

    cursor: pointer;
}

.u-form__radio input[type=radio]+label::before,
.u-form__radio input[type=radio]+span::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 24px;
    height: 24px;
    margin: auto;

    content: '';

    border: solid 1px rgba(255, 255, 255, .1);
    border-radius: 12px;
    background-color: #fff;
}

.u-form__radio input[type=radio]+label::after,
.u-form__radio input[type=radio]+span::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 3px;

    display: none;

    width: 18px;
    height: 18px;
    margin: auto;

    content: '';

    border: solid 1px rgba(255, 255, 255, .1);
    border-radius: 12px;
    background: #000;
}

.u-form__radio input[type=radio]:checked+label::after,
.u-form__radio input[type=radio]:checked+span::after {
    display: block;
}

.u-form__check {
    display: flex;

    gap: 24px;
    flex-wrap: wrap;
}

.u-form__check input[type=checkbox] {
    display: none;
}

.u-form__check input[type=checkbox]+label {
    position: relative;

    display: inline-flex !important;
    display: block;

    min-height: 24px;
    padding-top: 4px;
    padding-left: 32px;

    cursor: pointer;

    gap: 8px;
}

.u-form__check input[type=checkbox]+label::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 24px;
    height: 24px;
    margin: auto;

    content: '';

    border: solid 1px rgba(255, 255, 255, .1);
    border-radius: 4px;
    background-color: #fff;
}

.u-form__check input[type=checkbox]+label::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    display: none;

    width: 24px;
    height: 24px;
    margin: auto;

    content: '';

    border: none;
    background: url(../img/common/icn_check.svg) no-repeat center center;
}

.u-form__check input[type=checkbox]:checked+label::after {
    display: block;
}

.u-btn__wrapper {
    display: flex;

    justify-content: center;
}

.u-btn__wrapper-r {
    display: flex;

    justify-content: flex-end;
}

.u-btn__wrapper-l {
    display: flex;

    justify-content: flex-start;
}

.u-btn__plus {
    display: none;
}

@media screen and (max-width: 768px) {
    .u-btn__plus {
        position: absolute;
        right: 10px;
        bottom: 10px;

        display: block;

        width: 40px;
        height: 40px;
    }
}

.u-btn__def {
    font-family: 'Barlow Condensed';
    font-size: 13px;
    font-weight: bold;

    position: relative;

    display: inline-flex;

    width: 50%;
    height: 56px;
    padding-left: 24px;

    cursor: pointer;
    transition: .2s ease;
    letter-spacing: .05em;

    color: #fff;
    border-top: solid 1px rgba(255, 255, 255, .1);
    border-bottom: solid 1px rgba(255, 255, 255, .1);

    align-items: center;
    justify-content: left;
}

@media screen and (max-width: 768px) {
    .u-btn__def {
        padding-left: 3.738317757vw;
    }
}

.u-btn__def::after {
    position: absolute;
    right: 24px;

    width: 24px;
    height: 24px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/btn_arrow.svg) no-repeat center center;
}

@media screen and (max-width: 768px) {
    .u-btn__def::after {
        right: 3.738317757vw;
    }
}

.u-btn__def:hover {
    background: #222;
}

.u-btn__def:hover::after {
    right: 20px;
}

@media screen and (max-width: 768px) {
    .u-btn__def:hover::after {
        right: 2.8037383178vw;
    }
}

@media screen and (max-width: 768px) {
    .u-btn__def {
        font-size: 3.0373831776vw;

        width: 100%;
        width: 50%;
        height: 11.214953271vw;
    }
}

.u-btn__back {
    font-family: 'Barlow Condensed';
    font-size: 13px;
    font-weight: bold;

    position: relative;

    display: inline-flex;

    width: 165px;
    height: 56px;

    cursor: pointer;
    transition: .2s ease;
    letter-spacing: .05em;

    color: #fff;
    border-top: solid 1px #666;
    border-bottom: solid 1px #666;

    align-items: center;
    justify-content: center;
}

.u-btn__back::after {
    position: absolute;
    left: 16px;

    width: 24px;
    height: 24px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/btn_arrow_back.svg) no-repeat center center;
}

@media screen and (max-width: 768px) {
    .u-btn__back::after {
        left: 1.8691588785vw;
    }
}

.u-btn__back:hover {
    background: #ececec;
}

.u-btn__back:hover::after {
    left: 12px;
}

@media screen and (max-width: 768px) {
    .u-btn__back:hover::after {
        left: 1.4018691589vw;
    }
}

@media screen and (max-width: 768px) {
    .u-btn__back {
        font-size: 3.0373831776vw;

        width: 100%;
        width: 50%;
        height: 11.214953271vw;
    }
}

.u-btn__sm {
    font-family: 'Barlow Condensed';
    font-size: 13px;
    font-weight: bold;

    position: relative;

    display: inline-flex;

    height: 40px;
    padding-right: 32px;
    padding-left: 24px;

    cursor: pointer;
    transition: .2s ease;
    letter-spacing: .05em;

    color: #fff;

    align-items: center;
    justify-content: right;
    flex-basis: 140px;
}

.u-btn__sm::after {
    position: absolute;
    right: 0;

    width: 24px;
    height: 24px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/btn_arrow.svg) no-repeat center center;
}

.u-btn__sm:hover::after {
    right: -8px;
}

@media screen and (max-width: 768px) {
    .u-btn__sm {
        font-size: 13px;

        width: 100%;
        height: 9.3457943925vw;
    }
}

.u-btn__saas {
    font-family: 'Barlow Condensed';
    font-size: 12px;
    font-weight: bold;
    line-height: 1.4;

    position: relative;

    display: inline-flex;

    width: 300px;
    height: 56px;
    padding-right: 32px;
    padding-left: 8px;

    cursor: pointer;
    transition: .2s ease;
    text-align: left;
    letter-spacing: .05em;

    color: #fff;
    border-top: solid 1px #666;
    border-bottom: solid 1px #666;

    align-items: center;
}

.u-btn__saas::after {
    position: absolute;
    right: 0;

    width: 24px;
    height: 24px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/btn_arrow.svg) no-repeat center center;
}

.u-btn__saas:hover::after {
    right: -8px;
}

@media screen and (max-width: 768px) {
    .u-btn__saas {
        font-size: 12px;

        height: 56px;
    }
}

.u-btn__round-g {
    font-weight: bold;

    display: inline-flex;

    width: 352px;
    height: 56px;

    border: 1px solid #fff;
    border-radius: 100px;

    flex-shrink: 0;
    gap: 8px;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .u-btn__round-g {
        width: 100%;
        height: 48px;
    }
}

.u-btn__round-cta {
    font-weight: bold;

    display: inline-flex;

    width: 352px;
    height: 56px;

    color: #333 !important;
    border: none;
    border-radius: 100px;
    background-color: #fff;

    gap: 8px;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
}

.u-btn__round-cta.submit-btn {
    cursor: pointer;
    transition: .3s ease;
}

.u-btn__round-cta.submit-btn:hover {
    opacity: .7;
}

@media screen and (max-width: 768px) {
    .u-btn__round-cta {
        width: 100%;
        height: 48px;
    }
}

.u-btn__inactive {
    pointer-events: none;

    opacity: .3;
}

.u-btn__detail {
    font-size: 16px;
    font-weight: bold;

    display: inline-flex;

    min-width: 165px;
    height: 56px;
    padding: 0 24px;

    color: #333;
    border: 1px solid #666;
    border-radius: 100px;

    flex-shrink: 0;
    gap: 8px;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .u-btn__detail {
        width: 100%;
        height: 48px;
    }
}

@media screen and (max-width: 768px) and (max-width: 768px) {
    .u-btn__detail {
        font-size: 3.738317757vw;
    }
}

.u-list__tb {
    display: flex;

    flex-wrap: wrap;
}

.u-list__tb>dt {
    flex-basis: 160px;
}

@media screen and (max-width: 768px) {
    .u-list__tb>dt {
        font-size: 10px;
    }
}

.u-list__tb>dd {
    font-size: 16px;
    font-weight: bold;
    line-height: 160%;

    padding-bottom: 16px;

    flex-basis: 352px;
}

@media screen and (max-width: 768px) {
    .u-list__tb>dd {
        font-size: 14px;
    }
}

.u-list__bl-2col {
    display: flex;

    flex-wrap: wrap;
    gap: 8px 24px;
}

.u-list__bl-2col>li {
    font-size: 13px;
    line-height: 1.4;

    display: inline-flex;

    padding-bottom: 8px;

    flex-basis: calc(50% - 24px);
}

@media screen and (max-width: 768px) {
    .u-list__bl-2col>li {
        padding-left: 0;
    }
}

.u-list__bl-2col>li::before {
    padding-right: 4px;

    content: '■';

    color: #0051ff !important;
}

.u-list__circle>li {
    line-height: 1.4;

    display: flex;

    padding-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .u-list__circle>li {
        padding-left: 0;
    }
}

.u-list__circle>li::before {
    content: '・';
}

.u-link__all {
    position: relative;

    display: inline-flex;

    align-items: center;
}

.u-link__all::after {
    width: 32px;
    height: 10px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/all_arrow.svg) no-repeat;
    background-position: 8px 0;
}

.u-link__all:hover::after {
    background-position: 16px 0;
}

.u-link__back {
    position: relative;

    display: inline-flex;

    align-items: center;
}

.u-link__back::before {
    width: 32px;
    height: 10px;

    content: '';
    transition: .2s ease;

    background: url(../img/common/arrow_back.svg) no-repeat;
    background-position: 8px 0;
}

.u-link__back:hover::before {
    background-position: 0 0;
}

.u-link__ul {
    padding-bottom: 4px;

    border-bottom: solid 1px rgba(255, 255, 255, .57);
}

.u-line__def {
    margin: 24px 0;

    border-top: solid 1px #333;
}

/* menu */
.menu__lang {
    display: flex;

    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.menu__lang>a {
    font-family: Barlow Condensed Condensed;
    font-size: 14px;
    font-weight: 700;
    font-style: italic;

    cursor: pointer;
    transition: .2s ease;
    text-decoration: none;

    color: #fff;
}

.menu__lang>a:hover {
    opacity: .7;
}

.menu__lang>a.active {
    color: #fff;
}

.menu__trigger,
.menu__trigger span {
    box-sizing: border-box;

    transition: all .4s;
}

.menu__trigger {
    position: relative;

    width: 40px;
    height: 40px;

    cursor: pointer;

    border: none;
    background: none;

    -webkit-appearance: none;

    -moz-appearance: none;

    appearance: none;
}

@media screen and (max-width: 768px) {
    .menu__trigger {
        width: 30px;
        height: 30px;
    }
}

.menu__trigger span {
    position: absolute;
    left: 4px;

    width: 40px;
    height: 2px;

    border-radius: 2px;
    background-color: rgba(255, 255, 255, .37);
}

@media screen and (max-width: 768px) {
    .menu__trigger span {
        left: 0;

        width: 30px;
        height: 1px;

        border-radius: 2px;
    }
}

.menu__trigger span:nth-of-type(1) {
    top: 10px;
}

@media screen and (max-width: 768px) {
    .menu__trigger span:nth-of-type(1) {
        top: 1.8691588785vw;
    }
}

.menu__trigger span:nth-of-type(2) {
    top: 20px;
}

@media screen and (max-width: 768px) {
    .menu__trigger span:nth-of-type(2) {
        top: 4.6728971963vw;
    }
}

.menu__trigger.active span:nth-of-type(1) {
    transform: translateY(5px) rotate(-45deg);

    background-color: #878787;
}

.menu__trigger.active span:nth-of-type(2) {
    transform: translateY(-5px) rotate(45deg);

    background-color: #878787;
}

.header {
    display: block;
}

.header-wrapper {
    position: fixed;
    z-index: 2;

    display: flex;

    width: 100%;
    height: 80px;

    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.header-logo {
    position: absolute;
    top: 20px;
    left: 40px;

    width: 137px;
    height: 80px;
}

@media screen and (max-width: 768px) {
    .header-logo {
        left: 4.6728971963vw;

        width: 23.3644859813vw;
        height: auto;
    }
}

.header .sns {
    display: flex;

    gap: 24px;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .header .sns {
        display: none;
    }
}

.gnav {
    position: relative;
}

.gnav-ul {
    min-width: 300px;
}

.gnav-ul>li {
    padding: 4px 0;

    border-bottom: solid 1px #666;
}

.gnav-ul>li:last-child {
    border-bottom: none;
}

.gnav .lang {
    font-size: 16px;
    font-weight: bold;
    font-style: italic;

    position: absolute;
    top: -9px;
    right: 100px;

    display: flex;

    width: 80px;

    align-items: center;
    gap: 8px;
}

@media screen and (max-width: 768px) {
    .gnav .lang {
        top: -18px;
        right: 80px;
    }
}

.gnav .lang-item a {
    color: #666;
}

.gnav .lang-item a.active {
    pointer-events: none;

    color: #fff;
}

.gnav-second {
    padding: 16px;

    background: #333;
}

.hamburger {
    position: fixed;
    z-index: 300;
    top: 34px;
    right: 40px;

    width: 40px;
    height: 40px;

    cursor: pointer;
}

@media screen and (max-width: 768px) {
    .hamburger {
        top: 24px;
        right: 24px;

        display: block;

        width: 32px;
        height: 32px;
    }
}

.hamburger__line {
    position: absolute;
    left: 0;

    width: 40px;
    height: 2px;

    transition: all .1s;

    border-radius: 4px;
    background-color: #aaacb4;
}

@media screen and (max-width: 768px) {
    .hamburger__line {
        width: 32px;
        height: 1px;
    }
}

.hamburger__line-1 {
    top: 0;
}

.hamburger__line-2 {
    top: 12px;
}

.hamburger__line-3 {
    top: 24px;
}

.on .hamburger__line-1 {
    top: 10px;

    transform: rotate(45deg);
}

.on .hamburger__line-2 {
    opacity: 0;
}

.on .hamburger__line-3 {
    top: 10px;

    transform: rotate(-45deg);
}

.drawer-menu {
    position: fixed;
    z-index: 3;
    top: 0;

    display: flex;

    width: 100%;
    height: 100dvh;

    background: #000;

    align-items: center;
    justify-content: center;
}

.drawer-menu>.gnav-dr {
    font-size: 18px;
    font-weight: bold;

    display: flex;
    flex-direction: column;

    align-items: center;
    gap: 32px;
}

@media screen and (max-width: 768px) {
    .drawer-menu>.gnav-dr {
        overflow-y: auto;

        height: 80svh;
        padding-bottom: 80px;
    }
}

.drawer-menu>.sns-dr {
    display: flex;

    padding-top: 48px;

    gap: 32px;
    justify-content: center;
}

#loading {
    position: fixed;
    z-index: 9999;
    top: 0;

    width: 100%;
    height: 100vh;

    transition: all 1s;

    background-color: #000;
}

.spinner {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 40px;
    height: 40px;
    margin: auto;
}

.loaded {
    visibility: hidden;

    opacity: 0;
}

.double-bounce1,
.double-bounce2 {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -webkit-animation: sk-bounce 2s infinite ease-in-out;
    animation: sk-bounce 2s infinite ease-in-out;

    opacity: .6;
    border-radius: 50%;
    background-color: #0051ff;
}

.double-bounce2 {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

@-webkit-keyframes sk-bounce {

    0%,
    100% {
        -webkit-transform: scale(0);
    }

    50% {
        -webkit-transform: scale(1);
    }
}

@keyframes sk-bounce {

    0%,
    100% {
        transform: scale(0);
    }

    50% {
        transform: scale(1);
    }
}

.fade {
    -webkit-animation: fade;
    animation: fade;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;

    opacity: 0;
}

.fadeInUp {
    -webkit-animation: fade-in-up forwards;
    animation: fade-in-up forwards;
    -webkit-animation-duration: 1000ms;
    animation-duration: 1000ms;

    opacity: 0;
}

.fadeInLeft {
    -webkit-animation: fade-in-left forwards;
    animation: fade-in-left forwards;
    -webkit-animation-duration: 1000ms;
    animation-duration: 1000ms;

    opacity: 0;
}

.delay-time {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.delay-time__xs {
    -webkit-animation-delay: 250ms;
    animation-delay: 250ms;
}

@media screen and (max-width: 768px) {
    .delay-time__xs {
        -webkit-animation-delay: 0ms;
        animation-delay: 0ms;
    }
}

.delay-time__s {
    -webkit-animation-delay: 500ms;
    animation-delay: 500ms;
}

@media screen and (max-width: 768px) {
    .delay-time__s {
        -webkit-animation-delay: 0ms;
        animation-delay: 0ms;
    }
}

.delay-time__sm {
    -webkit-animation-delay: 750ms;
    animation-delay: 750ms;
}

@media screen and (max-width: 768px) {
    .delay-time__sm {
        -webkit-animation-delay: 0ms;
        animation-delay: 0ms;
    }
}

.animate__fadeInUpSmall {
    -webkit-animation-name: fadeInUpSmall;
    animation-name: fadeInUpSmall;
}

.animate__fadeInLeftSmall {
    -webkit-animation-name: fadeInLeftSmall;
    animation-name: fadeInLeftSmall;
}

@-webkit-keyframes fadeInUpSmall {
    from {
        transform: translate3d(0, 20px, 0);

        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInUpSmall {
    from {
        transform: translate3d(0, 20px, 0);

        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@-webkit-keyframes fadeInLeftSmall {
    from {
        transform: translate3d(-20px, 0, 0);

        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

@keyframes fadeInLeftSmall {
    from {
        transform: translate3d(-20px, 0, 0);

        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);

        opacity: 1;
    }
}

.bg__video {
    position: fixed;
    z-index: -1;

    overflow: hidden;

    width: 100%;
    min-width: 1240px;
    height: 100dvh;

    background: #333;
}

@media screen and (max-width: 768px) {
    .bg__video {
        min-width: inherit;
    }
}

.bg__video-filter {
    position: absolute;

    width: 100%;
    height: 100dvh;

    background: rgba(5, 70, 146, .6);

    mix-blend-mode: overlay;
}

.bg__video video {
    width: 100%;
    height: 100dvh;

    -o-object-fit: cover;

    object-fit: cover;
}

.bg__grid {
    position: absolute;
    z-index: -1;
    right: 0;
    left: 0;

    display: flex;

    width: 1140px;
    margin: 0 auto;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .bg__grid {
        width: 100%;
    }
}

.bg__grid div {
    width: 25%;

    border-right: solid 1px rgba(255, 255, 255, .1);
}

.bg__grid div:first-child {
    border-left: solid 1px rgba(255, 255, 255, .1);
}

@media screen and (max-width: 768px) {
    .bg__grid div:first-child {
        width: 23px;

        border-left: none;
    }

    .bg__grid div:nth-child(2) {
        width: calc(50% - 23px);
    }

    .bg__grid div:nth-child(3) {
        width: calc(50% - 23px);
    }

    .bg__grid div:nth-child(4) {
        width: 23px;

        border-right: none;
    }
}

.bg__content {
    position: absolute;
    z-index: -1;

    display: flex;

    width: 100%;

    background-image: radial-gradient(157.07% 125.85% at 87.15% 89.34%, #2d2b2b 0%, #000 100%);

    justify-content: center;
}

.bg__content.sub {
    opacity: .9;
}

.bg__content.bk {
    background: #000;
}

.bg__content.bg__works>img {
    width: 100%;

    -o-object-fit: cover;

    object-fit: cover;
}

.cta-unit {
    position: fixed;
    z-index: 1;
    right: 0;
    top: 30%;
}

@media screen and (max-width: 768px) {
    .cta-unit {
        bottom: 0;

        top: unset;
        display: flex;

        width: 100%;

        align-items: center;
    }
}

.cta-unit .cta-info {
    display: block;

    padding-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .cta-unit .cta-info {
        display: flex;

        width: 50%;
        height: 40px;
        padding-bottom: 0;

        background: linear-gradient(90deg, #4b34be 0%, #1439bc 49.5%, #0ee 100%);

        align-items: center;
        justify-content: center;
    }
}

.cta-unit .cta-contact {
    display: block;
}

@media screen and (max-width: 768px) {
    .cta-unit .cta-contact {
        display: flex;

        width: 50%;
        height: 40px;
        padding-bottom: 0;

        background: #000;

        align-items: center;
        justify-content: center;
    }
}

.mv {
    position: relative;

    display: block;

    width: 100%;
    height: 100dvh;
    min-height: 600px;
}

.mv__copy {
    position: absolute;
    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
    .mv__copy {
        top: 35.046728972vw;
        left: 24px;

        transform: none;
    }

    .mv__copy>img {
        width: 64.0186915888vw;
        height: auto;
    }
}

.mv__news {
    position: absolute;
    bottom: 40px;
    left: 40px;

    display: flex;

    width: 680px;
    height: 40px;
    padding: 0 16px;

    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 48px;

    align-items: center;
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .mv__news {
        bottom: 100px;
        left: 0;

        display: block;

        width: 100%;
        padding: 0 24px;

        border: none;
        border-radius: 0;
    }
}

.mv__news-content li>a {
    display: flex;

    width: 560px;
    height: 40px;

    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.mv__news-content li>a>span {
    display: block;
}

.mv__news-content li>a .news-title {
    font-size: 14px;

    overflow: hidden;

    white-space: nowrap;
    text-overflow: ellipsis;

    flex: 1;
}

@media screen and (max-width: 768px) {
    .mv__news-content li>a {
        display: block;

        width: 100%;
        height: auto;
    }

    .mv__news-content li>a>span {
        font-size: 10px;

        display: block;
    }

    .mv__news-content li>a .news-title {
        font-size: 14px;
    }
}

.mv__news-more {
    display: flex;

    align-items: center;
    justify-content: right;
    gap: 4px;
}

.mv__news-more::after {
    width: 16px;
    height: 16px;

    content: '';

    background: url(../img/common/icn_arrow_u.svg) no-repeat;
}

.about {
    position: relative;
}

.about__content {
    width: 1140px;
    margin: 0 auto;
    padding: 184px 0;

    text-align: center;
}

@media screen and (max-width: 768px) {
    .about__content {
        width: 100%;
        padding: 35.046728972vw 5.6074766355vw;
    }
}

.about__title>img {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 1140px;
    height: auto;

    transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
    .about__title>img {
        width: 100%;
    }
}

.about__catch {
    font-family: 'Noto Serif JP';
    font-size: 28px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;

    text-align: center;
    /* 56px */
    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .about__catch {
        font-size: 5.6074766355vw;
    }
}

.solution {
    position: relative;
}

.solution__content {
    display: flex;

    width: 1140px;
    height: 800px;
    margin: 0 auto;
    padding: 150px 0;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .solution__content {
        overflow: hidden;
        flex-direction: column-reverse;

        width: 100%;
        height: auto;
        padding: 80px 0;

        flex-wrap: wrap;
    }
}

.solution__catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 56px */

    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .solution__catch {
        font-size: 4.6728971963vw;
    }
}

.solution__txt {
    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .solution__txt {
        width: 100%;
        margin-top: 14.953271028vw;
        padding: 0 24px;

        flex-basis: inherit;
    }
}

.solution__img {
    position: relative;

    height: 400px;

    background: rgba(255, 255, 255, .1);

    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .solution__img {
        height: 78.2710280374vw;
    }
}

.solution__img>img {
    position: absolute;
    top: 50px;
    left: 50px;
}

@media screen and (max-width: 768px) {
    .solution__img>img {
        top: 5.6074766355vw;
        left: 5.6074766355vw;
    }
}

@media screen and (max-width: 768px) {
    .solution__img {
        width: 100%;

        flex-basis: inherit;
    }
}

.ci {
    position: relative;
}

.ci__content {
    display: flex;
    flex-direction: row-reverse;

    width: 1140px;
    height: 800px;
    margin: 0 auto;
    padding: 150px 0;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .ci__content {
        overflow: hidden;
        flex-direction: column-reverse;

        width: 100%;
        height: auto;
        padding: 80px 0;

        flex-wrap: wrap;
    }
}

.ci__catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 56px */

    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .ci__catch {
        font-size: 4.6728971963vw;
    }
}

.ci__txt {
    flex-basis: 50%;
}

.ci__txt-inner {
    padding-left: 100px;
}

@media screen and (max-width: 768px) {
    .ci__txt {
        width: 100%;
        margin-top: 14.953271028vw;
        padding: 0 24px;

        flex-basis: inherit;
    }

    .ci__txt-inner {
        padding-left: 0;
    }
}

.ci__img {
    position: relative;

    height: 400px;

    background: rgba(255, 255, 255, .1);

    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .ci__img {
        height: 78.2710280374vw;
    }
}

.ci__img>img {
    position: absolute;
    top: 50px;
    left: -50px;
}

@media screen and (max-width: 768px) {
    .ci__img>img {
        top: 5.6074766355vw;
        left: -5.6074766355vw;
    }
}

@media screen and (max-width: 768px) {
    .ci__img {
        width: 100%;

        flex-basis: inherit;
    }
}

.partnership {
    position: relative;
}

.partnership__content {
    display: flex;

    width: 1140px;
    height: 800px;
    margin: 0 auto;
    padding: 150px 0;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .partnership__content {
        overflow: hidden;
        flex-direction: column-reverse;

        width: 100%;
        height: auto;
        padding: 80px 0;

        flex-wrap: wrap;
    }
}

.partnership__catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 56px */

    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .partnership__catch {
        font-size: 4.6728971963vw;
    }
}

.partnership__txt {
    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .partnership__txt {
        width: 100%;
        margin-top: 14.953271028vw;
        padding: 0 24px;

        flex-basis: inherit;
    }
}

.partnership__img {
    position: relative;

    height: 400px;

    background: rgba(255, 255, 255, .1);

    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .partnership__img {
        height: 78.2710280374vw;
    }
}

.partnership__img>img {
    position: absolute;
    top: 50px;
    left: 50px;
}

@media screen and (max-width: 768px) {
    .partnership__img>img {
        top: 5.6074766355vw;
        left: 5.6074766355vw;
    }
}

@media screen and (max-width: 768px) {
    .partnership__img {
        width: 100%;

        flex-basis: inherit;
    }
}

.works {
    position: relative;
}

.works__content {
    display: flex;
    flex-direction: row-reverse;

    width: 1140px;
    height: 800px;
    margin: 0 auto;
    padding: 150px 0;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .works__content {
        overflow: hidden;
        flex-direction: column-reverse;

        width: 100%;
        height: auto;
        padding: 80px 0;

        flex-wrap: wrap;
    }
}

.works__catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 56px */

    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .works__catch {
        font-size: 4.6728971963vw;
    }
}

.works__txt {
    flex-basis: 50%;
}

.works__txt-inner {
    padding-left: 100px;
}

@media screen and (max-width: 768px) {
    .works__txt-inner {
        padding-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .works__txt {
        width: 100%;
        margin-top: 14.953271028vw;
        padding: 0 24px;

        flex-basis: inherit;
    }
}

.works__img {
    position: relative;

    display: flex;

    flex-basis: 50%;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .works__img>img {
        width: 74.7663551402vw;
    }
}

.knowledge-commerce {
    position: relative;
}

.knowledge-commerce__content {
    width: 1140px;
    margin: 0 auto;
    padding: 150px 0;

    border-top: solid 1px rgba(255, 255, 255, .1);
}

@media screen and (max-width: 768px) {
    .knowledge-commerce__content {
        width: 100%;
        padding: 80px 24px;
    }
}

.knowledge-commerce__content:first-child {
    border-top: none;
}

.knowledge-commerce__title {
    padding-left: 80px;
}

@media screen and (max-width: 768px) {
    .knowledge-commerce__title {
        padding-left: 0;
    }
}

.knowledge-commerce__catch {
    font-family: 'Noto Serif JP';
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    line-height: 200%;
    /* 56px */

    letter-spacing: 1.12px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .knowledge-commerce__catch {
        font-size: 4.6728971963vw;

        padding-top: 7.476635514vw;
    }
}

.knowledge-commerce__txt {
    display: flex;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .knowledge-commerce__txt {
        display: block;
    }
}

.knowledge-commerce__txt-content {
    flex-basis: 50%;
}

.knowledge-commerce__img {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;
}

.knowledge-commerce__img>img {
    width: 975px;
    height: auto;
}

@media screen and (max-width: 768px) {
    .news .news-viewmore {
        padding-right: 24px;
    }
}

.news__wrapper {
    padding: 150px 0;
}

@media screen and (max-width: 768px) {
    .news__wrapper {
        padding: 80px 0 84px 24px;
    }
}

.news__slide {
    display: flex;

    gap: 30px;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .news__slide {
        overflow-x: scroll;

        flex-wrap: nowrap;
        gap: 16px;
    }
}

.news__card {
    width: 254px;
    margin: 0 16px;

    transition: .2s ease;
}

@media screen and (max-width: 768px) {
    .news__card {
        min-width: 254px;
        margin: 0;
    }

    .news__card:last-child {
        margin-right: 24px;
    }
}

.news__card .thumb {
    overflow: hidden;
}

.news__card .thumb img {
    height: auto;
}

.news__card img {
    transition: .2s ease;
}

.news__card:hover img {
    transform: scale(1.1);
}

.news__card-info {
    display: flex;

    padding: 8px 0;

    align-items: center;
    justify-content: space-between;
}

.news__card-date {
    font-size: 12px;
}

.news__card-icon {
    font-size: 13px;
    font-weight: bold;
    line-height: 1;

    padding: 4px 8px;

    border: solid 1px #fff;
}

.news__card-title {
    line-height: 1.6;

    display: -webkit-box;
    overflow: hidden;

    text-overflow: ellipsis;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.cta-area {
    position: relative;
}

.cta-area__content {
    display: flex;

    width: 1140px;
    margin: 0 auto;
    padding: 150px 0;

    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .cta-area__content {
        display: block;

        width: 100%;
        padding: 80px 0;
    }
}

.cta-area__desc {
    display: flex;

    height: 80px;
    padding-top: 24px;

    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .cta-area__desc {
        display: block;

        height: auto;

        text-align: left;
    }
}

.cta-area .inq-area {
    display: block;

    padding: 0 48px;

    text-align: center;

    border-right: 1px solid #666;

    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .cta-area .inq-area {
        padding: 0 24px;
    }
}

.cta-area .dl-area {
    display: block;

    padding: 0 48px;

    text-align: center;

    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .cta-area .dl-area {
        margin-top: 80px;
        padding: 80px 24px 0 24px;

        border-top: solid 1px rgba(255, 255, 255, .2);
    }
}

.footer {
    background: #000;
}

.footer__content {
    display: flex;

    width: 1140px;
    margin: 0 auto;
    padding-top: 80px;

    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .footer__content {
        display: block;

        width: 100%;
    }
}

.footer__content-u {
    font-size: 13px;

    display: flex;

    width: 1140px;
    margin: 0 auto;
    padding: 40px 0 80px 0;

    align-items: center;
    justify-content: flex-end;
    gap: 40px;
}

@media screen and (max-width: 768px) {
    .footer__content-u {
        font-size: 2.8037383178vw;

        width: 100%;
        padding: 40px 24px 80px 24px;

        letter-spacing: 0;

        justify-content: space-between;
        gap: 24px;
    }
}

.footer-nav-u {
    display: flex;

    align-items: center;
    justify-content: flex-end;
    gap: 40px;
}

@media screen and (max-width: 768px) {
    .footer-nav-u {
        gap: 24px;
    }
}

.footer-info {
    flex-basis: 25%;
}

.footer-info__inner {
    display: flex;

    padding-top: 24px;

    align-items: center;
}

@media screen and (max-width: 768px) {
    .footer-info {
        padding-bottom: 80px;
    }
}

.footer-tel__wrapper {
    padding-left: 16px;
}

.footer-tel {
    font-family: Barlow Condensed;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    line-height: 1;

    text-align: justify;
    letter-spacing: .95px;

    color: #fff;
}

.footer-time {
    font-size: 12px;

    text-align: justify;

    color: #ddd;
}

.footer-logo {
    text-align: center;
}

.footer-logo img {
    width: 154px;
}

@media screen and (max-width: 768px) {
    .footer-logo img {
        width: 118px;
    }
}

.footer-name {
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    line-height: 160%;

    padding-right: 16px;

    text-align: right;
    /* 32px */
    letter-spacing: .8px;

    color: #fff;
    border-right: 1px solid #fff;

    flex-basis: 50%;
}

.footer-nav {
    display: flex;

    gap: 8px;
    justify-content: flex-end;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .footer-nav {
        font-size: 12px;

        padding: 0 24px;

        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 24px 0;
    }

    .footer-nav>a {
        line-height: 1.4;

        display: block;

        width: 50%;
    }
}

.footer-nav2 {
    width: 100%;

    text-align: right;
}

@media screen and (max-width: 768px) {
    .footer-nav2 {
        padding: 18.691588785vw 5.6074766355vw 0 5.6074766355vw;

        text-align: left;
    }
}

.under-category__wrapper {
    display: flex;

    gap: 16px 24px;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .under-category__wrapper {
        overflow-x: auto;

        padding-bottom: 24px;

        gap: 16px 8px;
        flex-wrap: inherit;
    }

    .under-category__wrapper>li {
        white-space: nowrap;

        flex: 1 0 80px;
    }
}

.under-category__item {
    font-size: 14px;

    display: inline-flex;

    padding: 4px 24px;

    border: solid 1px #fff;
    border-radius: 48px;

    align-items: center;
    justify-content: center;
}

.under-category__item.active {
    pointer-events: none;

    color: #000;
    background: #fff;
}

.under-wrapper h1 {
    font-family: Barlow Condensed;
    font-size: 40px;
    font-weight: 700;
    font-style: normal;
    line-height: 200%;
    /* 80px */

    letter-spacing: 1.6px;

    color: #fff;
}

@media screen and (max-width: 768px) {
    .under-wrapper h1 {
        line-height: 1.6;
    }
}

.under-wrapper h1 span {
    font-size: 24px;

    display: inline-block;

    padding-left: 24px;
}

@media screen and (max-width: 768px) {
    .under-wrapper h1 span {
        padding-top: 24px;
        padding-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .under-wrapper h1 {
        font-size: 32px;

        padding: 0 24px;
    }
}

.under-disc,
.under-topimg {
    flex-basis: 50%;
}

.under-disc__wrapper,
.under-topimg__wrapper {
    display: flex;

    justify-content: space-between;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {

    .under-disc__wrapper,
    .under-topimg__wrapper {
        display: block;
    }
}

.under-img__def {
    flex-basis: 50%;
}

@media screen and (max-width: 768px) {
    .under-img__def {
        flex-basis: 100%;
    }

    .under-img__def.addjust-01 {
        padding-top: 48px;
    }
}

.under-img__2col {
    flex-basis: 540px;
}

@media screen and (max-width: 768px) {
    .under-img__2col {
        flex-basis: 100%;
    }

    .under-img__2col.addjust-01 {
        padding-top: 48px;
    }
}

.under-txt__def {
    flex-basis: calc(50% - 97px);
}

@media screen and (max-width: 768px) {
    .under-txt__def {
        padding-top: 24px;

        flex-basis: 100%;
    }

    .under-txt__def.sp-reset {
        padding-top: 0;
    }
}

.under-title {
    position: fixed;
    z-index: -1;

    width: 100%;
    height: 250px;
}

.under-content {
    padding-top: 250px;
}

.under-content__sec {
    padding: 80px 0;
}

@media screen and (max-width: 768px) {
    .under-content__sec {
        padding: 48px 0;
    }

    .under-content__sec:last-child {
        padding-bottom: 0;
    }

    .under-title {}

    .under-content {
        padding-top: 250px;
    }
}

.under-content__sec01 {
    display: flex;

    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.under-def {
    padding: 80px 0;

    text-align: left;

    background-image: radial-gradient(157.07% 125.85% at 87.15% 89.34%, #2d2b2b 0%, #000 100%);
}

@media screen and (max-width: 768px) {
    .under-def {
        padding: 64px 0;
    }
}

.under-def__inner {
    width: 1140px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .under-def__inner {
        width: 100%;
        padding: 0 24px;
    }
}

.under-def__inner-sm {
    width: 948px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .under-def__inner-sm {
        width: 100%;
    }
}

.under-def__inner-xs {
    width: 720px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .under-def__inner-xs {
        width: 100%;
    }
}

.under-def.page-detail {
    color: #333;
    background: #f5f5f5;
}

.under-def.page-detail a:link {
    color: #333;
}

.under-box-def {
    padding: 16px;

    border: solid 1px rgba(255, 255, 255, .1);
}

.under-box1 {
    padding: 24px;

    border: solid 1px rgba(255, 255, 255, .1);

    flex-basis: calc(50% - 24px);
}

.under-box1__wrapper {
    display: flex;

    padding: 24px 0;

    flex-wrap: wrap;
    gap: 24px;
}

.under-box1__wrapper:last-child {
    padding-bottom: 0;
}

@media screen and (max-width: 768px) {
    .under-box1 {
        padding: 8px;

        flex-basis: 100%;
    }
}

.under-box2 {
    border: solid 1px rgba(255, 255, 255, .1);

    flex-basis: calc(50% - 24px);
}

.under-box2__wrapper {
    display: flex;

    padding: 24px 0;

    flex-wrap: wrap;
    gap: 24px;
}

#AI.under-title {
    height: 350px;
}

#AI-under-content .under-box2__wrapper {
    gap: 0;
}

#AI-under-content .under-box3>.item>.item-title {
    border-right: solid 1px #7A7A7A;
}

#AI-under-content .under-box3 {
    border: solid 1px #7A7A7A;
}

@media screen and (min-width: 768px) {
    .u-content__def {
        padding-left: 120px;
    }
}

@media screen and (max-width: 768px) {
    .under-box2 {
        flex-basis: 100%;
    }
}

.under-box2>.item {
    display: flex;

    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .under-box2>.item {
        display: block;
    }
}

.under-box2>.item>.item-title {
    font-size: 16px;
    font-weight: bold;

    display: flex;

    padding: 8px;

    background: rgba(255, 255, 255, .1);

    justify-content: center;
    align-items: center;
    flex-basis: 176px;
}

@media screen and (max-width: 768px) {
    .under-box2>.item>.item-title {
        font-size: 13px;
    }
}

.under-box2>.item>.item-content {
    font-size: 12px;

    padding: 16px;

    flex: 1;
}

@media screen and (max-width: 768px) {
    .under-box2>.item>.item-content {
        padding: 8px;
    }
}

.under-box3 {
    border: solid 1px rgba(255, 255, 255, .1);

    flex-basis: 100%;
}

.under-box3__wrapper {
    display: flex;

    padding: 24px 0;

    flex-wrap: wrap;
    gap: 24px;
}

@media screen and (max-width: 768px) {
    .under-box3__wrapper {
        gap: 16px;
    }
}

.under-box3>.item {
    display: flex;

    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .under-box3>.item {
        display: block;
    }
}

.under-box3>.item>.item-title {
    font-size: 16px;
    font-weight: bold;

    display: flex;

    padding: 8px;

    background: rgba(255, 255, 255, .1);

    justify-content: center;
    align-items: center;
    flex-basis: 176px;
}

.customize-support .under-box3>.item>.item-title {
    justify-content: unset;
    align-items: unset;
    border-right: solid 1px #7A7A7A;
}

.customize-support .under-box3 {
    border: solid 1px #7A7A7A;
}

@media screen and (max-width: 768px) {
    .under-box3>.item>.item-title {
        font-size: 13px;

        display: block;

        text-align: center;
    }
}

.under-box3>.item>.item-content {
    font-size: 14px;

    display: flex;

    padding: 16px;

    flex: 1;
    gap: 8px;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .under-box3>.item>.item-content {
        padding: 8px;
    }
}

.under-box3>.item>.item-content>div {
    font-size: 12px;
    font-weight: 300;
    line-height: 1.4;

    padding: 4px;

    text-align: center;

    border-radius: 4px;
    background: rgba(255, 255, 255, .4);

    flex-basis: 19.31%;
}

@media screen and (max-width: 768px) {
    .under-box3>.item>.item-content>div {
        flex-basis: 100%;
    }
}

.under-box4 {
    display: flex;

    margin-bottom: 16px;

    flex-wrap: wrap;
    gap: 24px;
}

@media screen and (max-width: 768px) {
    .under-box4 {
        display: block;
    }
}

.under-box4 .thumb {
    height: auto;

    flex-basis: 200px;
}

@media screen and (max-width: 768px) {
    .under-box4 .thumb {
        text-align: center;

        border-bottom: solid 1px #ddd;
        background: #fff;
    }

    .under-box4 .thumb>img {
        max-width: 80%;
    }
}

.under-box4 .txt {
    line-height: 1.4;

    display: flex;

    padding: 16px;

    color: #333;
    background: #fff;

    flex: 1;
    align-items: center;
}

.under-box4__wrapper {
    padding-top: 24px;
}

.under-box5 {
    flex-basis: 50%;
}

.under-box5__wrapper {
    display: flex;

    flex-wrap: wrap;
    justify-content: center;
}

.under-box5>img {
    max-width: 100%;
}

@media screen and (max-width: 768px) {
    .under-box5 {
        flex-basis: 100%;
    }
}

.under-box6 {
    padding-left: 40px;

    flex-basis: calc(50%);
}

.under-box6__wrapper {
    display: flex;

    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .under-box6__wrapper {
        display: block;
    }
}

.under-box6:first-child {
    padding-right: 40px;
    padding-left: 0;

    border-right: solid 1px #333;

    flex-basis: calc(50%);
}

@media screen and (max-width: 768px) {
    .under-box6 {
        padding-top: 40px;
        padding-left: 0;
    }

    .under-box6:first-child {
        padding-top: 0;
        padding-right: 0;
        padding-bottom: 40px;

        border-bottom: solid 1px #333;
    }
}

.under-3col {
    display: flex;

    background: url(../img/common/bg_col3.png) repeat-y;

    flex-wrap: wrap;
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .under-3col {
        display: block;

        padding: 16px;

        border-radius: 8px;
        background: #333;
    }
}

.under-3col>.item {
    flex-basis: 337px;
}

@media screen and (max-width: 768px) {
    .under-3col>.item {
        padding-top: 24px;
        padding-bottom: 24px;

        border-bottom: solid 1px rgba(255, 255, 255, .1);
    }

    .under-3col>.item:first-child {
        padding-top: 0;
    }

    .under-3col>.item:last-child {
        border: none;
    }
}

.under-3col>.item>.title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;

    text-align: center;
    letter-spacing: .5px;
}

@media screen and (max-width: 768px) {
    .under-3col>.item>.title {
        text-align: left;
    }
}

.under-3col-02 {
    display: flex;

    flex-wrap: wrap;
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .under-3col-02 {
        display: block;

        padding: 16px;

        border-radius: 8px;
        background: #333;
    }
}

.under-3col-02>.item {
    padding: 24px;

    border-radius: 8px;
    background: #333;

    flex-basis: 337px;
}

@media screen and (max-width: 768px) {
    .under-3col-02>.item {
        padding: 0;
        padding-top: 16px;
        padding-bottom: 16px;

        border-bottom: solid 1px rgba(255, 255, 255, .1);
        border-radius: 0;
    }

    .under-3col-02>.item:first-child {
        padding-top: 0;
    }

    .under-3col-02>.item:last-child {
        padding-bottom: 0;

        border: none;
    }
}

.under-3col-02>.item>.title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;

    text-align: center;
    letter-spacing: .5px;
}

@media screen and (max-width: 768px) {
    .under-3col-02>.item>.title {
        text-align: left;
    }
}

.under-4col__wrapper {
    display: grid;

    grid-template-columns: repeat(4, 1fr);
    gap: 48px 32px;
}

@media screen and (max-width: 768px) {
    .under-4col__wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 48px 8px;
    }
}

.under-4col__wrapper>.item>.thumb {
    display: inline-flex;

    min-width: 264px;
    max-width: 100%;
    margin-bottom: 8px;

    background: #fff;

    aspect-ratio: 4/3;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .under-4col__wrapper>.item>.thumb {
        width: 100%;
        min-width: inherit;
        padding: 20px;
    }
}

.under-4col__wrapper>.item>.thumb2 {
    display: inline-flex;

    width: 100%;

    align-items: center;
    justify-content: center;
}

.under-4col__wrapper>.item>.thumb2>img {
    width: 100%;
    height: auto;

    -o-object-fit: cover;

    object-fit: cover;
}

@media screen and (max-width: 768px) {
    .under-4col__wrapper>.item>.thumb2 {
        width: 100%;
        min-width: inherit;
    }
}

.under-4col__wrapper>.item>.title {
    font-size: 16px;
    line-height: 1.6;

    display: -webkit-box;
    overflow: hidden;

    margin-bottom: 8px;

    text-align: left;
    letter-spacing: .5px;
    text-overflow: ellipsis;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

@media screen and (max-width: 768px) {
    .under-4col__wrapper>.item>.title {
        font-size: 13px;
        line-height: 1.4;
    }
}

.under-4col__wrapper .company-name {
    font-size: 13px;
    line-height: 1.4;

    padding-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .under-4col__wrapper .company-name {
        font-size: 2.8037383178vw;

        padding-bottom: 1.8691588785vw;
    }
}

.page-detail a {
    color: #333;
}

.page-detail a:link {
    color: #333;
}

.page-detail a:visited {
    color: #333;
}

.page-detail__content {
    margin-top: -160px;
}

.page-detail__content strong {
    font-weight: bold !important;
}

.page-detail__form-content {
    display: flex;
    flex-direction: column;

    margin-bottom: 48px;
    padding-top: 64px;
    padding-bottom: 64px;

    border-radius: 16px;
    background: #fff;

    align-items: center;
}

.page-detail__form-content>iframe {
    width: 580px;
    height: 650px;
}

@media screen and (max-width: 768px) {
    .page-detail__form-content {
        width: 100%;
        margin-bottom: 7.476635514vw;
        padding: 5.6074766355vw 0;
    }

    .page-detail__form-content>iframe {
        width: 100%;
        height: 158.8785046729vw;

        border-radius: 8px;
    }
}

.page-detail__form-txt {
    width: 580px;
    padding-top: 24px;

    border-top: solid 1px #ddd;
}

.page-detail__form-txt a {
    text-decoration: underline;
}

@media screen and (max-width: 768px) {
    .page-detail__form-txt {
        width: 100%;
        padding: 5.6074766355vw 3.738317757vw 0 3.738317757vw;
    }
}

.page-detail__inner {
    padding-top: 32px;
}

@media screen and (max-width: 768px) {
    .page-detail__inner {
        padding: 24px 24px 0 24px;
    }
}

.page-detail__mv {
    display: block;
}

.page-detail__mv>img {
    height: auto;
}

.page-detail__info-wrapper {
    display: flex;

    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.page-detail__icn-wrapper {
    display: flex;

    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.page-detail__icn-wrapper>.news__card-icon {
    font-size: 16px;

    border: #333 solid 1px;
}

@media screen and (max-width: 768px) {
    .page-detail__icn-wrapper>.news__card-icon {
        font-size: 12px;
    }
}

.page-detail__date {
    font-size: 16px;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .page-detail__date {
        font-size: 12px;
    }
}

.page-detail .article__index {
    font-weight: bold;
    line-height: 1.4;

    list-style-type: none;
}

.page-detail .article__index>.item {
    padding-bottom: 16px;
}

.page-detail .article__index>.item:last-child {
    padding-bottom: 0;
}

.page-detail .article__index>.item a {
    color: #333;
}

.page-detail .article__index>.item a:link {
    color: #333;
}

.page-detail .article__index>.item a:visited {
    color: #333;
}

.page-detail h2 {
    font-size: 20px;
    font-weight: bold;

    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .page-detail h2 {
        font-size: 4.6728971963vw;

        padding-bottom: 3.738317757vw;
    }
}

.page-detail h3 {
    font-size: 18px;
    font-weight: bold;

    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .page-detail h3 {
        font-size: 4.2056074766vw;

        padding-bottom: 3.738317757vw;
    }
}

.page-detail .article__title {
    font-size: 20px !important;
    font-weight: bold;

    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .page-detail .article__title {
        font-size: 4.6728971963vw !important;

        padding-bottom: 3.738317757vw;
    }
}

.page-detail p {
    font-size: 16px;

    padding-bottom: 32px;
}

@media screen and (max-width: 768px) {
    .page-detail p {
        font-size: 3.738317757vw;

        padding-bottom: 7.476635514vw;
    }
}

.page-detail .article__sub-heading {
    font-size: 18px !important;
    font-weight: bold;

    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .page-detail .article__sub-heading {
        font-size: 4.2056074766vw !important;

        padding-bottom: 3.738317757vw;
    }
}

.page-detail .article__text--sm {
    font-size: 14px;

    padding-bottom: 32px;
}

@media screen and (max-width: 768px) {
    .page-detail .article__text--sm {
        font-size: 3.2710280374vw;

        padding-bottom: 7.476635514vw;
    }
}

.page-detail .shopt {
    margin: 0;
    padding-top: 32px;

    border: none;
    border-top: 1px solid #ddd;
}

@media screen and (max-width: 768px) {
    .page-detail .shopt {
        padding-top: 7.476635514vw;
    }
}

.page-detail .article__caption {
    font-size: 14px;
    line-height: 1.3;

    padding-top: 8px;
}

.page-detail .article__detail-img {
    padding-bottom: 32px;
}

@media screen and (max-width: 768px) {
    .page-detail .article__detail-img {
        padding-bottom: 7.476635514vw;
    }
}

.page-detail .article__2col-wrapper {
    display: flex;

    justify-content: space-between;
    flex-wrap: wrap;
}

.page-detail .article__2col-item {
    flex-basis: 350px;
}

.page-detail .article__table {
    display: block;

    width: 100%;

    border-top: solid 2px #666;
    border-bottom: solid 2px #666;
}

.page-detail .article__table tbody {
    display: block;
}

.page-detail .article__table tr {
    display: flex;

    border-bottom: solid 1px #ddd;

    gap: 8px;
    flex-wrap: wrap;
}

.page-detail .article__table tr:last-child {
    border-bottom: none;
}

.page-detail .article__table th {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.4;

    display: flex;

    padding: 16px 0;

    flex-basis: 200px;
}

.page-detail .article__table td {
    font-size: 14px;
    line-height: 1.4;

    display: flex;

    padding: 16px 0;

    flex: 1;
}

.page-detail .article__list {
    line-height: 1.4;

    margin-left: 24px;
    padding-bottom: 32px;

    list-style-type: disc;
}

@media screen and (max-width: 768px) {
    .page-detail .article__list {
        padding-bottom: 7.476635514vw;
    }
}

.page-detail .article__list>li {
    padding-bottom: 16px;
}

@media screen and (max-width: 768px) {
    .page-detail .article__list>li {
        padding-bottom: 3.738317757vw;
    }
}

.page-detail .article__list>li:last-child {
    padding-bottom: 0;
}

.page-detail .article__box {
    margin-bottom: 32px;
    padding: 24px;

    border-radius: 16px;
    background: #fff;
}

.page-detail .article__box>p {
    padding: 0;
}

@media screen and (max-width: 768px) {
    .page-detail .article__box {
        margin-bottom: 7.476635514vw;
        padding: 3.738317757vw;

        border-radius: 8px;
    }
}

.page-detail .article__company-wrapper {
    display: flex;

    gap: 32px;
    align-items: center;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .page-detail .article__company-wrapper {
        display: block;
    }
}

.page-detail .article__company-wrapper .thumb {
    display: flex;

    padding: 24px;

    flex-basis: 240px;
    align-items: center;
    justify-content: center;
}

.page-detail .article__company-wrapper .thumb img {
    width: 100%;
    height: auto;

    -o-object-fit: contain;

    object-fit: contain;
}

.page-detail .article__company-content {
    flex: 1;
}

@media screen and (max-width: 768px) {
    .page-detail .article__company-content {
        padding-top: 1.8691588785vw;

        text-align: center;

        border-top: solid 1px #ddd;
    }
}

.page-detail .article__company-name {
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .page-detail .article__company-name {
        font-size: 3.738317757vw;
    }
}

.page-detail .article__company-link {
    display: flex;

    gap: 4px;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .page-detail .article__company-link {
        justify-content: center;
    }
}

.page-detail .u-btn__wrapper {
    margin-bottom: 32px;
}

@media screen and (max-width: 768px) {
    .page-detail .u-btn__wrapper {
        margin-bottom: 7.476635514vw;
    }
}

.page-detail .u-btn__wrapper-l,
.page-detail .u-btn__wrapper-r {
    margin-bottom: 32px;
}

@media screen and (max-width: 768px) {

    .page-detail .u-btn__wrapper-l,
    .page-detail .u-btn__wrapper-r {
        margin-bottom: 7.476635514vw;
    }
}

.page-detail .u-link__ul {
    border-bottom: solid 1px #666 !important;
}

.slick-dots {
    bottom: -40px;
}

.slick-dots li {
    position: relative;

    display: inline-block;

    width: 40px;
    height: 1px;
    margin: 0;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 40px;
    height: 1px;
    padding: 0;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: rgba(255, 255, 255, .3);
}

.slick-dots li.slick-active button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 40px;
    height: 1px;
    padding: 0;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: #fff;
}

.slick-dots li button:before {
    content: none;
}

.slick-dotted.slick-slider {
    margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
    .slick-dotted.slick-slider {
        margin-bottom: 0;
    }
}

.slick-arrow:before {
    position: absolute;
    top: 0;
    left: 0;

    width: 100% !important;
    height: 100% !important;

    content: '' !important;
}

.slick-next:before {
    background: url(../img/common/arrow_next.svg) !important;
    background-size: contain !important;
}

.slick-prev:before {
    background: url(../img/common/arrow_pre.svg) !important;
    background-size: contain !important;
}

.slick-arrow {
    z-index: 2 !important;

    width: 32px !important;
    height: 32px !important;
}

.slick-next {
    top: 34.4% !important;
    right: 40px !important;
}

@media screen and (max-width: 768px) {
    .slick-next {
        right: 0 !important;
    }
}

.slick-prev {
    top: 34.4% !important;
    left: 40px !important;
}

@media screen and (max-width: 768px) {
    .slick-prev {
        left: 0 !important;
    }
}

.slick__detail .slick-arrow:before {
    position: absolute;
    top: 0;
    left: 0;

    width: 100% !important;
    height: 100% !important;

    content: '' !important;
}

.slick__detail .slick-next:before {
    background: url(../img/common/arrow_next.svg) !important;
    background-size: contain !important;
}

.slick__detail .slick-prev:before {
    background: url(../img/common/arrow_pre.svg) !important;
    background-size: contain !important;
}

.slick__detail .slick-arrow {
    z-index: 1 !important;

    width: 32px !important;
    height: 32px !important;
}

.slick__detail .slick-next {
    top: 44.4% !important;
    right: -80px !important;
}

@media screen and (max-width: 768px) {
    .slick__detail .slick-next {
        right: 0 !important;
    }
}

.slick__detail .slick-prev {
    top: 44.4% !important;
    left: -80px !important;
}

@media screen and (max-width: 768px) {
    .slick__detail .slick-prev {
        left: 0 !important;
    }
}

.slick-dots>li:first-child:last-child {
    display: none;
}

.coming-soon {
    font-size: 32px;
    font-weight: bold;

    padding: 80px 0;

    text-align: center;
}

.w2_form_input_title {
    line-height: 1;

    display: block;

    padding-bottom: 8px;
}

.w2_form_input_outer {
    padding-top: 16px;
    padding-bottom: 16px;

    border-top: solid 1px #666;
}

.w2_form_input_outer:first-child {
    padding-top: 0;

    border-top: none;
}

.w2_form_input_outer_privacy {
    padding-bottom: 40px;

    justify-content: center;
    align-items: center;
}

.w2_form_input_outer_submit {
    display: flex;

    justify-content: center;
}

.pagination {
    display: flex;

    justify-content: center;
}

.wp-pagenavi {
    font-size: 16px;

    display: flex;
    /* 全体 */

    margin: 48px 0 0 0;

    gap: 8px;
    align-items: center;
    justify-content: center;
}

.wp-pagenavi a {
    /* フォント色 */
    color: rgba(0, 0, 0, .57);
}

.pages {
    display: none;
    /* 左の表記 */

    margin-right: 16px;
}

.extend {
    display: none;
}

.wp-pagenavi .current,
.wp-pagenavi a.page {
    display: flex;

    width: 32px;
    height: 32px;

    color: #666;
    border-radius: 50%;
    background-color: #000;

    align-items: center;
    justify-content: center;
}

.wp-pagenavi .current {
    font-weight: 600;

    color: #fff;
    background: linear-gradient(90deg, #4735be 0%, #03dde8 100%);
}

.wp-pagenavi .first,
.wp-pagenavi .extend {
    /* ... */
    margin-right: 10px;
}

.wp-pagenavi .nextpostslink {
    position: relative;

    margin-left: 4px;
}

.wp-pagenavi .nextpostslink::after {
    position: absolute;
    top: -5px;
    left: 0;

    width: 8px;
    height: 8px;

    content: '';
    transform: rotate(-135deg);

    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.wp-pagenavi .previouspostslink {
    position: relative;

    margin-right: 16px;
}

.wp-pagenavi .previouspostslink::after {
    position: absolute;
    top: -4px;
    left: 0;

    width: 8px;
    height: 8px;

    content: '';
    transform: rotate(45deg);

    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.wp-password-wrapper {
    width: 640px;
    margin: 0 auto;
    padding: 80px;

    border-radius: 8px;
    background: #000;
}

@media screen and (max-width: 768px) {
    .wp-password-wrapper {
        width: 100%;
        padding: 0;

        background: none;
    }
}

.wp-password-wrapper>form p:last-child {
    display: flex;

    padding-top: 40px;

    gap: 8px;
}

.wp-password-wrapper>form p:last-child input[type=password] {
    font-size: 16px;

    width: 240px;
    height: 40px;
    margin-left: 8px;
    padding: 0 8px;

    border: none;
    border-radius: 4px;
}

.wp-password-wrapper>form p:last-child input[type=submit] {
    width: 80px;
    height: 40px;

    cursor: pointer;

    color: #fff;
    border: none;
    border-radius: 4px;
    background: #333;
}

.wp-password-wrapper>form p:last-child input[type=submit]:hover {
    opacity: .7;
}

@media screen and (max-width: 768px) {
    .wp-password-wrapper>form p:last-child {
        align-items: flex-end;
    }

    .wp-password-wrapper>form p:last-child input[type=password] {
        width: 70.0934579439vw;
        margin-left: 0;
    }

    .wp-password-wrapper>form p:last-child input[type=submit] {
        width: 18.691588785vw;

        border-radius: 4px;
    }
}

.uc_operator {
    display: flex;

    gap: 24px;
    flex-wrap: wrap;
}

.uc_operator-item {
    display: flex;

    padding: 16px;

    border-radius: 8px;
    background: #fff;

    flex-basis: 300px;
    align-items: center;
    gap: 16px;
}

@media screen and (max-width: 768px) {
    .uc_operator-item {
        flex-basis: 100%;
    }
}

.uc_operator-img {
    width: 80px;
    height: 80px;
}

.uc_operator-img img {
    border-radius: 100%;

    -o-object-fit: cover;

    object-fit: cover;
}

.uc_operator-name {
    line-height: 1.4;

    flex: 1;
}

.article__q {
    display: flex;

    gap: 16px;
    flex-wrap: wrap;
}

.article__q-title {
    font-size: 30px !important;
    font-weight: bold;
    line-height: 1;

    color: #183bbe;

    justify-content: center;
    align-items: flex-start;
    flex-basis: 30px;
}

.article__q-txt {
    font-size: 18px !important;
    font-weight: bold;
    line-height: 1.6;

    padding-top: 2px;

    flex: 1;
}

@media screen and (max-width: 768px) {
    .article__q-txt {
        font-size: 3.738317757vw !important;
    }
}

.article__a {
    display: flex;

    padding-top: 16px;

    gap: 16px;
    flex-wrap: wrap;
}

.article__a-title {
    font-size: 30px !important;
    font-weight: bold;
    line-height: 1;

    color: #ff2e00;

    justify-content: center;
    align-items: flex-start;
    flex-basis: 30px;
}

.article__a-txt {
    line-height: 1.6;

    padding-top: 2px;

    flex: 1;
}

.aipoc-01__wrapper {
    position: relative;

    display: flex;

    gap: 40px 0;
    justify-content: space-between;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .aipoc-01__wrapper {
        padding-top: 220px;

        gap: 24px 0;
    }
}

.aipoc-01__wrapper>.item {
    display: flex;
    flex-direction: column;

    flex-basis: 540px;
}

.aipoc-01__wrapper>.item>.title {
    font-size: 24px;
    font-weight: bold;

    position: relative;

    display: flex;

    height: 60px;
    margin-bottom: 1px;

    background: #183bbe;

    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .aipoc-01__wrapper>.item>.title {
        font-size: 18px;

        height: 40px;
    }
}

.aipoc-01__wrapper>.item>.title>.num {
    font-size: 32px;
    font-weight: bold;

    position: absolute;
    top: auto;
    bottom: auto;
    left: 40px;
}

@media screen and (max-width: 768px) {
    .aipoc-01__wrapper>.item>.title>.num {
        font-size: 20px;

        left: 24px;
    }
}

.aipoc-01__wrapper>.item>.content {
    padding: 24px;

    background: #333;

    flex-grow: 1;
}

@media screen and (max-width: 768px) {
    .aipoc-01__wrapper>.item>.content {
        padding: 16px;
    }
}

.aipoc-02__wrapper {
    margin-top: 40px;
    padding: 24px 0;

    border-top: solid 2px #fff;
    /* border-bottom: solid 2px #fff; */
}

.aipoc__icn {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 162px;
    height: 162px;
}

@media screen and (max-width: 768px) {
    .aipoc__icn {
        top: 100px;
    }
}

.aipoc-03__wrapper {
    margin-top: 40px;
    padding-top: 40px;

    border-top: solid 1px rgba(255, 255, 255, .1);
}

.aipoc__btn {
    font-size: 18px;
    font-weight: bold;
    font-weight: bold;

    position: fixed;
    right: 0;
    bottom: 20px;
    left: 0;

    display: inline-flex;

    width: 375px;
    height: 56px;
    margin: 0 auto;

    border-radius: 28px;
    background: linear-gradient(90deg, #4b34be 0%, #1235b9 46.78%, #00f1ee 96.45%);

    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 768px) {
    .aipoc__btn {
        width: 100%;
        height: 40px;

        border-radius: 0;
    }
}

@media screen and (max-width: 768px) {
    .aipoc__adjust01 {
        padding-top: 40px;
    }
}

.archive-video {
    width: 100%;

    aspect-ratio: 16/9;
}

.archive-video iframe {
    width: 100%;
    height: 100%;
}

.footer-acc {
    padding-right: 32px;
}

.footer-acc-item {
    position: absolute;

    min-width: 300px;
}

@media screen and (max-width: 768px) {
    .footer-acc-item {
        width: 88.785046729vw;

        background: #333;
    }
}

.footer-acc-item>a {
    display: block;

    padding: 8px;
}

.accordion {
    font-weight: bold;

    position: relative;

    display: flex;

    cursor: pointer;
    transition: .3s ease;

    align-items: center;
}

.accordion:hover {
    opacity: .7;
}

.accordion::before {
    position: absolute;
    top: 50%;
    right: 8px;

    display: block;

    width: 14px;
    height: 2px;

    content: '';
    content: '';
    transform: translateY(-50%);

    background: #666;
}

.accordion::after {
    position: absolute;
    top: 50%;
    right: 8px;

    display: block;

    width: 14px;
    height: 2px;

    content: '';
    transition: ease .2s;
    transform: translateY(-50%) rotate(90deg);

    background: #666;
}

.accordion+div {
    display: none;
}

.accordion.on::after {
    transform: translateY(-50%) rotate(0);
}

.btobhum {
    width: 60px;
    height: 60px;
    right: 0;
    background: #181717;
}

.btobhum .hamburger__line {
    background: #fff;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.btobhum .hamburger__line-1 {
    top: 15px;
}

.btobhum .hamburger__line-2 {
    top: 27px;
}

.btobhum .hamburger__line-3 {
    top: 39px;
}

.btobhum.on .hamburger__line-1 {
    top: 30px;
    transform: rotate(45deg);
}

.btobhum.on .hamburger__line-3 {
    top: 30px;
    transform: rotate(-45deg);
}

@media screen and (max-width: 768px) {
    .btobhum {
        width: 40px;
        height: 40px;
    }

    .btobhum .hamburger__line-1 {
        top: 10px;
    }

    .btobhum .hamburger__line-2 {
        top: 20px;
    }

    .btobhum .hamburger__line-3 {
        top: 30px;
    }

    .btobhum.on .hamburger__line-1 {
        top: 20px;
    }

    .btobhum.on .hamburger__line-3 {
        top: 20px;
    }
}

.u-btn__def.model_link {
    background: linear-gradient(89.22deg, #5A25BA 4.42%, #5440C9 13.97%, #0E5CCC 28.07%, #133EC2 38.62%, #1C13A3 57.46%, #0E5CCC 76.56%, #0096F2 86.94%, #00F9EC 97.99%);
    color: #fff;
    width: 80%;
    margin-top: 30px;
}

#lead_txt {
    padding: 0;
    border-bottom: solid 2px #fff;
    font-family: 'Barlow Condensed', 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

#lead_txt span {
    display: block;
    width: 100%;
    padding: 10px;
    text-align: center;
    font-size: 23px;
    background: linear-gradient(172deg, black, #131313);
}

#lead_txt p {
    text-align: center;
    font-size: 16px;
    padding: 30px 0;
}

@media screen and (max-width: 768px) {
    #lead_txt span {
        padding: 10px 24px;
        font-size: 19px;
    }

    #lead_txt p {
        padding: 15px 24px;
    }
}

#AI-under-content .under-def {
    padding-top: 0;
}

#AI-under-content .u-pt__base.u-catch {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#AI-under-content .u-pt__base.u-catch p {
    font-size: 14px;
    width: 100%;
    font-weight: bold;
}

#AI .u-content__def h1 span {
    padding-left: 0px;
}

@media screen and (max-width: 768px) {
    #AI-under-content {
        padding-top: 0px;
    }

    #AI .u-content__def p {
        padding: 0 24px;
    }

    #AI .u-content__def h1 span {
        padding-top: 104px;
    }

    #AI-under-content .u-pt__base.u-catch {
        flex-direction: column;
    }

    #AI-under-content .u-pt__base.u-catch p {
        width: 100%;
    }
}


ul#Usecase {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3.4722222222vw;
    margin-top: 80px;
}

@media screen and (min-width: 1920px) {
    ul#Usecase {
        gap: 50px;
    }
}

@media screen and (max-width: 767px) {
    ul#Usecase {
        gap: 8vw;
        margin-top: 30px;
    }
}

ul#Usecase li {
    width: calc((100% / 3) - 3.4722222222vw);
    background: #fff;
}

@media screen and (max-width: 767px) {
    ul#Usecase li {
        width: 100%;
    }
}

ul#Usecase li .case-box-txt {
    padding: 1.0416666667vw 1.7361111111vw;
    color: #000;
}

@media screen and (min-width: 1920px) {
    ul#Usecase li .case-box-txt {
        padding: 15px 25px;
    }
}

@media screen and (max-width: 767px) {
    ul#Usecase li .case-box-txt {
        padding: 4vw;
    }
}

ul#Usecase li .case-box-img {
    position: relative;
}

ul#Usecase li .case-box-img .case-box-img-ttl {
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: 0 auto;
    width: 100%;
    line-height: 1.3;
}

ul#Usecase li .case-box-img .case-box-img-ttl i {
    color: #fff;
    font-size: 2.4305555556vw;
}

@media screen and (min-width: 1920px) {
    ul#Usecase li .case-box-img .case-box-img-ttl i {
        font-size: 35px;
    }
}

@media screen and (max-width: 767px) {
    ul#Usecase li .case-box-img .case-box-img-ttl i {
        font-size: 9.3333333333vw;
    }
}

ul#Usecase li .case-box-img .case-box-img-ttl h3 {
    color: #fff;
    font-weight: bold;
    font-size: 2vw;
}

@media screen and (min-width: 1440px) {
    ul#Usecase li .case-box-img .case-box-img-ttl h3 {
        font-size: 1.4361111111vw;
    }
}

@media screen and (min-width: 1920px) {
    ul#Usecase li .case-box-img .case-box-img-ttl h3 {
        font-size: 23px;
    }
}

@media screen and (max-width: 767px) {
    ul#Usecase li .case-box-img .case-box-img-ttl h3 {
        font-size: 6vw;
        line-height: 1.5;
    }
}