.top-kv {
    position: relative
}
.top-kv__figure {
    height: 100%;
}
.top-kv__figure figcaption,
.top-pickup__slider figcaption {
    right: unset;
    left: var(--vw-size6);
}


.top-kv__slider {
    height: auto;
}

@media screen and (max-width: 991px) {
    .top-kv__slider {
        /*height: calc(100svh - 59px)*/
    }
}

.top-kv__slider .splide {
    height: 100%
}

.top-kv__slider .splide__track {
    height: 100%
}

.top-kv__slider-img {
    width: 100%;
    height: 100% !important;
    object-fit: cover
}

.top-kv__title {
    position: absolute;
}
.top-kv__title.--slide_1 {
    top: var(--vw-size250);
    right: var(--vw-size400);
    width: var(--vw-size149);
}

@media screen and (max-width: 991px) {
    .top-kv__title.--slide_1 {
        top: 18%;
        right: 20%;
        width: max(var(--vw-size80), 15vw);
    }
}

.top-kv__title.--slide_3 {
    top: 45%;
    left: 50%;
    width: var(--vw-size142);
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 991px) {
    .top-kv__title.--slide_3 {
        width: max(var(--vw-size60), 15vw);
    }
}

.top-kv__title .title {
    font-family: YakuHanMP, "Shippori Mincho", serif;
    font-size: max(11px, var(--vw-size44));
    font-weight: 500
}

@media screen and (max-width: 991px) {
    .top-kv__title .title {
        font-size: max(11px, var(--vw-size30))
    }
}

.top-kv__title .text {
    font-family: "Shippori Mincho", serif;
    font-size: max(11px, var(--vw-size20));
    font-weight: 500;
    line-height: 1.8;
    margin-top: var(--vw-size28)
}

@media screen and (max-width: 991px) {
    .top-kv__title .text {
        font-size: max(11px, var(--vw-size14));
        margin-top: var(--vw-size11)
    }
}

.top-kv__caption {
    background: #f9f9f9;
    padding: var(--vw-size24) var(--vw-size52);
    border-bottom: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-kv__caption {
        padding: var(--vw-size14) var(--vw-size20)
    }
}

.top-kv__caption .text {
    font-size: max(11px, var(--vw-size11));
    color: #7b7b7b
}

.top-merit {
    --hover-width: var(--vw-size32);
    border-bottom: 1px solid rgba(0, 0, 0, .2);
    background: #fff
}

.top-merit__list {
    display: flex
}

@media screen and (max-width: 991px) {
    .top-merit__list {
        flex-direction: column
    }
}

.top-merit__list li {
    flex: 1;
    height: var(--vw-size168)
}

@media screen and (max-width: 991px) {
    .top-merit__list li {
        flex: auto;
        height: var(--vw-size102)
    }
}

.top-merit__list li:nth-child(n+2) {
    border-left: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-merit__list li:nth-child(n+2) {
        border-left: none;
        border-top: 1px solid rgba(0, 0, 0, .2)
    }
}

.top-merit__list li a {
    position: relative;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #efefef;
    transition: .3s ease
}

@media screen and (min-width: 992px) {
    .top-merit__list li a:hover {
        background: #fff
    }

    .top-merit__list li a:hover span.arrow span:nth-child(1) {
        opacity: 1
    }
}

@media screen and (max-width: 991px) {
    .top-merit__list li a:active {
        background: #fff
    }
}

.top-merit__list li a span {
    font-family: YakuHanMP, "Noto Serif JP", serif;
    color: #006261
}

.top-merit__list li a span sup {
    font-family: YakuHanMP, "Noto Serif JP", serif;
    color: #006261
}

.top-merit__list li a span.subTitle {
    font-size: max(11px, var(--vw-size16))
}

@media screen and (max-width: 991px) {
    .top-merit__list li a span.subTitle {
        font-size: max(11px, var(--vw-size13))
    }
}

.top-merit__list li a span.title {
    font-size: max(11px, var(--vw-size27));
    text-align: center;
}

@media screen and (max-width: 991px) {
    .top-merit__list li a span.title {
        font-size: max(11px, var(--vw-size20))
    }
}

.top-merit__list li a span.arrow {
    position: absolute;
    display: flex;
    align-items: center;
    gap: var(--vw-size14);
    right: var(--vw-size6);
    bottom: var(--vw-size6);
    background: #006261;
    border-radius: var(--vw-size3);
    overflow: hidden;
    transition: all .5s ease;
    width: var(--hover-width)
}

.top-merit__list li a span.arrow span:nth-child(1) {
    display: block;
    font-family: YakuHanJP, "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: max(11px, var(--vw-size13));
    color: #fff;
    line-height: 1;
    white-space: nowrap;
    opacity: 0;
    transition: .3s ease;
    transition-delay: .3s;
    padding: var(--vw-size8) 0 var(--vw-size10) var(--vw-size12)
}

.top-merit__list li a span.arrow span:nth-child(2) {
    display: block;
    position: absolute;
    width: var(--vw-size32);
    height: 100%;
    right: 0;
    background: #006261
}

.top-merit__list li a span.arrow span:nth-child(2)::after {
    content: "";
    position: absolute;
    top: var(--vw-size10);
    left: var(--vw-size10);
    right: var(--vw-size10);
    bottom: var(--vw-size10);
    mask-image: url(../img/elements/icn__arrow__right.svg);
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    background-color: #fff
}

.top-merit__caption {
    background: #f9f9f9;
    padding: var(--vw-size24) var(--vw-size52);
    border-top: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-merit__caption {
        padding: var(--vw-size14) var(--vw-size20)
    }
}

