/* ボタンエリア(中央寄せ) */
.btn-area {
    margin-top: 100px;
    display: flex;
    justify-content: space-around;
}

.add-btn-area {
    margin: 30px 0;
    display: flex;
    justify-content: center;
}

.lead-area-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 30px;
    margin: 45px 0;
}



/* 2カラム*/
.colum-double {
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
    width: 100%;
}
.colum-double > div {
    margin-right: 20px;
}
.colum-double > div:last-child {
    margin-right: 0;
}

/* label付きinput */
.area-input-half {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
}
.area-input-half label {
    width: 40px;
    min-width: fit-content;
    margin-right: 14px;
    text-align: right;
}
.area-input-half > div {
    width: calc(100% - 80px);
}

/* label付きinput 複数用 */
.area-input-multiple {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
}

/** ローディングスピナー最上面に表示するための設定 */
#loadingSpinnerOverlay { 
    position: fixed;
    top: 0;
    z-index: 2000;
    width: 100%;
    height:100%;
    display: none;
    background: rgba(0,0,0,0.6);
}
    
/** ローディングスピナーの位置設定 */
.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;  
}
  
/** ローディングスピナーのレイアウト設定 */
.spinner-content {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;

    -webkit-animation: loader 0.8s infinite linear;
    -moz-animation: loader 0.8s infinite linear;
    animation: loader 0.8s infinite linear;
}

@-webkit-keyframes loader {
    0% {
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg); 
        transform: rotate(0deg); 
    }
    100% {
        -moz-transform: rotate(359deg);
        -webkit-transform: rotate(359deg); 
        transform: rotate(359deg); 
    }
}

@keyframes loader {
    0% {
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg); 
        transform: rotate(0deg); 
    }
    100% {
        -moz-transform: rotate(359deg);
        -webkit-transform: rotate(359deg); 
        transform: rotate(359deg); 
    }
}

.area-input-multiple .item-name {
    margin-right: 14px;
    text-align: right;
    width: 40px;
}
.area-input-multiple .caption {
    margin: 0 5px;
}
.area-input-multiple:not(.phone-number) .caption {
    margin: 0 24px 0 8px;
}

.area-input-multiple input {
    width: 100px;
}

.area-input-multiple .birthday-select{
    width: 220px;
}

.area-input-multiple .account-opening-birthday-select {
    width: 120px;
    margin-right: 20px;
}

.form-item-wrap {
    margin-bottom: 40px;
}


/* タブレット */
@media screen and (max-width: 1112px) {
    .lead-area-wrap {
        padding: 0 10px;
    }
}

/* SP */
@media screen and (max-width: 667px) {
    .btn-area {
        margin-top: 60px;
    }
    .colum-double {
        display: block;
    }
    .colum-double > div {
        margin-bottom: 10px;
    }
    .colum-double > div:last-child {
        margin-bottom: 0;
    }
    .lead-area-wrap {
        padding: 0;
        margin: 20px 0 45px;
    }
    .block-sp {
        margin-top: 2px;
        display: block;
    }
    .block-sp-exp {
        margin-top: 2px;
        display: block;
    }
}