@media (max-width: 768px) {
/*アウトライン表示 
    * {
        outline: 2px solid blue;
    }
    */
/*
Button
================================================ */
    .inquiry-form-button{
        width: 80vw;
        padding: 2.5vw 16vw;
        font-size: 6.2vw;
        margin: 5vw auto;
        border-radius: 8vw;
        border: 1.25vw solid #ffffff;
        box-shadow: 0 0 4vw 0.02vw #5e5e5e;
    }
    .Form-Btn {
        width: 80vw;
        padding: 2.5vw;
        font-size: 6.2vw;
        margin: 5vw auto;
        border-radius: 8vw;
        border: 1.25vw solid #ffffff;
        box-shadow: 0 0 4vw 0.02vw #5e5e5e;
    }
    .inquiry-form-button:hover,.Form-Btn:hover{
        color: var(--red-color);
        background-color:  #ffffff;
        border-radius: 8vw;
        border: 1.25vw solid  var(--red-color);
    
    }
    /* 
    .Form-Btn:hover{
        border-radius: 8vw;
        border: 1.25vw solid var(--red-color);
    
    }
    .inquiry-form-button::after{
        border-radius: 8vw;
        border: 1.25vw solid var(--red-color);
        box-shadow: 0 0 1vw 0.02vw #5e5e5e; 
    }*/
/*
new-line
================================================ */
    .responsive-new-line{
        display:block;
        height: 1vw;
    }
    .responsive-new-line5{
        display:block;
        height: 5vw;
    }
    .responsive-cancel-line{
        display: none;
    }
/*
general-logo
================================================ */
    .general-logo{
        width:15vw;
        height: 15vw;
    }
    .logo-lpest{
        margin-left: 2.4vw;
        font-size: 13vw;
        letter-spacing: 0.5vw;
    }
/*
header
================================================ */

    .fv-pc{
        display: none;
    }
    .fv-sp{
        display: inline;
        width:100vw;
    }
    .logo{
        position: static;
        margin-right: 60vw;
        width: 30vw;
    }
    .header-bottom{
        height: 140vw;
        top:-0.5vw;
    }
    .header-bottom-title{
        top:0%;
        width:100vw;
        font-size: 8vw;
    }
    .header-bottom-title-accent{
        font-size: 9vw;
    }
    .header-promise{
        top:34vw;
    }
    .header-button{
        left:10vw;
    }
    .symbol-pc{
        display: none;
    }
    .symbol-sp{
        display: block;
        width: 45vw;
        margin: 2vw auto;
        
    }
/*
worry
================================================ */
    #worry{
        height: 190vw;
    }
    .worry-symbol{
        width: 7vw;
        padding-top: 7vw;
    }
    .worry-title{
        margin-left:auto;
    }

    .worry-title-word{
        font-size: 6.5vw;
    }
    .worry-title-accent{
        font-size: 9vw;
    }
    .worry-icon{
        width:20vw;
        margin-left: 70vw;
    }
    .worry-list{
        justify-content: flex-start;
        align-items: center;
        border: 0.8vw solid var(--navy-color);
        width: 90vw;
        height: 15vw;
        padding-left: 1.5vw;
        margin-bottom:2vw;
        border-radius: 2.4vw;
        font-size: 4.4vw;
    }
    .worry-symbol-mini{
        width: 7vw;
        margin: 2.5vw 0vw;
    }
    .worry-list-sentence{
        margin:1.25vw 0vw 1.25vw 2vw;
        
    }
    .worry-bottom{
        margin-top: 6vw;
        font-size: 7vw;
    }
    .worry-bottom-accent{
        font-size: 8vw;
    }
    .worry-accent{
        display: inline-block;
        margin: 3vw;
        line-height: 15vw;
    }
    .worry-bottom-red{
        font-size: 8vw;
        font-weight: 700;
    }
/*
services
================================================ */
    #services{
        height: 190vw;
    }
    .services-head{
        font-size: 7vw;
        font-weight: 700;
        
    }
    .services-head-first-margin{    
        margin: 12vw -9vw 0vw 9vw;
        letter-spacing: 0.3vw;
    }
    .services-head-second-margin{
        margin-top: 4vw;
        margin-bottom: 4vw;
        
    }
    .services-head-accent{
        font-size: 9vw;
    }
    .services-titleicon{    
        margin-top: 3vw;
        height: 18vw;
    }
    .services-ha{
        font-size: 9vw;
        padding-left: 1vw;
        padding-bottom: 1vw;
    }
    .services-example{
        width: 45vw;
        height: 40vw;
        border: 0.8vw solid var(--red-color);
        border-radius: 2vw;
        margin: 1vw 1vw;
    }
    .services-icon{
        margin-top:4vw;
        height: 17vw;
    }
    .services-content{
        margin-top: 1vw;
        font-size: 3.5vw;
        line-height: 4.5vw;
    }
    .services-content-accent{
        font-size:4.5vw;
        font-weight: 900;

    }
