@charset "UTF-8";

/* * {
	margin: 0;
	padding: 0;
	font-family: monospace;
	transition:all ease-in .3s;
}

html, body {
	width: 100%;
	height: 100vh;
	background-color: #f8f8f8;
}

#container {
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

.panel {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	font-size: 60px;
	text-align: center;
	color: #ededed;
}
.one {
    background-color: #67D5B5;
}

.two {
    background-color: #000;
}


.top {
	height: 500px;
	font-size: 30px;
}*/

@import "//spoqa.github.io/spoqa-han-sans/css/SpoqaHanSans-kr.css";
@import "https://fonts.googleapis.com/css?family=Montserrat:500,700&display=swap";

*,
*::before,
*::after {
	box-sizing: border-box
}

html,
body,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
em,
img,
small,
article,
footer,
header,
nav,
address,
section,
ol,
ul,
li,
strong {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	-webkit-text-size-adjust: none;
	font-style: normal
}

[tabindex="-1"]:focus {
	outline: 0 !important
}

ul,
ol,
li,
dl {
	list-style: none
}

a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none;
	color: inherit
}

a:hover,
a:active {
	outline: 0
}

a:focus {
	opacity: 1;
	outline: 0
}

a,
button {
	font-family: inherit;
	-webkit-tap-highlight-color: rgba(186, 224, 238, .2)
}

button {
	display: block;
	margin: 0;
	padding: 0;
	font-family: spoqa han sans, AppleGothic, sans-serif, Helvetica;
	border: 0;
	-webkit-appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
	background: 0 0;
	cursor: pointer
}

button:focus {
	outline: 0
}

i {
	font-style: normal
}

a,
area,
button,
[role=button],
input:not([type=range]),
label,
select,
summary,
textarea {
	touch-action: manipulation
}

html {
	position: relative;
	width: 100%;
	min-width: 100%;
	min-height: 100%;
	height: 100%;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-ms-overflow-style: scrollbar;
	-webkit-tap-highlight-color: transparent;
	font-size: 62.5%;
	font-weight: 400
}

body {
	position: relative;
	min-height: 100%;
	height: 100%;
	min-width: 360px;
	overflow-y: auto;
	font-family: spoqa han sans, AppleGothic, sans-serif, Helvetica;
	color: #141414;
	text-align: left;
	font-weight: 400;
	line-height: 1.5;
	background-color: #ededed;
	-webkit-font-smoothing: antialiased
}

.wrap {
	position: relative;
	background-color:#1d1d1d;
}

.blind {
	position: absolute;
	overflow: hidden;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px
}

.section-connect {
	z-index: 100;
	display: block;
	width: 100%;
	max-width: 1600px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%)
}

.section-connect.section-connect-1 {
	text-align: right
}

@media screen and (max-width:979px) {

	.section-connect.section-connect-3,
	.section-connect.section-connect-4 {
		text-align: right
	}
}

.section-connect__word {
	position: relative;
	display: inline-block;
	font-weight: 300;
	line-height: 2.1;
	letter-spacing: 4.5px;
	color: #adadad;
	font-size: 30px;
	transform: rotate(90deg)
}

.section-connect-1 .section-connect__word {
	bottom: 70px;
	right: 36px
}

.section-connect-2 .section-connect__word {
	top: 26px;
	left: 50%;
	margin-left: -105px
}

.section-connect-3 .section-connect__word {
	left: 110px;
	bottom: 110px
}

.section-connect-4 .section-connect__word {
	left: 104px;
	bottom: -14px
}

@media screen and (max-width:1279px) {
	.section-connect__word {
		font-size: 28px
	}
}

@media screen and (max-width:979px) {
	.section-connect__word {
		font-size: 24px
	}

	.section-connect-1 .section-connect__word {
		bottom: 30px;
		right: 0
	}

	.section-connect-2 .section-connect__word {
		margin-left: -85px
	}

	.section-connect-3 .section-connect__word {
		left: -58px;
		bottom: 100px
	}

	.section-connect-4 .section-connect__word {
		left: 20px;
		bottom: -10px
	}
}

@media screen and (max-width:639px) {
	.section-connect__word {
		font-size: 20px
	}

	.section-connect-1 .section-connect__word {
		bottom: 30px;
		right: -30px
	}

	.section-connect-2 .section-connect__word {
		top: 24px;
		margin-left: -76px
	}

	.section-connect-4 .section-connect__word {
		left: 10px;
		bottom: 22px
	}
	.pc{display:none;}
}

.br-tablet {
	display: none
}

@media screen and (max-width:979px) {
	.br-tablet {
		display: block
	}
}

.br-mobile {
	display: none
}

@media screen and (max-width:639px) {
	.br-mobile {
		display: block
	}
}

.hide-mobile {
	display: block
}

@media screen and (max-width:639px) {
	.hide-mobile {
		display: none
	}
}

.scroll-disabled {
	height: 100%;
	overflow: hidden
}

.fixed {
	position: fixed !important
}

.ani-swing {
	display: inline-block;
	transform-origin: 50% 50%;
	-webkit-animation: swing 1s infinite;
	animation: swing 1s infinite
}

.icon--write {
	background-image: url(../images/deco-write.webp);
	background-repeat: no-repeat
}

.icon--write.no-webp {
	background-image: url(../images/deco-write.png)
}

.icon--highfive {
	background-image: url(../images/deco-highfive.webp);
	background-repeat: no-repeat
}

.icon--highfive.no-webp {
	background-image: url(../images/deco-highfive.png)
}

.icon--heart {
	background-image: url(../images/deco-heart.webp);
	background-repeat: no-repeat
}

.icon--heart.no-webp {
	background-image: url(../images/deco-heart.png)
}

@-webkit-keyframes scollDown {
	50% {
		transform: translateY(100%)
	}

	100% {
		transform: translateY(200%)
	}
}

@keyframes scollDown {
	50% {
		transform: translateY(100%)
	}

	100% {
		transform: translateY(200%)
	}
}

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

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

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

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

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

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

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

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

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

	20% {
		transform: rotate(13deg)
	}

	24% {
		transform: rotate(-13deg)
	}

	28% {
		transform: rotate(13deg)
	}

	32% {
		transform: rotate(-13deg)
	}

	36% {
		transform: rotate(0deg)
	}
}

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

	20% {
		transform: rotate(13deg)
	}

	24% {
		transform: rotate(-13deg)
	}

	28% {
		transform: rotate(13deg)
	}

	32% {
		transform: rotate(-13deg)
	}

	36% {
		transform: rotate(0deg)
	}
}

@-webkit-keyframes pulsate {
	0% {
		-webkit-animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		transform: scale3d(1.3, 1.3, 1.3)
	}

	50% {
		transform: cale3d(.9, .9, .9)
	}

	100% {
		-webkit-animation-timing-function: cubic-bezier(.895, .03, .685, .22);
		animation-timing-function: cubic-bezier(.895, .03, .685, .22);
		transform: scale3d(1, 1, 1)
	}
}

