@charset "utf-8";

/*------------------------------------------------------------
	エントリー(多段階)
------------------------------------------------------------*/

#form table,
#form input,
#form textarea,
#form select,
#form option,
#form button,
#form dl,
#form dt,
#form dd,
#form ul,
#form li,
#form p,
#form a,
#form span,
#form label,
#form h1,
#form h2,
#form h3,
#form h4,
#form h5,
#form h6 {
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

body#entry-index #gHeader {
    height: 84px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

body#entry-index #gHeader h2.logo {
    margin-top: 18px;
    margin-bottom: 0;
    width: 262px;
    height: 25px;
}

body#entry-index #gFooter {
    margin-top: 35px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

body#entry-index #main {
    margin: 0;
    padding-top: 20px;
    width: auto;
    border-top: 1px solid #E0E0E0;
}

body.singleColumn {
    width: 940px;
}

.job {
    margin-bottom: 20px;
    padding: 12px 30px;
    background: #FDF2E1;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-justify-content: center;
    justify-content: center;
}

.job dt {
    width: 150px;
    font-size: 16px;
    font-weight: bold;
}

.job dd {
    width: calc(100% - 150px);
    font-size: 16px;
}

#form {
    margin: 0 auto 35px;
    width: 730px;
    border: 1px solid #186EBC;
    -webkit-border-radius: 4px;
    border-radius: 4px;
}

#form .section {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 30px 130px;
    min-height: 670px;
    position: relative;
    overflow: hidden;
    text-align: center;
}

#form .section .stepStatus {
    margin: 0 auto 20px;
    width: 525px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

#form .section .stepStatus li {
    padding: 4px 0 4px 15px;
    width: 160px;
    background: #DAD8DA;
    position: relative;
    color: #FFF;
    font-size: 16px;
}

#form .section .stepStatus li:after {
    content: "";
    width: 24px;
    height: 24px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    background: #DAD8DA;
    position: absolute;
    top: 4px;
    right: -14px;
    z-index: 10;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

#form .section .stepStatus li:last-child:after {
    content: none;
}

#form .section .stepStatus li.active,
#form .section .stepStatus li.active:after {
    background: #186EBC;
}

#form .section .stepStatus li.finished,
#form .section .stepStatus li.finished:after {
    background: #67A8E1;
}

#form .section .stepArea {
    margin-left: -265px;
    width: 530px;
    background: #FFF;
    position: absolute;
    top: 100px;
    left: 50%;
    text-align: left;
    -webkit-transform: translate(940px);
    -moz-transform: translate(940px);
    transform: translate(940px);
    -webkit-transition: transform .5s;
    -moz-transition: transform .5s;
    transition: transform .5s;
}

#form .section .stepArea.active {
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    transform: translate(0);
}

#form .section .stepArea.before {
    -webkit-transform: translate(-940px);
    -moz-transform: translate(-940px);
    transform: translate(-940px);
}

#form .section .stepArea .input,
#form .section .stepArea .subInput {
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    color: #333;
}

#form .section .stepArea .input:not(:last-child),
#form .section .stepArea .subInput:not(:last-child) {
    margin-bottom: 10px;
}

#form .section .stepArea .input.license {
    -webkit-align-items: start;
    align-items: start;
    margin-top: 30px;
}

#form .section .stepArea .input.license .checkList li {
    width: 49%;
    display: inline-block;
    margin-bottom: 10px;
}

#form .section .stepArea .input.license .checkList li.license_other {
    display: none;
    width: 100%;
}

#form .section .stepArea .input.license .checkList li.license_other textarea {
    resize: vertical;
    width: 376px;
    max-height: 160px;
    line-height: 1.4;
    font-size: 1.6rem;
}

#form .section .stepArea .input dt {
    width: 154px;
    font-size: 18px;
}

#form .section .stepArea .input dd {
    width: calc(100% - 154px);
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    font-size: 18px;
}

#form .section .stepArea .input dd.pass:after {
    content: "";
    width: 18px;
    height: 18px;
    background: url(/mechanic/lp/p/img/icon_ok.png) no-repeat;
    position: absolute;
    top: 15px;
    right: -28px;
    z-index: 10;
}

#form .section .stepArea .input.license dd.pass:after,
#form .section .stepArea .input.mechanic_experience dd.pass:after{
    top: 3px;
}

#form .section .stepArea .input dd.pass.direct:after {
    top: 65px;
}

