/*
	Custom CSS
	Please make sure your CSS rules are 
	more particular / have higher priority
	then other page styles
*/
 #events h3   {
	/* add your css rule here */
}


 #events p.duration, #events div.duration   {
	/* add your css rule here */
}


 #events p.description, #events div.description   {
	/* add your css rule here */
}


 #events .selectedEvent   {
	/* add your css rule here */
}


 #events input.reserve_time_btn   {
	/* add your css rule here */
}


 #events input.select_another_btn   {
	/* add your css rule here */
}


 #eventForm #start_date-block-container h3, #eventForm #timeline-container h3   {
	/* add your css rule here */
}


 #eventForm #save_button   {
	/* add your css rule here */
}


 div.ui-widget-content   {
	/* add your css rule here */
}


 div.ui-widget-header   {
	/* add your css rule here */
}


 #timeline-container table.timeline   {
	/* add your css rule here */
}


 .timeline td.not_worked_time   {
	/* add your css rule here */
}


 .timeline td.free_time   {
	/* add your css rule here */
}


 .timeline td.selected_time   {
	/* add your css rule here */
}


 .timeline td.reserved_time   {
	/* add your css rule here */
}


 div#loading   {
	/* add your css rule here */
}


 #start_date-block-container .zend_form dt, start_date-block-container .zend_form dt b, start_date-block-container .zend_form dd label   {
	/* add your css rule here */
}



@media (max-width: 480px) {
  /* 時間スロット全体をflex化＆4列指定 */
  .sb_time_flexible_hour_container {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 0px !important;
  }

  /* 各スロットを25%（= 4列）に */
  .sb_time_flexible_hour_container .time-slot {
    width: 25% !important;
    margin: 0 !important;
    padding: 2px !important;
    box-sizing: border-box !important;
  }

  /* ボタンを枠いっぱいに拡張 */
  .sb_time_flexible_hour_container .time-slot .cell {
    display: block !important;
    width: 100% !important;
    padding: 8px 0 !important;
    font-size: 14px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}


/* スロット数を非表示 */
.time-slot .slot--available-slot {
    display: none !important;
}


/* ボタンリンク調整 */
#steps-content {
    display: flex !important;
    flex-direction: column !important;
}
#sb_back_button {
    order: 999 !important;
    margin-top: 20px !important;
}
#sb_booking_content {
    order: 1 !important;
}
#sb_back_button a {
    color: #888888 !important;
    text-decoration: underline !important;
}
#sb_back_button a:hover {
    color: #aaaaaa !important;
}
#main #main-content #sb_content #sb-timeline #steps-content #sb_back_button a:before {
    filter: brightness(0) saturate(100%) invert(53%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0.53) contrast(100%) !important;
}
#main #main-content #sb_content #sb-timeline #steps-content #sb_back_button a:hover:before {
    filter: brightness(0) saturate(100%) invert(67%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0.67) contrast(100%) !important;
}



/* 日程選択のテキストカラーを変更 */
#sb_dateview_container * {
    color: #000000 !important;
}

#sb_prev_date:before,
#sb_next_date:before {
    color: #000000 !important;
}



/* 入力ページチェックボックステキストカラー調整 */
#main #main-content #sb_content #sb-timeline #steps-content #sb_booking_content #details .right-side .license-links-container a {
    color: #000000 !important;
}

#main #main-content #sb_content #sb-timeline #steps-content #sb_booking_content #details .right-side .license-links-container a:hover {
    color: #333333 !important;
}