.footer_content{
	margin-top: 0!important;
}

.wpcf7-form-control-wrap:has(select)::before{
  display: none;
}

/* =============================================
  共通
============================================= */
:root {
	/* font-weight */
	--thin: 100;
	--extralight: 200;
	--light: 300;
	--regular: 400;
	--medium: 500;
	--semibold: 600;
	--bold: 700;
	--extrabold: 800;
	--black: 900;
}

img {
	object-fit: cover;
	vertical-align: bottom;
}

.event_detail_page {
	width: 100%;
}

.label {
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #EF857D;
	line-height: calc(32 / 16);
	white-space: nowrap;
}

.value {
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--medium);
	color: #333333;
	line-height: calc(32 / 16);
}

.section_title {
	position: relative;
	font-size: 2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
	padding-left: 4rem;
}

.section_title::before {
	content: "";
	display: inline-block;
	width: 2.863rem;
	height: 3.192rem;
	background-image: url('../img/flower2.svg');
	background-position: center;
	background-size: cover;
	position: absolute;
	left: 0;
}

.section_text {
	font-size: 1.6em;
	font-family: var(--ZenMaru);
	font-weight: var(--medium);
	color: #333333;
	line-height: calc(32 / 16);
	margin-top: 2.4rem;
	word-wrap: break-word;
}

/* イベント概要 */
.event_wrapper {
	width: 100%;
	padding: 6.4rem 24rem 10rem;
}

.event_overview_wrapper {
	max-width: 96rem;
	width: 100%;
	display: flex;
	gap: 3.9rem;
}

.event_overview {
	width: 16rem;
	display: flex;
	flex-direction: column;
	gap: .8rem;
}

.event_status {
	width: 100%;
	height: 5.2rem;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #FFFFFF;
	border-radius: 1rem;
}

.status_pre {
	background-color: #BEBEBE;
}

.status_open {
	background-color: #EF857D;
}

.full {
    background-color: #EEDE8E;
    color: #333333;
}

.status_closed {
	background-color: #333333;
}

