@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Yuji+Syuku&display=swap');
#page_title{
	width:min(100%,1240px);
	padding:0 20px;
	margin:0 auto 30px auto;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

#content h1{
	width:auto;
	display: inline-block;
	color:var(--blue2);
	margin-bottom:80px;
	margin:0;
	padding:0;
}

#content main #top_cate h2{
	display: none;
	font-size:1.4rem;
	line-height: 1;
	border-bottom: none;
}

#top_cate ul{
	display: inline-flex;
	justify-content: flex-end;
	gap:50px;
}

#top_cate li{
	display: inline-block;
}

/*---------------------------------------

	レスポンシブ

---------------------------------------*/

@media screen and (min-width: 981px) {
	#page_title li a{
		position: relative;
	}
	
	#page_title li a:after{
		content:'';
		width:100%;
		height: 3px;
		display: block;
		background-color:var(--blue02);
		position: absolute;
		left:0;
		bottom:-5px;
		 transform-origin: right top;
	  transform: scale(0, 1);
	  transition: transform .2s;
	}
	
	#page_title li:hover a:after{
		transform-origin: left top;
	  transform: scale(1, 1);
	}

}

@media screen and (max-width: 430px) {
	#top_cate{
		position: relative;
	}

	#content main #top_cate h2{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		line-height: 1;
		margin-bottom:0;
		gap:10px;
	}
	
	#content main #top_cate h2::after{
		font: var(--fa-font-solid); 
		content: "\f0d7";
		font-size:1.3rem;
	}
	
	#content main #top_cate h2.act::after{
		transform: scaleY(-1);
	}
	
	#top_cate ul{
		/*display: inline-block;*/
		display: none;
		position: absolute;
		top:calc(1.45rem + 10px);
		right:-10px;
		z-index: 20;
		padding:10px 15px;
		background-color: #fff;
		border-radius: 3px;
		  box-shadow: 2px 2px 7px 0px rgba(0, 0, 0, 0.45);
		text-align: left;
		font-size:1.4rem;
	}
	
	#top_cate li{
		display: block;
		 white-space: nowrap;
	}
}

/*---------------------------------------



	一覧



---------------------------------------*/

#content main section#mamber_list{
display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 60px 30px;
	padding:150px 20px 0 20px;
	margin:0 auto;
}

#content main#people section#mamber_list{
	padding:50px 20px 0 20px;
}

#content main section#mamber_list a{
	display: block;
}

#content main section#mamber_list .photo{
	width:100%;
	aspect-ratio: 38 / 47;
	line-height: 30px;
	position: relative;
	color:#fff;
	border-radius: 5px;
	  /*text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);*/
}

#content main section#mamber_list .photo img{
	width:100%;
	height: 100%;
	object-fit: cover;
	object-position: bottom;
	border-radius: 5px;
	position: relative;
	z-index: 1;
}

#content main section#mamber_list .cat{
	font-weight: 900;
	font-size: 1.8rem;
	color: #fff;
	height: auto;
	position: absolute;
	right:10px;
	top:10px;
	z-index: 999;
	padding: 10px 5px;
	border: 2px solid #fff;
	border-radius: 5px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	letter-spacing: 3px;
filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.6));
}

#content main section#mamber_list a .name_jp{
	margin-top:10px;
	font-size:1.8rem;
}

#content main section#mamber_list a .name_en{
	font-family: "sofia-pro", sans-serif;
  color: #b3bdce;
  font-size: 1.5rem;
}

#content main section#mamber_list a .department,
#content main section#mamber_list a .year{
	font-size:1.4rem;
	display: inline-block;
}

#content main section#mamber_list a .year::before{
	content: "／";
	font-weight: 400;
	padding:0 5px;
}
#content main section#mamber_list a h3{
	width:100%;
	font-weight: 700;
	font-size:2.0rem;
	padding:0 20px;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 0;
	color: #fff;
	line-height: 1.25;
	font-feature-settings: "palt" 1;
	letter-spacing: 2px;
		filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.6));
}



/*---------------------------------------

	レスポンシブ

---------------------------------------*/
@media screen and (min-width: 981px) {
	#content main section#mamber_list .photo{
		overflow: hidden;
	}
	
	#content main section#mamber_list a:hover{
		opacity: 0.6;
		transition: 0.3s;
	}

	#content main section#mamber_list a:hover .photo img{
	 	transform: scale(1.05);
		transition: 0.3s;
	}
}

@media screen and (min-width:781px) and (max-width: 980px) {
	#content main section#mamber_list{
	 gap: 6vw 2vw;	
	}
}