#form .section .stepArea .input dd.career_company .comment {
    width: 230px;
    display: inline-block;
    position: relative;
    font-size: 16px;
    line-height: 1.4;
    top: -9px;
    left: 47px;
}

#form .section .stepArea .input dd.pass.career_company:after {
    top: 15px;
    right: -40px;
}

#form .section .stepArea .input dd.career_company span {
    position: relative;
    top: -10px;
}

#form .section .stepArea .input dd.pass.direct .check:after {
    right: -40px;
}

#form .section .stepArea .input dd.pass .hopePref,
#form .section .stepArea .input dd.pass .licence {
    color: #CCC;
}

#form .section .stepArea .input dd.pass .hopePref:after,
#form .section .stepArea .input dd.pass .licence:after {
    border-left: 12px solid #ccc;
}

#form .section .stepArea .input dd .errorTxt {
    margin-bottom: 3px;
    width: 100%;
    color: #e2001e;
    font-size: 16px;
    line-height: 1;
    text-align: left;
}

#form .section .stepArea .input dd #fireupForm .errorTxt {
    margin-top: 10px;
}

#form .section .stepArea .input dd input[type="text"],
#form .section .stepArea .input dd input[type="email"],
#form .section .stepArea .input dd input[type="tel"],
#form .section .stepArea .input dd select,
#form .section .stepArea .input dd textarea,
#form .section .stepArea .input dd .selectModal {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 25px 13px 15px;
    width: 100%;
    height: 51px;
    border: 2px solid #CCC;
    background: #FFF;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    position: relative;
    font-size: 18px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1.1;
}

#form .section .stepArea .input dd.error input.sei,
#form .section .stepArea .input dd.error input.mei,
#form .section .stepArea .input dd.error select,
#form .section .stepArea .input dd.error input[type="text"],
#form .section .stepArea .input dd.error input[type="email"],
#form .section .stepArea .input dd.error input[type="tel"] {
    background: #ECC8CC;
}

#form .section .stepArea .input dd.error input[name="_view_hope"] {
    background: #fff;
}

#form .section .stepArea .input dd input[type="text"],
#form .section .stepArea .input dd input[type="email"],
#form .section .stepArea .input dd input[type="tel"] {
    padding: 15px;
}

#form .section .stepArea .input dd textarea {
    padding: 12px;
}

#form .section .stepArea .input dd .selectModal {
    padding: 10px 40px 10px 15px;
    width: 134px;
    height: 51px;
    line-height: 1.5;
    cursor: pointer;
}

#form .section .stepArea .input dd .selectModal:after {
    content: "";
    margin-top: -8px;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #666666;
    position: absolute;
    top: 50%;
    right: 20px;
}

#form .section .stepArea .input dd.error .selectModal {
    background: #ecc8cc;
}

#form .section .stepArea .input dd .textLabel {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

#form .section .stepArea .input dd .textLabel:after {
    content: "";
    margin-top: -8px;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #666666;
    position: absolute;
    top: 50%;
    right: 21px;
}

#form .section .stepArea .input dd .textLabel .selectPref {
    width: 134px;
    background: transparent;
    cursor: pointer;
}

#form .section .stepArea .input dd.error .textLabel .selectPref {
    background: #ecc8cc;
}

#form .section .stepArea .input dd input.viewTxt {
    margin-left: 10px;
    padding: 0;
    border: none;
    width: calc(100% - 144px);
    font-size: 12px;
}

#form .section .stepArea .input dd #number_of_company {
    margin-right: 10px;
    padding: 10px 40px 10px 15px;
    width: 90px;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#form .section .stepArea .input dd.error #number_of_company {
    background: #ecc8cc;
}

#form .section .stepArea .input dd .selectLabel.career_period {
    width: 150px;
}

#form .section .stepArea .input dd .selectLabel.career_period:after {
    right: 10px;
}

#form .section .stepArea .input dd .selectLabel {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

#form .section .stepArea .input.job_category {
    display: block;
}

#form .section .stepArea .input.job_category dt {
    margin-bottom: 10px;
}

#form .section .stepArea .input.job_category dd {
    display: block;
    width: 100%;
    position: relative;
    margin-bottom: 15px;
}

#form .section .stepArea .input.job_category dd .bottom_arrow {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 13px 0 13px;
    border-color: #184DA3 transparent transparent transparent;
    position: relative;
    left: 0;
    right: 0;
    top: 8px;
    margin: auto;
}

#form .section .stepArea .input.job_category dd .selectLabel {
    display: block;
}

