/* 全体・共通 */
.container {
    overflow: visible; 
}

/* 汎用 */
.mt10 {
    margin-top: 10px;
}
.ml20 {
    margin-left: 20px;
}

.p-schedule-monthly-calendar td {
    border: 3px double #999;
}

.p-schedule-monthly-calendar td a {
    color: #333;
    display: block;
}
.p-schedule-monthly-calendar td a:hover {
    opacity: 0.;
    background-color: #e5edf9;
}

.p-schedule-monthly-calendar .day {
    text-align: center;
    font-size: 120%;
}
.p-schedule-monthly-calendar .holiday-name {
    text-align: center;
    font-size: 90%;
    color: red;
}
.p-schedule-monthly-calendar .status {
    text-align: center;
    font-size: 130%;
}
.p-schedule-monthly-calendar .Sun {
    color: red;
}
.p-schedule-monthly-calendar .Sat {
    color: blue;
}

.p-schedule-label-list {
    text-align: right;
}
.p-schedule-label-list li {
    margin-left: 20px;
    display: inline-block;
}

.p-calendar-week a {
    display: block;
}
.p-calendar-week__link-add:hover {
    background: #db6e8d;
}

.p-calendar-week tr {
    border-bottom: 2px solid #CCC;
}
.p-calendar-week th {
    text-align: center;
}
.p-calendar-week td {
    height: 2em;
    vertical-align: middle;
}

.c-calendar__bg--booked {
    background-color: #fccfdc;
}
.c-calendar__bg--partially_available {
    background-color: #fbfaa8;
}
.c-calendar__bg--available {
    background-color: #fff;
}
.c-calendar__bg--interval {
    background-color: #eff5ff;
    line-height: 0.8rem;
    text-align: center;
}
.c-calendar__bg--dependance {
    background-color: #fccfdc;
}

.c-calendar__bg--today {
    background-color: #b1cdff;
}
.c-calendar__bg--past {
    background-color: #ccc;
}
.c-calendar__bg--closed {
    background-color: #e2e2e2;
}
.c-calendar__bg--outside,
.c-calendar__bg--over {
    background-color: #ccc;
}

.c-error-box {
    display: none;
    margin: 5px 0;
    padding: 5px;
    border: 1px solid #c00;
    color: #c00;
    text-align: center;
}


/* 日付選択スクリプト */
/* 上書きされてしまうので、優先度を上げる */
.flatpickr-input[readonly] {
    cursor: pointer !important;
}


.side-nav li li {
    margin: 0;
    line-height: 1em;
    list-style-type: none;
}
.side-nav li li a:not(.button) {
    padding: 5px;
}

.c-inline-forms input,
.c-inline-forms span {
    display: inline
}

.c-modal {
    max-width: 780px !important;
}

.c-button--charge {
    margin: 0;
    padding: 5px 0;
    font-size: 14px;
    width: 100%;
    display: block;
}

/* 利用者検索 */

.searched-list {
    height: 300px;
    overflow: scroll;
}
.searched-list ul {
    max-width: 100%;
    background: #fff;
    border: 1px solid #ccc;
    list-style: none;
    padding: 0;
    margin: 0;
}
.searched-list ul li a {
    display: block;
    padding: 10px;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
}
.searched-list ul li a :hover {
    background: #f0f0f0;
}


/* グローバルナビゲーション */
.top-bar.expanded .title-area {
    background-color: #FFF;
}
.top-bar.expanded .title-area img{
    height: 56px;
}
.top-bar.expanded, .top-bar {
    background: #FFF;
    border-top: 5px double red;
    height: 60px;
}
.top-bar-section ul li, .top-bar-section li:not(.has-form) a:not(.button) {
    background: #FFF;
}

.top-bar-section ul li>a {
    color: #2d63b9;
    font-weight: bold;
    font-size: 0.8525rem;
}
.top-bar-section ul li{
}
.content, #actions-sidebar {
    margin-top: 9px;
}


/* トップページ　*/
.top-nav {
    display: block;
    font-family: "Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
    list-style-position: outside;
    list-style-type: none;
    margin: 0;
    padding: 0.875rem 0;
}
.top-nav li.heading {
    margin-top: 40px;
}
.top-nav ul.room-list {

}
.top-nav ul.room-list li{
    list-style-type: none;
    margin-right: 2em;
    float: left;
}
div.separate {
    clear: both;
    margin: 60px 0;
}

