@charset "utf-8";

body {
    background-color: #fff;
    font-family: "Shippori Mincho", serif;
    font-size: 1.1111111111111112vw;
    color: #393D47;
}

.scroll_up {
    transition: 1.8s ease-in-out;
    transform: translateY(30px);
    opacity: 0;
}

.scroll_up.on {
    transform: translateY(0);
    opacity: 1.0;
}

.p-title, .p-date__inner, .p-summary__inner, .p-instructor__inner {
    width: 64.44444444444444vw;
    margin: 0 auto;
}

/* header */
.l-header {
    border-bottom: 0.06944444444444445vw solid #393D47;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 999;
}

.l-header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 5.555555555555555vw;
    height: 5.555555555555555vw;
}

.l-header__logo img {
    width: 25.34722222222222vw;
}

.l-header__right {
    display: flex;
    align-items: center;
}

.l-header__list {
    display: flex;
}

.l-header__item {
    width: 11.805555555555555vw;
    text-align: center;
    position: relative;
    letter-spacing: 0.1em;
}

.l-header__item::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 0.06944444444444445vw;
    height: 2.7777777777777777vw;
    background-color: #393D47;
    top: -0.6944444444444444vw;
    left: 0.1388888888888889vw;
}



/* headerチケット購入ボタン */
.l-header__btn {
    width: 20.833333333333336vw;
    margin: 0 auto;
}

.l-header__btnText {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    width: 20.833333333333336vw;
    height: 5.555555555555555vw;
    background-color: #393D47;
    border-top: 0.06944444444444445vw solid #393D47;
    border-right: 0.06944444444444445vw solid #393D47;
    border-left: 0.06944444444444445vw solid #393D47;
    font-weight: 600;
    font-size: 1.3888888888888888vw;
    position: relative;
    padding-left: 2.430555555555556vw;
}

.l-header__btnText:hover {
    color: #393D47;
    z-index: 1;
}

.l-header__btnText::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 2.083333333333333vw;
    height: 2.083333333333333vw;
    background: url(../img/arrow_white.svg) no-repeat;
    background-size: contain;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.8055555555555554vw;
    z-index: 1;
}

.l-header__btnText:hover:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 2.083333333333333vw;
    height: 2.083333333333333vw;
    background: url(../img/arrow_dark.svg) no-repeat;
    background-size: contain;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.8055555555555554vw;
    transition: 0.5s;
}

.l-header__btnText::after {
    content: "";
    width: 0%;
    height: 100%;
    background: #F2F4FC;
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.5s;
}

.l-header__btnText:hover::after {
    width: 100%;
    color: #393D47;
    position: absolute;
    z-index: -1;
}

/* fv */
.p-fv {
    padding-top: 11.11111111111111vw;
}

/* fv */
.p-fv__item {
    width: 64.44444444444444vw;
    margin: 0 auto;
}

.p-fv__item img {
    width: 64.375vw;
}

/* title */
.p-title {
    padding: 3.4722222222222223vw 0 2.7777777777777777vw 0;
}

.p-title__main {
    font-size: 1.6666666666666667vw;
    line-height: 1.5;
    font-weight: 600;
}

.p-title__sub {
    font-size: 1.3888888888888888vw;
    padding-top: 0.6944444444444444vw;
    line-height: 1.5;
    font-weight: 600;
}

/* date */
.p-date__text {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.0416666666666665vw 0;
    border-top: 0.06944444444444445vw solid #393D47;
    border-bottom: 0.06944444444444445vw solid #393D47;
}

.p-date__left {
    display: flex;
    gap: 0.6944444444444444vw;
    justify-content: space-between;
    align-items: center;
    margin-left: 0.6944444444444444vw;
}

.p-date__day {
    font-size: 1.6666666666666667vw;
    font-family: "Inter", serif;
}

.p-date__week {
    font-size: 1.0416666666666665vw;
    font-family: "Inter", serif;
}

.p-date__time {
    font-size: 1.6666666666666667vw;
    font-family: "Afacad", serif;
}

