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

audio, canvas, video {
	display: inline-block
}

audio:not([controls]) {
	display: none;
	height: 0
}

[hidden] {
	display: none
}

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

body {
	margin: 0
}

a:focus {
	outline: thin dotted
}

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

h1 {
	font-size: 2em;
	margin: 0.67em 0
}

abbr[title] {
	border-bottom: 1px dotted
}

b,
strong {
	font-weight: bold
}

dfn {
	font-style: italic
}

hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0
}

mark {
	background: #ff0;
	color: #000
}

code, kbd, pre, samp {
	font-family: monospace, serif;
	font-size: 1em
}

pre {
	white-space: pre-wrap
}

q {
	quotes: "“""”""‘""’"
}

small {
	font-size: 80%
}

sub {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}

sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
	top: -0.5em
}

sub {
	bottom: -0.25em
}

img {
	border: 0
}

svg:not(:root) {
	overflow: hidden
}

figure {
	margin: 0
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em
}

legend {
	border: 0;
	padding: 0
}

button,
input,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0
}

button,
input {
	line-height: normal
}

button,
select {
	text-transform: none
}

button,
html input[type="button"] {
	-webkit-appearance: button;
	cursor: pointer
}

input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer
}

button[disabled],
html input[disabled] {
	cursor: default
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0
}

input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0
}

textarea {
	overflow: auto;
	vertical-align: top
}

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

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, tr, th, td, 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;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline
}

html {
	line-height: 1
}

ol,
ul {
	list-style: none
}

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

caption,
th,
td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle
}

q,
blockquote {
	quotes: none
}

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

a img {
	border: none
}

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

@font-face {
	font-family: "WorkSans-ExtraLight";
	src: url("../font/WorkSans-ExtraLight.ttf")
}

@font-face {
	font-family: "WorkSans-Regular";
	src: url("../font/WorkSans-Regular.ttf")
}

@font-face {
	font-family: "WorkSans-SemiBold";
	src: url("../font/WorkSans-SemiBold.ttf")
}

@font-face {
	font-family: "WorkSans-Bold";
	src: url("../font/WorkSans-Bold.ttf")
}

@font-face {
	font-family: "WorkSans-ExtraBold";
	src: url("../font/WorkSans-ExtraBold.ttf")
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

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

html,
body {
	font-size: 14px;
	font-family: "Noto Sans JP", "Yu Gothic", Arial, sans-serif;
	font-weight: 500;
	color: #fff;
	/* background-color: #f3f5f5; */
	background-color: #fff;
	margin: 0;
	padding: 0;
	width: 100%
}

html {
	text-align: center
}

body {
	width: 100%
}

a {
	text-decoration: none;
	color: var(--link-color);
	outline: none
}

a:hover,
a:focus {
	color: var(--link-hover-color);
	outline: none
}

@media only screen and (max-device-width: 374px) {

	html,
	body {
		font-size: 7px
	}
}

@media only screen and (max-device-width: 413px) {

	html,
	body {
		font-size: 9px
	}
}

@media (min-width: 414px) and (max-width: 767px) {

	html,
	body {
		font-size: 10px
	}
}

@media (min-width: 768px) and (max-width: 1023px) {

	html,
	body {
		font-size: 14px
	}
}

@media (min-width: 1023px) and (max-width: 1199px) {

	html,
	body {
		font-size: 16px
	}
}

@media (min-width: 1200px) {

	html,
	body {
		font-size: 10px
	}
}

@media (min-width: 1440px) {

	html,
	body {
		font-size: 12px
	}
}

@media (min-width: 1600px) {

	html,
	body {
		font-size: 14px
	}
}

@media (min-width: 1920px) {

	html,
	body {
		font-size: 16px
	}
}

main {
	width: 100%;
	max-width: 1920px
}

@media all and (min-width: 1200px) {

	html,
	body {
		min-width: 1400px
	}
}

.loading {
	position: relative
}

.loading .loading-icon {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	position: fixed;
	z-index: 10001;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%
}

.loading .loading-icon img {
	width: 150px;
	height: 150px
}

.loading .loading-icon p {
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 18px;
	position: absolute;
	margin: auto;
	top: 48%;
	left: 0;
	right: 0;
	bottom: 0
}

.loading::before {
	content: '';
	position: fixed;
	z-index: 10000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #f3f5f5
}

.hidden {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
	pointer-events: none
}

.l-body {
	position: relative
}

.l-body .pt0PC65SP {
	padding-top: 0
}

.l-body .pt0PC0SP {
	padding-top: 0
}

.l-body .pb300PC0SP {
	padding-bottom: 300px
}

.l-body .mt95 {
	margin-top: 95px
}

.l-body .mt150 {
	margin-top: 150px !important
}

.l-body .mb20 {
	margin-bottom: 20px
}

.l-body .mb50 {
	margin-bottom: 50px !important
}

.l-body .mb250 {
	margin-bottom: 250px
}

.l-body .mb100PC50SP {
	margin-bottom: 100px !important
}

.l-body .noshowSP {
	display: block !important
}

.l-body .noshowSPFlex {
	display: -webkit-flex;
	display: flex
}

.l-body .noshowPC {
	display: none !important
}

.l-body .noshowPCFlex {
	display: none
}

.l-body .flex-start-center {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: nowrap;
	flex-direction: row-reverse;
}

.l-body .hidden {
	display: none
}

.l-section {
	position: relative;
	font-family: "Yu Gothic", Arial, sans-serif;
	padding: 5.7rem 18.5rem 5.7rem 18.5rem;
	width: 100%;
	min-height: 1500px;
	text-align: left;
	padding-top: calc(5.7rem + 73px)
}

#company.l-section{
	min-height: auto;
}

.l-section__first {
	/*padding-top: calc(5.7rem + 73px)*/
	padding-top: calc(5.7rem + 140px);
	min-height: 1000px;
}

.l-section__404 {
	min-height: auto
}

.l-section__container {
	width: 100%
}

.l-section__overpage-container {
	width: 100vw;
	max-width: 1920px;
	margin-left: -18.5rem;
	padding: 0
}

.l-section .mb100 {
	margin-bottom: 100px !important
}

.l-container {
	width: 100%;
	height: 100%
}

.l-container__title {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-end;
	align-items: flex-end
}

.l-title__h1 {
	font-family: "Yu Gothic", Arial, sans-serif;
	margin-top: 2.5rem;
	margin-bottom: 0;
	font-weight: 900;
	font-size: 6rem;
	line-height: 1.5;
	letter-spacing: 2rem;
	text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
	/* opacity: 0 */
	opacity: 1
}

.l-title__h2 {
	font-family: "Yu Gothic", Arial, sans-serif;
	margin-top: 3rem;
	font-size: 2rem;
	line-height: 2;
	letter-spacing: 2px;
	text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4);
	/* opacity: 0 */
	opacity: 1
}

.l-title__sub {
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.75;
	margin-bottom: 2.5rem;
	margin-left: -10rem;
	opacity: 0
}

.l-title__h3 {
	font-family: "Yu Gothic", Arial, sans-serif;
	color: #000525;
	font-size: 4.28rem;
	margin-bottom: 5rem;
	position: relative;
	line-height: 1.8;
	font-weight: bold;
	letter-spacing: 1px
}

.l-title__h3__description {
	font-family: "Yu Gothic", Arial, sans-serif;
	font-size: 1.14rem;
	color: #000525;
	font-weight: bold;
	line-height: 2;
	letter-spacing: 1px
}

.l-title__h3__description__sp {
	display: none
}

.l-title__h4 {
	font-size: 1.4rem;
	font-family: "WorkSans-Bold", sans-serif;
	color: #000525;
	margin-bottom: 65px;
	letter-spacing: 0.15em;
}

.l-title__h4 .sub_ja{
	display: block;
	margin: 15px 0 0 22px;
	font-size: 1rem;
}

.l-grid {
	margin-top: 10rem;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap
}

.l-grid__back-number {
	/* position: absolute; */
	position: relative;
	display: block;
	width: 100%;
	/* height: 97px; */
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 1;
	/* font-family: "WorkSans-ExtraLight", sans-serif; */
	font-family: "Noto Sans JP";
	font-weight: 300;
	color: #494949;
	text-align: center;
	font-size: 1.5rem;
}

.l-grid__item {
	position: relative;
	/* width: calc((100% - 2px) / 3); */
	width: calc((100% - 1px) / 2);
	/* height: 234px */
}

.l-grid__item:nth-child(1) {
	padding-bottom: 55px;
	border-bottom: 1px solid #c6c7c7;
	border-right: 1px solid #c6c7c7
}

.l-grid__item:nth-child(2) {
	padding-bottom: 55px;
	border-bottom: 1px solid #c6c7c7;
	/* border-right: 1px solid #c6c7c7 */
}

.l-grid__item:nth-child(3) {
	/* border-bottom: 1px solid #c6c7c7;
	border-right: none */
	padding-top: 35px;
	border-right: 1px solid #c6c7c7
}

.l-grid__item:nth-child(4) {
	/* border-right: 1px solid #c6c7c7; */
	padding-top: 35px;
	border-bottom: none;
	/* padding-top: 2rem */
}
/*
.l-grid__item:nth-child(4) .l-grid__back-number {
	top: 1.5rem
}

.l-grid__item:nth-child(5) {
	border-right: 1px solid #c6c7c7;
	padding-top: 2rem
}

.l-grid__item:nth-child(5) .l-grid__back-number {
	top: 1.5rem
}

.l-grid__item:nth-child(6) {
	padding-top: 2rem
}

.l-grid__item:nth-child(6) .l-grid__back-number {
	top: 1.5rem
}
*/
.l-grid .bottom-border {
	border-bottom: 1px solid #c6c7c7
}

.l-grid .right-border {
	border-right: 1px solid #c6c7c7
}

.l-grid .w108PC92SP {
	width: 108px
}

.l-grid__icon-container {
	width: 100%;
	height: 100%;
	margin-top: 35px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	flex-direction: column
}

.l-grid__icon {
	/* width: 125px;
	height: 87px; */
	width: auto;
	height: 100px;
	z-index: 3;
	margin-bottom: 40px
}

.l-grid__business-service {
	font-family: "Noto Sans JP";
	font-size: 1.3rem;
	font-weight: bold;
	color: #000525;
	z-index: 3
}

.l-grid__business-service__sp {
	display: none
}

.l-project-gallery {
	width: 100%;
	/*
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap
	*/
	display: flex;
	flex-direction: column;
}

.l-project-gallery__left {
	min-width: 50%;
	margin-left: -3.85rem
}

.l-project-gallery__right {
	min-width: 50%;
	padding-top: 30rem;
	margin-right: -3.85rem
}

.l-project-gallery__item {
	/* cursor: none;
	width: calc(100% + 3.85rem) */
	width: 100%;
	display: flex;
	align-items: center;
}

.l-project-gallery__item.flex_row_reverse{
	flex-direction: row-reverse;
}

.l-project-gallery__item__inner {
	width: 100%;
	position: relative
}

.l-project-gallery .item-1 {
	left: -3.85rem
}

.l-project-gallery .item-2 {
	margin-top: 0;
	right: -3.85rem
}

.l-project-gallery .item-3 {
	left: -3.85rem;
	margin-top: 19rem
}

.l-project-gallery .item-4 {
	right: -3.85rem;
	margin-top: 19rem
}

.l-project-gallery__bg {
	width: 85%;
	z-index: 2;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease
}

.l-project-gallery .size-1 {
	width: 85%;
	margin-bottom: 20px
}

.l-project-gallery .size-2 {
	width: 85%;
	margin-bottom: 0
}

.l-project-gallery .size-3 {
	width: 85%;
	margin-bottom: 15px
}

.l-project-gallery .size-4 {
	width: 90%;
	margin-bottom: 15px
}

.l-project-gallery .size-5 {
	width: 80%;
	margin-bottom: 26px;
	margin-left: 5%
}

.l-project-gallery__app-name {
	position: absolute;
	z-index: 3;
	top: 146px;
	left: -7%;
	margin: 0 auto 0 auto;
	font-family: "WorkSans-ExtraLight", sans-serif;
	color: rgba(0, 5, 37, 0.05);
	font-size: 10rem
}

