@charset "UTF-8";

body{
    font-family: 'Inter', sans-serif;
}

main {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    color: #231815;
    text-align: center;
    line-height: 1.5;
}


/* container */
.container {
    max-width: 1100px;
    padding: 32px 0 0;
    margin: 0 auto;
}
.container-w {
    width: 100%;
    padding: 120px 0 0;
    margin: 0 auto;
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .container {
        max-width: 980px;
    }
    .container-w {
        width: 100%;
    }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .container,
    .container-w {
        padding: 60px 24px 0;
    }
}
@media screen and (max-width: 767px) {
    .container,
    .container-w {
        padding: 30px 16px 0;
    }
}


/* fv */
#fv {
    width: 100%;
    .fv-image {
        max-width: 1280px;
        margin: 0 auto;
    }
}
@media screen and (min-width: 561px) and (max-width: 1280px) {
    #fv {
        width: 100%;
        .fv-image {
            max-width: 80%;
            margin: 0 auto;
        }
    }
}
@media screen and (max-width: 560px) {
    #fv {
        width: 100%;
        .fv-image {
            max-width: 100%;
            margin: 0 auto;
        }
    }
}


/* content */
.form_section {
    .container {
        margin-bottom: 80px;
    }
    .bl_lead {
        margin: 0 auto 60px;
        text-align: left;
        font-size: clamp(1.125rem, 1.061rem + 0.26vw, 1.375rem);
    }
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
    .form_section {
        .bl_lead {
            margin: 0 auto 60px;
            text-align: left;
            font-size: clamp(1rem, 0.968rem + 0.13vw, 1.125rem);
        }
    }
}
@media screen and (max-width: 1024px) {
    .form_section {
        .bl_lead {
            margin: 0 auto 60px;
            text-align: left;
            font-size: clamp(1rem, 0.968rem + 0.13vw, 1.125rem);
        }
    }
}

/* form */
.ly_form_wrap {
    .ly_form {
        .form_content {
            width: 100%;
            margin: 0 auto;
        }
    }
}


.ly_form_wrap .bl_error {
    padding: 1rem;
    margin: 0 auto 40px;
    background: #fffef1;
    border: 1px dotted #231815;
    text-align: left;
    font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
    .el_error_list {
        color: #ff1600;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
    }
}
.el_error_list {
    color: #ff1600;
    font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
}
@media screen and (max-width: 1280px) {
    .ly_form_wrap .bl_error {
        padding: 1rem;
        margin: 0 auto 40px;
        background: #fffef1;
        border: 1px dotted #231815;
        text-align: left;
        font-size: clamp(0.875rem, 0.843rem + 0.13vw, 1rem);
        .el_error_list {
            color: #ff1600;
            font-size: clamp(0.875rem, 0.843rem + 0.13vw, 1rem);
        }
    }
    .el_error_list {
        color: #ff1600;
        font-size: clamp(0.875rem, 0.843rem + 0.13vw, 1rem);
        text-align: left;
    }
}

