@charset "UTF-8";

.l_main .is_h2{
	color: #fff;
}

.l_main .l_personindex .md_caption{
	color: #f0efe6;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	max-width: 640px;
	margin: 0 auto 50px auto;
	padding: 10px 0;
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 15px;
}

.l_main .l_personindex .md_caption img{
	width: 22px;
	height: 22px;
	flex: none;
}

.l_main .l_personindex .md_group{
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
}

.l_main .l_personindex .md_group img{
	display: block;
	width: 100%;
	height: auto;
}

.l_main .l_personindex .md_group .md_hotspot{
	position: absolute;
	left: 32%;
	top: 23%;
	width: 37%;
	height: 45%;
	border-radius: 50%;
}

.l_main .l_personindex .md_group .md_hotspot span{
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
}

@media only screen and (max-width: 767.98px){
	.l_main .l_personindex .is_h2{
		margin-bottom: 20px;
		padding-left: 0;
		padding-right: 0;
	}
	
	.l_main .l_personindex .md_caption{
		font-size: 88%;
		padding: 12px 6%;
		margin-bottom: 20px;
		text-align: left;
	}
}

.l_main .l_person .md_person{
	position: relative;
	height: 66vh;
}

.l_main .l_person .md_person li{
	position: absolute;
	opacity: 0;
	transform: translateY(80px);
}

.l_main .l_person .md_person li a{
	display: block;
	transition: 0.5s;
}

.l_main .l_person .md_person li a:hover{
	transform: scale(1.2);
	opacity: 1;
}

.l_main .l_person .md_person li img{
	width: auto;
	height: 40vh;
	display: block;
}

.l_main .l_person .md_person li:nth-child(1){
	top: 16vh;
	left: 50%;
	transform:translateX(-50%);
	z-index: 5;
}

.l_main .l_person .md_person li:nth-child(2){
	top: 4vh;
	left: calc( 50% - 25vh);
	z-index: 1;
}

.l_main .l_person .md_person li:nth-child(3){
	top: -4vh;
	left: calc( 50% - 9vh);
}

.l_main .l_person .md_person li:nth-child(4){
	top: 7vh;
	left: calc( 50% - -1vh);
}

.l_main .l_person .md_person li:nth-child(5){
	top: 26vh;
	left: calc( 50% - -2vh);
	z-index: 6;
}

.l_main .l_person .md_person li:nth-child(6){
	top: 36vh;
	left: calc( 50% - 19vh);
	z-index: 7;
}

.l_main .l_person .md_person li:nth-child(7){
	top: 25vh;
	left: calc( 50% - 35vh);
	z-index: 6;
}

.l_main .l_person .is_kome{
	color: #fff;
	padding-top: 160px;
}

@media only screen and (max-width: 767.98px){
	.l_main .l_person .md_person{
		height: 46vh;
	}
	
	.l_main .l_person .md_person li img{
		width: auto;
		height: 30vh;
		display: block;
	}
    
	.l_main .l_person .md_person li:nth-child(1){
		top: 16vh;
		left: 55%;
		z-index: 5;
	}
	
	.l_main .l_person .md_person li:nth-child(2){
		top: 7vh;
		left: 8%;
	}
	
	.l_main .l_person .md_person li:nth-child(3){
		top: 2vh;
		left: 33%;
	}
	
	.l_main .l_person .md_person li:nth-child(4){
		top: 7vh;
		left: auto;
		right: 0;
	}
	
	.l_main .l_person .md_person li:nth-child(5){
		top: 26vh;
		left: auto;
		right: 0;
		z-index: 6;
	}
	
	.l_main .l_person .md_person li:nth-child(6){
		top: 34vh;
		left: 29%;
		z-index: 7;
	}
	
	.l_main .l_person .md_person li:nth-child(7){
		top: 24vh;
		left: 2%;
	}
	
	.l_main .l_person{
		padding-top: 80px;
	}

}