#form .section .stepArea .input.job_category dd select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #FFF;
}

#form .section .stepArea .input.job_category dd.error select {
    background: #ecc8cc;
}

#form .section .stepArea .input.experience {
    display: block;
}

#form .section .stepArea .input.experience dd {
    width: 100%;
    display: block;
}

#form .section .stepArea .input.experience dd .check {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 10px;
    position: relative;
    font-size: 18px;
}

#form .section .stepArea .input.experience dd .check label {
    cursor: pointer;
}

#form .section .stepArea .input.experience dd .check input[type="radio"] {
    display: none;
}

#form .section .stepArea .input.experience dd .check .txt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 40px 10px 45px;
    width: 100%;
    border: 2px solid #CCC;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: block;
    position: relative;
}

#form .section .stepArea .input.experience dd .check .txt:before {
    content: "";
    margin-top: -9px;
    width: 14px;
    height: 14px;
    border: 1px solid #ccc;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    position: absolute;
    top: 50%;
    left: 20px;
}

#form .section .stepArea .input.experience dd .check .txt:after {
    content: "";
    margin-top: -4px;
    width: 6px;
    height: 6px;
    background: #186EBC;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    left: 25px;
    display: none;
}

#form .section .stepArea .input.experience dd .check input:checked+.txt:after {
    display: block;
}

#form .section .stepArea .input.experience dd #fireupForm input {
    display: none;
}

#form .section .stepArea .input.experience dd #fireupForm .inputGroup {
    margin-top: 10px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

#form .section .stepArea .input.experience dd #fireupForm .inputGroup .btn {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
}

#form .section .stepArea .input.experience dd #fireupForm .inputGroup .btn span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 120px;
    height: 34px;
    border: 2px solid #CCC;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative;
    font-size: 13px;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    -moz-transition: opacity .3s;
    transition: opacity .3s;
}

#form .section .stepArea .input.experience dd #fireupForm .inputGroup .btn:hover span {
    opacity: 0.7;
}

#form .section .stepArea .input.experience dd #fireupForm .inputGroup .txt {
    margin-left: 10px;
    font-size: 13px;
    cursor: pointer;
}

#form .section .stepArea .input.experience dd .check #direct:checked+.txt {
    -webkit-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
}

#form .section .stepArea .input.experience dd #directForm textarea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px 20px;
    width: 100%;
    min-height: 180px;
    max-height: 250px;
    border: 2px solid #CCC;
    border-top: none;
    -webkit-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    font-size: 16px;
    line-height: 1.5;
    resize: vertical;
}

#form .section .stepArea .input.experience dd #fireupForm,
#form .section .stepArea .input.experience dd #directForm {
    display: none;
}

#form .section .stepArea .input.experience dd #directForm {
    padding: 15px 10px;
    border: 2px solid #ccc;
    border-top: none;
    border-radius: 0 0 4px 4px;
}

#form .section .stepArea .input.experience dd #directForm:after {
    content: "";
    overflow: hidden;
    clear: both;
}

#form .section .stepArea .input.experience dd #directForm .templateAdd {
    float: left;
    font-size: 13px;
}

#form .section .stepArea .input.experience dd #directForm .templateAdd:hover {
    text-decoration: none;
}

#form .section .stepArea .input.experience dd #directForm .textCount {
    float: right;
    font-size: 13px;
}

#form .section .stepArea .input.experience dd #directForm .textCount .over {
    color: #ff6600;
    font-weight: bold;
}

#form .section .stepArea.profile .input dd {
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

#form .section .stepArea .input dd #fNameSei,
#form .section .stepArea .input dd #fNameMei,
#form .section .stepArea .input dd #fNameKanaSei,
#form .section .stepArea .input dd #fNameKanaMei {
    width: 183px;
}

#form .section .stepArea .input dd #fNameMei,
#form .section .stepArea .input dd #fNameKanaMei {
    margin-left: auto;
}

#form .section .stepArea .input dd select[name="_birth_y"],
#form .section .stepArea .input dd select[name="_birth_m"],
#form .section .stepArea .input dd select[name="_birth_d"] {
    margin-right: 5px;
    padding: 10px 25px 15px 15px;
    width: 95px;
    background: url(/mechanic/lp/p/img/icon_arrow.png) no-repeat right center;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#form .section .stepArea .input dd.error select[name="_birth_y"],
#form .section .stepArea .input dd.error select[name="_birth_m"],
#form .section .stepArea .input dd.error select[name="_birth_d"] {
    background-color: #ecc8cc;
}

