@charset "utf-8";

/* placeholderの色指定 */
::placeholder{
    color: rgba(34, 34, 34, 0.4);
}
.txtError {
    color: var(--formRedColor);
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_18);
    background: url(../img/common/iconError.png) 0 0.2rem / 1.4rem auto no-repeat;
    padding: 0 0 0 1.7rem;
    margin-top: 0.8rem;
}

/* フォーム */
.secContact#formTop{
    position: relative;
    padding: 0;
    margin-top: 5rem;
}
@media only screen and (max-width:1215px){
    .secContact#formTop{
        padding: 0;
        margin-top: 5rem;
        background: none;
    }
    .secContact.co#formTop{
        margin-top: 0;
    }
    .secContact:not(.ok) .contactTop{
        position: static;
        padding: 0;
    }
    .secFormTable{
        padding-top: 0;
    }
}

.secContact{
    margin-top: 5rem;
    padding: 0;
}
.secContact .contactTop{
    position: relative;
}
.secContact .icon{
    text-align: center;
}
.secContact .tit{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_100);
    color: var(--keyColor);
    font-weight: bold;
    text-align: center;
    margin-top: 1.5rem;
}
.secContact.co .tit{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_100);
}
.secContact .formTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_36);
    letter-spacing: var(--pcLetterSpacing14_100);
    text-align: center;
    margin-top: 2.9rem;
}
.secContact .formTxt .txtRed{
    color: var(--formRedColor);
}
.secContact .tabBox{
    display: flex;
    justify-content: center;
    margin: 3.1rem auto 0;
    position: relative;
}
.secContact .tabBox::before{
    content: "";
    width: 23rem;
    height: 0.1rem;
    background: var(--keyColor);
    position: absolute;
    top: 4rem;
    left: 50%;
    transform: translateX(-50%);
}
.secContact .tab{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5.2rem;
}
.secContact .tab .txtStep{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_100);
    position: relative;
}
.secContact .tab .txtStep::before{
    content: "";
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 0.1rem solid var(--textColor);
    background: var(--whiteColor);
    position: absolute;
    top: 3rem;
    left: 50%;
    transform: translateX(-50%);
}
.secContact .tab .txtInner{
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_100);
    font-weight: bold;
}
.secContact .tab:nth-child(2){
    margin: 0 6.5rem;
}
.secContact .tab.active  .txtStep{
    color: var(--keyColor);
}
.secContact .tab.active .txtStep::before{
    border: 0.1rem solid var(--keyColor);
    background: var(--keyColor);
}
.secContact .tab.active .txtInner{
    color: var(--keyColor);
}
.secContact .txtForm{
    width: 100rem;
    height: 4rem;
    background: var(--formRedColor);
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_150);
    color: var(--whiteColor);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5rem auto 0;
}
@media only screen and (max-width:1215px){
    .secContact{
        margin-top: 2.5rem;
    }
    .secContact .boxFlexSp{
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1rem;
    }
    .secContact .boxFlexSp .icon{
        width: 3rem;
    }
    .secContact .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_100);
        margin-top: 0;
    }
    .secContact.co .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_100);
    }
    .secContact .formTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_28);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.7rem;
    }
    .secContact .tabBox{
        margin: 3.3rem auto 0;
    }
    .secContact .tabBox::before{
        width: 23rem;
        top: 4rem;
    }
    .secContact .tab{
        gap: 5.2rem;
    }
    .secContact .tab .txtStep{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
    }
    .secContact .tab .txtStep::before{
        width: 2rem;
        height: 2rem;
        top: 3rem;
    }
    .secContact .tab .txtInner{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_100);
    }
    .secContact .tab:nth-child(2){
        margin: 0 6.5rem;
    }
    .secContact .txtForm{
        width: 100%;
        height: 9rem;
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_20);
        letter-spacing: var(--spLetterSpacing13_50);
        margin: 3rem auto 0;
        border-bottom: 0.1rem solid var(--selectColo);
    }
}

