html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block
}

body {
	line-height: 1
}

ol,
ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

:focus {
	outline: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: normal
}

.clearfix:before,
.section:before,
.nav ul:before {
	content: "";
	display: table
}

.clearfix:after,
.section:after,
.nav ul:after {
	content: "";
	display: table;
	clear: both
}

input {
	-webkit-appearance: none;
	border-radius: 0
}

a {
	color: #2094c4;
	text-decoration: none;
	outline: none
}

a:hover {
	color: #3498db
}

p {
	padding: 0 0 20px
}

strong {
	font-weight: bold
}

body {
	color: #000;
	font: normal 14px/1.4 "helvetica neue", tahoma, "hiragino sans gb", stheiti, "wenquanyi micro hei", \5FAE\8F6F\96C5\9ED1, \5B8B\4F53, sans-serif;
	width: 100%;
	overflow: hidden
}

.left {
	float: left
}

.right {
	float: right
}

.section-wrap {
	position: relative;
	z-index: 2
}

.section {
	width: 960px;
	margin: 0 auto
}

.section h1 {
	margin-bottom: 40px;
	font-size: 36px
}

.overlay {
	background: #ecf0f1;
	position: absolute;
	display: none;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	opacity: 1;
	-webkit-transition: opacity 0.4s ease-in;
	-moz-transition: opacity 0.4s ease-in;
	-ms-transition: opacity 0.4s ease-in;
	-o-transition: opacity 0.4s ease-in;
	transition: opacity 0.4s ease-in
}

.loading-process .overlay {
	display: block
}

.finish-loading .overlay {
	opacity: 0
}

.finish-loading .loading-info,
.finish-loading .loading-circle {
	opacity: 0
}

.finish-loading .loading-avatar {
	border: 4px solid #fff
}

.fade {
	opacity: 0;
	position: relative;
	top: 10px;
	-webkit-transition: all 0.2s ease-in;
	-moz-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in
}

.fade.fade-in {
	opacity: 1;
	top: 0
}

.section-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 20
}

.finish-loading .nav {
	opacity: .6
}

.nav {
	width: 960px;
	position: absolute;
	z-index: 5
}

.nav li {
	float: left;
	text-align: center;
	position: relative;
	width: 20%
}

.nav li span {
	color: #fff;
	font-size: 30px;
	display: block;
	padding: 60px 0;
	width: 100%;
	-webkit-transition: all 0.6s ease-in;
	-moz-transition: all 0.6s ease-in;
	-ms-transition: all 0.6s ease-in;
	-o-transition: all 0.6s ease-in;
	transition: all 0.6s ease-in;
	cursor: pointer;
}

.nav .fade1 span:hover,
.nav .fade1.hover span {
	color: #95a5a6
}

.nav .fade2 span:hover,
.nav .fade2.hover span {
	color: #2980b9
}

.nav .fade3 span:hover,
.nav .fade3.hover span {
	color: #c0392b
}

.nav .fade4 span:hover,
.nav .fade4.hover span {
	color: #27ae60
}

.nav .back-home {
	height: 1px;
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none
}

.nav .back-home span {
	position: absolute;
	width: 100px;
	height: 100px;
	left: 50%;
	margin-left: -50px;
	border-radius: 50%;
	border: 4px solid #fff;
	overflow: hidden;
	text-indent: -9999px;
	background: url(../images/avatar.jpg);
	-webkit-background-size: 100px 100px;
	background-size: 100px 100px;
	padding: 0 !important;
	top: 30px
}

.nav .back-home span:hover {
	border-bottom: 4px solid #fff
}

.nav-bg {
	background: #000;
	position: relative;
	z-index: 1;
	height: 80px;
	margin: 0 auto;
	width: 0;
	-webkit-transition: width 0.6s ease-in;
	-moz-transition: width 0.6s ease-in;
	-ms-transition: width 0.6s ease-in;
	-o-transition: width 0.6s ease-in;
	transition: width 0.6s ease-in
}

.shrink .nav li span {
	padding: 20px 0;
	font-size: 24px
}

.shrink .nav .back-home span {
	top: 0
}

.shrink .nav-bg {
	width: 100%
}

.home-bg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1
}

.home-bg img {
	max-width: none
}

.loading {
	margin: auto;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 120px;
	height: 120px;
	z-index: 10
}

.loading-circle {
	background-color: transparent;
	opacity: .9;
	border-top: 10px solid #27ae60;
	border-right: 10px solid #d35400;
	border-bottom: 10px solid #2980b9;
	border-left: 10px solid #c0392b;
	border-radius: 50%;
	width: 100px;
	height: 100px;
	margin: 0 auto;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-ms-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
	animation: spin 1s infinite linear;
	-webkit-animation: spin 1s infinite linear;
	-moz-animation: spin 1s infinite linear;
	-o-animation: spin 1s infinite linear
}

@keyframes spin {
	0% {
		-webkit-transform: rotate(0deg)
	}

	100% {
		-webkit-transform: rotate(360deg)
	}
}

@-moz-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg)
	}

	100% {
		-webkit-transform: rotate(360deg)
	}
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg)
	}

	100% {
		-webkit-transform: rotate(360deg)
	}
}

@-o-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg)
	}

	100% {
		-webkit-transform: rotate(360deg)
	}
}

.loading-avatar {
	width: 100px;
	height: 100px;
	overflow: hidden;
	position: absolute;
	top: 10px;
	left: 10px;
	border-radius: 50%;
	-webkit-transition: border-width 0.4s ease-in;
	-moz-transition: border-width 0.4s ease-in;
	-ms-transition: border-width 0.4s ease-in;
	-o-transition: border-width 0.4s ease-in;
	transition: border-width 0.4s ease-in
}

.loading-avatar img {
	width: 100px;
	height: 100px;
	border-radius: 50px
}

.loading-info {
	position: absolute;
	top: 130%;
	width: 160%;
	-webkit-transition: opacity 0.4s ease-in;
	-moz-transition: opacity 0.4s ease-in;
	-ms-transition: opacity 0.4s ease-in;
	-o-transition: opacity 0.4s ease-in;
	transition: opacity 0.4s ease-in
}

.section-fristpage {
	text-align: center;
	color: #fff;
	font-size: 30px
}

.section-fristpage p {
	padding-bottom: 0
}

.section-fristpage .fade2 {
	margin-top: 60px
}

.section-fristpage .fade3 {
	margin-top: 60px
}

.scroll-tip {
	display: block;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	position: absolute;
	bottom: -30px;
	top: auto !important;
	left: 50%;
	margin-left: -30px;
	text-indent: -9999px;
	background: #fff url(../images/bg-down-arrow.png) no-repeat 50% 30%
}

.section-about {
	background: #eee url(../images/bg-tile.png) 0 0
}

.section-about .about-content h1 {
	margin-bottom: 30px;
	font-size: 36px
}

.section-about .about-content .introli {
	width: 100%;
	margin-left: 400px;
	line-height: 150%
}

.section-about .about-content .introli .bio-text {
	opacity: 0
}

.section-about .about-content .introli .left_icon {
	display: inline-block;
	width: 100px;
	height: 100px
}

.section-about .about-content .introli .left_icon .bio-icon-1 {
	-webkit-animation: bio-icon-in2 .6s ease-out .7s 1 forwards;
	-moz-animation: bio-icon-in2 .6s ease-out .7s 1 forwards
}

