@charset "utf-8";
:root {
    /* 色（common.cssに無いもの） */
    --placeholderColor: rgba(34, 34, 34, 0.4);
    --errorColor: #F00;
    --grayColor: #b7b7b7;
    --greenColor: #009944;
    --beigeColor: #e3e2df;
    --requiredColor: #cd2929;
    --inputBorderColor: #bababa;
    --creamColor: #fffef7;
    --darkColor: #1d1d1d;
    --navyColor: #171c61;
    --lightGrayColor: #f1f1f1;
    --goldColor: #ebd306;
    --infoBoxBgColor: rgba(175, 181, 181, 0.15);
    --charcoalColor: #33373d;
}

/* placeholderの色指定 */
::placeholder{
    color: var(--placeholderColor);
}

/* PHPエラー文 */
.secForm .txtError{
    color: var(--errorColor);
    font-size: var(--pcFontSize12);
    background: url(../img/common/iconError.png) left top / 1.4rem auto no-repeat;
    padding: 0 0 0 1.7rem;
    margin-top: 1.5rem;
    line-height: calc(14 / 12);
}

/*-----------------------------------------------
    フォーム共通パーツ
-----------------------------------------------*/

/* secFormTit */
.secFormTit{
    text-align: center;
}
.secFormTit .tit{
    font-size: var(--pcFontSize30);
    font-weight: bold;
}
.secFormTit .txt{
    font-size: var(--pcFontSize15);
    line-height: 2;
    margin-top: 4rem;
}
@media only screen and (max-width:1215px){
    .secFormTit.ok{
        text-align: left;
    }
    .secFormTit .tit{
        font-size: var(--spFontSize20);
    }
    .secFormTit .txt{
        font-size: var(--spFontSize14);
        line-height: calc(30 / 14);
        margin-top: 1.2rem;
    }
    .secFormTit.ok .txt{
        margin-top: 2rem;
    }
}

/* secFormStep */
.secFormStep{
    display: flex;
    justify-content: center;
    margin-top: 4rem;
    position: relative;
    letter-spacing: 1px;
}
.secFormOkTit + .secFormStep{
    margin-top: 6rem;
}
.secFormStep::after{
    content: "";
    width: 18rem;
    height: 1px;
    background: var(--grayColor);
    position: absolute;
    top: calc(50% - 0.4rem);
    left: calc(50% - 9rem);
}
.secFormStep li{
    margin-right: 3.6rem;
    position: relative;
    z-index: 10;
}
.secFormStep li:last-child{
    margin-right: 0;
}
.secFormStep .eng{
    font-size: var(--pcFontSize15);
    font-weight: bold;
    text-align: center;
}
.secFormStep .circle{
    width: 2rem;
    height: 2rem;
    border-radius: 1rem;
    margin: 1.5rem auto 0;
    border: 1px solid var(--grayColor);
    background: var(--whiteColor);
}
.secFormStep li.active .circle{
    background: var(--greenColor);
}
.secFormStep .jpn{
    font-size: var(--pcFontSize13);
    margin-top: 2.2rem;
    text-align: center;
}
@media only screen and (max-width:1215px){
    .secFormStep{
        margin-top: 2.1rem;
    }
    .secFormOkTit + .secFormStep {
        margin-top: 2.7rem;
    }
    .secFormStep::after{
        width: 16rem;
        top: calc(50% - 0.2rem);
        left: calc(50% - 8rem);
    }
    .secFormStep li{
        margin-right: 3.5rem;
    }
    .secFormStep .eng{
        font-size: var(--spFontSize15);
    }
    .secFormStep .circle{
        width: 2rem;
        height: 2rem;
    }
    .secFormStep .jpn{
        font-size: var(--spFontSize13);
        margin-top: 1.9rem;
    }
}

