html.no-js {
	margin-top: 0 !important;
}

.newsdetails h2{
	margin-top: 60px;
}
.newsdetails h2 a,
.newsdetails h3 a{
	word-break: break-all;
}
.newsdetails h3:not(.media-title),
.newsdetails .col-block,
.newsdetails .media,
.newsdetails .img-grid,
.newsdetails .contact
{
	margin-top: 40px;
}

.newsdetails .col-block,
.newsdetails .img-grid,
.newsdetails .relative-link
{
	margin-bottom: 60px;
	margin-top: 25px;
}
.newsdetails .col-block h3{
	margin-top: 0;
}

.newsdetails .col-block.col-img-3 .col_1-3 img{
	aspect-ratio: 392 / 260;
	object-fit: cover;
	border-radius: 20px;
	overflow: hidden;
}
.newsdetails .col-block.col-img-2 .col_1-2 img{
	aspect-ratio: 604 / 400;
	object-fit: cover;
	border-radius: 20px;
	overflow: hidden;
}
.newsdetails .col figure p:empty{
	display: none;
}
.newsdetails .col > figure > img{
	margin-bottom: 0.5em;

}
.newsdetails .col figure img + p{
	margin-top: 0.5em;
}
.newsdetails p{
	margin-bottom: 40px;
}
.newsdetails table{
	margin-bottom: 0.5em;
}
.maincontents .newsdetails figure, .maincontents .newsdetails picture {
	border-radius: 0;
	overflow: visible;
}

@media (max-width: 767px) {
	.contact{
		padding: 20px;
	}
}
@media screen and (max-width: 767px) {
	.newsdetails h2{
		margin-top: 30px;
	}
	.newsdetails h3,
	.newsdetails .col-block,
	.newsdetails .media,
	.newsdetails .img-grid,
	.newsdetails .contact
	{
		margin-top: 20px;
	}
	.newsdetails .col-block,
	.newsdetails .img-grid,
	.newsdetails .relative-link{
		margin-bottom: 30px;
	}


	.newsdetails p
	{
		margin-bottom: 20px;
	}
}


.newsdetails .contents-block{
	max-width: 1088px;
}
.newsdetails .news-meta{
	margin-top: 30px;
	display: flex;
	align-items: center;
	gap: 0 26px;
}
@media (min-width: 768px) {
	.newsdetails .news-meta {
		margin-top: 80px;
	}
}
.newsdetails p:last-child{
	margin-bottom: 0;
}
.newsdetails h1{
	font-size: 24px;
	margin-top: 0.5em;
	margin-bottom: 0.25em;
}
@media (min-width: 768px) {
	.newsdetails h1{
		font-size: 35px;
		margin-top: 0.5em;
		margin-bottom: 0.25em;
	}
}

.newsdetails .newsdetails-lead{
	font-size: 20px;
}
@media (min-width: 768px) {
	.newsdetails .newsdetails-lead{
		font-size: 24px;
	}
}

.news-header{
	padding-bottom: 24px;
	border-bottom: 3px solid #333;
}
@media (min-width: 768px) {
	.newsdetails .news-header{
		padding-bottom: 24px;
		border-bottom: 3px solid #333;
	}
}
.newsdetails th{
	white-space: nowrap;
}
.newsdetails img{
	max-width: 100%;
	height: auto;
}
.list-notes li{
	padding-left: 1em;
	text-indent: -1em;
	font-size: 14px;
}
.contents-row.scroller + .contents-row{
	margin-top: -35px;
}


.newsdetails .media {
	display: flex;
	gap: 16px;
}

.newsdetails .media-reverse {
	flex-direction: row-reverse;
}
.newsdetails .media + .media{
	margin-top: 32px;
}
.newsdetails .media-title {
	border-left: none;
	padding-left: 0;
	margin-left: 0;
	font-size: 21px;
	color: #4b1e78;
}

.newsdetails .media-title:before {
	display: none;
}
/* PC */
.newsdetails .media-img {
}