.event_datetime {
	width: 14.7rem;
	margin-inline: .7rem;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.date {
	font-size: 2.4rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
}

.date span {
	font-size: 1.6rem;
}

.time {
	font-size: 2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
}

.event_title {
	margin-top: 1.8rem;
	font-size: 3.2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	line-height: calc(46 / 32);
	color: #333333;
}

.event_img {
	width: 100%;
	height: 54rem;
	border-radius: 2rem;
	margin-top: 4rem;
}

/* イベント詳細 */
.event_detail {
	width: 100%;
	margin-top: 4rem;
	padding: 4rem 18.8rem;
	background-color: #FFFEE5;
	border-radius: 2rem;
	display: flex;
	gap: 4rem;
}

.detail_list {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.detail_list .value {
	max-width: 32rem;
}

.inner_flex {
	display: flex;
	gap: 1.6rem;
}

/* 小見出しセクション */
.description {
	width: 100%;
	margin-top: 8rem;
}

.description_title {
	width: 100%;
	font-size: 2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
	line-height: calc(32 / 20);
	padding-bottom: 1rem;
	border-bottom: .5rem dotted #EF857D;
}

.description_text {
	width: 100%;
	margin-top: 2.4rem;
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--medium);
	color: #333333;
	line-height: calc(32 / 16);
	word-wrap: break-word;
}

/* スタッフからの連絡 */
.notice {
	width: 100%;
	margin-top: 4rem;
	padding: 3.1rem 4rem 4rem 4rem;
	border: .2rem solid #EF857D;
	border-radius: 2rem;
}

.notice_title {
	width: fit-content;
	margin-inline: auto;
	font-size: 2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #EF857D;
}

.notice_text {
	width: 100%;
	margin-top: 4.4rem;
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
	line-height: calc(32 / 16);
}

/* 会場について */
.about_venue {
	width: 100%;
	margin-top: 8rem;
}

.map {
	width: 100%;
	height: 40rem;
	margin-top: 2.4rem;
	border-radius: 2rem;
	overflow: hidden;
}

.map > iframe{
	width: 100%;
	height: 100%;
}

.venue_detail {
	width: 100%;
	margin-top: 1.6rem;
}

.venue_detail_list {
	display: flex;
	gap: 7.2rem;
	width: fit-content;
	max-width: 100%;
	margin-inline: auto;
}

/* ○○について */
.topic_section {
	width: 100%;
	margin-top: 8rem;
}

/* form */
.event_form_wrapper {
	width: 100%;
	padding: 10rem 24rem;
	background-color: #FFFEE5;
}

.form_title {
	width: fit-content;
	margin-bottom: 4rem;
	margin-inline: auto;
	font-size: 3.2rem;
	font-family: var(--ZenMaru);
	font-weight: var(--bold);
	color: #333333;
}

.form_content_wrapper {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.text_input {
	display: block;
	width: 100%;
}

.label_wrapper {
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.form_label {
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--medium);
	color: #333333;
}

.required_label {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 7.6rem;
	height: 3.6rem;
	background-color: #EF857D;
	border-radius: 1.8rem;
	font-size: 1.4rem;
	font-weight: var(--medium);
	font-family: var(--ZenMaru);
	color: #FFFFFF;
}

.text_input {
	width: 100%;
	height: 4.5rem;
	font-size: 1.6rem;
	font-weight: var(--medium);
	color: #333333;
	border-radius: 1rem;
	padding: 1.05rem 2.4rem;
	margin-top: 1rem;
	background-color: #FFFFFF;
}

.text_input::placeholder {
	color: #BEBEBE;
}

.attention {
	font-size: 1.6rem;
	font-weight: var(--medium);
	font-family: var(--ZenMaru);
	margin-top: 1rem;
	color: #333333;
}

.privacy_label {
	display: flex;
	align-items: center;
	gap: .5rem;
	width: fit-content;
	margin: 2.4rem auto 0;
	font-size: 1.6rem;
	font-family: var(--ZenMaru);
	font-weight: var(--medium);
	color: #333333;
}

.privacy_label a {
	text-decoration: underline;
}

input[name="privacy"] {
	width: 1.8rem;
	height: 1.8rem;
	appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
}

.submit_button {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 29.2rem;
	height: 4.4rem;
	margin: 3.2rem auto 0;
	font-size: 1.4rem;
	font-weight: var(--bold);
	font-family: var(--ZenMaru);
	color: #FFFFFF;
	background-color: #EF857D;
	border-radius: 5.4rem;
}

.submit_button::after {
	content: '';
	width: .9rem;
	height: .8rem;
	background-color: #FFFFFF;
	position: absolute;
	right: 1.888rem;
	clip-path: polygon(100% 50%, 0% 0%, 0% 100%);
}

/* エラーメッセージ */
.wpcf7-not-valid-tip,
.wpcf7-response-output {
	font-size: 1.4rem;
}

#event{
	pointer-events: none;
}

@media screen and (max-width: 699.98px) {
	/* =============================================
		共通
	============================================= */
	.section_title {
		padding-left: 4.5rem;
	}
	
	.section_text {
		line-height: calc(30 / 16);
		margin-top: 2.208rem;
		width: 31.5rem;
		margin: 2.208rem auto 0;
		font-size: 1.5rem;
	}

	/* イベント概要 */
	.event_wrapper {
		padding: 5rem 2rem;
	}

	.event_overview_wrapper {
		max-width: 33.5rem;
		gap: .8rem;
		flex-direction: column;
	}
	
	.event_overview {
		width: 100%;
		flex-direction: row;
		gap: 1.6rem;
	}

	.event_status {
		width: 8.8rem;
		height: 3.6rem;
	}

	.event_datetime {
		width: fit-content;
		margin-inline: 0;
		align-items: start;
	}

	.date {
		font-size: 1.6rem;
	}
	
	.time {
		font-size: 1.4rem;
	}

	.event_title {
		margin-top: .8rem;
		font-size: 2.4rem;
		line-height: calc(36 / 24);
	}

	.event_img {
		height: 20rem;
		border-radius: 1rem;
		margin-top: 3rem;
	}

	/* イベント詳細 */
	.event_detail {
		width: 100%;
		margin-top: 3rem;
		padding: 4rem 2rem;
		border-radius: 1rem;
		flex-direction: column;
		gap: 1.6rem;
	}

	/* 小見出しセクション */
	.description {
		margin-top: 5rem;
	}

	.description_title {
		border-bottom: .5rem dotted #EF857D;
	}

	/* スタッフからの連絡 */
	.notice {
		margin-top: 5rem;
		padding: 3rem 2rem;
		border-radius: 1rem;
	}

	.notice_text {
		margin-top: 2rem;
	}

	/* 会場について */
	.about_venue {
		margin-top: 5rem;
	}

	.map {
		height: 20rem;
		margin-top: 2.2rem;
		border-radius: 1rem;
	}

	.venue_detail {
		margin-top: 2rem;
	}
	
	.venue_detail_list {
		gap: 1.6rem;
		flex-direction: column;
	}

	/* 駐車場について */
	.topic_section {
		margin-top: 4rem;
	}

	/* form */
	.event_form_wrapper {
		padding: 5rem 2rem;
	}

	.form_title {
		font-size: 2.8rem;
	}

	.event_form {
		margin-top: 4.6rem;
	}

	.required_label {
		width: 6rem;
		height: 2.8rem;
	}

	.privacy_label {
		margin: 2.4rem 0 0 0;
	}

	.description_text{
		width: 31.5rem;
		font-size: 1.5rem;
		margin: 2.4rem auto 0;
	}
}