/*
consultation
================================================ */
    #consultation{
        height: 77vw;
    }
    .consultation-head{width: 43vw;
        font-size: 4.5vw;
        height: 8.5vw;
        line-height: 8vw;
        margin: 10vw auto 4vw auto;
        border-radius: 6.5vw;
    }
    .consultation-sentence{    
        font-size: 5.5vw;
        line-height: 6vw;
        
    }
    .consultation-accent{
        font-size:7vw;
    }
/*
reason
================================================ */
    #reason{
        height: 665vw;
    }
    .reason-head{
        height: 50vw;
        padding-top:10vw;
        background-image: url(../img/riyuu_title_background_sp.png);
    }

    .reason-head-accent{
        display: block;
        margin-top:1vw;
        font-size: 9vw;
    }

    .reason-foot{
        height: 615vw;
    }
    .reason-foot-background-image{
        display: none;
    }

    .reason-example{
        left: 5vw;
        width: 90vw;
        height: 145vw;
        border: 0.5vw solid var(--red-color);
        border-radius: 2vw;
    }

    .place1{
        top:2.5vw;
    }
    .place2{
        top:152vw;
    }
    .place3{
        top:302vw;
    }
    .place4{
        top:452vw;
        height: 160vw;
    }
    .reason-example-head{
        display: grid;
        place-items: center center;
        height: 20vw;
        padding-left: 0vw;
        line-height: 7vw;
        font-size: 5.5vw;
        letter-spacing: 0.5vw;
        align-content: center;
    }

    .reason-example-head4{
        display: grid;
        place-items: center center;
        height: 28vw;
        line-height: 7vw;
        font-size: 5.5vw;
        letter-spacing: -0.4vw;
        text-align: center;
    }
    .reason-example-foot{
        flex-direction: column;
        align-items: center;
    }
    .reason-example-section{
        height: 52vw;
        margin-top: 5vw;
        margin-right: 0;
    }
    .reason-example-explanation{
        font-size: 4.5vw;
        margin-top: 4.25vw;
        width: 77vw;
    }
    .reason-example-section4{
        height: 52vw;
        margin-top: 5vw;
        margin-right: 0;
    }
    .reason-example-explanation4{
        font-size: 4.5vw;
        margin-top: 4.25vw;
        width: 77vw;
    }
/*
content
================================================ */
    #content{
        height: 320vw;
        background-position: -250vw 0vw;
    }
    
    .content-head{
        width: 100vw;
        top: 12vw;
        font-size: 9vw;
    }

    .content-img-flock1{
        padding-top: 27vw;
        flex-wrap: wrap;
    }
    .content-img-flock1-2{
        flex-wrap: wrap;
        justify-content: space-evenly;
        
    }
    .content-img-flock2{
        flex-wrap: wrap;
        justify-content: space-evenly;
        padding-top:1.5vw;
    }
    .content-img1{
        width: 40vw;
        margin:3vw auto;
    }
    .content-img2{
        width: 40vw;
        margin-right: 0vw;
        z-index: 30;
        margin:3vw auto;

    }
