.blacklabel-episode2 #section__keypoint .keypoint__left .ep2-diagnosis img {
    height: auto;
    border-radius: 5.54% / 8.55%;
}

.blacklabel-episode2 .ep2-solution-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 234px;
    height: 62px;
    margin: 20px auto 0;
    padding: 0;
    border-radius: 10px;
    background: #924088;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.blacklabel-episode2 #section__review .ep2-review-days .item__inner {
    width: calc((100% - 60px) / 4);
}


.blacklabel-episode2 #section__progress figure.item__inner {
    margin: 0;
}
.blacklabel-episode2 #section__progress {
    margin-top: 120px;
}
.blacklabel-episode2 #section__progress .review__item + .review__item {
    margin-top: 60px;
}
.blacklabel-episode2 #section__review .ep2-selfies .item__inner {
    width: calc((100% - 80px) / 5);
}
.blacklabel-episode2 .ep2-notice {
    margin: 40px auto 0;
    font-size: 20px;
    line-height: 1.6;
    color: #787878;
    text-align: center;
}

.blacklabel-episode2 .ep2-carousel {
    position: relative;
}
.blacklabel-episode2 #section__complex .ep2-carousel {
    margin-top: 120px;
}
.blacklabel-episode2 .ep2-track {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.blacklabel-episode2 .ep2-track::-webkit-scrollbar {
    display: none;
}
.blacklabel-episode2 .ep2-slide {
    flex: 0 0 calc((100% - 20px) / 2);
    min-width: 0;
    scroll-snap-align: start;
}
.blacklabel-episode2 .ep2-slide img {
    display: block;
    width: 100%;
    height: auto;
}

.blacklabel-episode2 .balstyle__nav {
    display: block;
    position: absolute;
    width: 50px;
    height: 50px;
    padding: 0;
    border: 0;
    background: url('https://345-ps.com/sub/blacklabel/img/keypoint/swiper_arrow.png') no-repeat center / contain;
    z-index: 5;
}
.blacklabel-episode2 button.balstyle__nav { cursor: pointer; }
.blacklabel-episode2 .ep2-carousel .balstyle__nav { top: 50%; transform: translateY(-50%); }
.blacklabel-episode2 .ep2-carousel .balstyle__nav.--prev { left: -25px; transform: translateY(-50%) rotate(180deg); }
.blacklabel-episode2 .ep2-carousel .balstyle__nav.--next { right: -25px; }
.blacklabel-episode2 .ep2-carousel .balstyle__nav:disabled { opacity: .35; cursor: default; }
.blacklabel-episode2 #section__complex .info__example > .balstyle__nav { align-self: center; }
.blacklabel-episode2 #section__keypoint .txt__inner > .balstyle__nav.--down {
    position: relative;
    margin: 18px auto 5px;
    transform: rotate(90deg);
}

.blacklabel-episode2 #section__how .--left .group__sub {
    left: 667px;
    right: auto;
    top: 300px;
    bottom: auto;
    width: 266px;
}
.blacklabel-episode2 #section__how .--left .group__sub img {
    width: 266px;
    height: 265px;
    object-fit: contain;
    box-shadow: none;
}


.blacklabel-episode2 #section__solution .btn__wrapper {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
}
.blacklabel-episode2 #section__solution .btn__wrapper a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 234px;
    height: 62px;
    border-radius: 10px;
    background: #924088;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    text-decoration: none;
}

.blacklabel-episode2 #section__solution .video__inner img {
    aspect-ratio: 711 / 417;
    height: auto;
    object-fit: cover;
}

.blacklabel-episode2 #section__progress .review__txt h3 {
    font-family: "GimpoPeaceGothic";
    font-size: 80px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -2px;
    color: #1d1d1d;
}
.blacklabel-episode2 #section__progress .review__txt h3 span { color: #924088; }
.blacklabel-episode2 #section__progress .review__txt h3 span::after { content: none; }
.blacklabel-episode2 #section__progress .ep2-progress-row { max-width: 1410px; gap: 18px; }
.blacklabel-episode2 #section__progress .ep2-progress-row .item__inner {
    width: calc((100% - 36px) / 3);
    position: relative;
}
.blacklabel-episode2 #section__progress .ep2-progress-caption {
    margin-top: 19px;
    font-family: "GimpoPeaceGothic";
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -.75px;
    line-height: 50px;
    text-align: center;
    color: #ad76a8;
}
.blacklabel-episode2 #section__progress .item__inner:first-child .ep2-progress-caption { color: #d3b9d0; }
.blacklabel-episode2 #section__progress .item__inner:last-child .ep2-progress-caption { color: #660b5b; }
.blacklabel-episode2 #section__progress .ep2-selfies .item__inner:nth-child(3) .ep2-progress-caption { color: #a6629d; }
.blacklabel-episode2 #section__progress .ep2-selfies .item__inner:nth-child(4) .ep2-progress-caption { color: #8a3983; }
.blacklabel-episode2 #section__progress .balstyle__nav {
    position: absolute;
    top: calc((100% - 69px) / 2);
    right: -34px;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    z-index: 2;
    pointer-events: none;
}