.newsdetails .media-body {
	flex: 1;
}
@media (min-width: 768px) {
	.newsdetails .media{
		gap: 32px;
	}
}
/* スマホ */
@media (max-width: 767px) {
	.newsdetails .media {
		flex-direction: column;
		align-items: center;
	}

	/* 並び順を指定 */
	.newsdetails .media-title {
		order: 1;
	}

	.newsdetails .media-img {
		order: 2;
	}

	.newsdetails .media-text {
		order: 3;
	}
}


.img-cols {
	display: grid;
	grid-template-columns: repeat(2, auto);
	justify-content: center;
	gap: 16px;
}

.img-cols img {
	max-width: 100%;
	height: auto;
}

.img-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, auto));
	justify-content: center;   /* 全体を中央寄せ */
	gap: 16px;
}
@media (max-width: 767px) {
	.img-grid {
		flex-wrap: wrap;
		display: flex;
		align-items: center;
		justify-content: center;   /* 全体を中央寄せ */
	}
}
.img-grid figure{

}
.img-grid figure figcaption{
	text-align: center;
}
.img-grid figure figcaption{
	margin-top: 0.3em;
}
.img-grid figure figcaption b,
.img-grid figure figcaption strong{
	font-size: 20px;
	font-weight: bold;
}
.img-grid .wp-caption-text,
.img-grid .wp-caption{
	text-align: center;
	font-size: 14px;
	margin-top: 0.75em;
}
@media (max-width: 767px) {
	.img-grid .wp-caption-text,
	.img-grid .wp-caption{
		font-size: 12px;
	}
}
.wp-caption .wp-caption-text{
	text-align: center;
	font-size: 14px;
	margin-top: 0.75em;
}
@media (max-width: 767px) {
	.wp-caption .wp-caption-text{
		font-size: 12px;
	}
}
.img-grid img {
	max-width: 100%;
	height: auto;
	display: block;
}

.relative-link{
	display: flex;
	flex-direction: column;
	gap: 50px 0;
}
.relative-link-item{
	display: flex;
	gap: 0 40px;
}
@media (max-width: 767px) {
	.relative-link-item{
		display: flex;
		flex-direction: column;
	}
}
.relative-link-item__text h3{
	font-size: 21px;
	color: #4b1e78;
	padding-left: 0;
	margin-left: 0;
	margin-top: 0;
	margin-bottom: 0.5em;
}
.relative-link-item__text p{
	margin-bottom: 0.5em;
}
.relative-link-item__text h3:before{
	content: "";
	display: none;
}
.relative-link-item__text p a:after{
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(../img/icon_blank.svg) 50% 50% / contain no-repeat;
	margin-left: 0.5em;
}

.relative-link-item__pict img{
	flex-basis: 320px;
	min-width: 320px;
}
@media (max-width: 767px) {
	.relative-link-item__pict img{
		flex-basis: 100%;
		min-width: 100%;
	}
}

.contact{
	padding: 40px;
	background-color: #fff;
	border: 1px solid #626466;
}
@media (max-width: 767px) {
	.contact{
		padding: 20px;
	}
}
.contact-item + .contact-item{
	margin-top: 40px;
}
@media (max-width: 767px) {
	.contact-item + .contact-item{
		margin-top: 20px;
	}
}
.maincontents .newsdetails .aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.maincontents .newsdetails .contact-item__title{
	font-size: 20px;
	margin-bottom: 0.5em;
	margin-top: 0;
}
.newsdetails .contact-item__title:before{
	width: 10px;
	height: 10px;
	border-radius: 50%;
	top: calc(50% - 5px);
}
@media (max-width: 767px) {
	.newsdetails .contact-item__title:before{
		top: 0.4em;
	}
}
.newsdetails .contact-item__link:after{
	display: inline-block;
	width: 8px;
	height: 8px;
	content: "";
	border-top: 2px solid #4b1e78;
	border-right: 2px solid #4b1e78;
	transform: rotate(45deg);
	position: relative;
	top: -2px;
}


.list:not(:last-child),
.table:not(:last-child) { margin-bottom: 25px !important;}

@media screen and (max-width: 767px) {
	.list:not(:last-child),
	.table:not(:last-child) { margin-bottom: 20px !important;}
}

.newsdetails table tr p{
	margin-bottom: 0;
}
.newsdetails table strong{
	font-weight: bold;
}
.newsdetails ruby rt{
	font-size: 66%;
}