#form .section .panelArea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    width: 668px;
    position: absolute;
    bottom: 30px;
}

#form .section .panelArea .agree {
    margin-bottom: 10px;
    display: none;
    font-size: 16px;
    text-align: center;
}

#form .section .panelArea .agree a {
    color: #06c;
    text-decoration: underline;
}

#form .section .panelArea .agree a:hover {
    color: #f60;
    text-decoration: none;
}

#form .section .panelArea .btnArea {
    width: 100%;
    position: relative;
}

#form .section .panelArea .btnArea button {
    margin: 0 auto;
    padding: 0;
    background: none;
    border: none;
}

#form .section .panelArea .btnArea button span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 310px;
    height: 60px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative;
    color: #fff;
    font-size: 26px;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    -moz-transition: opacity .3s;
    transition: opacity .3s;
}

#form .section .panelArea .btnArea button:hover span {
    opacity: 0.7;
}

#form .section .panelArea .btnArea button[disabled] span {
    background: #d8d8d8;
    border: 2px solid #CCC;
    cursor: not-allowed;
}

#form .section .panelArea .btnArea button[disabled] span:before,
#form .section .panelArea .btnArea button[disabled] span:after {
    display: none;
}

#form .section .panelArea .btnArea button[disabled]:hover span {
    opacity: 1;
}

#form .section .panelArea .btnArea .prev {
    display: none;
    position: absolute;
    top: 12px;
    left: 0;
}

#form .section .panelArea .btnArea .prev span {
    padding-left: 28px;
    width: 120px;
    height: 37px;
    background: #d8d8d8;
    border: 2px solid #CCC;
    color: #666;
    font-size: 18px;
}

#form .section .panelArea .btnArea .prev span:before {
    content: "";
    margin-top: -6px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #666;
    border-left: 2px solid #666;
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#form .section .panelArea .btnArea .prev span:after {
    content: "";
    margin-top: -1px;
    width: 14px;
    height: 2px;
    background: #666;
    position: absolute;
    top: 50%;
    left: 20px;
}

#form .section .panelArea .btnArea .next span {
    background: #186EBC;
}

#form .section .panelArea .btnArea .send {
    display: none;
}

#form .section .panelArea .btnArea .send span {
    background: #EF5214;
}

#form .section .panelArea .btnArea .next span:before,
#form .section .panelArea .btnArea .send span:before {
    content: "";
    margin-top: -6px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

#form .section .panelArea .btnArea .next span:after,
#form .section .panelArea .btnArea .send span:after {
    content: "";
    margin-top: -1px;
    width: 14px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 20px;
}

#form .section .panelArea .rule {
    position: absolute;
    bottom: 20px;
    right: 90px;
}

#form .section .panelArea .rule a {
    color: #06C;
    font-size: 15px;
    text-decoration: underline;
}

#form .section .panelArea .rule a:hover {
    color: #f60;
    text-decoration: none;
}

#form .section .panelArea .pMark {
    position: absolute;
    bottom: -5px;
    right: 0;
}

#form .section .stepArea .input dd select::-ms-expand {
    display: none;
}


/* placeholder */

:placeholder-shown {
    color: #999999;
}

::-webkit-input-placeholder {
    color: #999999;
}

:-moz-placeholder {
    color: #999999;
    opacity: 1;
}

::-moz-placeholder {
    color: #999999;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #999999;
}

#form .modalArea {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    transition: opacity 0.5s;
}

#form .modalArea.active {
    opacity: 1;
}

#form .modalArea .inner {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px;
    width: 900px;
    background: #FFF;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    position: relative;
}

#form .modalArea .inner .modalTtl {
    margin-right: 40px;
    margin-bottom: 10px;
    padding-bottom: 15px;
    border-bottom: 1px solid #186EBC;
    color: #186EBC;
    font-size: 18px;
    font-weight: bold;
    text-align: left;
}

#form .modalArea .inner .scroll {
    padding-top: 20px;
    padding-right: 40px;
    height: 410px;
    -ms-overflow-y: auto;
    overflow-y: auto;
}

#form .modalArea .inner .unit {
    margin-bottom: 20px;
    border-bottom: 1px solid #CCC;
}

#form .modalArea .inner .unit dt {
    margin-bottom: 20px;
    padding-left: 5px;
    border-left: 4px solid #186EBC;
    font-size: 16px;
    font-weight: bold;
    text-align: left;
    line-height: 1.1;
}

