/* ---------- Layout ---------- */
.mktoForm.mktoHasWidth.mktoLayoutAbove,
.mktoForm.mktoHasWidth.mktoLayoutLeft {
    color: rgb(89, 87, 87) !important;
    width: 100% !important;
}

.mktoForm * {
    font-family: "BIZ UDPGothic", sans-serif !important;
}

.mktoFormRow {
    margin-left: 0 !important;
}

.mktoForm .mktoFormCol {
    width: 100%;
}

.mktoForm .mktoOffset {
    display: none;
}

.mktoForm .mktoFieldWrap {
    width: 100%;
    display: flex;
    flex-direction: column;
}

/* ---------- Label ---------- */
.mktoForm.mktoLayoutAbove .mktoLabel {
    width: 100% !important;
    padding-bottom: 5px !important;
}

.mktoForm .mktoRequiredField label.mktoLabel {
    font-weight: bold;
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    gap: 5px;
    padding: 5px 0;
}

.mktoForm .mktoAsterix {
    color: #ff7631 !important;
    font-size: 20px;
}

.mktoForm .mktoRadioList>label,
.mktoForm .mktoCheckboxList>label {
    line-height: 2.2em !important;
    margin-left: 2.5em !important;
}

/* ---------- Input ---------- */
.mktoForm input[type=text],
.mktoForm input[type=url],
.mktoForm input[type=email],
.mktoForm input[type=tel],
.mktoForm input[type=number],
.mktoForm input[type=date],
.mktoForm textarea.mktoField,
.mktoForm select.mktoField,
.mktoForm textarea,
.mktoForm select {
    width: 100% !important;
    border-radius: 4px !important;
    border: 1px solid rgb(229, 229, 229) !important;
    box-sizing: border-box !important;
    font-size: 1.4rem !important;
    line-height: 1.8em !important;
    letter-spacing: 0.04em !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
}

@media only screen and (max-width: 480px) {

    .mktoForm input[type=url],
    .mktoForm input[type=text],
    .mktoForm input[type=date],
    .mktoForm input[type=tel],
    .mktoForm input[type=email],
    .mktoForm input[type=number],
    .mktoForm textarea.mktoField,
    .mktoForm select.mktoField {
        height: auto !important;
    }
}

@media only screen and (max-width: 480px) {
    .mktoForm * {
        padding: 0 !important;
    }

    .mktoForm .mktoRequiredField label.mktoLabel {
        padding: 5px 0 !important;
    }

    .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
        padding: 0.4em 1em !important;
    }
}

.mktoForm input[type=text]:focus,
.mktoForm input[type=url]:focus,
.mktoForm input[type=email]:focus,
.mktoForm input[type=tel]:focus,
.mktoForm input[type=number]:focus,
.mktoForm input[type=date]:focus,
.mktoForm select:focus,
.mktoForm textarea:focus,
.mktoForm.mktoLayoutAbove .mktoField:focus,
input[type=checkbox]:focus,
input[type=radio]:focus,
.mktoForm input[type=text]:active,
.mktoForm input[type=url]:active,
.mktoForm input[type=email]:active,
.mktoForm input[type=tel]:active,
.mktoForm input[type=number]:active,
.mktoForm input[type=date]:active,
.mktoForm select:active,
.mktoForm textarea:active,
.mktoForm.mktoLayoutAbove .mktoField:active {
    border: 1.5px solid #0762DC !important;
    outline: none;
}

/* ---------- Radio / Checkbox ---------- */
.mktoForm .mktoRadioList,
.mktoForm .mktoCheckboxList {
    width: 100% !important;
}

.mktoForm .mktoRadioList>input,
.mktoForm .mktoCheckboxList>input {
    width: 18px;
    height: 18px;
    min-height: 28px;
}

/* ---------- HTML Text / Link ---------- */
.mktoHtmlText.mktoHasWidth {
    width: 100% !important;
}

.mktoFormRow>.mktoFormCol>.mktoFieldWrap>div:has(a):first-child {
    margin-top: 40px;
}

/* ---------- Personal information checkbox ---------- */
.mktoFieldDescriptor.mktoFormCol:has(#Lblpersonal_infomation) {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mktoFieldWrap.mktoRequiredField:has(#Lblpersonal_infomation) {
    display: inline-flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    gap: 10px !important;
    width: auto !important;
}

.mktoFieldWrap.mktoRequiredField:has(#Lblpersonal_infomation) .mktoLabel {
    width: auto !important;
    white-space: nowrap;
}

.mktoFieldWrap.mktoRequiredField:has(#Lblpersonal_infomation) input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
}

