@charset "utf-8";
/* CSS Document */
#randowm-mv .head-img{
	display: none;
}

#randowm-mv.active .head-img{
	display: block;
}

.labels{
	display: flex;
	gap: 10px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}
@media (max-width: 767px) {
	.labels{
		justify-content: center;
	}
	.link-group .labels{
		justify-content: flex-start;
	}
}
.col-block--category .labels{
	margin-bottom: 10px;
}
.col-block--category .text-title{
	margin-bottom: 6px;
}
.col-block--category .link-group p{
	margin-bottom: 0;
}
.label{
	display: flex;
	padding: 4px 10px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	border: 1px solid #4B1E78;
	color: #4B1E78;
	line-height: 1;
	font-size: 14px;
	font-weight: bold;
}
.label-fill{
	display: flex;
	padding: 4px 10px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	border: 1px solid #4B1E78;
	background-color: #4B1E78;
	color: #fff;
	line-height: 1;
	font-size: 14px;
	font-weight: bold;
}
.label-outline{
	display: flex;
	padding: 9px 13px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 19px;
	border: 1px solid #D6A4EA;
	background: #FFF;
	color: #333;
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
}
@media (max-width: 767px) {
	.label-outline{
		font-size: 15px;
	}
}
.text-excerpt{
	margin-top: 0.4em;
}
.clamp-2 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.clamp-3 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.lower-label{
	display: none;
}
.contents-category-wrap .contents-relative{
	display: none;
}

.contents-category-wrap .lower-label{
	display: block;
}
.contents-category-wrap .contents-category-theme:before{
	content: '“';
}
.contents-category-wrap .contents-category-theme:after{
	content: '”';
}
.contents-category + .contents-category{
	margin-top: 40px;
}
@media (max-width: 767px) {
	.contents-category{
		margin-left: -16px;
		margin-right: -16px;
	}
}
.contents-category h3{
	display: flex;
	padding: 24px 60px;
	justify-content: flex-start;
	line-height: 1;
	background: #4B1E78;
	color: #fff;
	margin-bottom: 0;
}
@media (max-width: 767px) {
	.contents-category h3{
		padding: 16px;
	}
}
.contents-category-wrap h3{
	display: flex;
	gap: 0;
}
.contents-category figure{
	margin-bottom: 8px;
}
.contents-category-body{
	padding: 56px 63px;
	background: #E8E8E8;
}
@media (min-width: 768px) {
	.contents-category-body{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		align-self: stretch;
	}
}
@media (max-width: 767px) {
	.contents-category-body{
		padding: 16px;
	}
	.contents-category-body p{
		margin-bottom: 0;
	}
	@media print, screen and (max-width: 767px) {
		.contents-category-body .contents-row .col-block {
			gap: 20px 16px;
		}
	}
}
.hr-m{
	width: 100%;
	margin-top: 56px;
	margin-bottom: 56px;
	border-top:1px solid #D6D6D6;
}
@media (max-width: 767px) {
	.hr-m{
		margin-top: 28px;
		margin-bottom: 28px;
	}
}
.hr-s{
	width: 100%;
	margin-top: 40px;
	margin-bottom: 40px;
	border-top:1px solid #D6D6D6;
}
@media (max-width: 767px) {
	.hr-s{
		margin-top: 20px;
		margin-bottom: 20px;
	}
}
.contents-detail h1{
	font-size: 36px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	margin-top: 32px;
	margin-bottom: 20px;
}
@media (max-width: 767px) {
	.contents-detail h1{
		font-size: 22px;
		margin-top: 16px;
		margin-bottom: 8px;
	}
}
@media (min-width: 768px) {
	.contents-detail .line-box {
		display: flex;
		padding: 40px 56px;
		flex-direction: column;
		align-items: flex-start;
	}
}
@media (min-width: 768px) {
	.head-meta{
		display: flex;
		align-items: flex-start;
	}
}
@media (max-width: 767px) {
	.head-meta .labels {
		margin-top: 20px;
		justify-content: flex-start;
	}
}
@media (min-width: 768px) {
	.head-meta .labels {
		margin-left: auto;
		margin-bottom: 0;
		justify-content: flex-end;
	}
}
.head-meta .labels .label-outline{
	font-size: 14px;
}
@media (max-width: 767px) {
	.c-info {
		margin-top: 16px;
		padding: 16px 16px;
		background: rgba(140, 140, 140, 0.20);
	}
}
@media (min-width: 768px) {
	.c-info {
		margin-top: 32px;
		display: flex;
		padding: 16px 24px;
		align-items: center;
		gap: 0 32px;
		background: rgba(140, 140, 140, 0.20);
	}
}
.c-info dl{
	display: flex;
	gap: 16px;
}

