@charset "UTF-8";

:root {
	/* メインカラー（赤系） */
	--bs-primary: #c1272d;
	--bs-primary-rgb: 193, 39, 45;

	--bs-secondary: #fabdc2;
	--bs-secondary-rgb: 250, 189, 194;

	--bs-info: #384b70;
	--bs-info-rgb: 56, 75, 112;

	/* 補助カラー */
	--bs-success: #3b9797;
	--bs-success-rgb: 59, 151, 151;

	--bs-warning: #f7ca78;
	--bs-warning-rgb: 247, 202, 120;

	--bs-danger: #d9534f;
	--bs-danger-rgb: 217, 83, 79;

	--bs-dark: #61677A;
	--bs-dark-rgb: 97, 103, 122;

	--bs-light: #ffffff;
	--bs-light-rgb: 255, 255, 255;
}

.menu-surface-bg {
	background-color: #f5f7fb !important;
}

body:not(.top-page) {
	background-color: #f5f7fb !important;
}

/* =============================
   Bootstrap ボタンカラー完全上書き
   ============================= */

/* Primary */
.btn-primary {
	--bs-btn-bg: var(--bs-primary);
	--bs-btn-border-color: var(--bs-primary);
	--bs-btn-hover-bg: rgba(var(--bs-primary-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-primary-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-primary-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-primary-rgb), 0.75);
	color: #fff;
}

/* Secondary */
.btn-secondary {
	--bs-btn-bg: var(--bs-secondary);
	--bs-btn-border-color: var(--bs-secondary);
	--bs-btn-hover-bg: rgba(var(--bs-secondary-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-secondary-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-secondary-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-secondary-rgb), 0.75);
	color: #fff;
}

/* Info */
.btn-info {
	--bs-btn-bg: var(--bs-info);
	--bs-btn-border-color: var(--bs-info);
	--bs-btn-hover-bg: rgba(var(--bs-info-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-info-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-info-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-info-rgb), 0.75);
	color: #fff;
}

/* Success */
.btn-success {
	--bs-btn-bg: var(--bs-success);
	--bs-btn-border-color: var(--bs-success);
	--bs-btn-hover-bg: rgba(var(--bs-success-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-success-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-success-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-success-rgb), 0.75);
	color: #fff;
}

/* Warning */
.btn-warning {
	--bs-btn-bg: var(--bs-warning);
	--bs-btn-border-color: var(--bs-warning);
	--bs-btn-hover-bg: rgba(var(--bs-warning-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-warning-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-warning-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-warning-rgb), 0.75);
	color: #000;
}

/* Danger */
.btn-danger {
	--bs-btn-bg: var(--bs-danger);
	--bs-btn-border-color: var(--bs-danger);
	--bs-btn-hover-bg: rgba(var(--bs-danger-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-danger-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-danger-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-danger-rgb), 0.75);
	color: #fff;
}

/* Dark */
.btn-dark {
	--bs-btn-bg: var(--bs-dark);
	--bs-btn-border-color: var(--bs-dark);
	--bs-btn-hover-bg: rgba(var(--bs-dark-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-dark-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-dark-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-dark-rgb), 0.75);
	color: #fff;
}

/* Light */
.btn-light {
	--bs-btn-bg: var(--bs-light);
	--bs-btn-border-color: var(--bs-light);
	--bs-btn-hover-bg: rgba(var(--bs-light-rgb), 0.85);
	--bs-btn-hover-border-color: rgba(var(--bs-light-rgb), 0.85);
	--bs-btn-active-bg: rgba(var(--bs-light-rgb), 0.75);
	--bs-btn-active-border-color: rgba(var(--bs-light-rgb), 0.75);
	color: #333;
}

/* =============================
   Bootstrap Outline ボタンカラー完全上書き
   ============================= */

/* Primary */
.btn-outline-primary {
	--bs-btn-color: var(--bs-primary);
	--bs-btn-border-color: var(--bs-primary);

	--bs-btn-hover-bg: var(--bs-primary);
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-primary-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-primary-rgb), 0.85);
	color: var(--bs-primary);
}

/* Secondary */
.btn-outline-secondary {
	--bs-btn-color: var(--bs-secondary);
	--bs-btn-border-color: var(--bs-secondary);

	--bs-btn-hover-bg: var(--bs-secondary);
	--bs-btn-hover-border-color: var(--bs-secondary);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-secondary-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-secondary-rgb), 0.85);
	color: var(--bs-secondary);
}

/* Info */
.btn-outline-info {
	--bs-btn-color: var(--bs-info);
	--bs-btn-border-color: var(--bs-info);

	--bs-btn-hover-bg: var(--bs-info);
	--bs-btn-hover-border-color: var(--bs-info);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-info-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-info-rgb), 0.85);
	color: var(--bs-info);
}

/* Success */
.btn-outline-success {
	--bs-btn-color: var(--bs-success);
	--bs-btn-border-color: var(--bs-success);

	--bs-btn-hover-bg: var(--bs-success);
	--bs-btn-hover-border-color: var(--bs-success);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-success-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-success-rgb), 0.85);
	color: var(--bs-success);
}

/* Warning */
.btn-outline-warning {
	--bs-btn-color: var(--bs-warning);
	--bs-btn-border-color: var(--bs-warning);

	--bs-btn-hover-bg: var(--bs-warning);
	--bs-btn-hover-border-color: var(--bs-warning);
	--bs-btn-hover-color: #000;

	--bs-btn-active-bg: rgba(var(--bs-warning-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-warning-rgb), 0.85);
	color: var(--bs-warning);
}

/* Danger */
.btn-outline-danger {
	--bs-btn-color: var(--bs-danger);
	--bs-btn-border-color: var(--bs-danger);

	--bs-btn-hover-bg: var(--bs-danger);
	--bs-btn-hover-border-color: var(--bs-danger);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-danger-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-danger-rgb), 0.85);
	color: var(--bs-danger);
}

/* Dark */
.btn-outline-dark {
	--bs-btn-color: var(--bs-dark);
	--bs-btn-border-color: var(--bs-dark);

	--bs-btn-hover-bg: var(--bs-dark);
	--bs-btn-hover-border-color: var(--bs-dark);
	--bs-btn-hover-color: #fff;

	--bs-btn-active-bg: rgba(var(--bs-dark-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-dark-rgb), 0.85);
	color: var(--bs-dark);
}

/* Light */
.btn-outline-light {
	--bs-btn-color: var(--bs-light);
	--bs-btn-border-color: var(--bs-light);

	--bs-btn-hover-bg: var(--bs-light);
	--bs-btn-hover-border-color: var(--bs-light);
	--bs-btn-hover-color: #333;

	--bs-btn-active-bg: rgba(var(--bs-light-rgb), 0.85);
	--bs-btn-active-border-color: rgba(var(--bs-light-rgb), 0.85);
	color: var(--bs-light);
}

.scroll-to-top {
	position: fixed;
	right: 1rem;
	bottom: 1.5rem;
	cursor: pointer;
	font-size: 2rem;
	z-index: 999;
}
.form-check-input:checked{
   background-color: var(--bs-info) !important;
   border: 0;
}
.form-check-input:focus, .label::after, label.form-check-label:focus, .form-check-input::after, .form-check-input:not(:disabled):not(.disabled):active:focus {
   color: black;
   outline: 0;
   border: 0;
   box-shadow: 0 0 0 0.1rem var(--bs-info) !important;
}
