@charset "UTF-8";
body{
    overflow-y: scroll;
}
/** -------- ▼ bootstrap4個別初期化 ▼ ---------- **/
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 ,ul {
    margin-bottom: 0;
}
.form-control.is-valid{
    background-image: none;
}
.form-control,.form-control.is-valid{
    border-radius: 0;
    border: 2px solid #ccc;
}
.form-control.is-valid:focus{
    border-color: #80bdff;
}
.form-control.is-valid:focus{
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
label{
    cursor: pointer;
}

/** ------------------- Datepickerデザイン改修 ---------------------- **/
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
    background: none !important;
    color: #999 !important;
    cursor: default !important;
}

/** ------▼ 制限 ▼----- **/
li{
  color: #333333;
}
input{
    max-width: 500px;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance:textfield;
}
@media (min-width: 576px) {
    .container {
        max-width: 560px;
    }
    
}
@media (min-width: 768px){
    .container {
        max-width: 750px;
    }
}
@media (min-width: 992px) {
    .container {
        max-width: 1280px;
    }
}

input[type="radio"]{
    width: 15px;
    height: 15px;
    background:transparent;
    display: inline-block;
    position:  absolute;
    top: 0;
    bottom:  0;
    margin:  auto;
}
input[type="checkbox"]{
    -webkit-appearance: none;
    width:15px;
    height:15px;
    border:2px solid #19283C;
    border-radius:2px;
    background:transparent;
    opacity:0.5;
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin:  auto;
}
input[type="checkbox"].is-invalid{
    top: 2px;
    bottom: auto;
}
input[type="checkbox"].is-valid:checked{
    top: 2px;
    bottom: auto;
}
input[type="checkbox"]:checked:after{
    z-index: 1;
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    display: block;
    margin-top: -6px;
    width: 5px;
    height: 11px;
    border-right: 2px solid #08b904;
    border-bottom: 2px solid #08b904;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}
.ConfirmationContent{
    max-width:1000px;
    margin:auto;
}

#checkbox_box{
    /*border: 1px solid black;*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 106%;
    pointer-events: none;
}
#checkbox_box.is-invalid,
.requiredRadios.is-invalid{
	border: 2px solid #dc3545;
}

#gridRadios0_box{
	/*border: 2px solid rgb(40, 167, 69);*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 72px;
    pointer-events: none;
}
#gridRadios1_box{
	/*border: 2px solid rgb(40, 167, 69);*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: 100%;
    height: 27px;
    pointer-events: none;
}
#gridRadios4_box{
	/*border: 2px solid rgb(40, 167, 69);*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 55px;
    pointer-events: none;
}
#gridRadios6_box{
    position: absolute;
    top: 50px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 106px;
    pointer-events: none;
}
#gridRadios40_box{
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 106px;
    pointer-events: none;
}
#gridRadios41_box{
    position: absolute;
    top: 59px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 83px;
    pointer-events: none;
}
#gridRadios42_box{
    position: absolute;
    top: 78px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 82px;
    pointer-events: none;
}
#gridRadios43_box{
    position: absolute;
    top: 98px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 82px;
    pointer-events: none;
}
#gridRadios44_box{
    position: absolute;
    top: 18px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 80px;
    pointer-events: none;
}
#gridRadios5_box{
	/*border: 2px solid rgb(40, 167, 69);*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 90px;
    pointer-events: none;
}
#gridRadios30_box{
	/*border: 2px solid rgb(40, 167, 69);*/
    position: absolute;
    top: -4px;
    left: 19px;
    width: calc(100% - 38px);
    max-width: 720px;
    height: 69px;
    pointer-events: none;
}

/** ------▲ 制限 ▲----- **/

.breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    color: #6c757d;
    content: ">";
}
.custom-select{
    border-radius: 0;
}
.breadcrumb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #fff;
    border-radius: 0.25rem;
}
/**----------▼ 確認モーダル ▼---------**/

