@charset "UTF-8";

/* ========================================
   Light Theme Override CSS
   黒背景・白文字から白背景・黒文字への変更
   ======================================== */

/* 基本背景色と文字色の変更 */
body {
    background: #fff !important;
    color: #000 !important;
    font-family: initial;
}

/* リンクの色調整 */
a {
    color: #000 !important;
}

a:hover, a:focus {
    color: rgba(0, 0, 0, 0.65) !important;
}

a.list-group-item {
    color: #000 !important;
}

a.list-group-item:hover {
    background-color: transparent !important;
    color: #000 !important;
}

.list-group-item a:not(.btn) {
    text-decoration: underline !important;
    font-weight: normal !important;
}

/* ヘッダーナビゲーションの色調整 */
header nav .nav li.parent a {
    color: #000 !important;
    font-weight: bold !important;
    font-family: var(--s-font-f9a5a3ff) !important;
}

header nav .nav li.parent a:hover {
    color: rgba(0, 0, 0, 0.65) !important;
    background-color: transparent !important;
}

header nav .nav li.parent a::after {
    background: rgba(0, 0, 0, 0.65) !important;
}

header nav .nav li.parent a:active::after {
    opacity: 0 !important;
}

header nav .nav li.parent.on > a {
    color: #999 !important;
}

/* モバイルメニューの色調整 */
@media screen and (max-width: 1200px) {
    header nav {
        background: #fff !important;
    }
    
    header nav .nav li a {
        color: #000 !important;
    }
    
    header nav .nav li.parent:not(.pcNone) a {
        color: #000 !important;
        background: rgb(235, 235, 235) !important;
        font-weight: bold !important;
    }
    
    header nav .nav li.parent.pcNone a {
        color: #000 !important;
        background: white !important;
    }
    
    header nav .nav li.parent.pcNone {
        border-bottom: 1px solid rgba(0, 0, 0, 0.65) !important;
    }
    
    header nav .nav li.parent.pcNone:nth-child(10),
    header nav .nav li.parent.pcNone:nth-child(11) {
        border-top: 1px solid rgba(0, 0, 0, 0.65) !important;
    }
}

/* ハンバーガーメニューの色調整 */
@media screen and (max-width: 1200px) {
    header .menu div {
        background: #000 !important;
        height: 1px !important;
    }
    
    header .menu.open .bar,
    header .menu.open .bar3 {
        background-color: rgba(0, 0, 0, 0.65) !important;
    }
}

/* ページタイトルとサブタイトルの色調整 */
.page-title {
    color: #000 !important;
    font-family: var(--s-font-f9a5a3ff) !important;
}

.page-sub-title {
    color: #000 !important;
}

#member_login h1 {
    width: 100% !important;
    max-width: 865px;
    padding: 0 !important;
}

.name-space {
    color: #000 !important;
    font-size: .9em !important;
    padding: 0 1.5rem;
    font-family: var(--s-font-f9a5a3ff) !important;
}

/* ボタンの色調整 */
.btn.btn-back {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

.btn.btn-primary {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

.btn.btn-warning {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

.btn.btn-warning[disabled]:hover, 
.btn.btn-warning[disabled]:active, 
.btn.btn-warning[disabled]:focus {
    background-color: #e0e0e0 !important;
}

.btn.btn-danger {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

.btn.btn-danger[disabled]:hover, 
.btn.btn-danger[disabled]:active, 
.btn.btn-danger[disabled]:focus {
    background-color: #e0e0e0 !important;
}

.btn.btn-warning-reverse {
    color: #000 !important;
    background-color: #fff !important;
    border-color: #ddd !important;
}

/* リストアイテムの色調整 */
.list-group-item {
    background-color: transparent !important;
    color: #000 !important;
}

.list-group-item + .list-group-item {
    border-top: 1px solid #ddd !important;
}

.list-group-item:first-child {
    background-color: transparent !important;
    color: #000 !important;
}

.list-group-item.list-group-item-title {
    color: rgba(0, 0, 0, 0.65) !important;
}

.list-group-item.list-group-item-title2 {
    border-bottom: 1px solid #ddd !important;
    color: rgba(0, 0, 0, 0.65) !important;
}

/* フォームの色調整 */
.form .err {
    color: red !important;
}

.form .form-group label {
    color: #999999 !important;
}

.form .form-group label .required {
    color: rgba(0, 0, 0, 0.65) !important;
}

.form .form-group label.form-check-label {
    color: #000 !important;
}

.form .form-group label[for=agreement] + div {
    color: #000 !important;
}

.form button[type=submit] {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

/* カレンダーの色調整 */
#member_reservation .fc .fc-header .fc-header-title h2 {
    color: #000 !important;
}

#member_reservation .fc .fc-header .fc-state-default {
    color: #000 !important;
}

#member_reservation .fc .fc-content .fc-widget-header {
    color: #000 !important;
}

#member_reservation .fc .fc-content .fc-widget-content.fc-today .fc-day-number {
    border: 1px solid rgba(0, 0, 0, 0.65) !important;
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_reservation .fc .fc-content .fc-widget-content.fc-today .fc-day-number.clicked {
    background-color: #000 !important;
    color: #fff !important;
}

#member_reservation .fc .fc-content .fc-widget-content.fc-future.enabled .fc-day-number {
    border: 1px solid rgba(0, 0, 0, 0.65) !important;
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_reservation .fc .fc-content .fc-widget-content.fc-future.enabled .fc-day-number.clicked {
    background-color: #000 !important;
    color: #fff !important;
}

#member_reservation .fc .fc-content .fc-widget-content.fc-future.enabled .fc-day-number:hover {
    background-color: rgba(0, 0, 0, 0.45) !important;
}

#member_reservation .fc .fc-content .fc-cell-overlay {
    background-color: rgba(0, 0, 0, 0.45) !important;
}

