.column_search,
.column_search h1,
.column_search h2,
.column_search h3,
.column_search p {
	margin: 0;
	padding: 0;
}

.column_search a {
	text-decoration: none;
}

.column_search img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.column_search {
	font-family: 'Noto Sans JP', sans-serif;
	max-width: 1080px;
	margin: 0 auto;
}

.header-container {
	display: flex;
	align-items: center;
	padding: 0 20px;
	margin: 0 0 48px 0;
}

.header-container svg {
	margin-right: 20px;
}

.header-container h1 {
	font-size: 40px;
	color: #f29600;
	margin: 0;
}

.search-filter-top {
	padding: 0 0px 20px;
	margin: 0 20px;
	border-bottom: 1px solid #FFD899;
}

.search-results-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(246px, 333px));
	gap: 20px;
	padding: 20px;
}

.search-result-card {
	border: 1px solid #ddd;
	border-radius: 10px;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	position: relative;
	transition: transform 0.3s, box-shadow 0.3s;
}

.search-result-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.card-header {
	height: 200px;
	overflow: hidden;
}

.card-header img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.card-body {
	padding: 15px;
	padding-bottom: 40px;
}

.card-title {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 10px 0;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
}

.card-date {
	font-size: 14px;
	color: #999;
	margin-bottom: 10px;
}

.card-tags {
	margin-bottom: 10px;
}

.card-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.read-more {
	position: absolute;
	bottom: 15px;
	right: 15px;
	color: #f29600;
	text-decoration: none;
	font-size: 20px;
}

.blog-filter ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}

.blog-filter li {
	margin-bottom: 10px;
}

.blog-filter ul li {
	padding: 4px 0 !important;
}

.blog-filter h4 {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
	color: #f29600;
	display: flex;
	align-items: center;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 0 0 0;
}

.blog-filter h4::before {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 5px;
	background-size: contain;
	background-repeat: no-repeat;
}

.sf-field-taxonomy-content_year h4::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="20" viewBox="0 0 18 20" fill="none"><g clip-path="url(%23clip0_246_2129)"><path d="M8.65208 10.1172C4.32827 10.1172 0.760354 13.8004 0.237111 18.561C0.166097 19.2072 0.673593 19.7715 1.32371 19.7715H15.9808C16.6309 19.7715 17.1384 19.2072 17.0673 18.561C16.5441 13.8004 12.9762 10.1172 8.65238 10.1172H8.65208Z" fill="%23F29600" stroke="%23F29600" stroke-width="0.457578" stroke-miterlimit="10"/><path d="M8.66223 11.0354C11.6492 11.0354 14.0706 8.61402 14.0706 5.62708C14.0706 2.64014 11.6492 0.21875 8.66223 0.21875C5.6753 0.21875 3.25391 2.64014 3.25391 5.62708C3.25391 8.61402 5.6753 11.0354 8.66223 11.0354Z" fill="%23F29600" stroke="%23F29600" stroke-width="0.437967" stroke-miterlimit="10"/></g><defs><clipPath id="clip0_246_2129"><rect width="17.3006" height="20" fill="white"/></clipPath></defs></svg>');
}