/* secFormTable */
.secFormTable{
    margin-top: 4.8rem;
}
.secFormTable.questionnaire{
    margin-top: -3.5rem;
}
.secFormQuestionnaire + .secFormTable{
    margin-top: 0;
}
.secFormTable .txtError{
    width: 100%;
    color: var(--errorColor);
    font-size: var(--pcFontSize12);
    line-height: 1.5;
    padding: 0 0 0 1.7rem;
    margin-top: 1rem;
}
.secFormTable.lazyloaded .txtError{
    background: url(../img/common/iconError.png) left 0.2rem / 1.4rem auto no-repeat;
}
.secFormTable tr{
    border-top: 1px solid var(--beigeColor);
}
@media only screen and (min-width:1216px){
    .secFormTable.co tr:last-child{
        border-bottom: 1px solid var(--beigeColor);
    }
}
.secFormTable.questionnaire tr:first-child{
    border-top: none;
}
@media only screen and (min-width:1216px){
    .secFormTable:not(.questionnaire) tr:last-child{
        border-bottom: 1px solid var(--beigeColor);
    }
}
.secFormTable th{
    width: 24rem;
    padding: 3.2rem 0;
    vertical-align: top;
}
.secFormTable th.calendar{
    padding-top: 7rem;
}
.secFormTable.privacy th{
    padding: 3.3rem 0;
}
.secFormTable .innerTh{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.secFormTable .txtQuestionLine01{
    padding-top: 1.5rem;
}
.secFormTable .txtTh,
.secFormTable.co td{
    font-size: var(--pcFontSize15);
    line-height: 1.74;
}
.secFormTable .icoRequired{
    width: 3.6rem;
    height: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--requiredColor);
    color: var(--whiteColor);
    font-weight: bold;
}
.secFormTable td{
    width: 104rem;
    padding: 3.4rem 0;
    padding-left: 7.2rem;
    vertical-align: middle;
    position: relative;
    font-size: var(--pcFontSize15);
}
#dateTimePicker .tableCalendar td {
    width: auto;
}
.secFormTable input[type="text"],
.secFormTable input[type="tel"],
.secFormTable input[type="email"],
.secFormTable select{
    height: 5.4rem;
    border: 1px solid var(--inputBorderColor);
    font-size: var(--pcFontSize15);
    padding-left: 1.5rem;
    background: var(--whiteColor);
}
.secFormTable select{
    max-width: 100%;
    padding-right: 1.5rem;
}
_:-ms-lang(x)::-ms-backdrop, .secFormTable select{
    padding-right: 0;
}
.secFormTable textarea{
    height: 15rem;
    padding: 1.5rem;
    border: 1px solid var(--inputBorderColor);
    resize: none;
}
.secFormTable input[type="text"].inputRequired,
.secFormTable input[type="tel"].inputRequired,
.secFormTable input[type="email"].inputRequired,
.secFormTable select.inputRequired,
.secFormTable textarea.inputRequired{
    border: 1px solid var(--requiredColor);
    background: var(--creamColor);
}
.secFormTable .mw200{
    min-width: 20rem;
}
.secFormTable .mw360{
    min-width: 36rem;
}
.secFormTable .w55{
    width: 5.5rem;
}
.secFormTable .w95{
    width: 9.5rem;
}
.secFormTable .w100{
    width: 10rem;
}
.secFormTable .w120{
    width: 12rem;
}
.secFormTable .w150{
    width: 15rem;
}
.secFormTable .w360{
    width: 36rem;
}
.secFormTable .w400{
    width: 40rem;
}
.secFormTable .w800{
    width: 80rem;
}
.secFormTable .w100p{
    width: 100%;
}
.secFormTable .txtNote01{
    font-size: var(--pcFontSize12);
    margin-left: 1rem;
}
.secFormTable .txtZip{
    font-size: var(--pcFontSize15);
    margin-right: 0.7rem;
}
.secFormTable .btnZip{
    width: 10rem;
    height: 4rem;
    border-radius: 2rem;
    background: var(--darkColor);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--whiteColor);
    font-size: var(--pcFontSize12);
    text-decoration: none;
    margin-left: 1.3rem;
}
.secFormTable .rowAddress{
    margin-top: 1rem;
}
.secFormTable .inputAddress{
    margin-left: 0.9rem;
}
.secFormTable .txtNote02{
    font-size: var(--pcFontSize12);
    margin-top: 1.5rem;
}
.secFormTable .txtNote03{
    font-size: var(--pcFontSize12);
    margin-top: 1.2rem;
}
.secFormTable input[type="radio"],
.secFormTable .txtRadio::before{
    width: 2rem;
    height: 2rem;
}
.secFormTable input[type="radio"]{
    visibility: hidden;
    position: absolute;
    margin: 0;
}
.secFormTable .labelRadio{
    position: relative;
    font-size: var(--pcFontSize15);
    display: inline-block;
}
.secFormTable .itemRadio:nth-child(n+2){
    margin-top: 1.5rem;
}
.secFormTable .txtRadio{
    display: inline-flex;
    line-height: calc(var(--pcFontSize15) * (20 / 15));
}
.secFormTable .txtRadio::before{
    content: "";
    width: calc(var(--pcFontSize15) * (20 / 15));
    height: calc(var(--pcFontSize15) * (20 / 15));
    border-radius: 1rem;
    background: var(--whiteColor);
    margin-right: 1rem;
    border: 1px solid var(--inputBorderColor);
}
.secFormTable input[type="radio"]:checked + .txtRadio::after{
    content: "";
    width: 1rem;
    height: 1rem;
    border-radius: 0.5rem;
    background: var(--textColor);
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
}
.secFormTable input[type="checkbox"],
.secFormTable .txtCheck::before{
    width:calc(var(--pcFontSize15) * (20 / 15));
    height:calc(var(--pcFontSize15) * (20 / 15));
}
.secFormTable input[type="checkbox"]{
    visibility: hidden;
    position: absolute;
    margin: 0;
}
.secFormTable .labelCheck{
    position: relative;
    font-size: var(--pcFontSize15);
    display: inline-block;
}
.secFormTable .itemCheck:nth-child(n+2){
    margin-top: 1.5rem;
}
.secFormTable .txtCheck{
    display: inline-block;
    line-height: calc(var(--pcFontSize15) * (20 / 15));
    padding-left: calc(var(--pcFontSize15) * (20 / 15) + 1rem);
}
.secFormTable .txtCheckIn{
    display: block;
}
.secFormTable .txtCheck::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(var(--pcFontSize15) * (20 / 15));
    height: calc(var(--pcFontSize15) * (20 / 15));
    border-radius: 0.4rem;
    background: var(--whiteColor);
    border: 1px solid var(--inputBorderColor);
}
.secFormTable .txtCheck.checkRequired::before{
    background: var(--whiteColor);
    border-color: var(--inputBorderColor);
}
.secFormTable input[type="checkbox"]:checked + .txtCheck.lazyloaded::before{
    background: url(../img/common/iconCheckbox.gif) center center / 1.4rem auto no-repeat;
}
.secFormTable .linkPrivacy{
    color: var(--greenColor);
    text-decoration: none;
    border-bottom: 1px solid var(--greenColor);
    padding-bottom: 0.3rem;
}
.secFormTable .boxInputList{
    padding-top: 0.2rem;
}
.secFormTable .itemInput{
    display: flex;
    align-items: center;
}
.secFormTable .itemInput:nth-child(n+2){
    margin-top: 1rem;
}
.secFormTable .boxQuestionRow{
    display: flex;
    align-items: center;
}
.secFormTable .boxQuestionRow + .boxQuestionRow{
    margin-top: 1rem;
}
.secFormTable .txtQuestionRow01{
    margin-left: 1rem;
    font-size: var(--pcFontSize15);
}
.secFormTable .inputListText{
    margin-top: 1rem;
}
.secFormTable .inputListTextArea{
    max-width: 36rem;
    height: 10rem;
}
.secFormTable .txtQuestionRow02{
    font-size: var(--pcFontSize15);
    width: 5rem;
}
.secFormTable .txtCalendarNote{
    font-size: var(--pcFontSize16);
    line-height: 1.8125;
    margin-top: 1.8rem;
}
.secFormTable .fNotePoint{
    color: var(--requiredColor);
}
@media only screen and (max-width:1215px){
    .secFormTable{
        margin-top: 3rem;
        border-top: 1px solid;
        border-bottom: 1px solid;
        border-color: var(--beigeColor);
        padding-top: 1.6rem;
        padding-bottom: 1.6rem;
    }
    .secFormTable.questionnaire{
        margin-top: -2rem;
    }
    .secFormTable,
    .secFormTable tbody,
    .secFormTable tr,
    .secFormTable th,
    .secFormTable td{
        display: block;
    }
    .secFormTable tr{
        padding:0 2rem;
        border: none;
    }
    .secFormTable tr + tr{
        margin-top: 1.8rem;
        padding-top: 1.8rem;
        border-top: 1px solid;
        border-color: var(--beigeColor);
    }
    .secFormTable th,
    .secFormTable th.calendar,
    .secFormTable.privacy th{
        width: 100%;
        padding: 0;
    }
    .secFormTable .innerTh{
        height: auto;
    }
    .secFormTable .txtQuestionLine01{
        padding-top: 0;
    }
    .secFormTable .txtTh,
    .secFormTable.co td{
        font-size: var(--spFontSize14);
        line-height: 1.43;
    }
    .secFormTable .txtTh{
        font-weight: bold;
    }
    .secFormTable td{
        width: 100%;
        padding: 1.5rem 0 0;
    }
    .secFormTable input[type="text"],
    .secFormTable input[type="tel"],
    .secFormTable input[type="email"],
    .secFormTable select{
        height: 4.4rem;
        font-size: var(--spFontSize16);
        padding-left: 1rem;
    }
    .secFormTable select{
        padding-right: 1rem;
    }
    .secFormTable textarea{
        height: 12rem;
        font-size: var(--spFontSize16);
        padding: 1rem;
    }
    .secFormTable .ws100p{
        width: 100%;
        min-width: auto;
    }
    .secFormTable .ws100{
        width: 10rem;
        min-width: auto;
    }
    .secFormTable .ws120{
        width: 12rem;
        min-width: auto;
    }
    .secFormTable .mws170{
        min-width: 17rem;
    }
    .secFormTable .txtNote01{
        display: block;
        margin: 1rem 0 0;
        font-size: var(--spFontSize12);
    }
    .secFormTable .inputAddress{
        margin: 1rem 0 0;
    }
    .secFormTable .txtNote02{
        font-size: var(--spFontSize12);
        line-height: 1.67;
        margin: 0.6rem 0 -0.3rem;
    }
    .secFormTable .txtNote03{
        font-size: var(--spFontSize12);
        line-height: 1.67;
        margin-top: 0.9rem;
    }
    .secFormTable .boxInputList{
        padding-top: 0;
    }
    .secFormTable .txtCheck{
        padding-left: calc(var(--spFontSize14) * (18 / 14) + 1rem);
        line-height: calc(var(--spFontSize14) * (18 / 14));
    }
    .secFormTable .itemInput:nth-child(n+2){
        margin-top: 1.1rem;
    }
    .secFormTable .txtCheck::before,
    .secFormTable .txtRadio::before{
        width: calc(var(--spFontSize14) * (18 / 14));
        height: calc(var(--spFontSize14) * (18 / 14));
        top: calc(var(--spFontSize14) * (1 / 14));
    }
    .secFormTable input[type="radio"]:checked + .txtRadio::after{
        width: calc(var(--spFontSize14) * (10 / 14));
        height: calc(var(--spFontSize14) * (10 / 14));
        top: calc(var(--spFontSize14) * (4 / 14));
        left: calc(var(--spFontSize14) * (4 / 14));
    }
    .secFormTable .txtCalendarNote{
        font-size: var(--spFontSize13);
        line-height: 1.769;
        margin-top: 0.2rem;
    }
    .secFormTable .labelCheck{
        font-size: var(--spFontSize14);
    }
    .secFormTable .txtCheck.checkRequired::before{
        background: var(--creamColor);
        border-color: var(--requiredColor);
        margin-top: 0;
    }
    .secFormTable .inputListTextArea{
        max-width: none;
    }
}