form{
    padding: 1rem 8rem 10rem;
    border-radius: 2rem;
    box-shadow: 0 0 0.8rem 0 rgba(0, 0, 0, 0.1);
    margin-top: 10rem;
}
.formSend{
    padding: 0;
}
.secFormTable table{
    width: 116rem;
    margin: 0 auto;
    display: block;
}
.secFormTable tbody{
    display: block;
}
.secFormTable tr{
    display: flex;
    width: 100%;
    background:
    linear-gradient(to right, var(--selectColor), var(--selectColor))
    left bottom / 100% 0.1rem no-repeat;
}
.secFormTable tr th{
    width: 25.7rem;
    display: flex;
    padding-top: 4.8rem;
    letter-spacing: var(--pcLetterSpacing15_100);
    line-height: var(--pcLineHeight15_28);
}
.secFormTable .radio{
    padding-top: 2.5rem;
}
.secFormTable .mustTit{
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_50);
    font-weight: bold;
    margin-top: -0.3rem;
}
.isDesktopIpad .secFormTable .mustTit{
    font-size: var(--pcFontSize13);
    letter-spacing: 0;
}
.secFormTable tr td{
    font-size: var(--pcFontSize17);
    min-height: 6rem;
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing17_50);
    width: 90.3rem;
    padding: 3rem 0 3.2rem;
    vertical-align: top;
    position: relative;
}
.secFormTable .second{
    padding: 2.8rem 0 3.1rem;
}
.secFormTable .small{
    padding: 2.7rem 0 0;
}
.secFormTable .must{
    width: 4.6rem;
    height: 2.4rem;
    border: 0.1rem solid var(--mustColor);
    color: var(--mustColor);
    font-size: var(--pcFontSize11);
    font-weight: bold;
    text-align: center;
    padding-top: 0.6rem;
    margin-right: 1.4rem;
    letter-spacing: 0;
    line-height: 1;
    flex-shrink: 0;
}
.isDesktopIpad .secFormTable .must{
    padding-top: 0.3rem;
}
.secFormTable .nomust{
    width: 46px;
    height: 24px;
    border: 1px solid var(--nomustColor);
    color: var(--nomustColor);
    font-size: var(--pcFontSize11);
    font-weight: bold;
    text-align: center;
    padding-top: 0.6rem;
    margin-right: 1.4rem;
    line-height: 1;
    letter-spacing: 0;
    flex-shrink: 0;
}
.isDesktopIpad .secFormTable .nomust{
    padding-top: 0.3rem;
}
.secFormTable .oldBox{
    margin-left: 1.5rem;
    margin-right: 1rem;
}
.secFormTable .oldTxt{
    font-size: var(--pcFontSize17);
    font-weight: 500;
}
.secFormTable .formSubTxt{
    width: 116rem;
    margin: 3rem auto 0;
    padding: 3.2rem 4.2rem 3.4rem;
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_26);
    color: var(--textColor);
    background: var(--ColorGray2);
}
/* .secFormTable .btnForm{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-decoration: none;
    margin: 4rem auto 0;
    width: 48rem;
    height: 8.6rem;
    border-radius: 0.4rem;
    background: var(--keyColor);
    font-size: var(--pcFontSize17);
    font-weight: bold;
    color: var(--whiteColor);
    letter-spacing: 0.3rem;
    transition: opacity 0.2s ease-out;
    cursor: pointer;
} */
/* .secFormTable .btnForm:hover{
    opacity: 0.8;
} */
.secFormTable .btnForm input{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    opacity: 0;
    padding: 0;
    margin: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    font-size: 0;
    background: inherit;
    border: none;
}
/* .secFormTable .btnForm::after{
    position: absolute;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    border-top: 0.2rem solid var(--whiteColor);
    border-right: 0.2rem solid var(--whiteColor);
    transform: rotate(45deg);
    top: calc(50% - 0.4rem);
    right: 3.2rem;
} */