@keyframes pulsate {
	0% {
		-webkit-animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		transform: scale3d(1.3, 1.3, 1.3)
	}

	50% {
		transform: cale3d(.9, .9, .9)
	}

	100% {
		-webkit-animation-timing-function: cubic-bezier(.895, .03, .685, .22);
		animation-timing-function: cubic-bezier(.895, .03, .685, .22);
		transform: scale3d(1, 1, 1)
	}
}

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

	30% {
		transform: scale(.9)
	}

	40% {
		transform: scale(1.2)
	}

	60% {
		transform: scale(.9)
	}

	70% {
		transform: scale(1.2)
	}

	80% {
		transform: scale(1)
	}
}

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

	30% {
		transform: scale(.9)
	}

	40% {
		transform: scale(1.2)
	}

	60% {
		transform: scale(.9)
	}

	70% {
		transform: scale(1.2)
	}

	80% {
		transform: scale(1)
	}
}

@-webkit-keyframes popIn {
	0% {
		transform: scale3d(0, 0, 0);
		opacity: 0
	}

	20% {
		opacity: 1
	}

	40% {
		-webkit-animation-timing-function: cubic-bezier(.47, 0, .745, .715);
		animation-timing-function: cubic-bezier(.47, 0, .745, .715);
		transform: scale3d(1.08, 1.08, 1.08)
	}

	60% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: scale3d(1, 1, 1)
	}

	80% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: scale3d(1.03, 1.03, 1.03)
	}

	100% {
		-webkit-animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		transform: scale3d(1, 1, 1)
	}
}

@keyframes popIn {
	0% {
		transform: scale3d(0, 0, 0);
		opacity: 0
	}

	20% {
		opacity: 1
	}

	40% {
		-webkit-animation-timing-function: cubic-bezier(.47, 0, .745, .715);
		animation-timing-function: cubic-bezier(.47, 0, .745, .715);
		transform: scale3d(1.08, 1.08, 1.08)
	}

	60% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: scale3d(1, 1, 1)
	}

	80% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: scale3d(1.03, 1.03, 1.03)
	}

	100% {
		-webkit-animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		animation-timing-function: cubic-bezier(.25, .46, .45, .94);
		transform: scale3d(1, 1, 1)
	}
}

@-webkit-keyframes slideInUp {
	from {
		transform: translate3d(0, 100%, 0);
		visibility: visible;
		-webkit-animation-timing-function: cubic-bezier(.455, .03, .515, .955);
		animation-timing-function: cubic-bezier(.455, .03, .515, .955)
	}

	to {
		transform: translate3d(0, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.455, .03, .515, .955);
		animation-timing-function: cubic-bezier(.455, .03, .515, .955)
	}
}

@keyframes slideInUp {
	from {
		transform: translate3d(0, 100%, 0);
		visibility: visible;
		-webkit-animation-timing-function: cubic-bezier(.455, .03, .515, .955);
		animation-timing-function: cubic-bezier(.455, .03, .515, .955)
	}

	to {
		transform: translate3d(0, 0, 0);
		-webkit-animation-timing-function: cubic-bezier(.455, .03, .515, .955);
		animation-timing-function: cubic-bezier(.455, .03, .515, .955)
	}
}

@-webkit-keyframes slideOutDown {
	from {
		transform: translate3d(0, 0, 0)
	}

	to {
		visibility: hidden;
		transform: translate3d(0, 100%, 0)
	}
}

@keyframes slideOutDown {
	from {
		transform: translate3d(0, 0, 0)
	}

	to {
		visibility: hidden;
		transform: translate3d(0, 100%, 0)
	}
}

@-webkit-keyframes fadeInShow {
	0% {
		opacity: 0;
		transform: translateY(100px);
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1)
	}

	100% {
		opacity: 1;
		transform: translateY(0);
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1)
	}
}

@keyframes fadeInShow {
	0% {
		opacity: 0;
		transform: translateY(100px);
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1)
	}

	100% {
		opacity: 1;
		transform: translateY(0);
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1)
	}
}

@-webkit-keyframes ball {
	0% {
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
		transform: translate3d(0, 0, 0)
	}

	12% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		transform: translate3d(0, -18px, 0)
	}

	24% {
		-webkit-animation-timing-function: cubic-bezier(0, 0, .58, 1);
		animation-timing-function: cubic-bezier(0, 0, .58, 1);
		transform: translate3d(0, 0, 0)
	}

	33% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		transform: translate3d(0, -10px, 0)
	}

	42% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: translate3d(0, 0, 0)
	}
}

@keyframes ball {
	0% {
		-webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
		animation-timing-function: cubic-bezier(.175, .885, .32, 1.275);
		transform: translate3d(0, 0, 0)
	}

	12% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		transform: translate3d(0, -18px, 0)
	}

	24% {
		-webkit-animation-timing-function: cubic-bezier(0, 0, .58, 1);
		animation-timing-function: cubic-bezier(0, 0, .58, 1);
		transform: translate3d(0, 0, 0)
	}

	33% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		animation-timing-function: cubic-bezier(.42, 0, 1, 1);
		transform: translate3d(0, -10px, 0)
	}

	42% {
		-webkit-animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		animation-timing-function: cubic-bezier(.42, 0, .58, 1);
		transform: translate3d(0, 0, 0)
	}
}


.btn-line {
	display: block;
	min-width: 190px;
	padding: 16px 20px;
	color: #ededed;
	border-radius: 4px;
	border: solid 1px #ededed;
	cursor: pointer
}

.btn-line .btn-text {
	display: inline-block;
	font-size: 17px;
	font-weight: 700;
	color:#ededed;
}

.btn-line:after {
	display: inline-block;
	content: "";
	min-width: 70px;
	height: 1px;
	vertical-align: middle;
	margin-top: -6px;
	margin-left: 11px;
	background-color: #333
}

.btn-line:hover,
.btn-line:focus {
	color: #99651D;
	border-color: #99651D
}

@media screen and (max-width:979px) {
	.btn-line {
		transform: scale(.96)
	}
}

@media screen and (max-width:979px) {
	.btn-line {
		transform: scale(.86)
	}
}

.btn-line:disabled {
	cursor: default;
	border-color: #ccc
}

.btn-line:disabled .btn-text {
	color: #ccc
}

.btn-line:disabled:after {
	background-color: #ccc
}

.btn-line:disabled:hover {
	color: #ccc;
	border-color: #ccc
}

.btn-line:disabled:hover:after {
	background-color: #ccc
}

.resume-temp {
	font-size: 12px;
	margin-top: 5px;
	color: #919191
}

@media screen and (max-width:639px) {
	.resume-temp {
		margin-top: 4px;
		transform: scale(.9)
	}
}

.btn-small {
	font-size: 17px;
	text-decoration: underline
}

@media screen and (max-width:639px) {
	.btn-small {
		font-size: 16px
	}
}

.btn-small:hover {
	color: #3e87f8
}

.loading {
	opacity: 1;
	visibility: visible;
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	background-color: #fcfcfc;
	display: flex;
	-moz-flex-direction: column;
	flex-direction: column;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-o-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transition: all 1.1s
}

.loading__logo {
	opacity: 1;
	width: 200px;
	height: 200px;
	-webkit-animation: none;
	animation: none;
	transition: opacity .35s;
	transition-delay: .2s
}