.ConfirmationContent .row .col-md-3{
    min-height: 100px;
    border: 2px solid #ccc;
    margin-bottom: 10px;
    margin-top: 5px;
    font-size: 13px;
}
.ConfirmationContent .row .col-md-3 span.CH-1{
    width:  100%;
    display:  block;
    padding: 5px 0;
}
.ConfirmationContent .row .col-md-9{
    min-height: 100px;
    border: 2px solid #ccc;
    margin-bottom: 10px;
    margin-top: 5px;
    font-size: 13px;
}
.ConfirmationContent .row .col-12.col-md-9{
    /*padding-left: 100px;*/
    word-wrap: break-word;
}
@media (min-width: 768px){

    .ConfirmationContent .row .col-md-9{
        border: 2px solid #ccc;
    }
    .ConfirmationContent .row .col-12.col-md-9{
        padding-left: 15px;
        min-width: calc( 100% - 250px );
    }
}
.ConfirmationContent .val_confirm li{
    line-height: 100px;
}
.ConfirmationContent .val_confirm2 li{
    line-height: 50px;
}
.ConfirmationContent .val_confirm2 pre,
.ConfirmationContent .val_confirm2 li{
    font-size: 13px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic',sans-serif;
}
@media (max-width: 767px){

    .ConfirmationContent .row .col-md-3{
        min-height: 40px;
        margin-bottom: 0px;
    }
    .ConfirmationContent .row .col-md-9{
        min-height: 70px;
        margin-top: 0px;
    }
    .ConfirmationContent .val_confirm li{
    line-height: 70px;
}
}

/** -------- ▲ bootstrap4個別初期化 ▲ ---------- **/
/** -------- ▼ bootstrap4 Modal     ▼ ---------- **/
.modal{
    padding:  0 !important;
    background:  #fff;
}
.modal-header{
    border: 0;
    max-width:  1000px;
    margin:  auto;
}
.modal-body{

}
.modal-dialog{
    max-width: 100%;
    width: 100%;
    margin:  0;
    border-radius:  0;
    border:  2px;
    margin-top: 80px;
}
.modal-content{
    border-radius:0;
    box-shadow: none;
    border:  none;
}
.modal-footer{
    justify-content: center; 
}
/** -------- ▲ bootstrap4 Modal     ▲ ---------- **/

.fa-calendar{
    line-height: 31px;
}
.fa-calendar:before {
    content: "\f073";
    font-size: 20px;
    cursor: pointer;
}
.form-inline .form-check {
    width: 100%;
    text-align: center;
}

.container {
    width: 100%;
    margin:  auto;
}
/** -------- ▼ LiveLaboトレース　　 ▼ ---------- **/
#header .menu-btn .btn-ac.active {
    display: block;
}
#header .menu-btn .btn-ac2.active {
    display: block;
}
#contents {
    width: 100%;
    height: auto;
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
}
/** -------- ▲ LiveLaboトレース　　 ▲ ---------- **/

/** -------- ▼ 基本設定 ▼ ---------- **/
html{
    width: 100%;
    height: 100%;
}
body{
    font-size: 13px;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic',sans-serif;
    line-height: 1.5;
    color: #333333;
    background: #ffffff;
    height: 100%;
}
.wrapper{
    height: 100%;
    position: relative;
}
svg{
    position: absolute;
    bottom: -5px;
    left: 0;
    right: 0;
    margin: auto;
}
.annotation{
    color: #dc3545;
}
img{
    -webkit-backface-visibility: hidden;
    /*width: 100%;
     height:  max-content; */
    max-width: max-content;
}
/** -------- ▲ 基本設定 ▲ ---------- **/

/** -------- ▼ グリッドデザイン初期値 ▼ ---------- **/
.grid-debug{
    display: none;
}
/** -------- ▲ グリッドデザイン初期値 ▲ ---------- **/

/** -------- ▼ ヘッダーデザイン初期値 ▼ ---------- **/
.header_fixed{
    width: 100%;
    height: 50px;
    position: fixed;
    top: 0;
    z-index: 10;
}
.naviContents{}
.naviContents .navbar{
    width: 100%;
    padding: 0.25rem 1rem;
    opacity: 0.75;
}
/** -------- ▲ ヘッダーデザイン初期値 ▲ ---------- **/