.section-about .about-content .introli .left_icon .bio-icon-2 {
	-webkit-animation: bio-icon-in2 .6s ease-out 1s 1 forwards;
	-moz-animation: bio-icon-in2 .6s ease-out 1s 1 forwards
}

.section-about .about-content .introli .left_icon .bio-icon-3 {
	-webkit-animation: bio-icon-in2 .6s ease-out 1.3s 1 forwards;
	-moz-animation: bio-icon-in2 .6s ease-out 1.3s 1 forwards
}

.section-about .about-content .introli .right_content .bio-text-1 {
	margin-left: -210px;
	-webkit-animation: bio-text-in .3s ease-out 0.6s 1 forwards;
	-moz-animation: bio-text-in .3s ease-out 0.6s 1 forwards
}

.section-about .about-content .introli .right_content .bio-text-2 {
	margin-left: -210px;
	-webkit-animation: bio-text-in .3s ease-out .9s 1 forwards;
	-moz-animation: bio-text-in .3s ease-out .9s 1 forwards
}

.section-about .about-content .introli .right_content .bio-text-3 {
	margin-left: -210px;
	-webkit-animation: bio-text-in .3s ease-out 1.2s 1 forwards;
	-moz-animation: bio-text-in .3s ease-out 1.2s 1 forwards
}

.section-about .fade {
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-ms-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in
}

@-webkit-keyframes 'bio-text-in' {
	0% {
		-webkit-transform: translate(649px, 0);
		opacity: 0
	}

	100% {
		-webkit-transform: translate(0, 0);
		opacity: 1
	}
}

@-webkit-keyframes 'bio-icon-in2' {
	0% {
		margin-left: -300px;
		opacity: 0;
		-webkit-transform: rotate(-60deg)
	}

	100% {
		margin-left: -269px;
		opacity: 1;
		-webkit-transform: rotate(0deg)
	}
}