.l-project-gallery__app-name__2 {
	left: -5%;
	font-size: 11rem;
	top: 99px
}

.l-project-gallery__app-name__3 {
	left: -12px;
	font-size: 10.5rem;
	top: 71px
}

.l-project-gallery__app-name__4 {
	left: 6%;
	top: 66px
}

.l-project-gallery__app-name__5 {
	top: 16px;
	left: -14%;
	font-size: 11rem
}

.l-project-gallery__container {
	position: absolute;
	min-height: 50%;
	width: 100%;
	top: 4.28rem;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 4
}

.l-project-gallery__container__1 {
	top: 0
}

.l-project-gallery__container__2 {
	top: -3.75rem
}

.l-project-gallery__container__3 {
	top: 0
}

.l-project-gallery__container__4 {
	top: 0.5rem
}

.l-project-gallery__container__5 {
	top: -3rem
}

.l-project-gallery .topMargin {
	top: 0
}

.l-project-gallery .topM28 {
	top: -28px
}

.l-project-gallery__application-img {
	z-index: 4;
	/* opacity: 0; */
	opacity: 1;
	width: 80%;
	margin-left: 5%;
	margin-top: 8%
}

.l-project-gallery__application-img__5 {
	margin-top: 1%
}

.l-project-gallery__application-company {
	font-size: 1rem;
	color: #000525;
	margin-top: 32px
}

.l-project-gallery__application-name {
	font-size: 1.42rem;
	color: #000525;
	font-weight: bold;
	margin-top: 15px
}

.l-project-gallery__application-name__sp {
	display: none
}

.l-project-gallery__application-description {
	font-size: 1.14rem;
	color: #000525;
	margin-top: 15px;
	line-height: 2
}

.l-project-gallery__application-description__sp {
	display: none
}

.l-project-gallery__application-os {
	font-size: 0.85rem;
	color: rgba(0, 5, 37, 0.5);
	margin-top: 10px;
	line-height: 2
}

.showPic {
	opacity: 1 !important
}

.l-project-gallery__item:hover .l-project-gallery__bg {
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	transform: scale(1.2)
}

@media (min-width: 1920px) {
	main {
		margin-left: calc((100vw - 1920px) / 2)
	}

	.l-section__overpage-container {
		margin-left: -297.6px
	}
}

@media (max-width: 1199px) {
	html {
		width: 100vw;
		overflow-x: hidden
	}

	body {
		width: 100vw;
		overflow: hidden
	}

	body::-webkit-scrollbar {
		display: none
	}

	.l-body .pt0PC65SP {
		padding-top: 65px
	}

	.l-body .pt300PC0SP {
		padding-top: 0
	}

	.l-body .pb300PC0SP {
		padding-bottom: 0
	}

	.l-body .mb100PC50SP {
		margin-bottom: 50px !important
	}

	.l-body .noshowSP {
		display: none !important
	}

	.l-body .noshowSPFlex {
		display: none !important
	}

	.l-body .noshowPC {
		display: block !important
	}

	.l-body .noshowPCFlex {
		display: -webkit-flex;
		display: flex
	}

	.l-body .flex-start-center {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap
	}

	.l-section {
		position: relative;
		padding: 20rem 2.5rem 10rem 2.5rem;
		width: 100%;
		min-height: 850px;
		text-align: left
	}

	.l-section:first-child {
		padding-bottom: 240px
	}

	.l-section__container {
		width: 100%
	}

	.l-section__overpage-container {
		width: 100%;
		margin: 0;
		padding: 0
	}

	.l-title__h1 {
		margin-top: 5.35rem;
		margin-bottom: 0;
		font-size: 4.5rem;
		line-height: 1.5;
		letter-spacing: 5px;
		color: #fff
	}

	.l-title__h2 {
		margin-top: 3rem;
		font-size: 1.9rem;
		line-height: 2.5;
		letter-spacing: 0;
		color: #fff
	}

	.l-title__sub {
		display: none
	}

	.l-title__h3 {
		font-size: 3rem;
		margin-bottom: 4.8rem;
		display: block;
		line-height: 1.7
	}

	.l-title__h3__description {
		display: none
	}

	.l-title__h3__description__sp {
		display: block;
		font-size: 1.5rem;
		color: #000525;
		font-weight: bold;
		line-height: 2;
		letter-spacing: 1px
	}

	.l-title__particle {
		height: auto
	}

	.l-title__h4 {
		font-size: 2rem;
		margin-bottom: 54px
	}
	
	.l-title__h4 .sub_ja{
		display: block;
		margin: 15px 0 0 22px;
		font-size: 1.2rem;
	}

	.l-canvas {
		display: none
	}

	.l-grid {
		flex-direction: column;
		margin-top: 7.6rem
	}

	.l-grid__item {
		position: relative;
		width: 100%;
		/* height: 19rem; */
		border-right: none !important;
	}

	.l-grid__item:nth-child(1) {
		border-bottom: 1px solid #c6c7c7;
	}

	.l-grid__item:nth-child(2) {
		padding: 35px 0 55px;
		border-bottom: 1px solid #c6c7c7;
	}

	.l-grid__item:nth-child(3) {
		padding: 35px 0 55px;
		border-bottom: 1px solid #c6c7c7;
	}
	/*
	.l-grid__item:nth-child(3) .l-grid__back-number {
		top: 15px
	}
	*/
	.l-grid__item:nth-child(4) {
		border-bottom: 1px solid #c6c7c7;
		padding: 35px 0 55px;
	}
	/*
	.l-grid__item:nth-child(4) .l-grid__back-number {
		top: 15px
	}
	
	.l-grid__item:nth-child(5) {
		border-right: 1px solid #c6c7c7;
		padding-top: 0
	}

	.l-grid__item:nth-child(5) .l-grid__back-number {
		top: 15px
	}

	.l-grid__item:nth-child(6) {
		padding-top: 0
	}

	.l-grid__item:nth-child(6) .l-grid__back-number {
		top: 15px
	}
	*/
	.l-grid__back-number {
		width: auto;
		top: 8px;
		left: 10px;
		font-size: 2.5rem
		font-weight: 400;
	}

	.l-grid .w108PC92SP {
		width: 9.2rem;
		height: auto
	}

	.l-grid__icon {
		width: 10rem;
		height: auto;
		margin-bottom: 30px
	}

	.l-grid__business-service {
		font-size: 1.3rem;
		text-align: center
	}

	.l-grid__business-service__sp {
		display: block;
		font-size: 1.14rem;
		font-weight: bold;
		color: #000525;
		z-index: 3;
		text-align: center;
		line-height: 1.5
	}

	.l-project-gallery {
		width: 100%;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 55px;
	}

	.l-project-gallery .l-cursor {
		display: none
	}

	.l-project-gallery__left {
		min-width: 100%;
		margin-left: 0
	}

	.l-project-gallery__right {
		min-width: 100%;
		padding-top: 0;
		margin-right: 0
	}

	.l-project-gallery__item {
		cursor: none;
		width: 100%;
		flex-direction: column !important;
	}
	/*
	.l-project-gallery__item.flex_row_reverse{
		flex-direction: column !important;
	}
	*/
	.l-project-gallery__item__inner {
		width: 100%;
		position: relative
	}

	.l-project-gallery .item-1 {
		left: 0
	}

	.l-project-gallery .item-1 .l-project-gallery__app-name {
		font-size: 8.5rem;
		top: 100px;
		margin-left: 1.5rem
	}

	.l-project-gallery .item-2 {
		margin-top: 12rem;
		right: 0
	}

	.l-project-gallery .item-2 .l-project-gallery__app-name__2 {
		font-size: 10rem;
		margin-left: 9%;
		top: 80px
	}

	.l-project-gallery .item-3 {
		left: 0;
		margin-top: 12rem
	}

	.l-project-gallery .item-3 .l-project-gallery__app-name__3 {
		top: 28px;
		margin-left: 3%;
		font-size: 10.5rem
	}

	.l-project-gallery .item-3 .l-project-gallery__app-name__5 {
		top: 28px;
		margin-left: -3%;
		font-size: 9.5rem
	}

	.l-project-gallery .item-4 {
		right: 0;
		margin-top: 12rem
	}

	.l-project-gallery .item-4 .l-project-gallery__app-name__4 {
		left: 9%;
		font-size: 9rem;
		top: 55px
	}

	.l-project-gallery .size-1 {
		width: 80%;
		margin-left: 8%
	}

	.l-project-gallery .size-2 {
		width: 80%;
		margin-bottom: 10px;
		margin-left: 12%
	}

	.l-project-gallery .size-3 {
		width: 80%;
		margin-left: 10%;
		margin-bottom: 15px
	}

	.l-project-gallery .size-4 {
		width: 82%;
		margin-bottom: 0px;
		margin-left: 7%
	}

	.l-project-gallery .size-5 {
		width: 80%;
		margin-left: 8%;
		margin-bottom: 10px
	}

	.l-project-gallery__app-name {
		width: 100%;
		opacity: 0.3;
		left: 0
	}

	.l-project-gallery__container {
		width: 86%;
		margin: 0 auto;
		margin-top: 3rem;
		margin-left: 3rem
	}

	.l-project-gallery__container__1 .l-project-gallery__application-img {
		width: 85%;
		margin-left: 5%;
		margin-top: 1%
	}

	.l-project-gallery__container__2 .l-project-gallery__application-img {
		margin-top: 0%
	}

	.l-project-gallery__container__3 .l-project-gallery__application-img {
		margin-left: 3%;
		margin-top: -7%
	}

	.l-project-gallery__container__4 .l-project-gallery__application-img {
		margin-left: 0;
		width: 85%;
		margin-top: -5%
	}

	.l-project-gallery__container__5 .l-project-gallery__application-img {
		margin-top: -5%
	}

	.l-project-gallery .topMargin {
		top: 0
	}

	.l-project-gallery .topM28 {
		top: -28px
	}

	.l-project-gallery__application-company {
		font-size: 1.3rem;
		color: #000525
	}

	.l-project-gallery__application-name {
		font-size: 2rem
	}

	.l-project-gallery__application-name__sp {
		display: block;
		font-size: 2rem;
		color: #000525;
		font-weight: bold;
		margin-top: 15px;
		line-height: 2
	}

	.l-project-gallery__application-description {
		font-size: 1.5rem
	}

	.l-project-gallery__application-description__sp {
		display: block;
		font-size: 1.5rem;
		color: #000525;
		margin-top: 15px;
		line-height: 2
	}

	.l-project-gallery__application-os {
		font-size: 1.2rem;
		margin-top: 10px
	}

	.l-project-gallery__view-project {
		min-height: 60px
	}

	.l-project-gallery__view-project__button-container {
		margin-top: 30px;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		min-height: 60px
	}

	.l-project-gallery__view-project__button-container span {
		font-size: 1.43rem;
		font-family: "WorkSans-Bold", sans-serif;
		color: #000525;
		margin-right: 30px
	}

	.l-project-gallery__view-project__button-container .flex-start {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center
	}

	.l-project-gallery__view-project__button {
		cursor: pointer;
		width: 60px;
		height: 60px;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		-moz-transition: all .3s ease;
		-o-transition: all .3s ease;
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		color: #fff;
		background-color: #000525;
		border: none;
		outline: none
	}

	.l-project-gallery__view-project__button .plus-mark {
		font-family: "Yu Gothic", sans-serif;
		font-size: 32px;
		color: #fff;
		margin: 0;
		padding: 0;
		margin-bottom: 5px
	}

	.l-project-gallery__view-project__button:hover,
	.l-project-gallery__view-project__button:focus {
		background-color: #00083f;
		outline: none
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.l-title__h1 {
		font-size: 7.5rem
	}

	.l-title__h2 {
		font-size: 2.5rem
	}

	.l-title__h3 {
		font-size: 3.5rem
	}

	.l-title__h3__description__sp {
		font-size: 2rem
	}

	.l-title__h4 {
		font-size: 2.5rem
	}

	.l-project-gallery .topMargin {
		top: -6rem
	}
}

@media only screen and (max-device-width: 413px) {
	.l-project-gallery__application-img {
		width: 90%
	}
}

@media only screen and (max-device-width: 374px) {
	.l-title__h1 {
		font-size: 4.5rem
	}

	.l-title__h2 {
		font-size: 1.5rem
	}

	.l-title__h3 {
		font-size: 2.8rem;
		margin-bottom: 4rem
	}

	.l-grid {
		margin-top: 7.6rem
	}

	.l-grid__business-service {
		font-size: 1.1rem
	}

	.l-project-gallery__application-img {
		width: 90%
	}
}

/*!
* animate.css - https://animate.style/
* Version - 4.1.1
* Licensed under the MIT license - http://opensource.org/licenses/MIT
*
* Copyright (c) 2020 Animate.css
*/
:root {
	--animate-duration: 0.6s;
	--animate-delay: 0.3s;
	--animate-repeat: 1
}

.animate__animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-duration: var(--animate-duration);
	animation-duration: var(--animate-duration);
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}

