@charset "UTF-8";
html{
	font-size: 62.5%;

	scroll-behavior: smooth;
}
body{
	font-size: 1.6rem;
	/*(1rem = 10pxとなります。) */
	/* font-size: 16px; */
	font-family: 'Playfair Display', serif;
}

/* -------------------------------------------------------- */
#nav {
	width: 100%;
	top: 0px;
	position: fixed;
	background-color: #FFF;

	z-index: 100;
}
#nav .wrap{
	list-style: none;
	display: flex;
	align-items: center;
	margin: 20px 50px 0 0;
}
#nav .wrap li{
	width: 250px;
	text-align: center;
	line-height: 50px;
	padding: 0 10px;
}
#nav .wrap .icons{
	width: 30px;
}
#nav .wrap li a{
	font-size: 20px;
	text-decoration: none;
	color: #000;

}
#nav .wrap img{
	width: 20px;
}
#nav .wrap li:first-child {
	margin-right: auto;
}
/* -------------------------------------------------------- */
#sidebar {
	position: fixed;
	top: 0;
	right: -500px; /* 初期位置：右に隠す */
	width: 300px;
	height: 100%;
	background-color: #505050;
	color: white;
	box-shadow: -3px 0 10px rgba(0,0,0,0.3);
	transition: right 0.3s ease;
	z-index: 999;
}

#sidebar.active {
	right: 0; /* 出てくる位置 */
}

#closeSidebar {
	background: none;
	border: none;
	color: white;
	font-size: 25px;
	position: absolute;
	top: 20px;
	right: 10px;
	cursor: pointer;
}
#sidebar h2{
	text-align: center;
	font-size: 25px;
	padding: 30px 0;
	border-bottom: #fff 1px solid;
	margin-bottom: 40px;
}
#sidebar a{
	display: block;
	color: #fff;
	text-decoration: none;
	/* font-size: 20px; */
}
#sidebar .box{
	padding: 0 10px;
	display: flex;
	justify-content:space-between;
	padding: 30px 20px;
	border-bottom: #fff 1px solid;
}
#sidebar img{
	display: block;
	width: 15px;
	height: 5px;
	padding-top: 7px;
}
/* -------------------------------------------------------- */
.sec{
	width: 60%;
	margin: 0 auto 100px;
	font-size: 18px;
}
.sec h2{
	text-align: center;
	font-size: 25px;
	margin-top: 100px;
}
.sec .text{
	text-align: center;
	font-size: 12px;
	color: #5b5b5b;
	margin: 10px 0 50px;
}
.sec .photo img{
	width: 280px;
	height: 280px;
	border-radius: 50%;
	object-fit: top;
}
.sec .me{
	width: 280px;
	margin-left: 10px;
}
.sec .me h3{
	text-align: center;
	font-size: 28px;
	letter-spacing: 7px;
	margin-top: 30px;
}
.sec .me p{
	text-align: center;
	margin-top: 10px;
	letter-spacing: 2px;
	margin-right: 10px;
}
.sec .wrap2 img{
	width: 20px;
	margin-right: 20px;
}
.sec .wrap img{
	width: 20px;
	height: 20px;
	margin-right: 20px;
}
.sec .wrap2{
	display: flex;
	align-items: flex-end;
	padding-left: 20px;
}
.sec .wrap{
	display: flex;
	padding-left: 20px;
}
.sec .wrap2 span{
	margin-right: 20px;
}
.sec .wrap .text3{
	margin-top: 2px;
}
.sec .wrap .title{
	font-size: 22px;
	margin-top: 10px;
}
.sec .box{
	display: flex;
	gap: 10%;
	justify-content: center;
	align-items: center;
}
.sec .box2 .wrap{
	margin: 30px 0;
}
.sec .box2 .syoukai{
	padding: 30px 10px 0;
	border-top: #000 1px solid;
	letter-spacing: 5px;
}
/* -------------------------------------------------------- */

footer{
	background-color: #505050;
}
footer .wrap{
	width: 75%;
	margin: 0 auto;
	padding-top: 120px;
	display: flex;
	justify-content: space-between;
}
footer .wrap .title{
	color: #FFF;
	font-size: 35px;
	letter-spacing: 3px;
	padding-top: 30px;
}
footer .box2{
	color: #FFF;
}
footer .box2 .text{
	color: #e0e0e0;
	padding-right: 40px;
}
footer .box2 td{
	padding: 10px 2px;
}
footer .box2 .color{
	background: #383838;
}
footer .box3{
	width: 75%;
	margin: 20px auto 0;
	display: flex;
	padding-bottom: 50px;
}
footer .box3 .bot{
	text-decoration: none;
}
footer .box3 img{
	width: 25px;
	border-radius: 50%;
	margin-right: 10px;
	margin-left: -5px;
}
footer .box3 .line{
	color: #fff;
	line-height: 25px;
	font-weight: bold;
}
footer{
	position: relative;
}
footer .text2{
	color: #fff;
	position: absolute;
	right: 12.5%;
	bottom: 50px;
}
