/* common
-------------------------------------*/
@media screen and (max-width: 767px) {
    .inquiries .error-message{
        display: block;
        margin: 10px 0 0 !important;
        color: #FF1D25;
        font-size: 12px;
    }


}
@media screen and (min-width: 768px) {
    .inquiries .error-message{
        display: block;
        margin: 10px 0 0 !important;
        color: #FF1D25;
        font-size: 13px;
    }

}

/* inquiriesIndex
-------------------------------------*/
@media screen and (max-width: 767px) {
    #inquiriesIndex{
        padding: 10px 0 80px;
    }
    #inquiriesIndex .ttl{
        font-size: 15px;
        font-weight: bold;
        margin-bottom: 8px;
    }
    #inquiriesIndex .txt{
        margin: 0 0 30px;
    }
    #inquiriesIndex .box{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 30px 2vw 30px;
        margin: 0 0 40px;
        background: #f2f2f2;  
        font-size: 13px;
    }
    #inquiriesIndex .box li{
        position: relative;
        margin: 15px 0 0;
        width: 100%;
    }
    #inquiriesIndex .box li input{
        width: 100%;
        height: 48px;
        padding: 5px 10px;
        margin:  0 0 10px;
        border: 1px solid #bbb;
        font-size: 15px;
    }
    #inquiriesIndex .box li select{
        width: 100%;
        height: 48px;
        padding: 5px 10px;
        border: 1px solid #bbb;
        font-size: 15px;
    }
    #inquiriesIndex .box li textarea{
        width: 100%;
        padding: 5px 10px;
        margin:  0 0 10px;
        border: 1px solid #bbb;
        font-size: 15px;
        resize: vertical;
    }
    #inquiriesIndex .box li div{
        margin: 0 0 15px;
    }
    #inquiriesIndex .box li span.required{
        position: absolute;
        top: -2px;
        right: 0;
        display: inline-block;
        width: 42px;
        height: 20px;
        padding: 3px 0 0;
        background: #FF4A4A;
        color: #fff;
        font-size: 13px;
        font-weight: bold;
        text-align: center;
    }
    #inquiriesIndex .box li span.note{
        font-size: 12px;
    }
    #inquiriesIndex .agree{
        margin: 0 0 50px;
        text-align: center;
    }
    #inquiriesIndex .agree input[type="checkbox"]{
        width: 28px;
        height: 28px;
        margin:  0 10px 0 0;
    }

}
@media screen and (min-width: 768px) {
    #inquiriesIndex{
        padding: 10px 0 80px;
    }
    #inquiriesIndex .ttl{
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 8px;
    }
    #inquiriesIndex .txt{
        margin: 0 0 30px;
        font-size: 16px;
    }
    #inquiriesIndex .box{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 20px 80px 35px;
        margin: 0 0 40px;
        background: #f2f2f2;  
        font-size: 16px;
    }
    #inquiriesIndex .box li{
        position: relative;
        margin: 15px 0 0;
        width: 100%;
    }
    #inquiriesIndex .box li:nth-child(1){
        width: 300px;
    }
    #inquiriesIndex .box li:nth-child(2){
        width: 300px;
    }
    #inquiriesIndex .box li input{
        width: 100%;
        height: 48px;
        padding: 5px 10px;
        margin:  0 0 10px;
        border: 1px solid #bbb;
        font-size: 15px;
    }
    #inquiriesIndex .box li input.number{
        width: 300px;
    }
    #inquiriesIndex .box li select{
        width: 300px;
        height: 48px;
        padding: 5px 10px;
        border: 1px solid #bbb;
        font-size: 15px;
    }
    #inquiriesIndex .box li textarea{
        width: 100%;
        padding: 5px 10px;
        margin:  0 0 10px;
        border: 1px solid #bbb;
        font-size: 15px;
        font-family: initial;
        resize: vertical;
    }
    #inquiriesIndex .box li div{
        margin: 0 0 15px;
    }
    #inquiriesIndex .box li span.required{
        position: absolute;
        top: -2px;
        right: 0;
        display: inline-block;
        width: 42px;
        height: 20px;
        padding: 3px 0 0;
        background: #FF4A4A;
        color: #fff;
        font-size: 13px;
        font-weight: bold;
        text-align: center;
    }
    #inquiriesIndex .box li:nth-child(5) span.required,
    #inquiriesIndex .box li:nth-child(6) span.required{
        left: 258px;
    }
    #inquiriesIndex .box li span.note{
        font-size: 13px;
    }
    #inquiriesIndex .agree{
        margin: 0 0 50px;
        text-align: center;
    }
    #inquiriesIndex .agree input[type="checkbox"]{
        width: 28px;
        height: 28px;
        margin:  0 10px 0 0;
    }

}
#inquiriesIndex .box .inquiry_file {
    display: none;
}
#inquiriesIndex .box .file_upload_button {
    border: solid 1px #111;
    padding: 0.1rem 0.5rem;
    margin-bottom: 1rem;
    font-family: revert;
}
#inquiriesIndex .box .file_upload_button:hover,
#inquiriesIndex .box .file_upload_button:focus,
#inquiriesIndex .box .file_upload_button:focus-visible {
    background-color: #e5e5e5;
}
#inquiriesIndex .uploaded_item_area {
    display: flex;
    gap: 1rem;
}
#inquiriesIndex .uploaded_item {
    width: 200px;
    aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border: solid 1px #bbb;
    padding: 1.5rem 1rem 1rem 1rem;
}
@media screen and (max-width: 767px) {
    #inquiriesIndex .uploaded_item {
        padding: 1rem 0.5rem 0.5rem 0.5rem;
    }
}
#inquiriesIndex .uploaded_image_thumbnail {
    max-height: 100%;
}
#inquiriesIndex .file_remove {
    position: absolute;
    right: 0.3rem;
    top: 0.4rem;
    cursor: pointer;
}
@media screen and (max-width: 767px) {
    #inquiriesIndex .file_remove {
        height: 10px;
        right: 0.2rem;
        top: 0.2rem;
    }
}