/*
comparison
================================================ */
    #comparison{
        height: 213vw;
        background-size: auto 38.5vw;
        background-position: right top;
    }
    #comparison::before{
        content: "";
        position: absolute;
        top: 173vw;
        left: 0;
        height: 50vw;
        width: 100%;
        background-image: url(../img/comparison_background.png);
        background-size: auto 38.5vw;  
        background-position: right bottom; 
        background-repeat: no-repeat;
        transform: scale(-1);
    }

    .comparison-head{
        width: 100vw;
        top: 12vw;
        font-size: 9vw;
    }
    .comparison-text-pc{
        display:none;
    }
    .comparison-text-sp{
        display: inline-block;
        height: 169vw;
        text-align: center;
        margin: 30vw 5vw 0 5vw;
        z-index: 30;
        position: inherit;
    }

    /*
    success
    ================================================ */
    #success{
        position: relative;
        margin-top:0vw;
        height: 440vw;
    }

    .success-head{
        width: 100vw;
        top: 12vw;
        font-size: 9vw;
    }
    .success-foot{
        position: absolute;
        left:10vw;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top:30vw;
    }

    .success-example{
        justify-content: space-between;
        flex-wrap: wrap;
        margin: 0 auto;
        width:0vw;
        text-align: center;
        margin-bottom: 1vw;
    }
    .success-example-box{
        width: 80vw;
        height: 80vw;
        border: 0.3vw solid var(--red-color);
        border-radius: 2vw;
        position: relative;
        margin: 0 auto;
        margin-bottom:5vw;
    }
    .success-example-case{
        width: 14vw;
        text-align: center;
    }
    .success-example-head{
        height: 10vw;
        width: 79.8vw;
        background-color: var(--red-color);
        border-top-left-radius: 1.5vw;
        border-top-right-radius: 1.5vw;
        color: white;
        line-height: 9.5vw;
        font-size: 4.6vw;
        font-weight: 700;
        letter-spacing: 0.4vw;
    }
    .success-example-foot1{
        margin: 0 auto;
        margin-top: 4vw;
        font-size: 4vw;
        text-align: center;
        line-height: 4vw;
        width:70vw;
    }
    .success-example-foot2{
        display: flex;
        /* text-align: center; */
        margin-top: 5vw;
        margin-left: 22vw;
        /* margin-right: auto; */
        font-size: 4vw;
        /* margin: 13px auto; */
        justify-content: center;
        flex-direction: column;
    }
    .success-example-foot2-flex{
        display: flex;
        width: 50vw;
        margin-top: 3vw;
        margin-left: 2vw;
        flex-direction: column;
    }
    .success-example-foot2-box-left{
        width: 25vw;
        font-size: 4vw;
        text-align: center;
        color: #000000;
        border: 0.5vw solid #000000;
        border-radius: 2.5vw;
        padding: 2vw 0;
    }
    .success-example-foot2-box-right{
        
        width: 25vw;
        font-size: 4vw;
        text-align: center;
        color: var(--red-color);
        border: 0.5vw solid  var(--red-color);
        border-radius: 2.5vw;
        padding:2vw 0;
        margin-top:16vw;
    }

    .success-example-foot2-box-center{
        position: absolute;
        bottom: 17vw;
        right: 37.5vw;
        font-size: 6vw;
        color: var(--red-color);
        transform: scaleX(2.5) rotate(90deg);
        text-align: center;
        letter-spacing: 2vw;
    }
    .success-example-absolute{
        position: absolute;
        bottom: -7.5vw;
        right: -2vw;
        width: 30vw;
        height: 30vw;
        color: white;
        border-radius: 50%;
        /* background: linear-gradient(90deg, #dad23c, #ccae35); */
        z-index: inherit;
        padding-top: 9.35vw;
        font-size: 5vw;
    }

    .success-example-absolute-accent{
        font-size: 7vw;
    }
    @keyframes shiny {
        0% {
            left: -50%;
        }
        10% {
            left: 150%;
        }
        100% {
            left: 150%;
        }
    }
