picture.fv img {
    width: 100%;
}

/* #formWrap {
    height: 180px;
} */

/* #formWrap {
    background-color: #a0b0d8;
    padding: 24px 5%;
} */

#formWrap .whiteForm {
    background-color: #fff;
    /* border-radius: 12px; */
    padding: 24px;
    margin-bottom: 24px;
}

#formWrap h3,
.term_agree_text {
    color: black;
}

#formWrap input,
textarea {
    width: 100%;
    margin: auto;
}

#formWrap input[type="date"],
#formWrap input[type="number"],
#formWrap textarea {
    background: #fff;
    border: 1px solid #D2D2D3;
    border-radius: 12px;
    width: 90% !important;
}


#formWrap textarea {
    height: 150px;
}

.select-flex {
    display: flex;
    justify-content: space-between;
}

/*
-----------------------------
exepart.css
-----------------------------
*/
.terms {
    margin-top: 20px;
}

.contact_iframe {
    margin-top: 25px;
    height: 150px;
    margin-bottom: 0px;
}

.term_area {
    width: 100%;
    border-radius: 12px;
}

.term_box {
    /* font-family: Verdana, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; */
    background: #fff;
    font-size: 12px;
    width: 100%;
    padding: 14px;
    overflow-y: scroll;
    height: 180px;
    border-radius: 12px;
    border: 1px solid #D2D2D3;
}

.term_box p {
    margin: 10px 0;
    line-height: 1.5;
}

.term_agree_text {
    font-size: 18px;
    color: black;
    margin: 18px 0;
}

.term_content {
    margin: auto;
    margin: 5px 0 50px;
    width: 100%;
    text-align: left;
    font-size: 16px;
}

.term_check_box {
    width: 4% !important;
    text-align: left;
}

.term_check_box+span {
    font-size: 16px;
}

.term {
    margin-top: 40px;
    margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
    .contact_iframe p {
        font-size: 14px;
        margin-bottom: 0;
    }

    .term_box {
        /* width: 92%; */
        width: 100%;
        font-size: 12px;
        padding: 4%;
    }

    .contact_iframe {
        height: 200px;
        margin-bottom: 25px;
    }

    .term_content {
        margin: 0;
        font-size: 16px;
    }

    .term_agree_text {
        font-size: 15px;
    }
}

#formWrap div.btn_submit {
    margin: 0 auto;
}

.exepart_thanks p {
    font-size: 16px;
}

#formWrap input[type="text"].com_post {
    margin-top: 10px
}

span.wpcf7-spinner {
    display: none;
}

.btn_submit:has(input[disabled]) {
    filter: grayscale(100%);
    opacity: 0.6;
    transition: all 0.3s;
}

#formWrap div.btn_submit input[disabled] {
    cursor: not-allowed;
}

/* exepart02 */
/* step共通　バー */
.progressbar {
    position: relative;
    width: 100%;
    max-width: 600px;
    height: 10px;
    margin: 24spx auto;

}

/* 背景の長いバー */
.progressbar::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #1d2653;
    /* 紺色 */
    transform: translateY(-50%);
    z-index: 0;
}

/* ドット部分 */
ul.progressbar li {
    position: relative;
    width: 14px;
    height: 14px;
    background-color: #1d2653;
    /* 紺色 */
    border-radius: 50%;
    z-index: 1;
    /* ←バーより前面に表示 */
}

.progressbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

ul.progressbar li.active {
    background-color: #f15a24;
    /* オレンジ */
}

/* h2, h3 */
.whiteForm h2 {
    color: #262957;
    font-size: 20px;
    text-align: center;
    padding-bottom: 32px;
}

.whiteForm h2 span {
    font-size: 28px;
}

.whiteForm h3 {
    color: #676666;
    font-size: 20px;
    text-align: center;
}

/* step1 */
#step1 .wpcf7-radio {
    /* display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); */
    gap: 16px 12px;
    font-size: 16px;
    font-family: serif;
    color: #454f75;
    font-weight: 700;
    display: flex;
    flex-wrap: wrap;
}