.c-info dl dt{
	font-size: 16px;
	text-decoration: underline;
	font-weight: bold;
}
@media (max-width: 767px) {
	.c-info dl dt{
		font-size: 15px;
	}
	.c-info dl dd{
		font-size: 15px;
	}
}
.toc{
	width: 100%;
}
.toc li{
	position: relative;
	list-style: decimal;
	font-size: 14px;
	margin-left: 1.4em;
	margin-bottom: 0;
}
@media (max-width: 767px) {
	.toc li{
		font-size: 16px;
	}
}
.toc li:after{
	display: block;
	content: "";
	height: 1px;
	margin-left: -1.4em;
	background-color: #D6D6D6;

}
.toc li:first-child{
	margin-top: -16px;
}
.toc li a{
	position: relative;
	display: block;
	padding-top: 16px;
	padding-bottom: 16px;
	text-decoration: none;
	font-size: 16px;
	padding-right: 46px;
	font-weight: bold;
}
@media (max-width: 767px) {
	.toc li a{
		padding-top: 10px;
		padding-bottom: 10px;
		font-size: 16px;
	}
}
.toc li a .icon-c{
	position: absolute;
	right: 0;
	top: calc(50% - 14px);
}
@media (max-width: 767px) {
	.contents-relative .col-block {
		display: block;
	}
	.contents-relative .col-block > [class*=col_]{
		width: auto;
		flex-grow: 1;
	}
	.contents-relative .col-block > [class*=col_] .link-group{
		display: flex;
		align-items: center;
		gap: 0 16px;
	}
	.contents-relative .col-block > [class*=col_] .img-hover{
		width: 22vw;
		margin-bottom: 10px;
	}
	.contents-relative .col-block > [class*=col_] h5{
		margin-bottom: 0;
	}
}
.relative-links{
	margin-left: 3em;
	margin-bottom: 60px;
}
@media (max-width: 767px) {
	.relative-links{
		margin-left: 0;
	}
}
.relative-links li{
	position: relative;
	font-size: 18px;
	margin-bottom: 0;
}
.relative-links li:after{
	display: block;
	content: "";
	height: 1px;
	background-color: #D6D6D6;

}
.relative-links li a{
	position: relative;
	display: block;
	padding-top: 16px;
	padding-bottom: 16px;
	text-decoration: none;
	font-size: 18px;
	padding-right: 46px;
	font-weight: bold;
}

.relative-links li a .icon-c{
	position: absolute;
	right: 0;
	top: calc(50% - 14px);
}
@media (max-width: 767px) {
	.img-text-l figure {
		margin-bottom: 20px;
	}
}
@media (min-width: 768px) {
	.img-text-l figure{
		float: left;
		margin-right: 32px;
		width: calc(50% - 16px);
		margin-bottom: 16px;
	}
}
.img-text-l:after{
	display: block;
	content: "";
	clear: both;
}
@media (max-width: 767px) {
	.img-text-r figure {
		margin-bottom: 20px;
	}
}
@media (min-width: 768px) {
	.img-text-r figure {
		float: right;
		margin-left: 32px;
		width: calc(50% - 16px);
		margin-bottom: 16px;
	}
}
.img-text-r:after{
	display: block;
	content: "";
	clear: both;
}
.contents-text:after{
	content: "";
	display: block;
	clear: both;
}

.contents-highlight{
	display: flex;
	padding: 32px;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	background: rgba(214, 164, 234, 0.40);
}
@media (max-width: 767px) {
	.contents-highlight{
		padding: 24px 16px;
		margin-left: -16px;
		margin-right: -16px;
	}
}
.contents-highlight *:last-child{
	margin-bottom: 0;
}
.contents-category .contents-row{
	flex-grow: 1;
	min-width: 100%;
}
@media (max-width: 767px) {
	.c-member {
		display: flex;
		justify-content: center;
		flex-grow: 1;
	}
}

/* ------------------------------
	フォントサイズ
------------------------------ */

@media print, screen and (max-width: 767px) {
	.sp-font-14 {font-size: 14px !important;}
	.sp-font-16 {font-size: 16px !important;}
	.sp-font-18 {font-size: 18px !important;}
	.sp-font-24 {font-size: 24px !important;}
}