.secFormTable tr.hide{
    display: none;
}
.secForm td .flexbox{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.secForm td .flexbox.bot{
    margin-top: 1rem;
}
.secForm td .days{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.secForm td .flexbox .time{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    padding-left: 3.8rem;
    font-size: var(--pcFontSize15);
}
.secForm .ml10{
    margin-left: 1rem;
}
.secForm td .boxAddress{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    margin-bottom: 1.2rem;
}
.secForm td .boxAddress .mr7{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_46);  
    margin-right: 1.3rem;
}
.secForm td .boxAddress .iconZip{
    font-size: var(--pcFontSize15);
    font-weight: normal;
    margin-right: 0.9rem;
}
.secForm td .boxAddress .zipbtn{
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_22);
    padding: 0.9rem 0;
    color: var(--whiteColor);
    text-decoration: none;
    background: var(--textColor);
    text-align: center;
    display: block;
    width: 13rem;
    border-radius: 3rem;
    margin-left: 1.5rem;
    cursor: pointer;
    transition: opacity 0.2s ease-out;
}
.secForm td .boxAddress .zipbtn:hover{
    opacity: 0.8;
}
.secForm td .boxFlexBottom{
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.9rem;
}
.secForm td .boxFlexBottom .txtBottom{
    font-size: var(--pcFontSize15);
    text-wrap: nowrap;
}
.secFormTable .privacy{
    display: inline-block;
    color: var(--privacyColor);
    text-decoration: none;
    padding-bottom: 0.5rem;
    border-bottom: 0.1rem solid var(--privacyColor);
}
.secFormTable .txtTdSub{
    font-size: var(--pcFontSize12);
    font-weight: 500;
    line-height: var(--pcLineHeight12_24);
    margin-top: 1.4rem;
    color: var(--formRedColor);
    margin-bottom: -1.1rem;
}
.secFormTable .txtTdSub.brack{
    color: var(--textColor);
}
.secFormTable .minw500{
    min-width: 50rem;
}
.secFormTable .mw250{
    min-width: 25rem;
}
.secFormTable .boxParticipants{
    display: flex;
    align-items: center;
    gap: 5rem;
}
.secFormTable .itemParticipants{
    display: flex;
    align-items: center;
}
.secFormTable .txtLeft{
    margin-right: 1.7rem;
}
.secFormTable .txtRight{
    margin-left: 1.1rem;
}
.secFormTable .boxContactMethod{
    display: flex;
    align-items: center;
    min-height: 6rem;
    gap: 2.8rem;
}
.secFormTable .itemContactMethod {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
}
.secFormTable .boxContactMethod .txtSub {
    margin-top: 0;
}
.secFormTable .txtSub{
    font-size: var(--pcFontSize11);
    line-height: var(--pcLineHeight11_22);
    letter-spacing: var(--pcLetterSpacing11_50);
    color: var(--formRedColor);
    margin-top: 1.6rem;
}
@media only screen and (max-width: 1215px){
    /* .secFormTable{
        margin-top: 0;
        background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 2px) left bottom / 2px 1px repeat-x;
    } */
    /* .secFormTable table{
        display: block;
        width: 100%;
    } */
    form{
        padding: 0;
        border-radius: 0;
        box-shadow: unset;
        margin-top: 0;
    }
    .secFormTable table {
        width: 100%;
    }
    .secFormTable tbody{
        display: block;
    }
    .secFormTable .boxTable{
        padding-bottom: 5.2rem;
        background: none;
    }
    .secFormTable tr{
        display: block;
        width: 100%;
        margin: 0 auto;
        background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 2px) left bottom / 2px 1px repeat-x;
    }
    .secFormTable tr th{
        width: 100%;
        margin: 0 auto;
        padding-top: 2rem;
        flex-direction: row-reverse;
        justify-content: space-between;
    }
    .secFormTable .small{
        padding: 1.8rem 0 0;
    }
    .secFormTable .radi{
        padding-top: 0;
    }
    .secFormTable .mustTit{
        font-size: var(--spFontSize13);
        letter-spacing: 0;
        margin-top: 0;
    }
    .secFormTable tr td{
        display: block;
        font-size: var(--spFontSize13);
        min-height: 0;
        letter-spacing: var(--spLetterSpacing13_50);
        width: 100%;
        margin: 0 auto;
        padding: 1.3rem 0 2.6rem;
    }
    /* .secFormTable table tr:first-child th{
        padding-top: 1rem;
    } */
    .secFormTable table .boxFlexFirstSp{
        flex-direction: row;
    }
    .secFormTable table tr:first-child td{
        padding-top: 1.4rem;
        padding-bottom: 2rem;
    }
    .secFormTable table tr:last-child td{
        margin-bottom: 0;
    }
    .secFormTable .must{
        margin-right: 0;
    }
    .secFormTable .nomust{
        margin-right: 0;
    }
    .secFormTable .oldBox{
        margin-left: 0.8rem;
        margin-right: 0.8rem;
    }
    .secFormTable .oldTxt{
        font-size: var(--spFontSize13);
    }
    .secFormTable .formSubTxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        margin: 2.5rem auto 0;
        width: 92%;
        padding: 2.3rem 2.2rem 2.2rem;
    }
    .secFormTable .e_txtbox{
        width: 100%;
        margin-top: 1.2rem;
        padding: 1.7rem 2rem;
    }
    .secFormTable .e_txt{
        font-size: var(--spFontSize10);
        font-weight: 400;
        line-height: var(--spLineHeight10_18);
    }
    .secForm td .flexbox{
        display: block;
    }
    .secForm td .flexbox .time{
        padding-left: 0;
        margin-top: 1.5rem;
    }
    .secForm td .boxAddress .iconZip{
        display: none;
    }
    .secForm td .boxAddress .zipbtn{
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_18);
        padding: 0.8rem 0;
        width: 11rem;
        margin-left: 1rem;
    }
    .secForm td .boxAddress{
        margin-bottom: 1rem;
    }
    .secForm td .boxAddress02{
        padding-left: 0;
        margin-top: 1rem;
    }
    .secForm td .boxFlexBottom .boxAddress02{
        margin-top: 0;
    }
    .secForm td .boxFlexBottom {
        margin-top: 1rem;
    }
    .secFormTable .txtTdSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_18);
        margin-top: 1.4rem;
        letter-spacing: 0.08rem;
        margin-bottom: -0.3rem;
    }
    .secFormTable .minw500{
        min-width: 100%;
    }
    .secFormTable .mw250{
        min-width: 24.5rem;
    }
    .secFormTable .timetxt{
        flex-shrink: 0;
        font-size: var(--spFontSize13);
    }
    .secFormTable .boxParticipants{
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    .secFormTable .txtLeft{
        margin-right: 1rem;
    }
    .secFormTable .txtRight{
        margin-left: 1rem;
    }
    .secFormTable .boxContactMethod{
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    .secFormTable .itemContactMethod {
        gap: 1rem;
    }
    .secFormTable .boxContactMethod .txtSub {
        margin-top: 0;
    }
    .secFormTable .txtSub{
        font-size: var(--pcFontSize11);
        line-height: var(--pcLineHeight11_22);
        letter-spacing: var(--pcLetterSpacing11_50);
        color: var(--formRedColor);
        margin-top: 1.6rem;
    }
    .secFormTable .privacy {
        padding-bottom: 0;
    }
}

/* datepicker */
.ui-widget.ui-widget-content{
	z-index: 1000 !important;
}
.secFormTable input[type="text"],
.secFormTable input[type="tel"], 
.secFormTable input[type="email"], 
.secFormTable input[type="password"], 
.secFormTable select{
    background: var(--whiteColor);
    height: 6rem;
    padding-left: 2rem;
    border: 0.1rem solid var(--selectColor);
} 
.secFormTable input[type="text"].inputRequired,
.secFormTable input[type="tel"].inputRequired, 
.secFormTable input[type="email"].inputRequired, 
.secFormTable input[type="password"].inputRequired, 
.secFormTable select.inputRequired{
    background: var(--requiredColor);
}
.secFormTable input[type="text"].noba{
    background: var(--whiteColor);
}
input,
textarea,
select{
    font-size: var(--pcFontSize15);
    font-family: inherit;
    background: var(--whiteColor);
    letter-spacing: var(--pcLetterSpacing15_100);
    line-height: var(--pcLineHeight15_30);
}
.secFormTable textarea{
    padding: 1.4rem 2.2rem;
    border: 0.1rem solid var(--selectColor);
    width: 100%;
}
.secFormTable .item{
    padding-left: 0;
}
.secFormTable input[type="radio"]{
    left: 0;
}
.secFormTable .radioTr th{
    padding-top: 2.8rem;
}
@media only screen and (max-width:1215px){
    input,
    textarea,
    select{
        font-size: var(--pcFontSize16);
        letter-spacing: var(--pcLetterSpacing16_50);
    }
    .secFormTable input[type="text"],
    .secFormTable input[type="tel"], 
    .secFormTable input[type="email"], 
    .secFormTable input[type="password"],
    .secFormTable select, 
    .secFormTable textarea{
        height: 4.8rem;
        padding-left: 1rem;
    }
    .secFormTable textarea{
        width: 100%;
        height: 13.5rem;
        padding: 1rem;
    }
    .secFormTable textarea.h180{
        height: 18rem;
    }
    .secFormTable .spNone{
        display: none;
    }
    .secFormTable select::-ms-expand{
        display: none;
    }
}

/* ラジオボックス */
.secForm .itemRadio{
    margin-bottom: 0;
    width: 17rem;
}
.secFormTable input[type="radio"],
.secFormTable .txtRadio::before{
    width: 2rem;
    height: 2rem;
}
.secFormTable input[type="radio"]{
    margin-right: 0.5rem;
    margin-top: -0.2rem;
}
.secFormTable .labelRadio{
    position: relative;
    font-size: var(--pcFontSize15);
    height: 3rem;
    display: flex;
}
.secFormTable .txtRadio{
    display: inline-flex;
    align-items: center;
    padding-left: 4.5rem;
    font-size: var(--pcFontSize17);
}
/* チェックボックス */
.secFormTable input[type="checkbox"],
.secFormTable .labelCheck::before{
    width: 2.2rem;
    height: 2.2rem;
}
.secFormTable .boxCheck li:nth-child(n+2){
    margin-top: 1.4rem;
}
.secFormTable input[type="checkbox"]{
    position: relative;
    margin: 0;
    accent-color: var(--ColorRed);
}
.secFormTable .agree{
    margin: 2.9rem auto 0;
    text-align: center;
}
.secFormTable .agree .txtError{
    margin: 1.5rem auto 0;
}
.secFormTable .labelCheck{
    position: relative;
    font-size: var(--pcFontSize15);
    display: inline-flex;
    margin: 0 auto;
    align-items: center;
}
.secFormTable .txtCheck{
    font-size: var(--pcFontSize15);
    margin-left: 1.3rem;
    letter-spacing: var(--pcLetterSpacing15_100);
}
.secFormTable .txtCheck.ml0{
    margin-left: 0;
}
.secFormTable .txtArea{
    padding: 3rem 0;
}
.secFormTable .private th{
    padding: 3.7rem 0;
}
.secFormTable .private td{
    padding: 4rem 0;
}
.secFormTable input[type="checkbox"] + .inner::before{
    content: '';
    height: 2.3rem;
    width: 2.3rem;
    display: inline-block;
    vertical-align: middle;
    background: var(--whiteColor);
    border: 0.1rem solid var(--selectColor);
    border-radius: 0.4rem;
    position: absolute;
    top: -0.4rem;
    left: 0;
}
.secFormTable input[type="checkbox"]:checked + .inner::before {
    background: url(../img/common/imgCheckbox.png) center center /auto no-repeat var(--keyColor);
    border: 0.1rem solid var(--keyColor);
}
.secFormTable .inner{
    position: relative;
    font-size: var(--pcFontSize15);
    padding-left: 3.7rem;
}
.secFormTable .inner2{
    padding-left: 1rem;
}
.secFormTable .inner a:not(.privacy){
    border-bottom: 0.1rem solid var(--textColor);
    display: inline-block;
    text-decoration: none;
    line-height: 2.0;
}
.secFormTable input[type="checkbox"] {
    width: 2.3rem;
    height: 2.3rem;
    margin: 0 0.3rem 0 0;
    visibility: hidden;
    position: absolute;
}
.secFormTable .boxCheckList .inner {
    padding: 0.1rem 0 0 3.2rem;
    position: relative;
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_32);
    display: inline-block;
}
.secFormTable .like_radio input[type="checkbox"] + .inner::before{
    content: '';
    height: 2.3rem;
    width: 2.3rem;
    display: inline-block;
    vertical-align: middle;
    background: var(--whiteColor);
    border: 0.1rem solid var(--selectColor);
    position: absolute;
    top: 0.7rem;
    left: 0;
    border-radius: 50%;
}
.secFormTable .like_radio input[type="checkbox"]:checked + .inner::before{
    border: 0.1rem solid var(--keyColor);
}
.secFormTable .like_radio input[type="checkbox"]:checked + .inner::after{
    content: "";
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 0.65rem;
    background: var(--keyColor);
    position: absolute;
    top: 1.2rem;
    left: 0.5rem;
}
.boxTable .botBoxCover{
    margin-top: 5rem;
}
@media only screen and (max-width:1215px){
    .secFormTable .agree{
        margin: 2rem auto 0;
    }
    .secFormTable input[type="checkbox"]{
        left: 0;
    }
    .secFormTable .txtCheck{
        font-size: var(--spFontSize12);
        padding-top: 0;
        margin-left: 0.8rem;
    }
    .secFormTable .boxCheck li:nth-child(n+2){
        margin-top: 1.1rem;
    }
    .secFormTable .txtArea{
        padding: 1rem 0 3rem;
    }
    .secFormTable .private th{
        padding: 1.8rem 0 0;
    }
    .secFormTable .private td{
        padding: 1.4rem 0 2.5rem;
    }
    .secFormTable .item{
        padding-left: 2.6rem;
    }
    .secFormTable .boxAreaList .item:nth-child(n+2){
        margin-top: 1.2rem;
    }
    .secFormTable input[type="radio"]{
        width: 1.7rem;
        height: 1.7rem;
    }
    .secFormTable .radioTr th{
        padding-top: 2rem;
    }
    .secFormTable .radioTr td{
        padding: 2rem 0 0.6rem;
    }
    .secFormTable .boxCheckList .inner {
        padding: 0.1rem 0 0px 2.5rem;
        font-size: var(--spFontSize14);
        letter-spacing: 0;
        line-height: inherit;
    }
    .secFormTable input[type="checkbox"] + .inner::before{
        width: 1.8rem;
        height: 1.8rem;
    }
    .secFormTable input[type="checkbox"]:checked + .inner::before{
        background-size: 1.5rem;
    }
    .secFormTable .like_radio input[type="checkbox"] + .inner::before{
        height: 1.8rem;
        width: 1.8rem;
        top: 0;
    }
    .secFormTable .like_radio input[type="checkbox"]:checked + .inner::after{
        width: 1rem;
        height: 1rem;
        top: 0.4rem;
        left: 0.4rem;
    }
    .secFormTable .inner {
        font-size: var(--spFontSize12);
        padding-left: 2.5rem;
    }
    .boxTable .botBoxCover{
        margin-top: 2rem;
    }
    .boxTable .cmnBtnBox .btnInner {
        height: 7rem;
        border-radius: 3.5rem;
    }
}

