@charset "UTF-8"

/*共通部分*/
html{
	font-size: 100%
}

body {
	margin: 0;
	font-family: "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", sans-serif;
}


/*-----共通部分ここまで-----*/

/*top*/
.top {
	height: 700px;
	background-image: url(../img/pc.jpg);
	background-size: cover;
	position: relative;	
	overflow: hidden;
}

.title-section {
	height: 200%;
	width: 100%;
	background-color: #f3eed9;
	border-radius: 50%;
	position: absolute;
	top: -50%;
	left: -50%;
	z-index: 10;
}

.title-text {
	position: absolute;
	top: 200px;
	right: 65%;
	z-index: 20;
}

.title-text h1 {
	margin-bottom: 0;
	font-size: 55px;
	letter-spacing: 0.1em;
	color: white;
	text-align: center;
	text-shadow :
       2px  2px 1px rgba(51, 51, 51, 0.92),
      -2px  2px 1px rgba(51, 51, 51, 0.92),
       2px -2px 1px rgba(51, 51, 51, 0.92),
      -2px -2px 1px rgba(51, 51, 51, 0.92),
       2px  0px 1px rgba(51, 51, 51, 0.92),
       0px  2px 1px rgba(51, 51, 51, 0.92),
      -2px  0px 1px rgba(51, 51, 51, 0.92),
       0px -2px 1px rgba(51, 51, 51, 0.92);        /* 文字の影 */
}

.title-text h2 {
	margin-top: 5px;
	font-size: 40px;
	color: white;
	text-align: center;
	text-shadow :
       2px  2px 1px rgba(51, 51, 51, 0.92),
      -2px  2px 1px rgba(51, 51, 51, 0.92),
       2px -2px 1px rgba(51, 51, 51, 0.92),
      -2px -2px 1px rgba(51, 51, 51, 0.92),
       2px  0px 1px rgba(51, 51, 51, 0.92),
       0px  2px 1px rgba(51, 51, 51, 0.92),
      -2px  0px 1px rgba(51, 51, 51, 0.92),
       0px -2px 1px rgba(51, 51, 51, 0.92);        /* 文字の影 */
}

.title-text p {
	font-size: 25px;
	text-align: center;
	font-weight: bolder;
}


/*---------------------*/
/*header*/
header {
	width: 100%;
	height: 65px;
	background-color: #deb422;
	position: sticky;
	top: 0;
}

header ul {
	margin: 0;
	display: flex;
	justify-content: space-around;
	list-style: none;
	padding: 20px 70px;
}

header li {
	font-size: 18px;
}

header a {
	color: white;
	font-weight: bolder;
	text-decoration: none;
}

header .pink a {
	color: #de234f;
}

header a:hover {
	text-decoration: underline;
}

.header-top {
	position: absolute;
	z-index: 40;
	top: 10px;
	left: 40px;
}

.sp-menu #open {
	font-size: 60px;
	cursor: pointer;
}

.sp-menu #open02 {
	margin-top: 0;
	cursor: pointer;
	font-weight: bolder;
	padding-left: 5px;
}

.closeicon #close {
	font-size: 50px;
	line-height: 70px;
	cursor: pointer;
	display: none;
}

/*ハンバーガーメニュー*/
.overlay {
	background-color: white;
	opacity: 0.9;
	height: 700px;
	position: absolute;
	z-index: 30;
	top: 0;
	right: 0;
	left: 0;
	display: none;
}

.ham-nav {
	margin-top: 100px;
}

.ham-menu {
	list-style: none;
}

.ham-menu li {
	margin-bottom: 50px;
	text-align: center;
}

.ham-menu a {
	color: #010F29;
	font-size: 20px;
	text-decoration: none;
}

.ham-menu a:hover {
	text-decoration: underline;
}

.ham-menu p {
	margin-top: 0;
	font-size: 14px;
	text-align: center;
}


/*---------------------*/
.profile-title {
	margin: 50px 11% 10px 11%;
	text-align: center;
}