/* secFormCalendarLegend */
.secFormCalendarLegend{
    font-size: var(--pcFontSize14);
    font-weight: bold;
    display: flex;
    justify-content: flex-end;
}
.secFormCalendarLegend li{
    display: flex;
    align-items: center;
    white-space: nowrap;
    letter-spacing: 0.25px;
}
.secFormCalendarLegend li:nth-child(n+2){
    margin-left: 2.8rem;
}
.secFormCalendarLegend img{
    margin-right: 1rem;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
    .secFormCalendarLegend img{
        image-rendering: -webkit-optimize-contrast;
    }
}
@media only screen and (max-width:1215px){
    .secFormCalendarLegend{
        font-size: var(--spFontSize12);
    }
    .secFormCalendarLegend li{
        letter-spacing: 0;
    }
    .secFormCalendarLegend li:nth-child(n+2){
        margin-left: 1.6rem;
    }
    .secFormCalendarLegend img{
        width: auto;
        height: 1.8rem;
        margin-right: 0.5rem;
    }
    .secFormCalendarLegend li:nth-child(3) img{
        height: 1.4rem;
    }
}

/* secFormCalendar */
.secFormCalendar{
    width: 96.7rem;
    margin: 2rem auto 0;
    font-size: 0;
}
.secFormCalendar input[type="text"]{
    display: block;
    width: 100%;
    height: 0;
    padding: 0;
    border: 0;
    appearance: none;
    -webkit-appearance: none;
}
@media only screen and (max-width:1215px){
    .secFormCalendar{
        width: 100%;
        margin-top: 1rem;
    }
}

