@charset "UTF-8";
/* 年間行事予定
------------------------------------------------------------------------- */
.lead_text {
	margin-bottom: 10.6666666667vw;
}
.wrap_calendar_note {
	border: 1px solid #7D2124;
	padding: calc(16 / 375 * 100vw);
	font-size: calc(16 / 375 * 100vw);
	margin-bottom: 10.6666666667vw;
}
.wrap_calendar_note p {
	margin-bottom: 1em;
}
.wrap_calendar_note p:last-child {
	margin-bottom: 0;
}
.events_calendar {
	padding-bottom: calc(64 / 375 * 100vw);
}
.eo-fullcalendar-loading img {
	width: 16px;
}
/* ========== カレンダーカスタマイズ ========== */
/* 今の年月 */
.wrap_calendar .fc-toolbar h2 {
	color: #7D2124;
	font-size: calc(20 / 375 * 100vw) !important;
}
/* 前月・今月ボタン */
.wrap_calendar {
	padding-bottom: calc(16 / 375 * 100vw);
	position: relative;
}
.wrap_calendar .fc-right {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0; 
	transform: translateY(100%);
}
.wrap_calendar .fc-button-group {
	position: absolute;
	top: 0;
}
.wrap_calendar .fc-button-group:first-child {
	left: 0;
}
.wrap_calendar .fc-button-group:nth-child(2) {
	right: 0;
}
.wrap_calendar .fc-button-group:nth-child(3) {
	left: 50%;
	transform: translateX(-50%);
}
.wrap_calendar .fc .fc-toolbar>*>* {
	margin: 0;
}
/* ボタン */
.wrap_calendar .fc button {
	padding: 0;
	height: auto;
	background: transparent;
	border: none;
	text-shadow: none;
	box-shadow: none;
	font-family: "Zen Old Mincho", serif;
	font-weight: 900;
	color: #210101;
	opacity: 1;
}
.wrap_calendar .fc button .fc-icon {
	font-size: calc(14 / 375 * 100vw);
	display: inline;
	position: static;
	margin: 0;
	color: #7D2124;
	font-family: "Zen Old Mincho", serif;
}
.wrap_calendar .fc-icon-left-single-arrow:after {
	content: "《 前月";
	font-size: calc(14 / 375 * 100vw);
}
.wrap_calendar .fc-icon-right-single-arrow:after {
	content: "翌月 》";
	font-size: calc(14 / 375 * 100vw);
}
/* 曜日 */
.wrap_calendar .fc-unthemed th {
	font-size: calc(14 / 375 * 100vw);
	background: #FFF5F2 !important;
	color: #7D2124;
	border-color: #F6F6F6;
}
/* 日付 */
.wrap_calendar .fc-ltr .fc-basic-view .fc-day-number {
	font-size: calc(12 / 375 * 100vw);
}
/* カレンダー内文字 */
.wrap_calendar .eo-fullcalendar .fc-event {
	font-size: calc(12 / 375 * 100vw);
	color: #fff!important;
}
/* 枠線 */
.wrap_calendar .eo-fullcalendar .fc-view>table>tbody {
	position: relative;
}
.wrap_calendar .eo-fullcalendar .fc-view>table>tbody::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #210101;
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
	z-index: 10;
}
.eo-fullcalendar-reset .fc-view-container td {
	border-color: #F6F6F6;
}

/* 競技会
------------------------------------------------------------------------- */
.wrap_event_contents {
	margin-bottom: 17.0666666667vw;
}

.event_contents {
	margin-bottom: 8.5333333333vw;
}
.event_contents:last-child {
	margin-bottom: 0;
}

/* 特記事項 */
.special_notes p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 2.1333333333vw;
}
.special_notes p::before {
	content: "・";
	display: block;
}
.special_notes p:last-child {
	margin-bottom: 0;
}
.special_notes p.note::before {
	content: "※";
}

/* 現在のお申し込み組 */
.recept_note {
	font-size: 4.2666666667vw;
}

/* 現在の参加者ボタン */
.btn_participants {
	margin-bottom: calc(48 / 375 * 100vw);
}

