@charset "UTF-8";

/**
 * オリジナルcss
 */

.content_column .inner {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.content_column .top_content_header {
	width: 260px;
	position: relative;
}

.content_column_header_elements_main {
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.content_column_header_elements_main h2 {
	border-bottom: 1px solid #524B40;
	width: fit-content;
	padding-left: 24px;
	padding-right: 24px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 36px;
}

.content_column_header_elements_main a {
	text-decoration: none;
}

.content_column_header_elements_main a img {
	display: block;
	max-width: 60px;
	margin-top: 24px;
	margin-left: auto;
	margin-right: auto;
}

.content_column .top_content_content {
	width: calc(100% - 290px);
}

.content_column .content_column_list {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.content_column .content_list_element {
	width: calc((100% - 60px) / 3);
}

.content_blog .top_content_header {
	text-align: center;
}

.category_view_top {
	margin-bottom: 120px;
}

.category_view_top_detail {
	width: fit-content;
	max-width: 1178px;
	margin-left: auto;
	margin-right: auto;
	padding: 24px 40px;
	/* border-top: 1px solid var(--c2);
	border-bottom: 1px solid var(--c2); */
	background-color: var(--c3);
	border-radius: 8px;
}

.category_view_top .category_view_top_detail h3 {
	font-family: var(--en);
	display: block;
	width: 100%;
	text-align: center;
	margin: 0;
	margin-bottom: 16px;
}

.category_top_links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 10px;
}

.category_top_link {
	padding: 0 12px;
	border-left: 1px solid #242424;
}

.category_top_link:first-child {
	border-left: none;
}

.category_top_link a {
	text-decoration: none;
}

.category_view_top_detail_sp {
	width: calc(100% - 20px);
	margin-left: auto;
	margin-right: auto;
}

.category_view_top_detail_sp h3 {
	font-size: 1.6rem;
	margin-bottom: 16px;
}

.category_view_top_detail_sp select {
	width: 100%;
	background: #fff;
	border: 1px solid var(--c1);
	padding: 12px;
	border-radius: 0;
}

.category_view_top_detail_sp select option {
	padding: 10px;
}

.content_blog_list {
	display: flex;
	flex-wrap: wrap;
	gap: 48px 27px;
	padding-top: 46px;
}

.content_blog_element {
	width: calc((100% - (81px)) / 4);
}

.content_blog_element a {
	text-decoration: none;
}

.content_blog_element_image {
	width: 100%;
	position: relative;
}

.content_blog_element_image:before {
	content: "";
	display: block;
	padding-top: calc(17000% / 280);
}

.content_blog_element_image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.content_blog_element_content {
	padding-top: 18px;
}

.content_blog_element_content_date {
	margin: 0;
	font-size: 14px;
}

.content_blog_element_content h4 {
	font-size: 16px;
	margin: 1px 0 0 0;
	font-weight: normal;
}

.archive_body_blog .inner .archive_elements {
	display: flex;
	flex-wrap: wrap;
	gap: 42px 4%;
}

.content_list_element {
	width: calc(92% / 3);
}


.content_list_element a {
	text-decoration: none;
}

.list_blog_image {
	position: relative;
	width: 100%;
	margin-bottom: 12px;
}

.list_blog_image:before {
	content: "";
	display: block;
	padding-top: calc(33400% / 400);
}

.archive_body_blog .list_blog_image:before {
	padding-top: 100%;
}

.list_blog_image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
}

.blog_detail_date_category {
	display: flex;
	align-items: center;
	gap: 1em;
	margin-bottom: 24px;
}

.list_blog_date_category {
	font-size: 0.9em;
	margin-top: 12px;
	display: flex;
	align-items: center;
	gap: 1em;
}

/* .list_blog_date {
	margin-right: 1em;
} */

.list_blog_category_detail {
	font-size: 1.6rem;
	color: var(--c2);
}

.list_blog_info h3 {
	font-size: 1em;
	font-weight: normal;
	text-decoration: none;
	margin: 6px 0 0 0;
}

.blog_detail_header h1 {
	font-size: 2.4rem;
}

.blog_detail_content {
	margin-top: 24px;

	h2 {
		margin-top: 1em;
		padding: 0;
	}

	h2:before {
		content: "◆";
		margin-right: 6px;
	}

	h3 {
		margin-bottom: 40px;
	}

	p {
		line-height: 1.66;
	}

	p+p {
		margin-top: 0.5em;
	}
}

.event-area {
	padding-top: 40px;
}

.event-wrapper {
	/* max-width: 800px; */
	margin-left: auto;
	margin-right: auto;
}

.event-wrapper h2 {
	font-size: 2.4rem;
	margin-bottom: 24px;
}

.event-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin-bottom: 80px;
	font-size: 1.6rem;
	border-bottom: 1px solid var(--c1);

	dt {
		width: 190px;
		background: var(--c2);
		padding: 24px 16px 24px 40px;
		font-weight: 700;
		border-top: 1px solid var(--c1);

	}

	dd {
		width: calc(100% - 190px);
		margin: 0;
		padding: 24px 16px 24px 40px;
		border-top: 1px solid var(--c1);

	}
}