#step1 .wpcf7-list-item {
    margin: 0;
    width: 48%;
}

#step1 .wpcf7-list-item label {
    display: block;
}

#step1 .wpcf7-list-item input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

#step1 .wpcf7-list-item .wpcf7-list-item-label {
    display: block;
    width: 100%;
    padding: 8px;
    padding: 12px 10px;
    text-align: center;
    border: 1.5px solid #454f75;
    border-radius: 12px;
    background: #fff;
    color: #454f75;
    transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
    user-select: none;
    font-size: 14px;
}

#step1 .wpcf7-list-item label:hover .wpcf7-list-item-label {
    border-color: #ff7a00;
    box-shadow: 0 0 0 2px rgba(255, 122, 0, .12) inset;
}

#step1 .wpcf7-list-item input[type="radio"]:focus-visible+.wpcf7-list-item-label {
    outline: 3px solid rgba(255, 122, 0, .45);
    outline-offset: 2px;
}

#step1 .wpcf7-list-item input[type="radio"]:checked+.wpcf7-list-item-label {
    background: #ff7a00;
    color: #fff;
    border-color: #ff7a00;
    box-shadow: none;
}

@media (max-width: 640px) {
    #step1 .wpcf7-radio {
        grid-template-columns: 1fr;
    }
}

/* step4 */
#step4 .birth-select-wrap {
    display: flex;
}

#step4 .birth-select-wrap p {
    display: flex;
}

#step4 .birth-select-wrap .birth-year {
    width: 38%;
}

#step4 .birth-select-wrap .birth-month,
#step4 .birth-select-wrap .birth-day {
    width: 28%;
}

/* btn */
/* ステップの表示/非表示 */
.whiteForm>section {
    display: none;
}

.whiteForm>section.is-current {
    display: block;
}

.step-nav {
    margin-top: 48px;
}

.step-nav>p {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10%;
}

.btn-next,
.btn-back,
.cta-submit {
    /* max-width: 100px; */
    width: 90%;
    margin: auto;
}

@media screen and (max-width: 469px) {

    .btn-next,
    .btn-back,
    .cta-submit {
        /* max-width: 100px; */
        width: 40%;
    }

    #step1 .btn-next {
        width: 80%;
        margin: auto;
    }
}

.btn-back:disabled,
.send_text:disabled {
    filter: grayscale(1) brightness(.9);
    cursor: not-allowed;
}

.is-error {
    outline: 2px solid rgba(224, 49, 49, .35);
    outline-offset: 2px;
}

.wpcf7-step-error {
    display: block;
    color: #e03131;
    font-size: 13px;
    margin-top: 6px;
}

/* step5 */
.confirm .h3-ttl {
    font-weight: 700;
    color: #666666;
    font-size: 15px;
}

.confirm dl {
    display: grid;
    grid-template-columns: 15em 1fr;
    gap: .5rem 1rem;
    margin: 0 0 1.5rem;
}

.confirm dt {
    font-weight: 600;
    color: #666666;
    font-size: 14px;
}

.confirm dd {
    margin: 0;
    color: #666666;
    font-size: 14px;
}

.is-error {
    outline: 2px solid rgba(224, 49, 49, .35);
    outline-offset: 2px;
}

.wpcf7-step-error {
    display: block;
    color: #e03131;
    font-size: 13px;
    margin-top: 6px;
}

.cf7-hidden-submit {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    background-image: url(./img/exepart02/cta.webp);
    background-position: center;
    background-size: contain;
    width: 48%;
    background-repeat: no-repeat;
}

.cta-submit[disabled] {
    opacity: .5;
    pointer-events: none;
}

input.wpcf7-submit.cf7-hidden-submit {
    opacity: 0 !important;
    position: absolute !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

#step5 #cf7submit,
#step6 #cf7submit {
    display: none !important;
}