@media screen and (min-width:431px) and (max-width: 780px) {
	#content main section#mamber_list{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width:430px){
	#content main section#mamber_list{
		width:100%;
		padding:70px 20px 0 20px;
		display: flex;
		flex-direction: column;
		gap:40px;
	}
	
	#content main#people section#mamber_list{
		padding:30px 20px 0 20px;
	}

	
	#content main section#mamber_list a{
		width: 100%;
	}
	
	#content main section#mamber_list h3{
		font-size:1.8rem;
	}
	
	#content main section#mamber_list a .year::before{
		content: none;
	}
}

/*---------------------------------------



	詳細ページ



---------------------------------------*/

main#mamber_shingle{
	width:min(100%,1240px);
	padding:50px 20px 100px 20px;
	margin:0 auto;
}

#content main#mamber_shingle section{
	width:min(100%,1200px);
	padding:0;
}

main#mamber_shingle .en_name{
	font-family: "sofia-pro", sans-serif;
}


/*---------------------------------------

	レスポンシブ

---------------------------------------*/
@media screen and (max-width: 980px) {
	main#mamber_shingle{
		width:100%;
		padding:50px 0 100px 0;
	}
}

/*---------------------------------


	メインビジュアル


---------------------------------*/

#content main#mamber_shingle h1{
	width:100%;
	padding:0 50px;
	margin:0;
	font-size:3rem;
	font-weight: 700;
	line-height: normal;
	position: absolute;
	left:0;
	bottom:30px;
	letter-spacing: 2px;
}

#content main section#member_photo{
	width:min(100%,1200px);
	aspect-ratio: 16 / 9;
	position: relative;
	padding:0;
	line-height: 0;
}

#member_photo img{
	width:100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
	border-radius: 10px;
}

#member_inner{
	width:100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	/*background-color: rgba(174,174,174,0.05);*/
	color:#fff;
	filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.6));
}

#member_department{
	display:flex;
	flex-direction: column;
	height: auto;
	gap:20px;
	position: absolute;
	top:30px;
	right:30px;
	color:#fff;
}

#member_department .cat{
	width:100%;
	border:2px solid #fff;
	border-radius: 5px;
	padding:15px 0;
	text-align: center;
	font-size:3rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	display: flex;
	justify-content: center;
	align-items: center;
}

#member_department .profile{
	line-height: 1.4;
	font-size:1.3rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
}

#member_department .profile .name{
	font-size:2.4rem;
}

#member_department .profile .en_name{
	font-size:1.5rem;
	text-orientation: mixed;
}

/*---------------------------------------

	レスポンシブ

---------------------------------------*/
@media screen and (max-width: 980px) {
	#content main section#member_photo img{
		border-radius: 0;
		height: auto;
	}
	
	#member_department .cat{
		font-size:2.5rem;
	}
	
	#content main#mamber_shingle h1{
		padding:0 5vw;
		bottom:5vw;
		font-size:3.5vw;
	}
}

@media screen and (max-width: 430px) {
	#content main#mamber_shingle h1{
		font-size:2rem;
		padding:0 10px;
		bottom:10px;
	}
	
	#member_department{
		top:10px;
		right:10px;
	}
	
	#member_department .cat{
		font-size:2.3rem;
	}
}


/*---------------------------------


	メイン部分


---------------------------------*/

#content main#mamber_shingle section#intro{
	display: flex;
	align-items: flex-start;
	padding:100px 0;
	position: relative;
	gap:100px;
}

#profile{
	width:300px;
	font-size:1.4rem;
	position:sticky;
	top:150px;
	left:0;
}

#profile .photo{
	width:300px;
	aspect-ratio: 1 / 1;
	line-height: 0;
	border-radius: 5px;
	margin-bottom:10px;
}

#profile .photo img{
	background-color: brown;
	width:100%;
	height: 100%;
	object-fit: cover;
	border-radius: 5px;
}

#profile .name{
	font-size:1.6rem;
}

#profile .en_name{
	color:var(--gray_text);
	 font-family: "sofia-pro", sans-serif;
  font-weight: 700;
}

#profile .department,
#profile .year{
	font-size:1.3rem;
}

#profile .year::before{
	content:'／';
	color:var(--gray_text);
}

#profile_cachi{
	margin-top:20px;
	color:var(--gray_text);
}

#content_main{
	flex:1;
	line-height: 2;
}

#content_main h3{
	font-size:2.2rem;
	margin:50px 0;
}