@-moz-keyframes bio-text-in {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-moz-keyframes bio-icon-in2 {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

.section-works {
	background: #27ae60
}

.button2:hover {
	opacity: 1;
	-webkit-transform: scale(1);
	cursor: pointer
}

.button2 {
	display: block;
	width: 60px;
	height: 60px;
	position: absolute;
	bottom: 40px;
	left: 50%;
	margin-left: -30px;
	opacity: 0.75;
	background: url(../images/arrow.png);
	-webkit-transition: all .2s ease-in 0s;
	z-index: 9999;
	-webkit-transform: scale(0.8)
}

.dark-button2 {
	background-position: 0 -60px
}

.button2-2-top {
	background-position: -60px 0;
	bottom: none;
	width: 80px;
	height: 80px
}

.works-content h1 {
	text-align: center;
	color: #fff
}

.works-content .works-list .fade {
	top: 20px;
	left: 10px;
	-webkit-transition: all 0.4s ease-in;
	-moz-transition: all 0.4s ease-in;
	-ms-transition: all 0.4s ease-in;
	-o-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in
}

.works-content .works-list .fade.fade-in {
	left: 0;
	top: 0
}

.works-content .works-item {
	position: relative;
	width: 300px;
	margin-left: 30px;
	margin-bottom: 30px;
	float: left;
	overflow: hidden
}

.works-content .works-item img {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.2s ease-in;
	-moz-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in
}

.works-content .works-item.first {
	margin-left: 0
}

.works-content .works-item:hover img {
	-webkit-transform: scale(1.5);
	-moz-transform: scale(1.5);
	-ms-transform: scale(1.5);
	-o-transform: scale(1.5);
	transform: scale(1.5)
}

.works-content .works-item:hover .work-info {
	top: 0
}

.works-content .works-item .work-info {
	position: absolute;
	top: 137px;
	padding: 10px;
	left: 0;
	right: 0;
	height: 100%;
	color: #fff;
	background: rgba(0, 0, 0, 0.8);
	-webkit-transition: all 0.2s ease-in;
	-moz-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in
}

.works-content .works-item .work-info h2 {
	margin-bottom: 20px
}
.works-content a {
	cursor: pointer;
}

.more-link {
	color: #fff;
	display: block;
	padding: 10px 20px;
	width: 60px;
	text-align: center;
	margin: 0 auto;
	background: #3d3d3d;
	background: rgba(0, 0, 0, 0.6)
}

.more-link:hover {
	color: #fff;
	background: #3d3d3d;
	background: rgba(0, 0, 0, 0.4)
}

.section-skill {
	background: #2980b9
}

.skill-content h1 {
	color: #fff
}

.skill-content ul {
	color: #fff
}

.skill-content li {
	font-size: 18px;
	line-height: 2
}

.skill-content .fade {
	top: 0;
	left: 10px;
	-webkit-transition: all 0.2s ease-in;
	-moz-transition: all 0.2s ease-in;
	-ms-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in
}

.skill-content .fade.fade-in {
	left: 0
}

.section-contact {
	background: #c0392b;
	color: #dadada
}

.section-contact a {
	color: #fff
}

.section-contact a:hover {
	color: #dadada
}

.section-contact .contact-content .left {
	width: 40%
}

.section-contact .contact-content .right {
	width: 50%
}

.section-contact .contact-content h1 {
	color: #fff;
	margin-bottom: 30px
}

.section-contact .contact-content .contact-info {
	margin-top: 20px
}

.section-contact .contact-content h2 {
	color: #fff;
	margin-bottom: 20px
}

.section-contact .contact-content .right ul {
	list-style-type: square;
	padding-left: 30px;
	margin-bottom: 20px;
	line-height: 1.6
}

.section-contact .contact-ways li {
	line-height: 1.8
}
.section-contact .section {
	display: flex;
	flex-direction: column;
}
.section-contact .footer {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
}

.a-bounce,
.a-flip,
.a-flash,
.a-shake,
.a-swing,
.a-wobble,
.a-ring {
	-webkit-animation: 1s ease;
	-moz-animation: 1s ease;
	-ms-animation: 1s ease;
	animation: 1s ease
}

.a-fadein,
.a-fadeinT,
.a-fadeinR,
.a-fadeinB,
.a-fadeinL,
.a-bouncein,
.a-bounceinT,
.a-bounceinR,
.a-bounceinB,
.a-bounceinL,
.a-rotatein,
.a-rotateinLT,
.a-rotateinLB,
.a-rotateinRT,
.a-rotateinRB,
.a-flipin,
.a-flipinX,
.a-flipinY {
	-webkit-animation: 1s ease-out backwards;
	-moz-animation: 1s ease-out backwards;
	-ms-animation: 1s ease-out backwards;
	animation: 1s ease-out backwards
}

.a-fadeout,
.a-fadeoutT,
.a-fadeoutR,
.a-fadeoutB,
.a-fadeoutL,
.a-bounceout,
.a-bounceoutT,
.a-bounceoutR,
.a-bounceoutB,
.a-bounceoutL,
.a-rotateout,
.a-rotateoutLT,
.a-rotateoutLB,
.a-rotateoutRT,
.a-rotateoutRB,
.a-flipout,
.a-flipoutX,
.a-flipoutY {
	-webkit-animation: 1s ease-in forwards;
	-moz-animation: 1s ease-in forwards;
	-ms-animation: 1s ease-in forwards;
	animation: 1s ease-in forwards
}

.a-fadein {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
	-ms-animation-name: fadein;
	animation-name: fadein
}

.a-fadeinT {
	-webkit-animation-name: fadeinT;
	-moz-animation-name: fadeinT;
	-ms-animation-name: fadeinT;
	animation-name: fadeinT
}

.a-fadeinR {
	-webkit-animation-name: fadeinR;
	-moz-animation-name: fadeinR;
	-ms-animation-name: fadeinR;
	animation-name: fadeinR
}

.a-fadeinB {
	-webkit-animation-name: fadeinB;
	-moz-animation-name: fadeinB;
	-ms-animation-name: fadeinB;
	animation-name: fadeinB
}

.a-fadeinL {
	-webkit-animation-name: fadeinL;
	-moz-animation-name: fadeinL;
	-ms-animation-name: fadeinL;
	animation-name: fadeinL
}

.a-fadeout {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	-ms-animation-name: fadeout;
	animation-name: fadeout
}

.a-fadeoutT {
	-webkit-animation-name: fadeoutT;
	-moz-animation-name: fadeoutT;
	-ms-animation-name: fadeoutT;
	animation-name: fadeoutT
}

.a-fadeoutR {
	-webkit-animation-name: fadeoutR;
	-moz-animation-name: fadeoutR;
	-ms-animation-name: fadeoutR;
	animation-name: fadeoutR
}

.a-fadeoutB {
	-webkit-animation-name: fadeoutB;
	-moz-animation-name: fadeoutB;
	-ms-animation-name: fadeoutB;
	animation-name: fadeoutB
}

.a-fadeoutL {
	-webkit-animation-name: fadeoutL;
	-moz-animation-name: fadeoutL;
	-ms-animation-name: fadeoutL;
	animation-name: fadeoutL
}

.a-bounce {
	-webkit-animation-name: bounce;
	-moz-animation-name: bounce;
	-ms-animation-name: bounce;
	animation-name: bounce
}

.a-bouncein {
	-webkit-animation-name: bouncein;
	-moz-animation-name: bouncein;
	-ms-animation-name: bouncein;
	animation-name: bouncein
}

.a-bounceinT {
	-webkit-animation-name: bounceinT;
	-moz-animation-name: bounceinT;
	-ms-animation-name: bounceinT;
	animation-name: bounceinT
}

.a-bounceinR {
	-webkit-animation-name: bounceinR;
	-moz-animation-name: bounceinR;
	-ms-animation-name: bounceinR;
	animation-name: bounceinR
}

.a-bounceinB {
	-webkit-animation-name: bounceinB;
	-moz-animation-name: bounceinB;
	-ms-animation-name: bounceinB;
	animation-name: bounceinB
}

.a-bounceinL {
	-webkit-animation-name: bounceinL;
	-moz-animation-name: bounceinL;
	-ms-animation-name: bounceinL;
	animation-name: bounceinL
}

.a-bounceout {
	-webkit-animation-name: bounceout;
	-moz-animation-name: bounceout;
	-ms-animation-name: bounceout;
	animation-name: bounceout
}

.a-bounceoutT {
	-webkit-animation-name: bounceoutT;
	-moz-animation-name: bounceoutT;
	-ms-animation-name: bounceoutT;
	animation-name: bounceoutT
}

.a-bounceoutR {
	-webkit-animation-name: bounceoutR;
	-moz-animation-name: bounceoutR;
	-ms-animation-name: bounceoutR;
	animation-name: bounceoutR
}

.a-bounceoutB {
	-webkit-animation-name: bounceoutB;
	-moz-animation-name: bounceoutB;
	-ms-animation-name: bounceoutB;
	animation-name: bounceoutB
}

.a-bounceoutL {
	-webkit-animation-name: bounceoutL;
	-moz-animation-name: bounceoutL;
	-ms-animation-name: bounceoutL;
	animation-name: bounceoutL
}

.a-rotatein {
	-webkit-animation-name: rotatein;
	-moz-animation-name: rotatein;
	-ms-animation-name: rotatein;
	animation-name: rotatein
}

.a-rotateinLT {
	-webkit-animation-name: rotateinLT;
	-moz-animation-name: rotateinLT;
	-ms-animation-name: rotateinLT;
	animation-name: rotateinLT
}

.a-rotateinLB {
	-webkit-animation-name: rotateinLB;
	-moz-animation-name: rotateinLB;
	-ms-animation-name: rotateinLB;
	animation-name: rotateinLB
}

.a-rotateinRT {
	-webkit-animation-name: rotateinRT;
	-moz-animation-name: rotateinRT;
	-ms-animation-name: rotateinRT;
	animation-name: rotateinRT
}

.a-rotateinRB {
	-webkit-animation-name: rotateinRB;
	-moz-animation-name: rotateinRB;
	-ms-animation-name: rotateinRB;
	animation-name: rotateinRB
}

.a-rotateout {
	-webkit-animation-name: rotateout;
	-moz-animation-name: rotateout;
	-ms-animation-name: rotateout;
	animation-name: rotateout
}

.a-rotateoutLT {
	-webkit-animation-name: rotateoutLT;
	-moz-animation-name: rotateoutLT;
	-ms-animation-name: rotateoutLT;
	animation-name: rotateoutLT
}

.a-rotateoutLB {
	-webkit-animation-name: rotateoutLB;
	-moz-animation-name: rotateoutLB;
	-ms-animation-name: rotateoutLB;
	animation-name: rotateoutLB
}

.a-rotateoutRT {
	-webkit-animation-name: rotateoutRT;
	-moz-animation-name: rotateoutRT;
	-ms-animation-name: rotateoutRT;
	animation-name: rotateoutRT
}

.a-rotateoutRB {
	-webkit-animation-name: rotateoutRB;
	-moz-animation-name: rotateoutRB;
	-ms-animation-name: rotateoutRB;
	animation-name: rotateoutRB
}

.a-flip {
	-webkit-animation-name: flip;
	-moz-animation-name: flip;
	-ms-animation-name: flip;
	animation-name: flip
}

.a-flipinX {
	-webkit-animation-name: flipinX;
	-moz-animation-name: flipinX;
	-ms-animation-name: flipinX;
	animation-name: flipinX
}

.a-flipin,
.a-flipinY {
	-webkit-animation-name: flipinY;
	-moz-animation-name: flipinY;
	-ms-animation-name: flipinY;
	animation-name: flipinY
}

.a-flipoutX {
	-webkit-animation-name: flipoutX;
	-moz-animation-name: flipoutX;
	-ms-animation-name: flipoutX;
	animation-name: flipoutX
}

.a-flipout,
.a-flipoutY {
	-webkit-animation-name: flipoutY;
	-moz-animation-name: flipoutY;
	-ms-animation-name: flipoutY;
	animation-name: flipoutY
}

.a-flash {
	-webkit-animation-name: flash;
	-moz-animation-name: flash;
	-ms-animation-name: flash;
	animation-name: flash
}

.a-shake {
	-webkit-animation-name: shake;
	-moz-animation-name: shake;
	-ms-animation-name: shake;
	animation-name: shake
}

.a-swing {
	-webkit-animation-name: swing;
	-moz-animation-name: swing;
	-ms-animation-name: swing;
	animation-name: swing
}

.a-wobble {
	-webkit-animation-name: wobble;
	-moz-animation-name: wobble;
	-ms-animation-name: wobble;
	animation-name: wobble
}

.a-ring {
	-webkit-animation-name: ring;
	-moz-animation-name: ring;
	-ms-animation-name: ring;
	animation-name: ring
}

@-webkit-keyframes fadein {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-moz-keyframes fadein {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-ms-keyframes fadein {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@keyframes fadein {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-webkit-keyframes fadeinT {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-100px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0)
	}
}

@-moz-keyframes fadeinT {
	0% {
		opacity: 0;
		-moz-transform: translateY(-100px)
	}

	100% {
		opacity: 1;
		-moz-transform: translateY(0)
	}
}

@-ms-keyframes fadeinT {
	0% {
		opacity: 0;
		-ms-transform: translateY(-100px)
	}

	100% {
		opacity: 1;
		-ms-transform: translateY(0)
	}
}

@keyframes fadeinT {
	0% {
		opacity: 0;
		transform: translateY(-100px)
	}

	100% {
		opacity: 1;
		transform: translateY(0)
	}
}

@-webkit-keyframes fadeinR {
	0% {
		opacity: 0;
		-webkit-transform: translateX(100px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0)
	}
}

@-moz-keyframes fadeinR {
	0% {
		opacity: 0;
		-moz-transform: translateX(100px)
	}

	100% {
		opacity: 1;
		-moz-transform: translateX(0)
	}
}

@-ms-keyframes fadeinR {
	0% {
		opacity: 0;
		-ms-transform: translateX(100px)
	}

	100% {
		opacity: 1;
		-ms-transform: translateX(0)
	}
}

@keyframes fadeinR {
	0% {
		opacity: 0;
		transform: translateX(100px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

@-webkit-keyframes fadeinB {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0)
	}
}

@-moz-keyframes fadeinB {
	0% {
		opacity: 0;
		-moz-transform: translateY(100px)
	}

	100% {
		opacity: 1;
		-moz-transform: translateY(0)
	}
}

@-ms-keyframes fadeinB {
	0% {
		opacity: 0;
		-ms-transform: translateY(100px)
	}

	100% {
		opacity: 1;
		-ms-transform: translateY(0)
	}
}

@keyframes fadeinB {
	0% {
		opacity: 0;
		transform: translateY(100px)
	}

	100% {
		opacity: 1;
		transform: translateY(0)
	}
}

@-webkit-keyframes fadeinL {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0)
	}
}

@-moz-keyframes fadeinL {
	0% {
		opacity: 0;
		-moz-transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		-moz-transform: translateX(0)
	}
}

@-ms-keyframes fadeinL {
	0% {
		opacity: 0;
		-ms-transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		-ms-transform: translateX(0)
	}
}

@keyframes fadeinL {
	0% {
		opacity: 0;
		transform: translateX(-100px)
	}

	100% {
		opacity: 1;
		transform: translateX(0)
	}
}

@-webkit-keyframes fadeout {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@-moz-keyframes fadeout {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@-ms-keyframes fadeout {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@keyframes fadeout {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@-webkit-keyframes fadeoutT {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(-100px)
	}
}

@-moz-keyframes fadeoutT {
	0% {
		opacity: 1;
		-moz-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-moz-transform: translateY(-100px)
	}
}

@-ms-keyframes fadeoutT {
	0% {
		opacity: 1;
		-ms-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-ms-transform: translateY(-100px)
	}
}

@keyframes fadeoutT {
	0% {
		opacity: 1;
		transform: translateY(0)
	}

	100% {
		opacity: 0;
		transform: translateY(-100px)
	}
}

@-webkit-keyframes fadeoutR {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateX(100px)
	}
}

@-moz-keyframes fadeoutR {
	0% {
		opacity: 1;
		-moz-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-moz-transform: translateX(100px)
	}
}

@-ms-keyframes fadeoutR {
	0% {
		opacity: 1;
		-ms-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-ms-transform: translateX(100px)
	}
}

@keyframes fadeoutR {
	0% {
		opacity: 1;
		transform: translateX(0)
	}

	100% {
		opacity: 0;
		transform: translateX(100px)
	}
}

@-webkit-keyframes fadeoutB {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(100px)
	}
}

@-moz-keyframes fadeoutB {
	0% {
		opacity: 1;
		-moz-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-moz-transform: translateY(100px)
	}
}

@-ms-keyframes fadeoutB {
	0% {
		opacity: 1;
		-ms-transform: translateY(0)
	}

	100% {
		opacity: 0;
		-ms-transform: translateY(100px)
	}
}

@keyframes fadeoutB {
	0% {
		opacity: 1;
		transform: translateY(0)
	}

	100% {
		opacity: 0;
		transform: translateY(100px)
	}
}

@-webkit-keyframes fadeoutL {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateX(-100px)
	}
}

@-moz-keyframes fadeoutL {
	0% {
		opacity: 1;
		-moz-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-moz-transform: translateX(-100px)
	}
}

@-ms-keyframes fadeoutL {
	0% {
		opacity: 1;
		-ms-transform: translateX(0)
	}

	100% {
		opacity: 0;
		-ms-transform: translateX(-100px)
	}
}

@keyframes fadeoutL {
	0% {
		opacity: 1;
		transform: translateX(0)
	}

	100% {
		opacity: 0;
		transform: translateX(-100px)
	}
}

@-webkit-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-webkit-transform: translateY(0)
	}

	40% {
		-webkit-transform: translateY(-30px)
	}

	60% {
		-webkit-transform: translateY(-15px)
	}
}

@-moz-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-moz-transform: translateY(0)
	}

	40% {
		-moz-transform: translateY(-30px)
	}

	60% {
		-moz-transform: translateY(-15px)
	}
}

