@charset "utf-8";
body{
    background-color: #fff;
    font-family: "Shippori Mincho", serif;
    font-size: 1.1111111111111112vw;
    color: #007070;
}
.scroll_up {
    transition: 1.8s ease-in-out;
    transform: translateY(2.083333333333333vw);
    opacity: 0;
}
.scroll_up.on {
    transform: translateY(0);
    opacity: 1.0;
}

/* start */
    .js-start{
        background-color: #007070;
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 100vw;
        z-index: 9000;
        opacity: 1;
    }
    .js-startLogo{
        position: fixed;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        /* display: none; */
        z-index: 9999;
        animation: fadeOut 1s 2s forwards;
        opacity: 0;
    }
    .js-startLogo img{
        width: 25.972222222222225vw;
    }

/* header */
    .l-header{
        border-bottom: 0.06944444444444445vw solid #007070;
        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;
        padding-bottom: 0.1388888888888889vw;
    }
    .l-header__logo img{
        width: 25.34722222222222vw;
    }
    .l-header__right{
        display: flex;
        align-items: center;
    }
    .l-header__list{
        display: flex;
        color: #007070;
    }
    .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:#007070;
        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.416666666666667vw;
        background-color: #007070;
        border-top: 0.06944444444444445vw solid #007070;
        border-right: 0.06944444444444445vw solid #007070;
        border-left: 0.06944444444444445vw solid #007070;
        font-weight: 600;
        font-size: 1.3888888888888888vw;
        position: relative;
        padding-left: 2.430555555555556vw;
    }
    .l-header__btnText:hover{
        color: #007070;
        z-index: 1;
        border-top: 0.06944444444444445vw solid #5A4646;
        border-right: 0.06944444444444445vw solid #5A4646;
        border-left: 0.06944444444444445vw solid #5A4646;
        border-bottom: 0.06944444444444445vw solid #5A4646;
    }
    .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_green.png) 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: #FFF2E8;
        position: absolute;
        top: 0;
        left: 0;
        transition: 0.5s;
    }
    .l-header__btnText:hover::after{
        width: 100%;
        color: #007070;
        position: absolute;
        z-index: -1;
    }

/* fv */
    .p-fv{
        padding-top: 11.11111111111111vw;
    }
    .p-fv__top{
        background-color: #007070;
    }

/* fv_slide */
    .p-fv__slider{
        width:100%;
        margin:0 auto;
        height: 34.72222222222222vw;
    }
    .p-fv__slider img{
        width:55.55555555555556vw;
        height: 31.25vw;
    }
    .p-fv__slider img:hover{
        transition: 0.5s;
        filter: brightness(60%);
    }
    .p-fv__slider .swiper-wrapper {
        transition-timing-function: linear !important;
    }
    .p-fv__slider .swiper-slide {
        width: auto; /* slidesPerView: 'auto' に必要 */
    }

    .swiper .swiper-pagination-bullet {
        background: #fff;
        transition: opacity 0.3s;
        opacity: 1;
        margin: 0 0.3472222222222222vw !important;
    }
    .swiper-pagination-bullet-active {
        opacity: 1;
        background: #DC9A6A !important;
    }

    .p-scroll{
        text-align: center;
        font-size: 0.9722222222222222vw;
        position: relative;
        padding: 3.4722222222222223vw 0 6.944444444444445vw 0;
        color: #FFF;
    }
    .p-scroll::after{
        position: absolute;
        content: "";
        top: 4.861111111111112vw;
        right: 0;
        left: 0;
        margin: 0 auto;
        color: #FFF;
        width: 1.1111111111111112vw;
        height: 1.1111111111111112vw;
        border: 0.1em solid #FFF;
        border-left: 0;
        border-bottom: 0;
        transform: translateY(-25%) rotate(135deg)
    }

/* summary */
    .p-summary__logo img{
        width: 100%;
    }
    .p-summary__text{
        text-align: center;
        padding-bottom: 4.166666666666666vw;
        padding-top: 6.25vw;
        line-height: 1.8;
        font-size: 1.25vw;
    }
    .p-summary__logo{
        padding-top: 3.4722222222222223vw;
    }

