@charset "utf-8";

.pc {
    display: block;
}

.sp {
    display: none;
}

@media(max-width:767px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

.recommend_h2_wrap {
    padding: 20px 0 0 30px;
    border-left: solid 1px #e0e0e0;
    margin-bottom: 60px;
}

.recommend_h2_wrap h2 {
    color: var(--System-Gray-900, #212121);
    font-family: Inter;
    font-size: 42px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0.5px;
}

.recommend_h2_wrap h2 span {
    display: block;
    color: var(--System-Gray-500, #9E9E9E);
    font-family: "Noto Sans JP";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    letter-spacing: 0.5px;
}

p.h2_btm {
    color: #212121;
}

.recommend_sec1 {
    background: url(../img/recommend/lifestyle_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 20px 0;
}

.recommend_bnr {
    background: url(../img/recommend/bnr_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 20px 0;
}

.recommend_sec2 {
    background: url(../img/recommend/sec2_bg.jpg);
    background-size: contain;
    background-repeat: repeat;
    padding: 20px 0 20px;
}

.routine_wrap {
    margin-top: 20px;
}

.recommend_bnr_inner {
    width: 73.529vw;
    margin: auto;
    padding: 1.471vw 0;
    background: rgb(255 255 255 / 30%);
}

.rental_flex {
    display: flex;
    justify-content: center;
    padding-bottom: 80px;
}

.rental_item {
    width: 24vw;
    margin: 0 1.0294117647058822vw;
}

.rental_item:first-child {
    margin: 0 1.0294117647058822vw 0 0;
}

.rental_item:last-child {
    margin: 0 0 0 1.0294117647058822vw;
}

.gray {
    color: #EEEEEE;
}

p {
    color: #212121;
}

.recommend_sec1 {

    .routine_inner {
        background: #fff;
        padding: 4.515vw 0 0;
        
        .title_wrap {
            width: 75.73529411764706vw;
            margin: 0 auto;
            position: relative;
            margin-bottom: 1.471vw;

            h3 {
                position: relative;
                font-size: 2.6470588235294117vw;
                font-weight: 700;
                z-index: 1;
                text-align: center;
            }

            span {
                font-size: 4.5588235294117645vw;
                font-weight: 600;
                line-height: 0.97;
                position: absolute;
                top: -50%;
                width: 100%;
                right: 0%;
                z-index: 0;
                text-align: center;
                text-transform: uppercase;
            }

            p {
                color: var(--System-Gray-900, #212121);
                font-family: "Noto Sans JP";
                font-size: 1.324vw;
                font-style: normal;
                font-weight: 400;
                line-height: 2.35;
                letter-spacing: 0.5px;
                z-index: 1;
                text-align: center;
                position: relative;
            }
        }
    }
}

.time_routine {
    width: 77.206vw;
    margin: auto;
}

.time_routine_item {
    display: flex;
    justify-content: space-between;

    .img {
        position: relative;
        width: 45%;
        padding-right: 5%;
        margin: auto;
    }

    .img img {
        width: 100%;
        padding-bottom: 10%;
    }

    .img:after {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        width: 1px;
        height: 100%;
        background: #bdbdbd;
    }

    .img.last_child {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .img.last_child img {
        margin-bottom: 0;
    }

    .txt {
        position: relative;
        width: 60%;
        margin-top: 2.941vw;

        h4 {
            padding-left: 1.838vw;
            display: flex;
            align-items: center;
            font-family: "Noto Sans JP";
            font-size: 1.4vw;
            font-style: normal;
            font-weight: 500;
            line-height: 32px;
            letter-spacing: 0.5px;

            span img {
                width: 12.701vw;
                margin-right: 8px;
            }

            span.time2 img {
                width: 12.48vw;
                margin-right: 8px;
            }

            span.time3 img {
                width: 12.039vw;
                margin-right: 8px;
            }
        }

        h4:before {
            content: "";
            position: absolute;
            left: -1px;
            width: 9px;
            height: 9px;
            border-radius: 50%;
            background: #212121;
        }

        .p_wrap {
            padding-left: 1.838vw;
            margin: 20px 0;

            a {
                color: var(--System-Gray-000, #FFF);
                text-align: center;
                font-family: Inter;
                font-size: 1.029vw;
                font-style: normal;
                font-weight: 400;
                line-height: 1.176vw;
                display: flex;
                width: 11.98529411764706vw;
                height: 2.6470588235294117vw;
                align-items: center;
                justify-content: center;
                background: #9E9E9E;
                margin-top: 1.471vw;
            }
        }
    }
}

.recommend_bnr_inner h2 {
    width: 20.588vw;
    margin: 0 auto 20px;
}

.h2_wrap p {
    color: #212121
}

p.wht {
    color: var(--System-Gray-000, #FFF);
    width: 61.765vw;
    margin: auto;
}

.default_h1_wrap p {
    color: #fff;
}

@media(max-width:767px) {

    .recommend_sec1 {
        background: url(../img/recommend/sp/lifestyle_bg.jpg);
        padding: 20px 0;
    }

    .h2_wrap {
        margin-bottom: 5.128205128205128vw;
    }

    h2.default_h2 {
        font-size: 8.205128205128204vw;
        line-height: 1;
    }

    .h2_wrap p {
        font-size: 4.102564102564102vw;
    }

    p.h2_btm {
        font-size: 3.5897435897435894vw;
    }

    .routine_wrap {
        margin-top: 20px;
    }

    .recommend_sec1 {

        .routine_inner {
            background: #fff;
            padding: 12.385vw 0 0;

            .title_wrap {
                width: 83.077vw;

                h3 {
                    font-family: "Noto Sans JP";
                    font-size: 7.179vw;
                    font-style: normal;
                    font-weight: 700;
                    line-height: 8.718vw; /* 121.429% */
                    letter-spacing: 0.128vw;
                }

                span {
                    color: var(--System-Gray-100, #F5F5F5);
                    text-align: center;
                    font-family: Inter;
                    font-size: 10.769vw;
                    font-style: normal;
                    font-weight: 700;
                    line-height: 11.795vw; /* 109.524% */
                    letter-spacing: 0.128vw;
                    text-transform: uppercase;
                    top: -20%;
                }

                p {
                    font-family: "Noto Sans JP";
                    font-size: 4.103vw;
                    font-style: normal;
                    font-weight: 400;
                    line-height: 7.692vw; /* 187.5% */
                    letter-spacing: 0.256vw;
                }
            }
        }
    }

    .time_routine_item {
        flex-direction: column;
    }

    .time_routine {
        width: 77.206vw;
        margin: auto;
        position: relative;
    }

    .time_routine:before {
        content: "";
        position: absolute;
        width: 1px;
        height: 99.3%;
        left: 3px;
        background: #bdbdbd;
    }
    
    .time_routine_item {
        display: flex;
        justify-content: space-between;
    
        .img {
            position: relative;
            width: 100%;
            padding-right: 0;
            margin: auto;
        }
    
        .img img {
            position: relative;
            width: 100%;
            padding-bottom: 0;
            z-index: 2;
        }
    
        .img:after {
            content: none;
        }
    
        .img.last_child {
            padding-bottom: 0;
            margin-bottom: 0;
        }
    
        .img.last_child img {
            margin-bottom: 0;
        }
    
        .txt {
            position: relative;
            width: 100%;
            margin-top: 20px;
    
            h4 {
                font-family: "Noto Sans JP";
                font-size: 4.615vw;
                font-style: normal;
                font-weight: 500;
                line-height: 6.667vw;
                letter-spacing: 0.128vw;
                padding-left: 3vw;
    
                span img {
                    width: 33.572vw;
                    margin-right: 2.051vw;
                }
    
                span.time2 img {
                    width: 33.059vw;
                    margin-right: 2.051vw;
                }
    
                span.time3 img {
                    width: 33.572vw;
                    margin-right: 2.051vw;
                }
            }

    
            h4:before {
                content: "";
                position: absolute;
                left: -1px;
                width: 9px;
                height: 9px;
                border-radius: 5px;
                background: #212121;
            }
    
            .p_wrap {
                padding-left: 3vw;
                margin: 20px 0;
    
                a {
                    font-size: 14px;
                    padding: 10px 40px;
                    width: auto;
                    margin: 10px 10px 0;
                    display: inline-block;
                    line-height: 10px;
                }
            }
        }
    }

    .recommend_bnr {
        background: url(../img/recommend/sp//bnr_bg.jpg);
    }

    .recommend_bnr_inner {
        padding: 20px 0;
        width: 87vw;
    }

    .recommend_h2_wrap {
        padding: 5.128205128205128vw 0 0 5.128205128205128vw;
        margin-bottom: 10.256410256410255vw;
    }

    .recommend_bnr_inner h2 {
        width: 71.795vw;
    }

    .recommend_h2_wrap h2 span {
        font-size: 3.5897435897435894vw;
    }

    .recommend_sec2 {
        background: url(../img/recommend/sp/sec2_bg.jpg);
        padding: 15.384615384615385vw 0 10.256410256410255vw;
    }

    .rental_flex {
        display: none;
    }

    .rental-slider_wrap {
        margin-bottom: 10.256410256410255vw;
    }

    p.wht {
        color: var(--System-Gray-000, #FFF);
        width: 62.765vw;
        margin: auto;
    }

}