/* secFormQuestionnairePoint */
.secFormQuestionnairePoint{
    margin-top: 3.7rem;
    margin-bottom: 3rem;
}
.secFormQuestionnairePoint .txt{
    font-size: var(--pcFontSize22);
    font-weight: bold;
    text-align: center;
    letter-spacing: 1px;
}
.secFormQuestionnairePoint .boxList{
    display: flex;
    justify-content: space-between;
    margin-top: 3.8rem;
}
.secFormQuestionnairePoint .imgList{
    margin: 2rem auto 0;
    display: flex;
    justify-content: space-between;
}
@media only screen and (max-width:1215px){
    .secFormQuestionnairePoint{
        margin-top: 1.9rem;
        margin-bottom: 2rem;
    }
    .secFormQuestionnairePoint .txt{
        font-size: var(--spFontSize16);
        line-height: 1.53;
        letter-spacing: 0;
    }
    .secFormQuestionnairePoint .boxList{
        display: block;
        width: 95.523%;
        margin: 1.4rem auto 0;
        max-width: 32rem;
    }
    .secFormQuestionnairePoint .item:nth-child(n+2){
        margin-top: 1.4rem;
    }
    .secFormQuestionnairePoint .imgList{
        margin: 0 auto;
    }
    .secFormQuestionnairePoint .imgList li{
        width: 34%;
    }
}