.mktoFieldWrap.mktoRequiredField:has(#Lblpersonal_infomation) .mktoCheckboxList {
    width: 20px !important;
}

.mktoFieldDescriptor:has(#Lblpersonal_infomation) .mktoOffset,
.mktoFieldDescriptor:has(#Lblpersonal_infomation) .mktoGutter {
    display: none !important;
}

/* ---------- Button ---------- */
#contentForm .mktoButtonRow {
    margin: 0 !important;
    width: 100%;
}

#contentForm .mktoButtonRow span {
    width: 100%;
    display: inline-block;
    margin-left: 0 !important;
}

.mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
    background-color: #ff7631 !important;
    background-image: linear-gradient(to bottom, #ff7631, #ff7631) !important;
    border: 1px solid #ff7631 !important;
    text-shadow: none !important;
    box-shadow: none !important;
    color: white !important;
    border-radius: 4px !important;
    width: 100%;
    position: relative;
}

.mktoForm .mktoButton:after {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuNjAwNzUyIDUuMjA3MDNIMTAuOTMzN1Y2LjQ2NzA1SDAuNjAwNzUyQzAuMjQwMzAxIDYuNDY3MDUgMCA2LjE2NzA1IDAgNS44NjcwNUMwIDUuNTA3MDUgMC4zMDAzNzYgNS4yNjcwNSAwLjYwMDc1MiA1LjI2NzA1VjUuMjA3MDNaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTEuNzc1NiA2LjQwNjU1TDcuMjY5OTcgMTAuOTA2NkM2Ljk2OTU5IDExLjIwNjYgNi41NDkxIDExLjIwNjYgNi4yNDg3MiAxMC45MDY2QzUuOTQ4MzQgMTAuNjA2NiA1Ljk0ODM0IDEwLjE4NjYgNi4yNDg3MiA5Ljg4NjU4TDEwLjI3MzcgNS44NjY1OEw2LjI0ODcyIDEuODQ2NTdDNS45NDgzNCAxLjU0NjU3IDUuOTQ4MzQgMS4xMjY1NiA2LjI0ODcyIDAuODI2NTYyQzYuNTQ5MSAwLjUyNjU2MyA2Ljk2OTU5IDAuNTI2NTYzIDcuMjY5OTcgMC44MjY1NjJMMTEuNzc1NiA1LjMyNjU2QzEyLjA3NiA1LjYyNjU2IDEyLjA3NiA2LjA0NjU3IDExLjc3NTYgNi4zNDY1N1Y2LjQwNjU1WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 16px;
    height: 16px;
    top: 50%;
    right: 32px;
    transform: translateY(-50%);
}

@media only screen and (min-width: 768px) {
    .mktoForm .mktoButton:hover {
        opacity: .7;
    }
}

/* ---------- Error ---------- */
.mktoForm .mktoError .mktoErrorMsg {
    background-color: #e81e61 !important;
    background-image: linear-gradient(#e81e61 43%, #e81e61 100%) !important;
    border: 1px solid #e81e61 !important;
    box-shadow: rgba(0, 0, 0, 0.65) 0 2px 7px, inset #e81e61 0 1px 0 !important;
    text-shadow: #e81e61 0 -1px 0 !important;
}

/* ---------- Responsive: PC (789px+) ---------- */
@media (min-width: 789px) {

    .mktoForm span:has(a) {
        display: flex;
        justify-content: center;
    }

    .mktoForm .mktoFormRow:has(#LblLastName),
    .mktoForm .mktoFormRow:has(#LblFirstName) {
        display: inline-block !important;
        width: 48% !important;
        vertical-align: top;
    }

    .mktoForm .mktoFormRow:has(#LblLastName) {
        margin-right: 4%;
    }

    .mktoForm .mktoFormRow:has(#LblLastName)+.mktoClear {
        display: none !important;
    }

    .mktoForm .mktoFormRow:has(#LblFirstName)+.mktoClear {
        clear: both !important;
    }
}

/* ---------- Responsive: SP (789px以下) ---------- */
@media (max-width: 789px) {
    .mktoHtmlText.mktoHasWidth:has(a) {
        text-align: center !important;
    }

    .mktoFieldDescriptor.mktoFormCol:has(#Lblpersonal_infomation) {
        display: flex !important;
        justify-content: center !important;
    }

    .mktoForm .mktoFieldWrap:has(.mktoCheckboxList),
    .mktoForm .mktoFieldWrap:has(.mktoRadioList) {
        flex-direction: column;
        display: flex;
    }
}