.top-merit__caption p {
    font-size: max(11px, var(--vw-size11));
    color: #7b7b7b
}

.top-apologize {
    padding-top: var(--vw-size100);
    padding-bottom: var(--vw-size50)
}

@media screen and (max-width: 991px) {
    .top-apologize {
        padding-top: var(--vw-size50);
        padding-bottom: 0
    }
}

.top-info {
    background: #fff
}

.top-info__inner {
    padding: var(--vw-size108) 0;
    display: flex
}

@media screen and (max-width: 991px) {
    .top-info__inner {
        flex-direction: column;
        gap: var(--vw-size10);
        padding: var(--vw-size78) 0
    }
}

.top-info__inner h2 {
    display: block;
    width: var(--vw-size160);
    font-family: YakuHanMP, "EB Garamond", serif;
    font-weight: 700;
    font-size: max(12px, var(--vw-size15));
    color: rgba(0, 0, 0, .5)
}

@media screen and (max-width: 991px) {
    .top-info__inner h2 {
        font-weight: 300;
        font-size: max(11px, var(--vw-size15));
        color: #006261
    }
}

.top-info__inner>div {
    width: calc(100% - var(--vw-size160))
}

@media screen and (max-width: 991px) {
    .top-info__inner>div {
        width: 100%
    }
}

.top-info__list li {
    display: flex;
    flex-direction: column;
    gap: var(--vw-size24)
}

.top-info__list-links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--vw-size8)
}

.top-info__list-links a {
    width: fit-content
}

@media screen and (max-width: 575px) {
    .top-info__list-links a {
        width: calc(50% - var(--vw-size8));
        padding: var(--vw-size15) var(--vw-size20)
    }
}

@media screen and (max-width: 450px) {
    .top-info__list-links a {
        width: 100%
    }
}

.top-info__price {
    display: grid;
    grid-template-columns: auto 1fr
}

@media screen and (max-width: 991px) {
    .top-info__price {
        display: flex;
        flex-direction: column;
        gap: var(--vw-size24)
    }
}

.top-info__price-title {
    font-size: max(11px, var(--vw-size21));
    font-family: YakuHanMP, "Noto Serif JP", serif;
    color: #006261;
    padding: 0 var(--vw-size46);
    display: flex;
    align-items: center;
    border-left: 1px solid rgba(0, 0, 0, .2);
    border-right: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-info__price-title {
        padding: 0;
        padding-bottom: var(--vw-size8);
        border: none;
        border-bottom: 1px solid rgba(0, 0, 0, .2);
        width: fit-content
    }
}

.top-info__price-body {
    display: flex;
    flex-direction: column;
    gap: var(--vw-size40);
    padding: 0 var(--vw-size80)
}

@media screen and (max-width: 991px) {
    .top-info__price-body {
        padding: 0
    }
}

.top-info__price-item {
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 991px) {
    .top-info__price-item {
        gap: var(--vw-size8)
    }
}

.top-info__price-item .contents-label {
    display: inline-block;
    font-size: max(11px, var(--vw-size15));
    color: #006261;
    padding: var(--vw-size10);
    border: 1px solid #006261;
    border-radius: var(--vw-size3);
    line-height: 1;
    width: fit-content
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-label {
        font-size: max(11px, var(--vw-size13));
        padding: var(--vw-size8)
    }
}

.top-info__price-item .contents-wrap {
    display: flex;
    gap: var(--vw-size4) var(--vw-size16);
    align-items: baseline;
    flex-wrap: wrap
}

.top-info__price-item .contents-wrap .type .val {
    font-size: max(11px, var(--vw-size80));
    font-family: YakuHanMP, "EB Garamond", serif;
    color: #006261;
    margin-right: var(--vw-size6);
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .type .val {
        font-size: max(11px, var(--vw-size60))
    }
}

.top-info__price-item .contents-wrap .type .unit {
    font-size: max(11px, var(--vw-size40));
    font-family: YakuHanMP, "EB Garamond", serif;
    color: #006261;
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .type .unit {
        font-size: max(11px, var(--vw-size30))
    }
}

.top-info__price-item .contents-wrap .area .label {
    font-size: max(11px, var(--vw-size14));
    color: #006261;
    margin-right: var(--vw-size4);
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .area .label {
        font-size: max(11px, var(--vw-size12))
    }
}

.top-info__price-item .contents-wrap .area .val1,
.top-info__price-item .contents-wrap .area .val2 {
    font-size: max(11px, var(--vw-size80));
    font-family: YakuHanMP, "EB Garamond", serif;
    color: #006261;
    display: inline-block;
    line-height: 1
}

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

    .top-info__price-item .contents-wrap .area .val1,
    .top-info__price-item .contents-wrap .area .val2 {
        font-size: max(11px, var(--vw-size60))
    }
}

.top-info__price-item .contents-wrap .area .val2 {
    font-size: max(11px, var(--vw-size40));
    margin-right: var(--vw-size6)
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .area .val2 {
        font-size: max(11px, var(--vw-size30))
    }
}

.top-info__price-item .contents-wrap .area .unit {
    font-size: max(11px, var(--vw-size40));
    font-family: YakuHanMP, "Noto Serif JP", serif;
    color: #006261;
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .area .unit {
        font-size: max(11px, var(--vw-size30))
    }
}