/* form */
.bl_formList {
    display: grid;
    grid-template-columns: minmax(300px, 360px) minmax(500px, 600px);
    gap: 8px;
    justify-content: center;
    align-items: center;
    justify-items: start;
    max-width: 970px;
    margin: 0 auto 24px;
    font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
    .bl_form_ttl {
        font-weight: bold;
    }
    .el_label {
        padding: 2px 4px;
        margin: 0 auto 0 1rem;
        background: #FF5900;
        font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
        color: #fff;
    }
    .el_label.any {
        background: #16508A;
    }

    .bl_form_cont {
        width: 100%;
        text-align: left;
    }
    .bl_form_cont input,
    .bl_form_cont textarea {
        display: inline-block;
        width: 100%;
        height: 58px;
        padding: 0 1rem;
        background: #FFEFE6;
        border: 1px solid #231815;
    }
    .bl_form_cont input:focus {
        background: #fff;
    }

    .bl_form_cont.grid {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 16px;
        justify-content: flex-start;
        align-items: center;
    }
    .bl_form_cont.grid .bl_form_cont_item label {
        display: flex;
        flex-direction: row;
        gap: 2px;
        justify-content: center;
        align-items: center;
        font-size: clamp(1.125rem, 1.061rem + 0.26vw, 1.375rem);
    }
    .bl_form_cont.grid .bl_form_cont_item input.ordercat {
        width: 30px;
        height: 30px;
        border-radius: 5px;
    }

    .bl_form_cont textarea {
        display: inline-block;
        width: 100%;
        height: 200px;
        padding: 1rem;
        background: #FFEFE6;
        border: 1px solid #231815;
    }
    .bl_form_cont textarea:focus {
        background: #fff;
    }

    .hp_txt_small {
        font-size: 1rem;
        color: #908B89;
        text-align: left;
    }
}
.bl_agree {
    display: grid;
    grid-template-columns: auto auto;
    gap: 16px;
    justify-content: center;
    align-items: center;
    margin: 0 auto 40px;
    font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
    font-weight: bold;
    .el_label {
        display: inline-block;
        padding: 2px 4px;
        margin: 0 auto 0 1rem;
        background: #FF5900;
        font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
        color: #fff;
    }
    .ly_inner {
        display: flex;
        flex-direction: row;
        gap: 4px;
        justify-content: center;
        align-items: center;
    }
    .el_agree_checkbox {
        width: 30px;
        height: 30px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .bl_formList {
        display: grid;
        grid-template-columns: 250px 450px;
        gap: 8px;
        justify-content: center;
        align-items: center;
        justify-items: start;
        max-width: 700px;
        margin: 0 auto 80px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        .bl_form_ttl {
            font-weight: bold;
        }
        .el_label {
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .el_label.any {
            background: #16508A;
        }

        .bl_form_cont {
            width: 100%;
            text-align: left;
        }
        .bl_form_cont input,
        .bl_form_cont textarea {
            display: inline-block;
            width: 100%;
            height: 58px;
            padding: 0 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont input:focus {
            background: #fff;
        }

        .bl_form_cont.grid {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            gap: 24px 32px;
            justify-content: flex-start;
            align-items: center;
        }
        .bl_form_cont.grid .bl_form_cont_item label {
            display: flex;
            flex-direction: row;
            gap: 2px;
            justify-content: center;
            align-items: center;
            font-size: clamp(1.125rem, 1.061rem + 0.26vw, 1.375rem);
        }
        .bl_form_cont.grid .bl_form_cont_item input.ordercat {
            width: 30px;
            height: 30px;
            border-radius: 5px;
        }

        .bl_form_cont textarea {
            display: inline-block;
            width: 100%;
            height: 200px;
            padding: 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont textarea:focus {
            background: #fff;
        }

        .hp_txt_small {
            font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
            color: #908B89;
            text-align: left;
        }
    }
    .bl_agree {
        display: grid;
        grid-template-columns: auto auto;
        gap: 16px;
        justify-content: center;
        align-items: center;
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        font-weight: bold;
        .el_label {
            display: inline-block;
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .ly_inner {
            display: flex;
            flex-direction: row;
            gap: 4px;
            justify-content: center;
            align-items: center;
        }
        .el_agree_checkbox {
            width: 30px;
            height: 30px;
        }
    }
}
@media screen and (min-width: 321px) and (max-width: 767px) {
    .bl_formList {
        display: grid;
        grid-template-columns: none;
        grid-template-rows: auto auto;
        gap: 8px;
        justify-content: start;
        align-items: center;
        justify-items: start;
        max-width: 320px;
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        text-align: left;
        .bl_form_ttl {
            font-weight: bold;
        }
        .el_label {
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .el_label.any {
            background: #16508A;
        }

        .bl_form_cont {
            width: 100%;
            text-align: left;
        }
        .bl_form_cont input,
        .bl_form_cont textarea {
            display: inline-block;
            width: 320px;
            height: 58px;
            padding: 0 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont input:focus {
            background: #fff;
        }

        .bl_form_cont.grid {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            gap: 24px;
            justify-content: flex-start;
            align-items: center;
            width: 320px;
        }
        .bl_form_cont.grid .bl_form_cont_item label {
            display: flex;
            flex-direction: row;
            gap: 2px;
            justify-content: center;
            align-items: center;
            font-size: clamp(1.125rem, 1.061rem + 0.26vw, 1.375rem);
        }
        .bl_form_cont.grid .bl_form_cont_item input.ordercat {
            width: 30px;
            height: 30px;
            border-radius: 5px;
        }

        .bl_form_cont textarea {
            display: inline-block;
            width: 100%;
            height: 200px;
            padding: 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont textarea:focus {
            background: #fff;
        }

        .hp_txt_small {
            font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
            color: #908B89;
            text-align: left;
        }
    }
    .bl_agree {
        display: grid;
        grid-template-columns: auto auto;
        gap: 8px;
        justify-content: center;
        align-items: center;
        width: 320px;
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        font-weight: bold;
        .el_label {
            display: inline-block;
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .ly_inner {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 4px;
            justify-content: center;
            align-items: center;
            text-align: left;
        }
        .el_agree_checkbox {
            width: 30px;
            height: 30px;
        }
    }
}
@media screen and (max-width: 320px) {
    .bl_formList {
        display: grid;
        grid-template-columns: none;
        grid-template-rows: auto auto;
        gap: 8px;
        justify-content: start;
        align-items: center;
        justify-items: start;
        max-width: 280px;
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        text-align: left;
        .bl_form_ttl {
            font-weight: bold;
        }
        .el_label {
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .el_label.any {
            background: #16508A;
        }

        .bl_form_cont {
            width: 100%;
            text-align: left;
        }
        .bl_form_cont input,
        .bl_form_cont textarea {
            display: inline-block;
            width: 280px;
            height: 58px;
            padding: 0 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont input:focus {
            background: #fff;
        }

        .bl_form_cont.grid {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            gap: 24px;
            justify-content: flex-start;
            align-items: center;
            width: 280px;
        }
        .bl_form_cont.grid .bl_form_cont_item label {
            display: flex;
            flex-direction: row;
            gap: 2px;
            justify-content: center;
            align-items: center;
            font-size: clamp(1.125rem, 1.061rem + 0.26vw, 1.375rem);
        }
        .bl_form_cont.grid .bl_form_cont_item input.ordercat {
            width: 30px;
            height: 30px;
            border-radius: 5px;
        }

        .bl_form_cont textarea {
            display: inline-block;
            width: 100%;
            height: 200px;
            padding: 1rem;
            background: #FFEFE6;
            border: 1px solid #231815;
        }
        .bl_form_cont textarea:focus {
            background: #fff;
        }

        .hp_txt_small {
            font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
            color: #908B89;
            text-align: left;
        }
    }
    .bl_agree {
        display: grid;
        grid-template-columns: auto auto;
        gap: 8px;
        justify-content: center;
        align-items: center;
        width: 280px;
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        font-weight: bold;
        .el_label {
            display: inline-block;
            padding: 2px 4px;
            margin: 0 auto 0 1rem;
            background: #FF5900;
            font-size: clamp(0.875rem, 0.811rem + 0.26vw, 1.125rem);
            color: #fff;
        }
        .ly_inner {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 4px;
            justify-content: center;
            align-items: center;
            text-align: left;
        }
        .el_agree_checkbox {
            width: 24px;
            height: 24px;
        }
    }
}

/* submit button */
.ly_submit {
    .bl_submit {
        width: 100%;
        margin: 0 auto 40px;
        input.el_submit {
            display: inline-block;
            width: 340px;
            height: 80px;
            aspect-ratio: 340 / 80;
            background: #FF5900;
            border: none;
            font-size: clamp(1.25rem, 1.154rem + 0.39vw, 1.625rem);
            font-weight: bold;
            color: #fff;
            cursor: pointer;
            &:hover {
                opacity: .7;
            }
        }
        input.el_submit.js-disabled {
            background: #908B89;
            border: none;
        }
        &.bl_submit__back {
            a, a:link {
                display: flex;
                flex-direction: row;
                gap: 0;
                justify-content: center;
                align-items: center;
                width: 200px;
                height: 50px;
                margin: 0 auto;
                border: 2px solid #FF5900;
                font-size: clamp(1.25rem, 1.154rem + 0.39vw, 1.625rem);
                font-weight: bold;
                color: #FF5900;
                text-decoration: none !important;
            }
            a:hover {
                opacity: .7;
            }
        }
    }
}
@media screen and (max-width: 320px) {
    .ly_submit {
        .bl_submit {
            width: 100%;
            margin: 0 auto 40px;
            input.el_submit {
                display: inline-block;
                width: 280px;
                aspect-ratio: 340 / 80;
                background: #FF5900;
                border: none;
                font-size: clamp(1.25rem, 1.154rem + 0.39vw, 1.625rem);
                font-weight: bold;
                color: #fff;
                cursor: pointer;
                &:hover {
                    opacity: .7;
                }
            }
            input.el_submit.js-disabled {
                background: #908B89;
                border: none;
            }
            &.bl_submit__back {
                a, a:link {
                    display: flex;
                    flex-direction: row;
                    gap: 0;
                    justify-content: center;
                    align-items: center;
                    width: 200px;
                    height: 50px;
                    margin: 0 auto;
                    border: 2px solid #FF5900;
                    font-size: clamp(1.25rem, 1.154rem + 0.39vw, 1.625rem);
                    font-weight: bold;
                    color: #FF5900;
                    text-decoration: none !important;
                }
                a:hover {
                    opacity: .7;
                }
            }
        }
    }
}

/* thanks error */
.form_thanks_section,
.form_error_section {
    max-width: 1280px;
    margin: 0 auto;
    text-align: left;
    .index,
    .ly_btnTop {
        margin: 0 auto 60px;
    }
    .ly_thanksLead {
        margin: 0 auto 40px;
        font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
        .bl_cautionLeadBox {
            padding: 1.5rem 1rem;
            border: 1px solid #231815;
        }
        .caution::before {
            content: "※";
            display: inline-block;
            width: 1rem;
        }
    }
    .ly_btnTop {
        display: flex;
        justify-content: center;
        align-items: center;
        a,a:link {
            display: flex;
            flex-direction: row;
            gap: 24px;
            justify-content: center;
            align-items: center;
            width: 300px;
            aspect-ratio: 340 / 80;
            background: #231815;
            font-size: clamp(1rem, 0.904rem + 0.39vw, 1.375rem);
            font-weight: bold;
            color: #fff;
            text-decoration: none;
        }
        a:hover {
            opacity: .7;
        }
        a::after {
            content: "";
            display: block;
            width: 11px;
            aspect-ratio: 7 /12;
            background: url(../../asset/images/button_arrow.svg) 0 0 /contain no-repeat;
        }
    }
}

/* confirm */
.form_section.confirm {
    textarea { white-space: pre-wrap; }
}