/** -------- ▼ フッターデザイン初期値 ▼ ---------- **/
.fixed_footer{
    width: 100%;
    height: 50px;
    position: fixed;
    bottom: 0;
    z-index: 10;
}
/** -------- ▲ フッターデザイン初期値 ▲ ---------- **/

/** -------- ▼ メインコンテンツ ▼ ---------- **/
.caption_row{
    max-width: 970px;
    margin-left: 0px;
    padding-right: 10px
}
.caption_text{
    background: #F2F2F2;
    padding: 10px 5px;
}
.caption_text h5{
    font-weight: bold;
    font-size: 14px;
    color: #333333;
}
.caption_text2{
    max-width: 460px;
    margin: auto;
}
.mainContents{
    height: auto;
    display:  block;
    margin: auto;
    overflow:  hidden;
}
.mainContents img{
    width: 100%;
}
.mainContents.personalAgree{
    height: calc(100% - 187px);
    min-height: 750px;
}
@media (max-width: 768px){
    .mainContents.personalAgree{
        /*min-width: 230px;*/
        min-height: 870px;
    }
}
.wrapperContents{
    margin-top: 50px;
    background: #fff;
}
.centerContents{
    padding: 60px 5px;
    background: #fff;
    display:  block;
}
.centerContents::-webkit-scrollbar {
    display: none;
}
.mainItem{
    height: 80%;
    background: #fff;
    padding-top: 15px;
    overflow-y: scroll;
}
@media (min-width: 1024px){
    .centerContents{
        padding: 115px 0;
        background: #fff;
        display:  block;
    }
}
.container .row .control-label{
    height: 25px;
    /* border-bottom: 1px dotted #000; */
    height: max-content;
    text-indent: -1rem;
    padding-left: 1rem !important;
    width: calc(100% - 50px);
}
.grayOut{
    position:absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background: #fff;
    opacity: 0.5;
    z-index: 1;
    display: none;
}
.confirmationMatterBox{
    background: #ffffff;
    border: solid 2px #cccccc;
    max-width: 722px;
    margin-left: 0px;
}
.confirmationMatterBox .selectBox{

}
#exampleTextarea{
    max-width: 720px;
}
#remarkText{
    max-width: 720px;
}
.introduction_hide,
.next_interior_hide,
.interior_hide,
.b_name_hide{
    display: none;
}

.next_interior_hide input[type="text"]{
    width: calc(100% - 1.9rem);
}
.next_interior_hide textarea{
    width: calc(100% - 1.9rem);
}

/** -------- ▲ メインコンテンツ ▲ ---------- **/

/** -------- ▼ サブコンテンツ ▼ ---------- **/
.subItem{
    height: 40%;
}
/** -------- ▲ サブコンテンツ ▲ ---------- **/

/** -------- ▼ フッター ▼ ---------- **/
.footer_contents{
    height: 100%;
}
.footer_contents .row{
    height: 100%;
}
.footer_button{
  padding:5px;
}
.btn-default{
  width: 150px;
  height: 40px;
}
.btn-default:hover{
  background: #ccc;
}
/** -------- ▲ フッター ▲ ---------- **/

.basicInformation{
    padding: 20px 5px;
    background: #fff;
}
.contentConfirmation{
    padding: 20px 5px;
    background: #fff;
}
.CurrentAddress{
    padding: 20px 5px;
    background: #fff;
}
.mitsuiLoopConfirmation{
    padding: 20px 5px;
    background: #fff;
}
.movePlan{
    padding: 20px 5px;
    background: #fff;
}