.top-info__price-item .contents-wrap .feature .label {
    font-size: max(11px, var(--vw-size18));
    color: #006261;
    background: rgba(0, 0, 0, .05);
    padding: var(--vw-size10);
    border-radius: var(--vw-size3);
    display: inline-block;
    line-height: 1;
    bottom: var(--vw-size8);
    position: relative
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .feature .label {
        font-size: max(11px, var(--vw-size16));
        padding: var(--vw-size8);
        bottom: var(--vw-size6)
    }
}

.top-info__price-item .contents-wrap .price .val {
    font-size: max(11px, var(--vw-size80));
    font-family: YakuHanMP, "EB Garamond", serif;
    color: #006261;
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .price .val {
        font-size: max(11px, var(--vw-size60))
    }
}

.top-info__price-item .contents-wrap .price .unit1 {
    font-size: max(11px, var(--vw-size32));
    font-family: YakuHanMP, "Noto Serif JP", serif;
    color: #006261;
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .price .unit1 {
        font-size: max(11px, var(--vw-size24))
    }
}

.top-info__price-item .contents-wrap .price .unit2 {
    font-size: max(11px, var(--vw-size16));
    color: #006261;
    display: inline-block;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-info__price-item .contents-wrap .price .unit2 {
        font-size: max(11px, var(--vw-size12))
    }
}

.top-meritSlider {
    background: #fff;
    border-top: 1px solid rgba(0, 0, 0, .2)
}

.top-meritSlider__inner {
    padding: var(--vw-size108) 0;
    margin-left: var(--vw-size182);
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 991px) {
    .top-meritSlider__inner {
        flex-direction: column;
        gap: var(--vw-size10);
        padding: var(--vw-size78) 0;
        margin-left: 0
    }
}

.top-meritSlider__body {
    display: flex;
    gap: var(--vw-size152)
}

@media screen and (max-width: 991px) {
    .top-meritSlider__body {
        flex-direction: column;
        gap: var(--vw-size24);
        margin: 0 var(--vw-size20)
    }
}

.top-meritSlider__body h2 {
    display: flex
}

@media screen and (max-width: 991px) {
    .top-meritSlider__body h2 {
        flex-direction: column;
        gap: var(--vw-size16)
    }
}

.top-meritSlider__body h2 .en {
    display: block;
    width: var(--vw-size160);
    font-family: YakuHanMP, "EB Garamond", serif;
    font-weight: 700;
    font-size: max(12px, var(--vw-size15));
    color: rgba(0, 0, 0, .5)
}

@media screen and (max-width: 991px) {
    .top-meritSlider__body h2 .en {
        font-weight: 300;
        font-size: max(11px, var(--vw-size15));
        color: #006261
    }
}

.top-meritSlider__body h2 .jp {
    font-family: YakuHanMP, "EB Garamond", serif;
    font-size: max(11px, var(--vw-size30));
    color: #006261;
    line-height: 1
}

@media screen and (max-width: 991px) {
    .top-meritSlider__body h2 .jp {
        font-size: max(11px, var(--vw-size25))
    }
}

.top-meritSlider__body p {
    flex: 1;
    font-size: max(12px, var(--vw-size16));
    line-height: 2
}

.top-meritSlider__body p::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 2)*.5em);
    content: ""
}

.top-meritSlider__body p::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 2)*.5em);
    content: ""
}

.top-meritSlider__slider {
    padding-left: var(--vw-size160);
    margin-bottom: var(--vw-size88)
}

@media screen and (max-width: 991px) {
    .top-meritSlider__slider {
        padding-left: 0
    }

    .top-meritSlider__slider .splide__track {
        padding: 0 var(--vw-size20) !important
    }
}

.top-point {
    background: #fff
}

@media screen and (min-width: 992px) {
    .top-point__inner {
        display: flex;
        border-top: 1px solid rgba(0, 0, 0, .2)
    }

    .top-point__body {
        width: calc(var(--vw-size316)*2);
        padding: var(--vw-size128) var(--vw-size158) var(--vw-size128) var(--vw-size182)
    }

    .top-point__body h2 {
        display: flex;
        flex-direction: column;
        gap: var(--vw-size134)
    }

    .top-point__body h2 .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-weight: 700;
        font-size: max(12px, var(--vw-size15));
        color: rgba(0, 0, 0, .5)
    }

    .top-point__body h2 .jp {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size30))
    }

    .top-point__body p {
        margin-top: var(--vw-size24);
        font-size: max(12px, var(--vw-size16))
    }

    .top-point__list {
        flex: 1;
        background: #006261;
        padding: var(--vw-size128) 0 var(--vw-size160) 0
    }
}

@media screen and (max-width: 991px) {
    .top-point__inner {
        padding: var(--vw-size76) 0 var(--vw-size128) 0;
        background: #efefef
    }

    .top-point__body {
        width: calc(100% - var(--vw-size40));
        margin: 0 auto
    }

    .top-point__body h2 {
        display: flex;
        flex-direction: column;
        gap: var(--vw-size15)
    }

    .top-point__body h2 .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size15));
        color: #006261
    }

    .top-point__body h2 .jp {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size22))
    }

    .top-point__list {
        margin-top: var(--vw-size38)
    }
}

.top-point__list .splide__arrows {
    position: absolute;
    top: calc(100% + var(--vw-size24));
    padding-left: var(--vw-size30);
    display: flex;
    gap: var(--vw-size15)
}

@media screen and (max-width: 991px) {
    .top-point__list .splide__arrows {
        top: calc(100% + var(--vw-size32));
        padding-left: var(--vw-size20)
    }
}