.blacklabel-episode2 #section__solution .solution__info p {
    color: #2e2c2c;
    line-height: 50px;
    letter-spacing: -.025em;
}
.blacklabel-episode2 #section__solution .solution__info .--point {
    position: relative;
    isolation: isolate;
}
.blacklabel-episode2 #section__solution .solution__info .--point .--01 {
    padding: 0;
}

.blacklabel-episode2 #section__visual .visual__left .left__txt strong {
    letter-spacing: -.06em;
    white-space: nowrap;
}

.blacklabel-episode2 #section__review .review__content {
    background: #f9f9f9;
    padding: 140px 0;
}
.blacklabel-episode2 #section__review .review__content > .review__wrapper { padding: 0; }
.blacklabel-episode2 #section__review .review__content .review__txt h3 {
    font-size: 80px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -.025em;
    color: #1d1d1d;
}
.blacklabel-episode2 #section__review .review__content .review__txt h3 span { color: #924088; }
.blacklabel-episode2 #section__review .review__content .review__txt h3 span::after { content: none; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner > p { font-size: 70px; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner > p span { font-size: 22px; color: inherit; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(1) > p { color: #c097bc; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(2) > p { color: #ad76a8; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(3) > p { color: #8a3a82; }
.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(4) > p { color: #660b5b; }

.blacklabel-episode2 #section__makeover {
    background-image: url('../img/episode2/makeover_bg02.png');
}

.blacklabel-episode2 #section__how .how__txt .--point {
    position: relative;
    isolation: isolate;
}

.blacklabel-episode2 #section__makeover {
    height: auto;
    aspect-ratio: 1997 / 1340;
    background-size: 100% 100%;
    background-position: center top;
    background-color: #dfdfe2;
}
.blacklabel-episode2 #section__makeover .makeover__wrapper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.blacklabel-episode2 #section__solution .btn__wrapper a,
.blacklabel-episode2 .ep2-solution-link {
    line-height: 1;
    text-align: center;
}
.blacklabel-episode2 #section__solution .btn__wrapper a > .--01,
.blacklabel-episode2 .ep2-solution-link > .--01 {
    display: block;
    padding-top: 6px;
}

.blacklabel-episode2 #section__complex .complex__info .info__example .example__inner {
    height: 180px;
    box-sizing: border-box;
}
.blacklabel-episode2 #section__complex .complex__info .info__example .example__inner p:first-of-type {
    margin-bottom: 4px;
}
.blacklabel-episode2 #section__complex .info__example > .balstyle__nav {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #e5d5e3;
    box-shadow: 0 6px 16px rgba(146, 64, 136, .18);
    box-sizing: border-box;
}
.blacklabel-episode2 #section__complex .info__example > .balstyle__nav::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-60%, -50%) rotate(45deg);
    width: 10px;
    height: 10px;
    border-top: 2px solid #924088;
    border-right: 2px solid #924088;
}

.blacklabel-episode2 #section__keypoint .keypoint__tit .--02 {
    position: relative;
    isolation: isolate;
}

.blacklabel-episode2 #section__review .ep2-review-days .img__inner video {
    display: block;
    width: 100%;
    aspect-ratio: 387 / 423;
    height: auto;
    object-fit: cover;
    object-position: 50% 35%;
    border-radius: 8px;
}

.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(2) video {
    object-position: 45% 35%;
}
.blacklabel-episode2 #section__review .ep2-review-days .item__inner:nth-child(3) video {
    object-position: 36% 35%;
}

.blacklabel-episode2 #section__review .ep2-review-days video { cursor: pointer; }
.blacklabel-episode2 #section__review .ep2-review-days video:focus-visible {
    outline: 3px solid #924088;
    outline-offset: 4px;
}