.animate__animated.animate__infinite {
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite
}

.animate__animated.animate__repeat-1 {
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
	-webkit-animation-iteration-count: var(--animate-repeat);
	animation-iteration-count: var(--animate-repeat)
}

.animate__animated.animate__repeat-2 {
	-webkit-animation-iteration-count: calc(1 * 2);
	animation-iteration-count: calc(1 * 2);
	-webkit-animation-iteration-count: calc(var(--animate-repeat) * 2);
	animation-iteration-count: calc(var(--animate-repeat) * 2)
}

.animate__animated.animate__repeat-3 {
	-webkit-animation-iteration-count: calc(1 * 3);
	animation-iteration-count: calc(1 * 3);
	-webkit-animation-iteration-count: calc(var(--animate-repeat) * 3);
	animation-iteration-count: calc(var(--animate-repeat) * 3)
}

.animate__animated.animate__delay-1s {
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
	-webkit-animation-delay: var(--animate-delay);
	animation-delay: var(--animate-delay)
}

.animate__animated.animate__delay-2s {
	-webkit-animation-delay: calc(1s * 2);
	animation-delay: calc(1s * 2);
	-webkit-animation-delay: calc(var(--animate-delay) * 2);
	animation-delay: calc(var(--animate-delay) * 2)
}

.animate__animated.animate__delay-3s {
	-webkit-animation-delay: calc(1s * 3);
	animation-delay: calc(1s * 3);
	-webkit-animation-delay: calc(var(--animate-delay) * 3);
	animation-delay: calc(var(--animate-delay) * 3)
}

.animate__animated.animate__delay-4s {
	-webkit-animation-delay: calc(1s * 4);
	animation-delay: calc(1s * 4);
	-webkit-animation-delay: calc(var(--animate-delay) * 4);
	animation-delay: calc(var(--animate-delay) * 4)
}

.animate__animated.animate__delay-5s {
	-webkit-animation-delay: calc(1s * 5);
	animation-delay: calc(1s * 5);
	-webkit-animation-delay: calc(var(--animate-delay) * 5);
	animation-delay: calc(var(--animate-delay) * 5)
}

.animate__animated.animate__delay-7s {
	-webkit-animation-delay: calc(1s * 7);
	animation-delay: calc(1s * 7);
	-webkit-animation-delay: calc(var(--animate-delay) * 7);
	animation-delay: calc(var(--animate-delay) * 7)
}

.animate__animated.animate__faster {
	-webkit-animation-duration: calc(1s / 2);
	animation-duration: calc(1s / 2);
	-webkit-animation-duration: calc(var(--animate-duration) / 2);
	animation-duration: calc(var(--animate-duration) / 2)
}

.animate__animated.animate__fast {
	-webkit-animation-duration: calc(1s * 0.8);
	animation-duration: calc(1s * 0.8);
	-webkit-animation-duration: calc(var(--animate-duration) * 0.8);
	animation-duration: calc(var(--animate-duration) * 0.8)
}

.animate__animated.animate__slow {
	-webkit-animation-duration: calc(1s * 2);
	animation-duration: calc(1s * 2);
	-webkit-animation-duration: calc(var(--animate-duration) * 2);
	animation-duration: calc(var(--animate-duration) * 2)
}

.animate__animated.animate__slower {
	-webkit-animation-duration: calc(1s * 3);
	animation-duration: calc(1s * 3);
	-webkit-animation-duration: calc(var(--animate-duration) * 3);
	animation-duration: calc(var(--animate-duration) * 3)
}

@media print,
(prefers-reduced-motion: reduce) {
	.animate__animated {
		-webkit-animation-duration: 1ms !important;
		animation-duration: 1ms !important;
		-webkit-transition-duration: 1ms !important;
		transition-duration: 1ms !important;
		-webkit-animation-iteration-count: 1 !important;
		animation-iteration-count: 1 !important
	}

	.animate__animated[class*='Out'] {
		opacity: 0
	}
}

@-webkit-keyframes bounce {

	from,
	20%,
	53%,
	to {
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	40%,
	43% {
		-webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		-webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
		transform: translate3d(0, -30px, 0) scaleY(1.1)
	}

	70% {
		-webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		-webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
		transform: translate3d(0, -15px, 0) scaleY(1.05)
	}

	80% {
		-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
		transform: translate3d(0, 0, 0) scaleY(0.95)
	}

	90% {
		-webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
		transform: translate3d(0, -4px, 0) scaleY(1.02)
	}
}

@keyframes bounce {

	from,
	20%,
	53%,
	to {
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	40%,
	43% {
		-webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		-webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
		transform: translate3d(0, -30px, 0) scaleY(1.1)
	}

	70% {
		-webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		-webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
		transform: translate3d(0, -15px, 0) scaleY(1.05)
	}

	80% {
		-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
		-webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
		transform: translate3d(0, 0, 0) scaleY(0.95)
	}

	90% {
		-webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
		transform: translate3d(0, -4px, 0) scaleY(1.02)
	}
}

.animate__bounce {
	-webkit-animation-name: bounce;
	animation-name: bounce;
	-webkit-transform-origin: center bottom;
	transform-origin: center bottom
}

@-webkit-keyframes fadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes fadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

.animate__fadeIn {
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
	-moz-transition: -moz-transform 500ms ease-in;
	-o-transition: -o-transform 500ms ease-in;
	-webkit-transition: -webkit-transform 500ms ease-in;
	transition: transform 500ms ease-in
}

@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0)
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 100%, 0);
		transform: translate3d(0, 100%, 0)
	}

	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}
}

.animate__fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
	-moz-transition: -moz-transform 500ms ease-in;
	-o-transition: -o-transform 500ms ease-in;
	-webkit-transition: -webkit-transform 500ms ease-in;
	transition: transform 500ms ease-in
}

.morph-wrap {
	width: 100vw;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh
}

.morph {
	position: relative;
	height: 100%;
	width: 100vw;
	flex: none
}

.content {
	position: relative
}

.x-morph {
	position: relative;
	height: 118.625vw;
	width: 100vw;
	z-index: 0;
	opacity: 0
}

.x-morph-warp {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100vw;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 118.625vw;
	z-index: 0
}

#top-section {
	position: relative
}

.main-section {
	/* height: 130vw */
	height: 60vw
}

.x-morphSP {
	position: relative;
	height: 300vw;
	width: 100vw;
	z-index: 0
}

.x-morph-warpSP {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100vw;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 0;
	height: 300vw
}

@media (min-width: 768px) and (max-width: 1199px) {
	.main-section {
		height: 220vw
	}
}

.c-header {
	position: fixed;
	width: 100vw;
	padding: 5.7rem 5.7rem 0 5.7rem;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	z-index: 767
}

.c-header__sp {
	display: none
}

.c-header__left {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	cursor: pointer
}

.c-header__left .left-icon {
	width: 73px;
	margin-right: 40px;
	-moz-transition: all .5s ease-in;
	-o-transition: all .5s ease-in;
	-webkit-transition: all .5s ease-in;
	transition: all .5s ease-in
}

.c-header__left span {
	font-family: "Yu Gothic", Arial, sans-serif;
	font-size: 14px;
	font-weight: normal;
	color: #000525;
	-moz-transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-webkit-transition: all .3s ease-in;
	transition: all .3s ease-in
}

.c-header__right {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	cursor: pointer
}

.c-header__right .right-icon {
	width: 60px;
	height: 60px;
	margin-left: 20px;
	-moz-transition: all .1s ease;
	-o-transition: all .1s ease;
	-webkit-transition: all .1s ease;
	transition: all .1s ease
}

.c-header__right span {
	font-size: 14px;
	font-family: "WorkSans-Regular", sans-serif;
	color: #000525;
	-moz-transition: color .1s ease;
	-o-transition: color .1s ease;
	-webkit-transition: color .1s ease;
	transition: color .1s ease
}