.top-point__list .splide__arrows .splide__arrow {
    position: relative;
    display: flex;
    left: 0;
    right: 0;
    top: auto;
    transform: none;
    background: #fff;
    border-radius: var(--vw-size3);
    transition: all .3s;
    width: var(--vw-size50);
    height: var(--vw-size50);
    opacity: 1
}

.top-point__list .splide__arrows .splide__arrow:disabled {
    opacity: .5
}

.top-point__list .splide__arrows .splide__arrow svg {
    fill: #006261;
    background: none
}

.top-point__list .splide__track {
    padding: 0 var(--vw-size30) !important
}

@media screen and (max-width: 991px) {
    .top-point__list .splide__track {
        padding: 0 var(--vw-size20) !important
    }
}

.top-point__list .splide__slide a {
    display: block;
    position: relative;
    border-radius: var(--vw-size7);
    overflow: hidden;
    background: #fff;
    color: #121212
}

.top-point__list .splide__slide a:hover figure img {
    transform: scale(1.1)
}

.top-point__list .splide__slide a:hover .arrow::before {
    height: 100%
}

.top-point__list .splide__slide a figure {
    overflow: hidden
}

.top-point__list .splide__slide a figure img {
    transform: scale(1);
    transition: transform 1s ease
}

.top-point__list .splide__slide a .label {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 var(--vw-size12);
    height: var(--vw-size40);
    line-height: var(--vw-size40);
    font-family: YakuHanMP, "EB Garamond", serif;
    font-size: max(11px, var(--vw-size22));
    color: #fff;
    background: rgba(0, 98, 97, .8);
    border-bottom-right-radius: var(--vw-size7)
}

@media screen and (max-width: 991px) {
    .top-point__list .splide__slide a .label {
        height: var(--vw-size24);
        line-height: var(--vw-size24);
        font-size: max(11px, var(--vw-size14))
    }
}

.top-point__list .splide__slide a h3 {
    font-family: YakuHanMP, "Noto Serif JP", serif;
    font-size: max(11px, var(--vw-size22));
    padding: var(--vw-size22) var(--vw-size33)
}

@media screen and (max-width: 991px) {
    .top-point__list .splide__slide a h3 {
        font-family: YakuHanJP, "Noto Sans JP", sans-serif;
        font-size: max(11px, var(--vw-size14));
        padding: var(--vw-size14) var(--vw-size20)
    }
}

.top-point__list .splide__slide a .arrow {
    position: absolute;
    bottom: var(--vw-size3);
    right: var(--vw-size3);
    border-radius: var(--vw-size5);
    overflow: hidden;
    width: var(--vw-size33);
    height: var(--vw-size33);
    background: rgba(0, 98, 97, .5)
}

.top-point__list .splide__slide a .arrow::after {
    content: "";
    mask-image: url(../img/elements/icn__arrow__right__bold.svg);
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    background-color: #fff;
    width: var(--vw-size7);
    height: var(--vw-size14);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.top-point__list .splide__slide a .arrow::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    background: #006261;
    width: 100%;
    height: 0%;
    transition: all .5s cubic-bezier(0, 0.75, 0.3, 0.95)
}

.top-point__caption {
    background: #f9f9f9;
    padding: var(--vw-size24) var(--vw-size52);
    border-top: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-point__caption {
        padding: var(--vw-size14) var(--vw-size20);
        border-bottom: 1px solid rgba(0, 0, 0, .2)
    }
}

.top-point__caption p {
    font-size: max(11px, var(--vw-size11));
    color: #7b7b7b
}

.sticky-contents__wrap {
    position: relative;
    border-top: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .sticky-contents__wrap {
        border-top: none
    }
}

@media screen and (min-width: 992px) {
    .top-pickup__item {
        position: relative;
        height: 100vh;
        display: flex;
        background: #fff
    }

    .top-pickup__item:not(.is-sticky):nth-of-type(n + 2)::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: calc(100% - var(--vw-size86));
        height: 1px;
        background: rgba(0, 0, 0, .2)
    }

    .top-pickup__item.is-sticky {
        height: 200vh;
        position: sticky;
        top: 0;
        padding-bottom: 100vh
    }

    .top-pickup__item .body {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: var(--vw-size74);
        padding-left: calc(var(--vw-size86) + var(--vw-size90));
        justify-content: center
    }

    .top-pickup__item .body .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size100));
        color: rgba(0, 0, 0, .1);
        line-height: 1
    }

    .top-pickup__item .body .copy {
        display: grid;
        grid-template-columns: var(--vw-size370) 1fr;
        padding-right: var(--vw-size182);
        gap: var(--vw-size32)
    }
}

@media screen and (min-width: 992px)and (max-width: 1280px) {
    .top-pickup__item .body .copy {
        grid-template-columns: 1fr;
        gap: var(--vw-size40)
    }
}