.sf-field-taxonomy-content_info h4::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="22" viewBox="0 0 20 22" fill="none"><g clip-path="url(%23clip0_246_2140)"><path d="M12.6617 1.37724L2.7466 13.1644C2.61904 13.316 2.67788 13.5755 2.87804 13.7438L8.23001 18.2458C8.43017 18.4142 8.69584 18.4277 8.8234 18.2761L18.7386 6.48895C18.8661 6.33731 18.8073 6.07788 18.6071 5.90951L13.2551 1.40752C13.055 1.23915 12.7893 1.2256 12.6617 1.37724Z" fill="%23F29600" stroke="%23F29600" stroke-width="1.73684" stroke-miterlimit="10"/><path d="M2.65419 14.1024C2.48028 13.9584 2.21569 14.0565 2.17762 14.2789L1.06289 20.8323C1.02519 21.0551 1.24239 21.2349 1.45399 21.1566L7.68673 18.8454C7.89833 18.767 7.94573 18.4886 7.77182 18.3445" stroke="%23F29600" stroke-width="1.73684" stroke-miterlimit="10" stroke-linecap="round"/><path d="M1.57792 17.8972C2.67735 17.7897 3.77678 18.6847 3.89471 19.7826C3.18564 20.2289 2.34894 20.4704 1.51111 20.4708C1.41446 19.5505 1.69137 18.5966 2.26534 17.8711" fill="%23F29600"/><path d="M1.57915 17.9769C2.40988 17.8985 3.22792 18.3956 3.6112 19.1245C3.71868 19.3286 3.7907 19.5529 3.81645 19.7824L3.85601 19.7134C3.31376 20.0533 2.69724 20.2765 2.06132 20.356C1.8792 20.3788 1.69596 20.39 1.51235 20.3903L1.59221 20.4702C1.51981 19.7671 1.66274 19.048 1.99787 18.4255C2.09192 18.2508 2.20052 18.0829 2.3233 17.9269C2.3498 17.8929 2.35614 17.847 2.3233 17.8142C2.29568 17.7866 2.23709 17.7802 2.21059 17.8142C1.75231 18.396 1.47764 19.108 1.42352 19.847C1.40822 20.0545 1.41158 20.2631 1.43285 20.4702C1.43733 20.5131 1.4657 20.5501 1.51272 20.5501C2.17962 20.5486 2.84204 20.3993 3.44662 20.1179C3.6153 20.0392 3.77913 19.95 3.937 19.8511C3.95901 19.8373 3.97954 19.81 3.97655 19.782C3.87691 18.8864 3.17493 18.1265 2.31621 17.8858C2.07774 17.819 1.82658 17.7936 1.57989 17.8168C1.53698 17.8209 1.50003 17.8507 1.50003 17.8966C1.50003 17.9366 1.5366 17.9806 1.57989 17.9765L1.57915 17.9769Z" fill="%23F29600"/><path d="M5.78906 16.2105L16.2101 3.47363" stroke="%23F29600" stroke-width="1.73684" stroke-miterlimit="10"/></g><defs><clipPath id="clip0_246_2140"><rect width="20" height="22" fill="white"/></clipPath></defs></svg>');
}

.sf-field-taxonomy-content_area h4::before {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="22" viewBox="0 0 16 22" fill="none"><g clip-path="url(%23clip0_246_2156)"><path d="M14.7322 3.90032C13.9979 2.74928 12.9763 1.80109 11.7776 1.1581C10.6191 0.53724 9.31166 0.208984 7.99648 0.208984C6.4763 0.208984 4.99331 0.642356 3.70795 1.46207C2.80033 2.04082 2.03225 2.78155 1.42492 3.66366C0.839404 4.51411 0.429085 5.458 0.20533 6.4692C-0.0184246 7.48009 -0.0442425 8.50912 0.127877 9.52739C0.30645 10.5835 0.690644 11.579 1.26939 12.4863L6.77597 21.1208C7.34704 22.0162 8.65453 22.0162 9.22529 21.1208L14.7349 12.482C15.5374 11.2188 15.969 9.75913 15.9831 8.26016C15.9976 6.71385 15.5648 5.20628 14.7322 3.90063V3.90032ZM12.0308 10.625L11.8258 10.8718C9.83447 13.2701 6.15297 13.2654 4.16745 10.8625L3.97105 10.6246C2.26738 7.95342 3.54997 4.23165 6.9527 3.37475C8.32382 3.02958 9.77669 3.34278 10.8841 4.22212C13.0276 5.92426 13.2695 8.6754 12.0311 10.6246L12.0308 10.625Z" fill="%23F29600" stroke="%23F29600" stroke-width="0.0322723" stroke-miterlimit="10"/></g><defs><clipPath id="clip0_246_2156"><rect width="16" height="21.6157" fill="white" transform="translate(0 0.192383)"/></clipPath></defs></svg>');
}

.blog-filter label {
	width: 100% !important;
}