.p-date__right {
    margin-right: 1.3888888888888888vw;
}

.p-date__archive {
    font-size: 0.9722222222222222vw;
    padding: 0.7638888888888888vw 1.3888888888888888vw;
    border: 0.06944444444444445vw solid #393D47;
    border-radius: 3.4722222222222223vw;
}

/* summary */
.p-summary__inner {
    padding: 0.6944444444444444vw 0 6.944444444444445vw 0;
}

.p-summary__text {
    line-height: 1.75;
}

.p-summary__title {
    font-weight: 900;
    font-family: "Noto Sans JP", serif;
    padding-bottom: 0.8333333333333334vw;
}

.p-summary__subText {
    font-size: 0.9027777777777777vw;
    line-height: 1.8;
}

.p-summary__item {
    display: flex;
    justify-content: space-between;
    padding-top: 2.7777777777777777vw;
}

.p-summary__item img {
    width: 30.90277777777778vw;
}

.p-summary__title, .p-summary__subText {
    padding-top: 2.083333333333333vw;
    font-family: "Noto Sans JP", serif;
}

/* instructor */
.p-instructor {
    background: #AB954F;
    padding: 5.555555555555555vw 0;
}

.p-instructor__title {
    font-size: 1.25vw;
    color: #fff;
    font-weight: 600;
    text-align: center;
    background-color: #393D47;
    padding: 1.25vw 0;
}

.p-instructor__card {
    display: flex;
    justify-content: space-between;
    padding-top: 3.4722222222222223vw;
}

.p-instructor__img img {
    width: 14.23611111111111vw;
    border-radius: 0.3472222222222222vw;
}

.p-instructor__right {
    width: 46.736111111111114vw;
    color: #fff;
}

.p-instructor__job {
    font-family: "Afacad", serif;
    line-height: 1.3;
    font-size: 1.25vw;
}

.p-instructor__name {
    font-size: 2.2222222222222223vw;
    font-family: "Playfair Display", serif;
    padding-bottom: 2.083333333333333vw;
}

.p-instructor__text {
    font-weight: 600;
    padding-top: 2.083333333333333vw;
    border-top: 0.06944444444444445vw solid #fff;
    line-height: 1.7;
}


/* ticket */
.p-ticket {
    padding: 5.555555555555555vw 0 6.944444444444445vw 0;
}

.p-ticket__title {
    text-align: center;
    font-size: 1.25vw;
    padding-bottom: 0.6944444444444444vw;
}

.p-ticket__price {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Afacad", serif;
    font-size: 4.444444444444445vw;
}

.p-tax {
    font-family: "Noto Sans JP", serif;
    font-size: 0.9722222222222222vw;
}

.p-ticket__text {
    /* width: 52.083333333333336vw; */
    width: 35.138888888888886vw;
    /* margin: 2.7777777777777777vw auto 2.7777777777777777vw 27.083333333333332vw; */
    margin: 2.7777777777777777vw auto 2.7777777777777777vw auto;
    line-height: 1.75;
}

.p-ticket__text li {
    text-indent: -1em;
    padding-left: 1em;
}

/* step */
.p-step {
    background-color: #56647E;
    padding: 9.027777777777777vw 0;
}

.p-step__inner {
    width: 64.58333333333334vw;
    /* width: 930px; */
    margin: 0 auto;
    background-color: #fff;
    border-radius: 36.11111111111111vw;
    /* border-radius: 520px; */
    padding: 6.944444444444445vw 0 11.11111111111111vw 0;
    /* padding: 100px 0 160px 0; */
}

.p-step__heading {
    font-size: 1.25vw;
    font-weight: 600;
    text-align: center;
    padding-bottom: 2.083333333333333vw;
    /* padding-bottom: 30px; */
}

.p-step__title {
    font-family: "Afacad", serif;
    font-size: 3.3333333333333335vw;
    padding-bottom: 2.083333333333333vw;
    border-bottom: 0.06944444444444445vw solid #393D47;
    width: 43.75vw;
    /* width:  630px; */
    margin: 0 auto;
    text-align: center;
}