/* PDF */
.event_pdf {
	margin-top: calc(48 / 375 * 100vw);
}

/* イベント
------------------------------------------------------------------------- */
.total_price_contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 4.2666666667vw;
	margin-bottom: 4.2666666667vw;
}
.total_price_contents:last-child {
	margin-bottom: 0;
}
.total_price_contents span:has(select.wpcf7-select) {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

/* その他
------------------------------------------------------------------------- */
.eventorganiser-event-meta {
	display: none;
}

.single_content {
	margin-bottom: calc(40 / 375 * 100vw);
}

@media (min-width: 769px) {
	/* 年間行事予定
	------------------------------------------------------------------------- */
	.lead_text {
		text-align: center;
		margin: 40px 0;
	}
	.wrap_calendar_note {
		padding: 24px;
		font-size: 16px;
		margin-bottom: 40px;
	}
	.wrap_calendar_note p {
		margin-bottom: 1em;
	}
	.wrap_calendar_note p:last-child {
		margin-bottom: 0;
	}
	.events_calendar {
		width: min(95%, 1120px);
		padding-bottom: 128px;
	}
	.events_calendar .inner {
		width: min(95%, 1036px)
	}
	/* ========== カレンダーカスタマイズ ========== */
	/* 今の年月 */
	.wrap_calendar .fc-toolbar h2 {
		font-size: 24px!important;
	}
	/* 前月・今月ボタン */
	.wrap_calendar {
		padding-bottom: 16px;
	}
	.wrap_calendar .fc button .fc-icon {
		font-size: 20px;
	}
	.wrap_calendar .fc-icon-left-single-arrow:after {
		font-size: 20px;
	}
	.wrap_calendar .fc-icon-right-single-arrow:after {
		font-size: 20px;
	}
	/* 曜日 */
	.wrap_calendar .fc-unthemed th {
		font-size: 16px;
	}
	/* 日付 */
	.wrap_calendar .fc-ltr .fc-basic-view .fc-day-number {
		font-size: 18px;
	}
	/* カレンダー内文字 */
	.wrap_calendar .eo-fullcalendar .fc-event {
		font-size: 12px;
	}
	/* ボタン */
	.wrap_calendar .fc button {
		position: relative;
	}
	.wrap_calendar .fc button::after {
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		background: #7D2124;
		position: absolute;
		bottom: 0;
		left: 0;
		transform: scale(0, 1);
		transform-origin: right top;
		transition: transform 0.2s;
	}
	.wrap_calendar .fc button:hover::after {
		transform: scale(1, 1);
		transform-origin: left top;
	}
	/* 競技会
	------------------------------------------------------------------------- */
	.wrap_event_contents {
		margin-bottom: 64px;
	}
	.event_contents {
		margin-bottom: 32px;
	}
	.event_contents .flex_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 8px;
	}
	/* 特記事項 */
	.special_notes p {
		margin-bottom: 8px;
	}
	/* 現在のお申し込み組 */
	.recept_note {
		font-size: 16px;
	}
	/* 現在の参加者ボタン */
	.btn_participants {
		margin-bottom: 48px;
	}
	/* PDF */
	.event_pdf {
		margin-top: 48px;
	}
	/* イベント
	------------------------------------------------------------------------- */
	.wrap_total_price {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 32px;
	}
	.total_price_contents {
		gap: 8px;
		margin-bottom: 0;
	}
	.total_price_contents p {
		font-size: 18px;
		font-size: 1.8rem;
	}
	.total_price_contents span:has(select.wpcf7-select) {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
	}
	.total_price_contents select.wpcf7-select {
		width: 172px;
	}
	/* その他
	------------------------------------------------------------------------- */
	.single_content {
		margin-bottom: 40px;
	}
}

/* アイキャッチ画像追加_20250422 */
.eyecatch {
	margin: calc(48 / 375 * 100vw) 0;
	text-align: center;
}

.eyecatch img {
	width: auto;
	max-width: 100%;
}

@media (min-width: 769px) {
	.eyecatch {
		margin: 48px 0;
	}
}