/* ログインページの色調整 */
#member_login [type=submit] {
    color: #ffffff !important;
    background-color: #000000 !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

#member_profile .list-group-item {
    font-weight: normal !important;
}

/* プロフィールページの色調整 */
#member_profile .btn {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

/* メンバーシップページの色調整 */
#member_membership .btn {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}


/* ニュースページの色調整 */
#member_news small span:first-child {
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_news .news-detail {
    font-family: var(--s-font-f9a5a3ff) !important;
}

#member_news .news-detail .list-group-item .date {
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_news .news-detail .list-group-item .title {
    color: #000 !important;
}

/* 予約ページの色調整 */
#member_reservation .alert {
    color: #000 !important;
}

#member_reservation .alert-success {
    background-color: #f5f5f5 !important;
}

#member_reservation .alert-warning {
    background-color: #f5f5f5 !important;
}

#member_reservation .complete .page-sub-title {
    color: #000 !important;
}

#member_reservation .list-group-item:last-child {
    border-bottom: 1px solid #ddd !important;
}

#member_reservation #booking-info.list-group .list-group-item:first-child {
    border-top: none !important;
}

#member_reservation #booking-info.list-group .list-group-item + .list-group-item {
    border-top: 1px solid #ddd !important;
}

/* 月次予約ページの色調整 */
#member_reservation_monthly .fc {
    color: #000 !important;
}

#member_reservation_monthly .fc .fc-header .fc-state-default {
    color: #000 !important;
}

#member_reservation_monthly .fc .fc-content .fc-event {
    border: 1px solid #cacaca !important;
    background-color: rgba(0, 0, 0, 0.3) !important;
    color: #fff !important;
}

#member_reservation_monthly .fc .fc-content .fc-event .fc-event-inner {
    color: black !important;
    background-color: #ececec !important;
}

#member_reservation_monthly .fc .fc-content .fc-event .fc-event-inner .fc-event-time {
    color: black !important;
}

#member_reservation_monthly .fc .fc-content .fc-event.special .fc-event-time {
    color: #b778f2 !important;
}

#member_reservation_monthly #calendarModal #calendarModalLabel .label-info {
    color: #000 !important;
    background: rgba(0, 0, 0, 0.65) !important;
}

#member_reservation_monthly #calendarModal #calendarModalLabel .label-warning {
    color: #000 !important;
    background: rgba(0, 0, 0, 0.65) !important;
}

#member_reservation_monthly #calendarModal .btn-area .btn.btn-primary {
    background-color: white !important;
    border: 1px solid #000 !important;
}

/* 予約履歴ページの色調整 */
#member_booking h3 {
    color: #000 !important;
}

#member_booking .alert {
    color: #000 !important;
}

#member_booking .alert.alert-warning {
    color: rgba(0, 0, 0, 0.65) !important;
    background-color: #f5f5f5 !important;
}

#member_booking .btn {
    color: #000 !important;
    background-color: rgba(0, 0, 0, 0.65) !important;
}

#member_booking #booking-list .label-info {
    color: #000 !important;
    background: #2ac6e2 !important;
}

#member_booking #booking-list .label-warning {
    /* color: #000 !important; */
    background: rgba(0, 0, 0, 0.65) !important;
}