@-ms-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-ms-transform: translateY(0)
	}

	40% {
		-ms-transform: translateY(-30px)
	}

	60% {
		-ms-transform: translateY(-15px)
	}
}

@keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		transform: translateY(0)
	}

	40% {
		transform: translateY(-30px)
	}

	60% {
		transform: translateY(-15px)
	}
}

@-webkit-keyframes bouncein {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.3)
	}

	50% {
		opacity: 1;
		-webkit-transform: scale(1.05)
	}

	70% {
		-webkit-transform: scale(0.9)
	}

	100% {
		-webkit-transform: scale(1)
	}
}

@-moz-keyframes bouncein {
	0% {
		opacity: 0;
		-moz-transform: scale(0.3)
	}

	50% {
		opacity: 1;
		-moz-transform: scale(1.05)
	}

	70% {
		-moz-transform: scale(0.9)
	}

	100% {
		-moz-transform: scale(1)
	}
}

@-ms-keyframes bouncein {
	0% {
		opacity: 0;
		-ms-transform: scale(0.3)
	}

	50% {
		opacity: 1;
		-ms-transform: scale(1.05)
	}

	70% {
		-ms-transform: scale(0.9)
	}

	100% {
		-ms-transform: scale(1)
	}
}

@keyframes bouncein {
	0% {
		opacity: 0;
		transform: scale(0.3)
	}

	50% {
		opacity: 1;
		transform: scale(1.05)
	}

	70% {
		transform: scale(0.9)
	}

	100% {
		transform: scale(1)
	}
}

@-webkit-keyframes bounceinT {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-100px)
	}

	60% {
		opacity: 1;
		-webkit-transform: translateY(30px)
	}

	80% {
		-webkit-transform: translateY(-10px)
	}

	100% {
		-webkit-transform: translateY(0)
	}
}