/* secFormQuestionnaire */
.secFormQuestionnaire .btnQuestionnaire{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 8rem;
    margin: 3rem auto 3.5rem;
    text-align: center;
    text-decoration: none;
    background: var(--redColor);
    color: var(--whiteColor);
    font-size: var(--pcFontSize36);
    line-height: calc(50 / 36);
    font-weight: bold;
    letter-spacing: 0.5px;
    position: relative;
    box-shadow: 0 0.3rem 0.2rem 0 rgba(0,0,0,0.2);
}
.secFormQuestionnaire:not(.co) .btnQuestionnaire::before,
.secFormQuestionnaire:not(.co) .btnQuestionnaire::after{
    content: "";
    width: 2.2rem;
    height: 0.2rem;
    background: var(--whiteColor);
    position: absolute;
    top: calc(50% - 0.1rem);
    right: 4rem;
    z-index: 10;
}
.secFormQuestionnaire .btnQuestionnaire::after{
    transform: rotate(90deg);
    transform-origin: center center;
}
.secFormQuestionnaire .btnQuestionnaire.on::after{
    display: none;
}
.secFormQuestionnaire .btnQuestionnaire:not(.on) .txtQuestionnaireOn,
.secFormQuestionnaire .btnQuestionnaire.on .txtQuestionnaireOff,
.secFormQuestionnaire input[name="isQuestionnaire"],
.secFormQuestionnaire:not(.co) .boxQuestionnaire{
    display: none;
}
/* secFormInfo  */
.secFormQuestionnaire.secFormInfo .btnQuestionnaire{
    background: var(--navyColor);
    margin: 0 auto;
    margin-top: 4rem;
}
.secFormQuestionnaire.secFormInfo .formInfoBox{
    display: none;
}
@media only screen and (max-width:1215px){
    .secFormQuestionnaire .btnQuestionnaire{
        font-size: var(--spFontSize18);
        letter-spacing: 0;
        height: 6rem;
        width: 100%;
        margin: 2rem auto;
        letter-spacing: 0.5px;
    }
    .secFormQuestionnaire .btnQuestionnaire::before,
    .secFormQuestionnaire .btnQuestionnaire::after{
        width: 1.4rem;
        top: calc(50% - 0.1rem);
        right: 2.5rem;
    }
    .secFormQuestionnaire:not(.co) .btnQuestionnaire::before,
    .secFormQuestionnaire:not(.co) .btnQuestionnaire::after{
        content: "";
        width: 1.4rem;
        height: 0.2rem;
        background: var(--whiteColor);
        position: absolute;
        top: calc(50% - 0.1rem);
        right: 1.3rem;
        z-index: 10;
    }
    /* secFormInfo  */
    .secFormQuestionnaire.secFormInfo .btnQuestionnaire{
        line-height: calc(22 / 16);
        margin-top: 2rem;
        padding-right: 1.6rem;
    }
    .secFormQuestionnaire.secFormInfo .formInfoBox{
        margin: 2rem auto 0;
    }
}
@media only screen and (max-width:359px) {
    .secFormQuestionnaire:not(.co) .btnQuestionnaire::before,
    .secFormQuestionnaire:not(.co) .btnQuestionnaire::after {
        right: 2rem;
    }
}

/* secFormMail */
.secFormMail{
    background: var(--lightGrayColor);
    padding: 5rem;
    font-weight: 500;
    margin-top: 3.5rem;
}
.secFormMail .tit{
    font-size: var(--pcFontSize15);
}
.secFormMail .txt{
    font-size: var(--pcFontSize13);
    line-height: 2.16;
    margin-top: 1.5rem;
}
.secFormMail .fPoint{
    color: var(--requiredColor);
}
@media only screen and (max-width:1215px){
    .secFormMail{
        padding: 2.5rem 2rem;
        margin-top: 2rem;
    }
    .secFormMail .tit{
        font-size: var(--spFontSize14);
        line-height: 1.43;
        font-weight: bold;
    }
    .secFormMail .txt{
        line-height: 1.69;
        margin-top: 1rem;
    }
}