.secForm .w100{
    width: 100%;
}
.secForm .w688{
    width: 68.8rem;
}
.secForm .w500{
    width: 50rem;
}
.secForm .w250{
    width: 25rem;
}
.secForm .w210{
    width: 21rem;
}
.secForm .w200{
    width: 20rem;
}
.secForm .w400{
    width: 40rem;
}
.secForm .wp100{
    width: 10rem;
}
.secForm .w70{
    width: 7rem;
}
.secForm .w150{
    width: 15rem;
}
.secForm .w175{
    width: 17.5rem;
}
.secForm .w185{
    width: 18.5rem;
}
.secForm .h200{
    height: 20rem;
}
.secForm .mw400{
    min-width: 40rem;
}
.secForm .ml15{
    margin-left: 1.5rem;
}
@media only screen and (max-width:1215px){
    .secForm .w688{
        width: 100%;
    }
    .secForm .w500{
        width: 100%;
    }
    .secForm .w200{
        width: 13rem;
    }
    .secForm .boxpref .w200{
        width: 14rem;
    }
    .secForm .w400{
        width: 65.673%;
    }
    .secForm .days .w400{
        width: 100%;
    }
    .secForm .wp100{
        width: 10rem;
    }
    .secForm .w150{
        width: 100%;
    }
    .secForm .w185{
        width: 100%;
    }
    .secForm .h200{
        height: 15rem;
    }
    .secForm .hs235{
        height: 23.5rem;
    }
    .secForm .ws140{
        width: 14rem;
    }
    .secForm .ws150{
        width: 15rem;
    }
    .secForm .ws200{
        width: 20.2rem;
    }
    .secForm .ws275{
        width: 27.5rem;
    }
    .secForm .mw400{
        min-width: 0;
        width: 100%;
    }
}