.facilityAppointments h2 {
font-size: 110%;
width: 650px;
font-weight: bold;
color: #505050;/*文字色*/
padding: 0.5em;/*文字周りの余白*/
display: inline-block;/*おまじない*/
line-height: 1.3;/*行高*/
background: #dbebf8;/*背景色*/
vertical-align: middle;/*上下中央*/
border-radius: 25px 0px 0px 25px;/*左側の角を丸く*/
}

.facilityAppointments h2 :before {
content: '●';
color: white;
margin-right: 8px;
}

.desc-text {
    font-size: 80%;
    margin-top: 2em;
}
.facilityAppointments .float-left {
    float: left;
}
.facilityAppointments .float-right {
    float: right;
    margin-top: 2em;

}

/* 予約管理 */
.schedules-month .float-left{
    float: left;
}
.schedules-month .float-right{
    float: right;
    margin-top: 2em;
}
.schedules-month-category .float-left{
    float: left;
}
.schedules-month-category .float-right{
    float: right;
    margin-top: 2em;
}
.schedules-month table tr th{
    text-align: center;
}
.schedules-month table tr td{

}
.schedules-month table ul{
    margin-bottom: 0px;
}
.schedules-month table li{
    line-height: 0.7em;
    margin-bottom: 7px;
}
button.month-search {
    width: 150px;
    padding: 6px;
}
.schedules-month .datetime select {
    width: 65px;
}


/* 担当者別予定表 */
.schedules-person .date {
    float: left;
    width: 300px;
}
.schedules-person .kara {
    float: left;
    margin: 0 1em;
    padding-top: 6px;
}
.schedules-person .datetime input {
    width: 100px;
    float: left;
    background-color: #FFF !important;
}
.schedules-person .select {
    float: left;
    margin-right: 1em;
}
.schedules-person .select select {
    width: 200px;
}
.schedules-person .select-left {
    float: left;
    margin-right: 50px;
}


/* 利用予定表 */
.shedules-search .datetime select{
    width: 100px;
}
.shedules-search .datetime{
    float: left;
}
.shedules-search .input{
    width: 100px;
}

/* 利用実績表　*/
.CalcSalesAndCases select{
    width: 200px;
}

.CalcSalesAndCases .date select{
    width: 100px;
}

/* 利用者管理 */
.members-search input {
    width: 200px;
}
.members-search div.input {
    float: left;
    margin-left: 1em;
}
.members-search div.text {
    float: left;
    margin-left: 1em;
}
.members-search .center {
    text-align: center;
}
.members-view-h3 {
    background-color: #be140b;
    color: #FFF !important;
    margin-top: 50px;
    padding: 7px;
}
.members-view table {
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}
.members-view h4 {
    border-bottom: 0px solid #000;
    margin-bottom: 0px;
    margin-top: 40px;
}


/* 新規予約　*/
.jquery-modal .datetime select{
    width: 50px;
}
.jquery-modal input{
    width: 150px;
}
.appointments input {
    width: 150px;
}
.appointments input.short_input {
    width: 20px;
}

.appointments input.checkbox {
    width: 20px;
}
.appointments .long-text{
    width: 550px;
}
.appointments #js-member-name{
    width: 300px;
}

/* 予約詳細 */
.appointments-view ul {
    float: right;
}
.appointments-view li {
    list-style-type: none;
    float: left;
    margin-right: 2em;
}

.appointments-view dt {
    float: left;
    width: 80px;
    font-weight: normal;
}

.vertical-table th {
    width: 160px;
    background-color: #4d8f97;
    text-align: center;
    border: 3px double #CCC;
    font-weight: normal;
    color: #FFF;
}

.vertical-table td {
    text-align: left;
    border: 3px double #CCC;
}
.left-table{
    width: 49%;
    float: left;
}
.right-table{
    width: 49%;
    float: right;
}
.right-table:after{
    clear: both;
}

/* スケジュール */
.schedules-category th{
    border-bottom: 1px solid #CCC;
}
.schedules-category td{
    border-bottom: 1px solid #CCC;
}


/* 利用予定表 */
.shedules-search h4 {
    font-size: 200%;
    padding-top: 1em;
    border-bottom: 2px solid #be140b;
}
.wid90{
    width: 90px;
}
.wid100{
    width: 100px;
}
.shedules-search table{
    border-bottom: 3px double #222;
}
.shedules-search th{
    border-bottom: 3px double #222;
}
.shedules-search td{
    height: 50px;
    vertical-align: middle;
}
.shedules-search .top-row {
    border-top: 3px double #222;
}
