@charset "UTF-8";
body {
	position: relative;

	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	min-height: 100vh;
	padding-bottom: 50px;
}

.logged-in-menu svg {
	margin-right: 5px;
}

.pointer {
	cursor: pointer;
}

.no-border {
	border: 0;
}

.contents {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	/* 横並びにする */

	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	/* 横幅を100%に設定して全体に広げる */
	margin-right: 15px;
	margin-left: 15px;
}

.left-content {
	width: 43%;
	/* 左カラムの横幅を固定 */
	margin-right: 2%;
}

.right-content {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	/* 子要素を縦に配置 */
	-webkit-box-flex: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	        flex-grow: 1;

	width: 55%;
}

#full-calendar {
	/* 高さを指定（必要に応じて調整） */
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	/* 親要素の幅に合わせる */
	max-width: 100%;
	/* 幅を親要素に制限 */
	margin-bottom: 20px;
}

.home-card {
	width: 100%;
	/* カードが親要素にフィットするようにする */
	margin: 0 !important;
}

.home-title {
	display: block;
	/* 要素をブロックレベルにして横幅を広げる */

	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	/* パディングが含まれるようにする */
	width: 100%;
	/* 親要素の幅いっぱいに設定 */
	/* 下に余白を追加（任意） */
	margin: 10px 0 10px 0 !important;

	text-align: center;
	/* 中央揃え（任意） */
}

.sections-container {
	display: grid;

	margin: 10px;

	grid-template-columns: 1fr 1fr;
	/* 2列に配置 */
	gap: 5px;
	/* セクション間の余白 */
}

#full-calendar {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	/* パディングやボーダーを含める */
	width: 100%;
	/* 親要素の幅に合わせる */
	/* 高さを指定（必要に応じて調整） */
}

.event-histories {
	overflow-y: auto; /* 縦スクロールを有効にする */

	height: 200px; /* 高さを固定 */
	padding: 10px; /* 内側の余白を追加（任意） */

	border: 1px solid #ccc; /* 境界線を追加（任意） */
}

.bg-main {
	border-color: #4776ba;
	background-color: #4776ba;
}

button.bg-main {
	color: #fff;
}

button.bg-main:hover,
button.bg-main:active,
button.bg-main:focus {
	color: #fff;
	border-color: #345789;
	background-color: #345789;
}

a.bg-main {
	color: #4776ba;
	background-color: transparent;
}

a.bg-main:hover,
a.bg-main:active,
a.bg-main:focus {
	color: #345789;
}

@media (max-width: 1024px) {
	.left-content {
		width: 95%;
		margin-right: 0;
	}
	.right-content {
		width: 95%;
	}
}
header {
	margin-bottom: 20px;
}

@media (min-width: 992px) {
	header .menu-body {
		right: 0;
		left: auto;
	}
}
.page-top {
	position: fixed;
	z-index: 1;
	right: 0;
	bottom: 0;

	display: inline-block;

	margin: 0 20px 20px 0;

	text-align: right;
}
.page-top svg {
	font-size: 3em;

	color: #343a40;
	border: #343a40 1px solid;
	border-radius: 5px;
}

.copyright {
	position: absolute;
	bottom: 0;
	left: 0;

	width: 100%;
	height: 45px;
	padding: 10px 0;

	background-color: #ccc;
}