@media only screen and (max-width: 1199px) {
	.c-header {
		display: none
	}

	.c-header__sp {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		position: fixed;
		-webkit-backface-visibility: hidden;
		-webkit-overflow-scrolling: touch;
		top: 0;
		width: 100%;
		height: 7.5rem;
		z-index: 999
	}

	.c-header__sp::-webkit-scrollbar {
		display: none
	}

	.c-header__sp.open {
		overflow: hidden;
		width: 100vw;
		height: 100vh;
		position: fixed;
		-webkit-backface-visibility: hidden;
		-webkit-overflow-scrolling: touch
	}

	.c-header__sp.open:before {
		visibility: visible;
		opacity: 1
	}

	.c-header__sp.open .burger__menu {
		display: block
	}

	.c-header__sp:before {
		content: "";
		position: fixed;
		background-image: url("/src/img/bg-sp-header.webp");
		background-size: cover;
		width: 100vw;
		top: 0;
		left: 0;
		bottom: 0;
		visibility: hidden;
		opacity: 0;
		transition: all 0.4s ease;
		-webkit-backface-visibility: hidden;
		-webkit-overflow-scrolling: touch
	}

	.c-header__sp:before::-webkit-scrollbar {
		display: none
	}

	.c-header__sp__logo {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		padding: 0;
		width: calc(100vw - 7.4rem);
		height: 100%;
		max-height: 7.5rem;
		border-right: 1px solid rgba(255, 255, 255, 0.5);
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		z-index: 995
	}

	.c-header__sp__logo img {
		width: 10rem;
		margin-left: 2.5rem;
		margin-right: 2.2rem
	}

	.c-header__sp__logo span {
		font-size: 1rem;
		font-weight: Bold;
		color: #f3f5f5
	}

	.c-header__sp__contact {
		width: 7.5rem;
		height: calc(100% + 1px);
		max-height: 7.5rem;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-direction: column;
		flex-direction: column;
		border-right: 1px solid rgba(255, 255, 255, 0.5);
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		z-index: 995
	}

	.c-header__sp__contact img {
		margin-top: 19px;
		width: 20px;
		margin-bottom: 14.5px
	}

	.c-header__sp__contact span {
		font-size: 1rem;
		color: #f3f5f5;
		font-family: "WorkSans-SemiBold", sans-serif
	}

	.c-header__sp .burger {
		position: absolute;
		top: 0;
		right: 0;
		height: 0;
		width: 100%
	}

	.c-header__sp .burger__button {
		display: block;
		background: transparent;
		width: 7.5rem;
		height: 7.5rem;
		text-align: center;
		vertical-align: middle;
		transition: all 0.5s ease;
		position: absolute;
		right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5)
	}

	.c-header__sp .burger__button__icon {
		display: inline-block;
		position: absolute;
		background: #f3f5f5;
		margin: 0 auto;
		width: 1.6rem;
		height: 2px;
		top: 28px;
		right: 3.3rem;
		transition: all 0.5s ease;
		transform: translateY(-1px)
	}

	.c-header__sp .burger__button__icon:before,
	.c-header__sp .burger__button__icon:after {
		content: "";
		position: absolute;
		margin: 0 auto;
		background: #f3f5f5;
		width: 2rem;
		height: 2px;
		left: 0;
		right: 0;
		transition: all 0.5s ease
	}

	.c-header__sp .burger__button__icon:before {
		bottom: 8px
	}

	.c-header__sp .burger__button__icon:after {
		top: 8px
	}

	.c-header__sp .burger__button p {
		margin: 47.5px 0 0 0;
		font-family: "WorkSans-SemiBold", sans-serif;
		font-size: 1rem
	}

	.c-header__sp .burger__menu {
		list-style-type: none;
		padding: 0;
		text-align: left;
		display: none;
		margin-left: 2.5rem
	}

	.c-header__sp .burger__menu li {
		display: block;
		position: relative;
		margin: 5.7rem 0 0 0;
		visibility: hidden;
		transition: all 0.5s ease;
		transform: translateX(-400px)
	}

	.c-header__sp .burger__menu li:first-child {
		margin-top: 15rem
	}

	.c-header__sp .burger__menu span {
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 4rem;
		font-family: "WorkSans-ExtraBold", sans-serif;
		font-weight: normal;
		transition: all 0.4s ease;
		border-left: 3px solid transparent;
		padding-left: 0
	}

	.c-header__sp .burger__button.open .burger__button__icon {
		background: transparent
	}

	.c-header__sp .burger__button.open .burger__button__icon:before,
	.c-header__sp .burger__button.open .burger__button__icon:after {
		transform-origin: 0 50%;
		width: 23.28427125px
	}

	.c-header__sp .burger__button.open .burger__button__icon:before {
		transform: rotateZ(0.7854rad)
	}

	.c-header__sp .burger__button.open .burger__button__icon:after {
		transform: rotateZ(-0.7854rad)
	}

	.c-header__sp .burger__button.open+.burger__menu li {
		transform: translateX(0);
		visibility: visible
	}

	.c-header__be-solid {
		background-color: #fff;
		color: #000525;
		border-bottom: 1px solid transparent
	}

	.c-header__be-solid span,
	.c-header__be-solid p {
		color: #000525
	}

	.c-header__be-solid .c-header__sp__contact {
		background-color: #000525;
		border-right: 1px solid #000525
	}

	.c-header__be-solid .c-header__sp__contact span {
		color: #f3f5f5
	}

	.c-header__be-solid .burger__button__icon {
		background: #000525
	}

	.c-header__be-solid .burger__button__icon:before,
	.c-header__be-solid .burger__button__icon:after {
		background: #000525
	}

	.c-header__left {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		cursor: pointer
	}

	.c-header__left .left-icon {
		width: 73px;
		height: 51px;
		margin-right: 40px;
		-moz-transition: all .1s ease;
		-o-transition: all .1s ease;
		-webkit-transition: all .1s ease;
		transition: all .1s ease
	}

	.c-header__left span {
		-moz-transition: color .1s ease;
		-o-transition: color .1s ease;
		-webkit-transition: color .1s ease;
		transition: color .1s ease
	}

	.c-header__right {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		cursor: pointer
	}

	.c-header__right .right-icon {
		width: 60px;
		height: 60px;
		margin-left: 20px;
		-moz-transition: all .1s ease;
		-o-transition: all .1s ease;
		-webkit-transition: all .1s ease;
		transition: all .1s ease
	}

	.c-header__right span {
		font-size: 14px;
		font-family: "WorkSans-SemiBold", sans-serif;
		font-weight: bold;
		color: #000525;
		-moz-transition: color .1s ease;
		-o-transition: color .1s ease;
		-webkit-transition: color .1s ease;
		transition: color .1s ease
	}
}

@media only screen and (min-width: 415px) and (max-width: 1199px) {
	.c-header__sp .burger__menu li {
		margin: 4rem 0 0 0
	}

	.c-header__sp .burger__menu li span {
		font-size: 3rem
	}

	.c-header__sp__contact {
		padding-top: 10px
	}

	.c-header__sp__contact img {
		margin-top: 19px;
		width: 38px;
		margin-bottom: 20.5px
	}

	.c-header__sp .burger__menu li:first-child {
		margin-top: 10rem
	}

	.c-header__sp .burger {
		position: absolute;
		top: 0;
		right: 0;
		height: 0;
		width: 100%
	}

	.c-header__sp .burger__button {
		display: block;
		background: transparent;
		width: 7.5rem;
		height: 7.5rem;
		text-align: center;
		vertical-align: middle;
		transition: all 0.5s ease;
		position: absolute;
		right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5)
	}

	.c-header__sp .burger__button p {
		margin-top: 77px
	}

	.c-header__sp .burger__button__icon {
		display: inline-block;
		position: absolute;
		margin: 0 auto;
		width: 2.2rem;
		height: 4px;
		top: 44px;
		right: 2rem;
		transition: all 0.5s ease;
		transform: translateY(-1px)
	}

	.c-header__sp .burger__button__icon:before,
	.c-header__sp .burger__button__icon:after {
		content: "";
		position: absolute;
		margin: 0 auto;
		width: 2.7rem;
		height: 4px;
		left: 0;
		right: 0;
		transition: all 0.5s ease
	}

	.c-header__sp .burger__button__icon:before {
		bottom: 12px
	}

	.c-header__sp .burger__button__icon:after {
		top: 12px
	}

	.burger__button.open .burger__button__icon {
		background: transparent
	}

	.burger__button.open .burger__button__icon:before,
	.burger__button.open .burger__button__icon:after {
		transform-origin: 0 50%;
		width: 34.28427px !important;
		margin-left: 9px;
		background: #fff
	}

	.burger__button.open .burger__button__icon:before {
		transform: rotateZ(0.7854rad)
	}

	.burger__button.open .burger__button__icon:after {
		transform: rotateZ(-0.7854rad)
	}
}

@media only screen and (max-device-width: 374px) {
	.c-header {
		display: none
	}

	.c-header__sp__logo img {
		width: 4.4rem;
		margin-left: 2.5rem;
		margin-right: 2.2rem
	}

	.c-header__sp__logo span {
		font-size: 0.7rem
	}

	.c-header__sp__contact {
		width: 7.5rem;
		height: calc(100% + 1px);
		max-height: 7.5rem;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-direction: column;
		flex-direction: column;
		border-right: 1px solid rgba(255, 255, 255, 0.5)
	}

	.c-header__sp__contact img {
		margin-top: 19px;
		width: 20px;
		margin-bottom: 14.5px
	}

	.c-header__sp__contact span {
		font-size: 1rem;
		color: #f3f5f5;
		font-family: "WorkSans-SemiBold", sans-serif
	}
}

@media only screen and (max-device-width: 374px) {
	.c-header__sp .burger__menu span {
		font-size: 3.5rem
	}
}

.be-white {
	color: #fff !important
}

.be-white li span {
	color: #fff !important
}

.active span {
	background: #000;
	color: #fff !important
}

.c-nav {
	position: fixed;
	top: 42%;
	right: 5.7rem;
	z-index: 767
}

.c-nav ul {
	list-style-type: none;
	font-family: "WorkSans-Regular", sans-serif;
	font-size: 14px;
	font-weight: bold;
	text-align: left
}

.c-nav ul li {
	margin-bottom: 15px;
	cursor: pointer;
	-moz-transition: color .1s ease;
	-o-transition: color .1s ease;
	-webkit-transition: color .1s ease;
	transition: color .1s ease
}

.c-nav ul li span {
	padding: 0 5px 0 5px;
	text-indent: 8px;
	color: #000525;
	-moz-transition: color .1s ease;
	-o-transition: color .1s ease;
	-webkit-transition: color .1s ease;
	transition: color .1s ease
}

.c-nav ul li span:hover {
	background: #fff;
	color: #000525 !important
}

.c-scroll-down {
	position: fixed;
	bottom: 5.7rem;
	left: 5.7rem;
	z-index: 767;
	cursor: pointer;
	-moz-transition: all 0s ease;
	-o-transition: all 0s ease;
	-webkit-transition: all 0s ease;
	transition: all 0s ease;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	flex-direction: column
}

.c-scroll-down span {
	font-family: "WorkSans-Regular", sans-serif;
	font-size: 12px;
	margin-bottom: 0.5rem;
	color: #f3f5f5;
	font-weight: bold;
	margin-top: 0.5rem;
	writing-mode: vertical-lr
}

.c-scroll-down img {
	width: 11px;
	-moz-transition: all .1s ease;
	-o-transition: all .1s ease;
	-webkit-transition: all .1s ease;
	transition: all .1s ease
}

.c-scroll-down__bounce {
	-moz-animation: bounce 4s infinite;
	-webkit-animation: bounce 4s infinite;
	animation: bounce 4s infinite
}

.c-scroll-down__bounceUp {
	-moz-animation: bounceUp 4s infinite;
	-webkit-animation: bounceUp 4s infinite;
	animation: bounceUp 4s infinite
}

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

	40% {
		opacity: 1
	}

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

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

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

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

	40% {
		opacity: 1
	}

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

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

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

.c-scroll-rotate {
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg)
}

.c-scroll-rotate span {
	-moz-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	-webkit-transform: rotate(270deg);
	transform: rotate(270deg)
}

@media only screen and (max-width: 1199px) {
	.c-nav {
		opacity: 0;
		position: fixed;
		top: 42%;
		right: 5.7rem;
		z-index: 767
	}

	.c-nav ul {
		list-style-type: none;
		font-family: "WorkSans-Regular", sans-serif;
		font-size: 14px;
		text-align: left
	}

	.c-nav ul li {
		margin-bottom: 15px;
		cursor: pointer;
		-moz-transition: color .1s ease;
		-o-transition: color .1s ease;
		-webkit-transition: color .1s ease;
		transition: color .1s ease
	}

	.c-nav ul li span {
		padding: 0 5px 0 5px;
		text-indent: 8px;
		color: #000525;
		-moz-transition: color .1s ease;
		-o-transition: color .1s ease;
		-webkit-transition: color .1s ease;
		transition: color .1s ease
	}

	.c-scroll-down {
		display: none
	}
}

#c-code-container {
	position: absolute;
	top: 55rem;
	left: 53%;
	width: 30%;
	z-index: 1
}

#c-code-container #c-coder {
	height: 100vh;
	width: 100%;
	display: block;
	position: relative;
	margin-top: 25px;
	-webkit-mask-image: radial-gradient(ellipse 79% 75% at 25% 37%, #000000 30%, rgba(0, 0, 0, 0) 60%);
	mask-image: radial-gradient(ellipse 79% 75% at 25% 37%, #000000 30%, rgba(0, 0, 0, 0) 60%);
	z-index: 1
}

#c-code-container #c-coder .text {
	font-weight: 900;
	font-size: 10px;
	color: rgba(255, 255, 255, 0.6);
	text-align: left;
	white-space: pre;
	transition: all 0.3s;
	opacity: 0.5;
	margin-bottom: 7px;
	line-height: 1.5
}

#c-code-container #c-coder .dud {
	color: rgba(255, 255, 255, 0.6);
	text-align: left
}

@media only screen and (max-width: 1199px) {
	#c-code-container {
		display: none
	}
}

.preload-images {
	background: url("/src/img/ourProjects/modal/modal1/bg-modal1-large.png") no-repeat -9999px -9999px;
	background: url("/src/img/ourProjects/modal/modal1/bg-modal1-large.png") no-repeat -9999px -9999px, url("/src/img/ourProjects/modal/modal2/bg-modal2-large.png") no-repeat -9999px -9999px, url("/src/img/ourProjects/modal/modal3/bg-modal3-large.png") no-repeat -9999px -9999px, url("/src/img/ourProjects/modal/modal4/bg-modal4-large.png") no-repeat -9999px -9999px, url("/src/img/ourProjects/modal/modal5/bg-modal5-large.png") no-repeat -9999px -9999px
}

.c-modal-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background-color: #fff;
	opacity: 0;
	visibility: hidden;
	z-index: 900;
	-moz-transition: opacity .25s ease 0s, visibility .35s linear;
	-o-transition: opacity .25s ease 0s, visibility .35s linear;
	-webkit-transition: opacity .25s ease, visibility .35s linear;
	-webkit-transition-delay: 0s, 0s;
	transition: opacity .25s ease 0s, visibility .35s linear
}

