:root {
    --main-visual-width: 440px;
    --main-visual-margin: 8px;
    --main-visual-visibleCnt: 2;
    --main-visual-section-padding: 20px;
    --main-visual-side-width: calc((100% - (var(--main-visual-width) + var(--main-visual-margin) * 2) * var(--main-visual-visibleCnt)) / 2);
    --slide-inner-padding: calc(var(--carousel-btn-width, 0px) + var(--carousel-btn-space, 0px));
}
.str-inner.mv-slide-inner {
    padding: 0 var(--slide-inner-padding);
}
.str-inner.mv-slide-inner .carousel-hdg-1 {
    left: unset;
}
.str-inner.mv-slide-inner .carousel-hdg-2 {
    left: unset;
}
.str-main .lyt-main-visual {
    touch-action: none;
    max-width: var(--sec-max-width);
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    visibility: hidden;
}
.str-main .lyt-main-visual-carousel {
    width: 100%;
    padding: 0 var(--main-visual-side-width);
}
.str-main .lyt-main-visual,
.str-main .lyt-main-visual .lyt-main-visual-slide .viusal-list,
.str-main .lyt-main-visual .lyt-main-visual-slide .viusal-list li {
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
}
.str-main .lyt-main-visual .lyt-main-visual-slide .viusal-list {
    display: flex;
}
.str-main .lyt-main-visual .lyt-main-visual-slide .viusal-list .viusal-list-item {
    margin-left: var(--main-visual-margin);
    margin-right: var(--main-visual-margin);
}
.main-visual-img-pc {
    vertical-align: bottom !important;
}
.main-visual-img-sp {
    vertical-align: bottom !important;
}
.thumbnail-list-item > img {
    object-fit: contain;
}

.str-main .lyt-main-visual-thumbnail {
    padding: 8px 4px;
    background: transparent;
}
.thumbnail-list-item {
    width: 100vw;
}
.str-main .lyt-main-visual-thumbnail .thumbnail-list {
    width: 30%;
    display: none;
}
.str-main .lyt-main-visual-thumbnail .dot-thumbnail-list {
    display: flex;
    justify-content: center;
}
.str-main .lyt-main-visual-thumbnail .thumbnail-list img {
    width: calc(100vw / 3 - 10px) !important;
    border-radius: 2px;
}
.str-main .lyt-main-visual-thumbnail .thumbnail-list-item {
    margin: 0 4px;
}
.str-main .lyt-main-visual-thumbnail .dot-thumbnail-list-item {
    display: inline-block;
    margin: 0 5px;
    width: 10px;
    height: 10px;
    background: #c3c3c3;
    border-radius: 10px;
    cursor: pointer;
}
.str-main .lyt-main-visual-thumbnail .dot-thumbnail-list-item.is_current {
    background: #fbde01;
}
.lyt-main-visual-thumbnail-inner {
    max-width: 100vw;
    margin: 0 auto;
    overflow: hidden;
    width: var(--main-visual-width);
}
#prevBtn {
    position: absolute;
    top: 43%;
    left: 2%;
    background-color: #000;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    padding: 0;
}
#nextBtn {
    position: absolute;
    top: 43%;
    right: 2%;
    background-color: #000;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    padding: 0;
}
#prevBtn > svg > path,
#nextBtn > svg > path {
    -webkit-filter: drop-shadow(0px 0px 1px #2c2c2c);
    filter: drop-shadow(0px 0px 1px #2c2c2c);
    stroke: #999;
    fill: #fff;
}
#prevBtn svg,
#nextBtn svg {
    height: 22px;
}

@media screen and (min-width: 600px) {
    .lyt-main-visual-carousel {
        width: 100%;
    }
    .lyt-main-visual-carousel-prev {
        cursor: pointer;
        z-index: 1;
        top: 0;
        left: 0;
        position: absolute;
        width: calc(var(--main-visual-side-width) - var(--main-visual-margin));
        height: calc(100% - 34px);
        background: rgba(0, 0, 0, 0.6);
    }
    .lyt-main-visual-carousel-next {
        cursor: pointer;
        z-index: 1;
        top: 0;
        right: 0;
        position: absolute;
        width: calc(var(--main-visual-side-width) - var(--main-visual-margin));
        height: calc(100% - 34px);
        background: rgba(0, 0, 0, 0.6);
    }
    .main-visual-img-pc {
        max-height: 360px;
        max-width: 100vw;
        width: var(--main-visual-width);
    }
    .main-visual-img-sp {
        display: none !important;
    }
    .str-main .lyt-main-visual-thumbnail {
        padding: 12px;
    }
    .str-main .lyt-main-visual-thumbnail .thumbnail-list-item {
        margin: 0 8px;
    }
    .str-main .lyt-main-visual-thumbnail .thumbnail-list img {
        max-width: calc(100vw / 3 - 64px);
        border-radius: 5px;
    }
    .lyt-main-visual-thumbnail-inner {
        width: 85%;
    }
}

/* slide item width 調整 */
@media screen and (max-width: 1100px) {
    .str-inner.mv-slide-inner {
        --main-visual-side-width: 40px;
        --subtract-width: calc(var(--main-visual-margin) * 4 + var(--main-visual-side-width) * 2 + var(--slide-inner-padding) * 2);
        --main-visual-width: calc((100vw - (var(--main-visual-section-padding) * 2) - var(--subtract-width)) / 2);
    }
}
@media screen and (max-width: 919.9px) {
    .str-inner.mv-slide-inner {
        --main-visual-side-width: 24px;
    }
}
@media screen and (max-width: 800px) {
}
@media screen and (max-width: 640px) {
    .str-inner.mv-slide-inner {
        --slide-inner-padding: 0;
        --subtract-width: calc(var(--main-visual-margin) * 2 + var(--main-visual-side-width) * 2);
        --main-visual-width: calc(100vw - (var(--main-visual-section-padding) * 2) - var(--subtract-width));
        --main-visual-visibleCnt: 1;
    }
    .str-main .str-inner.mv-slide-inner,
    .str-inner.mv-slide-inner {
        padding: unset;
    }
}
@media screen and (max-width: 480px) {
    :root {
        --main-visual-section-padding: 16px;
    }
    .str-inner.mv-slide-inner {
        --main-visual-side-width: 18px;
        --main-visual-margin: 4px;
    }
    .str-main .lyt-main-visual-thumbnail .thumbnail-list-item.is_current::before {
        height: 2px;
    }
    .str-main .lyt-main-visual-thumbnail .thumbnail-list-item.is_current::after {
        left: 55%;
        border-width: 3px 3px 0 3px;
    }
}