/** -------- ▼ 20200406-警告- ▼ ---------- **/
.warning_text_common{
	font-size: 17px;
	font-weight: bold;
	padding-top: 20px;
	color: red;
}
@media screen and (min-width: 0px) and (max-width: 576px) {
    .warning_text_font {
        font-size: 10px;
    }
    
}
@media screen and (min-width: 577px) and  (max-width: 768px){
    .warning_text_font {
        font-size: 11px;
    }
}
@media (min-width: 769px) {
    .warning_text_font {
        font-size: 17px;
    }
}

/* ------------------------デザイン変更対応----------------------------------- */

.col_title{
    background-color: #ccc;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    position: relative;
}
.input_title{
    width: 100%;
}
@media (min-width: 768px){
    .col_title {
        /*min-width: 230px;*/
        max-width: 250px;
    }
}
.tag:not(body).is-danger {
    background-color: #f22211;
    color: #fff;
    font-size: 1rem;
}
.tag_waku{
    position: absolute;
    right: 10px;
    top: calc(50% - 13px);
    width: 50px;
    height: 100%;
}
.tag:not(body) {
    display: block;
    text-indent: 0;
    text-align: center;
    width: 50px;
    height: 2rem;
    line-height: 2rem;
    border-radius: 4px;
}
.info_waku{
    border: 2px solid #ccc;
    padding-top: 15px;
    margin-left: 18px;
    margin-bottom: 50px;
    max-width: 970px;
}
.info_waku_agree_title{
    font-size: 20px;
    font-weight: bold;
    font-family:  -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
.info_waku_agree{
    border: 2px solid #ccc;
    margin-top: 50px;
    margin-bottom: 50px;
    max-width: 870px;
    padding: 50px 80px;
    font-size: 16px;
}
@media (max-width: 768px){
    .info_waku_agree {
        max-width: 870px;
        padding: 15px 15px 0px 15px;
    }
}
.info_waku_agree li{
    line-height: 3rem;
}
.submitButton{
    width: 150px;
    height: 40px;
    background-color: #203864;
    color: #FFF;
    border-radius: 4px;
    font-weight: bold;
    font-size: 1.15rem;
}
#input_tanto_0{
    display: inline-block;
    width: calc(100% - 180px);
    max-width: 200px;
}
#input_tanto_1{
    display: inline-block;
    width: calc(100% - 100px);
    max-width: 292px;
}

.bg_gray_building1 {
    width: calc(100% - 4rem);
    position: absolute;
    height: 53px;
    background: #efefef;
    top: -8px;
    left: 14px;
    border-radius: 10px;
}
@media screen and (min-width: 768px) {
    .bg_gray_building1 {
        height: 35px;
    }
}
.bg_gray_building2 {
    width: calc(100% - 4rem);
    position: absolute;
    height: 99px;
    background: #efefef;
    top: 14px;
    left: 14px;
    border-radius: 10px;
}
.bg_gray_building2.big1 {
    height: 170px;
    width: calc(100% - 4rem);
}
.bg_gray_building2.big2 {
    height: 218px;
    width: calc(100% - 4rem);
}

/* ---------------------------------- Step -----------------------------------*/