@media screen and (min-width: 992px) {
    .top-pickup__item .body .copy h2 {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size30));
        line-height: 1.3
    }

    .top-pickup__item .body .copy p {
        font-size: max(12px, var(--vw-size16));
        line-height: 2;
        margin-bottom: var(--vw-size35)
    }

    .top-pickup__item .top-pickup__slider {
        width: 50%;
        padding: var(--vw-size24) var(--vw-size24) var(--vw-size24) 0
    }

    .top-pickup__item .top-pickup__slider .splide {
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__track {
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide {
        border-radius: var(--vw-size5);
        overflow: hidden;
        background-size: cover;
        display: flex;
        align-items: center;
        position: relative;
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide a {
        height: 100%;
        width: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure {
        z-index: 9;
        height: 100%;
        overflow: hidden
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure img {
        width: 100%;
        height: 100% !important;
        object-fit: cover;
        transform: scale(1);
        transition: transform 1s ease
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure:hover img {
        transform: scale(1.1)
    }

    .top-pickup__label {
        position: absolute;
        top: 0;
        width: var(--vw-size86);
        height: 100vh;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: column;
        padding: var(--vw-size44) 0 var(--vw-size24) 0;
        border-right: 1px solid rgba(0, 0, 0, .2);
        z-index: 199
    }

    .top-pickup__label.fixed {
        position: fixed
    }

    .top-pickup__label .label {
        writing-mode: vertical-rl;
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(12px, var(--vw-size15));
        color: rgba(0, 0, 0, .5)
    }

    .top-pickup__label .count {
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .top-pickup__label .count span {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size25));
        color: rgba(0, 0, 0, .5);
        position: relative;
        width: var(--vw-size17);
        text-align: center
    }

    .top-pickup__label .count span.numerator {
        position: relative
    }

    .top-pickup__label .count span.numerator span:nth-child(n+2) {
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0
    }

    .top-pickup__label .count span.denominator::before {
        content: "";
        height: 1px;
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        background: rgba(0, 0, 0, .5)
    }
}

@media screen and (max-width: 991px) {
    .top-pickup__label {
        margin-top: var(--vw-size67);
        margin-bottom: var(--vw-size30)
    }

    .top-pickup__label .label {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size15));
        color: #006261;
        line-height: 1;
        padding: 0 var(--vw-size20)
    }

    .top-pickup__item {
        position: relative;
        display: flex;
        flex-direction: column-reverse;
        padding: var(--vw-size20) var(--vw-size20) var(--vw-size30) var(--vw-size20);
        border-top: 1px solid rgba(0, 0, 0, .2);
        background: #fff;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        overflow: hidden;
        will-change: transform;
        perspective: 1000
    }

    .top-pickup__item .splide__slide {
        border-radius: var(--vw-size5);
        overflow: hidden
    }

    .top-pickup__item .splide__slide img {
        aspect-ratio: 335/220;
        object-fit: cover
    }

    .top-pickup__item .body {
        margin-top: var(--vw-size19)
    }

    .top-pickup__item .body .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size30));
        color: rgba(0, 0, 0, .1);
        line-height: 1
    }

    .top-pickup__item .body .copy h2 {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size25));
        line-height: 1.3;
        margin-top: var(--vw-size14)
    }

    .top-pickup__item .body .copy p {
        font-size: max(12px, var(--vw-size15));
        line-height: 1.8;
        margin-top: var(--vw-size13)
    }

    .top-pickup__item .body .copy .c-button__main {
        margin: 0 auto;
        width: 100%;
        max-width: var(--vw-size197);
        margin-top: var(--vw-size20);
        justify-content: flex-start
    }

    .top-pickup__item .top-pickup__slider .splide {
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__track {
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide {
        border-radius: var(--vw-size5);
        overflow: hidden;
        background-size: cover;
        display: flex;
        align-items: center;
        position: relative;
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        background: rgba(0, 0, 0, .3);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px)
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure {
        z-index: 9;
        overflow: hidden;
        height: 100%
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure img {
        width: 100%;
        height: 100% !important;
        object-fit: cover;
        transform: scale(1);
        transition: transform 1s ease;
        aspect-ratio: 335/200
    }

    .top-pickup__item .top-pickup__slider .splide__slide figure:hover img {
        transform: scale(1.1)
    }
}

.top-plan {
    position: relative;
    z-index: 199
}

.top-plan:not(.is-sticky) {
    border-top: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (min-width: 992px) {
    .top-plan {
        display: flex;
        border-top: 1px solid rgba(0, 0, 0, .2)
    }

    .top-plan__body {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: calc(var(--vw-size320)*2);
        padding: 0 var(--vw-size158) 0 var(--vw-size182);
        background: #fff
    }

    .top-plan__body h2 {
        display: flex;
        flex-direction: column;
        gap: var(--vw-size72)
    }

    .top-plan__body h2 .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-weight: 700;
        font-size: max(12px, var(--vw-size15));
        color: rgba(0, 0, 0, .5)
    }

    .top-plan__body h2 .jp {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size30))
    }

    .top-plan__body p {
        margin-top: var(--vw-size24);
        font-size: max(12px, var(--vw-size16))
    }

    .top-plan__list {
        width: calc(100% - var(--vw-size340)*2)
    }
}

@media screen and (max-width: 991px) {
    .top-plan {
        padding: var(--vw-size76) 0 var(--vw-size128) 0;
        background: #fff
    }

    .top-plan__body {
        width: calc(100% - var(--vw-size40));
        margin: 0 auto
    }

    .top-plan__body h2 {
        display: flex;
        flex-direction: column;
        gap: var(--vw-size15)
    }

    .top-plan__body h2 .en {
        font-family: YakuHanMP, "EB Garamond", serif;
        font-size: max(11px, var(--vw-size15));
        color: #006261
    }

    .top-plan__body h2 .jp {
        font-family: YakuHanMP, "Noto Serif JP", serif;
        font-size: max(11px, var(--vw-size22))
    }

    .top-plan__body .c-button__main {
        min-width: var(--vw-size197)
    }

    .top-plan__list {
        margin-top: var(--vw-size38)
    }
}

@media screen and (max-width: 767px) {
    .top-plan {
        padding: var(--vw-size76) 0
    }
}