.c-modal-overlay.state-show {
	opacity: .7;
	visibility: visible;
	-moz-transition-delay: 0s;
	-o-transition-delay: 0s;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-moz-transition-duration: 0.2s, 0s;
	-o-transition-duration: 0.2s, 0s;
	-webkit-transition-duration: 0.2s, 0s;
	transition-duration: 0.2s, 0s
}

.c-modal-frame {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 1000;
	display: block;
	overflow: hidden;
	width: 100vw;
	height: 100vh;
	text-align: center;
	visibility: hidden
}

.c-modal-frame.state-appear {
	visibility: visible
}

.c-modal-frame.state-appear .c-modal {
	visibility: visible;
	display: block
}

.c-modal-frame.state-appear .c-modal-inset {
	-moz-animation: modalComeIn 0.25s ease;
	-webkit-animation: modalComeIn 0.25s ease;
	animation: modalComeIn 0.25s ease;
	visibility: visible
}

.c-modal-frame.state-appear .c-modal-body {
	opacity: 1;
	-moz-transform: translateY(0) scale(1, 1);
	-ms-transform: translateY(0) scale(1, 1);
	-webkit-transform: translateY(0) scale(1, 1);
	transform: translateY(0) scale(1, 1)
}

.c-modal-frame.state-leave {
	visibility: hidden
}

.c-modal-frame.state-leave .c-modal {
	visibility: hidden;
	display: none
}

.c-modal-frame.state-leave .c-modal-inset {
	-moz-animation: modalHeadOut 0.35s ease 0.1s;
	-webkit-animation: modalHeadOut 0.35s ease 0.1s;
	animation: modalHeadOut 0.35s ease 0.1s;
	visibility: visible
}

.c-modal-frame.state-leave .c-modal-body {
	opacity: 0;
	-moz-transition-delay: 0s;
	-o-transition-delay: 0s;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-moz-transition-duration: 0.35s;
	-o-transition-duration: 0.35s;
	-webkit-transition-duration: 0.35s;
	transition-duration: 0.35s;
	-moz-transition-timing-function: ease;
	-o-transition-timing-function: ease;
	-webkit-transition-timing-function: ease;
	transition-timing-function: ease;
	-moz-transform: translateY(25px);
	-ms-transform: translateY(25px);
	-webkit-transform: translateY(25px);
	transform: translateY(25px)
}

.c-modal {
	display: none;
	vertical-align: middle;
	text-align: center;
	visibility: hidden;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 990;
	overflow: hidden;
	background-color: #fff
}

.c-modal-inset {
	color: #000525;
	position: relative;
	padding: 0 5.7rem 5.7rem;
	min-width: 100vw;
	min-height: 100vh;
	overflow: hidden;
	margin: auto;
	visibility: hidden;
	-moz-box-shadow: 2px 2px 8px 1px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 2px 2px 8px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 2px 2px 8px 1px rgba(0, 0, 0, 0.2);
	-moz-backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-moz-transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d
}

.c-modal-inset__1 {
	background-image: url("/src/img/ourProjects/modal/modal1/modal_bg_01.jpg");
	background-size: cover
}

.c-modal-inset__2 {
	background-image: url("/src/img/ourProjects/modal/modal2/modal_bg_02.jpg");
	background-size: cover
}

.c-modal-inset__3 {
	background-image: url("/src/img/ourProjects/modal/modal3/modal_bg_03.jpg");
	background-size: cover
}

.c-modal-inset__4 {
	background-image: url("/src/img/ourProjects/modal/modal4/modal_bg_04.jpg");
	background-size: cover
}

.c-modal-inset__5 {
	background-image: url("/src/img/ourProjects/modal/modal5/bg-modal5-large.jpg");
	background-size: cover
}

.c-modal-inset__contact-form {
	background-color: rgba(0, 5, 37, 0.749)
}

.c-modal-inset .c-button-close-top {
	display: block;
	cursor: pointer;
	position: fixed;
	z-index: 999;
	top: 5.7rem;
	right: 5.7rem;
	width: 57px;
	text-align: center;
	opacity: .4
}

.c-modal-inset .c-button-close-top:hover {
	opacity: 1
}

.c-modal-inset .c-button-close-top img {
	width: 57px;
	height: 57px;
	margin-bottom: 10px
}

.c-modal-inset .c-button-close-top span {
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 1rem;
	color: rgba(0, 5, 37, 0.5)
}

.c-modal-inset .c-button-close {
	width: 100%;
	text-align: center;
	margin-top: 5rem;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	cursor: pointer
}

.c-modal-inset .c-button-close__circle {
	font-family: 'WorkSans-ExtraLight';
	width: 60px;
	height: 60px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	color: #fff;
	background-color: #000525;
	border: none;
	outline: none;
	margin-left: 2rem;
	font-weight: lighter;
	font-size: 1.5rem
}

.c-modal-inset .c-button-close p {
	font-family: "WorkSans-Bold", sans-serif;
	font-size: 1.5rem;
	color: #000525
}

.c-modal-body {
	margin: auto;
	position: relative;
	width: calc(100% - 25.7rem);
	padding-top: 14.27rem;
	padding-bottom: 9rem;
	height: 100vh;
	overflow-x: hidden;
	overflow-y: scroll;
	opacity: 0;
	z-index: 3;
	text-align: left;
	-moz-transform: translateY(0) scale(0.8, 0.8);
	-ms-transform: translateY(0) scale(0.8, 0.8);
	-webkit-transform: translateY(0) scale(0.8, 0.8);
	transform: translateY(0) scale(0.8, 0.8);
	-moz-transition-property: opacity, -moz-transform;
	-o-transition-property: opacity, -o-transform;
	-webkit-transition-property: opacity, -webkit-transform;
	transition-property: opacity, transform;
	-moz-transition-duration: 0.25s;
	-o-transition-duration: 0.25s;
	-webkit-transition-duration: 0.25s;
	transition-duration: 0.25s;
	-moz-transition-delay: 0.1s;
	-o-transition-delay: 0.1s;
	-webkit-transition-delay: 0.1s;
	transition-delay: 0.1s
}

.c-modal-body::-webkit-scrollbar {
	display: none
}

.c-modal-body__company-name {
	font-size: 1.14rem;
	margin-bottom: 20px
}

.c-modal-body__app-name {
	font-size: 2.14rem;
	font-weight: bold;
	margin-bottom: 40px
}

.c-modal-body__app-description {
	font-size: 1.42rem;
	font-weight: bold;
	margin-bottom: 100px
}

.c-modal-body__image-container {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	z-index: 3;
	margin-bottom: 100px;
	padding-right: 0
}

.c-modal-body__image-container img {
	width: 15.5rem;
	margin-right: 0
}

.c-modal-body__app-english-name {
	position: absolute;
	top: calc(23.97rem + 160px);
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
	font-family: "WorkSans-ExtraLight", sans-serif;
	color: rgba(0, 5, 37, 0.05);
	font-size: 17.8rem
}

.c-modal-body__extra-link {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin-left: 30%
}

.c-modal-body__extra-link a {
	font-size: 1.15rem;
	color: #000525;
	padding: 1px 3px;
	font-weight: bold;
	text-decoration: underline;
	text-decoration-color: #000525
}

.c-modal-body__extra-link img {
	width: 1.06rem
}

.c-modal-body__text-container {
	width: 100%;
	padding: 60px 0 40px;
	text-align: left;
	border-top: 1px solid #aaadb6;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center
}

.c-modal-body__text-container .container-left {
	min-width: 30%;
	max-width: 30%;
	text-align: left
}

.c-modal-body__text-container .container-left span {
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 1.42rem
}

.c-modal-body__text-container .container-right {
	min-width: 70%;
	max-width: 70%;
	text-align: left
}

.c-modal-body__text-container .container-right__icons {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap
}

.c-modal-body__text-container .container-right__iconContainer {
	min-width: 25.5rem;
	margin-bottom: 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center
}

.c-modal-body__text-container .container-right__iconContainer img {
	width: 5rem;
	height: 5rem;
	margin-right: 20px
}

.c-modal-body__text-container .container-right__iconContainer .white-circle {
	width: 5rem;
	height: 5em;
	margin-right: 20px;
	background: #fff;
	border-radius: 50%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center
}

.c-modal-body__text-container .container-right__iconContainer .white-circle img {
	width: 4rem;
	margin: 0;
	height: auto
}

.c-modal-body__text-container .container-right__iconContainer span {
	font-size: 1.14rem;
	font-weight: bold;
	line-height: 1.9
}

.c-modal-body__text-container .container-right .type1 {
	min-width: 50%
}

.c-modal-body__text-container .container-right .type2 {
	min-width: 30%
}

.c-modal-body__text-container .container-right__process {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	width: 100%
}

.c-modal-body__text-container .container-right__process img {
	width: 15rem;
	margin-right: 1.42rem
}

.c-modal-body__text-container .container-right__process .right-tri {
	width: 9px;
	margin-right: 1.42rem
}

.c-modal-body__text-container .container-right__process__block {
	width: 210px;
	height: 55px;
	background-color: #fff;
	color: #000525;
	font-size: 14px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	font-weight: bold;
	margin-right: 1.42rem
}

.c-modal-body__text-container .container-right__text-area p {
	font-size: 1.15rem;
	margin-bottom: 0;
	line-height: 2
}

@-webkit-keyframes modalComeIn {
	0% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: scale(0.8, 0.8);
		-ms-transform: scale(0.8, 0.8);
		-webkit-transform: scale(0.8, 0.8);
		transform: scale(0.8, 0.8)
	}

	65.5% {
		-moz-transform: scale(1.03, 1.03);
		-ms-transform: scale(1.03, 1.03);
		-webkit-transform: scale(1.03, 1.03);
		transform: scale(1.03, 1.03)
	}

	100% {
		visibility: visible;
		opacity: 1;
		-moz-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1)
	}
}

@-moz-keyframes modalComeIn {
	0% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: scale(0.8, 0.8);
		-ms-transform: scale(0.8, 0.8);
		-webkit-transform: scale(0.8, 0.8);
		transform: scale(0.8, 0.8)
	}

	65.5% {
		-moz-transform: scale(1.03, 1.03);
		-ms-transform: scale(1.03, 1.03);
		-webkit-transform: scale(1.03, 1.03);
		transform: scale(1.03, 1.03)
	}

	100% {
		visibility: visible;
		opacity: 1;
		-moz-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1)
	}
}

@keyframes modalComeIn {
	0% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: scale(0.8, 0.8);
		-ms-transform: scale(0.8, 0.8);
		-webkit-transform: scale(0.8, 0.8);
		transform: scale(0.8, 0.8)
	}

	65.5% {
		-moz-transform: scale(1.03, 1.03);
		-ms-transform: scale(1.03, 1.03);
		-webkit-transform: scale(1.03, 1.03);
		transform: scale(1.03, 1.03)
	}

	100% {
		visibility: visible;
		opacity: 1;
		-moz-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1)
	}
}

@-webkit-keyframes modalHeadOut {
	0% {
		visibility: visible;
		opacity: 1;
		-moz-transform: translateY(0) scale(1, 1);
		-ms-transform: translateY(0) scale(1, 1);
		-webkit-transform: translateY(0) scale(1, 1);
		transform: translateY(0) scale(1, 1)
	}

	100% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: translateY(35px) scale(0.97, 0.97);
		-ms-transform: translateY(35px) scale(0.97, 0.97);
		-webkit-transform: translateY(35px) scale(0.97, 0.97);
		transform: translateY(35px) scale(0.97, 0.97)
	}
}

@-moz-keyframes modalHeadOut {
	0% {
		visibility: visible;
		opacity: 1;
		-moz-transform: translateY(0) scale(1, 1);
		-ms-transform: translateY(0) scale(1, 1);
		-webkit-transform: translateY(0) scale(1, 1);
		transform: translateY(0) scale(1, 1)
	}

	100% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: translateY(35px) scale(0.97, 0.97);
		-ms-transform: translateY(35px) scale(0.97, 0.97);
		-webkit-transform: translateY(35px) scale(0.97, 0.97);
		transform: translateY(35px) scale(0.97, 0.97)
	}
}

