@charset "UTF-8";

img {
	height: auto;
	width: 100%;
}
.navbar-toggler {
	padding: .25rem;
}
.page {
	min-height: 100vh;
}
.toggle-side-nav {
	display: none;
}
.loginbox {
	align-items: center;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	justify-content: center;
	width: 100%;
}
input, textarea {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	border: 1px solid #000;
	display: block;
	width: 100%;
}
.form-label, .form-notice {
	color: gray;
}
.select-wrapper {
	position: relative;
}
.select-wrapper:after {
	content: "▼";
	display: block;
	font-size: .875rem;
	height: 1.2rem;
	position: absolute;
	right: .5rem;
	top: .5rem;
	width: 1rem;
}
.form-notice {
	font-size: .875rem;
	margin: .25rem 0 0 0;
}
.errfld, 
input[type="email"].errfld, input[type="password"].errfld, input[type="tel"].errfld, input[type="text"].errfld, 
select.errfld, textarea.errfld {
	background-color: #ffb2b2;
	border: 2px solid #ff0000;
}

/*table {
	table-layout: fixed;
	width: 100%;
}*/
table td, table th {
	vertical-align: middle;
}
table .num, table .edit, table .del {
	text-align: center;
}
table .num {
	width: 4rem;
}

// カート内の写真名span区切り
table tbody tr td .attr {
	display: block;
}

#login input#loginid-fld {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	border-bottom: 0;
}
#login input[type="password"], #login input[type="text"] {
	border-color: #dee2e6;
	font-size: 1rem;
	/*padding: .25rem;*/
}
#login input[type="submit"] {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	font-weight: bold;
}

@media screen and (min-width: 992px) {
	/*.toggle-side-nav {
		display: block;
	}*/
	
	.album-area, .album-row {
		width: 100% !important;
	}

	table tbody tr td .attr {
		display: initial;
	}
}


/*
	fix luminous.js
*/
/*.lum-lightbox-inner img.lum-img {
	max-width: 100% !important;
}*/


/* 2024.04.08追加：ヘッダーナビ右側のユーザー名・ログアウトフォーム */
.user-form-area form {
	display: inline;
	margin: 0;
}
.user-form-area input[type="submit"] {
	background-color: transparent;
	border: 0;
	color: rgba(0, 0, 0, .55);
	display: inline;
	padding: .5rem;
	width: fit-content;
}

/* 2024.04.08追加：サイドナビのスタイル */
#side-nav {
	position: sticky;
	top: 56px;
}
#side-nav .navbar {
	width: 100%;
}
/*
#side-nav .user-form-area form {
	display: inline;
	margin: 0;
}
#side-nav .user-form-area input[type="submit"] {
	background-color: transparent;
	border: 0;
	color: #0d6efd;
	display: block;
	padding: .5rem 0;
	text-align: left;
}
*/

/* 2024.04.08追加：ダッシュボード内お知らせ */
.info-area dl dd {
	border-bottom: 1px solid #dee2e6;
	color: gray;
}
.info-area dl dd:last-child {
	border-bottom: 0 !important;
	margin-bottom: 0 !important;
}

/* 2024.04.08追加：ダッシュボードの行事ラッパー */
.dashboard-event {
	margin-bottom: 4rem;
}


/* 2024.04.08追加：お知らせ一覧内のリンク */
.infolist-link {
	font-size: 1.125rem;
}
.infolist-desc {
	color: gray;
	font-size: 1rem;
}

/* 2024.04.08追加：行事詳細ページのライトボックス内表示画像、一覧の動画サムネール */
.lum-close-button {
	cursor: pointer !important;
	opacity: 1 !important;
	top: 61px !important;
	z-index: 1022;
}
.lum-close-button:after, .lum-close-button:before {
	box-shadow: 0 0 5px rgba(0, 0, 0, .75) !important;
}
.lum-lightbox-inner img {
	max-width: 100%;
	width: initial !important;
}
.card video {
	height: auto;
	width: 100%;
	user-drag: none;
	-webkit-user-drag: none;
	-moz-user-select: none;
}