.p-step__text, .p-step__subText, .p-attention__text {
    margin: 0 auto;
    line-height: 1.75;
    font-weight: 600;
}

/* .p-step__text{
        width: 50vw;
    } */
.p-step__subText, .p-attention__text {
    width: 46.52777777777778vw;
    /* width: 670px; */
}

.p-attention__text {
    width: 41.66666666666667vw;
    font-size: 0.9722222222222222vw;
}

.p-attention__text li {
    list-style: none;
    text-indent: -1em;
    padding-left: 1em;
}

.p-step__text, .p-attention {
    text-align: center;
}

.p-attention {
    font-size: 1.25vw;
    font-weight: 600;
    padding-bottom: 2.083333333333333vw;
}

.p-step__text {
    padding-top: 3.4722222222222223vw;
}

.p-step__subText {
    font-size: 0.9722222222222222vw;
    padding-top: 2.7777777777777777vw;
}

.p-step__area {
    padding-bottom: 2.7777777777777777vw;
}

/* スクロールで発火① */
.animated-box-wrapper {
    position: relative;
    width: 0.06944444444444445vw;
    height: 10.416666666666668vw;
    margin: 0 auto 1.3888888888888888vw auto;
    background: #d3d3d3;
    overflow: hidden;
}

.animated-box {
    position: relative;
    width: 100%;
    height: 100%;
}

.animated-box span {
    position: absolute;
    background: #393D47;
    /* 線の色 */
    transition: transform 1.5s ease-in;
    top: 0;
    right: 0;
    height: 100%;
    width: 0.06944444444444445vw;
    transform: translateY(-100%);
}

.c-anim-up .animated-box span {
    transform: translate(0);
}

/* スクロールで発火② */
.animated-box-wrapper--02 {
    position: relative;
    width: 0.06944444444444445vw;
    height: 10.416666666666668vw;
    margin: 0 auto 1.3888888888888888vw auto;
    background: #d3d3d3;
    overflow: hidden;
}

.animated-box--02 {
    position: relative;
    width: 100%;
    height: 100%;
}

.animated-box--02 span {
    position: absolute;
    background: #393D47;
    /* 線の色 */
    transition: transform 1.5s ease-in;
    top: 0;
    right: 0;
    height: 100%;
    width: 0.06944444444444445vw;
    transform: translateY(-100%);
}

.c-anim-up--02 .animated-box--02 span {
    transform: translate(0);
}

/* produced */
.p-produced {
    background-color: #393D47;
    padding-top: 6.25vw;
}

.p-produced__title {
    text-align: center;
    font-family: "Afacad", serif;
    font-size: 1.6666666666666667vw;
    color: #AB954F;
    letter-spacing: 0.2em;
    font-weight: 700;
    padding-bottom: 4.166666666666666vw;
}

.p-produced__logo__bornDigital img {
    width: 23.61111111111111vw;
}

.p-produced__logo__cgworld img {
    width: 17.36111111111111vw;
}

.p-produced__logo {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4.861111111111112vw;
    padding-bottom: 9.722222222222223vw;
}

.p-producedLogo {
    margin-bottom: -0.1388888888888889vw;
}

.p-producedLogo img {
    width: 100%;
}

/* footer */
.l-footer {
    text-align: center;
    background-color: #AB954F;
    font-size: 0.9722222222222222vw;
    color: #fff;
    padding: 4.166666666666666vw 0 10.416666666666668vw 0;
}

.l-footer__text {
    font-weight: 600;
    line-height: 1.7;
    padding-bottom: 2.083333333333333vw;
}

.l-footer__copyright {
    font-family: "Afacad", serif;
}

.l-footer__contact {
    line-height: 2;
    padding-bottom: 1.3888888888888888vw;
}

.l-footer__contact a {
    border-bottom: 0.06944444444444445vw solid #fff;
    padding-bottom: 0.06944444444444445vw;
}