@-moz-keyframes bounceinT {
	0% {
		opacity: 0;
		-moz-transform: translateY(-100px)
	}

	60% {
		opacity: 1;
		-moz-transform: translateY(30px)
	}

	80% {
		-moz-transform: translateY(-10px)
	}

	100% {
		-moz-transform: translateY(0)
	}
}

@-ms-keyframes bounceinT {
	0% {
		opacity: 0;
		-ms-transform: translateY(-100px)
	}

	60% {
		opacity: 1;
		-ms-transform: translateY(30px)
	}

	80% {
		-ms-transform: translateY(-10px)
	}

	100% {
		-ms-transform: translateY(0)
	}
}

@keyframes bounceinT {
	0% {
		opacity: 0;
		transform: translateY(-100px)
	}

	60% {
		opacity: 1;
		transform: translateY(30px)
	}

	80% {
		transform: translateY(-10px)
	}

	100% {
		transform: translateY(0)
	}
}

@-webkit-keyframes bounceinR {
	0% {
		opacity: 0;
		-webkit-transform: translateX(100px)
	}

	60% {
		opacity: 1;
		-webkit-transform: translateX(-30px)
	}

	80% {
		-webkit-transform: translateX(10px)
	}

	100% {
		-webkit-transform: translateX(0)
	}
}

@-moz-keyframes bounceinR {
	0% {
		opacity: 0;
		-moz-transform: translateX(100px)
	}

	60% {
		opacity: 1;
		-moz-transform: translateX(-30px)
	}

	80% {
		-moz-transform: translateX(10px)
	}

	100% {
		-moz-transform: translateX(0)
	}
}

@-ms-keyframes bounceinR {
	0% {
		opacity: 0;
		-ms-transform: translateX(100px)
	}

	60% {
		opacity: 1;
		-ms-transform: translateX(-30px)
	}

	80% {
		-ms-transform: translateX(10px)
	}

	100% {
		-ms-transform: translateX(0)
	}
}

@keyframes bounceinR {
	0% {
		opacity: 0;
		transform: translateX(100px)
	}

	60% {
		opacity: 1;
		transform: translateX(-30px)
	}

	80% {
		transform: translateX(10px)
	}

	100% {
		transform: translateX(0)
	}
}

@-webkit-keyframes bounceinB {
	0% {
		opacity: 0;
		-webkit-transform: translateY(100px)
	}

	60% {
		opacity: 1;
		-webkit-transform: translateY(-30px)
	}

	80% {
		-webkit-transform: translateY(10px)
	}

	100% {
		-webkit-transform: translateY(0)
	}
}

@-moz-keyframes bounceinB {
	0% {
		opacity: 0;
		-moz-transform: translateY(100px)
	}

	60% {
		opacity: 1;
		-moz-transform: translateY(-30px)
	}

	80% {
		-moz-transform: translateY(10px)
	}

	100% {
		-moz-transform: translateY(0)
	}
}

@-ms-keyframes bounceinB {
	0% {
		opacity: 0;
		-ms-transform: translateY(100px)
	}

	60% {
		opacity: 1;
		-ms-transform: translateY(-30px)
	}

	80% {
		-ms-transform: translateY(10px)
	}

	100% {
		-ms-transform: translateY(0)
	}
}

@keyframes bounceinB {
	0% {
		opacity: 0;
		transform: translateY(100px)
	}

	60% {
		opacity: 1;
		transform: translateY(-30px)
	}

	80% {
		transform: translateY(10px)
	}

	100% {
		transform: translateY(0)
	}
}

@-webkit-keyframes bounceinL {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-100px)
	}

	60% {
		opacity: 1;
		-webkit-transform: translateX(30px)
	}

	80% {
		-webkit-transform: translateX(-10px)
	}

	100% {
		-webkit-transform: translateX(0)
	}
}

@-moz-keyframes bounceinL {
	0% {
		opacity: 0;
		-moz-transform: translateX(-100px)
	}

	60% {
		opacity: 1;
		-moz-transform: translateX(30px)
	}

	80% {
		-moz-transform: translateX(-10px)
	}

	100% {
		-moz-transform: translateX(0)
	}
}

@-ms-keyframes bounceinL {
	0% {
		opacity: 0;
		-ms-transform: translateX(-100px)
	}

	60% {
		opacity: 1;
		-ms-transform: translateX(30px)
	}

	80% {
		-ms-transform: translateX(-10px)
	}

	100% {
		-ms-transform: translateX(0)
	}
}

@keyframes bounceinL {
	0% {
		opacity: 0;
		transform: translateX(-100px)
	}

	60% {
		opacity: 1;
		transform: translateX(30px)
	}

	80% {
		transform: translateX(-10px)
	}

	100% {
		transform: translateX(0)
	}
}

@-webkit-keyframes bounceout {
	0% {
		-webkit-transform: scale(1)
	}

	25% {
		-webkit-transform: scale(0.95)
	}

	50% {
		opacity: 1;
		-webkit-transform: scale(1.1)
	}

	100% {
		opacity: 0;
		-webkit-transform: scale(0.3)
	}
}

@-moz-keyframes bounceout {
	0% {
		-moz-transform: scale(1)
	}

	25% {
		-moz-transform: scale(0.95)
	}

	50% {
		opacity: 1;
		-moz-transform: scale(1.1)
	}

	100% {
		opacity: 0;
		-moz-transform: scale(0.3)
	}
}

@-ms-keyframes bounceout {
	0% {
		-ms-transform: scale(1)
	}

	25% {
		-ms-transform: scale(0.95)
	}

	50% {
		opacity: 1;
		-ms-transform: scale(1.1)
	}

	100% {
		opacity: 0;
		-ms-transform: scale(0.3)
	}
}

@keyframes bounceout {
	0% {
		transform: scale(1)
	}

	25% {
		transform: scale(0.95)
	}

	50% {
		opacity: 1;
		transform: scale(1.1)
	}

	100% {
		opacity: 0;
		transform: scale(0.3)
	}
}

@-webkit-keyframes bounceoutT {
	0% {
		-webkit-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-webkit-transform: translateY(20px)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(-100px)
	}
}

@-moz-keyframes bounceoutT {
	0% {
		-moz-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-moz-transform: translateY(20px)
	}

	100% {
		opacity: 0;
		-moz-transform: translateY(-100px)
	}
}

@-ms-keyframes bounceoutT {
	0% {
		-ms-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-ms-transform: translateY(20px)
	}

	100% {
		opacity: 0;
		-ms-transform: translateY(-100px)
	}
}

@keyframes bounceoutT {
	0% {
		transform: translateY(0)
	}

	20% {
		opacity: 1;
		transform: translateY(20px)
	}

	100% {
		opacity: 0;
		transform: translateY(-100px)
	}
}

@-webkit-keyframes bounceoutR {
	0% {
		-webkit-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-webkit-transform: translateX(-20px)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateX(100px)
	}
}

@-moz-keyframes bounceoutR {
	0% {
		-moz-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-moz-transform: translateX(-20px)
	}

	100% {
		opacity: 0;
		-moz-transform: translateX(100px)
	}
}

@-ms-keyframes bounceoutR {
	0% {
		-ms-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-ms-transform: translateX(-20px)
	}

	100% {
		opacity: 0;
		-ms-transform: translateX(100px)
	}
}

