main {
    background-color: #ffffff;
}

h1 {
    text-align: center;
    font-size: 30px !important;
    padding: 20px;
}

.img-logo {
    width: 40px;
}

.img-logo.big {
    width: 200px;
}

/* .modal-overlay {
    display: none;
    position: fixed;
    top:0; left:0;
    width:100%; height:100%;
    background: rgba(0,0,0,0.5);
    z-index: 9998;
}
.modal {
    display: none;
    position: fixed;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    max-width: 600px;
    width: 95%;
    background: #fff;
    border-radius: 4px;
    padding: 16px;
    box-sizing: border-box;
    z-index: 9999;
}
.modal form { display: flex; flex-direction: column; gap: 8px; }
.modal-buttons { display: flex; justify-content: flex-end; gap: 8px; } */

.select2-container--open {
    z-index: 9999999
}

.calendar-container {
}

@media (max-width: 768px) {
    .calendar-container {
    }
}

.calendar-container #calendar {
    min-height: 80vh;
}

.schedule-container {
    width: 100%;
    overflow: scroll;
}

.schedule-day-container .schedule-header {
display: flex;
margin-left: 40px; 
background: #4285f4;
color: #fff;
border-bottom: 1px solid #ccc;
}
.schedule-day-container .header-user {
flex: 1;
text-align: center;
padding: 8px;
box-sizing: border-box;
border-right: 1px solid #ccc;
cursor: pointer;
}
.schedule-day-container .schedule-body {
display: flex;
}
.schedule-day-container .time-scale {
width: 40px;
border-right: 1px solid #ccc;
background: #fafafa;
}
.schedule-day-container .time-scale-inner {
position: relative;
height: 1200px; /* 24h x 50px */
}
.schedule-day-container .time-label {
position: absolute;
width: 100%;
text-align: right;
padding-right: 4px;
box-sizing: border-box;
font-size: 12px;
color: #333;
border-bottom: 1px solid #eee;
}
.schedule-day-container .users-container {
flex: 1;
display: flex;
overflow-x: auto;
position: relative;
}
.schedule-day-container .user-column {
position: relative;
flex: 1;
border-right: 1px solid #ccc;
/* min-width: 150px;  */
height: 1200px;
box-sizing: border-box;
}
.schedule-day-container .schedule-event {
position: absolute;
background-color: #4285f4;
color: #fff;
border-radius: 4px;
font-size: 12px;
padding: 2px 4px;
box-sizing: border-box;
cursor: move; /* ドラッグしやすいように */
overflow: hidden;
white-space: nowrap;
}

.fc-day-today {
    /* background: none !important; */
    border: none !important;
}

.fc-day-today .fc-daygrid-day-number {
    background-color: #4285f4 !important;
    color: #fff !important;
    border-radius: 4px;
}

.fc-event {
    cursor: pointer;
}

.fc-event-time {
    display: none !important;
}

tbody .fc-day-sat {
    background-color: #b3e5fc !important;
}

tbody .fc-day-sun {
    background-color: #ffcdd2 !important;
}

input.form-control {
    border-radius: var(--bs-border-radius) !important;
    border: var(--bs-border-width) solid var(--bs-border-color) !important;
}

.select2-container {
    min-width: 90% !important;
    max-width: 90% !important;
}

.select2-container .select2-selection {
    display: block;
    min-width: 100% !important;
    max-width: 100% !important;
    padding: 5px 5px;
    font-size: 16px;
    line-height: 1.5;
    border-radius: var(--bs-border-radius) !important;
    border: var(--bs-border-width) solid var(--bs-border-color) !important;
    background-color: #fff;
    background-clip: padding-box;
    box-shadow: none;
}

.select2-selection__choice {
    background-color: #4285f4 !important;
    color: #ffffff !important;
    border: 1px solid #ffffff !important;
    /* padding-right: 10px !important; */
}

.select2-selection__choice__remove {
    background-color: #4285f4 !important;
    color: #ffffff !important;
    border: none !important;
}

.select2-results__option {
    background-color: #ffffff !important;
    color: #4285f4 !important;
    font-weight: bold !important;
}

.select2-results__option[aria-selected="true"] {
    background-color: #4285f4 !important;
    color: #ffffff !important;
}


.back-label label {
    /* background-color: #4285f4 !important;
    color: #ffffff !important; */
    /* border-radius: var(--bs-border-radius) !important; */
    /* padding: 5px; */
    color: #4285f4 !important;
    display: block !important;
    font-size: 14px !important;
    font-weight: bold;
}

.date-title {
    font-size: 20px;
}

@media (max-width: 768px) {
    .date-title {
        font-size: 18px;
    }
}

.task-container {
    padding-bottom: 30px;
    width: 100%;
    overflow: scroll;
}

.task-table {
    min-width: 100%;
}

.task-table thead {
    background: #222222;
    color: #ffffff;
}

.task-table thead th {
    padding: 10px 0;
    text-align: center;
}

.task-table tbody td {
    border: 1px solid #dddddd;
    padding: 5px 5px;
    text-align: center;
    vertical-align: top;
}

.task-table tbody td {
    min-width: 200px;
}

.task-table .task-box {
    margin: 10px;
    padding: 10px;
    box-sizing: border-box;
    text-align: left;
    background-color: #eeeeee;
    color: #444444;
    border-radius: 4px;
}

.task-table .task-box.admin {
    background-color: #222222;
    color: #ffffff;
}

.task-table .task-box .name-box {
    font-size: 14px;
}

.task-table .task-box .time-box {
    font-size: 12px;
}

.task-table .task-box .content-box {
    font-weight: bold;
    padding: 10px 0;
    font-size: 12px;
}
