/*common*/
span.red{
    color: red;
}

.l-main__under-page .content > .heading h2{
    margin-left: 0;
}

form .disagree button{
    width: 100%;
    border: solid 2px #F8F8F8;
    background-color: #F8F8F8;
    color: #818181;
}
form .agree button{
    width: 100%;
    border: solid 2px black;
    background-color: white;
}


/*registration_top*/

.l-main__under-page .content .agreement{
    line-height: 1.5;
}

.l-main__under-page .content .agreement > .heading{
    text-align: left;
    font-size: 1.5rem;
    margin: 0;
 }

.l-main__under-page .content .agreement .text{
    width:100%;
    height:15rem;
    border: solid 1px #666;
}

.l-main__under-page .content .agreement .text .agreement-wrapper{
    overflow-y:scroll;
    height: 100%;
}
.l-main__under-page .content .agreement .text .agreement-wrapper p:not(:last-child){
    margin-bottom: 2rem;
}

.agreement ::-webkit-scrollbar{
    width: 10px;
}
.agreement ::-webkit-scrollbar-track{
    background: rgba(255,255,255,0);
}
.agreement ::-webkit-scrollbar-thumb{
    background: #ccc;
    border-radius: 10px;
    box-shadow: inset 0 0 0 2px #fff;
}

.l-main__under-page .content .agreement form{
    max-width: 600px;
    margin: 3rem auto 0;
}


/*step1*/

.content .provisional-registration form input[type="email"]{
    height: 3rem;
}

.content .provisional-registration form input[type="submit"]{
    width: 100%;
    max-width: 250px;
    border: solid 2px black;
    background-color: white;
}


/*step2_アドレス確認*/

.confirm-mall-address form{
    margin: auto;
    max-width: 600px;
    line-height: 1.5;
}
.content .confirm-mall-address .is-registered button{
    width: 100%;
    max-width: 300px;
    border: solid 2px #F8F8F8;
    background-color: #F8F8F8;
    color: #818181;
}
.content .confirm-mall-address .forget-password{
    text-decoration: underline;
}
.content .confirm-mall-address .forget-password:hover{
    text-decoration: none;
    opacity: 0.8;
}


/*step2_送信完了*/

.content .mail-sending form input[type="button"]{
    display: block;
    width: 100%;
    max-width: 300px;
    border: solid 2px black;
    background-color: white;
}


/*step3_情報入力*/

.content .input-field{
    background-color: #F8F8F8;
    padding: 3rem 1.5rem;
}
@media screen and (min-width:640px) {
    .content .input-field{
        padding: 4rem;
    }
}
#postal-input{
    min-width:250px !important;
}

.content form .input-field input[type="text"],
.content form .input-field input[type="password"],
.content form .input-field input[type="tel"],
.l-main__under-page .content form.input-field-wrapper .input-field div select,
.content form .input-field .search-address {
    height: 3rem;
}
.content form .input-field .search-address{
    padding: 0 2rem;
    box-sizing: border-box;
    border: solid 2px black;
    background-color: white;
}
.content form .input-field .text{
    display: flex;
    align-items: center;
}
.content form .input-field .input-name span{
    width: 3rem;
}
.content form .input-field button{
    display: block;
    width: 100%;
    max-width: 300px;
    border: solid 2px black;
    background-color: white;
}
.search-address{
    width: 170px !important;
}

.new_company_name_caution{
    font-size: 0.8rem;
    position: relative;
    top: 5px;
}

    /*step3_入力確認*/

.content .confirm-input .input-info{
    max-width: 600px;
    width: 100%;
}

.content .confirm-input .input-info > div :nth-child(odd){
    font-weight: bold;
}
@media screen and (max-width:639px) {
    .content .confirm-input .input-info > div :nth-child(even){
        margin-left: 3rem;
        margin-bottom: 1rem;
    }
}

.content .confirm-input form{
    max-width: 600px;
    line-height: 1.5;
}


/*step4*/

.content .completed-registration div button{
    display: block;
    width: 100%;
    max-width: 300px;
    line-height: 1.5;
    border: solid 2px black;
    background-color: white;
}


/*アカウント管理*/

.content .account-admin .account-info{
    max-width: 600px;
    width: 100%;
}

.content .account-admin .account-info > div :nth-child(odd){
    font-weight: bold;
}
@media screen and (max-width:639px) {
    .content .account-admin .account-info > div :nth-child(even){
        margin-left: 3rem;
        margin-bottom: 1rem;
    }
}

.content .account-admin div button{
    display: block;
    width: 100%;
    max-width: 300px;
    line-height: 1.5;
    border: solid 2px black;
    background-color: white;
}


/*アカウント情報修正*/

.content .input-field-account{
    background-color: #F8F8F8;
    padding: 3rem 1.5rem;
}
@media screen and (min-width:640px) {
    .content .input-field-account{
        padding: 4rem;
    }
}

.content form .input-field-account input[type="text"],
.content form .input-field-account input[type="password"],
.content form .input-field-account input[type="tel"],
.l-main__under-page .content form.input-field-account-wrapper .input-field-account div select,
.content form .input-field-account .search-address {
    height: 3rem;
}
.content form .input-field-account .search-address{
    padding: 0 2rem;
    box-sizing: border-box;
    border: solid 2px black;
    background-color: white;
}
.content form .input-field-account .text{
    display: flex;
    align-items: center;
}
.content form .input-field-account .input-name span{
    width: 3rem;
}
.content form .input-field-account button{
    display: block;
    width: 100%;
    max-width: 300px;
    line-height: 1.5;
    border: solid 2px black;
    background-color: white;
}


/*アカウント情報入力確認*/

.content .confirm-account-info-input .input-info{
    max-width: 600px;
    width: 100%;
}

.content .confirm-account-info-input .input-info > div :nth-child(odd){
    font-weight: bold;
}
@media screen and (max-width:639px) {
    .content .confirm-account-info-input .input-info > div :nth-child(even){
        margin-left: 3rem;
        margin-bottom: 1rem;
    }
}

.content .confirm-account-info-input form {
    max-width: 600px;
    line-height: 1.5;
}