@keyframes bounceoutR {
	0% {
		transform: translateX(0)
	}

	20% {
		opacity: 1;
		transform: translateX(-20px)
	}

	100% {
		opacity: 0;
		transform: translateX(100px)
	}
}

@-webkit-keyframes bounceoutB {
	0% {
		-webkit-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-webkit-transform: translateY(-20px)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(100px)
	}
}

@-moz-keyframes bounceoutB {
	0% {
		-moz-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-moz-transform: translateY(-20px)
	}

	100% {
		opacity: 0;
		-moz-transform: translateY(100px)
	}
}

@-ms-keyframes bounceoutB {
	0% {
		-ms-transform: translateY(0)
	}

	20% {
		opacity: 1;
		-ms-transform: translateY(-20px)
	}

	100% {
		opacity: 0;
		-ms-transform: translateY(100px)
	}
}

@keyframes bounceoutB {
	0% {
		transform: translateY(0)
	}

	20% {
		opacity: 1;
		transform: translateY(-20px)
	}

	100% {
		opacity: 0;
		transform: translateY(100px)
	}
}

@-webkit-keyframes bounceoutL {
	0% {
		-webkit-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-webkit-transform: translateX(20px)
	}

	100% {
		opacity: 0;
		-webkit-transform: translateX(-100px)
	}
}

@-moz-keyframes bounceoutL {
	0% {
		-moz-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-moz-transform: translateX(20px)
	}

	100% {
		opacity: 0;
		-moz-transform: translateX(-100px)
	}
}

@-ms-keyframes bounceoutL {
	0% {
		-ms-transform: translateX(0)
	}

	20% {
		opacity: 1;
		-ms-transform: translateX(20px)
	}

	100% {
		opacity: 0;
		-ms-transform: translateX(-100px)
	}
}

@keyframes bounceoutL {
	0% {
		transform: translateX(0)
	}

	20% {
		opacity: 1;
		transform: translateX(20px)
	}

	100% {
		opacity: 0;
		transform: translateX(-200px)
	}
}

@-webkit-keyframes rotatein {
	0% {
		opacity: 0;
		-webkit-transform: rotate(-200deg)
	}

	100% {
		opacity: 1;
		-webkit-transform: rotate(0)
	}
}

@-moz-keyframes rotatein {
	0% {
		opacity: 0;
		-moz-transform: rotate(-200deg)
	}

	100% {
		opacity: 1;
		-moz-transform: rotate(0)
	}
}

@-ms-keyframes rotatein {
	0% {
		opacity: 0;
		-ms-transform: rotate(-200deg)
	}

	100% {
		opacity: 1;
		-ms-transform: rotate(0)
	}
}

@keyframes rotatein {
	0% {
		opacity: 0;
		transform: rotate(-200deg)
	}

	100% {
		opacity: 1;
		transform: rotate(0)
	}
}

@-webkit-keyframes rotateinLT {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}
}

@-moz-keyframes rotateinLT {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}
}

@-ms-keyframes rotateinLT {
	0% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}
}

@keyframes rotateinLT {
	0% {
		transform-origin: left bottom;
		transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1
	}
}

@-webkit-keyframes rotateineftB {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}
}

@-moz-keyframes rotateineftB {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}
}

@-ms-keyframes rotateineftB {
	0% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}
}

@keyframes rotateineftB {
	0% {
		transform-origin: left bottom;
		transform: rotate(90deg);
		opacity: 0
	}

	100% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1
	}
}

@-webkit-keyframes rotateinRT {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}
}

@-moz-keyframes rotateinRT {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}
}

@-ms-keyframes rotateinRT {
	0% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(90deg);
		opacity: 0
	}

	100% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}
}

@keyframes rotateinRT {
	0% {
		transform-origin: right bottom;
		transform: rotate(90deg);
		opacity: 0
	}

	100% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1
	}
}

@-webkit-keyframes rotateinRB {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}
}

@-moz-keyframes rotateinRB {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}
}

@-ms-keyframes rotateinRB {
	0% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}
}

@keyframes rotateinRB {
	0% {
		transform-origin: right bottom;
		transform: rotate(-90deg);
		opacity: 0
	}

	100% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1
	}
}

@-webkit-keyframes rotateout {
	0% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(0);
		opacity: 1
	}

	100% {
		-webkit-transform-origin: center center;
		-webkit-transform: rotate(200deg);
		opacity: 0
	}
}

@-moz-keyframes rotateout {
	0% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(0);
		opacity: 1
	}

	100% {
		-moz-transform-origin: center center;
		-moz-transform: rotate(200deg);
		opacity: 0
	}
}

@-ms-keyframes rotateout {
	0% {
		-ms-transform-origin: center center;
		-ms-transform: rotate(0);
		opacity: 1
	}

	100% {
		-ms-transform-origin: center center;
		-ms-transform: rotate(200deg);
		opacity: 0
	}
}

@keyframes rotateout {
	0% {
		transform-origin: center center;
		transform: rotate(0);
		opacity: 1
	}

	100% {
		transform-origin: center center;
		transform: rotate(200deg);
		opacity: 0
	}
}

@-webkit-keyframes rotateoutLT {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}

	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0
	}
}

@-moz-keyframes rotateoutLT {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}

	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0
	}
}

@-ms-keyframes rotateoutLT {
	0% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}

	100% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(-90deg);
		opacity: 0
	}
}

@keyframes rotateoutLT {
	0% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1
	}

	100% {
		transform-origin: left bottom;
		transform: rotate(-90deg);
		opacity: 0
	}
}

@-webkit-keyframes rotateoutLB {
	0% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}

	100% {
		-webkit-transform-origin: left bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0
	}
}

@-moz-keyframes rotateoutLB {
	0% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}

	100% {
		-moz-transform-origin: left bottom;
		-moz-transform: rotate(90deg);
		opacity: 0
	}
}

@-ms-keyframes rotateoutLB {
	0% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}

	100% {
		-ms-transform-origin: left bottom;
		-ms-transform: rotate(90deg);
		opacity: 0
	}
}

@keyframes rotateoutLB {
	0% {
		transform-origin: left bottom;
		transform: rotate(0);
		opacity: 1
	}

	100% {
		transform-origin: left bottom;
		transform: rotate(90deg);
		opacity: 0
	}
}

@-webkit-keyframes rotateoutRT {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}

	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(90deg);
		opacity: 0
	}
}

@-moz-keyframes rotateoutRT {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}

	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(90deg);
		opacity: 0
	}
}

@-ms-keyframes rotateoutRT {
	0% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}

	100% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(90deg);
		opacity: 0
	}
}

@keyframes rotateoutRT {
	0% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1
	}

	100% {
		transform-origin: right bottom;
		transform: rotate(90deg);
		opacity: 0
	}
}

@-webkit-keyframes rotateoutBR {
	0% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(0);
		opacity: 1
	}

	100% {
		-webkit-transform-origin: right bottom;
		-webkit-transform: rotate(-90deg);
		opacity: 0
	}
}

@-moz-keyframes rotateoutBR {
	0% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(0);
		opacity: 1
	}

	100% {
		-moz-transform-origin: right bottom;
		-moz-transform: rotate(-90deg);
		opacity: 0
	}
}

@-ms-keyframes rotateoutBR {
	0% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(0);
		opacity: 1
	}

	100% {
		-ms-transform-origin: right bottom;
		-ms-transform: rotate(-90deg);
		opacity: 0
	}
}