#form .modalArea .inner .unit dd {
    margin-bottom: 10px;
}

#form .modalArea .inner .unit dd .radioList,
#form .modalArea .inner .unit dd .checkList,
#form .stepArea .input .checkList,
#form .stepArea .input .radioList{
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

#form .modalArea .inner .unit dd .radioList li,
#form .modalArea .inner .unit dd .checkList li,
#form .stepArea .input .checkList li,
#form .stepArea .input .radioList li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 40px;
    margin-bottom: 10px;
    position: relative;
    font-size: 16px;
    text-align: left;
}

#form .stepArea .input .checkList li {
    margin-right: 0;
    font-size: 18px;
}

#form .modalArea .inner .unit dd .radioList li label,
#form .modalArea .inner .unit dd .checkList li label,
#form .stepArea .input .checkList li label,
#form .stepArea .input .radioList li label {
    cursor: pointer;
}

#form .modalArea .inner .unit dd .radioList li input[type="radio"],
#form .modalArea .inner .unit dd .checkList li input[type="checkbox"],
#form .stepArea .input .checkList li input[type="checkbox"],
#form .stepArea .input .radioList li input[type="radio"]{
    display: none;
}

#form .modalArea .inner .unit dd .radioList li .txt,
#form .modalArea .inner .unit dd .checkList li .txt,
#form .stepArea .input .checkList li .txt,
#form .stepArea .input .radioList li .txt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 20px;
    display: inline-block;
    position: relative;
    line-height: 1.5;
}

#form .modalArea .inner .unit dd .radioList li .txt:before,
#form .modalArea .inner .unit dd .checkList li .txt:before,
#form .stepArea .input .checkList li .txt:before,
#form .stepArea .input .radioList li .txt:before{
    content: "";
    margin-top: -9px;
    width: 16px;
    height: 16px;
    border: 1px solid #ccc;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    position: absolute;
    top: 50%;
    left: 0;
}

#form .modalArea .inner .unit dd .checkList li .txt:before,
#form .stepArea .input .checkList li .txt:before {
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

#form .modalArea .inner .unit dd .radioList li .txt:after,
#form .modalArea .inner .unit dd .checkList li .txt:after,
#form .stepArea .input .checkList li .txt:after,
#form .stepArea .input .radioList li .txt:after{
    content: "";
    margin-top: -4px;
    width: 6px;
    height: 6px;
    background: #186EBC;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    left: 5px;
    display: none;
}

#form .modalArea .inner .unit dd .checkList li .txt:after,
#form .stepArea .input .checkList li .txt:after {
    width: 4px;
    height: 9px;
    background: none;
    border-bottom: 2px solid #186EBC;
    border-right: 2px solid #186EBC;
    -webkit-border-radius: 0;
    border-radius: 0;
    position: absolute;
    top: 11px;
    left: 6px;
    -webkit-transform: rotate(40deg);
    -moz-transform: rotate(40deg);
    transform: rotate(40deg);
}

#form .modalArea .inner .unit dd .radioList li input:checked+.txt:after,
#form .modalArea .inner .unit dd .checkList li input:checked+.txt:after,
#form .stepArea .input .checkList li input:checked+.txt:after,
#form .stepArea .input .radioList li input:checked+.txt:after{
    display: block;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li {
    margin-right: 0;
    width: 33.3%;
    -webkit-align-self: flex-start;
    align-self: flex-start;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li .txt:before {
    margin-top: 0;
    top: 2px;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li .txt:after {
    margin-top: 0;
    top: 3px;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li.const {
    width: 66.6%;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li.etc {
    width: 100%;
}

#form .modalArea .inner .unit dd .checkList li input[type="text"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 5px;
    padding: 5px;
    width: 440px;
    border: 1px solid #ccc;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    font-size: 13px;
}

#form .modalArea#licenceModal .inner .unit dd .checkList li.etc input[type="text"] {
    width: 700px;
}

#form .modalArea .inner .tabArea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: 230px;
    position: relative;
}

#form .modalArea .inner .tabArea dl {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 40px;
    width: 100%;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: absolute;
    top: 0;
    left: 0;
}

#form .modalArea .inner .tabArea dl dt {
    width: 300px;
    position: relative;
    z-index: 10;
    text-align: left;
}

#form .modalArea .inner .tabArea dl:nth-of-type(2) dt {
    margin-top: 60px;
}

#form .modalArea .inner .tabArea dl:nth-of-type(3) dt {
    margin-top: 120px;
}

