@charset "UTF-8";
/*-----------------------------------

	news_block

-----------------------------------*/
#news_block {
	background: url(../img/news/news_bg.jpg) no-repeat center top / cover;
	padding: 120px 0 99px;
}
#news_block .contents_inner {
	max-width: 1162px;
}
#news_block .news_container {
	background: rgba(255, 255, 255, 0.95);
	padding: 0 100px 100px;
	border-radius: 12px;
	margin-bottom: 100px;
}
#news_block .news_container .ttl {
	max-width: 199px;
	margin: 0 auto 38px;
}
#news_block .news_wrapper .news_box {
	background-size: 12px 2px;
	background-image: linear-gradient(to right, #cccccc 6px, transparent 6px);
	background-repeat: repeat-x;
	background-position: left bottom;
	padding: 12.5px 70px 26px 0;
	position: relative;
}
#news_block .news_wrapper .news_box.none {
	pointer-events: none;
}
#news_block .news_wrapper .news_box:not(:last-of-type) {
	margin-bottom: 15px;
}
#news_block .news_wrapper .news_box::after {
	content: '';
	display: block;
	background: url(../img/news/arw_or_rt.svg) no-repeat center center / contain;
	width: 30px;
	height: 14px;
	margin: auto;
	position: absolute;
	top: 6px;
	right: 0;
	bottom: 0;
	z-index: 1;
}
#news_block .news_wrapper .news_box.none::after {
	display: none;
}
#news_block .news_wrapper .news_box time {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	color: #808080;
	margin-bottom: 11px;
}
#news_block .news_wrapper .news_box h3 {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0;
}
#news_block .index_btn {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0;
	text-align: center;
	color: #004c3c;
	background: #FFFFFF;
	max-width: 346px;
	padding: 18.5px 0;
	border: 2px solid #004c3c;
	border-radius: 50vw;
	margin: 0 auto;
	position: relative;
}
#news_block .index_btn::after {
	content: "";
	display: block;
	background: url(../img/news/arw_gr_lt.svg) no-repeat center / contain;
	width: 30px;
	height: 14px;
	margin: auto;
	position: absolute;
	top: 5px;
	left: 25px;
	bottom: 0;
	z-index: 1;
}
#news_block #pagination {
	margin-top: 48.5px;
}
#news_block #pagination .page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 24px 14px;
}
#news_block #pagination .page-numbers li {
	width: 46px;
	height: 46px;
}
#news_block #pagination .page-numbers li:has(.dots) {
	width: 22px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#news_block #pagination .page-numbers li > *:not(.dots) {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0;
	color: #004c3c;
	background: #FFFFFF;
	width: 100%;
	height: 100%;
	border: 2px solid #004c3c;
	border-radius: 50vw;
}
#news_block #pagination .page-numbers li .dots {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0;
}
#news_block #pagination .page-numbers li .current {
	color: #FFFFFF;
	background: #004c3c;
}
#news_block #pagination .page-numbers li > *:not(.dots) img {
	width: 9px;	
}
#news_block #pagination .page-numbers li > *.prev img {
	transform: translateX(-2px);
}
@media screen and (max-width: 640px) {
	#news_block {
		background: url(../img/news/sp/news_bg.jpg) no-repeat center top / cover;
		padding: 67px 0 51px;
	}
	#news_block .news_container {
		padding: 0 19px 22px;
		border-radius: 6px;
		margin-bottom: 21px;
	}
	#news_block .news_container .ttl {
		max-width: 124px;
		margin: 0 auto 10px;
	}
	#news_block .news_wrapper .news_box {
		padding: 6px 30px 6px 0;
	}
	#news_block .news_wrapper .news_box.none {
		padding: 6px 0;
	}
	#news_block .news_wrapper .news_box:not(:last-of-type) {
		margin-bottom: 9px;
	}
	#news_block .news_wrapper .news_box::after {
		width: 20px;
		height: 8px;
		top: 20px;
	}
	#news_block .news_wrapper .news_box time {
		font-size: 13px;
		margin-bottom: 3px;
	}
	#news_block .news_wrapper .news_box h3 {
		font-size: 14px;
		line-height: 1.5;
	}
	#news_block .index_btn {
		font-size: 13px;
		padding: 5px 0;
		max-width: 169px;
	}
	#news_block .index_btn::after {
		width: 15px;
		height: 7px;
		top: 1px;
		left: 11px;
	}
	#news_block #pagination {
		margin-top: 18px;
	}
	#news_block #pagination .page-numbers {
		gap: 12px 6px;
	}
	#news_block #pagination .page-numbers li {
		width: 32px;
		height: 32px;
	}
	#news_block #pagination .page-numbers li > *:not(.dots) {
		font-size: 14px;
	}
	#news_block #pagination .page-numbers li:has(.dots) {
		width: 15px;
	}
	#news_block #pagination .page-numbers li .dots {
		font-size: 14px;
	}
	#news_block #pagination .page-numbers li > *:not(.dots) img {
		width: 6px;
	}
}
/*-----------------------------------

	news_block（detail）

-----------------------------------*/
#news_block.detail {
	background: url(../img/news/news_detail_bg.jpg) no-repeat center top / cover;
}
#news_block.detail .news_container {
	padding: 0 100px 50px;
}
#news_block.detail .ttl {
	max-width: 149px;
	margin: 0 auto 41px;
}
#news_block.detail .contents_ttl {
	background-size: 12px 2px;
	background-image: linear-gradient(to right, #cccccc 6px, transparent 6px);
	background-repeat: repeat-x;
	background-position: left bottom;
	padding-bottom: 52px;
	margin-bottom: 38px;
}
#news_block.detail .contents_ttl h3 {
	font-size: 32px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
	margin-bottom: 7px;
}
#news_block.detail .contents_ttl time {
	display: block;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.36;
	letter-spacing: 0;
	color: #808080;	
}
#news_block.detail .contents h2 {
	font-size: 28px;
	font-weight: 600;
	line-height: 1.72;
	letter-spacing: 0;
	margin-bottom: 11px;
}
#news_block.detail .contents h3 {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 0;
	padding-top: 5px;
	margin-bottom: 17px;
}
#news_block.detail .contents h4 {
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
	padding-top: 10px;
	margin-bottom: 19px;
}
#news_block.detail .contents h5,
#news_block.detail .contents h6 {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
	margin-bottom: 20px;
}
#news_block.detail .contents p {
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0;
	margin-bottom: 43px;
}
#news_block.detail .contents a {
	display: inline;
	text-decoration: underline;
	color: #ec6d2a;
}
#news_block.detail .contents img {
	width: auto;
	margin: 0 auto 40px;
}
#news_block.detail .contents .l_size {
	max-width: 762px;
}
#news_block.detail .contents .m_size {
	max-width: 610px;
}
@media screen and (max-width: 640px) {
	#news_block.detail {
		background: url(../img/news/sp/news_detail_bg.jpg) no-repeat center top / cover;
	}
	#news_block.detail .news_container {
		padding: 0 21px 1px;
		margin-bottom: 31px;
	}
	#news_block.detail .ttl {
		max-width: 82px;
		margin: 0 auto 15px;
	}
	#news_block.detail .contents_ttl {
		padding-bottom: 12px;
		margin-bottom: 26px;
	}
	#news_block.detail .contents_ttl h3 {
		font-size: 18px;
		margin-bottom: 2px;
	}
	#news_block.detail .contents_ttl time {
		font-size: 12px;
	}
	#news_block.detail .contents h2 {
		font-size: 16px;
		line-height: 1.5;
	}
	#news_block.detail .contents h3 {
		font-size: 15px;
		line-height: 1.5;
		padding-top: 1.5px;
		margin-bottom: 10px;
	}
	#news_block.detail .contents h4 {
		font-size: 14px;
		line-height: 1.29;
		padding-top: 3px;
		margin-bottom: 13px;
	}
	#news_block.detail .contents p {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 27px;
	}
	#news_block.detail .contents img {
		margin: 0 auto 25px;
	}
	#news_block.detail .contents .m_size {
		max-width: 251px;
	}
}