@keyframes rotateoutBR {
	0% {
		transform-origin: right bottom;
		transform: rotate(0);
		opacity: 1
	}

	100% {
		transform-origin: right bottom;
		transform: rotate(-90deg);
		opacity: 0
	}
}

@-webkit-keyframes flip {
	0% {
		-webkit-transform: perspective(400px) rotateY(0);
		-webkit-animation-timing-function: ease-out
	}

	40% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-webkit-animation-timing-function: ease-out
	}

	50% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-webkit-animation-timing-function: ease-in
	}

	80% {
		-webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
		-webkit-animation-timing-function: ease-in
	}

	100% {
		-webkit-transform: perspective(400px) scale(1);
		-webkit-animation-timing-function: ease-in
	}
}

@-moz-keyframes flip {
	0% {
		-moz-transform: perspective(400px) rotateY(0);
		-moz-animation-timing-function: ease-out
	}

	40% {
		-moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-moz-animation-timing-function: ease-out
	}

	50% {
		-moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-moz-animation-timing-function: ease-in
	}

	80% {
		-moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
		-moz-animation-timing-function: ease-in
	}

	100% {
		-moz-transform: perspective(400px) scale(1);
		-moz-animation-timing-function: ease-in
	}
}

@-ms-keyframes flip {
	0% {
		-ms-transform: perspective(400px) rotateY(0);
		-ms-animation-timing-function: ease-out
	}

	40% {
		-ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
		-ms-animation-timing-function: ease-out
	}

	50% {
		-ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-ms-animation-timing-function: ease-in
	}

	80% {
		-ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
		-ms-animation-timing-function: ease-in
	}

	100% {
		-ms-transform: perspective(400px) scale(1);
		-ms-animation-timing-function: ease-in
	}
}

@keyframes flip {
	0% {
		transform: perspective(400px) rotateY(0);
		animation-timing-function: ease-out
	}

	40% {
		transform: perspective(400px) translateZ(150px) rotateY(170deg);
		animation-timing-function: ease-out
	}

	50% {
		transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		animation-timing-function: ease-in
	}

	80% {
		transform: perspective(400px) rotateY(360deg) scale(0.95);
		animation-timing-function: ease-in
	}

	100% {
		transform: perspective(400px) scale(1);
		animation-timing-function: ease-in
	}
}

@-webkit-keyframes flipinX {
	0% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}

	40% {
		-webkit-transform: perspective(400px) rotateX(-10deg)
	}

	70% {
		-webkit-transform: perspective(400px) rotateX(10deg)
	}

	100% {
		-webkit-transform: perspective(400px) rotateX(0);
		opacity: 1
	}
}

@-moz-keyframes flipinX {
	0% {
		-moz-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}

	40% {
		-moz-transform: perspective(400px) rotateX(-10deg)
	}

	70% {
		-moz-transform: perspective(400px) rotateX(10deg)
	}

	100% {
		-moz-transform: perspective(400px) rotateX(0);
		opacity: 1
	}
}

@-ms-keyframes flipinX {
	0% {
		-ms-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}

	40% {
		-ms-transform: perspective(400px) rotateX(-10deg)
	}

	70% {
		-ms-transform: perspective(400px) rotateX(10deg)
	}

	100% {
		-ms-transform: perspective(400px) rotateX(0);
		opacity: 1
	}
}

@keyframes flipinX {
	0% {
		transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}

	40% {
		transform: perspective(400px) rotateX(-10deg)
	}

	70% {
		transform: perspective(400px) rotateX(10deg)
	}

	100% {
		transform: perspective(400px) rotateX(0);
		opacity: 1
	}
}

@-webkit-keyframes flipinY {
	0% {
		-webkit-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}

	40% {
		-webkit-transform: perspective(400px) rotateY(-10deg)
	}

	70% {
		-webkit-transform: perspective(400px) rotateY(10deg)
	}

	100% {
		-webkit-transform: perspective(400px) rotateY(0);
		opacity: 1
	}
}

@-moz-keyframes flipinY {
	0% {
		-moz-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}

	40% {
		-moz-transform: perspective(400px) rotateY(-10deg)
	}

	70% {
		-moz-transform: perspective(400px) rotateY(10deg)
	}

	100% {
		-moz-transform: perspective(400px) rotateY(0);
		opacity: 1
	}
}

@-ms-keyframes flipinY {
	0% {
		-ms-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}

	40% {
		-ms-transform: perspective(400px) rotateY(-10deg)
	}

	70% {
		-ms-transform: perspective(400px) rotateY(10deg)
	}

	100% {
		-ms-transform: perspective(400px) rotateY(0);
		opacity: 1
	}
}

@keyframes flipinY {
	0% {
		transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}

	40% {
		transform: perspective(400px) rotateY(-10deg)
	}

	70% {
		transform: perspective(400px) rotateY(10deg)
	}

	100% {
		transform: perspective(400px) rotateY(0);
		opacity: 1
	}
}

@-webkit-keyframes flipoutX {
	0% {
		-webkit-transform: perspective(400px) rotateX(0);
		opacity: 1
	}

	100% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}
}

@-moz-keyframes flipoutX {
	0% {
		-moz-transform: perspective(400px) rotateX(0);
		opacity: 1
	}

	100% {
		-moz-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}
}

@-ms-keyframes flipoutX {
	0% {
		-ms-transform: perspective(400px) rotateX(0);
		opacity: 1
	}

	100% {
		-ms-transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}
}

@keyframes flipoutX {
	0% {
		transform: perspective(400px) rotateX(0);
		opacity: 1
	}

	100% {
		transform: perspective(400px) rotateX(90deg);
		opacity: 0
	}
}

@-webkit-keyframes flipoutY {
	0% {
		-webkit-transform: perspective(400px) rotateY(0);
		opacity: 1
	}

	100% {
		-webkit-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}
}

@-moz-keyframes flipoutY {
	0% {
		-moz-transform: perspective(400px) rotateY(0);
		opacity: 1
	}

	100% {
		-moz-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}
}

@-ms-keyframes flipoutY {
	0% {
		-ms-transform: perspective(400px) rotateY(0);
		opacity: 1
	}

	100% {
		-ms-transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}
}

@keyframes flipoutY {
	0% {
		transform: perspective(400px) rotateY(0);
		opacity: 1
	}

	100% {
		transform: perspective(400px) rotateY(90deg);
		opacity: 0
	}
}

@-webkit-keyframes flash {

	0%,
	50%,
	100% {
		opacity: 1
	}

	25%,
	75% {
		opacity: 0
	}
}

@-moz-keyframes flash {

	0%,
	50%,
	100% {
		opacity: 1
	}

	25%,
	75% {
		opacity: 0
	}
}

@-ms-keyframes flash {

	0%,
	50%,
	100% {
		opacity: 1
	}

	25%,
	75% {
		opacity: 0
	}
}

@keyframes flash {

	0%,
	50%,
	100% {
		opacity: 1
	}

	25%,
	75% {
		opacity: 0
	}
}

@-webkit-keyframes shake {

	0%,
	100% {
		-webkit-transform: translateX(0)
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		-webkit-transform: translateX(-10px)
	}

	20%,
	40%,
	60%,
	80% {
		-webkit-transform: translateX(10px)
	}
}