/*
offer
================================================ */
    #offer{
        position: relative;
        height: 350vw;
        width:100%;
    }

    .offer-head{
        position: relative;
        height: 188.5vw;
        width: 100%;
        background-image: url(../img/offer01_background.jpg);
        background-size: 365%;
        background-position: center -55vw;
        background-repeat: no-repeat;
        z-index: 20;
    }

    .offer-head-title{
        position: absolute;
        width: 82vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 12vw;
        color: #c9a732;
        font-weight: 600;
        font-size: 9vw;
        text-align: center;
        letter-spacing: 0.1vw;
        z-index: 30;
        border-top: 1vw solid #c9a732;
        border-bottom: 1vw solid #c9a732;
        padding: 2vw 1.5vw;
    }
    .offer-head-subtitle{
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 33vw;
        width: 90vw;
        color: #ffffff;
        font-size: 6.5vw;
        line-height: 9vw;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.1vw;
        z-index: 30;
    }
    .offer-head-box{
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 56vw;
        width: 80vw;
        height: 120vw;
        background-color: #ffffff;
        border: 1vw solid #c9a732;
        border-radius: 2vw;
        text-align: center;
        letter-spacing: 0.1vw;
        z-index: 30;
    }
    .offer-head-sentence{
        font-size: 3.8vw;
        letter-spacing: 0vw;
        line-height: 5vw;
        font-weight: 600;
        text-align: left;
        padding-left: 2vw;
        padding-top: 8vw;
        padding-right: 2vw;
    }
    .offer-head-president{
        display: block;
        font-size: 4.5vw;
        letter-spacing: 0.5vw;
        line-height: 0vw;
        font-weight: 600;
        text-align: right;
        padding-top: 12vw;
        padding-right: 0.5vw;
        height: 13vw;
    }
    .offer-foot{
        height: 161.5vw;
        width: 100%;
    }
    .offer-foot-title{
        display: block;
        width: 100vw;
        margin: 0 auto;
        margin-top: 6.75vw;
        font-weight: 600;
        font-size: 8vw;
        text-align: center;
        letter-spacing: 0.1vw;
    }
    .offer-foot-box{
        position: relative;
        display: block;
        margin: 13vw auto 18vw auto;
        width: 90vw;
        height: 72vw;
        background-color: #ffffff;
        color: var(--navy-color);
        border: 1vw solid var(--navy-color);
        border-radius: 2vw;
        font-size: 1.5vw;
        line-height: 3vw;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.1vw;
        z-index: 30;
    }

    .offer-icon{
        position: absolute;
        left: -2%;
        top: -20%;
        width: 25vw;
        margin-right: 0.5vw;
        z-index: 30;
    }

    .offer-foot-sentence{
        padding: 1.2vw 0vw;
        line-height: 2.2vw;
    }
    .offer-foot-sentence1{
        font-size: 5vw;
        color: var(--red-color);
        width: 63vw;
        height: 20vw;
        margin: 3vw auto 0;
        line-height: 5vw;
    }
    .offer-foot-sentence2{
        font-size: 6vw;
        color: var(--navy-color);
        line-height: 9vw;
    }
    .offer-foot-accent{
        color: var(--red-color);
        font-size: 10vw;
        font-weight: 700;
        background:linear-gradient(transparent 70%, #f2dc95 70%);
        border-bottom-width: 3vw;
    }
    .offer-foot-sentence3{
        font-size:4.0vw;
        color: var(--navy-color);
        line-height: 10vw;
    }
    .offer-foot-sentence4{
        margin:7vw auto 1vw auto;
        color: var(--navy-color);
        font-size: 5.5vw;
        line-height: 7vw;
        font-weight: 600;
        width: 60vw;
    }    
/*
flow
================================================ */
    #flow{
        position: relative;
        height: 400vw;
        width: 100%;
        text-align: center;
        background-color: var(--navy-color);
    }
    .flow-title{
        position: absolute;
        width: 100vw;
        top: 12vw;
        font-size: 9vw;
    }
    .flow-block{
        flex-wrap: wrap;
        position: absolute;
        left:50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top:25vw;
    }
    .flow-block-section{
        margin:3vw 0;

    }
    .flow-block-section-step{
        color:#ffffff;
        padding-bottom: 1vw;
        font-size:7vw;
    }
    .flow-block-section-box{
        width: 90vw;
        height: 58vw;
        background-color: #ffffff;
        border-radius: 1vw;
    }
    .flow-block-section-icon{
        margin: 5vw 0 0.5vw 0;
        height: 29vw;
    }
    .flow-block-section-title{
        color: var(--navy-color);
        font-size:6vw;
        font-weight: 600;
    }

    .flow-block-section-sentence{
        margin: 2vw 0vw 0 0vw;
        font-size: 4vw;
        letter-spacing: 0vw;
        line-height: 5vw;
        font-weight: 600;
        text-align: center;
        overflow: visible;
    }