/* -------------------------------------------------------
co
------------------------------------------------------ */
.secContact.co#formTop{
    margin-top: 0;
    padding: 8rem 0;
}
.secContact.co .secFormTable{
    padding: 0;
}
.secContact.co th{
    padding: 3rem 0;
    align-items: center;
}
.secContact.co tr{
    align-items: center;
}
.secContact.co tr td{
    padding: 3rem 0;
    vertical-align: middle;
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_28);
    letter-spacing: var(--pcLetterSpacing15_50);
}
.secFormTable .btnForm.bot{
    width: 40rem;
    background: var(--selectColor);
}
.secFormTable .btnForm.bot::after{
    transform: rotate(-135deg);
    right: auto;
    left: 4rem;
}
.secContact.co .txtArea{
    padding: 0;
    white-space: pre-line;
    word-break: break-word;
}
@media only screen and (max-width:1215px){
    .secContact.co#formTop{
        padding: 0;
    }
    .secContact.co{
        padding: 0;
    }
    .secContact.co th{
        display: block;
        padding: 1.5rem 0 0;
        line-height: 1.6;
    }
    .secContact.co tr td{
        padding: 0.4rem 0 1.5rem;
        letter-spacing: 0;
        line-height: 1.6;
        font-size: var(--spFontSize13);
    }
    .secContact.co .secFormTable{
        background: none;
    }
    .secContact.co::after{
        display: none;
    }
    .secFormTable .btnForm.bot{
        width: 80%;
    }
    .secFormTable .btnForm.bot::after{
        left: 2rem;
    }
}
/* -------------------------------------------------------
           ok
------------------------------------------------------ */
.secContact.ok .okTxt{
    text-align: center;
    font-size: var(--pcFontSize16);
    line-height: 2;
}
@media only screen and (max-width:1215px){
    .secContact.ok .okTxt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_24);
        width: 100%;
        margin: 0 auto;
    }
    .secContact.ok .secFormTable{
        padding-bottom: 3rem;
    }
}