@-moz-keyframes shake {

	0%,
	100% {
		-moz-transform: translateX(0)
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		-moz-transform: translateX(-10px)
	}

	20%,
	40%,
	60%,
	80% {
		-moz-transform: translateX(10px)
	}
}

@-ms-keyframes shake {

	0%,
	100% {
		-ms-transform: translateX(0)
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		-ms-transform: translateX(-10px)
	}

	20%,
	40%,
	60%,
	80% {
		-ms-transform: translateX(10px)
	}
}

@keyframes shake {

	0%,
	100% {
		transform: translateX(0)
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		transform: translateX(-10px)
	}

	20%,
	40%,
	60%,
	80% {
		transform: translateX(10px)
	}
}

@-webkit-keyframes swing {
	20% {
		-webkit-transform: rotate(15deg)
	}

	40% {
		-webkit-transform: rotate(-10deg)
	}

	60% {
		-webkit-transform: rotate(5deg)
	}

	80% {
		-webkit-transform: rotate(-5deg)
	}

	100% {
		-webkit-transform: rotate(0)
	}
}

@-moz-keyframes swing {
	20% {
		-moz-transform: rotate(15deg)
	}

	40% {
		-moz-transform: rotate(-10deg)
	}

	60% {
		-moz-transform: rotate(5deg)
	}

	80% {
		-moz-transform: rotate(-5deg)
	}

	100% {
		-moz-transform: rotate(0)
	}
}

@-ms-keyframes swing {
	20% {
		-ms-transform: rotate(15deg)
	}

	40% {
		-ms-transform: rotate(-10deg)
	}

	60% {
		-ms-transform: rotate(5deg)
	}

	80% {
		-ms-transform: rotate(-5deg)
	}

	100% {
		-ms-transform: rotate(0)
	}
}

@keyframes swing {
	20% {
		transform: rotate(15deg)
	}

	40% {
		transform: rotate(-10deg)
	}

	60% {
		transform: rotate(5deg)
	}

	80% {
		transform: rotate(-5deg)
	}

	100% {
		transform: rotate(0)
	}
}

@-webkit-keyframes wobble {
	0% {
		-webkit-transform: translateX(0)
	}

	15% {
		-webkit-transform: translateX(-100px) rotate(-5deg)
	}

	30% {
		-webkit-transform: translateX(80px) rotate(3deg)
	}

	45% {
		-webkit-transform: translateX(-65px) rotate(-3deg)
	}

	60% {
		-webkit-transform: translateX(40px) rotate(2deg)
	}

	75% {
		-webkit-transform: translateX(-20px) rotate(-1deg)
	}

	100% {
		-webkit-transform: translateX(0)
	}
}

@-moz-keyframes wobble {
	0% {
		-moz-transform: translateX(0)
	}

	15% {
		-moz-transform: translateX(-100px) rotate(-5deg)
	}

	30% {
		-moz-transform: translateX(80px) rotate(3deg)
	}

	45% {
		-moz-transform: translateX(-65px) rotate(-3deg)
	}

	60% {
		-moz-transform: translateX(40px) rotate(2deg)
	}

	75% {
		-moz-transform: translateX(-20px) rotate(-1deg)
	}

	100% {
		-moz-transform: translateX(0)
	}
}

@-ms-keyframes wobble {
	0% {
		-ms-transform: translateX(0)
	}

	15% {
		-ms-transform: translateX(-100px) rotate(-5deg)
	}

	30% {
		-ms-transform: translateX(80px) rotate(3deg)
	}

	45% {
		-ms-transform: translateX(-65px) rotate(-3deg)
	}

	60% {
		-ms-transform: translateX(40px) rotate(2deg)
	}

	75% {
		-ms-transform: translateX(-20px) rotate(-1deg)
	}

	100% {
		-ms-transform: translateX(0)
	}
}

@keyframes wobble {
	0% {
		transform: translateX(0)
	}

	15% {
		transform: translateX(-100px) rotate(-5deg)
	}

	30% {
		transform: translateX(80px) rotate(3deg)
	}

	45% {
		transform: translateX(-65px) rotate(-3deg)
	}

	60% {
		transform: translateX(40px) rotate(2deg)
	}

	75% {
		transform: translateX(-20px) rotate(-1deg)
	}

	100% {
		transform: translateX(0)
	}
}

@-webkit-keyframes ring {
	0% {
		-webkit-transform: scale(1)
	}

	10%,
	20% {
		-webkit-transform: scale(0.9) rotate(-3deg)
	}

	30%,
	50%,
	70%,
	90% {
		-webkit-transform: scale(1.1) rotate(3deg)
	}

	40%,
	60%,
	80% {
		-webkit-transform: scale(1.1) rotate(-3deg)
	}

	100% {
		-webkit-transform: scale(1) rotate(0)
	}
}

@-moz-keyframes ring {
	0% {
		-moz-transform: scale(1)
	}

	10%,
	20% {
		-moz-transform: scale(0.9) rotate(-3deg)
	}

	30%,
	50%,
	70%,
	90% {
		-moz-transform: scale(1.1) rotate(3deg)
	}

	40%,
	60%,
	80% {
		-moz-transform: scale(1.1) rotate(-3deg)
	}

	100% {
		-moz-transform: scale(1) rotate(0)
	}
}

@-ms-keyframes ring {
	0% {
		-ms-transform: scale(1)
	}

	10%,
	20% {
		-ms-transform: scale(0.9) rotate(-3deg)
	}

	30%,
	50%,
	70%,
	90% {
		-ms-transform: scale(1.1) rotate(3deg)
	}

	40%,
	60%,
	80% {
		-ms-transform: scale(1.1) rotate(-3deg)
	}

	100% {
		-ms-transform: scale(1) rotate(0)
	}
}

@keyframes ring {
	0% {
		transform: scale(1)
	}

	10%,
	20% {
		transform: scale(0.9) rotate(-3deg)
	}

	30%,
	50%,
	70%,
	90% {
		transform: scale(1.1) rotate(3deg)
	}

	40%,
	60%,
	80% {
		transform: scale(1.1) rotate(-3deg)
	}

	100% {
		transform: scale(1) rotate(0)
	}
}

.state-indicator {
	position: absolute;
	top: -999em;
	left: -999em;
	z-index: 1
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	.state-indicator {
		z-index: 2
	}

	.nav .back-home a {
		background-image: url(../images/avatar@2x.jpg)
	}
}

@media only screen and (max-width: 1024px) {
	.works-content {
		margin-top: 140px !important
	}
}

@media only screen and (max-width: 960px) {
	.nav {
		width: 760px
	}

	.section {
		width: 760px
	}
}

@media only screen and (max-width: 800px) {
	.section-about .about-content {
		position: relative
	}

	.section-about .about-content .left {
		float: none;
		margin: 20px 0 0 20px
	}

	.section-about .about-content .right {
		position: absolute;
		right: 10px;
		top: 0
	}

	.section-about .about-content .my-photo {
		width: 250px;
		height: auto
	}

	.works-list {
		width: 630px;
		margin: 0 auto
	}

	.works-content .works-item:nth-child(2n+1) {
		margin-left: 0 !important
	}

	.works-content .works-item:nth-child(2n) {
		margin-left: 30px !important
	}

	.skill-content {
		width: 600px;
		margin: 0 auto
	}

	.contact-content {
		width: 600px;
		margin: 0 auto
	}

	.section-contact .contact-content h1 {
		text-align: center
	}
}