/*
question
================================================ */
    #question{
        position: relative;
        height: 85vw;
        width: 100%;
        text-align: center;
        background-color: #ffffff;
    }
    .q-title{
        width: 100vw;
        top: 12vw;
        font-size: 9vw;
    }

    .qa-container {
        position: absolute;
        padding-bottom: 3.75vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 27vw;
        font-size: 3vw;
        letter-spacing: -0.02vw;
        font-weight: 600;
        text-align: left;
        width: 90vw;
    }
    .qa-list:not(:first-child) {
        margin-top: 1vw;
    }

    .question-title {
        border-left:0.5vw solid #e4e4e4;
        border-right:0.5vw solid #e4e4e4;
        border-top:0.5vw solid #e4e4e4;
        border-top-left-radius:0.5vw;
        border-top-right-radius:0.5vw;
        border-bottom-left-radius:0.5vw;
        border-bottom-right-radius:0.5vw;
        cursor: pointer;
        padding: 2vw;
        position: relative;
        font-weight: 600;
    }

    .question-title::before{
        content: '';
        position: absolute;
        left: 50%;
        bottom:0vw;
        display: inline-block;
        width: 89.6vw;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-bottom:0.5vw solid #e4e4e4;
        
    }
    .question-title.open::before{ 
        width: 50%; 
    }

    .question-choice-minus{
        position: absolute;
        top: -5.5vw;
        right: 3.5vw;
        width: 3.5vw;
        height: 3.5vw;
        border-radius: 50%;
        background-color: #686868;
        color: #ffffff;
        font-size: 3.5vw;
        text-align: center;
        line-height: 2.75vw;
    }
    .question-choice-plus{
        position: absolute;
        top: 2vw;
        right: 3.5vw;
        width: 3.5vw;
        height: 3.5vw;
        border-radius: 50%;
        background-color: var(--navy-color);
        color: #ffffff;
        text-align: center;
        line-height: 3.4vw;
    }
    .question-choice-none{
        display: none;
    }
    .question-choice-block{
        display: block;
    }

    .question-qa{
        color: #022179;
        font-size: 3vw;
        padding-right: 2vw;
    }
    .answer-text {
        border-left:0.5vw solid #e4e4e4;
        border-right:0.5vw solid #e4e4e4;
        border-bottom:0.5vw solid #e4e4e4;
        border-bottom-left-radius:0.5vw;
        border-bottom-right-radius:0.5vw;
        display: none;
        padding: 2vw; 
        position: relative;
    }

/*
contact-form
================================================ */
    #contact-form{
        position: relative;
        height: 210vw;
        width: 100vw;
        text-align: center;
        background-color: var(--navy-color);
    }
    .contact-form-container{
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 8vw;
        width: 90vw;
        background-color: #ffffff;
    }
    .contact-form-container-height{
        height: 195vw;
    }
    .contact-form-title{
        position: absolute;
        left: 50%;
        width: 80vw;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        top: 6vw;
        font-weight: 700;
        font-size: 7.5vw;
        text-align: center;
        color: var(--navy-color);
    }
    .Form {
        margin-top: 20vw;
        margin-left: auto;
        margin-right: auto;
        width: 80vw;
        font-size: 3vw;
    }
    .Form-Item {
        width: 100%;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 5vw 0;
    }

    .Form-Item-Label {
        font-weight: 600;
        font-size: 4vw;
        margin-bottom: 3.5vw;
    }


    .Form-Item-Label-Required {
        border-radius: 1vw;
        padding: 0.1vw 0.2vw;
        width: 2.25vw;
        margin-right: 2vw;
        text-align: center;
        background: var(--red-color);
        color: #fff;
        text-align: left;
        font-weight: 600;
        font-size: 3vw;
    }
    .Form-Item-Label-Optional{
        padding-left:1vw;
    }
    .Form-Item-Input,
    select {
        border: 1px solid var(--navy-color);
        border-radius: 1.5vw;
        height: 8vw;
        width: 80vw;
        font-size: 3vw;
        text-align: left;
        padding-left: 2vw;
    }
    .Form-Item-Textarea {
        border: 1px solid var(--navy-color);
        border-radius: 1.5vw;
        height: 36vw;
        width: 80vw;
        font-size: 3vw;
        text-align: left;
        padding:2vw 0 0 2vw;
    }
    .Form-Item-Confirmation{
        border: 1px solid rgb(193, 37, 37,0);
        border-radius: 0.5vw;
        height: 1.9vw;
        width: 80vw;
        font-size: 4vw;
        text-align: left;
        padding-left:1vw;
        line-height: 1.8vw;
    }

    .Form-Item-Confirmation-2{
        border: 1px solid rgb(193, 37, 37,0);
        border-radius: 0.5vw;
        width: 80vw;
        font-size: 4vw;
        text-align: left;
        padding-left:1vw;
    }
   

    select::-ms-expand {
        display: none; /*--IEでデフォルトの矢印を消します--*/
    }

    div select[name="prefecture"] option[value=""] {
        color: grey;
    }
    .errmessage{
        color: var(--red-color);
        margin-top: 10vw;
        font-size: 4vw;
    }
}