#page_header, #dp-footer-bar, #side_menu_button, #side_menu_content{
    display: none;
}

.contact-form{
    width: 1100px;
    padding-top: 128px;
    margin: 0 auto;
}

.wpcf7{
    background: none;
    border: none;
}

.wpcf7 p{ margin-bottom: 0; }

h1{
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
    color: #46301C;
    margin-bottom: 40px;
}

form table{ border-collapse: separate; border-spacing: 16px 32px; table-layout: fixed; width: 856px; margin: 0 auto 64px; }

form th,form td{ display: table-cell; }

form th{ width: 288px; vertical-align: top; }

form th p{ margin-top: 7px; font-weight: 600; text-align: left; }

form th strong,form th span{ margin-left: 4px; font-size: 0.8em; }
form th strong{ color: #e30000; }

.wpcf7 form td p{ width: 560px; margin-bottom: 0; }

.wpcf7 form .select td p{ width: fit-content; }

.wpcf7 form td > p{ font-size: 15px; line-height: 1.6; }

form td span>input,
form td span>textarea,
form td span>select {
    border-radius: 0;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid #46301C;
    width: 560px;
    padding: 4px 6px;
    background: transparent;
}

form .select td span::after {
    content: '';
    width: 12px;
    height: 10px;
    position: absolute;
    top: 10px;
    right: 12px;
    background: linear-gradient(to bottom left, #46301C 50%, transparent 50%) top left / 50% 100% no-repeat, linear-gradient(to bottom right, #46301C 50%, transparent 50%) top right / 50% 100% no-repeat;
    z-index: -10;
}

.wpcf7 select,.wpcf7 .wpcf7-date{ width: 272px; max-width: unset; }

input[type="checkbox"] {
    display: none;
}

.wpcf7 .wpcf7-list-item{ display: inline-block; margin-left: 16px; }

.wpcf7 .wpcf7-list-item-label {
    display: inline-block;
    height: 20px;
    padding-left: 2px;
    font-size: 16px;
    line-height: 20px;
    position: relative;
}

.check .wpcf7-list-item-label { padding-left: 32px; }

.check .wpcf7-list-item-label::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border: 2px solid #46301C;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    box-sizing: border-box;
}

.wpcf7 select{
    padding-right: 32px;
}

input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    content: "";
    display: block;
    width: 10px;
    height: 8px;
    border-top: 3px solid #46301C;
    border-right: 3px solid #46301C;
    transform: rotate(135deg);
    position: absolute;
    left: 4px;
    top: 2px;
}

form .number input{ width: 80px; }

form .number span:first-child input{ margin-right: 4px; }
form .number span:last-child input{ width: 160px; }

.wpcf7-list-item:first-child{ margin-left: 0; }

form td a{ text-decoration: underline; position: relative; }

form td a::after{ 
    content: '';
    background: url(../img/external.svg);
    width: 12px;
    height: 12px;
    position: absolute;
    bottom: 3px;
    right: -14px; 
}

.contact form tr:last-child td p:first-child{ font-size: 14px; }
form .check td p:last-child,form .media td p:last-child{ margin-top: 8px; }

.opportunity td .wpcf7-list-item:last-child{ margin: 8px 0 0; }

.opportunity td .wpcf7-list-item:last-child.has-free-text{ display: flex; align-items: center; } 

.opportunity td .wpcf7-list-item:last-child.has-free-text input:last-child{ width: 86%; margin-left: 7px; } 

.other textarea{ resize: vertical; height: 200px; width: 100%; margin-top: 8px; }

.btn p{ display: flex; justify-content: center; gap: 80px; }

.btn .wpcf7-submit,.btn .wpcf7-previous,.complete .wp-block-button a{
    display: block;
    width: 320px;
    height: unset;
    padding: 16px 0;
    margin: 0 0 80px;
    border-radius: 9999px;
    text-align: center;
    cursor: pointer;
    transition: all .3s ease-in-out;
    font-weight: 600;
}

.complete .wp-block-button a,.btn .wpcf7-submit{
    border: 2px solid #fff!important;
    background: #46301C;
    color: #fff;
}

.complete .wp-block-button a,.btn .wpcf7-submit:hover{
    background: #fff;
    color: #46301C;
    border: 2px solid #46301C!important;
}

.wpcf7-spinner,section.contact{ display: none; }

.wpcf7 form .wpcf7-response-output{ border: none; }

form .confirm table{ width: 640px; }

.confirm .btn input:nth-child(2){
    margin-left: 32px;
}

.confirm .btn input:first-child{ background: #a9a9a9; }

.confirm .btn input:first-child:hover{ border-color: #a9a9a9; opacity: 0.8; } 

.complete#main_contents{ min-height: 53svh; padding-top: 160px; }

.complete h1{ margin-bottom: 32px; }

.complete .is-layout-flex{
    justify-content: center;
}

.complete p{ text-align: center; }

#container #return_top,#line_banner{ display: none; }

.complete footer{ position: fixed; bottom: 0; }


@media screen and (max-width:979px) {

    .contact-form{ width: 92%; margin: 0 4%; padding-top: 26.133vw; }

    h1{ margin-bottom: 40px; font-size: 24px; }

    .wpcf7 form{ margin: 0; }

    form table,form .confirm table{ width: 100%; margin-bottom: 32px; border-spacing: 0; }

    table tr{ display: flex; flex-direction: column; }

    form th,.wpcf7 form td p{ width: 100%; }

    form td{ margin: 12px 0 24px; }

    .wpcf7 form .opportunity td p{ display: flex; flex-wrap: wrap; line-height: 2; }

    .opportunity .wpcf7-list-item:nth-child(2){ min-width: 144px; }

    .wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input,.opportunity .wpcf7-list-item:nth-child(3){ margin-left: 0; }

    .opportunity td .wpcf7-list-item:last-child.has-free-text input:last-child{ padding: 2px; width: 78%; margin-left: 2.667vw; }

    .btn p{ flex-direction: column; gap: 0; align-items: center; }

    .btn .wpcf7-submit{ margin-bottom: 0; }
    .btn .wpcf7-previous{ margin-bottom: 32px; }

    .complete#main_contents{ padding-top: 25.6vw; min-height: 72svh; }

}