@keyframes modalHeadOut {
	0% {
		visibility: visible;
		opacity: 1;
		-moz-transform: translateY(0) scale(1, 1);
		-ms-transform: translateY(0) scale(1, 1);
		-webkit-transform: translateY(0) scale(1, 1);
		transform: translateY(0) scale(1, 1)
	}

	100% {
		visibility: hidden;
		opacity: 0;
		-moz-transform: translateY(35px) scale(0.97, 0.97);
		-ms-transform: translateY(35px) scale(0.97, 0.97);
		-webkit-transform: translateY(35px) scale(0.97, 0.97);
		transform: translateY(35px) scale(0.97, 0.97)
	}
}

@media only screen and (max-width: 1199px) {
	.c-modal-overlay {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		background-color: #fff;
		opacity: 0;
		visibility: hidden;
		z-index: 900;
		-moz-transition: opacity .25s ease 0s, visibility .35s linear;
		-o-transition: opacity .25s ease 0s, visibility .35s linear;
		-webkit-transition: opacity .25s ease, visibility .35s linear;
		-webkit-transition-delay: 0s, 0s;
		transition: opacity .25s ease 0s, visibility .35s linear
	}

	.c-modal-overlay.state-show {
		opacity: .7;
		visibility: visible;
		-moz-transition-delay: 0s;
		-o-transition-delay: 0s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-moz-transition-duration: 0.2s, 0s;
		-o-transition-duration: 0.2s, 0s;
		-webkit-transition-duration: 0.2s, 0s;
		transition-duration: 0.2s, 0s
	}

	.c-modal-frame {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: 0;
		z-index: 1000;
		display: block;
		overflow: hidden;
		width: 100vw;
		height: 100vh;
		text-align: center;
		visibility: hidden
	}

	.c-modal-frame.state-appear {
		visibility: visible
	}

	.c-modal-frame.state-appear .c-modal {
		visibility: visible;
		display: block
	}

	.c-modal-frame.state-appear .c-modal-inset {
		-moz-animation: modalComeIn 0.25s ease;
		-webkit-animation: modalComeIn 0.25s ease;
		animation: modalComeIn 0.25s ease;
		visibility: visible
	}

	.c-modal-frame.state-appear .c-modal-body {
		opacity: 1;
		-moz-transform: translateY(0) scale(1, 1);
		-ms-transform: translateY(0) scale(1, 1);
		-webkit-transform: translateY(0) scale(1, 1);
		transform: translateY(0) scale(1, 1)
	}

	.c-modal-frame.state-leave {
		visibility: hidden
	}

	.c-modal-frame.state-leave .c-modal {
		visibility: hidden;
		display: none
	}

	.c-modal-frame.state-leave .c-modal-inset {
		-moz-animation: modalHeadOut 0.35s ease 0.1s;
		-webkit-animation: modalHeadOut 0.35s ease 0.1s;
		animation: modalHeadOut 0.35s ease 0.1s;
		visibility: visible
	}

	.c-modal-frame.state-leave .c-modal-body {
		opacity: 0;
		-moz-transition-delay: 0s;
		-o-transition-delay: 0s;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
		-moz-transition-duration: 0.35s;
		-o-transition-duration: 0.35s;
		-webkit-transition-duration: 0.35s;
		transition-duration: 0.35s;
		-moz-transition-timing-function: ease;
		-o-transition-timing-function: ease;
		-webkit-transition-timing-function: ease;
		transition-timing-function: ease;
		-moz-transform: translateY(25px);
		-ms-transform: translateY(25px);
		-webkit-transform: translateY(25px);
		transform: translateY(25px)
	}

	.c-modal {
		display: none;
		vertical-align: middle;
		text-align: center;
		visibility: hidden;
		width: 100vw;
		height: 100vh;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		z-index: 990;
		overflow: scroll;
		background-color: #fff
	}

	.c-modal-inset {
		padding: 0
	}

	.c-modal-inset__1 {
		background-image: url("/src/img/ourProjects/modal/modal1/modal_bg_01.jpg") no-repeat center;
		background-size: cover
	}

	.c-modal-inset__2 {
		background-image: url("/src/img/ourProjects/modal/modal2/modal_bg_02.jpg") no-repeat center;
		background-size: cover
	}

	.c-modal-inset__3 {
		background-image: url("/src/img/ourProjects/modal/modal3/modal_bg_03.jpg") no-repeat center;
		background-size: cover
	}

	.c-modal-inset__4 {
		background-image: url("/src/img/ourProjects/modal/modal4/modal_bg_04.jpg") no-repeat center;
		background-size: cover
	}

	.c-modal-inset__5 {
		background-image: url("/src/img/ourProjects/modal/modal5/bg-modal5-large.jpg") no-repeat center;
		background-size: cover
	}

	.c-modal-inset__contact-form {
		background-color: rgba(0, 5, 37, 0.749)
	}

	.c-modal-inset .c-button-close-top {
		width: 40px;
		top: 2.5rem;
		right: 2.5rem;
		z-index: 1000;
		opacity: 1
	}

	.c-modal-inset .c-button-close-top img {
		width: 40px;
		height: 40px;
		margin-bottom: 12.5px
	}

	.c-modal-inset .c-button-close-top span {
		font-size: 1rem;
		color: rgba(0, 5, 37, 0.5)
	}

	.c-modal-inset .c-button-close {
		top: 2.5rem;
		right: 2.5rem;
		z-index: 1000;
		opacity: 1;
		margin-bottom: 10rem
	}

	.c-modal-inset .c-button-close img {
		width: 40px;
		height: 40px;
		margin-bottom: 12.5px
	}

	.c-modal-inset .c-button-close span {
		font-size: 1rem;
		color: rgba(0, 5, 37, 0.5)
	}

	.c-modal-body {
		padding: 10.5rem 0 3rem 0;
		width: 100%
	}

	.c-modal-body h4 {
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-modal-body h3 {
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-modal-body .c-modal-body__app-description {
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-modal-body .c-modal-body__text-container {
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-modal-body .c-modal-body__extra-link {
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-modal-body__company-name {
		font-size: 1.3rem;
		margin-bottom: 15px
	}

	.c-modal-body__app-name {
		font-size: 2rem;
		margin-bottom: 32px
	}

	.c-modal-body__app-description {
		font-size: 1.5rem;
		margin-bottom: 48px;
		line-height: 2
	}

	.c-modal-body__image-container {
		overflow-x: scroll;
		width: 100vw;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		padding-bottom: 20px;
		margin-bottom: 40px
	}

	.c-modal-body__image-container::-webkit-scrollbar {
		display: none
	}

	.c-modal-body__image-container img {
		width: 13.5rem;
		margin-right: 31px
	}

	.c-modal-body__image-container img:first-child {
		margin-left: 2.5rem
	}

	.c-modal-body__app-english-name {
		font-size: 10rem;
		width: auto;
		word-break: normal;
		display: block;
		white-space: pre-wrap;
		word-wrap: break-word;
		overflow: hidden;
		text-align: left;
		top: 37rem;
		margin-left: 2rem
	}

	.c-modal-body__extra-link {
		margin-left: 0;
		-webkit-justify-content: flex-start;
		justify-content: flex-start
	}

	.c-modal-body__extra-link a {
		font-size: 1.5rem;
		color: #000525;
		text-decoration: none;
		border-bottom: 1px solid #000525;
		font-weight: bold
	}

	.c-modal-body__extra-link img {
		width: 1rem;
		margin-top: 0.3rem
	}

	.c-modal-body__text-container {
		width: 100%;
		padding: 50px 0;
		text-align: left;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap
	}

	.c-modal-body__text-container .container-left {
		min-width: 100%;
		max-width: 100%;
		margin-bottom: 29px
	}

	.c-modal-body__text-container .container-left span {
		font-size: 1.5rem
	}

	.c-modal-body__text-container .container-right {
		min-width: 100%;
		max-width: 100%;
		text-align: left
	}

	.c-modal-body__text-container .container-right__icons {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap
	}

	.c-modal-body__text-container .container-right__iconContainer {
		margin-bottom: 15px
	}

	.c-modal-body__text-container .container-right__iconContainer .white-circle {
		width: 5.3rem;
		height: 5.3rem;
		margin-right: 20px;
		background: #fff;
		border-radius: 50%
	}

	.c-modal-body__text-container .container-right__iconContainer .white-circle img {
		width: 1.14rem
	}

	.c-modal-body__text-container .container-right__iconContainer img {
		width: 5.3rem;
		height: 5.3rem;
		margin-right: 20px
	}

	.c-modal-body__text-container .container-right__iconContainer span {
		font-size: 1.3rem;
		font-weight: bold;
		line-height: 1.5
	}

	.c-modal-body__text-container .container-right__iconContainer .aws {
		width: 90%
	}

	.c-modal-body__text-container .container-right .type2 {
		min-width: 25.5rem
	}

	.c-modal-body__text-container .container-right__process {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		overflow-x: scroll;
		width: 100%
	}

	.c-modal-body__text-container .container-right__process .right-tri {
		display: none
	}

	.c-modal-body__text-container .container-right__process__block {
		width: calc((100% - 1.85rem) / 2);
		height: 4.35rem;
		margin-bottom: 1.85rem;
		font-size: 1.3rem;
		margin-right: 0
	}

	.c-modal-body__text-container .container-right__process__block:first-child {
		margin-right: 1.85rem
	}

	.c-modal-body__text-container .container-right__text-area p {
		font-size: 1.5rem;
		line-height: 2
	}
}

@media all and (min-width: 415px) and (max-width: 1199px) {
	.c-modal-inset .c-button-close-top img {
		margin-left: 6px
	}
}

.c-flow-tree {
	width: 100%;
	margin-top: 100px
}

.c-flow-tree__node {
	width: 100%;
	text-align: center;
	position: relative;
	vertical-align: top;
	opacity: 0
}

.c-flow-tree__node .dot-line__up {
	position: absolute;
	margin-top: 20px;
	width: 1px;
	height: 30px;
	background: #aaadb6;
	left: 50%
}

.c-flow-tree__node .dot-line__up:after {
	content: "";
	margin: -3px;
	display: block;
	width: 7px;
	height: 7px;
	background: #aaadb6;
	border-radius: 50%
}

.c-flow-tree__node .dot-line__down {
	position: absolute;
	margin-top: -2px;
	width: 1px;
	height: 22px;
	background: #aaadb6;
	left: 50%
}

.c-flow-tree__node .dot-line__right {
	position: static;
	margin-top: 0;
	margin-right: 25px;
	width: 142px;
	height: 1px;
	background: #aaadb6;
	left: 50%
}

.c-flow-tree__node .dot-line__right:after {
	content: "";
	margin: -3px 139px;
	display: block;
	width: 7px;
	height: 7px;
	background: #aaadb6;
	border-radius: 50%
}

.c-flow-tree__node .dot-line__left {
	position: static;
	margin-top: 0;
	margin-left: 25px;
	width: 142px;
	height: 1px;
	background: #aaadb6;
	left: 50%
}

.c-flow-tree__node .dot-line__left:after {
	content: "";
	margin: -3px 0 0 -3px;
	display: block;
	width: 7px;
	height: 7px;
	background: #aaadb6;
	border-radius: 50%
}

.c-flow-tree__start {
	padding-bottom: 47px
}

.c-flow-tree__start__text {
	display: block;
	color: #000525;
	font-size: 1.43rem;
	font-weight: bold
}

.c-flow-tree__left {
	padding-bottom: 20px
}

.c-flow-tree__left img {
	width: 89px;
	height: 89px
}

.c-flow-tree__left__label {
	position: absolute;
	top: 41px;
	right: calc(50% + 44px);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-start;
	align-items: flex-start
}

.c-flow-tree__left__label__content {
	font-size: 1.43rem;
	color: #000525;
	line-height: 1.5;
	font-weight: bold;
	text-align: left;
	margin-top: -0.7rem
}

.c-flow-tree__left__label__content span {
	font-size: 1rem;
	color: #000525;
	font-weight: normal
}

.c-flow-tree__right {
	padding-bottom: 20px
}

.c-flow-tree__right img {
	width: 89px;
	height: 89px
}

.c-flow-tree__right__label {
	position: absolute;
	top: 41px;
	left: calc(50% + 44px);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start
}

.c-flow-tree__right__label__content {
	font-size: 1.43rem;
	color: #000525;
	line-height: 1.5;
	font-weight: bold;
	text-align: left;
	margin-top: -0.7rem
}

.c-flow-tree__right__label__content.mtm1-7 {
	margin-top: -1.7rem
}

.c-flow-tree__right__label__content span {
	font-size: 1rem;
	color: #000525;
	font-weight: normal;
	white-space: pre-wrap
}

.c-flow-tree__end {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	flex-direction: column
}

.c-flow-tree__end__content {
	border: 1px solid #aaadb6;
	width: 630px;
	padding: 30px;
	text-align: center;
	vertical-align: top;
	margin: 0 0 20px 0
}

.c-flow-tree__end__content__title {
	font-size: 1.43rem;
	margin-bottom: 30px;
	font-weight: bold;
	color: #000525
}

.c-flow-tree__end__content__detail {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-evenly;
	justify-content: space-evenly;
	-webkit-align-items: flex-start;
	align-items: flex-start
}

.c-flow-tree__end__content__detailItem {
	width: 89px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	flex-direction: column
}

.c-flow-tree__end__content__detailItem img {
	width: 89px;
	height: 89px
}

.c-flow-tree__end__content__detailItem p {
	margin: 20px 0 0 0;
	font-size: 1.43rem;
	font-weight: bold;
	color: #000525;
	white-space: nowrap
}

.c-flow-tree__end__annotation {
	font-size: 1rem;
	color: #000525;
	font-weight: normal
}

@media only screen and (max-width: 1199px) {
	.c-flow-tree {
		width: 100%;
		margin-top: 100px
	}

	.c-flow-tree__node {
		width: 100%;
		text-align: center;
		position: relative;
		vertical-align: top;
		opacity: 0
	}

	.c-flow-tree__node .dot-line__right {
		display: none
	}

	.c-flow-tree__node .dot-line__left {
		display: none
	}

	.c-flow-tree__start__text {
		font-size: 1.5rem
	}

	.c-flow-tree__left img {
		width: 8rem;
		height: 8rem
	}

	.c-flow-tree__left__label {
		top: 30px;
		right: calc(50% + 62px)
	}

	.c-flow-tree__left__label__content {
		font-size: 1.4rem;
		white-space: nowrap
	}

	.c-flow-tree__left__label__content span {
		font-size: 1.1rem
	}

	.c-flow-tree__right img {
		width: 8rem;
		height: 8rem
	}

	.c-flow-tree__right__label {
		top: 30px;
		left: calc(48% + 57px)
	}

	.c-flow-tree__right__label__content {
		font-size: 1.4rem
	}

	.c-flow-tree__right__label__content.mtm1-7 {
		margin-top: -1.7rem
	}

	.c-flow-tree__end {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-direction: column;
		flex-direction: column;
		margin-bottom: 100px
	}

	.c-flow-tree__end__content {
		width: 100%;
		padding: 30px 23px;
		margin: 0 0 20px 0
	}

	.c-flow-tree__end__content__title {
		font-size: 1.5rem;
		margin-bottom: 30px
	}

	.c-flow-tree__end__content__detail {
		-webkit-justify-content: space-between;
		justify-content: space-between
	}

	.c-flow-tree__end__content__detailItem {
		width: 8rem
	}

	.c-flow-tree__end__content__detailItem img {
		width: 8rem;
		height: 8rem
	}

	.c-flow-tree__end__content__detailItem p {
		margin: 20px 0 0 0;
		font-size: 1.5rem;
		white-space: normal;
		line-height: 1.5
	}

	.c-flow-tree__end__annotation {
		width: 80%;
		font-size: 1.1rem;
		line-height: 2
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.c-flow-tree__left__label {
		top: 30px;
		right: calc(55% + 62px)
	}

	.c-flow-tree__right__label {
		top: 30px;
		left: calc(55% + 57px)
	}

	.c-flow-tree__end__content__detail {
		-webkit-justify-content: space-evenly;
		justify-content: space-evenly
	}
}

@media all and (max-device-width: 374px) {
	.c-flow-tree__start__text {
		font-size: 1.5rem
	}

	.c-flow-tree__left img {
		width: 7rem;
		height: 7rem
	}

	.c-flow-tree__left__label {
		top: 30px;
		right: 67%
	}

	.c-flow-tree__left__label__content {
		font-size: 1.3rem
	}

	.c-flow-tree__left__label__content span {
		font-size: 1.1rem
	}

	.c-flow-tree__right img {
		width: 7rem;
		height: 7rem
	}

	.c-flow-tree__right__label {
		top: 30px;
		left: 67%
	}

	.c-flow-tree__right__label__content {
		font-size: 1.3rem
	}

	.c-flow-tree__right__label__content span {
		font-size: 1.1rem
	}

	.c-flow-tree__end {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-direction: column;
		flex-direction: column
	}

	.c-flow-tree__end__content {
		width: 100%;
		padding: 30px 23px;
		margin: 0 0 20px 0
	}

	.c-flow-tree__end__content__title {
		font-size: 1.5rem;
		margin-bottom: 30px
	}

	.c-flow-tree__end__content__detail {
		-webkit-justify-content: space-between;
		justify-content: space-between
	}

	.c-flow-tree__end__content__detailItem {
		width: 7rem
	}

	.c-flow-tree__end__content__detailItem img {
		width: 7rem;
		height: 7rem
	}

	.c-flow-tree__end__content__detailItem p {
		margin: 20px 0 0 0;
		font-size: 1.5rem;
		white-space: normal;
		line-height: 1.5
	}

	.c-flow-tree__end__annotation {
		width: 80%;
		font-size: 1.1rem;
		line-height: 2
	}
}

.c-contact-section {
	position: relative;
	width: 100%;
	padding-left: 21rem;
	padding-right: 21rem;
	min-height: 1100px
}

.c-contact-section__title {
	color: #f3f5f5;
	position: absolute;
	top: 180px;
	left: -8rem;
	font-family: "WorkSans-ExtraBold", sans-serif;
	font-size: 80px;
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg)
}

.c-contact-section__hint {
	width: 100%;
	color: #000525;
	text-align: left;
	font-size: 16px;
	margin-bottom: 50px
}

.c-contact-form {
	width: 100%;
	margin: 0
}

.c-contact-form__material-form {
	padding: 7rem 10.5rem;
	background-color: #f3f5f5;
	font-family: "WorkSans-Bold", sans-serif
}

.c-contact-form__material-form .input-block {
	font-size: 1.43rem;
	font-weight: bold;
	background-color: #f3f5f5;
	border-bottom: solid 1px #c8c8c8;
	width: 100%;
	height: 50px;
	padding: 0;
	position: relative;
	margin-bottom: 20px;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out
}

.c-contact-form__material-form .input-block::before {
	content: '';
	position: absolute;
	left: 50%;
	width: 0%;
	bottom: 0;
	height: 2px;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	background-color: #000525
}

.c-contact-form__material-form .input-block.focus {
	border-color: #fff
}

.c-contact-form__material-form .input-block.focus label {
	color: #000525;
	top: 0;
	font-size: 13px
}

.c-contact-form__material-form .input-block.focus label sub {
	color: #ff6000 !important
}

.c-contact-form__material-form .input-block.focus::before {
	left: 0%;
	width: 100%
}

.c-contact-form__material-form .input-block.has-value {
	background-color: #f3f5f5
}

.c-contact-form__material-form .input-block.has-value label {
	top: 0;
	font-size: 13px
}

.c-contact-form__material-form .input-block.has-value label sub {
	color: #ff6000
}

.c-contact-form__material-form .input-block.error {
	border-color: #fff
}

.c-contact-form__material-form .input-block.error::before {
	left: 0%;
	width: 100%;
	background-color: #ff0000
}

.c-contact-form__material-form .input-block.textarea {
	height: auto
}

.c-contact-form__material-form .input-block.textarea .form-control {
	height: auto;
	resize: none;
	margin-top: 20px;
	font-family: "Yu Gothic", Arial, sans-serif;
	font-weight: bold
}

.c-contact-form__material-form .input-block.floating-field {
	padding: 2px 0 0;
	height: 62px
}

.c-contact-form__material-form .input-block.floating-field.textarea {
	height: auto
}

.c-contact-form__material-form .input-block label {
	position: absolute;
	left: 0;
	top: 29px;
	width: 100%;
	height: 20px;
	margin: 0;
	font-weight: 500;
	z-index: 1;
	color: #cfd0d0;
	font-size: 1.43rem;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	line-height: 16px;
	white-space: nowrap;
	overflow: hidden
}

.c-contact-form__material-form .input-block label sub {
	color: #ff6000
}

.c-contact-form__material-form .input-block .form-control {
	background-color: transparent;
	padding: 4px 0 0;
	border: none;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	height: 100%;
	width: 100%;
	position: relative;
	z-index: 2;
	font-size: 1.5rem;
	color: #000525;
	line-height: 2;
	margin-bottom: 10px;
	font-family: "Yu Gothic", Arial, sans-serif;
	font-weight: bold
}

.c-contact-form__material-form .input-block .form-control:focus {
	outline: none
}

.c-contact-form__material-form .input-block .form-control:focus label {
	top: 0
}

.c-contact-form__material-form .input-block .form-control:focus label sub {
	color: #ff6000
}

.c-contact-form__material-form .error-label {
	color: #ff0000;
	margin-top: -15px;
	font-size: 14px;
	margin-bottom: 10px;
	opacity: 0
}

.c-contact-form__button-container {
	margin-top: 60px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	width: 55%
}

.c-contact-form__button-container span {
	font-size: 1.43rem;
	font-family: "WorkSans-Bold", sans-serif;
	color: #000525;
	margin-right: 30px
}

.c-contact-form__button-container .flex-start {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center
}

.c-contact-form__button-container.flex-center {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center
}

.c-contact-form__button-container.w-100 {
	width: 100%
}

.c-contact-form__button-container .back-to-index {
	font-family: "WorkSans-SemiBold", sans-serif;
	margin-right: 15px
}

.c-contact-form__button-container.mb150PC50SP {
	margin-bottom: 150px
}

.c-contact-form__backBtn {
	cursor: pointer;
	width: 250px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center
}

.c-contact-form__backBtn .back-mark {
	color: #000525;
	font-size: 16px;
	margin-right: 15px
}

.c-contact-form__button {
	cursor: pointer;
	width: 60px;
	height: 60px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-transition: all .3s ease;
	-o-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	color: #fff;
	background-color: #000525;
	font-weight: bolder;
	font-size: 1.5rem;
	outline: none;
	border: 1px solid #000525
}

.c-contact-form__button:hover,
.c-contact-form__button:focus {
	background-color: #fff;
	outline: none;
	color: #000525
}

.c-contact-form__policy {
	margin-top: 60px;
	font-size: 1.43rem;
	color: #000525;
	font-weight: bold;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center
}

.c-contact-form__policy a {
	text-align: left;
	cursor: pointer;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin: 0 5px
}

.c-contact-form__policy a span {
	font-weight: bold;
	border-bottom: 1px solid transparent;
	margin-right: 2px;
	text-decoration: underline;
	text-decoration-color: #000525
}

.c-contact-form__policy a img {
	width: 17px
}

.c-contact-form__policy a:hover span {
	color: #000525;
	font-weight: bold
}

.c-checkbox {
	display: block;
	margin-top: 30px;
	text-align: center
}

.c-checkbox input {
	padding: 0;
	height: initial;
	width: initial;
	margin-bottom: 0;
	display: none;
	cursor: pointer
}

.c-checkbox label {
	font-family: "WorkSans-ExtraBold", sans-serif;
	position: relative;
	cursor: pointer;
	font-size: 1.142rem;
	font-weight: bold
}

.c-checkbox label:before {
	content: '';
	-webkit-appearance: none;
	background-color: transparent;
	border: 1px solid #c6c7c7;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 10px;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	cursor: pointer;
	margin-right: 14px;
	margin-bottom: 5px
}

.c-checkbox input:checked+label:after {
	content: '';
	display: block;
	position: absolute;
	top: -3px;
	left: 9px;
	width: 6px;
	height: 14px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg)
}

.c-checkbox input:checked+label:before {
	background: #000525
}

.grayColor label {
	color: #cfd0d0 !important
}

button[disabled],
html input[disabled] {
	cursor: no-drop
}

.c-contact__modal-top-hint {
	font-size: 1.43rem;
	color: #000525;
	font-weight: bold;
	text-align: left;
	margin-bottom: 40px
}

@media only screen and (max-width: 1199px) {
	.c-contact-section {
		position: relative;
		width: 100%;
		padding-left: 2.5rem;
		padding-right: 2.5rem
	}

	.c-contact-section__title {
		color: #000525;
		position: relative;
		top: 0;
		left: 0;
		font-family: "WorkSans-ExtraBold", sans-serif;
		font-size: 4rem;
		margin-bottom: 5rem;
		-moz-transform: rotate(0);
		-ms-transform: rotate(0);
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}

	.c-contact-section__hint {
		width: 100%;
		color: #000525;
		text-align: left;
		font-size: 16px;
		margin-bottom: 50px;
		line-height: 2
	}

	.c-contact-form {
		width: 100%;
		margin: 0
	}

	.c-contact-form__material-form {
		padding: 5rem 4rem
	}

	.c-contact-form__material-form .input-block {
		font-size: 1.5rem
	}

	.c-contact-form__material-form .input-block.textarea {
		height: auto
	}

	.c-contact-form__material-form .input-block.textarea .form-control {
		height: auto;
		resize: none;
		margin-top: 20px;
		font-family: "Yu Gothic", Arial, sans-serif
	}

	.c-contact-form__material-form .input-block .form-control {
		font-size: 1.5rem
	}

	.c-contact-form__policy {
		margin-top: 60px;
		font-size: 1.43rem;
		color: #000525;
		font-weight: bold;
		width: 100%;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center
	}

	.c-contact-form__policy a {
		margin: 16px 0;
		text-align: left;
		width: auto;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: flex-start;
		align-items: flex-start
	}

	.c-contact-form__policy a span {
		font-weight: bold;
		margin-right: 2px;
		border-bottom: 1px solid #000525
	}

	.c-contact-form__policy a img {
		width: 10px;
		margin-right: 5px
	}

	.c-contact-form__button-container {
		margin-top: 25px;
		width: 80%
	}

	.c-contact-form__button-container.mb150PC50SP {
		margin-bottom: 50px
	}

	.c-contact-form__button {
		cursor: pointer;
		width: 6rem;
		height: 6rem
	}

	.c-checkbox {
		text-align: left
	}

	.c-checkbox label {
		font-size: 1.5rem
	}

	.c-checkbox input:checked+label:after {
		top: -2px;
		left: 8px
	}
}

.c-contact-complete {
	font-size: 1.7rem
}

@media only screen and (max-width: 1199px) {
	.c-contact-complete p {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
		font-size: 1.5rem
	}
}

.p-recruit {
	width: 100%;
	position: relative;
	height: 100%;
	padding: 82px 0;
	margin-top: 70px;
	margin-bottom: 86px
}

.p-recruit__back-text {
	position: absolute;
	top: -1rem;
	left: 20px;
	z-index: 3;
	font-family: "WorkSans-ExtraLight", sans-serif;
	color: rgba(0, 5, 37, 0.05);
	font-size: 17.14rem
}

.p-recruit__member-list {
	z-index: 5;
	margin: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	padding-left: 12.75rem
}

.p-recruit__member {
	width: 23rem;
	margin-left: 5.7rem;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-direction: column;
	flex-direction: column;
	z-index: 5
}

.p-recruit__member-photo {
	position: relative;
	width: 100%;
	margin-bottom: 20px;
	cursor: pointer
}

.p-recruit__member-photo img {
	width: 100%
}

.p-recruit__member-photo:hover .p-recruit__photo-mask {
	opacity: 1
}

.p-recruit__photo-mask {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background-color: rgba(0, 5, 37, 0.749);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center
}

.p-recruit__photo-mask span {
	font-size: 15px;
	color: #ffffff;
	font-family: "WorkSans-Bold", sans-serif;
	margin-right: 8px
}

.p-recruit__photo-mask img {
	width: 13px;
	height: 13px
}

.p-recruit__extra-link {
	display: none
}

.p-recruit__member-name {
	font-family: "WorkSans-Bold", sans-serif;
	font-size: 1.43rem;
	color: #000525;
	line-height: 1.5;
	text-align: left
}

.p-recruit__member-title {
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 1rem;
	color: #c6c7c7;
	text-align: left
}

.p-recruit__hiring {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center
}

.p-recruit__hiring span {
	margin-right: 5rem;
	font-size: 1.43rem;
	font-weight: bold;
	color: #000525
}

.p-recruit__hiring__site {
	cursor: pointer;
	position: relative;
	width: 38.6rem
}

.p-recruit__hiring__site-photo {
	width: 100%
}

.p-recruit__hiring__site-photo:hover {
	opacity: 0.8
}

.p-recruit__hiring__link-icon {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 15px;
	height: 12px
}

.p-recruit__hiring__link-icon:hover {
	opacity: 0.8
}

@media only screen and (max-width: 1199px) {
	.p-recruit {
		width: calc(100vw - 2.5rem);
		position: relative;
		height: 100%;
		padding: 82px 0;
		margin-top: 70px;
		margin-bottom: 86px;
		overflow: scroll
	}

	.p-recruit__back-text {
		top: 43px;
		font-size: 7.5rem;
		left: 0
	}

	.p-recruit__member-list {
		width: 100%;
		overflow-x: scroll;
		z-index: 5;
		margin: 0;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		padding-bottom: 1rem;
		padding-right: 0;
		padding-left: 7.75rem
	}

	.p-recruit__member-list::-webkit-scrollbar {
		display: none
	}

	.p-recruit__member {
		width: 21rem;
		margin-left: 0;
		margin-right: 4rem;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-direction: column;
		flex-direction: column;
		z-index: 5
	}

	.p-recruit__member-photo {
		position: relative;
		width: 21rem;
		margin-bottom: 15px;
		cursor: pointer
	}

	.p-recruit__member-photo img {
		width: 100%
	}

	.p-recruit__photo-mask {
		display: none
	}

	.p-recruit__member-name {
		font-size: 1.5rem
	}

	.p-recruit__extra-link {
		width: auto;
		text-align: left;
		margin-top: 2rem;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-align-items: center;
		align-items: center;
		border-bottom: 1px solid #797d8d
	}

	.p-recruit__extra-link a {
		font-size: 1.5rem;
		color: #797d8d;
		text-decoration: none;
		padding: 1px 3px 0 0;
		font-weight: bold
	}

	.p-recruit__extra-link img {
		width: 1.2rem
	}

	.p-recruit__hiring {
		margin-top: 10rem;
		text-align: center
	}

	.p-recruit__hiring p {
		margin-right: 0;
		font-size: 1.5rem;
		text-align: center;
		color: #000525;
		margin-bottom: 25px;
		font-weight: bold
	}

	.p-recruit__hiring__site {
		width: 100%
	}

	.p-recruit__hiring__site-photo {
		width: 100%
	}

	.p-recruit__hiring__site-photo:hover {
		opacity: 1
	}

	.p-recruit__hiring__link-icon {
		position: absolute;
		top: 10px;
		right: 10px;
		width: 12.5px;
		height: 9.5px
	}

	.p-recruit__hiring__link-icon:hover {
		opacity: 1
	}
}

.p-company__office-view {
	width: 50%
}

.p-company__info {
	margin-left: 8.1rem;
	width: 50%
}

.p-company__info-item {
	font-family: "Yu Gothic", Arial, sans-serif;
	margin-bottom: 30px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	color: #000525
}

.p-company__info-item__left {
	width: 12.2rem;
	font-size: 1.15rem;
	text-align: left;
	font-weight: bold;
	line-height: 2
}

.p-company__info-item__right {
	font-size: 1.15rem;
	text-align: left;
	font-weight: normal;
	line-height: 2
}

.p-company__info-item__right a {
	display: inline;
	cursor: pointer;
	text-align: left;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center
}

.p-company__info-item__right a .link {
	font-weight: normal;
	border-bottom: none;
	margin-right: 2px;
	text-decoration: underline;
	text-decoration-color: #000525
}

.p-company__info-item__right a .send-mail {
	font-weight: normal;
	color: #000525;
	margin-right: 2px;
	text-decoration: underline;
	text-decoration-color: #000525
}

.p-company__info-item__right a img {
	margin-top: 0;
	margin-left: 3px;
	width: 15px
}

.p-company__info-item__right a:hover span {
	color: #000525;
	opacity: 0.7
}

.p-company__info-item__right img{
	vertical-align: middle;
}

.p-company__client {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 1082px;
	margin: auto
}

.p-company__client__circle {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: calc((100vw - 37rem) / 4);
	max-width: 270.5px;
	height: calc((100vw - 37rem) / 4);
	max-height: 270.5px;
	background-color: #fff;
	border: none;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%
}

.p-company__client__circle img {
	width: 55%
}

.p-company__big-logo {
	margin-top: 250px;
	margin-bottom: 150px;
	width: 100%;
	text-align: center
}

.p-company__big-logo img {
	width: 28.57rem
}

.p-company__copy-right {
	width: 100%;
	text-align: center;
	font-family: "WorkSans-SemiBold", sans-serif;
	font-size: 1rem;
	color: #c6c7c7;
	margin-bottom: 2rem
}

@media only screen and (max-width: 1199px) {
	.p-company__office-view {
		width: 100%;
		margin-left: -2.5rem
	}

	.p-company__info {
		margin-left: 0;
		width: 100%;
		margin-top: 5rem
	}

	.p-company__info-item {
		font-family: "Yu Gothic", Arial, sans-serif;
		margin-bottom: 3rem;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		color: #000525
	}

	.p-company__info-item__left {
		width: 100%;
		font-size: 1.5rem
	}

	.p-company__info-item__right {
		width: 100%;
		font-size: 1.5rem
	}

	.p-company__client {
		width: 100%;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		max-width: 541px
	}

	.p-company__client__circle {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		width: calc((100vw - 5rem) / 2);
		height: calc((100vw - 5rem) / 2);
		background-color: #fff;
		border: none;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%
	}

	.p-company__client__circle img {
		width: 60%
	}

	.p-company__client__title {
		font-size: 1.5rem;
		margin-bottom: 4rem
	}

	.p-company__big-logo {
		margin-top: 14.8rem;
		margin-bottom: 5rem;
		width: 100%;
		text-align: center
	}

	.p-company__big-logo img {
		width: 50%
	}

	.p-company__copy-right {
		font-size: 1.3rem
	}

	.p-company__page-top {
		width: 100%;
		text-align: center;
		margin-bottom: 5rem;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-direction: column;
		flex-direction: column
	}

	.p-company__page-top__circle {
		width: 60px;
		height: 60px;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		-moz-transition: all .3s ease;
		-o-transition: all .3s ease;
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		color: #fff;
		background-color: #000525;
		font-weight: bolder;
		font-size: 1rem;
		border: none;
		outline: none;
		z-index: 990
	}

	.p-company__page-top p {
		font-family: "WorkSans-Bold", sans-serif;
		font-size: 1.5rem;
		margin-top: 1.5rem;
		color: #000525
	}

	#big-logo {
		padding-bottom: 34px
	}
}

@media (min-width: 1023px) and (max-width: 1199px) {
	#big-logo {
		position: relative;
		margin-top: 100px;
		margin-bottom: 100px
	}
}

@media only screen and (min-width: 1680px) {
	#big-logo {
		position: relative;
		margin-top: 100px;
		margin-bottom: 100px
	}
}

@media only screen and (min-width: 1921px) {
	#big-logo {
		position: relative;
		margin-top: 300px;
		margin-bottom: 250px
	}
}
