@charset "UTF-8";
.n-red  {
    color: #D7282F;
}
.js-scroll-trigger {
    opacity: 0;
    transform: translateY(100px);
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.js-scroll-trigger.is-show {
    opacity: 1;
    transform: translateY(0);
}
.l-section  {
    padding: 0;
}
.l-footer-fixed {
    position: relative; /* スタック文脈を作成 */
    z-index: 9999;
}
.floating-btn-wrap  {
    cursor: pointer;
    width: 340px;
    min-height: 60px;
    border-style: solid;
    border-width: 2px;
    border-color: #fff;
    background-image: -webkit-linear-gradient(90deg, #225cff 0, #009ee4 100%);
    background-image: -ms-linear-gradient(90deg,#225cff 0,#009ee4 100%);
    box-shadow: 0 2px 20px 0 rgba(0, 0, 0, .5);
    border-radius: 50px;
    -webkit-transition: background .5s;
    transition: background .5s;
    position: fixed;
    bottom: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    box-sizing: border-box;
    z-index: 200;
}
.floating-btn   {
    line-height: 60px;
    font-weight: 700;
    color: #fff;
}
.floating-btn-icon  {
    display: block;
    width: 24px;
    height: 24px;
    background: #fff;
    border-radius: 50px;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.floating-btn-icon:after  {
    content: url(/service/netflix/images/img-arrow-blue.png);
    display: block;
    position: absolute;
    top: 44%;
    left: 55%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.check a  {
    text-decoration: none;
}
.about-section  {
    background: #e50914;
}
.about-wrap {
}
.abou-btn-wrap    {
    width: 100%;
    background-image: url(/service/netflix/images/abou-btn-wrap-bg.webp);
    background-size: 100% auto;  
    background-repeat: repeat-y; 
    background-position: top center;
}
.abou-btn-wrap-inner    {
    border-bottom:#e50914 1px solid;
}
.abou-btn-wrap-wid    {
    margin: 0 auto;
    width: 90%;
}
.abou-btn   {
    width: 70%;
    border-radius: 30px;
}
.abou-btn-red   {
    background-color: #e50914;
    color: #fff;
    border: none;
}
.abou-btn-triangle:after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%; 
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #ffffff;
}
.abou-btn-triangle-color-gray:after   {
    border-color: transparent transparent transparent #323232;
}
.abou-btn-triangle-color-red:after    {
    border-color: transparent transparent transparent #e50914;
}
.abou-btn-border    {
    border: 1px solid #e50914;
    color: #e50914;
}
.abou-btn-blank:after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%; 
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url(/service/netflix/images/icon_blank.svg);
}

.u-line {
    background: linear-gradient(transparent 50%, #ffb0b4 50%);
}
.about-note {
    padding-bottom: 100px;
}
.recommend-ttl  {
    padding: 120px 0 100px 0;
}
.recommend-01   {
    padding: 0 0 0 140px;
    display: flex;
    gap: 0 95px;
}
.recommend-01-ttl   {
    width: 425px !important; 
    height: auto; 
    flex-shrink: 0;
}
.indexmessage   {
    color: #fff;
    width: 100%;
}
.indexmessage-inner {
    margin: 0;
}
.indexmessage-list-wrapper  {
    margin: 0;
    padding-bottom: 110px;
}
.indexmessage .swiper-button-prev, .indexmessage .swiper-button-next    {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    position: absolute;
    width: 40px;
    height: 40px;
    border: 1px solid #fff;
    border-radius: 4px;
    bottom: -64px;
    transition: background .3s, border .3s;
    cursor: pointer;
    background-image: none;
}
.indexmessage .swiper-button-next {
    top: 85%;
    right: 10%;
    background:#000 url(/service/netflix/images/slider_arrow.png) no-repeat center center;
}
.indexmessage .swiper-button-prev {
    top: 85%;
    left: 75%;
    background:#000 url(/service/netflix/images/slider_arrow.png) no-repeat center center;
}
.indexmessage .swiper-button-prev:hover {
    background:#d7282f url(/service/netflix/images/slider_arrow.png) no-repeat center center;
    opacity: 1;
}
.indexmessage .swiper-button-next:hover {
    background:#d7282f url(/service/netflix/images/slider_arrow.png) no-repeat center center;
    opacity: 1;
}
.refinemodal    {
    background: rgba(0, 0, 0, .8);
}
.modal-close    {
    background: none;
}
.modal-close span {
    content: "";
    display: block;
    width: 50px;
    height: 4px;
    background: #CACACA;
    position: absolute;
    left: 18px;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
}
.recommend-02   {
    margin-top: 230px;
}
.recommend-02-ttl   {
    margin-bottom: 80px;
}
.recommend-03   {
    margin-top: 130px;
}
.col-6-adjust {
    flex: 0 0 40%;
    max-width: 40%;
    margin-top: 30px;
}
.col-6-adjust-2 {
    flex: 0 0 50%;
    max-width: 50%;
    margin-left: 70px;
}
.recommend-bottom   {
    padding-bottom: 100px;
}
.fix-menu   {
    background-color: #950006;
    position: -webkit-sticky;
    position: sticky;
    top: 0; 
    z-index: 100;
}
.fix-menu .l-inner  {
    border-left: 2px solid rgba(255, 255, 255, .3);
    border-right: 2px solid rgba(255, 255, 255, .3);
}
.fix-menu-box-border   {
    border-right: 2px solid rgba(255, 255, 255, .3);
}
.fix-menu .col-3    {
    color: #fff;
    padding: 0;   
}
.fix-menu-box   {
    cursor: pointer;
    height: 76px;
}
.fix-menu-box p  {
    line-height: 76px;
}
.fix-menu-box p   {
    text-decoration: none;
    color: #fff;
}
.price-section  {
    background: #d7282f;
}
.parallax-bg   {
    background-image: url('/service/netflix/images/feature-bg.png'); 
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.apply-section  {
    padding: 120px 0;
    background-color: #ffe8e9;
}
.tab-list {
    position: relative;
    margin: 0 auto;
    width: 482px;
    height: 102px;
    background-color: #fff;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    padding: 0;
}
.tab-list-item  {
    border:none;
    color: #333;
    background-color: transparent;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 230px;
    height: 81px;
    border-radius: 40px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    line-height: 1.3;
    z-index: 3;
    -webkit-transition: color .3s;
    transition: color .3s;
}
.tab-list-item.is-active    {
    color: #fff;
    width: 230px;
    background: -webkit-linear-gradient(bottom, #c9020a 0, #f13a41 100%);
    background: linear-gradient(to top, #c9020a 0, #f13a41 100%);
    border-radius: 40px;
    z-index: 2;
    -webkit-transition: left .3s;
    transition: left .3s;
    border: none;
}
.tab-list-item.is-active:after {
    content: "";
    position: absolute;
    width: auto;
    height: auto;
    inset: 4px;
    border-radius: 36px;
    box-shadow: inset 0 0 0 2px #fff;
    pointer-events: none;
    background-color: transparent;
}
.apply-box  {
    display: flex;
    padding: 10px;
}
.apply-step {
    position: relative;
    width: 320px;
    border-radius: 0 0 15px 15px;
    box-shadow: 3px 5.196px 0 0 rgba(0, 0, 0, .1);
    background: #fff;
    border-top: 4px solid #d7282f;
    border-radius: 0 0 15px 15px;
    padding: 66px 8px 0 8px;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: .04em;
    text-align: center;
    margin-top: 45px;
    background-image: url('/service/netflix/images/img-step-bg-tile.png'); 
    background-repeat: no-repeat;
}
.apply-step-label {
    display: block;
    position: absolute;
    top: -45px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1;
}
.apply-text {
    margin-bottom: 195px;
}
.apply-text-red {
    color: #d7282f;
    font-size: 18px;
}
.apply-text-l   {
    font-size: 28px;
}
.apply-btn-wrap  {
    cursor: pointer;
    justify-content: space-between;
    gap: 0 13px;
    padding: 0 10px 0 10px;
    color: #fff;
    background: -webkit-linear-gradient(90deg, #c9020a 0, #f13a41 100%);
    background: -ms-linear-gradient(90deg,#c9020a 0,#f13a41 100%);
    border: none;
    transition: background .5s;
    margin: 0 auto;
    width: 260px;
    min-height: 70px;
    border-radius: 50px;
    box-sizing: border-box;
    position: relative;
}
.apply-btn   {
    font-weight: 700;
    color: #fff;
    padding-right: 20px;
    text-decoration: none;
}
.apply-btn-p    {
    line-height: 66px;
}
.apply-btn-icon  {
    display: block;
    width: 24px;
    height: 24px;
    background: #fff;
    border-radius: 50px;
    position: absolute;
    top: 47%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.apply-btn-icon:after  {
    content: url(/service/netflix/images/img-arrow-red.png);
    display: block;
    position: absolute;
    top: -20px;
    left: 40%;
}
.apply-fukidashi    {
    display: flex;
    justify-content: center;
    align-items: center;
    margin:0 auto;
    width: 160px;
    min-height: 50px;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    background: #000;
    border-radius: 5px;
    position: relative;
}
.apply-fukidashi:after    {
    clip-path: polygon(0 0, 100% 100%, 0 100%);
    background-color: inherit;
    border: inherit;
    border-radius: 0 0 0 2px;
    box-sizing: border-box;
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: -3px;
    width: 8px;
    height: 8px;
    transform: translateX(-50%) rotate(-45deg);
}
.paypay-btn-margin  {
    margin-bottom: 130px;
}
.paypay-btn {
    cursor: pointer;
    position: relative;
    width: 260px;
    min-height: 70px;
    border-radius: 50px;
    border: 2px solid #d7282f;
    margin: 0 auto;
    padding-top: 10px;
}
.paypay-btn a {
    color: #d7282f;
    text-decoration: none;
}
.paypay-btn-icon:after      {
    top: 0;
}
.apply-dots {
    margin: 25% 5px 0 5px;
}
.caution-box    {
    border: 2px solid #d7282f;
    border-radius: 20px;
    background: #fff;
    padding: 20px 40px 35px 40px;
    margin-bottom: 40px;
}
.caution-box-ttl    {
    display: flex;
    font-size: 20px;
    font-weight: 700;
    color: #333;
    border-bottom: 2px solid #e50914;
    justify-content: center;
    align-items: center;
    gap: 0 16px;
}
.caution-text   {
    font-size: 20px;
}
.caution-box-ttl img    {
    display: block;
    width: 28px;
    height: 28px;
}
.qa-section {}
.qa-section-ttl {
    padding: 120px 0 100px 0;
}
.qa-section-ttl-mb  {
    margin-bottom: 60px;
}
.accordion  {
    border: 2px solid #d7282f;
    border-radius: 30px;
}
.accordion-title   {
    border: none;
    padding: 55px 94px 50px 50px;
    margin: 0;
    background: transparent;
}
.accordion-title:hover {
    opacity: 1;
}
.accordion-title:before   {
    content: "";
    background: url(/service/netflix/images/qa-q.webp) no-repeat center / cover;
    display: block;
    width: 58px;
    height: 77px;
    position: absolute;
    z-index: 2;
    top: -36px;
    left: 25px;
}
.accordion-icon {
    display: block;
    position: absolute;
    right: 25px;
    top: 50%;
    margin-top: -26px;
    width: 34px;
    height: 34px;
    background-color: #d7282f;
    border-radius: 50%;
}
.accordion-icon span:nth-child(1) {
    width: 2px;
    height: 20px;
    left: 16px;
    top: 7px;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
}
.accordion-icon span:nth-child(2) {
    width: 18px;
    height: 2px;
    left: 8px;
    top: 15px;
}
.accordion-icon span    {
    background: #fff;
}
.accordion-title.is-active .accordion-icon span:nth-child(1) {
    width: 2px;
    height: 20px;
    left: 16px;
    top: 7px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.accordion-box  {
    background-color: #ffe8e9;
    padding: 44px 30px 50px 91px;
    position: relative;
    border-radius: 0 0 30px 30px;
}
.accordion-box-inner:before   {
    content: "";
    background: url(/service/netflix/images/qa-a.webp) no-repeat center / cover;
    display: block;
    width: 36px;
    height: 43px;
    position: absolute;
    top: 30px;
    left: 34px;
}
.caution-section    {
    padding: 0 0 60px 0;
}
.caution-list   {
    padding: 80px 0 20px 0;
}

@media (max-width: 768px) {
    .abou-btn {
        width: 100%;
        border-radius: 30px;
    }
    .abou-btn-wrap    {
        width: 100%;
        background-image: url(/service/netflix/images/abou-btn-wrap-bg-sp.webp);
        background-size: 100% auto;  
        background-repeat: repeat-y; 
        background-position: top center;
    }
    .fix-menu-box {
        cursor: pointer;
        height: 60px; 
        display: flex; 
        align-items: center;
        justify-content: center;
    }
    .fix-menu-box p {
        line-height: 1.3;
        margin: 0;
    }
    .fix-menu .l-inner {
        border-left: none;
        border-right: none;
    }
    .recommend-ttl {
        padding: 40px 0 30px 0;
    }
    .recommend-01 {
        padding: 0;
        display: block;
        gap: 0;
    }
    .recommend-01-ttl {
        width: 100% !important;
        height: auto;
        flex-shrink: 0;
    }
    .indexmessage-list-wrapper  {
        padding-bottom: 0;
        padding-top: 20px;
    }
    .indexmessage-inner {
        margin: 0 auto;
    }
    .indexmessage-list .swiper-slide {
        transition: transform 0.3s ease;
        transform: scale(0.85);
    }

    .indexmessage-list .swiper-slide-active {
        transform: scale(1);
    }

    .indexmessage-list-wrapper {
        overflow: visible !important;
    }
    .refinemodal-bottom-close   {
        top: 0;
        background: none;
    }
    .refinemodal-bottom-close span {
        width: 35px;
        height: 2px;
    }
    .refinemodal-bottom-close span:nth-child(1) {
        top: 30px;
        left: 10px;
    }
    .refinemodal-bottom-close span:nth-child(2) {
        top: 30px;
        left: 10px;
    }
    .recommend-02 {
        margin-top: 80px;
    }
    .recommend-03 {
        margin-top: 80px;
    }
    .col-6-adjust-2 {
        margin-left: 0;
    }
    .col-md-12-adjust   {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .recommend-bottom {
        padding-bottom: 60px;
    }
    .parallax-bg   {
        background-image: url('/service/netflix/images/feature-bg-sp.png'); 
        background-size: cover;
        background-position: center;
        background-attachment: fixed;
    }
    .apply-section {
        padding: 40px 0 80px 0;
    }
    .apply-box {
        display: block;
    }
    .apply-step {
        width: 100%;
    }
    .apply-dots {
        margin: 0;
    }
    .apply-text {
        margin-bottom: 10px;
    }
    .apply-text-size    {
        font-size: 20px !important;
    }
    .apply-fukidashi    {
        width: 250px;
        min-height: 35px;
    }
    .paypay-btn-margin  {
        margin-bottom: 10px;
    }
    .caution-box {
        margin-bottom: 80px;
    }
    .tab-list {
        width: 100%;
    }
    .qa-section-ttl {
        padding: 70px 0 50px 0;
    }
    .accordion-title {
        border: none;
        padding: 35px 60px 30px 30px;
        margin: 0;
        background: transparent;
    }
    .accordion-title:before {
        width: 34px;
        height: 46px;
        top: -24px;
    }
    .accordion-box-inner:before {
        width: 24px;
        height: 28px;
        top: 40px;
    }
    .accordion-box {
        padding: 44px 19px 50px 69px;
    }
    .accordion-icon {
        display: block;
        position: absolute;
        right: 13px;
        top: 54%;
        margin-top: -26px;
        width: 34px;
        height: 34px;
        background-color: #d7282f;
        border-radius: 50%;
    }
    .accordion-icon span:nth-child(1) {
        width: 2px;
        height: 14px;
        left: 16px;
        top: 10px;
        -webkit-transition: all 0.25s ease;
        transition: all 0.25s ease;
    }
    .accordion-icon span:nth-child(2) {
        width: 14px;
        height: 2px;
        left: 10px;
        top: 15px;
    }
    .accordion-title.is-active .accordion-icon span:nth-child(1) {
        width: 2px;
        height: 14px;
        left: 16px;
        top: 10px;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .caution-list {
        padding: 0px 0 20px 0;
    }
}