body.renewal_open{
    #renewalTitle{
        margin-bottom: 100px;
        div{
            position: relative;
        }
        img{
            display: block;
            margin: auto;
            width: 1116px;
            height: auto;
        }
        .top-sp{
            display: none;
        }
        p{
            position: absolute;
            left: 50%;
            font-size: 22px;
            transform: translate(-50%,-50%);
            top: 250px;
            background-color: white;
            padding: 5px 25px;
        }
        .p-sp{
            display: none;
        }
        .logo{
            position: absolute;
            left: 50%;
            top: 490px;
            height: auto;
            width: 275px;
            transform: translate(-50%,-50%);
            padding-bottom: 20px;
        }
    }
    #renewalExplanation{
        div{
            text-align: center;
            font-size: 20px;
            font-weight: 500;
            p{
                margin-top: 20px;
                margin-bottom: 20px;
                font-size: 14px;
                font-weight: normal;
            }
            .br-sp{
                display: none;
            }
        }
    }
    .dotbg:before{
        width: calc(50% + -17vw);
        height: calc(100% - -401px);
        left: calc(50% - -20vw);
        top: 11.625vw;    
    }
    #guide{
        .grid{
            margin-top: 100px;
            display: grid;
            place-items: center;
            grid-template-columns: repeat(4, minmax(150px, 1fr));
            grid-template-rows: repeat(1, 1fr);
            gap: 1px;
            div{
                position: relative;
                text-align: center;
                h4{
                    position: absolute;
                    left: 50%;
                    font-size: 19px;
                    transform: translate(-50%,-50%);
                    top: 32px;
                    width: 100%;
                    line-height: 30px;         
                }
                p.name{
                    position: absolute;
                    left: 50%;
                    transform: translate(-50%,-50%);
                    font-size: 18px;
                    color: white;
                    font-weight: 600;
                    top: 145px;
                    line-height: 27px; 
                }
                p.explanation{
                    width: 100%;
                    position: absolute;
                    left: 50%;
                    transform: translate(-50%,-50%);
                    font-size: 12px;
                    font-weight: 600;
                    top: 280px;
                    text-align: left;
                    padding: 0 10px;
                    line-height: 19px;
                }
            }
        }
    }
    #images{
        margin-top: 150px;
        /* max-width: 1000px; */
        margin: 150px auto 30px;
        .content{
            padding: 0 110px;
        }
        h3{
            font-size: 40px;
            margin-bottom: 20px;
            color: #BEB1AA;
            font-weight: 600;
            font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
        }
        h3:nth-of-type(2){
            margin-top: 80px;
        }
        .grid{
            display: grid;
            place-items: center;
            grid-template-columns: repeat(2, minmax(200px, 1fr));
            grid-template-rows: repeat(2, 1fr);
            gap: 40px;
        }
    }
}

@media screen and (max-width: 1600px){
    body.renewal_open{
        #renewalTitle p{
            font-size: 1.45vw;
        }
        #renewalTitle .logo{
            width: 17vw;
            height: auto;
        }
        #guide .grid div{
            h4{
                top: 1.95vw;
                font-size: 1.2vw;
            }
            p.name{
                font-size: 1.1vw;
                top: 9.2vw;
            }
            p.explanation{
                font-size: 0.8vw;
                top: 17.5vw;
                line-height: 1.25vw;

            }
        }
    }
}
@media screen and (max-width: 1200px){
    body.renewal_open{
        #renewalTitle p{
            top: 45%;
        }
        #renewalTitle .logo{
            top: 43vw;
        }
    }
}
@media screen and (max-width: 1000px){
    body.renewal_open{
        #renewalExplanation div{
            font-size: 2vw;
        }
        #renewalExplanation div p{
            font-size: 1.3vw;
        }
        #images{
            .content{
                padding: 0 50px;
            }
        }
    }

}
@media screen and (max-width: 600px){
    body.renewal_open{
        #renewalTitle .logo {
            width: 50vw;
            top: 104vw;
            left: 29vw;
        }
        .dotbg:before {
            width: calc(100% - 26.667vw);
            height: 100%;
            background-size: 2.667vw;
            left: 26.667vw;
            top: 0;
        }
        #renewalTitle p.p-pc{
            display: none;
        }
        #renewalTitle .p-sp {
            display: block;
            font-size: 17px;
            position: absolute;
            left: 50%;
            transform: translate(-50%, -50%);
            top: 170px;
            width: 270px;
            b{
                color: black;
                background-color: white;
                padding: 2px 20px;
    

            }
        }
        #renewalExplanation{
            margin-top: 160px;
        }
        #renewalExplanation div {
            font-size: 14px;
            font-weight: 600;
            p{
                font-size: 12px;
            }
            .br-sp{
                display: block;
            }
        }
        #renewalTitle img.top-pc{
            display: none;
        }
        #renewalTitle img.top-sp{
            display: block;
        }
        #guide .grid{
            grid-template-columns: repeat(1, minmax(350px, 1fr));
            img{
                margin-bottom: 20px;
                width: 350px;
            }
            div{
                h4{
                    font-size: 20px;
                    top: 35px;
                }
                p.name{
                    font-size: 18px;
                    top: 175px;
                }
                p.explanation{
                    font-size: 12px;
                    top: 330px;
                    line-height: 20px;
                }
            }

        }
        #images{
            margin-top: 80px;
            .content{
                padding: 0 10px;
                h3{
                    text-align: center;
                }
            }
            .grid{
                grid-template-columns: repeat(1, minmax(350px, 1fr));
            }
        }
    }

}