/* secFormBtn */
.secFormBtn .btn{
    width: 55rem;
    height: 10rem;
    border-radius: 5rem;
    background: var(--greenColor);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--pcFontSize20);
    font-weight: bold;
    color: var(--whiteColor);
    margin: 5rem auto 0;
    letter-spacing: 3px;
    text-decoration: none;
    position: relative;
}
.secFormBtn .btn::after{
    content: "";
    width: 2.5rem;
    height: 1.5rem;
    position: absolute;
    right: 5rem;
    top: calc(50% - 0.75rem);
}
.secFormBtn .btn.lazyloaded::after{
    background: url(../img/common/imgFormBtn.gif) center top / cover no-repeat;
}
@media only screen and (max-width:1215px){
    .secFormBtn .btn{
        width: 85.334%;
        max-width: 32rem;
        height: 6rem;
        font-size: var(--spFontSize16);
        margin: 3rem auto 0;
        letter-spacing: 1px;
        text-decoration: none;
    }
    .secFormBtn .btn::after{
        width: 1.8rem;
        height: 1.3rem;
        right: 4rem;
        top: calc(50% - 0.65rem);
    }
    .secFormBtn .btn.lazyloaded::after{
        background-image: url(../img/common/imgFormBtn_sp.gif);
    }
}

/* secFormOkTit */
.secFormOkTit .tit {
    font-size: var(--pcFontSize25);
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    border: 0.2rem solid var(--textColor);
    font-weight: bold;
    padding: 1.6rem;
    letter-spacing: 1px;
}
@media only screen and (max-width:1215px) {
    .secFormOkTit .tit {
        font-size: var(--spFontSize15);
        padding: 1.4rem 1rem;
        letter-spacing: 0;
    }
}

/* secFormOkTxt */
.secFormOkTxt{
    margin-top: 5rem;
}
.secFormOkTxt .tit{
    font-size: var(--pcFontSize20);
    font-weight: bold;
    letter-spacing: 1.5px;
    text-align: center;
}
.secFormOkTxt .txt{
    font-size: var(--pcFontSize15);
    line-height: 2;
    margin-top: 2rem;
    text-align: center;
}
.secFormOkTxt .txt:first-child{
    margin-top: 0;
}
@media only screen and (max-width:1215px) {
    .secFormOkTxt {
        margin-top: 3rem;
    }
    .secFormOkTxt .tit {
        font-size: var(--spFontSize15);
        letter-spacing: 0;
    }
    .secFormOkTxt .txt {
        font-size: var(--spFontSize13);
        line-height: 1.77;
        margin-top: 1.3rem;
        text-align: left;
    }
}
/*-----------------------------------------------
    co
-----------------------------------------------*/
.secFormTable.co th.calendar{
    padding: 4.9rem 0;
}
@media only screen and (max-width:1215px) {
    .secFormTable.co th.calendar{
        padding: 0;
    }
}
.formInfoBox{
    margin: 3.5rem auto 0;
    background-color: var(--infoBoxBgColor);
}
.formInfoBox .inner{
    position: relative;
    text-align: center;
    padding: 4.7rem 0 5rem;
}
.formInfoBox .inner .infoTit{
    position: absolute;
    top: -2rem;
    left: 0;
    right: 0;
    margin: auto;
    background-color: var(--goldColor);
    border-radius: 0.5rem;
    box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.15);
    color: var(--redColor);
    font-size: var(--pcFontSize20);
    font-weight: 900;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60rem;
    height: 4rem;
}
.formInfoBox .inner .minTit{
    font-size: var(--pcFontSize18);
    font-weight: bold;
}
.formInfoBox .inner .infoContents{
    width: 98rem;
    margin: 3.2rem auto 0;
    display: flex;
    text-align: left;
    position: relative;
}
.formInfoBox .inner .infoContents::before{
    content: "";
    position: absolute;
    width: 1px;
    height: calc(100% - (1.5rem + 0.4rem));
    top: 1.5rem;
    left: calc(50% - 0.5px);
    background-color: var(--textColor);
}
.formInfoBox .inner .infoContents .list{
    width: calc((100% - 10rem) / 2);
    margin-right: 10rem;
}
.formInfoBox .inner .infoContents .list:last-child{
    margin-right: 0;
}
.formInfoBox .inner .infoContents .listtit{
    font-size: var(--pcFontSize30);
    line-height: calc(50 / 30);
    font-weight: bold;
    letter-spacing: 0.05em;
    color: var(--infoColor);
}
.formInfoBox .inner .infoContents .listsubtit{
    font-size: var(--pcFontSize18);
    line-height: calc(26 / 18);
    font-weight: bold;
    margin-top: 1.5rem;
}
.formInfoBox .inner .infoContents .list .txt{
    font-size: var(--pcFontSize14);
    line-height: calc(26 / 14);
    margin-top: 1rem;
}
.formInfoBox .inner .txtRed{
    font-size: var(--pcFontSize13);
    color: var(--redColor);
    margin-top: 5.2rem;
    padding: 0.8rem 8.15rem;
    border: 1px solid var(--redColor);
    display: inline-block;
}
@media only screen and (max-width:1215px){
    .formInfoBox{
        margin: 4rem auto 0;
    }
    .formInfoBox .inner{
        padding: 2.3rem 2rem 2rem;
    }
    .formInfoBox .inner .infoTit{
        font-size: var(--spFontSize18);
        line-height: 1.3;
        width: 100%;
        height: 4rem;
    }
    .formInfoBox .inner .minTit{
        font-size: var(--spFontSize16);
        line-height: calc(30 / 16);
    }
    .formInfoBox .inner .infoContentsImg{
        width: 100%;
    }
    .formInfoBox .inner .infoContents{
        width: 100%;
        margin-top: 1.8rem;
        display: block;
    }
    .formInfoBox .inner .infoContents::before{
        display: none;
    }
    .formInfoBox .inner .infoContents .list{
        width: 100%;
        margin: 0 auto;
    }
    .formInfoBox .inner .infoContents .list + .list{
        margin-top: 2.3rem;
        padding-top: 2.3rem;
        border-top: 1px solid;
        border-color: var(--textColor);
    }
    .formInfoBox .inner .infoContents .listtit{
        font-size: var(--spFontSize20);
        line-height: calc(30 / 20);
    }
    .formInfoBox .inner .infoContents .listsubtit{
        font-size: var(--spFontSize14);
        line-height: calc(26 / 14);
        margin-top: 1rem;
    }
    .formInfoBox .inner .infoContents .list .txt{
        font-size: var(--spFontSize11);
        line-height: calc(22 / 11);
        margin-top: 1.3rem;
    }
    .formInfoBox .inner .txtRed{
        font-size: var(--spFontSize11);
        text-align: left;
        line-height: 1.3;
        margin-top: 1rem;
        padding: 0.4rem 0.5rem;
    }
}
@media only screen and (max-width:360px){
    .formInfoBox .inner .infoTit{
        font-size: var(--spFontSize14);
    }
}
/* 221205 */
.secFormTable .purposebox{
    margin-left: 2rem;
    width: 60rem;
}
@media only screen and (max-width:1215px){
    .secFormTable .itemInput.exception{
        flex-wrap: wrap;
    }
    .secFormTable .purposebox{
        margin-left: 0;
        margin-top: 1rem;
        width: 100%;
    }
}