#content_main img{
	max-width: 100%;
	height: auto;
	border-radius: 5px;
	margin:50px 0;
	vertical-align: top;
}

#excerpt{
	color:var(--gray_text);
}

/*---------------------------------------

	レスポンシブ

---------------------------------------*/

@media screen and (max-width: 980px) {
	#content main#mamber_shingle section#intro{
		flex-direction: column;
		padding:80px 20px;
	}
	
	#profile{
		width:100%;
		position: static;
		order:2;
	}
	
	#content_main{
		flex:none;
		order:1;
	}
}

@media screen and (min-width:431px) and (max-width: 980px) {
	#profile{
		display: flex;
		align-items: center;
		gap:50px;
	}
	
	#profile .text{
		flex:1;
	}
}

@media screen and (max-width:430px){
	#profile{
		width:300px;
		margin:0 auto;
	}
	
	/*#profile_cachi{
		width:300px;
		margin:0 auto;
		text-align: left;
	}
	
	#profile .photo{
		margin:0 auto 10px auto;
	}*/
}


/*---------------------------------


	他のインタビュー


---------------------------------*/

#content main#mamber_shingle section#else{
	width:100%;
	margin:0 auto;
	padding:100px 0 50px 0;
}

#else_menu{
	width:100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom:50px;
}

#else_menu h2{
	border-bottom:none;
	margin-bottom:0;
}

#content #else_menu h2 span.en{
	text-decoration: underline;
	text-decoration-color: var(--red);
	text-decoration-thickness: 3px;
	text-underline-offset: 5px;
	margin-bottom:15px;
}

#else_menu .link{
	display: inline-block;
}
#else_menu a{
	display: inline-flex;
	align-items: center;
	gap:20px;
}

#else_menu a span{
	white-space: nowrap;
}

#else_menu a .fa-solid{
	font-size:1.3rem;
}


section#else ul{
	/*width:100%;*/
	display: flex;
	justify-content:space-between;
	gap:20px;
	overflow-x: auto;
 	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

section#else ul::-webkit-scrollbar{
  display: none;
}

section#else li{
	width:360px;
}

section#else li a{
	display: block;
	width:100%;
}

section#else li a .photo{
	width:100%;
	aspect-ratio: 38 / 47;
	line-height: 0;
	position: relative;
	border-radius: 5px;
	overflow: hidden;
}

section#else li a img{
	width:100%;
	height: 100%;
	object-fit: cover;
	position: relative;
	z-index: 1;
}

section#else li a .cat{
	font-weight: 900;
	font-size: 1.8rem;
	color: #fff;
	height: auto;
	position: absolute;
	z-index: 2;
	right:10px;
	top:10px;
	padding: 10px 5px;
	border: 2px solid #fff;
	border-radius: 5px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	letter-spacing: 3px;
	filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.6));
	line-height: normal;
}

section#else li a h3{
	width:100%;
	font-weight: 700;
	font-size:2.0rem;
	padding:0 20px;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 0;
	color: #fff;
	line-height: 1.25;
	font-feature-settings: "palt" 1;
	letter-spacing: 2px;
	filter: drop-shadow(1px 1px 0 rgba(0, 0, 0, 0.6));
}


section#else li a .name{
	margin-top:10px;
	font-size:1.8rem;
}

section#else li a .en_name{
	font-family: "sofia-pro", sans-serif;
  color: #b3bdce;
  font-size: 1.5rem;
}

section#else li a .department,
section#else li a .year{
	font-size:1.4rem;
	display: inline-block;
}

section#else li a .year::before{
	content: "／";
	font-weight: 400;
	padding:0 5px;
}

/*---------------------------------------

	レスポンシブ

---------------------------------------*/
@media screen and (min-width: 981px) {
	section#else li a .photo{
		overflow: hidden;
	}
	
	section#else li a:hover{
		opacity: 0.6;
		transition: 0.3s;
	}

	section#else li a:hover .photo img{
	 	transform: scale(1.05);
		transition: 0.3s;
	}
}

@media screen and (max-width: 980px) {
	#content main#mamber_shingle section#else{
		width:100%;
		margin:0 auto;
		padding:50px 20px 30px 20px;
	}
	
	#else_menu{
		margin-bottom:30px;
	}
	
	#else_menu h2{
		font-size:1.75rem;
	}
	#else_menu a{
		margin-bottom:10px;
		gap:5px;		
	}
	
	section#else li{
		width:250px;
		flex-shrink: 0; 
	}
}

@media screen and (max-width: 430px) {
	section#else li a h3{
		font-size:1.6rem;
		padding:0 5px;
	}
}