.loading__text--done {
	display: block
}

.loading__text--load {
	display: block
}

.loading__guide {
	position: relative;
	width: 100%;
	margin-top: 6px;
	font-size: 18px;
	transition: opacity .35s;
	transition-delay: .2s
}

@media screen and (max-width:979px) {
	.loading__guide {
		font-size: 16px
	}
}

.loading__text {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	text-align: center
}

.loading--ongoing .loading__logo {
	-webkit-animation: ball 2s infinite;
	animation: ball 2s infinite
}

.loading--ongoing .loading__text--load {
	display: block
}

.loading--ongoing .loading__text--done {
	display: none
}

.loading--hide .loading__logo {
	opacity: 0
}

.loading--hide .loading {
	opacity: 0;
	visibility: hidden;
	transition-delay: .4s
}

.loading--hide .visual__text {
	display: block;
	opacity: 1;
	transform: translateY(0);
	transition: transform 1s, opacity 1s;
	transition-delay: 1s
}

.loading--hide .visual__logo {
	display: block;
	opacity: 1;
	transform: translateY(0);
	transition: transform 1s, opacity 1s;
	transition-delay: 1.4s
}

.loading--hide .loading__text--load {
	display: none
}

.loading--hide .visual__desc {
	display: block;
	opacity: 1;
	transform: translateY(0);
	transition: transform 1s, opacity 1s;
	transition-delay: 2s
}

.loading--hide .loading__guide {
	opacity: 0
}

.header {
	z-index: 200;
	position: fixed;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: 1920px
}

.header__inner {
	position: relative;
	width: inherit;
	height: inherit;
	padding-left: 60px;
	margin-top: 44px;
	display: flex;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between
}

@media screen and (max-width:979px) {
	.header__inner {
		margin-top: 40px;
		padding-left: 30px
	}
}

.header__title {
	font-size: 16px;
	color: #adadad;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica
}

@media screen and (max-width:639px) {
	.header__title {
		font-size: 14px;
		left: -10px
	}
}

.header__logo {
	z-index: 33;
	position: absolute;
	top: 0;
	left: 60px;
	display: block;
	width: 50px;
	height: 50px;
	background-size: 100%
}

.header__logo-svg {
	display: block;
	width: 100%
}

.header__logo:hover .header__logo-svg .path,
.header__logo:focus .header__logo-svg .path {
	fill: #3e87f8
}

@media screen and (max-width:979px) {
	.header__logo {
		width: 42px;
		height: 42px;
		left: 15px
	}
}

@media screen and (max-width:639px) {
	.header__logo {
		width: 36px;
		height: 36px
	}
}

.header__mail {
	display: block;
	margin-right: 60px;
	letter-spacing: .04em;
	font-size: 13px;
	color: #adadad;
	will-change: transform;
	font-family: spoqa han sans, AppleGothic, sans-serif, Helvetica;
	transform-origin: 100% 0%
}
a.header__mail{
	color:#adadad;
	opacity: 1;
}
@media screen and (max-width:979px) {
	.header__mail {
		font-size: 13px;
		margin-right: 30px
	}
}

@media screen and (max-width:639px) {
	.header__mail {
		font-size: 13px;
		margin-right: 18px
	}
}

.header__mail:hover,
.header__mail:focus {
	color: #3e87f8
}

.visual {
	width: 100%;
	height: 100%;
	height: 100vh;
	min-height: 640px;
	background-color: #000;
}

.visual__inner {
	position: relative;
	z-index: 1;
	width: inherit;
	height: inherit;
	min-height: inherit;
	max-width: 2560px;
	margin: 0 auto;
}


.visual__background {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: inherit;
	height: inherit;
	min-height: inherit;
	background-color: rgba(0, 0, 0, 1);
	content: ""
}

.visual__container {
	display: block;
	width: inherit;
	height: inherit;
	min-height: inherit;
	position: relative;
	max-width: 1920px;
	margin: 0 auto;
	z-index: 1;
	display: flex;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center
}

.visual__content {
	margin-top: -8vh;
	text-align: center;
	width: 100%
}

@media screen and (max-width:639px) {
	.visual__content {
		margin-top: -10vh
	}
}

