@charset "UTF-8";
#page_head {
		padding-inline: 20px;
		-webkit-margin-before: 140px;
		        margin-block-start: 140px;
}
@media screen and (min-width: 425px) {
		#page_head {
				padding-inline: 30px;
		}
}
@media screen and (min-width: 768px) {
		#page_head {
				padding-inline: 40px;
		}
}
@media screen and (min-width: 992px) {
		#page_head {
				padding-inline: 70px min(100vw - 435px, 250px);
		}
}
@media screen and (min-width: 1300px) {
		#page_head {
				padding-inline: 70px;
		}
}
@media screen and (min-width: 992px) {
		#page_head {
				-webkit-margin-before: 160px;
				        margin-block-start: 160px;
		}
}

.page_title {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 10px 10px;
		-webkit-box-align: baseline;
		    -ms-flex-align: baseline;
		        align-items: baseline;
		-webkit-padding-after: 15px;
		        padding-block-end: 15px;
		border-bottom: solid 1px #222222;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
}
@media screen and (min-width: 992px) {
		.page_title {
				gap: 20px;
		}
}

.page_title_ja {
		font-size: 3.5rem;
		line-height: 1.3;
}
@media screen and (min-width: 768px) {
		.page_title_ja {
				font-size: 4.5rem;
		}
}
@media screen and (min-width: 992px) {
		.page_title_ja {
				font-size: 5rem;
		}
}

.page_title_en {
		font-size: 1.6rem;
		line-height: 1.5;
}

.section_title {
		position: relative;
		font-size: 2.5rem;
		font-weight: 500;
		line-height: 1.5;
		-webkit-padding-start: 20px;
		        padding-inline-start: 20px;
		-webkit-padding-after: 15px;
		        padding-block-end: 15px;
		border-bottom: solid 1px #DBD9CD;
}
@media screen and (min-width: 992px) {
		.section_title {
				font-size: 3rem;
		}
}
.section_title::before {
		content: "";
		position: absolute;
		top: 0.8em;
		left: 0;
		translate: 0 -50%;
		width: 10px;
		height: 8px;
		background-color: #008C64;
		border-radius: 0 100vmax 100vmax 0;
}

.category_row {
		-webkit-margin-before: 60px;
		        margin-block-start: 60px;
}
@media screen and (min-width: 992px) {
		.category_row {
				-webkit-margin-before: 80px;
				        margin-block-start: 80px;
		}
}
.category_row + .category_row {
		-webkit-margin-before: 30px;
		        margin-block-start: 30px;
}
.category_row dt {
		font-size: 2rem;
		line-height: 1.5;
}
.category_row dd {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
}

.category_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 15px 4px;
}

.category_item {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
}
.category_item a {
		-webkit-transition: background-color 0.3s;
		transition: background-color 0.3s;
}
.category_item a span {
		background-color: transparent;
		color: #222222;
		border: 1px solid #9d9b94;
}
@media (hover: hover) and (pointer: fine) {
		.category_item a:hover span {
				background-color: #008c64;
				color: #ffffff;
		}
}
.category_item span {
		display: block;
		padding-block: 5px;
		padding-inline: 15px;
		border-radius: 6px;
		-webkit-transition: background-color 0.3s, color 0.3s;
		transition: background-color 0.3s, color 0.3s;
		font-size: 1.4rem;
		line-height: 1.8;
		border: solid 1px #008c64;
		background-color: #008c64;
		color: #ffffff;
}

#news {
		-webkit-margin-before: 40px;
		        margin-block-start: 40px;
		padding-inline: 20px;
		-webkit-padding-after: 80px;
		        padding-block-end: 80px;
}
@media screen and (min-width: 425px) {
		#news {
				padding-inline: 30px;
		}
}
@media screen and (min-width: 768px) {
		#news {
				padding-inline: 40px;
		}
}
@media screen and (min-width: 992px) {
		#news {
				padding-inline: 60px;
		}
}
@media screen and (min-width: 992px) {
		#news {
				-webkit-padding-after: 100px;
				        padding-block-end: 100px;
		}
}