/* ticket */
    .p-ticket{
        padding: 2.083333333333333vw 0 7.638888888888889vw 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👇 */
        /* width: 37.56944444444444vw; */
        /* 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;
    }

/* Timetable */
    .p-timetable{
        background-color: #FFF2E8;
        padding: 5.555555555555555vw 0 6.944444444444445vw 0;
        border-top: 0.06944444444444445vw solid #007070;
    }

/* Timetableタブ */
    .p-tab__item {
        display: flex;
        cursor: pointer;
        justify-content: center;
        gap: 2.083333333333333vw;
        margin-bottom: 3.8194444444444446vw;
    }
    .p-tab__list {
        padding: 0.5555555555555556vw 1.7361111111111112vw;
        text-align: center;
        border: 0.06944444444444445vw solid #007070;
        border-radius: 3.4722222222222223vw;
    }
    .p-tab__list.active {
        background-color: #007070;
        color: #fff;
    }
    .p-tab__list{
        display: flex;
        align-items: center;
        font-size: 1.9444444444444444vw;
        font-family: "Inter", serif;
    }
    .p-tab__week{
        font-size: 1.0416666666666665vw;
        font-family: "Afacad", serif;
        padding-left: 0.3472222222222222vw;
    }
/* Timetable時間 */
    .p-timetable__titleArea{
        text-align: center;
        padding-bottom: 2.7777777777777777vw;
    }
    .p-timetable__title{
        font-family: "Afacad", serif;
        font-size: 3.888888888888889vw;
    }
    .p-timetable__subTitle{
        font-size: 1.25vw;
    }
    .p-timetable__area{
        display: flex;
        justify-content: center;
        gap: 6.944444444444445vw;
        padding-bottom: 4.166666666666666vw;
    }
    .p-timetable__area ul{
        padding-left: 0.6944444444444444vw;
        border-left: 0.06944444444444445vw solid #007070;
    }
    .p-timetable__area li{
        font-size: 1.3888888888888888vw;
        font-family: "Afacad", serif;
    }
    .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: 31.25vw;
    }
    .p-timetable__area li:nth-child(2),
    .p-timetable__area li:nth-child(4),
    .p-timetable__area li:nth-child(6)
    {
        height: 4.513888888888888vw;
    }
/* タブの中身 */
    .p-card__area{
        display: none;
    }
    .p-card__area.active {
        display: block;
    }
    .p-card__pb{
        padding-bottom: 4.166666666666666vw;
    }
    .p-card__item img{
        width: 41.66666666666667vw;
        height: 23.4375vw;
    }
    .p-card__img:hover{
        transition: 0.5s;
        filter: brightness(60%);
    }
    .p-card__affiliation{
        font-family: "Afacad", serif;
        padding-top: 1.0416666666666665vw;
    }
    .p-card__title{
        padding-top: 0.5555555555555556vw;
        padding-bottom: 0.9027777777777777vw;
    }
    .p-card__title span{
        font-size: 0.9722222222222222vw;
    }

/* step */
    .p-step{
        background-color: #007070;
        padding: 9.027777777777777vw 0;
    }
    .p-step__inner{
        width: 64.58333333333334vw;
        margin: 0 auto;
        background-color: #fff;
        border-radius: 36.11111111111111vw;
        padding:6.944444444444445vw 0 11.11111111111111vw 0;
    }
    .p-step__heading{
        font-size: 1.25vw;
        font-weight: 600;
        text-align: center;
        padding-bottom: 2.083333333333333vw;
    }
    .p-step__title{
        font-family: "Afacad", serif;
        font-size: 3.3333333333333335vw;
        padding-bottom: 2.083333333333333vw;
        border-bottom: 0.06944444444444445vw solid #007070;
        width:  43.75vw;
        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__subText,.p-attention__text{
        width: 46.52777777777778vw;
    }
    .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: #007070; /* 線の色 */
        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);
    }

/* produced */
    .p-produced{
        background-color: #DC9A6A;
        padding-top: 6.25vw;
    }
    .p-produced__title{
        text-align: center;
        font-family: "Afacad", serif;
        font-size: 1.6666666666666667vw;
        color: #FFF;
        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: #007070;
        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 #007070;
        border-bottom: 0.06944444444444445vw solid #007070;
        font-family: "Afacad", serif;
        display: flex;
        background-color: #fff;
        position: fixed;
        bottom: 0;
        align-items: center;
        text-align: center;
        z-index: 999;
    }
    .p-fixedPc__sns{
        display: flex;
        gap: 1.7361111111111112vw;
        justify-content: center;
    }
    .p-fixedPc__sns img{
        width: 2.361111111111111vw;
    }
    .my-x-share-button img {
        width: 1.9444444444444444vw;
        padding-top: 0.20833333333333334vw;
    }
    .p-fixedPc__item--01,.p-fixedPc__item--02,.p-fixedPc__item--03{
        border-right: 0.06944444444444445vw solid #007070;
        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: #007070;
        border: 0.06944444444444445vw solid #007070;
        font-size: 1.3888888888888888vw;
        letter-spacing: -0.04em;
        position: relative;
        padding-left: 2.083333333333333vw;
    }
    .c-button__text:hover{
        color: #007070;
        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_green.png) 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: #FCF9F2;
        position: absolute;
        top: 0;
        left: 0;
        transition: 0.5s;
    }
    .c-button__text:hover::after{
        width: 100%;
        color: #007070;
        position: absolute;
        z-index: -1;
    }