.top-plan__list {
    flex: 1;
    background: #006261;
    padding: var(--vw-size104) 0;
    padding-bottom: var(--vw-size144)
}

@media screen and (max-width: 991px) {
    .top-plan__list {
        background: #fff;
        padding: 0
    }
}

@media screen and (max-width: 767px) {
    .top-plan__list .splide__list {
        display: flex !important;
        flex-direction: column;
        gap: var(--vw-size22)
    }
}

.top-plan__list .splide__arrows {
    position: absolute;
    top: calc(100% + var(--vw-size24));
    padding-left: var(--vw-size30);
    display: flex;
    gap: var(--vw-size15)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__arrows {
        top: calc(100% + var(--vw-size32));
        padding-left: var(--vw-size20)
    }
}

.top-plan__list .splide__arrows .splide__arrow {
    position: relative;
    display: flex;
    left: 0;
    right: 0;
    top: auto;
    transform: none;
    background: #fff;
    border-radius: var(--vw-size3);
    transition: all .3s;
    width: var(--vw-size50);
    height: var(--vw-size50);
    opacity: 1
}

.top-plan__list .splide__arrows .splide__arrow:disabled {
    opacity: .5
}

.top-plan__list .splide__arrows .splide__arrow svg {
    fill: #006261;
    background: none
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__arrows .splide__arrow {
        background: #006261
    }

    .top-plan__list .splide__arrows .splide__arrow svg {
        fill: #fff
    }
}

.top-plan__list .splide__track {
    padding: 0 var(--vw-size30) !important
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__track {
        padding: 0 var(--vw-size20) !important
    }
}

.top-plan__list .splide__slide a {
    display: flex;
    flex-direction: column;
    position: relative;
    border-radius: var(--vw-size5);
    overflow: hidden;
    background: #fff;
    padding: var(--vw-size4);
    height: 100%;
    color: #121212
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a {
        border-radius: var(--vw-size2);
        border: 1px solid rgba(0, 0, 0, .2);
        padding: 0
    }
}

.top-plan__list .splide__slide a:hover figure img {
    transform: scale(1.05)
}

.top-plan__list .splide__slide a:hover .arrow::before {
    height: 100%
}

.top-plan__list .splide__slide a figure {
    overflow: hidden
}

.top-plan__list .splide__slide a figure img {
    transform: scale(1);
    transition: transform 1s ease
}

.top-plan__list .splide__slide a .title {
    border-radius: var(--vw-size4);
    background: #121212;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--vw-size4) var(--vw-size4) var(--vw-size4) var(--vw-size17)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .title {
        background: #006261;
        border-radius: var(--vw-size2)
    }
}

.top-plan__list .splide__slide a .title h3 {
    display: flex;
    align-items: center;
    gap: var(--vw-size10)
}

.top-plan__list .splide__slide a .title h3 span {
    font-family: YakuHanMP, "EB Garamond", serif;
    font-weight: 500;
    color: #fff;
    line-height: 1
}

.top-plan__list .splide__slide a .title h3 span:nth-child(1) {
    margin-top: .5rem;
    font-size: max(11px, var(--vw-size17))
}

.top-plan__list .splide__slide a .title h3 span:nth-child(2) {
    font-size: max(11px, var(--vw-size40))
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .title h3 span:nth-child(1) {
        font-size: max(11px, var(--vw-size14))
    }
    
    .top-plan__list .splide__slide a .title h3 span:nth-child(2) {
        font-size: max(11px, var(--vw-size30))
    }
}

.top-plan__list .splide__slide a .title .label {
    display: flex;
    gap: var(--vw-size5)
}

.top-plan__list .splide__slide a .title .label span {
    display: flex;
    align-items: center;
    height: var(--vw-size47);
    font-size: max(11px, var(--vw-size13));
    color: #fff;
    background: #3c3939;
    border-radius: var(--vw-size5);
    border: 1px solid hsla(0, 0%, 100%, .5);
    padding: 0 var(--vw-size15)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .title .label span {
        height: var(--vw-size39);
        padding: 0 var(--vw-size6);
        background: none;
        font-size: max(11px, var(--vw-size12));
        border-radius: var(--vw-size2)
    }
}

.top-plan__list .splide__slide a .info {
    display: flex;
    align-items: end;
    justify-content: center;
    gap: var(--vw-size30);
    margin-top: var(--vw-size24);
    margin-right: var(--vw-size8)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .info {
        margin-top: var(--vw-size8);
        gap: var(--vw-size20)
    }
}

.top-plan__list .splide__slide a .info .type {
    display: flex;
    flex-direction: column;
    align-items: baseline
}

.top-plan__list .splide__slide a .info .type__main span {
    font-family: YakuHanMP, "EB Garamond", serif;
    line-height: 1
}

.top-plan__list .splide__slide a .info .type__main span:nth-child(1) {
    font-size: max(11px, var(--vw-size75))
}

.top-plan__list .splide__slide a .info .type__main span:nth-child(2) {
    margin-left: var(--vw-size6);
    font-size: max(11px, var(--vw-size42))
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .info .type__main span:nth-child(1) {
        font-size: max(11px, var(--vw-size59))
    }

    .top-plan__list .splide__slide a .info .type__main span:nth-child(2) {
        font-size: max(11px, var(--vw-size33))
    }
}

.top-plan__list .splide__slide a .info .type__sub {
    font-family: YakuHanMP, "EB Garamond", serif;
    line-height: 1;
    font-size: max(12px, var(--vw-size17))
}