/* PC固定エリア */
.p-fixedPc {
    border-top: 0.06944444444444445vw solid #393D47;
    border-bottom: 0.06944444444444445vw solid #393D47;
    font-family: "Afacad", serif;
    display: flex;
    background-color: #fff;
    position: fixed;
    bottom: 0;
    align-items: center;
    text-align: center;
}

.p-fixedPc__sns {
    display: flex;
    gap: 1.7361111111111112vw;
    justify-content: center;
}

.p-fixedPc__sns img {
    width: 2.361111111111111vw;
}

.p-fixedPc__item--01, .p-fixedPc__item--02, .p-fixedPc__item--03 {
    border-right: 0.06944444444444445vw solid #393D47;
    height: 4.861111111111112vw;
    padding-top: 1.6666666666666667vw;
}

.p-fixedPc__item--02, .p-fixedPc__item--03 {
    font-size: 1.3888888888888888vw;
}

.p-fixedPc__item--01 {
    width: 40.97222222222222vw;
    font-size: 1.7361111111111112vw;
    text-align: left;
    padding-left: 5.555555555555555vw;
}

.p-fixedPc__item--02 {
    width: 27.63888888888889vw;
}

.p-fixedPc__item--03 {
    width: 14.23611111111111vw;
}

.p-fixedPc__sns {
    width: 17.15277777777778vw;
}

/* c-button */
.c-button {
    width: 20.833333333333336vw;
    margin: 0 auto;
}

.c-button__text {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    width: 20.833333333333336vw;
    height: 5.555555555555555vw;
    font-weight: 600;
    background-color: #393D47;
    border: 0.06944444444444445vw solid #393D47;
    font-size: 1.3888888888888888vw;
    letter-spacing: -0.04em;
    position: relative;
    padding-left: 2.083333333333333vw;
}

.c-button__text:hover {
    color: #393D47;
    z-index: 1;
}

.c-button__text::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 2.083333333333333vw;
    height: 2.083333333333333vw;
    background: url(../img/arrow_white.svg) no-repeat;
    background-size: contain;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.8055555555555554vw;
    z-index: 1;
}

.c-button__text:hover:before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 2.083333333333333vw;
    height: 2.083333333333333vw;
    background: url(../img/arrow_dark.svg) no-repeat;
    background-size: contain;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.8055555555555554vw;
    transition: 0.5s;
}

.c-button__text::after {
    content: "";
    width: 0%;
    height: 100%;
    background: #F2F4FC;
    position: absolute;
    top: 0;
    left: 0;
    transition: 0.5s;
}

.c-button__text:hover::after {
    width: 100%;
    color: #393D47;
    position: absolute;
    z-index: -1;
}

@media screen and (min-width:441px) {
    .l-headerSp, .p-fixedSp, .p-summary__logoSp, .u-brSp {
        display: none;
    }
}

