@charset "UTF-8";

/*-- reset --*/

ul,
li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/*-- base --*/


/* body */

body {
	overflow: hidden;
	width: 100vw;
	height: 100vh;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#2b2b2b+0,000000+100 */
	background: #2b2b2b; /* Old browsers */
	background: -moz-linear-gradient(-45deg, #2b2b2b 0%, #000000 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, #2b2b2b 0%,#000000 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, #2b2b2b 0%,#000000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2b2b2b', endColorstr='#000000',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

/* wrapper */

.wrapper {
	overflow: hidden;
	position: fixed;
	top: 0;
	right: 0;
	width: 55vw;
	height: 100vh;
	color: #fff;
}

.wrapper > div {
	overflow: hidden;
	overflow-y: auto;
	position: absolute;
	top: 0;
	left: 0;
	width: 55vw;
	height: 100vh;
	padding: 2vw;
	opacity: 0;
	transform: rotateY(90deg);
	perspective: 50vw;
	transition: transform 0.2s 0s ease-out, opacity 0.2s 0s ease-out;
}

.wrapper > div:target {
	transform: rotateY(0);
	opacity: 1;
	transition: transform 0.2s 0.2s ease-out, opacity 0.2s 0.2s ease-out;
}

#profile {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ff6699+0,ff3366+100 */
	background: -moz-linear-gradient(-45deg, #ff6699 0%, #ff3366 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, #ff6699 0%,#ff3366 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, #ff6699 0%,#ff3366 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff6699', endColorstr='#ff3366',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.bg02{
background-image: linear-gradient( 68.8deg,  rgba(0,0,0,0.95) 1.8%, rgba(0,55,79,1) 31.8%, rgba(9,93,134,1) 56.2%, rgba(15,155,217,1) 89% );
}

#login {
	background-image: linear-gradient( 110.2deg,  rgba(99,192,227,1) 5.3%, rgba(98,72,194,1) 100.2% );
}

#skillset {
	background-image: linear-gradient( 111.4deg,  rgba(55,168,192,1) -0.2%, rgba(103,187,125,1) 100.2% );
}

/* button */

button {
	cursor: pointer;
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	padding: 0;
	color: rgba(255,255,255,0.9);
	border: none;
	border-radius: 0.4vw;
	background: #ff6699;
}

button.button02 {
	border: 1px solid rgba(255,255,255,0.6);
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0.1+0,0+100 */
	background: -moz-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1affffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
}

/* form */

input[type="text"],
input[type="email"],
input[type="password"],
textarea {
	outline: none;
	display: block;
	width: 100%;
	height: 3rem;
	padding: 0.4vw 0.8vw 0.6vw 0.8vw;
	border: 2px solid #fff;
	border-radius: 0.3vw;
	color: #666;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus {
	border: 2px solid #ff6699;	
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 3rem #fff inset;
	-webkit-text-fill-color: #333 !important;
}

input[type="checkbox"],
input[type="radio"] {
	position: fixed;
	top: -100px;
	left: -100px;
}

/* table */

div.flex{
	display: flex;
}

div.flex > div {
	flex-grow: 1;
	vertical-align: top;
}

/*-- groval navigagtion --*/

#gnav {
	position: fixed;
	top: 0;
	left: 0;
	width: 50vw;
	height: 100vh;
}

#gnav h1 {
	margin: 1rem 0 0 0;
	color: #fff;
	text-align: center;
}

/*-- login --*/

#login-form #name,
#login-form #password {
	margin-bottom: 1rem;
}

#login-form p {
	margin: 0;
}

#login-form label {
	display: block;
}

#login-form .form-check-label {
	cursor: pointer;
	position: relative;
	display: block;
	margin: 0 0 1rem 0;
}

#login-form .form-check-label:before {
	content: "";
	display: inline-block;
	width: 1.4rem;
	height: 1.4rem;
	margin: 0 0.5rem 0 0;
	border: 1px solid #fff;
	border-radius: 2px;
	vertical-align: top;
	overflow: hidden;
}

#login-form #remember:checked + .form-check-label:before {
	background: #ff6699;
}

#login-form #remember:checked + .form-check-label:after {
	content: "";
	position: absolute;
	top: 2px;
	left: 1px;
	display: block;
	width: 1.28rem;
	height: 0.7rem;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: rotate(-45deg);
}

.invalid-feedback {
	display: block;
	height: 2rem;
	font-size: 0.8rem;
}
.invalid-feedback > strong {
	font-weight: normal;
}

#login-request {
	margin-top: 3rem;
}

#login-request p {
	font-size: 0.8rem;
}

/*-- profile --*/

#profile-list > li {
	display: inline-block;
	width: calc((51vw - 10px) / 4 );
	height: calc((51vw - 10px) / 4 );
	margin: 1px;
	padding: 1em;
	color: #ff6699;
	background: rgba(255,255,255,0.9);
	vertical-align: top;
}

#profile-list > li:nth-child(1) {
	border-radius: 0.2vw 0 0 0;
}
#profile-list > li:nth-child(4) {
	border-radius: 0 0.2vw 0 0 ;
}
#profile-list > li:nth-child(5) {
	border-radius: 0 0 0 0.2vw;
}
#profile-list > li:nth-child(8) {
	border-radius: 0 0 0.2vw 0;
}

#profile-list img {
	display: block;
	width: 100%;
}

/*-- skillset --*/

#skillset-list {
	margin: 1em 0 0 0;
}

#skillset-list > li {
	position: relative;
	height: 2em;
	line-height: 2em;
	margin: 0 0 1em 0;
	padding: 0 0 0 1em;
	background: rgba(255,255,255,0.2);
	border-radius: 0.2vw 0 0 0.2vw;
	font-size: 0.8rem;
}

#skillset-list > li:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 51vw;
	height: 2em;
	background: rgba(255,255,255,0.1);
	border-radius: 0.2vw;
}