#member_booking #booking-list .label-complete {
    color: #000 !important;
    background: #e1e1e1 !important;
}

#member_booking #booking-list .label-count {
    color: #000 !important;
    background: #e1e1e1 !important;
}

#member_booking #waiting-list .label-warning {
    color: rgba(0, 0, 0, 0.65) !important;
    background: #fff !important;
}

#member_report .list-group-item {
    font-weight: normal !important;
}

#member_report .list-group-item table .text-right {
    min-width: 6rem !important;
}

/* レポート・ニュースページの色調整 */
#member_report .fc .fc-header .fc-header-title h2,
#member_news .fc .fc-header .fc-header-title h2 {
    color: #000 !important;
}

#member_report .fc .fc-header .fc-state-default,
#member_news .fc .fc-header .fc-state-default {
    color: #000 !important;
}

#member_report .fc .fc-content .fc-widget-header,
#member_news .fc .fc-content .fc-widget-header {
    color: #000 !important;
}

#member_report .fc .fc-content .fc-widget-content.enabled .fc-day-number,
#member_news .fc .fc-content .fc-widget-content.enabled .fc-day-number {
    border: 1px solid #000 !important;
    color: #000 !important;
    background-color: #fff !important;
}

#member_report .fc .fc-content .fc-cell-overlay,
#member_news .fc .fc-content .fc-cell-overlay {
    background-color: rgba(0, 0, 0, 0.45) !important;
}

#member_report .btn,
#member_news .btn {
    color: #000 !important;
    background-color: #f5f5f5 !important;
}

#member_report .card .card-header,
#member_news .card .card-header {
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_report .card .card-header .card-title,
#member_news .card .card-header .card-title {
    color: #000 !important;
}

#member_report .card .card-body,
#member_news .card .card-body {
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_report .card .card-body p,
#member_news .card .card-body p {
    color: rgba(0, 0, 0, 0.65) !important;
}

#member_report .card .card-body p.msg,
#member_news .card .card-body p.msg {
    color: #000 !important;
}

#member_report .card .card-body .this_month_booking_count,
#member_news .card .card-body .this_month_booking_count {
    color: rgba(0, 0, 0, 0.65) !important;
}

@media screen and (max-width: 1200px) {
    footer .menu,
    footer .sns
    {
        display: none !important;
    }
}

/* フッターの色調整 */
footer ul li a {
    color: #000 !important;
}

footer .copyright {
    color: #000 !important;
}

/* タブの色調整 */
.tab .tabHeader li {
    color: #000 !important;
    background: url(../img/_arw.png) right 1.25rem center/0.5rem no-repeat rgba(0, 0, 0, 0.10) !important;
}

.tab .tabHeader li.on, 
.tab .tabHeader li:hover {
    background-color: rgba(0, 0, 0, 0.40) !important;
}

/* フッターメニューの色調整 */
#footer-menu ul li.active i {
    color: rgba(0, 0, 0, 0.65) !important;
}

#footer-menu ul li.active span {
    color: rgba(0, 0, 0, 0.65) !important;
}

/* ローディングアニメーションの色調整 */
.loading .loader,
.loading .loader2,
.loading .loader3 {
    background: rgba(0, 0, 0, 0.65) !important;
}

/* アラートの色調整 */
#member_passwd .alert-danger,
#member_profile .alert-danger,
#member_membership .alert-danger {
    color: #ff6b6b !important;
    background: none !important;
    border: none !important;
}

/* 合計カウントの色調整 */
.total-count {
    color: #000 !important;
}

/* ページネーションの色調整 */
.pagination > li > a, 
.pagination > li > li > span {
    color: #333 !important;
}

.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > span:focus,
.pagination > .active > a:focus {
    color: #fff !important;
    background-color: rgba(0, 0, 0, 0.65) !important;
    border-color: rgba(0, 0, 0, 0.65) !important;
}

/* iPhoneでinput type="month"の横幅を制限 */
/* input[type="month"] {
    max-width: 300px !important;
    width: 100% !important;
} */

/* iOS Safariでのinput type="month"の特別な調整 */
@supports (-webkit-appearance: none) {
    input[type="month"] {
        max-width: 100% !important;
        -webkit-appearance: none !important;
        appearance: none !important;
    }
}

/* モバイルデバイスでのinput type="month"の調整 */
@media screen and (max-width: 768px) {
    input[type="month"] {
        max-width: 100% !important;
        font-size: 16px !important; /* iOSでのズーム防止 */
    }
}