@media screen and (max-width:440px) {
    .p-fixedPc, .l-header {
        display: none;
    }

    body {
        font-size: 3.6363636363636362vw;
    }

    .p-title, .p-date__inner, .p-summary__inner, .p-instructor__inner {
        width: 90.9090909090909vw;
        margin: 0 auto;
    }

    /* SP固定エリア（header） */
    .l-headerSp {
        background-color: #fff;
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 999;
        width: 100vw;
    }

    .l-headerSp__inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 3.4090909090909087vw;
        height: 13.636363636363635vw;
    }

    .l-headerSp__sns {
        display: flex;
        gap: 3.4090909090909087vw;
    }

    .l-headerSp__logo img {
        width: 62.272727272727266vw;
    }

    .l-headerSp__sns img {
        width: 6.363636363636363vw;
    }

    .l-headerBottom {
        border-bottom: 0.22727272727272727vw solid #393D47;
        border-top: 0.22727272727272727vw solid #393D47;
        font-size: 2.727272727272727vw;
        font-family: "Afacad", serif;
    }

    .l-headerBottom__inner {
        padding: 0 3.4090909090909087vw;
        display: flex;
        height: 5.909090909090909vw;
        align-items: center;
        justify-content: space-between;
    }

    /* fv */
    .p-fv {
        padding-top: 25vw;
    }

    .p-fv__item {
        width: 100vw;
    }

    .p-fv__item img {
        width: 100vw;
    }

    /* title */
    .p-title {
        padding: 28px 0 30px 0;
    }

    .p-title__main {
        font-size: 20px;
        line-height: 1.4;
    }

    .p-title__sub {
        font-size: 16px;
        padding-top: 5px;
        line-height: 1.75;
    }

    /* date */
    .p-date__text {
        padding: 9px 0;
        border-top: 0.22727272727272727vw solid #393D47;
        border-bottom: 0.22727272727272727vw solid #393D47;
    }

    .p-date__left {
        gap: 1.1363636363636365vw;
        margin-left: 2.272727272727273vw;
    }

    .p-date__day {
        font-size: 4.545454545454546vw;
    }

    .p-date__week {
        font-size: 2.727272727272727vw;
    }

    .p-date__time {
        font-size: 4.545454545454546vw;
    }

    .p-date__right {
        margin-right: 10px;
    }

    .p-date__archive {
        font-size: 13px;
        padding: 7px 19px;
        border: 1px solid #393D47;
        border-radius: 50px;
    }

    /* summary */
    .p-summary__inner {
        padding: 10px 0 50px 0;
    }

    .p-summary__text {
        font-size: 3.1818181818181817vw;
        line-height: 1.85;
    }

    .p-summary__subText {
        font-size: 12px;
        line-height: 1.8;
    }

    .p-summary__item {
        display: block;
        padding-top: 10px;
    }

    .p-summary__item img {
        width: 400px;
        padding-top: 20px;
    }

    .p-summary__subText {
        padding-top: 20px;
    }

    .p-summary__title {
        padding-bottom: 12px;
        padding-top: 20px;
    }

    /* instructor */
    .p-instructor {
        padding: 40px 0 60px 0;
    }

    .p-instructor__title {
        font-size: 15px;
        padding: 12px 0;
    }

    .p-instructor__card {
        display: block;
        padding-top: 30px;
    }

    .p-instructor__img {
        width: 205px;
        margin: 0 auto;
    }

    .p-instructor__img img {
        width: 205px;
        border-radius: 5px;
    }

    .p-instructor__right {
        width: initial;
    }

    .p-instructor__job {
        line-height: 1.25;
        font-size: 3.6363636363636362vw;
        text-align: center;
        padding-top: 24px;
    }

    .p-instructor__name {
        font-size: 5.454545454545454vw;
        font-family: "Playfair Display", serif;
        padding-bottom: 20px;
        padding-top: 6px;
        text-align: center;
    }

    .p-instructor__text {
        font-size: 2.727272727272727vw;
        padding-top: 20px;
        border-top: 0.22727272727272727vw solid #fff;
        line-height: 1.8;
    }

    /* ticket */
    .p-ticket {
        padding: 13.636363636363635vw 0 15.909090909090908vw 0;
    }

    .p-ticket__title {
        font-size: 3.6363636363636362vw;
    }

    .p-ticket__price {
        font-size: 14.545454545454545vw;
    }

    .p-tax {
        font-size: 3.1818181818181817vw;
    }

    .p-ticket__text {
        width: 90.9090909090909vw;
        margin: 4.545454545454546vw auto;
        font-size: 3.1818181818181817vw;
    }

    /* Timetable */
    .p-timetable {
        padding: 9.090909090909092vw 0 22.727272727272727vw 0;
    }

    /* Timetableタブ */
    .p-tab__item {
        gap: 6.8181818181818175vw;
        margin-bottom: 9.090909090909092vw;
    }

    .p-tab__list {
        padding: 1.8181818181818181vw 5.454545454545454vw;
        border: 0.22727272727272727vw solid #393D47;
        border-radius: 11.363636363636363vw;
    }

    .p-tab__list {
        font-size: 6.363636363636363vw;
    }

    .p-tab__week {
        font-size: 3.4090909090909087vw;
        padding-left: 1.8181818181818181vw;
    }

    /* Timetable時間 */
    .p-timetable__titleArea {
        padding-bottom: 4.545454545454546vw;
    }

    .p-timetable__title {
        font-size: 12.727272727272727vw;
    }

    .p-timetable__subTitle {
        font-size: 4.090909090909091vw;
    }

    .p-timetable__area {
        gap: 3.4090909090909087vw;
        padding-bottom: 11.363636363636363vw;
    }

    .p-timetable__area ul {
        padding-left: 0.22727272727272727vw;
        border-left: 0.22727272727272727vw solid #393D47;
    }

    .p-timetable__area li {
        font-size: 3.6363636363636362vw;
    }

    .p-timetable__area li:nth-child(1),
    .p-timetable__area li:nth-child(3),
    .p-timetable__area li:nth-child(5),
    .p-timetable__area li:nth-child(7) {
        height: 55.90909090909091vw;
    }

    .p-timetable__area li:nth-child(2),
    .p-timetable__area li:nth-child(4),
    .p-timetable__area li:nth-child(6) {
        height: 10.681818181818182vw;
    }


    /* タブの中身 */
    .p-card__pb {
        padding-bottom: 9.090909090909092vw;
    }

    .p-card__item img {
        width: 76.13636363636364vw;
    }

    .p-card__affiliation {
        padding-top: 3.1818181818181817vw;
    }

    .p-card__title {
        padding-top: 0.45454545454545453vw;
        padding-bottom: 2.727272727272727vw;
        border-bottom: 0.22727272727272727vw solid #393D47;
        width: 76.13636363636364vw;
    }

    /* step */
    .p-step {
        padding: 18.181818181818183vw 0;
    }

    .p-step__inner {
        width: 90.9090909090909vw;
        /* width: 930px; */
        padding: 18.181818181818183vw 0 27.27272727272727vw 0;
        /* padding: 100px 0 160px 0; */
        border-radius: 118.18181818181819vw;
    }

    .p-step__heading {
        font-size: 3.6363636363636362vw;
        padding-bottom: 5.454545454545454vw;
    }

    .p-step__title {
        font-family: "Afacad", serif;
        font-size: 9.090909090909092vw;
        padding-bottom: 2.083333333333333vw;
        border-bottom: 0.22727272727272727vw solid #393D47;
        width: 77.27272727272727vw;
    }

    .p-step__text, .p-step__subText, .p-attention__text, .p-attention__text {
        width: 77.27272727272727vw;
    }

    .p-attention__text {
        font-size: 3.1818181818181817vw;
    }

    .p-step__text {
        text-align: left;
    }

    .p-attention {
        font-size: 3.6363636363636362vw;
        padding-bottom: 2.083333333333333vw;
    }

    .p-step__subText {
        font-size: 2.727272727272727vw;
    }

    .p-step__area {
        padding-bottom: 6.8181818181818175vw;
    }

    /* スクロールで発火① */
    .animated-box-wrapper {
        position: relative;
        width: 0.22727272727272727vw;
        height: 22.727272727272727vw;
        margin: 0 auto 6.8181818181818175vw auto;
        background: #d3d3d3;
        overflow: hidden;
    }

    .animated-box {
        position: relative;
        width: 100%;
        height: 100%;
    }

    .animated-box span {
        position: absolute;
        background: #393D47;
        /* 線の色 */
        transition: transform 1.5s ease-in;
        top: 0;
        right: 0;
        height: 100%;
        width: 0.22727272727272727vw;
        transform: translateY(-100%);
    }

    .c-anim-up .animated-box span {
        transform: translate(0);
    }

    /* スクロールで発火② */
    .animated-box-wrapper--02 {
        position: relative;
        width: 0.22727272727272727vw;
        height: 22.727272727272727vw;
        margin: 0 auto 6.8181818181818175vw auto;
        background: #d3d3d3;
        overflow: hidden;
    }

    .animated-box--02 {
        position: relative;
        width: 100%;
        height: 100%;
    }

    .animated-box--02 span {
        position: absolute;
        background: #393D47;
        /* 線の色 */
        transition: transform 1.5s ease-in;
        top: 0;
        right: 0;
        height: 100%;
        width: 0.22727272727272727vw;
        transform: translateY(-100%);
    }

    .c-anim-up--02 .animated-box--02 span {
        transform: translate(0);
    }



    /* produced */
    .p-produced {
        padding-top: 18.181818181818183vw;
    }

    .p-produced__title {
        font-size: 5.454545454545454vw;
        padding-bottom: 13.636363636363635vw;
    }

    .p-produced__logo__bornDigital img {
        width: 77.27272727272727vw;
        padding-bottom: 11.363636363636363vw;
    }

    .p-produced__logo__cgworld img {
        width: 56.81818181818182vw;
    }

    .p-produced__logo {
        display: block;
        padding-bottom: 18.181818181818183vw;
        text-align: center;
    }

    /* footer */
    .l-footer {
        font-size: 3.1818181818181817vw;
        padding: 6.8181818181818175vw 0 20.454545454545457vw 0;
    }

    .l-footer__text {
        padding-bottom: 6.8181818181818175vw;
    }

    .l-footer__contact {
        padding-bottom: 4.545454545454546vw;
    }

    .l-footer__contact a {
        border-bottom: 0.22727272727272727vw solid #fff;
        padding-bottom: 0.22727272727272727vw;
    }

    /* SP固定エリア（footer） */
    .p-fixedSp__footer {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100vw;

    }

    .p-fixedSp__item {
        width: 50%;
    }

    .left a {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #ffffff;
        font-weight: 600;
        background-color: #393D47;
        border: 0.06944444444444445vw solid #393D47;
        font-size: 3.6363636363636362vw;
        letter-spacing: -0.04em;
        position: relative;
        padding-left: 5.454545454545454vw;
        height: 15.909090909090908vw;
    }

    .left a:hover {
        color: #393D47;
        z-index: 1;
    }

    .left a::before {
        position: absolute;
        content: "";
        display: inline-block;
        width: 5.227272727272727vw;
        height: 5.227272727272727vw;
        background: url(../img/arrow_white.svg) no-repeat;
        background-size: contain;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 3.1818181818181817vw;
        z-index: 1;
    }

    .left a:hover:before {
        position: absolute;
        content: "";
        display: inline-block;
        width: 5.227272727272727vw;
        height: 5.227272727272727vw;
        background: url(../img/arrow_dark.svg) no-repeat;
        background-size: contain;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 3.1818181818181817vw;
        transition: 0.5s;
    }

    .left a::after {
        content: "";
        width: 0%;
        height: 100%;
        background: #FCF9F2;
        position: absolute;
        top: 0;
        left: 0;
        transition: 0.5s;
    }

    .left a:hover::after {
        width: 100%;
        color: #393D47;
        position: absolute;
        z-index: -1;
    }

    .right a {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #393D47;
        font-weight: 600;
        background-color: #fff;
        border: 0.06944444444444445vw solid #393D47;
        font-size: 3.6363636363636362vw;
        letter-spacing: -0.04em;
        height: 15.909090909090908vw;
    }


    /* c-button */
    .c-button {
        width: 50vw;
    }

    .c-button__text {
        width: 50vw;
        height: 15.909090909090908vw;
        border: 0.22727272727272727vw solid #393D47;
        font-size: 3.6363636363636362vw;
        padding-left: 6.8181818181818175vw;
    }

    .c-button__text::before {
        width: 5.227272727272727vw;
        height: 5.227272727272727vw;
        left: 3.4090909090909087vw;
    }

    .c-button__text:hover:before {
        width: 5.227272727272727vw;
        height: 5.227272727272727vw;
        left: 3.4090909090909087vw;
    }

    /* Utility */
    .u-line {
        width: 90.9090909090909vw;
        margin: 0 auto;
        border: 0.06944444444444445vw solid #393D47;
    }
}