.secBackBtn{
    margin: 8rem 0 0;
}
.secBackBtn .btn{
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--dotColor);
    border-radius: 0.4rem;
    width: 26rem;
    height: 6rem;
    margin: 0 auto;
}
.secBackBtn .icon{
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    background: var(--dotColor);
    position: relative;
}
.secBackBtn .icon::after{
    position: absolute;
    content: "";
    width: 0.4rem;
    height: 0.4rem;
    border-top: 1px solid var(--whiteColor);
    border-right: 1px solid var(--whiteColor);
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0.1rem;
    margin: auto;
}
.secBackBtn .btnTxt{
    font-size: var(--pcFontSize13);
    font-weight: 500;
    color: var(--dotColor);
    margin-left: 0.8rem;
}
.ok .botBoxCover{
    margin-top: 5rem;
}
@media only screen and (max-width:1215px){
    .secBackBtn{
        margin: 3rem 0 8rem;
    }
    .secBackBtn .btn{
        border-radius: 0.7rem;
        width: 20.5rem;
        height: 5rem;
    }
    .secBackBtn .btnTxt{
        font-size: var(--spFontSize12);
        margin-left: 0.7rem;
    }
}

.secContact.co .btnQuestionnaire{
    height: auto;
    padding: 1.5rem 0;
    margin: 3rem auto;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: auto;
}
.secContact.co .btnQuestionnaire:hover{
    opacity: 1;
}
.secContact.co .secFormQuestionnaire .tabTxt{
    font-size: var(--pcFontSize25);
    padding-top: 0;
    line-height: var(--pcLineHeight25_40);
    margin-top: 0;
    color: var(--whiteColor);
}
.secContact.co .boxQuestionnaire{
    display: block;
}
.secContact.co .boxQuestionnaire th{
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_50);
}
.secContact.co .secForm .secFormQuestionnaire table tr:first-child th{
    padding-top: 2.5rem;
}
.secContact.co .secForm .secFormQuestionnaire table{
    background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 4px) left top / 4px 1px repeat-x;
}
.secContact.co .secForm .secFormQuestionnaire tr:last-child{
    background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 4px) left bottom / 4px 1px repeat-x;
}
.secContact.co .secFormQuestionnaire table tr:first-child td{
    padding-top: 3rem;
}
.secContact.co .boxTable{
    padding: 2rem 0 8rem 0;
    background: var(--whiteColor);
}
.secContact.ok .secFormTable{
    padding: 3rem 0;
    background: var(--whiteColor);
    width: 132rem;
    margin: 3rem auto 0;
}
@media only screen and (max-width:1215px){
    .secContact.co .boxTable{
        padding: 0 0 rem;
    }
    .secContact.co #estateForm{
        padding: 0;
        background: none;
    }
    .secContact.ok #estateForm{
        padding: 2.4rem 0 0;
    }
    .secContact.co .boxQuestionnaire th{
        font-size: var(--spFontSize13);
    }
    .secContact.co .btnQuestionnaire{
        margin: 2rem 0;
        box-shadow: none;
    }
    .secContact.co .secFormQuestionnaire .tabTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_21);
    }
    .secContact.co .secForm .secFormQuestionnaire .priceTop td{
        padding: 0.4rem 0 1.5rem;
    }
    .secContact.co .boxQuestionnaire th{
        letter-spacing: 0;
        padding-bottom: 0;
    }
    .secContact.co .secForm .secFormQuestionnaire table tr:first-child th{
        padding-top: 1.3rem;
    }
    .secContact.co .secForm .secFormQuestionnaire table{
        background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 2px) left top / 2px 1px repeat-x;
    }
    .secContact.co .secForm .secFormQuestionnaire tr:last-child{
        background: linear-gradient(to right, var(--selectColor), var(--selectColor) 1px, transparent 1px, transparent 2px) left bottom / 2px 1px repeat-x;
    }
    .secContact.co .secFormTable table tr:first-child td{
        padding-top: 0.4rem;
    }
    .secContact.ok .secFormTable{
        padding: 0 0 5rem;
        width: 92%;
        margin: 0 auto;
    }
}