.top-plan__list .splide__slide a .info .area {
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .info .area {
        padding-top: var(--vw-size13)
    }
}

.top-plan__list .splide__slide a .info .area dt {
    font-size: max(11px, var(--vw-size12));
    line-height: 1
}

.top-plan__list .splide__slide a .info .area dd span {
    font-family: YakuHanMP, "EB Garamond", serif;
    line-height: 1
}

.top-plan__list .splide__slide a .info .area dd span:nth-child(1) {
    font-size: max(11px, var(--vw-size47))
}

.top-plan__list .splide__slide a .info .area dd span:nth-child(2) {
    font-size: max(11px, var(--vw-size33))
}

.top-plan__list .splide__slide a .info .area dd span:nth-child(3) {
    font-size: max(11px, var(--vw-size24))
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .info .area dd span:nth-child(1) {
        font-size: max(11px, var(--vw-size36))
    }

    .top-plan__list .splide__slide a .info .area dd span:nth-child(2) {
        font-size: max(11px, var(--vw-size27))
    }

    .top-plan__list .splide__slide a .info .area dd span:nth-child(3) {
        font-size: max(11px, var(--vw-size19))
    }
}

.top-plan__list .splide__slide a .tag {
    margin-top: var(--vw-size24);
    padding: 0 var(--vw-size13);
    display: flex;
    flex-wrap: wrap;
    gap: var(--vw-size4)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .tag {
        margin-top: var(--vw-size13)
    }
}

.top-plan__list .splide__slide a .tag span {
    display: block;
    padding: var(--vw-size7) var(--vw-size10);
    font-size: max(11px, var(--vw-size13));
    line-height: 1;
    background: #efefef;
    border-radius: var(--vw-size3);
    border: 1px solid rgba(0, 0, 0, .2)
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a .tag span {
        font-size: max(11px, var(--vw-size12))
    }
}

.top-plan__list .splide__slide a figure {
    aspect-ratio: 1.5/1;
    flex: 1
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a figure {
        aspect-ratio: unset;
        min-height: 300px
    }
}

.top-plan__list .splide__slide a figure img {
    height: 100% !important
}

@media screen and (max-width: 991px) {
    .top-plan__list .splide__slide a figure img {
        height: auto !important
    }
}

.top-plan__list .splide__slide a .arrow {
    position: absolute;
    bottom: var(--vw-size3);
    right: var(--vw-size3);
    border-radius: var(--vw-size5);
    overflow: hidden;
    width: var(--vw-size33);
    height: var(--vw-size33);
    background: rgba(0, 98, 97, .5)
}

.top-plan__list .splide__slide a .arrow::after {
    content: "";
    mask-image: url(../img/elements/icn__arrow__right__bold.svg);
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    background-color: #fff;
    width: var(--vw-size7);
    height: var(--vw-size14);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.top-plan__list .splide__slide a .arrow::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    background: #006261;
    width: 100%;
    height: 0%;
    transition: all .5s cubic-bezier(0, 0.75, 0.3, 0.95)
}

.top-plan__caption {
    position: absolute;
    left: calc(var(--vw-size316)*2);
    bottom: 0;
    padding: var(--vw-size8) var(--vw-size20) !important
}

@media screen and (max-width: 991px) {
    .top-plan__caption {
        position: relative;
        bottom: inherit;
        left: inherit
    }
}

.top-plan__caption p {
    font-size: max(11px, var(--vw-size11))
}

@media screen and (min-width: 992px) {
    .top-plan__caption p {
        font-size: max(11px, var(--vw-size14));
        color: #fff
    }
}

.top-plan__button {
    position: sticky;
    bottom: var(--vw-size54);
    margin-top: var(--vw-size37)
}

.top-plan__button .c-button__white {
    width: var(--vw-size200);
    margin: 0 auto;
    opacity: 0;
    transform: translateY(100%);
    transition: .5s ease
}

.top-plan__button .c-button__white.is-show {
    opacity: 1;
    transform: translateY(0%)
}

#all_contents-container,
#footer-container {
    position: relative;
    z-index: 199
}

@media screen and (min-width: 992px) {
    .splide__toggle {
        margin-top: var(--vw-size24);
        display: flex
    }

    .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: #fff
    }

    .splide__toggle span::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 12px;
        height: 12px;
        background-color: #006261
    }

    .splide__toggle .splide__toggle__play {
        display: block
    }

    .splide__toggle .splide__toggle__play::after {
        mask-image: url(../img/elements/icn__play.svg)
    }

    .splide__toggle .splide__toggle__pause {
        display: none
    }

    .splide__toggle .splide__toggle__pause::after {
        mask-image: url(../img/elements/icn__pause.svg)
    }

    .splide__toggle.is-active .splide__toggle__play {
        display: none
    }

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

    .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px
    }

    .splide__pagination__wrap {
        z-index: 1;
        padding: var(--vw-size8);
        padding-top: calc(var(--vw-size8) + 4px);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        bottom: auto;
        right: var(--vw-size16);
        left: auto;
        background: rgba(0, 0, 0, .6);
        border-radius: var(--vw-size24)
    }

    .splide__pagination__wrap .splide__pagination {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 6px;
        padding: 0;
        bottom: auto
    }

    .splide__pagination__wrap .splide__pagination__page {
        background: hsla(0, 0%, 100%, .6);
        padding: 4px;
        opacity: 1;
        transition: background-color .2s linear
    }

    .splide__pagination__wrap .splide__pagination__page .circle-wrapper-sp {
        display: none
    }

    .splide__pagination__wrap .splide__pagination__page.is-active {
        background: #fff;
        transform: scale(1);
        z-index: 1
    }

    .splide__pagination__wrap .splide__pagination__page.is-active .circle-wrapper-sp {
        display: block
    }
}