ul.steps {
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic',sans-serif;
    width: 694px;
    margin: auto;
}
.steps.rik-steps {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.steps.rik-steps .rik-steps-title {
    font-size: 1rem;
    font-weight: 400;
    color: #4a4a4a;
}
.steps.is-large {
    font-size: 1.5rem;
}
.steps.is-large .steps-marker {
    height: 3rem;
    width: 3rem;
}
.steps .steps-marker {
    align-items: center;
    display: flex;
    border-radius: 50%;
    font-weight: 700;
    justify-content: center;
    position: relative;
    z-index: 10;
}
.steps .steps-segment {
    position: relative;
}
.steps-segment:after {
    background-color: #5994BB;
}
.steps-segment.is-active:after {
    background-color: #595959;
}
.steps-segment.is-active~.steps-segment:after {
    background-color: #595959;
}
.steps:not(.is-hollow) .steps-segment.is-active .steps-marker:not(.is-hollow) {
    background-color: #203864;
    color: #fff;
    font-size: 30px;
}
.steps:not(.is-hollow) .steps-segment.is-active~.steps-segment .steps-marker:not(.is-hollow) {
    background-color: #595959;
    color: rgba(0,0,0,.7);
}
.steps:not(.is-hollow) .steps-marker:not(.is-hollow) {
    background-color: #203864;
    color: #fff;
}
.steps .steps-segment:not(:last-child):after {
    content: " ";
    display: block;
    position: absolute;
}

@media screen and (min-width: 100px) {
    .steps:not(.is-vertical) {
        display: flex;
    }

    .steps:not(.is-vertical).has-content-centered {
        text-align: center;
    }

    .steps:not(.is-vertical) .steps-segment:not(:last-child) {
        flex-basis: 1rem;
        flex-grow: 1;
        flex-shrink: 1;
    }

    .steps:not(.is-vertical).has-content-centered .steps-segment:last-child,
    .steps:not(.is-vertical).is-balanced .steps-segment:last-child {
        flex-basis: 1rem;
        flex-grow: 1;
        flex-shrink: 1;
    }

    .steps.is-large:not(.is-vertical).has-content-centered .steps-marker {
        position: absolute;
        left: calc(50% - 1.5rem);
    }

    .steps.is-large:not(.is-vertical).has-content-centered .steps-content {
        margin-top: 3rem;
        margin-left: .5em;
        margin-right: .5em;
        padding-top: .2em;
    }

    .steps.is-large:not(.is-vertical).has-content-centered .steps-segment:not(:last-child):after {
        left: 50%;
        right: -50%;
    }

    .steps.is-large:not(.is-vertical) .steps-segment:not(:last-child):after {
        height: .4em;
        left: 2.76rem;
        right: -.24rem;
        top: calc(1.5rem - (.2em));
    }
}

/** -------- ▼ 三井のすまいLOOP入会状況についてのご確認 ▼ ---------- **/
.basicInformation .tag_waku2,
.mitsuiLoopConfirmation .tag_waku2{
    position: absolute;
    right: 10px;
    width: 50px;
    height: 100%;
}
.basicInformation .col_title p,
.mitsuiLoopConfirmation .col_title p{
    margin-bottom: 0px;
}
@media screen and (min-width: 767px) {
    .basicInformation .col_title p.title_width,
    .mitsuiLoopConfirmation .col_title p.title_width{
        max-width: 185px;
    }
}
@media screen and (max-width: 767px) {
    .basicInformation .tag_waku2,
    .mitsuiLoopConfirmation .tag_waku2{
        top: calc(50% - 13px);
    }
}
.mitsuiLoopConfirmation .col_title p.very_min{
    font-size: 10px;
}
.mitsuiLoopConfirmation .mt-namae{
    margin-left: 13px;
    margin-top: 10px;
}
.mitsuiLoopConfirmation .input_subtitle{
    position: relative;
    top: 7px;
}
.mitsuiLoopConfirmation .input_namae_text,
.mitsuiLoopConfirmation .input_kaiin_text{
    max-width: 435px;
}
.mitsuiLoopConfirmation .checkbox_sp input[type="checkbox"]{
    top: -15px;
}
.mitsuiLoopConfirmation .checkbox_sp label{
    padding-top: 5px;
}

.mitsuiLoopConfirmation .min_comment{
    font-size: 10px;
    padding-left: 1.25rem;
    padding-top: 10px;
}
.mitsuiLoopConfirmation .comment0{
    max-width: 475px;
}
.mitsuiLoopConfirmation .comment1{
    padding-left: 65px;
}
.mitsuiLoopConfirmation .comment2{
    padding-left: 35px;
}
.mitsuiLoopConfirmation .hp_link{
    color: #1D1DFC;
    border-bottom: 1px solid #1D1DFC;
}

/** -------- ▼ 三井のすまいLOOP入会状況についてのご確認-確認画面 ▼ ---------- **/
#mitsuiLoopInfomation ul.info02 li{
    line-height: 50px;
}
#mitsuiLoopInfomation ul.info03 li{
    display: inline-block;
    vertical-align: middle;
}