.event-area .contact_form_body {
	max-width: none;
}

.event-area .contact_form_need_note {
	margin-top: 0;
}


@media screen and (max-width: 1110px) {
	.content_blog_list {
		gap: 24px 12px;
	}

	.content_blog_element {
		width: calc((100% - (36px)) / 4);
	}
}

@media screen and (max-width: 1110px) {
	.content_blog_element {
		width: calc((100% - (12px)) / 2);
	}
}

@media screen and (max-width:900px) {

	.archive_body_blog .inner,
	.archive_body_news .inner {
		gap: 20px 10px;
	}

	.content_list_element {
		width: calc(96% / 2);
	}
}

@media screen and (max-width:768px) {
	.category_view_top {
		margin-bottom: 32px;
	}

	.category_view_top_detail_sp select {
		font-size: 1.4rem;
		padding: 4px 8px;
	}

	.content_column .top_content_content {
		width: 100%;
	}

	.content_column .top_content_header {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		gap: 0;
		margin-bottom: 0;
	}

	.content_column_header_elements_main {
		position: relative;
		width: 100%;
	}

	.content_column_header_elements_main h2 {
		border: none;
		margin-bottom: 24px;
	}

	.content_column_header_elements_main a img {
		display: inline-block;
		margin: 0 0 0 24px;
		max-width: 24px;
		vertical-align: middle;
	}

	.content_column .button_more_news {
		max-width: 100%;
		text-align: right;
	}

	.content_body .list_blog_info h3 {
		text-align: left;
	}

	.content_column .content_column_list {
		gap: 0 4%;
	}

	.content_column .content_list_element {
		width: 48%;
	}

	.content_column_list .content_list_element:last-child {
		display: none;
	}


	.list_blog_date_category {
		font-size: 1em;
		font-weight: normal;
		margin-top: 0;
	}

	.content_list_element a {
		display: flex;
		flex-wrap: wrap;
		gap: 0;
	}

	.list_blog_image {
		width: 100%;
	}

	.list_blog_info {
		width: 100%;
		font-size: 1.4rem;
	}

	.blog_detail_header h1 {
		font-size: 1.8rem;
	}

	.blog_detail_content {
		h3 {
			text-align: left;
		}

		p,
		li {
			font-size: 1.4rem;
		}
	}


}

@media screen and (max-width:639px) {
	.content_blog_list {
		gap: 0;
	}

	.content_blog_element {
		width: 100%;
		padding: 12px 0;
		border-bottom: 1px dotted #000;
	}

	.content_blog_element a {
		display: flex;
		flex-wrap: wrap;
		gap: 0 12px;
	}

	.content_blog_element_image,
	.content_blog_element_content {
		width: calc(50% - 6px);
		padding-top: 0;
	}

	.archive_body_news .content_list_element {
		width: 100%;
	}

	.archive_body_news .content_list_element a {
		display: flex;
		flex-wrap: wrap;
		gap: 4%;
	}

	.archive_body_news .list_blog_image {
		width: 46%;
	}

	.archive_body_news .list_blog_info {
		width: 50%;
	}

	.list_blog_date_category {
		font-size: 0.9em;
	}

	.list_blog_category_detail {
		display: block;
		margin-left: 0;
		width: fit-content;
		font-size: 1.3rem;
	}

	.event-wrapper h2 {
		font-size: 2rem;
	}

	.event-list {
		margin-bottom: 40px;
		font-size: 1.4rem;

		dt {
			width: 100%;
			padding: 8px 16px;
		}

		dd {
			width: 100%;
			padding: 8px 16px;
		}
	}
}

@media screen and (max-width:500px) {}