.blog-filter select,
.blog-filter input[type="submit"] {
	width: 100%;
	padding: 10px;
	border: 1px solid #ddd;
	border-radius: 5px;
	font-size: 14px;
}

.blog-filter input[type="submit"] {
	background-color: #F1207A;
	color: #fff;
	border: none;
	cursor: pointer;
	padding: 8px 20px;
	width: 180px;
	color: #FFF;
	font-family: "Noto Sans JP";
	font-size: 16px;
}

.blog-filter input[type="submit"]:hover {
	border-radius: 8px;
	border: 2px solid #F1207A;
	color: #F1207A;
	background: #FFF;
}

/* 「条件を削除する」リンクにSVGアイコンを追加 */
.sf-field-reset a.search-filter-reset:before {
    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-x"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>');
    display: inline-block;
    margin-right: 5px;
    vertical-align: middle; /* アイコンとテキストを中央揃え */
}

/* 「条件を削除する」リンクを1行下に表示 */
.sf-field-reset {
    width: 100%;
    text-align: center;
    margin-top: 10px;
}

.sf-field-reset a.search-filter-reset {
    display: inline-block;
    color: #999;
    text-decoration: none;
    margin-top: 10px;
    white-space: nowrap; /* テキストの折り返しを防ぐ */
}

.sf-field-reset a.search-filter-reset:hover {
    text-decoration: underline;
}

/* リセットリンクを他の要素から離す */
.blog-filter .sf-field-reset {
    align-self: flex-end; /* リセットリンクを下に配置 */
    margin-left: auto; /* 右端に配置 */
}

.pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
}

.pagination-item {
	margin: 0 5px;
}

.pagination-item a,
.pagination-item .current {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	color: #ff9800;
	text-decoration: none;
	font-size: 16px;
	transition: background 0.3s;
	border: 2px solid #ff9800;
}

.pagination-item a:hover {
	background: #ff9800;
	color: #fff;
}

.pagination-item .current {
	background: linear-gradient(to right, #ff9800, #ff6f00);
	color: #fff;
	border: none;
}

.pagination-item .prev,
.pagination-item .next {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	color: #ff9800;
	text-decoration: none;
	font-size: 18px;
	border-radius: 50%;
	transition: background 0.3s;
	border: none;
	/* ボーダーをなくす */
}

.pagination-item .prev:hover,
.pagination-item .next:hover {
	color: #fff;
	background: #ff9800;
}


.back-to-top-container {
    text-align: center;
	margin: 20px 0 64px 0;
}

.back-to-top {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    background-color: #ff9800;
    color: #fff;
    text-decoration: none;
    border-radius: 25px;
    font-size: 16px;
    transition: background-color 0.3s;
}

.back-to-top svg {
    margin-right: 10px;
    fill: white;
}

.back-to-top:hover {
    background-color: #ff6f00;
}




@media (min-width: 768px) {
	.blog-filter ul {
		flex-wrap: nowrap;
	}

	.blog-filter li {
		flex: 1;
	}

	.blog-filter .sf-field-submit {
		flex: 0 0 auto;
		align-self: flex-end;
	}

	.blog-filter .sf-field-reset {
		align-self: flex-end;
	}
}

@media (max-width: 767px) {
	.blog-filter ul {
		flex-direction: column;
	}

	.blog-filter li {
		width: 100%;
		margin-right: 0;
	}

	.blog-filter .sf-field-submit,
	.blog-filter .sf-field-reset {
		align-self: center;
	}

	.blog-filter input[type="submit"] {
		width: 100%;
	}


	.pagination-item {
		margin: 0 5px;
	}

	.pagination-item a,
	.pagination-item .current {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		text-decoration: none;
		font-size: 14px;
	}

	.pagination-item .prev,
	.pagination-item .next {
		width: 32px;
		height: 32px;
		text-decoration: none;
		font-size: 18px;
	}


	.pagination-item svg {
		width: 8px;
		height: 10px;
	}
}

@media (max-width: 1080px) {
	.column_search {
		width: 90%;
	}
}

@media (max-width: 767px) {
	.column_search {
		width: 90%;
	}

	.header-container h1 {
		font-size: 24px;
	}
}