/* 2025506 */
/* secQuestionnaireTop */
.secQuestionnaireTop{
    margin-top: 7.5rem;
}
.secQuestionnaireTop .boxQuestionnaireTop{
    width: 100%;
    border: 0.5rem solid var(--charcoalColor);
    border-radius: 0.5rem;
    box-shadow: 0 0 0.576rem 0.024rem rgba(0, 0, 0, 0.15);
    position: relative;
}
.secQuestionnaireTop .txtTit{
    width: 100%;
    padding: 1.7rem 0 2.2rem;
    background: var(--charcoalColor);
    font-size: var(--pcFontSize26);
    text-align: center;
    color: var(--goldColor);
}
.secQuestionnaireTop .boxConditions{
    padding: 3.9rem 0 6.6rem;
}
.secQuestionnaireTop .boxImg{
    text-align: center;
}
.secQuestionnaireTop .txtUnder{
    width: 28rem;
    padding: 1.9rem 0;
    background: var(--charcoalColor);
    border-radius: 3rem;
    font-size: var(--pcFontSize22);
    color: var(--whiteColor);
    text-align: center;
    position: absolute;
    bottom: -3rem;
    left: 50%;
    transform: translateX(-50%);
}
.secQuestionnaireTop .imgUnder{
    position: absolute;
    bottom: -11.9rem;
    left: 50%;
    transform: translateX(-50%);
}
.formCoOk .secFormQuestionnairePoint{
    margin-top: 14.9rem;
}
@media only screen and (max-width:1215px){
    .secQuestionnaireTop{
        margin-top: 2.4rem;
    }
    .secQuestionnaireTop .boxQuestionnaireTop{
        border: 0.3rem solid var(--charcoalColor);
    }
    .secQuestionnaireTop .txtTit{
        padding: 0.8rem 0 1.3rem;
        font-size: var(--spFontSize18);
        line-height: 1.56;
    }
    .secQuestionnaireTop .boxConditions{
        padding: 2.5rem 0 4.2rem;
    }
    .secQuestionnaireTop .boxConditions .boxImg{
        width: 29.9rem;
        max-width: 90%;
        margin: 0 auto;
    }
    .secQuestionnaireTop .txtUnder{
        width: 18rem;
        padding: 1.25rem 0;
        border-radius: 2rem;
        font-size: var(--spFontSize15);
        bottom: -2.4rem;
    }
    .secQuestionnaireTop .imgUnder{
        width: 2.6rem;
        bottom: -8.5rem;
    }
    .formCoOk .secFormQuestionnairePoint{
        margin-top: 10rem;
    }
}