.news_list {
		border-top: solid 1px #222222;
		-webkit-padding-before: 20px;
		        padding-block-start: 20px;
}

.news_item {
		border-bottom: solid 1px #9d9b94;
}
.news_item a {
		color: #222222;
		display: block;
		padding-block: 30px;
		-webkit-transition: color 0.3s;
		transition: color 0.3s;
}
@media screen and (min-width: 768px) {
		.news_item a {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				gap: 30px;
		}
}
@media screen and (min-width: 992px) {
		.news_item a {
				gap: 50px;
		}
}
@media (hover: hover) and (pointer: fine) {
		.news_item a:hover {
				color: #008c64;
		}
}

.news_date {
		font-size: 1.6rem;
		font-weight: 300;
}

.news_title {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		text-decoration: underline;
		line-height: 1.8;
		font-size: 1.6rem;
		font-weight: 400;
		overflow: hidden; /* 溢れた部分を隠す */
		text-overflow: ellipsis; /* 溢れた部分に「...」を表示 */
		text-align: left;
		white-space: nowrap;
}
@media screen and (min-width: 768px) {
		.news_title {
				-webkit-margin-before: 0;
				        margin-block-start: 0;
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
		}
}

.pagination {
		-webkit-margin-before: 50px;
		        margin-block-start: 50px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		gap: 7px;
		position: relative;
}

.page_item:not(.prev, .next, .omission) {
		position: relative;
		width: 40px;
		aspect-ratio: 1/1;
		height: 40px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}
@media (hover: hover) and (pointer: fine) {
		.page_item:not(.prev, .next, .omission):has(a):hover span {
				color: #ffffff;
		}
		.page_item:not(.prev, .next, .omission):has(a):hover::before {
				opacity: 1;
		}
}
.page_item:not(.prev, .next, .omission) a {
		display: block;
}
.page_item:not(.prev, .next, .omission)::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background-color: #DBD9CD;
		z-index: -1;
		opacity: 0;
		-webkit-transition: opacity 0.3s;
		transition: opacity 0.3s;
}
.page_item:not(.prev, .next, .omission) span {
		color: #222222;
		font-size: 2rem;
		line-height: 1.8;
		-webkit-transition: color 0.3s;
		transition: color 0.3s;
}
.page_item:not(.prev, .next, .omission).current span {
		color: #ffffff;
}
.page_item:not(.prev, .next, .omission).current::before {
		opacity: 1;
}
.page_item.prev, .page_item.next {
		width: 20px;
		height: 18px;
}
.page_item.prev a, .page_item.next a {
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
}
.page_item.prev a::before, .page_item.next a::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		translate: -50% -50%;
		width: 10px;
		height: 100%;
		-webkit-transition: translate 0.3s;
		transition: translate 0.3s;
}
.page_item.prev a::after, .page_item.next a::after {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 10px;
		height: 100%;
		background-color: #FAF8F4;
		-webkit-transition: translate 0.3s;
		transition: translate 0.3s;
}
.page_item.prev a::before {
		background-color: #222222;
		clip-path: polygon(0 50%, 100% 100%, 100% 0%);
}
.page_item.prev a::after {
		clip-path: polygon(0 50%, 100% 100%, 100% 0%);
		translate: calc(-50% + 1.5px) -50%;
}
@media (hover: hover) and (pointer: fine) {
		.page_item.prev a:hover::before {
				translate: calc(-50% - 3px) -50%;
		}
		.page_item.prev a:hover::after {
				translate: -50% -50%;
		}
}
.page_item.next a::before {
		background-color: #222222;
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
}
.page_item.next a::after {
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
		translate: calc(-50% - 1.5px) -50%;
}
@media (hover: hover) and (pointer: fine) {
		.page_item.next a:hover::before {
				translate: calc(-50% + 3px) -50%;
		}
		.page_item.next a:hover::after {
				translate: -50% -50%;
		}
}

.omission span {
		font-size: 2rem;
		vertical-align: 16px;
}
/*# sourceMappingURL=news.css.map */