/*---------------------
キーパーソン詳細
---------------------*/
.l_main .l_persondetail{
	background: #150201;
	padding: 0 0 100px;
}

.l_main .l_persondetail .md_cont .is_h2{
	color: #ffffff;
	padding-top: 60px;
}

.l_main .l_persondetail .md_cont .is_h2 strong{
	color: #9e8761;
}

.l_main .l_persondetail .md_person{
	position: relative;
	padding: 0 0 80px 0;
}

.l_main .l_persondetail .md_person::before,
.l_main .l_persondetail .md_person::after{
	content: "";
	position: absolute;
	width: 40%;
	max-width: 560px;
	height: 70px;
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
}

.l_main .l_persondetail .md_inner{
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 0 8%;
	margin: 0 auto;
	display: flex;
	align-items: start;
	gap: 0%;
}

.l_main .l_persondetail .md_inner::before{
	content: "";
	display: block;
	background: url(../img/bg_lt.png) center / contain no-repeat;
	width: 60%;
	padding-top: 5%;
	top: 26%;
	position: absolute;
	left: -20%;
}

.l_main .l_persondetail .md_inner::after{
	background: url(../img/bg_rb.png) center / contain no-repeat;
	content: "";
	display: block;
	width: 60%;
	padding-top: 5%;
	position: absolute;
	right: -20%;
	bottom: -20%;
}

.l_main .l_persondetail .md_image{
	position: relative;
	width: 48%;
}

.l_main .l_persondetail .md_image img{
	display: block;
	width: 100%;
	height: auto;
}

.l_main .l_persondetail .md_image h3{
	position: absolute;
	top: 4%;
	right: 2%;
	display: flex;
	gap: 8px;
}

.l_main .l_persondetail .md_image h3 span{
	writing-mode: vertical-rl;
	font-family: 'YakuHanMP', "Noto Serif JP", sans-serif;
	font-size: 90%;
	font-weight: 500;
	color: #150201;
	background: #9e8761;
	padding: 16px 6px;
	border-radius: 999px;
	letter-spacing: 0.15em;
}

.l_main .l_persondetail .md_text{
	width: 48%;
}

.l_main .l_persondetail .md_text > div:first-child{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-bottom: 60px;
	line-height: 1;
	width: fit-content;
}

.l_main .l_persondetail .md_text > div:first-child span{
	font-size: 130%;
	color: #ffffff;
	font-family: 'YakuHanMP', "Noto Serif JP", sans-serif;
	letter-spacing: 0;
}

.l_main .l_persondetail .md_text > .is_personname{
	color: #fff;
	font-family: 'YakuHanMP', "Noto Serif JP", sans-serif;
	font-size: 400%;
	font-weight: 700;
	margin-bottom: 0;
}

.l_main .l_persondetail .md_text > .is_personname2{
	color: #fff;
	font-family: 'YakuHanMP', "Noto Serif JP", sans-serif;
	font-size: 200%;
	font-weight: 700;
	margin-bottom: 10px;
}

.l_main .l_persondetail .md_text > p{
	color: #e6e2d9;
	font-size: 130%;
}

.l_main .l_persondetail .md_text > p + p.is_kome{
	font-size: 130%;
	padding-top: 10px;
}