.profile-title h2,
.work h2 {
	margin: 0;
	font-size: 50px;
	letter-spacing: 0.1em;
}

.profile-title h2:first-letter,
.work h2:first-letter{
	font-size: 65px;
	color: #c57708;
}

.profile-container {
	margin: 0 11% 20px 11%;
	display: flex;
}

.profile-container .profile-picture {
	width: 30%;
	height: 250px;
}

.profile-container .profile-content {
	width: 70%;
	height: 250px;
	padding-left: 30px;
}

.profile-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 5%;
}

.profile-content .profile-text01 {
	margin: 0;
}

.profile-content a:hover {
	color: #de234f;
}

/*---------------------*/
.skill-title {
	margin: 100px 11% 10px 11%;
	text-align: center;
}

.skill-title h2,
.contact h2 {
	margin: 0;
	font-size: 50px;
	letter-spacing: 0.1em;
}

.skill-title h2:first-letter,
.contact h2:first-letter{
	font-size: 65px;
	color: #03a43c;
}

.skill-container {
	margin: 0 11% 20px 11%;
	display: flex;
}

.skill-container .skill-content {
	width: 70%;
	height: 250px;
	padding-left: 30px;
}

.skill-content li {
	font-size: 30px;
}

.skill-container .skill-picture {
	width: 30%;
	height: 250px;
}

.skill-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 5%;
}

/*---------------------*/
.work {
	margin: 100px 11% 10px 11%;
	text-align: center;
	height: 510px;
	background-image: url(../img/memo1.png);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	padding-top: 100px;
}

.work ul {
	list-style-type: square;
	list-style-position: inside;
}

.work li {
	font-size: 35px;
}

.work li:first-child {
	margin-top: 40px;
	margin-bottom: 30px;
}

.work a:hover {
	color: #de234f;
}

/*---------------------*/
/*contact*/
.contact {
	width: 80%;
	margin:0 auto;
	margin-top: 50px;
	border: solid 3px #deb422;
}

#formWrap {
	text-align: center;
	padding-top: 30px;
}

#formWrap form {
	text-align: center;
}

.formTable {
	width: 100%;
}

.formTable th {
	width: 20%;
}

.contact form {
	width: 80%;
	margin: auto;
}

.form-text td {
	padding-top: 20px;
}

/*---------------------*/
footer {
	width: 100%;
	height: 100px;
	background-color: #deb422;
	text-align: center;
	margin-top: 100px;
	padding-top: 20px;
}

footer p {
	color: white;
}	


/*-----------------------------------------*/
/*スマホ版*/

@media screen and (max-width: 768px) {
	header {
		display: none;
	}

	.title-section {
		height: 100%;
		width: 200%;
		background-color: #f3eed9;
		border-radius: 50%;
		position: absolute;
		top: -50%;
		left: -50%;
		z-index: 10;
	}

	.title-text {
		width: 100%;
		position: absolute;
		top: 50px;
		left: 0;
		z-index: 20;
	}

	.title-text h1 {
		font-size: 45px;
	}

	.title-text h2 {
		font-size: 35px;
	}

	.title-text p {
		font-size: 18px;
	}

	.profile-container {
		flex-direction: column;	
	}

	.profile-container .profile-picture {
		width: 70%;
		height: 200px;
		margin-left: auto;
		margin-right: auto;
	}

	.profile-container .profile-content {
		width: 100%;
		height: 250px;
		padding-top: 30px;
	}

	.skill-container {
		flex-direction: column-reverse;
	}

	.skill-container .skill-content {
		width: 100%;
		height: 250px;
		padding-top: 30px;
	}

	.skill-container .skill-picture {
		width: 70%;
		height: 200px;
		margin-left: auto;
		margin-right: auto;
	}

	.work li {
		font-size: 25px;
	}	
		
}

@media screen and (min-width: 768px) {
	.header-top {
		display: none;
	}

}



