@charset "UTF-8";
/* CSS Document */


body{
    margin: 0px;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
/*PC,SP表示*/
.pc{display: block;}
.sp{display: none;}
.tb{display: none;}	

@media (max-width: 768px), print {
.tb{display: block;}	
}
@media (max-width: 480px), print {
.pc{display: none;}	
.sp{display: block;}
}
/*トップビジュアル*/
.top_visual {
	position: relative;
}
.top_visual img{
	width: 100%;
	max-width: 100%;
}
.top_visual .top_ttl {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.top_visual .top_ttl h1{
	margin: 0 auto;
	max-width: 700px;
}
.top_visual .top_ttl h2{
	color: #FFFFFF;
	line-height: 1.8;
	text-align: center;
	font-weight: 500;
	font-size: 24px;
}
.top_visual .lastupdate{
	position: absolute;
	top: 20px;
	right: 20px;
	display: block;
	color: #727171;
	background-color: #FFFFFF;
	padding: .8em 1.5em;
	border-radius: 50px;
	font-size: 12px;
	box-shadow: 0px 0px 10px #000000;
}
.lastupdate span{
	font-weight: bold;
	color: #004077;
}
@media (max-width: 1440px), print {
.top_visual .top_ttl h2{
	font-size: 1.75vw;
}
}
@media (max-width: 768px), print {
.top_visual .top_ttl{
	margin-top: 10px;
}
}
@media (max-width: 480px), print {
.top_visual .top_ttl{
	position: absolute;
    top: 30%;
	left: 0;
    transform: none;
	padding: 0 7.6%;
}
.top_visual .top_ttl h2{
	font-size: 16px;
}
}
/*コンテンツ部分*/
.content{
    margin: 0 auto;
}
.content>.content_inner {
    margin: 0 7.6%;
}
.content_inner {
    position: relative;
}
.leaders_content{
	box-sizing: border-box;
	background-color: #FFFFFF;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1500px;
	height: auto;
	margin: -5rem auto 5rem auto;
	padding: 5vw 8vw 8vw;
	z-index: 1;
}
.leaders_list{
	flex-basis: calc((100% / 3) - 5px);
	margin-bottom: 50px;
	position: relative;
	height: 600px;
}
.leaders_list::before{
	content: '';
	position: absolute;
	left: 50%;
	bottom: 16px;
	width: 93%;
	height: 1px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color:#004077;
}
.empty{
	flex-basis: calc((100% / 3) - 5px);
	margin-bottom: 50px;
	position: relative;
	height: 600px;
}
.leaders_list_detail{
	transition: all .2s;
	padding: 15px;
}
.leaders_list_detail:hover{
	box-shadow: 2px 2px 15px #e5e5e5 ,
		-2px 2px 15px #e5e5e5 ,
		2px -2px 15px #e5e5e5 ,
		2px -2px 15px #e5e5e5;
	background-color: #FFFFFF;
}
.leaders_list img{
	width: 100%;
	margin-top: 13px;
	box-shadow: 2px 2px 11px #eaeaea ,
		-2px 2px 11px #eaeaea ,
		2px -2px 11px #eaeaea ,
		2px -2px 11px #eaeaea;
}
.leaders_list span{
	font-size: 13px;
	color: #727171;
	font-weight: bold;
}
.leaders_list h3{
	color: #004077;
    line-height: 1.4;
	font-weight: 600;
}
.leaders_list p{
	font-size: 14px;
	color: #595757;
    line-height: 1.6;
}
.leaders_list a{
	text-decoration: none;
}
@media (max-width: 1440px), print {
.leaders_list{
	height: 550px;
}
}
@media (max-width: 1024px), print {
.leaders_list{
	flex-basis: calc((100% / 2) - 5px);
	padding-bottom: 15vw;
	height: 440px;
}
.leaders_content{
	margin-top: -3rem;	
	}
}
@media (max-width: 768px), print {
.leaders_list{
	flex-basis: calc((100% / 2) - 5px);
	padding-bottom: 15vw;
	height: 460px;
}
}
@media (max-width: 480px), print {
.leaders_list{
	flex-basis: auto;
	padding-bottom: 20vw;
	height: 460px;
}
.leaders_content .leaders_list:nth-child(4){
	height: 500px;
	}
.empty{
	display: none;
}
}

/*IRメール配信登録ボタン*/
.leaders_list .link{
	white-space: nowrap;
	margin-bottom: 10px;
	transition: all .2s;
	text-decoration: none;
	font-size: 13px;
    border: solid 1px #004077;
	padding: .8vw 2vw .8vw 1vw;
}
.leaders_list .link .link_a{
	color: #004077;
	position: relative;
	padding-left: 2.5em;
	width: 100%;
	height: 100%;
}
.leaders_list .link:hover{
	opacity: 0.7;
	color: #FFFFFF;
}
.leaders_list .link .link_a::after{
	content: url("../img/mail_icon.svg");
	position: absolute;
	right: -20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%) ;
	margin: auto;
	width: 14px;
    height: 14px;
}
/*動画を読むボタン*/
.leaders_list .movie{
	white-space: nowrap;
	transition: all .2s;
	color: #004077;
	text-decoration: none;
	font-size: 13px;
    border: solid 1px #004077;
	padding: .8vw 2vw .8vw 1vw;
}
.leaders_list .movie a{
	color: #004077;
	position: relative;
	padding-left: 4em;
	width: 100%;
	height: 100%;
}
.leaders_list .movie:hover{
	opacity: 0.7;
	color: #FFFFFF;
}
.leaders_list .movie a::after{
	content: url("../img/movie_icon.svg");
	position: absolute;
	right: -20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%) ;
	margin: auto;
	width: 14px;
    height: 14px;
}
/*ボタン*/
.leaders_list .btn{
	position: absolute;
	bottom: 0;
	left: 50%;
    transform: translate(-50%, -50%);
	width: 230px;
}
@media (max-width: 1800px), print {
.leaders_list .link,.leaders_list .movie{
	padding: .9vw 2.2vw .9vw 1.7vw;
}
}
@media (max-width: 1440px), print {
.leaders_list .link,.leaders_list .movie{
	padding: .9vw 2vw .9vw 1.5vw;
}
}
@media (max-width: 1240px), print {
.leaders_list .btn{
	width: 18vw;
}
.leaders_list .link,.leaders_list .movie{
	font-size: 1.16vw;
	padding: 1.3vw 1.5vw 1.3vw 1.1vw;
}
}
@media (max-width: 1024px), print {
.leaders_list .btn{
	width: 25vw;
}
.leaders_list .link .link_a::after,
.leaders_list .movie a::after{
	right: -2vw;
	top: 30%;
}
.leaders_list .link,.leaders_list .movie{
	font-size: 1.5vw;
	padding: 1.5vw 2.5vw 1.5vw 2vw;
}
}
@media (max-width: 950px), print {
.leaders_list .link .link_a::after,
.leaders_list .movie a::after{
	right: -1.9vw;
	top: 50%;
}
}
@media (max-width: 768px), print {
.leaders_list .btn{
	width: 27vw;
}
.leaders_list .link .link_a::after,
.leaders_list .movie a::after{
	right: -2.7vw;
}
.leaders_list .link,.leaders_list .movie{
	padding: 1.8vw 3vw 1.8vw 2vw;
	font-size: 1.7vw;
}
}
@media (max-width: 480px), print {
.leaders_list .btn{
	width: 58vw;
}
.leaders_list .link .link_a::after,
.leaders_list .movie a::after{
	right: -5vw;
}
.leaders_list .link,.leaders_list .movie{
	padding: 4vw 1vw 4vw 5vw;
	font-size: 13.5px;
	
}

}

/*ページトップボタン*/
#pagetop{
	position: fixed;
    bottom: 10px;
    right: 30px;
}

/*フッター*/
footer{
	background-color: #004077;
	z-index: 2;
	padding: 20px 0;
}
footer p,footer p a{
	color: #FFFFFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
}
footer p a{
	transition: all .2s;
}
footer p a:hover{
	opacity: 0.7;
	color: #FFFFFF;
}