.profile{
	padding:100px 0;
}

.profile_intro{
	display:flex;
	align-items:center;
	gap:60px;
}

.profile_photo{
	width:320px;
	flex-shrink:0;
}

.profile_photo img{
	width:100%;
	border-radius:30px;
	box-shadow:0 15px 40px rgba(0,0,0,.1);
}

.profile_position{
	color:#1d4598;
	font-weight:bold;
	margin-bottom:10px;
}

.profile_name{
	font-size:48px;
	margin-bottom:20px;
	margin-top: 0px;
	padding: 0px;
	border-left: 0px;
}

.profile_message{
	line-height:2;
	font-size:18px;
}

/* 基本情報 */
.profile_card{
	background:#f5f8ff;
	border-radius:25px;
	padding:40px;
}

.profile_card h2{
	margin-bottom:30px;
	color:#1d4598;
}

.profile_table{
	display:grid;
	grid-template-columns:180px 1fr;
	row-gap:20px;
}

.profile_table dt{
	font-weight:bold;
}

.profile_table dd{
	margin:0;
}

/* 経歴 */

.career{
	padding:100px 0;
	background:#eef5fe;
}

.career_timeline{
	position:relative;
	max-width:800px;
	margin:0 auto;
}

.career_timeline::before{
	content:"";
	position:absolute;
	left:100px;
	top:0;
	bottom:0;
	width:2px;
	background:#d0defd;
}

.career_item{
	display:flex;
	margin-bottom:40px;
	position:relative;
}

.career_year{
	width:80px;
	font-weight:bold;
	color:#1d4598;
}

.career_text{
	flex:1;
	background:#fff;
	padding:20px;
	border-radius:15px;
	box-shadow:0 5px 15px rgba(0,0,0,.05);
}

/* 役職 */

.position{
	padding:100px 0;
}
.position_list{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:20px;
}
.position_item{
	/* background:#f5f8ff; */
	background: #eff5fd;
	padding:25px;
	border-radius:15px;
	text-align:center;
	font-weight:bold;
}
@media screen and (max-width:768px) {
	.profile_card{
	padding:30px;
	}
	.position_list{
		display: block;
	}
	.position_item{
		margin-bottom: 20px;
	}
	.profile_intro{
		display: block;
	}
	.profile_photo{
		width: 100%;
	}
	.profile_table{
		grid-template-columns: 110px 1fr;
	}
}