/* 確認ページ */
.boxMoreCo{display: none;margin-left: 1.3rem;}

.btnSendCo.no_tap,
.btnSendCoBack.no_tap{
    opacity: 0.3!important;
    pointer-events: none!important;
    transition: none!important;
}
.btnSendCo.no_tap{
    background: url(../img/common/iconLoader.png) center center / 32px auto no-repeat,#fff!important;
    /* 「#fff」はボタンの背景色を入れてください */
    font-size: 0!important;
}


.borderTop{
    border-top: 1px solid var( --selectColor);
}
.secFormTable tr.hide{
    display: none;
}
.secFormTable .boxFlexBudget{
    display: flex;
    align-items: center;
    gap: 2rem;
}
.secFormTable .zipTh{
    position: relative;
    flex-direction: row;
}
.secFormTable .boxAbsolute{
    position: absolute;
    top: 12rem;
    left: 0;
}
.secFormTable .boxAbsolute02{
    top: 19rem;
}
@media only screen and (max-width:1215px){
    .secFormTable .boxFlexBudget{
        gap: 1.1rem;
    }
    .secFormTable .boxFlexBudget input[type="text"]{
        width: calc((100% - 1.1rem) / 2);
    }
    .secFormTable .boxAbsolute{
        top: 7rem;
        left: unset;
        right: 0;
    }
    .secFormTable .boxAbsolute04{
        top: 13rem;
    }
    .secFormTable .boxAbsolute02{
        top: 18.5rem;
    }
    .secFormTable .boxAbsolute03{
        top: 24.3rem;
    }
}

.co form{
    padding: 0;
    border-radius: 0m;
    box-shadow: none;
    margin-top: 0;
}