#form .modalArea .inner .tabArea dl:nth-of-type(4) dt {
    margin-top: 180px;
}

#form .modalArea .inner .tabArea dl dt label {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    background: #FFF;
    border: 2px solid #ccc;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    font-size: 18px;
    cursor: pointer;
}

#form .modalArea .inner .tabArea dl dt input[type="radio"] {
    display: none;
}

#form .modalArea .inner .tabArea dl dt .txt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding-left: 45px;
    display: inline-block;
    position: relative;
}

#form .modalArea .inner .tabArea dl dt .txt:before {
    content: "";
    margin-top: -9px;
    width: 14px;
    height: 14px;
    border: 1px solid #ccc;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    position: absolute;
    top: 50%;
    left: 20px;
}

#form .modalArea .inner .tabArea dl dt .txt:after {
    content: "";
    margin-top: -4px;
    width: 6px;
    height: 6px;
    background: #186EBC;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    left: 25px;
    display: none;
}

#form .modalArea .inner .tabArea dl dt input:checked+.txt:after {
    display: block;
}

#form .modalArea .inner .tabArea dl dd {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px;
    width: 480px;
    height: 230px;
    background: #FFF;
    border: 2px solid #ccc;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    z-index: 0;
    opacity: 0;
    font-size: 16px;
    text-align: left;
    -webkit-transition: .5s;
    -moz-transition: .5s;
    transition: .5s;
}

#form .modalArea .inner .tabArea dl.active dd {
    z-index: 10;
    opacity: 1;
}

#form .modalArea .inner .btn {
    margin: 20px auto 0;
    padding: 0;
    width: 400px;
    height: 60px;
    background: none;
    border: none;
    display: block;
}

#form .modalArea .inner .btn span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 400px;
    height: 60px;
    background: #FFA600;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: relative;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    -moz-transition: opacity .3s;
    transition: opacity .3s;
}

#form .modalArea .inner .btn:hover span {
    opacity: 0.7;
}

#form .modalArea .inner .btn[disabled] span {
    background: #d8d8d8;
    border: 2px solid #CCC;
    cursor: not-allowed;
}

#form .modalArea .inner .btn[disabled]:hover span {
    opacity: 1;
}

#form .modalArea .inner .closeIcon {
    padding: 5px;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 25px;
    right: 25px;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    -moz-transition: opacity .3s;
    transition: opacity .3s;
}

#form .modalArea .inner .closeIcon:hover {
    opacity: 0.7;
}

#form .modalArea .inner .closeIcon:before,
#form .modalArea .inner .closeIcon:after {
    content: "";
    width: 10px;
    height: 1px;
    background: #333;
    position: absolute;
    top: 50%;
    left: 0;
}

#form .modalArea .inner .closeIcon:before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

#form .modalArea .inner .closeIcon:after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 紹介LP 紹介者名 */
#form .section.introduction {
    min-height: 800px;
}

#form .section.introduction .first .input dt {
    width: 210px;
}

#form .section.introduction .first .input .checkList {
    justify-content: space-between;
}

.optional {
    margin: 0 auto 25px !important;
    padding: 20px 35px 10px 20px;
    width: 525px;
    background-color: #F7F7F7;
    position: relative;
}

.optional::before {
    border-bottom: 40px solid transparent;
    border-right: 40px solid #DDD;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    content: "";
}

.optional::after {
    display: block;
    position: absolute;	
    top: 4px;
    right: 2px;
    color: #333;
    font-size: 12px;
    z-index: 11;
    transform: rotate(45deg);
    content: "任意";
}

#form .section .stepArea .optional dd.pass:after {
    top: 25px;
    right: -66px;
}

#form .section .stepArea.first .optional dt {
    width: 175px;
    font-size: 1.6rem;
    line-height: 1.625;
}

.optional input::placeholder {
    letter-spacing: -0.5px;
}

.optional input:-ms-input-placeholder {
    letter-spacing: -0.5px;
}

.optionalCopy {
    margin-top: 5px;
    color: #888;
    font-size: 1.2rem;
    line-height: 1.33;
}

#form .section .stepArea .mechanic_experience:not(:last-child) {
  margin-bottom: 30px;
}

#form .section .stepArea .mechanic_experience.on {
	display: flex;
}

#form .section .stepArea .mechanic_experience.off {
	display: none;
}

#form .section .stepArea .mechanic_experience dd .textLabel {
  width: 170px;
}