.visual__text {
	opacity: 0;
	transform: translateY(20px);
	font-size: 35px;
	letter-spacing: .7px;
	font-weight: 400;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

@media screen and (max-width:1279px) {
	.visual__text {
		font-size: 29px
	}
}

@media screen and (max-width:639px) {
	.visual__text {
		font-size: 22px
	}
}

.visual__logo {
	opacity: 0;
	transform: translateY(20px);
	width: 500px;
	margin: 22px auto 70px;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

.visual__logo-img {
	display: block;
	width: 100%;
	cursor: default
}

@media screen and (max-width:1599px) {
	.visual__logo {
		width: 600px;
		margin: 20px auto 60px
	}
}

@media screen and (max-width:639px) {
	.visual__logo {
		width: 244px;
		height: 65px
	}
}

.visual__desc {
	opacity: 0;
	transform: translateY(20px);
	color: #505050;
	font-size: 14px;
	letter-spacing: .3px;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	font-weight: 500;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

@media screen and (max-width:639px) {
	.visual__desc {
		font-size: 12px;
		letter-spacing: 0;
		font-weight: 700
	}
}

.visual__hello {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 500px;
	height: 144px;
	margin-top: -42px;
	margin-left: -250px;
	font-size: 48px;
	line-height: 1.5;
	text-align: center;
	opacity: 0;
	color:#ededed;
}
.visual__hello img{
	width:50px;
}

@media screen and (max-width:639px) {
	.visual__hello {
		width: 340px;
		margin-left: -170px;
		font-size: 32px;
		margin-top: 0
	}
}

.scroll-down {
	position: absolute;
	bottom: 0;
	left: 60px;
	font-size: 13px;
	padding-left: 20px;
	letter-spacing: 1px;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	color: #505050
}

.scroll-down .scroll-down__word {
	display: inline-block;
	position: relative;
	bottom: 14px
}

@media screen and (max-width:639px) {
	.scroll-down .scroll-down__word {
		margin-top: 30px
	}
}

@media screen and (max-width:1279px) {
	.scroll-down {
		font-size: 12px
	}
}

@media screen and (max-width:979px) {
	.scroll-down {
		left: 30px
	}
}

@media screen and (max-width:639px) {
	.scroll-down {
		bottom: initial;
		top: 50%;
		left: 50%;
		width: 87px;
		font-size: 11px;
		padding-left: 0;
		padding-bottom: 0;
		transform: translateX(-50%);
		margin-top: 20vh;
		opacity: .8;
		color: rgba(51, 51, 51, .5)
	}
}

.scroll-down .lines {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 70px;
	overflow: hidden;
	margin-top: 2px
}

@media screen and (max-width:639px) {
	.scroll-down .lines {
		display: block;
		width: 87px;
		margin-top: 0
	}
}

.scroll-down .lines .line-1 {
	position: absolute;
	top: 0;
	left: 0%;
	display: block;
	width: 1px;
	height: 70px;
	background: rgba(51, 51, 51, .3);
	overflow: hidden
}

@media screen and (max-width:639px) {
	.scroll-down .lines .line-1 {
		left: 50%
	}
}

.scroll-down .lines .line-2 {
	position: absolute;
	top: -70px;
	left: 0%;
	display: block;
	width: 1px;
	height: 70px;
	background: rgba(51, 51, 51, .4);
	overflow: hidden;
	-webkit-animation: scollDown 2s infinite;
	animation: scollDown 2s infinite
}

@media screen and (max-width:639px) {
	.scroll-down .lines .line-2 {
		left: 50%
	}
}

.about {
	position: relative;
	width: 100%;
}

.about__inner {
	position: relative;
	width: inherit;
	max-width: 1600px;
	margin: 0 auto;
	padding: 0 60px 260px
}

@media screen and (max-width:979px) {
	.about__inner {
		padding: 0 30px 140px
	}
}

@media screen and (max-width:639px) {
	.about__inner {
		padding: 0 30px 120px
	}
}

.about__title {
	margin-top: 120px;
	text-align: left;
	font-size: 46px;
	font-weight: bold;
	line-height: 1.4;
	color:#ededed;
}

@media screen and (max-width:1279px) {
	.about__title {
		font-size: 40px
	}
}

@media screen and (max-width:979px) {
	.about__title {
		top: 170px;
		right: 30px;
		font-size: 35px
	}
}

@media screen and (max-width:639px) {
	.about__title {
		top: 200px;
		font-size: 28px
	}
}

.about__title-accent {
	display: inline-block;
	position: relative;
	font-weight: 400
}

.about__title-accent:after {
	position: absolute;
	top: 100%;
	left: 0;
	margin-top: -10px;
	display: block;
	width: 100%;
	height: 2px;
	content: "";
	background-color: #141414
}

@media screen and (max-width:639px) {
	.about__title-accent:after {
		margin-top: -8px
	}
}

.about__text {
	color:#ededed;
	position: relative;
	margin-top: 90px;
	font-size: 19px;
	letter-spacing: -.2px;
	line-height: 1.5;
}

@media screen and (max-width:1279px) {
	.about__text {
		font-size: 18px
	}
}

@media screen and (max-width:979px) {
	.about__text {
		margin-top: 60px;
		font-size: 17px
	}
}

@media screen and (max-width:639px) {
	.about__text {
		font-size: 16px
	}
}

.about__text-item {
	margin-top: 30px;
	line-height:35px;
}

.about__text-item:first-child {
	margin-top: 0
}

.profile {
	z-index: 1;
	top: -100px;
	position: relative;
	font-size: 38px
}

@media screen and (max-width:979px) {
	.profile {
		font-size: 36px
	}
}

@media screen and (max-width:639px) {
	.profile {
		top: -100px
	}
}

.profile__photo {
	position: relative;
	width: 398px;
	height: 330px;
	background-image: url(../images/profile-v2.webp);
	background-repeat: no-repeat;
	background-position: 20% 50%;
	background-size: 110%
}

.profile__photo.no-webp {
	background-image: url(../images/profile-v2.jpg)
}

@media screen and (max-width:1279px) {
	.profile__photo {
		width: 360px;
		height: 298px
	}
}

@media screen and (max-width:979px) {
	.profile__photo {
		width: 420px;
		height: 348px
	}
}

@media screen and (max-width:639px) {
	.profile__photo {
		width: 100%
	}
}

.profile__photo:after {
	position: absolute;
	left: -14px;
	top: -14px;
	display: block;
	width: inherit;
	height: inherit;
	content: "";
	border: 2px solid #ffdb45
}

@media screen and (max-width:639px) {
	.profile__photo:after {
		display: none
	}
}

.profile__nickname {
	display: inline-block;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	font-weight: 700
}

.profile__name {
	display: inline-block;
	font-size: 45%;
	margin-left: .3em;
	color: #747474
}

.work {
	position: relative;
	overflow-x: hidden;
	background-color: #fafafa;
	padding-top: 160px;
	padding-bottom:160px;
}

@media screen and (max-width:979px) {
	.work {
		padding-top: 140px
	}
}

@media screen and (max-width:639px) {
	.work {
		padding-top: 120px
	}
}

.skill__inner {
	padding: 0 60px;
	display: flex;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center
}

@media screen and (max-width:979px) {
	.skill__inner {
		padding: 0 30px;
		display: block;
		-moz-flex-direction: column;
		flex-direction: column
	}
}

.skill__title {
	display: block;
	margin-right: 200px;
	color: #333;
	font-weight: bold;
	font-size: 50px;
	line-height: 1.4;
	letter-spacing: -0.5px;
	-ms-flex-shrink: 0;
	flex-shrink: 0
}

@media screen and (max-width:1279px) {
	.skill__title {
		font-size: 46px;
		margin-right: 140px
	}
}

@media screen and (max-width:979px) {
	.skill__title {
		font-size: 42px;
		margin-right: 0;
		margin-bottom: 90px
	}
}

@media screen and (max-width:639px) {
	.skill__title {
		font-size: 40px;
		letter-spacing: -.5px;
	}
}

.skill__icon {
	position: relative;
	top: 12px;
	right: 8px;
	width: 48px;
	-webkit-animation: swing 2.5s infinite;
	animation: swing 2.5s infinite
}

@media screen and (max-width:639px) {
	.skill__icon {
		width: 32px;
		top: 8px
	}
}

.skill-list {
	margin-top: 10px
}

@media screen and (max-width:979px) {
	.skill-list {
		display: inline-block;
		text-align: left
	}
}

.skill-list__item {
	position: relative;
	font-size: 19px;
	margin-top: 56px;
	line-height: 160%;
	padding-left: 30px
}

@media screen and (max-width:1279px) {
	.skill-list__item {
		font-size: 18px
	}
}

@media screen and (max-width:979px) {
	.skill-list__item {
		font-size: 17px;
		margin-top: 54px
	}
}

@media screen and (max-width:639px) {
	.skill-list__item {
		font-size: 16px;
		word-break: keep-all;
		padding-left:0;
	}
}

.skill-list__item:first-child {
	margin-top: 0
}

.skill-list__name {
	display: block;
	margin-bottom: 8px;
	font-weight: 700;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica
}

@media screen and (max-width:1279px) {
	.skill-list__name:before {
		top: 6px
	}
}

.skill-list__desc {
	line-height: 1.68;
	font-size: 98%;
	letter-spacing: -.19px
}

.skill-list__desc .small {
	padding: 0 2px;
	letter-spacing: .05rem;
	font-size: 65%
}

.project__inner {
	position: relative;
	max-width: 1600px;
	margin: 150px auto 0;
	padding: 0 60px
}

@media screen and (max-width:979px) {
	.project__inner {
		padding: 0 30px
	}
}

@media screen and (max-width:639px) {
	.project__inner {
		margin-top: 80px
	}
}

.project__background {
	position: absolute;
	top: 0;
	left: 50%;
	width: 710px;
	height: 1100px;
	transform: rotate(-270deg) translateY(-50%);
	transform-origin: 0 0;
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-o-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none
}

@media screen and (max-width:1279px) {
	.project__background {
		margin-left: -100px
	}
}

@media screen and (max-width:979px) {
	.project__background {
		width: 900px
	}
}

@media screen and (max-width:639px) {
	.project__background {
		left: 0;
		margin-left: 50%;
		height: 100vw
	}
}

.project__background-word {
	position: absolute;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 5.85px;
	color: transparent;
	-webkit-text-stroke: 1px #c1c1c1
}

@media screen and (max-width:979px) {
	.project__background-word {
		font-size: 30px
	}
}

@media screen and (max-width:639px) {
	.project__background-word {
		font-size: 26px
	}
}

.project__background-word:nth-child(1) {
	top: 130px;
	left: 80px
}

.project__background-word:nth-child(2) {
	top: 694px;
	left: 162px
}

.project__background-word:nth-child(3) {
	top: 370px;
	left: 470px
}

@media screen and (max-width:979px) {
	.project__background-word:nth-child(1) {
		top: 220px;
		left: 40px
	}

	.project__background-word:nth-child(2) {
		top: 600px;
		left: 180px
	}

	.project__background-word:nth-child(3) {
		top: 380px;
		left: 520px
	}
}

@media screen and (max-width:639px) {
	.project__background-word:nth-child(1) {
		top: 115px;
		left: 40px
	}

	.project__background-word:nth-child(2) {
		top: 250px;
		left: 240px
	}

	.project__background-word:nth-child(3) {
		top: 170px;
		left: 560px
	}
}

.project__comment {
	margin-top: 6px;
	color: #747474;
	font-size: 13px;
	text-align: right;
	font-weight: 700
}

@media screen and (max-width:979px) {
	.project__comment {
		margin-top: 24px
	}
}

@media screen and (max-width:639px) {
	.project__comment {
		margin-top: 30px;
		font-weight: 400;
		font-size: 12px;
		text-align: center
	}
}

.project-list {
	z-index: 1;
	position: relative;
	height: 730px;
	max-width: 1100px;
	margin: 0 auto
}

@media screen and (max-width:1279px) {
	.project-list {
		width: 810px
	}
}

@media screen and (max-width:979px) {
	.project-list {
		width: calc(100vw - 60px);
		height: 900px
	}
}

.project-list__item {
	position: absolute;
	transition: left .7s, top .7s
}

.project-list__item:nth-child(1) {
	top: 0;
	left: 220px
}

.project-list__item:nth-child(2) {
	top: 40px;
	left: 684px
}

.project-list__item:nth-child(3) {
	top: 310px;
	left: 0
}

.project-list__item:nth-child(4) {
	top: 260px;
	left: 430px
}

.project-list__item:nth-child(5) {
	top: 240px;
	left: 930px
}

.project-list__item:nth-child(6) {
	top: 540px;
	left: 310px
}

.project-list__item:nth-child(7) {
	top: 490px;
	left: 800px
}

@media screen and (max-width:1279px) {
	.project-list__item:nth-child(1) {
		top: 0;
		left: 140px
	}

	.project-list__item:nth-child(2) {
		top: 30px;
		left: 684px
	}

	.project-list__item:nth-child(3) {
		top: 310px;
		left: 0
	}

	.project-list__item:nth-child(4) {
		top: 200px;
		left: 370px
	}

	.project-list__item:nth-child(5) {
		top: 290px;
		left: 670px
	}

	.project-list__item:nth-child(6) {
		top: 540px;
		left: 220px
	}

	.project-list__item:nth-child(7) {
		top: 490px;
		left: 500px
	}
}

@media screen and (max-width:979px) {
	.project-list__item:nth-child(1) {
		top: 0;
		left: 22vw
	}

	.project-list__item:nth-child(2) {
		top: 120px;
		right: 10vw;
		left: auto
	}

	.project-list__item:nth-child(3) {
		top: 240px;
		left: 9vw
	}

	.project-list__item:nth-child(4) {
		top: 360px;
		right: 18vw;
		left: auto
	}

	.project-list__item:nth-child(5) {
		top: 480px;
		left: 24vw
	}

	.project-list__item:nth-child(6) {
		top: 600px;
		right: 7vw;
		left: auto
	}

	.project-list__item:nth-child(7) {
		top: 720px;
		left: 8vw
	}
}

@media screen and (max-width:639px) {
	.project-list__item:nth-child(1) {
		top: 10px;
		left: 50%;
		margin-left: -120px
	}

	.project-list__item:nth-child(2) {
		top: 120px;
		left: 50%;
		right: 0;
		margin-left: 70px
	}

	.project-list__item:nth-child(3) {
		top: 240px;
		left: 50%;
		margin-left: -160px
	}

	.project-list__item:nth-child(4) {
		top: 360px;
		left: 50%;
		right: 0;
		margin-left: 20px
	}

	.project-list__item:nth-child(5) {
		top: 480px;
		left: 50%;
		margin-left: -140px
	}

	.project-list__item:nth-child(6) {
		top: 600px;
		left: 50%;
		right: 0;
		margin-left: 50px
	}

	.project-list__item:nth-child(7) {
		top: 720px;
		left: 50%;
		margin-left: -120px
	}
}

.project-list__image {
	display: block;
	width: 130px;
	height: 130px;
	background: #967e7e;
	border-radius: 8px;
	box-shadow: 0 20px 30px 0 rgba(65, 58, 58, .15);
	cursor: pointer
}

.project-list__image:hover {
	will-change: transform;
	transform: scale(1.05);
	opacity: .9;
	box-shadow: 0 20px 30px 0 rgba(65, 58, 58, .25)
}

@media screen and (max-width:1279px) {
	.project-list__image {
		width: 120px;
		height: 120px;
		border-radius: 6px
	}
}

@media screen and (max-width:639px) {
	.project-list__image {
		width: 100px;
		height: 100px
	}
}

.project-list__tag {
	margin-top: 14px;
	font-size: 14px;
	font-weight: 700;
	width: 100%
}

@media screen and (max-width:979px) {
	.project-list__tag {
		font-size: 13px
	}
}

.project-list__tag-item {
	margin-right: 2px
}

@media screen and (max-width:639px) {
	.project-list__tag-item {
		display: block
	}
}

.project-list__tag-item:before {
	display: inline-block;
	padding-right: 1px;
	content: "#";
	font-family: montserrat, AppleGothic, sans-serif, Helvetica
}

.recent__inner {
	position: relative;
	max-width: 1600px;
	margin: 196px auto 0;
	padding-bottom: 174px;
	text-align: center
}

@media screen and (max-width:979px) {
	.recent__inner {
		margin: 140px auto 0;
		padding-bottom: 140px
	}
}

@media screen and (max-width:639px) {
	.recent__inner {
		margin: 120px auto 0;
		padding-bottom: 120px
	}
}

.recent__title {
	margin-bottom: 50px;
	font-size: 30px;
	letter-spacing: 1px;
	color: #505050;
	font-weight: 400;
	text-align: center
}

@media screen and (max-width:979px) {
	.recent__title {
		font-size: 28px
	}
}

@media screen and (max-width:639px) {
	.recent__title {
		font-size: 22px;
		font-weight: 700;
		margin-bottom: 50px;
		color: #333
	}
}

.recent__background-word {
	opacity: 0;
	position: absolute;
	top: 250px;
	left: 50%;
	display: block;
	font-weight: 700;
	font-size: 102px;
	color: rgba(8, 8, 8, .06);
	text-align: right;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-o-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.recent__background-word:first-child {
	margin-left: -390px
}

.recent__background-word:nth-child(2) {
	margin-top: 110px;
	margin-left: -530px
}

.recent__background-word:last-child {
	text-align: left;
	margin-left: 130px;
	margin-top: 316px
}

@media screen and (max-width:1279px) {
	.recent__background-word {
		font-size: 88px;
		letter-spacing: -1px
	}

	.recent__background-word:first-child {
		margin-left: -348px
	}

	.recent__background-word:nth-child(2) {
		margin-top: 86px;
		margin-left: -470px
	}
}

@media screen and (max-width:979px) {
	.recent__background-word {
		font-size: 75px
	}

	.recent__background-word:first-child {
		margin-left: -300px;
		margin-top: 20px
	}

	.recent__background-word:nth-child(2) {
		margin-top: 100px;
		margin-left: -400px
	}

	.recent__background-word:nth-child(3) {
		margin-top: 330px;
		margin-left: 120px
	}
}

@media screen and (max-width:639px) {
	.recent__background-word {
		opacity: 1;
		font-size: 65px
	}

	.recent__background-word:first-child {
		margin-top: 20px;
		margin-left: -210px;
		transform: rotate(-90deg)
	}

	.recent__background-word:nth-child(2) {
		display: none
	}

	.recent__background-word:nth-child(3) {
		margin-top: 170px;
		margin-left: 40px;
		transform: rotate(90deg)
	}
}

.recent__btn {
	display: inline-block;
	margin: 10px auto 0
}

@media screen and (max-width:639px) {
	.recent__btn {
		margin-top: 20px
	}
}

.recent .btn-small {
	margin: 36px auto 0
}

.ani-recent-show .recent__background-word:nth-child(1) {
	-webkit-animation-name: recentShow1;
	animation-name: recentShow1;
	-webkit-animation-duration: 1.1s;
	animation-duration: 1.1s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

.ani-recent-show .recent__background-word:nth-child(2) {
	-webkit-animation: recentShow1 1.1s;
	animation: recentShow1 1.1s;
	-webkit-animation-delay: .2s;
	animation-delay: .2s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

.ani-recent-show .recent__background-word:nth-child(3) {
	-webkit-animation: recentShow2 1.1s;
	animation: recentShow2 1.1s;
	-webkit-animation-delay: .4s;
	animation-delay: .4s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}

@media screen and (max-width:639px) {
	.ani-recent-show .recent__background-word {
		-webkit-animation: none !important;
		animation: none !important
	}
}

.screen {
	z-index: 1;
	position: relative;
	top: -20px;
	left: -54px;
	width: 580px;
	height: 790px;
	margin: 0 auto;
	background-size: 100%;
	background-image: url(../images/work-screen-shadow.webp);
	background-repeat: no-repeat
}

.screen.no-webp {
	background-image: url(../images/work-screen-shadow.png)
}

@media screen and (max-width:979px) {
	.screen {
		width: 516px;
		height: 700px;
		left: -44px
	}
}

@media screen and (max-width:639px) {
	.screen {
		width: 360px;
		height: 490px;
		left: -28px
	}
}

.blog {
	position: relative;
	background-color: #ededed
}

.blog__inner {
	position: relative;
	max-width: 1600px;
	margin: 0 auto;
	padding: 230px 60px 200px;
}

@media screen and (max-width:979px) {
	.blog__inner {
		padding: 190px 30px 180px
	}
}

.blog__title {
	margin-bottom: 120px;
	font-size: 52px;
	font-weight: 400;
	text-align: center
}

@media screen and (max-width:1279px) {
	.blog__title {
		font-size: 48px
	}
}

@media screen and (max-width:979px) {
	.blog__title {
		font-size: 41px;
		margin-bottom: 90px
	}
}

@media screen and (max-width:639px) {
	.blog__title {
		font-size: 36px;
		margin-bottom: 60px
	}
}

.blog .icon {
	display: inline-block;
	width: 46px;
	height: 46px;
	margin-left: 4px;
	background-size: 100%
}

@media screen and (max-width:639px) {
	.blog .icon {
		margin-left: 2px;
		width: 32px;
		height: 32px
	}
}

.blog__from {
	display: block;
	margin-bottom: 30px;
	font-size: 14px;
	text-align: right;
	color: #bdbdbd
}

.blog__from .blog__anchor:hover {
	text-decoration: underline;
	color: #3e87f8
}

@media screen and (max-width:639px) {
	.blog__from {
		text-align: center;
		font-size: 13px
	}
}

.port-list {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding:0 0 0 180px;
}

@media screen and (max-width:639px) {
	.port-list {
		padding-left:0;
		padding-top:90px;
	}
}

.port-list__item {
	padding:15px;
	position: relative;
	border-radius: 6px;
	overflow: hidden;
	transition: transform .3s ease;
	width:324px;
	height:385px;
	vertical-align: top;
	overflow:hidden;
}

.port-list__item:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 30px -2px rgba(20, 20, 20, .12)
}

.port-list__item:hover .port-list__title {
	text-decoration: underline
}


@media screen and (max-width:979px) {
	.port-list__item{
		padding:5px;
		width:50%;
		height:285px;
	}
}

.port-list__img {
	display: block;
	width: 100%;
	height: 355px;
	background-size: cover;
	background-position: 50%;
	position:relative;
	box-sizing: border-box;
}


.port-list__name {
	position:absolute;
	bottom:0;
	width:100%;
	padding: 40px 30px 30px 30px;
	font-size: 17px;
	background: rgb(0,0,0);
	background: linear-gradient(0deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
}
.port-list__name p{
	color:#ededed;
	font-weight: bold;
	white-space: nowrap;
	text-overflow: ellipsis;
	width:100%;
	overflow:hidden;
}

@media screen and (max-width:979px) {
	.port-list__name {
		padding: 40px 20px 20px 20px;
		font-size: 15px;
	}
	.port-list__img{
		background-size:contain;
		height:275px;
	}
}

.port-list__title {
	display: block;
	margin-bottom: 6px;
	font-size: inherit;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap
}

.port-list__date {
	font-size: 13px;
	color: #747474
}

.pr {
	width: 100%;
	background-color: #fafafa;
	padding-top: 210px;
	padding-bottom: 330px;
	overflow-x: hidden
}

@media screen and (max-width:979px) {
	.pr {
		padding-top: 180px;
		padding-bottom: 120px;
		text-align: center;
	}
}

@media screen and (max-width:639px) {
	.pr {
		padding-top: 150px;
		padding-bottom: 80px
	}
}

.pr__container {
	position: relative;
	width: 100%;
	margin: 0 auto;
	font-size: 90px;
	min-height:180px;
}

@media screen and (max-width:1279px) {
	.pr__container {
		font-size: 100px;
		min-height: 160px
	}
}

@media screen and (max-width:979px) {
	.pr__container {
		font-size: 70px;
		height: auto
	}
}

@media screen and (max-width:639px) {
	.pr__container {
		font-size: 42px
	}
}

.pr__container.isMobile {
	margin-left: -50%
}

.pr__title {
	position: absolute;
	left: 50%;
	width: 200%;
	padding-left: 150px;
	transform: translateX(0%);
	margin: 0 auto;
	font-size: inherit;
	font-weight: 700;
	color: transparent;
	-webkit-text-stroke: rgba(255,255,255,0.5) 0.5px;
}

@media screen and (max-width:979px) {
	.pr__title {
		display: inline-block;
		position: relative;
		transform: translateX(0);
		padding-left: 0;
		left: 0;
		width: 80%;
		text-align: left;
		margin-bottom:20px;
	}

	.pr__title-accent {
		display: block;
		color: #fff;
	}

	.pr__title .br-tablet {
		display: block
	}
}

@media screen and (max-width:639px) {
	.pr__title {
		letter-spacing: .02rem;
		-webkit-text-stroke:0;
		color:#fff;
	}
}

.pr__inner {
	overflow-x: hidden;
	max-width: 1200px;
	margin: 0 auto
}

.pr__status {
	font-size: 23px;
	text-align: right;
	padding-right: 60px;
	letter-spacing: 2px;
	color: #333
}

@media screen and (max-width:979px) {
	.pr__status {
		text-align: center;
		font-size: 21px;
		margin-top: 26px;
		padding: 0 30px
	}
}

@media screen and (max-width:639px) {
	.pr__status {
		font-size: 15px
	}
}

.pr__status .icon {
	display: inline-block;
	width: 28px;
	height: 28px;
	margin-left: 8px;
	background-size: 100%;
	vertical-align: top
}

@media screen and (max-width:639px) {
	.pr__status .icon {
		width: 20px;
		height: 20px;
		margin-left: 4px
	}
}

.pr__status .accent {
	position: relative;
	display: inline-block
}

.pr__status .accent:after {
	position: absolute;
	bottom: 0;
	left: 0;
	display: inline-block;
	content: "";
	width: 100%;
	height: 4px;
	background-color: #ffdb17
}

@media screen and (max-width:639px) {
	.pr__status .accent:after {
		height: 3px
	}
}

.feature {
	margin-top: 180px;
	display: flex;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-ms-flex-shrink: 0;
	flex-shrink: 0
}

@media screen and (max-width:979px) {
	.feature {
		margin-top: 100px;
		padding: 0 30px;
		-moz-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-moz-flex-direction: column;
		flex-direction: column
	}
}

.feature__title {
	display: block;
	margin-right: 182px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.76;
	letter-spacing: 2px
}

@media screen and (max-width:1279px) {
	.feature__title {
		font-size: 30px;
		margin-right: 150px
	}
}

@media screen and (max-width:979px) {
	.feature__title {
		display: inline-block;
		width: auto;
		font-size: 26px;
		margin-right: 0;
		margin-top: 30px;
		margin-bottom: 45px;
		border: 3px solid #333;
		padding: 32px 38px
	}
}

@media screen and (max-width:639px) {
	.feature__title {
		font-size: 21px;
		line-height: 1.64;
		padding: 28px 34px;
		margin-top: 0
	}
}

.feature__content {
	position: relative;
	min-height: calc(410px - 70px)
}

.feature__content:before {
	position: absolute;
	top: -70px;
	left: -86px;
	display: block;
	content: "";
	width: 1px;
	height: 410px;
	background-color: #8b8b8b
}

@media screen and (max-width:979px) {
	.feature__content {
		min-height: auto
	}

	.feature__content:before {
		display: none
	}
}

@media screen and (max-width:639px) {
	.feature__content {
		width: 80%;
		margin:0 auto;
	}
}

.feature__list-item {
	font-size: 19px;
	font-weight: 400;
	line-height: 2.37;
	color:#ededed;
}

@media screen and (max-width:1279px) {
	.feature__list-item {
		font-size: 18px;
		line-height: 2.5
	}
}

@media screen and (max-width:979px) {
	.feature__list{
		margin-bottom:60px;
	}
	.feature__list-item {
		text-align: left
	}
}

@media screen and (max-width:639px) {
	.feature__list-item {
		font-size: 16px;
		line-height: 1.8;
		margin-bottom: 10px
	}

	.feature__list-item:last-child {
		margin-bottom: 0
	}
}

.feature__btn {
	display: inline-block;
	margin-top: 47px;
	margin-right:10px;
}

@media screen and (max-width:979px) {
	.feature__btn {
		margin: 5px auto 0;
		width:80%;
	}
}

.contact {
	background-color: #ededed
}

.contact__inner {
	max-width: 1600px;
	margin: 0 auto;
	padding: 140px 0 220px;
	text-align: center
}

@media screen and (max-width:979px) {
	.contact__inner {
		padding: 120px 0 160px
	}
}

@media screen and (max-width:639px) {
	.contact__inner {
		padding: 90px 0 110px
	}
}

.contact__title {
	display: block;
	margin-bottom: 40px;
	text-align: center;
	font-size: 24px;
	letter-spacing: -.015rem;
	font-weight: 100;
	color:#ededed;
}

@media screen and (max-width:979px) {
	.contact__title {
		font-size: 20px
	}
}

@media screen and (max-width:639px) {
	.contact__title {
		font-size: 16px;
		margin-bottom: 40px
	}
}

@media screen and (max-width:639px) {
	.contact__title:before {
		width: 18px;
		height: 15px;
		margin-bottom: -1px
	}
}

.contact__info {
	display: inline-block;
	position: relative;
	color:#ededed;
}

.contact__mail {
	display: block;
	text-align: center;
	font-size: 50px;
	font-weight: 500;
	transition: all .3s;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	color:#ededed;
}

@media screen and (max-width:979px) {
	.contact__mail {
		font-size: 60px
	}
}

@media screen and (max-width:639px) {
	.contact__mail {
		font-weight: 700;
		letter-spacing: .04em;
		font-size: 30px
	}
}

.contact__mail:hover,
.contact__mail:focus {
	color: #ededed;
	transform: scale(.95)
}

.contact__mail:hover+.contact__text,
.contact__mail:focus+.contact__text {
	-webkit-animation: ball 1.8s .2s;
	animation: ball 1.8s .2s
}

.contact__text {
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-o-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	margin-top: 26px;
	text-align: center;
	font-size: 16px;
	line-height: 170%;
	font-weight: 300;
	color: #747474
}

@media screen and (max-width:979px) {
	.contact__text {
		font-size: 14px
	}
}

@media screen and (max-width:639px) {
	.contact__text {
		font-size: 13px
	}
}

.footer {
	position: relative;
	font-weight: 400;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica
}

.footer__inner {
	position: relative;
	max-width: 1600px;
	font-size: 15px;
	margin: 0 auto;
	padding: 0 60px 22px;
	display: flex;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between
}

@media screen and (max-width:979px) {
	.footer__inner {
		font-size: 14px;
		padding: 0 30px 34px
	}
}

@media screen and (max-width:639px) {
	.footer__inner {
		font-size: 12px;
		-moz-flex-direction: column;
		flex-direction: column
	}
}

.footer__copyright {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	color: #adadad;
	font-family: spoqa han sans, AppleGothic, sans-serif, Helvetica;
	padding-bottom:40px;
}

@media screen and (max-width:639px) {
	.footer__copyright {
		bottom: 18px
	}
}

.footer__madeby {
	font-size: 95%;
	color: #474747;
	text-align: right;
	letter-spacing: .03rem
}

@media screen and (max-width:639px) {
	.footer__madeby {
		text-align: center;
		letter-spacing: .065rem;
		margin-bottom: 4px
	}
}

.footer__madeby .icon--heart {
	display: inline-block;
	width: 20px;
	height: 24px;
	margin: -4px 0 0 4px;
	vertical-align: middle;
	background-size: 100%;
	-webkit-animation: heartbeat 1.8s infinite;
	animation: heartbeat 1.8s infinite
}

@media screen and (max-width:639px) {
	.footer__madeby .icon--heart {
		width: 14px;
		height: 16px;
		margin: -2px 0 0 2px
	}
}

@media screen and (max-width:639px) {
	.sns {
		text-align: center;
		margin-bottom: 18px;
		margin-right: 14px
	}
}

.sns__link {
	display: inline-block;
	vertical-align: middle;
	margin-right: 28px;
	cursor: pointer
}

@media screen and (max-width:639px) {
	.sns__link {
		width: 25px;
		height: 25px;
		margin-right: 22px
	}

	.sns__link:last-child {
		margin-right: 0
	}
}

.modal{
	-webkit-animation: slideInUp .3s 50ms;
	animation: slideInUp .3s 50ms;
	-webkit-animation-fill-mode: backwards;
	animation-fill-mode: backwards
}
.close-modal {
	-webkit-animation: slideOutDown .3s 50ms;
	animation: slideOutDown .3s 50ms;
	-webkit-animation-fill-mode: backwards;
	animation-fill-mode: backwards
}

.modal__dim {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all .3s ease;
	background-color: rgba(0, 0, 0, .45)
}

.modal__container {
	width: 100%;
	height: 100%;
	display: flex;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-moz-align-items: center;
	-ms-align-items: center;
	align-items: center
}

.modal__body {
	position: relative;
	width: calc(100vw - 40px);
	max-width: 1620px;
	min-height: 188px;
	padding: 60px 20px 20px;
	background-color: #ededed;
	border-radius: 6px;
	box-shadow: 0 5px 32px 0 rgba(15, 15, 15, .15);
	border: 1px solid #c7c7c7
}

@media screen and (max-width:979px) {
	.modal__body {
		width: calc(100vw - 60px);
		padding-left: 15px;
		padding-right: 15px
	}
}

.modal__body .btn-modal-close {
	position: absolute;
	top: 24px;
	right: 24px;
	width: 24px;
	height: 24px;
	background-size: 24px 20px;
	background-repeat: no-repeat;
	background-position: 100% 0%;
	background-image: url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMCI+PHN0eWxlPi5zdDJ7ZmlsbDpub25lO3N0cm9rZTojMzMzMzMzO3N0cm9rZS13aWR0aDoxLjg7c3Ryb2tlLWxpbmVjYXA6cm91bmR9PC9zdHlsZT48Zz48cGF0aCBjbGFzcz0ic3QyIiBkPSJNMyAyLjVsMTUgMTVNMTggMi41bC0xNSAxNSIvPjwvZz48L3N2Zz4=)
}

.modal__body .btn-modal-close:hover {
	background-image: url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMSAyMCI+PHN0eWxlPi5zdDJ7ZmlsbDpub25lO3N0cm9rZTojZmZiYTAwO3N0cm9rZS13aWR0aDoxLjg7c3Ryb2tlLWxpbmVjYXA6cm91bmR9PC9zdHlsZT48Zz48cGF0aCBjbGFzcz0ic3QyIiBkPSJNMyAyLjVsMTUgMTVNMTggMi41bC0xNSAxNSIvPjwvZz48L3N2Zz4=)
}

@media screen and (max-width:639px) {
	.modal__body .btn-modal-close {
		width: 20px;
		height: 20px;
		background-size: 20px 18px;
		top: 20px;
		right: 20px
	}
}

.modal__content {
	overflow-y: auto;
	padding-right: 4px;
	height: 80vh;
	max-height: 920px
}

.modal.modal--opened {
	opacity: 1;
	visibility: visible;
	transition-property: opacity, visibility;
	transition-duration: 400ms, 0s
}

.img-codes {
	display: block;
	width: 100%
}

.real-code {
	width: 100%;
	padding-top: 100px;
	text-align: center;
	background-color: #faf7f4
}

.real-code__text {
	font-size: 18px
}

@media screen and (max-width:639px) {
	.real-code__text {
		font-size: 16px
	}
}

.real-code__btn {
	display: inline-block;
	margin: 28px auto 100px;
	transform: scale(.9)
}

@media screen and (max-width:639px) {
	.real-code__btn {
		transform: scale(.84)
	}
}

.real-code__footer {
	width: 100%;
	font-size: 14px;
	color: #ededed;
	font-family: montserrat, AppleGothic, sans-serif, Helvetica;
	padding: 14px 0;
	background-color: #141414
}

@media screen and (max-width:639px) {
	.real-code__footer {
		font-size: 13px
	}
}

.project_wrapper{
	width:100%;
	text-align:center;
}
.bg_wrapper{
	text-align:center;
}
.cont_wrapper{
	width:1280px;
	margin:0 auto;
	text-align: center;
} 
.cont_1200{
	width:1200px;
	margin:0 auto;
	text-align: center;
}
@media screen and (max-width:639px) {
	.cont_wrapper{
		width:100%;
	}
	.cont_1200{
		width:100%;
	}
	.cont_wrapper img{
		width:100%;
	}
	.cont_wrapper video{
		width:100%;
	}
	.cont_1200 video{
		width:100%;
	}
}

.tab-list{
	position:absolute;
	left:0;
	top:375px;
	z-index: 1;
	display: flex;
	flex-direction: column;
}

.tab-list a{
	font-size:141px;
	font-weight:bold;
	color:transparent;
	-webkit-text-stroke: 1px #ededed;
	line-height:1;
	display: inline-block;
}
.tab-list .ui-state-active a, .tab-list a:hover{
	color:#ededed;
}
@media screen and (max-width:639px) {
	.tab-list{
		top:85px;
		left:60px;
	}
	.tab-list a{
		font-size:80px;
	}
}
.burst_effect{
	width:150px;
	text-align: center;
	margin:0 auto;
	animation-name: shake;
	transition: ease .3s;
	animation-iteration-count: infinite;
	animation-duration: 1s;
	color:#ededed;
	margin-top:20px;
}

@keyframes shake {
	0% {
		transform: rotate(0deg);
	}
	30% {
		transform: rotate(30deg);
	}
	60% {
		transform: rotate(-30deg);
	}
	70% {
		transform: rotate(10deg);
	}
	80% {
		transform: rotate(-10deg);
	}
	90% {
		transform: rotate(6deg);
	}
	100% {
		transform: rotate(0deg);
	}
  }