/* c-card__btn */
    .c-card__btn{
        border-bottom: 0.06944444444444445vw solid #007070;
        padding-bottom: 0.6944444444444444vw;

    }
    .c-card__btnText{
        color: #007070;
        font-size: 0.9722222222222222vw;
        font-weight: 600;
        position: relative;
        letter-spacing: -0.04em;
        padding-left: 1.875vw;
    }
    .c-card__btnText::before{
        position: absolute;
        content: "";
        display: inline-block;
        width: 1.3194444444444444vw;
        height: 1.3194444444444444vw;
        background: url(../img/arrow_green.png) no-repeat;
        background-size: contain;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 0;
    }

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

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

@media screen and (max-width:440px){
    .p-fixedPc,.l-header,.p-summary__logo{
        display: none;
    }
    body{
        font-size: 3.6363636363636362vw;
    }
    .js-startLogo img{
        width: 65.45454545454545vw;
    }
    .p-fv__slider{
        display: none !important;
    }

/* 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;
    }
    .my-x-share-button img {
        width: 5.227272727272727vw;
        padding-top: 0.6818181818181818vw;
    }
    .l-headerBottom{
        border-bottom: 0.22727272727272727vw solid #007070;
        border-top: 0.22727272727272727vw solid #007070;
        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: 23.18181818181818vw;
    }
    .p-fv__sliderSp{
        height: 64.77272727272727vw;
    }
    .p-fv__sliderSp img{
        width: 100vw;
        height: 56.25vw;
    }
    
    .swiper .swiper-pagination-bullet {
        margin: 0 1.1363636363636365vw !important;
    }

    .p-scroll{
        font-size: 3.1818181818181817vw;
        padding: 6.363636363636363vw 0 8.636363636363637vw;
    }
    .p-scroll::after{
        top: 10.227272727272728vw;
        width: 4.545454545454546vw;
        height: 4.545454545454546vw;
    }

/* summary */
    .p-summary__logoSp img{
        width: 100%;
    }
    .p-summary__text{
        font-size: 3.6363636363636362vw;
        width: 90.9090909090909vw;
        margin: 0 auto;
    }
    .p-summary__logoSp{
        padding-top: 4.545454545454546vw;
    }

/* ticket */
    .p-ticket{
        padding: 9.090909090909092vw 0 13.636363636363635vw 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 #007070;
        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.6818181818181818vw;
        border-left: 0.22727272727272727vw solid #007070;
    }
    .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)
    {
        height: 63.63636363636363vw;
    }
    .p-timetable__area li:nth-child(7){
        height: 65.45454545454545vw;
    }
    .p-timetable__area li:nth-child(2),
    .p-timetable__area li:nth-child(4),
    .p-timetable__area li:nth-child(6)
    {
        height: 9.545454545454547vw;
    }
/* タブの中身 */
    .p-card__pb{
        padding-bottom: 9.090909090909092vw;
    }
    .p-card__item img{
        width: 76.13636363636364vw;
        height: 41.85227272727273vw;
    }
    .p-card__affiliation{
        padding-top: 2.181818vw;
        font-size: 2.727272727272727vw;
    }
    .p-card__affiliation span{
        font-size: 2.272727272727273vw;
    }
    .p-card__title{
        padding-top: 0.45454545454545453vw;
        padding-bottom: 2.727272727272727vw;
        font-size: 3.1818181818181817vw;
        width: 76.13636363636364vw;
    }
    .p-card__title span{
        font-size: 2.727272727272727vw;
    }
    .font{
        font-size: 2.727272727272727vw;
    }
    .font span{
        font-size: 2.272727272727273vw;
    }

/* step */
    .p-step{
        padding: 18.181818181818183vw 0;
    }
    .p-step__inner{
        width: 90.9090909090909vw;
        padding:18.181818181818183vw 0 27.27272727272727vw 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 #007070;
        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: #007070; /* 線の色 */
        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);
    }

/* 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 22.727272727272727vw 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: #007070;
        border: 0.06944444444444445vw solid #007070;
        font-size: 3.6363636363636362vw;
        letter-spacing: -0.04em;
        position: relative;
        padding-left: 5.454545454545454vw;
        height: 15.909090909090908vw;
    }
    .left a:hover{
        color: #007070;
        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_green.png) 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: #007070;
        position: absolute;
        z-index: -1;
    }
    .right a{
        display: flex;
        align-items: center;
        justify-content: center;
        color: #007070;
        font-weight: 600;
        background-color: #fff;
        border: 0.06944444444444445vw solid #007070;
        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 #007070;
        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;
    }

/* c-card__btn */
    .c-card__btn{
        border-bottom: 0.22727272727272727vw solid #007070;
        padding-bottom: 1.8181818181818181vw;
    }
    .c-card__btnText{
        color: #007070;
        font-size: 2.727272727272727vw;
        font-weight: 600;
        position: relative;
        letter-spacing: -0.04em;
        padding-left: 5.681818181818182vw;
    }
    .c-card__btnText::before{
        position: absolute;
        content: "";
        display: inline-block;
        width: 3.8636363636363633vw;
        height: 3.8636363636363633vw;
        background: url(../img/arrow_green.png) no-repeat;
        background-size: contain;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 0;
    }

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