.secFormTit .txt span{
    color: var(--requiredColor);
    background: linear-gradient(transparent 70%, var(--goldColor) 70%, var(--goldColor) 95%, transparent 95%);
}
@media only screen and (max-width:359px){
    .secFormTit .txt {
        font-size: var(--spFontSize12);
    }
}
/* ▼260224 追加 */
.secFormTable .flowCalFlow {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    font-size: var(--pcFontSize14);
}
.secFormTable .karenderTxt {
    margin-right: 1.5rem;
    margin-left: 3rem;
}
.secFormTable .bosSelect .mr20{
    margin-right: 2rem;
}
.secFormTable .bosSelect.mt20{
    margin-top: 2rem;
}
.secFormTable .txtNote02 + .txtNote02{
    margin-top: 1rem;
}
@media only screen and (max-width:1215px){
    .secFormTable .flowCalFlow{
        width: 100%;
        margin: 0 auto;
        flex-wrap: wrap;
    }
    .secFormTable .karenderTxt{
        margin-left: 0;
    }
    .secFormTable .bosSelect .mr20{
        width: 100%;
        margin-right: 0;
    }
    .secFormTable .karenderLeft{
        width: 100%;
        margin-top: 1rem;
    }
    .secFormTable .karenderTxt {
        margin-right: 1rem;
        margin-left: 0;
        margin-top: 1rem;
    }
    .secFormTable .karenderRight {
        margin-top: 1rem;
    }
    .secFormTable .txtNote02 + .txtNote02{
        margin-top: 0.5rem;
    }
}
/* ▼260904 */
.secFormTable .other_contents_txt{
    height: 10rem;
}
.secFormTable .boxInputList + .other_contents_txt{
    margin-top: 0.9rem;
}
.secFormTable .form_modeltxt{
    font-size: var(--pcFontSize15);
    line-height: calc(55 / 15);
}
@media only screen and (min-width:1216px){
    .secFormTable th{
        vertical-align: middle;
    }
    .secFormTable th.checkTh,
    .secFormTable th.zipTh,
    .secFormTable th.agreeTh,
    .secFormTable th.dayTh,
    .secFormTable th.purposeTh{
        padding: 3.2rem 0;
        vertical-align: top;
    }
    .secFormTable th.dayTh,
    .secFormTable th.zipTh{
        padding: 5rem 0;
    }
    .secFormTable th.purposeTh .innerTh{
        align-items: flex-start;
    }
    .secFormTable th.purposeTh .icoRequired{
        margin-top: 0.7rem;
    }
    .secFormQuestionnaire + .secFormMail{
        margin-top: 5rem;
    }
}
@media only screen and (max-width:1215px){
    .secFormTable .boxInputList + .other_contents_txt{
        margin-top: 1.4rem;
    }
    .secFormContentbox .serReservecontent + .secForm{
        margin-top: 40px;
    }
    .secFormTable .form_modeltxt{
        font-size: var(--spFontSize14);
        line-height: calc(44 / 14);
    }
}
/* ▼260904 */
.formInfoBox .rebbox{
    width: 100%;
    max-width: 98rem;
    margin: 0 auto;
    margin-top: 7.2rem;
    background-color: var(--whiteColor);
    border: 1px solid;
    border-color: var(--infoColor);
    padding: 2rem 2.9rem;
}
.formInfoBox .rebbox .redInner{
    display: flex;
    align-items: center;
}
.formInfoBox .rebbox .red_left{
    display: inline-block;
    padding-right: 36px;
}
.formInfoBox .rebbox .lefttxt{
    font-size: var(--pcFontSize18);
    line-height: calc(30 / 18);
    font-weight: bold;
    color: var(--infoColor);
}
.formInfoBox .rebbox .red_right{
    flex: 1;
    text-align: left;
}
.formInfoBox .rebbox .righttxt{
    font-size: var(--pcFontSize13);
    line-height: calc(20 / 13);
    font-weight: bold;
    color: var(--infoColor);
}
@media only screen and (max-width:1215px){
    .formInfoBox .rebbox{
        max-width: 100%;
        margin-top: 2.4rem;
        padding: 1.5rem 1.8rem 2.8rem;
    }
    .formInfoBox .rebbox .redInner{
        display: block;
    }
    .formInfoBox .rebbox .red_left{
        display:block;
        padding: 0;
        text-align: center;
    }
    .formInfoBox .rebbox .lefttxt{
        font-size: var(--spFontSize15);
        line-height: calc(25 / 15);
    }
    .formInfoBox .rebbox .red_right{
        width: 100%;
        margin-top: 1rem;
        text-align: left;
    }
    .formInfoBox .rebbox .righttxt{
        font-size: var(--spFontSize11);
        line-height: calc(20 / 11);
    }
}

.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 / 3.2rem auto no-repeat,var(--greenColor)!important;
    font-size: 0!important;
}