/* inquiriesConfirm
-------------------------------------*/
@media screen and (max-width: 767px) {
    #inquiriesConfirm{
        padding: 10px 0 80px;
    }
    #inquiriesConfirm .txt{
        margin: 0 0 30px;
    }
    #inquiriesConfirm .box{
        position: relative;
        overflow: hidden;
        width: 100%;
        padding: 30px 15px 30px;
        margin: 0px 0 50px;
        background: #f2f2f2;
        font-size: 14px;
    }
    #inquiriesConfirm .box li{
        padding: 10px 0;
    }
    #inquiriesConfirm li span{
        display: block;
        width: 150px;
        margin: 0 0 5px;
        color: #808080;
        font-size: 13px;
    }

}
@media screen and (min-width: 768px) {
    #inquiriesConfirm{
        padding: 10px 0 80px;
    }
    #inquiriesConfirm .txt{
        margin: 0 0 30px;
    }
    #inquiriesConfirm .box{
        position: relative;
        padding: 25px 30px 25px 30px;
        margin: 0px 0 40px;
        background: #f2f2f2;
        font-size: 16px;
    }
    #inquiriesConfirm li span{
        display: inline-block;
        width: 250px;
        color: #808080;
        font-size: 14px;
    }

}
#inquiriesConfirm .uploaded_item_area {
    display: flex;
    gap: 1rem;
}
#inquiriesConfirm .uploaded_item {
    width: 200px;
    aspect-ratio: 1 / 1;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 1px #999;
}
#inquiriesConfirm .uploaded_image_thumbnail {
    max-height: 100%;
}

/* inquiriesEnd
-------------------------------------*/
@media screen and (max-width: 767px) {
    #inquiriesEnd{
        padding: 10px 0 80px;
    }
    #inquiriesEnd h2.ttl{
        margin: 0 0 20px;
        color: #1a1a1a;
        font-size: 20px;
        font-weight: bold;
        text-align: center;
    }
    #inquiriesEnd h3.ttl{
        padding: 0 0 40px 0;
        font-size: 16px;
        background-size: 24px;
        letter-spacing: 0.1em;
        text-align: center;
    }
    #inquiriesEnd .box{
        padding: 30px 2vw 30px;
        margin: 0 0 50px;
        background: #f2f2f2;  
    }

}
@media screen and (min-width: 768px) {
    #inquiriesEnd{
        padding: 10px 0 80px;
    }
    #inquiriesEnd h2.ttl{
        margin: 0 0 20px;
        color: #1a1a1a;
        font-size: 30px;
        font-weight: bold;
        text-align: center;
    }
    #inquiriesEnd h3.ttl{
        padding: 0 0 40px 0;
        font-size: 16px;
        background-size: 24px;
        letter-spacing: 0.1em;
        text-align: center;
    }
    #inquiriesEnd .box{
        padding: 20px 80px 35px;
        margin: 0 0 40px;
        background: #f2f2f2;  
        font-size: 16px;
    }

}