.l_main .l_persondetail .md_text .md_route{
	background-image: linear-gradient(90deg, #941e57, transparent);
	background-repeat: no-repeat;
	background-size: cover;
	margin-top: 40px;
	padding: 20px 30px 25px 30px;
	z-index: 1;
	position: sticky;
}

.l_main .l_persondetail .md_text .md_route2{
	background-image: linear-gradient(90deg, #1d7559, transparent);
}

.l_main .l_persondetail .md_text .md_route3{
	background-image: linear-gradient(90deg, #5b6183, transparent);
}

.l_main .l_persondetail .md_text .md_route p{
	color: #fff;
	font-family: 'YakuHanMP', "Noto Serif JP", sans-serif;
	font-weight: 400;
	font-size: 125%;
	line-height: 1.5;
	border-bottom: 1px solid #FFF;
	width: fit-content;
	margin-bottom: 12px;
	padding-bottom: 15px;
}

.l_main .l_persondetail .md_text .md_route a{
	position: relative;
	align-items: center;
	color: #fff;
	font-weight: 300;
	padding-left: 20px;
	font-size: 24px;
	line-height: 1;
	display: block;
	margin-top: 20px;
}

.l_main .l_persondetail .md_text .md_route a::before{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 0;
	height: 0;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 11px solid #fff;
	transform: translateY(-50%);
}

.l_main .l_persondetail .md_othertitle{
	font-size: 260%;
	position: relative;
	text-align: center;
	width: 92%;
	margin: 130px auto 40px auto;
	padding-top: 50px;
	color: #9e8761;
}

.l_main .l_persondetail .md_othertitle::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(255,255,255,0.5);
}

.l_main .l_persondetail .md_other{
	width: 92%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2%;
}

.l_main .l_persondetail .md_other li{
	width: 15%;
	min-width: 130px;
}

.l_main .l_persondetail .md_other a{
	display: block;
	text-align: center;
	color: #e6e2d9;
}

.l_main .l_persondetail .md_other img{
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.l_main .l_persondetail .md_other span{
	line-height: 1.4;
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
}

.l_main .l_persondetail .md_other span::before{
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 6px solid #9e8761;
	flex: none;
}

@media only screen and (max-width: 767.98px){
	.l_main .l_persondetail{
		padding-bottom: 50px;
	}
	.l_main .l_persondetail .md_inner{
		flex-wrap: wrap;
	}
	
	.l_main .l_persondetail .md_image,
	.l_main .l_persondetail .md_text{
		width: 100%;
	}
	
	.l_main .l_persondetail .md_image{
		max-width: 320px;
		margin: 0 auto 30px auto;
		z-index: 1;
	}
	
	.l_main .l_persondetail .md_text > div:first-child{
		align-items: baseline;
		margin-bottom: 30px;
	}
	
	.l_main .l_persondetail .md_text > .is_personname{
		font-size: 250%;
	}
	
	.l_main .l_persondetail .md_text > p{
		margin-bottom: 0;
		font-size: 100%;
	}
	
	.l_main .l_persondetail .md_text .md_route p{
		font-size: 120%;
	}
	
	.l_main .l_persondetail .md_text .md_route a{
		font-size: 90%;
		margin-top: 10px;
		padding-left: 12px;
	}
	
	.l_main .l_persondetail .md_text .md_route a::before{
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
		border-left: 6px solid #fff;
	}
	
	.l_main .l_persondetail .md_othertitle{
		font-size: 180%;
		margin: 50px auto 40px auto;
		padding-top: 40px;
	}
	
	.l_main .l_persondetail .md_other span{
		font-size: 70%;
	}
	
	.l_main .l_persondetail .md_text > div:first-child p{
		font-size: 240%;
	}
	
	.l_main .l_persondetail .md_text > div:first-child span{
		font-size: 90%;
	}
	
	.l_main .l_persondetail .md_other li{
		width: 30%;
		min-width: 0;
	}
	
	.l_main .l_persondetail .md_other{
		gap: 20px 4%;
	}
	.l_main .l_persondetail .md_inner::before{
		width: 70%;
		padding-top: 10%;
		top: 5%;
	}
	
	.l_main .l_persondetail .md_inner::after{
		width: 70%;
		padding-top: 5%;
		right: -20%;
		top: 33%;
		bottom: auto;
	}
	.l_main .l_persondetail .md_person{
		padding: 0;
	}
	
	.l_main .l_persondetail .md_text .md_route{
		padding: 4%;
	}
	
	

}
