@charset "UTF-8";

/* 確認画面と完了画面を非表示 */
#page_reserve .confirm_area,
#page_reserve .thanks_area {
    display: none;
}
/* デフォルトのサンクスメッセージを非表示 */
#page_reserve .wpcf7-response-output{
  display: none;
}
/* エラーメッセージのスタイル */
#page_reserve .error-message {
    color: #ff0000;
    font-size: 0.8em;
    margin-top: 5px;
    display: none;
}
#page_reserve .stepbar{
    display: flex;
    height: 50px;
    max-width: 960px;
    margin: 0 auto 50px;
    border: 2px solid #003399;
}
#page_reserve .stepbar div{
    width: 33.33%;
}
#page_reserve .stepbar div + div{
    border-left: 2px solid #003399;
}
#page_reserve .stepbar div.current{
    background:#003399;
	position:relative;
}
#page_reserve .stepbar div.current:after{
  position:absolute;
  right:-22px;
  top:-2px;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 20px solid #003399;
}
#page_reserve .stepbar div.current.noarrow:after{
  display:none;
}
#page_reserve .stepbar div p{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:100%;
}
#page_reserve .stepbar div.current p{
    color:#fff;;
}

#page_reserve .service-radios {
  display: none;
}

#page_reserve table.mailform p.comment{
    line-height:1.5;
}
#page_reserve table.mailform span.required{
    display: inline-block;
    background: #ff0000;
    color: #fff;
    padding: 0 5px;
    font-size: 14px;
    margin-left: 5px;
}
#page_reserve table.mailform th,
#page_reserve table.mailform td{
    padding:10px 20px;
}
#page_reserve table.mailform th.th1{
    background:#ccc;
	width:250px;
}
@media screen and (min-width: 641px){
#page_reserve table.mailform th.th2{
    width: 130px;
    padding: 5px;
}
}
#page_reserve .confirm_area table.mailform th.th2{
	width:100px;
}
#page_reserve table.mailform input[type="text"],
#page_reserve table.mailform input[type="date"],
#page_reserve table.mailform input[type="tel"],
#page_reserve table.mailform input[type="email"],
#page_reserve table.mailform select{
    height: 30px;
    font-family: inherit;
}
#page_reserve table.mailform input#other-service{
    margin-left:2em;
	width: calc(100% - 2em);
}
#page_reserve table.mailform tr.reserve_date input{
	width:120px;
}
#page_reserve table.mailform td input#date01,
#page_reserve table.mailform td input#date02,
#page_reserve table.mailform td input#date03{
	width:120px;
	margin-bottom:10px;
}
#page_reserve table.mailform tr.reserve_date select{
	width:80px
}
#page_reserve table.mailform input#postal,
#page_reserve table.mailform td.name_box input{
    width:100px;
	margin-right:1em;
}
#page_reserve table.mailform input#model_year,
#page_reserve table.mailform input#car_number{
    width:120px;
}
#page_reserve table.mailform span.wpcf7-list-item label:hover{
    cursor:pointer!important;
}
#page_reserve table.mailform span#sex .wpcf7-list-item:first-child{
  display: none;
}
#page_reserve table.mailform td.address{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
#page_reserve table.mailform td.address input[type="text"]{
    width:calc(100% - 7em);
}
#page_reserve table.mailform td.address span.label{
    width: 6em;
    display: inline-block;
}
#page_reserve table.mailform textarea#request{
    width:100%;
    font-family: inherit;
}
#page_reserve input.confirm_button{
    width: 240px;
    height: 50px;
    border: solid 1px #003399;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    font-size: 15px;
    color: #ffffff;
    text-decoration: none;
    margin: 60px auto 0 auto;
    position: relative;
    background: #003399;
}
#page_reserve input.confirm_button:disabled{
    border: solid 1px #ddd;
    background: #ddd;
}
#page_reserve input.confirm_button:enabled:hover,
#page_reserve .confirm_button_wrap p .wpcf7-submit:hover,
#page_reserve .confirm_button_wrap p .back_button:hover{
    cursor:pointer;
}
#page_reserve .confirm_button_wrap p{
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
}
#page_reserve .confirm_button_wrap p .wpcf7-submit,
#page_reserve .confirm_button_wrap p .back_button{
    width: 240px;
    height: 50px;
    border: solid 1px #003399;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    font-size: 15px;
    color: #ffffff;
    text-decoration: none;
    margin: 60px 0 0 0;
    background: #003399;
}
#page_reserve .confirm_button_wrap p .back_button{
    border: solid 1px #aaa;
    background: #aaa;
}
#page_reserve .thanks_area .wpcf7-response-output{
    display:none!important;
}

@media screen and (max-width: 640px){

#page_reserve table.mailform th,
#page_reserve table.mailform th.th1,
#page_reserve table.mailform td{
    display:block;
    width:100%;
}
#page_reserve table.mailform input#tel,
#page_reserve table.mailform input#email,
#page_reserve table.mailform input#email_confirm,
#page_reserve table.mailform input#model_name{
    width:100%;
}
#page_reserve table.mailform input#postal,
#page_reserve table.mailform td.name_box input{
    width:40%;
}
#page_reserve table.mailform td .shopc_wrap{flex-direction:column;}
#page_reserve table.mailform td .shopc_wrap .shop-calendar{
    margin: 15px 0;
    width: 100%;
}
#page_reserve table.mailform td .shopc_wrap .shop-calendar-table{
	border-right: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}
#page_reserve table.mailform td .shopc_wrap .shop-calendar-table tr{
	display: flex;
    border-bottom: none;
}
#page_reserve table.mailform td .shopc_wrap .shop-calendar-table th,
#page_reserve table.mailform td .shopc_wrap .shop-calendar-table td{
	width: calc(100% / 7);
    border-bottom: none;
    border-right: none;
}

}

@media screen and (max-width: 428px){

#page_reserve .stepbar div.current:after{
    display:none;

}

}
	
/* test */
#page_reserve table.mailform td select,
#page_reserve table.mailform td input#date01,
#page_reserve table.mailform td input#date02,
#page_reserve table.mailform td input#date03{
	cursor:pointer;
}
#page_reserve table.mailform td .shopc_wrap{
	display: none;
}
#page_reserve table.mailform td .shopc_wrap.is-open{
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 15px;
}
#page_reserve table.mailform td .shop-calendar{
    width: 240px;
    padding: 10px;
    margin-top:10px;
    border-top:solid 1px #E1E1E1;
}
#page_reserve table.mailform td .shop-calendar:before{
    display:none;
}
#page_reserve table.mailform td .shop-calendar-table th,
#page_reserve table.mailform td .shop-calendar-table td{
    padding:5px;
    font-size:12px;
}
#page_reserve table.mailform td .shop-calendar-table td[data-date]{
	cursor:pointer;
}
#page_reserve table.mailform td .shop-calendar-table td.is-disabled{
	pointer-events:none;
	color:#ddd;
}
#page_reserve table.mailform td .shop-calendar-table td.today{
	color:#000!important;
}
#page_reserve table.mailform td .shop-calendar-table td.holiday{
    background-color: #b0b0b0;
    color: #ccc!important;
    border-radius:0;
    pointer-events: none;
}