@media screen and (max-width: 991px) {
    .top-kv__slider .splide__toggle {
        display: flex
    }

    .top-kv__slider .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: #fff
    }

    .top-kv__slider .splide__toggle span::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 12px;
        height: 12px;
        background-color: #006261
    }

    .top-kv__slider .splide__toggle .splide__toggle__play {
        display: block
    }

    .top-kv__slider .splide__toggle .splide__toggle__play::after {
        mask-image: url(../img/elements/icn__play.svg)
    }

    .top-kv__slider .splide__toggle .splide__toggle__pause {
        display: none
    }

    .top-kv__slider .splide__toggle .splide__toggle__pause::after {
        mask-image: url(../img/elements/icn__pause.svg)
    }

    .top-kv__slider .splide__toggle.is-active .splide__toggle__play {
        display: none
    }

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

    .top-kv__slider .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px
    }

    .top-kv__slider .splide__pagination__wrap {
        z-index: 1;
        /* padding: var(--vw-size8) var(--vw-size12); */
        padding: var(--vw-size4);
        padding-top: calc(var(--vw-size4) + 4px);
        position: absolute;
        /* bottom: var(--vw-size16); */
        /* left: 50%; */
        top: 50%;
        right: var(--vw-size8);
        transform: translateY(-50%);
        background: rgba(0, 0, 0, .6);
        border-radius: var(--vw-size24);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--vw-size12)
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 12px;
        padding: 0;
        bottom: auto
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination li {
        display: flex
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination__page {
        background: hsla(0, 0%, 100%, .6);
        padding: 4px;
        opacity: 1;
        transition: background-color .2s linear
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination__page .circle-wrapper-sp {
        display: none
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination__page.is-active {
        background: #fff;
        transform: scale(1);
        z-index: 1
    }

    .top-kv__slider .splide__pagination__wrap .splide__pagination__page.is-active .circle-wrapper-sp {
        display: block
    }

    .top-pickup__slider .splide__toggle {
        display: flex;
        margin-left: var(--vw-size24)
    }

    .top-pickup__slider .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: #006261
    }

    .top-pickup__slider .splide__toggle span::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 12px;
        height: 12px;
        background-color: #fff
    }

    .top-pickup__slider .splide__toggle .splide__toggle__play {
        display: block
    }

    .top-pickup__slider .splide__toggle .splide__toggle__play::after {
        mask-image: url(../img/elements/icn__play.svg)
    }

    .top-pickup__slider .splide__toggle .splide__toggle__pause {
        display: none
    }

    .top-pickup__slider .splide__toggle .splide__toggle__pause::after {
        mask-image: url(../img/elements/icn__pause.svg)
    }

    .top-pickup__slider .splide__toggle.is-active .splide__toggle__play {
        display: none
    }

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

    .top-pickup__slider .splide__toggle span {
        position: relative;
        width: 24px;
        height: 24px
    }

    .top-pickup__slider .splide__pagination__wrap {
        z-index: 1;
        padding: var(--vw-size8);
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center
    }

    .top-pickup__slider .splide__pagination__wrap .splide__pagination {
        position: relative;
        padding: 0;
        bottom: auto;
        display: flex;
        gap: 12px
    }

    .top-pickup__slider .splide__pagination__wrap .splide__pagination__page {
        background: #121212;
        opacity: .6;
        transition: opacity .2s linear;
        padding: 4px
    }

    .top-pickup__slider .splide__pagination__wrap .splide__pagination__page .circle-wrapper-sp {
        display: none
    }

    .top-pickup__slider .splide__pagination__wrap .splide__pagination__page.is-active {
        opacity: 1;
        transform: scale(1);
        z-index: 1
    }

    .top-pickup__slider .splide__pagination__wrap .splide__pagination__page.is-active .circle-wrapper-sp {
        display: block
    }
}

.circle-wrapper-sp {
    border-radius: 50%;
    position: absolute;
    top: -4px;
    left: -4px;
    background: rgba(0, 0, 0, 0)
}

.circle-animation {
    fill: none;
    stroke: #fff;
    stroke-width: 2;
    stroke-dasharray: 50.2;
    stroke-dashoffset: 50.2;
    animation: dash 3.8s linear forwards paused;
    transform: rotate(-90deg);
    transform-origin: 50% 100%
}

.top-kv__slider .circle-animation {
    animation: dash 7.2s linear forwards paused
}

@media screen and (max-width: 991px) {
    .top-pickup__slider .circle-animation {
        stroke: #121212
    }
}

.top-movie__inline {
    padding: var(--vw-size100) var(--vw-size50);
    background-color: #efefef;
    z-index: 199
}

@media screen and (max-width: 991px) {
    .top-movie__inline {
        padding: var(--vw-size80) var(--vw-size20)
    }
}

.top-movie__modal {
    padding: var(--vw-size100) var(--vw-size50);
    z-index: 199
}

@media screen and (max-width: 991px) {
    .top-movie__modal {
        padding: var(--vw-size80) var(--vw-size20)
    }
}

.circle-animation.is-playing {
    animation-play-state: running
}

.circle-animation.is-reset {
    animation: none;
    stroke-dashoffset: 0
}

@keyframes dash {
    to {
        stroke-dashoffset: 0
    }
}

/*# sourceMappingURL=top.css.map */