@charset "utf-8";
.fv{
	height:100vh;
	background-color:#BEEBE9;
}
#works{
	background-color:#FFFDF9;
}
#about{
	background-color:#FFE3ED;
}
#contact{
	background-color:#BEEBE9;
}
h1 {
	font-size:48px;
	text-align: center;
	padding-top:250px;
	letter-spacing: 10px;
	color: #666;
}
.menu{
	width:80%;
	display: flex;
	justify-content: space-around;
	text-align: center;
	margin:59px auto;
}
.menu a{
	color:#fff;
	letter-spacing: 2px;
	font-size:24px;
	transition: 0.2s;
	position: relative;
	display: inline-block;
	padding:0 8px 2px;
}
.menu a:after{
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
h2{
	text-align: center;
	font-size: 36px;
	letter-spacing: 3px;
	font-weight: bold;
	padding:50px;
	color: #666;
}
.work{
	width:80%;
	margin:0 auto;
	padding-bottom:120px;
	display: flex;
	flex-wrap: wrap;
	/*justify-content:space-between;*/
}
.work li{
	width:300px;
	text-align: center;
	margin:0 auto;
	padding:30px 15px;
}
.work li img{
	width:100%;
	height:auto;
	transition: box-shadow .5s;
	border:1px solid #A2A2A2;
}
.work li img:hover{
	box-shadow: 0 3px 8px #838383;
}
.work li p{
	padding-top:15px;
}
.title{
	font-weight:bold;
}
h3{
	font-size:20px;
	color: #666;
}
.flex{
	width:80%;
	margin: 30px auto 0;
	display: flex;
	justify-content: space-around;
	padding-bottom:120px;
}
.photo{
	width:30%;
}
.photo img{
	width: 90%;
	height:auto;
}
.profile{
	width:50%;
}
.profile p{
	padding-bottom:40px;
}
.icon{
	display: flex;
	justify-content: space-between;
	padding-bottom:20px;
}
.icon li img{
	width:80px;
	height: auto;
}
.info{
	text-align: center;
	padding-bottom:120px;
	width:80%;
	margin:0 auto;
}
.info p{
	padding-bottom:10px;
}

@media only screen and (min-width:641px){
.sp{
	display:none;
	}
}
@media only screen and (max-width:640px){
.menu,.work{
	display: block;
}
.menu a{
	margin-bottom:30px;
}
h1 {
	font-size:40px;
	padding-top:200px;
}
.work{
	padding-bottom:80px;
}
.work li{
	width:90%;
}
.flex{
	display:block;
}
.profile{
	width:100%;
	margin:0 auto;
}
.photo{
	width:80%;
	text-align:center;
    margin: 0 auto 30px;
}
.profile p{
	padding-bottom:40px;
	font-size: 18px;
    letter-spacing: 0.3px;
}
.icon{
	display: flex;
	justify-content: space-between;
	padding-bottom:20px;
}
.icon li img{
	width:90%;
	height: auto;
}
}