html{
	height:100%; 
}
body{
	margin:0;
	padding:0;
	height:100%;
	font-feature-settings: "palt" 1;
	letter-spacing:0em;
	background:#fff;
	font-family:'Manrope', sans-serif;
	font-weight:300;
	color:#082621;
	font-size:16px;
	line-height:1.5;
}
body::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
body::-webkit-scrollbar-track {
	box-shadow:0; 
	border-radius:0;
}
body::-webkit-scrollbar-thumb{
	background: #082621;
	border-radius: 0;
}
body::-webkit-scrollbar-thumb:hover {
	background: #082621;
}
p {
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}
a{
	color:#082621;
	text-decoration: none;
}
main,header,footer,section,article,nav,div{
	padding:0;
	margin:0;
	box-sizing: border-box;
	position:relative;
}
h1{	
	font-family:'Manrope', sans-serif;
	font-weight:200;
	color:#082621;
}

@keyframes title-em{
	0%{opacity:0;}
	100%{opacity:1;}
}
p a{
	display:inline-block;
	text-decoration: none;
	position:relative;
}
p a::before{
	content:'';
	right:0;
	bottom:-5px;
	width:100%;
	height:1px;
	display:block;
	position:absolute;
	background: #082621;
	transition:all .3s ease;
}
p a:hover::before{
	width:0;
	right:0;
}
input,
textarea{
	-webkit-appearance: none !important;
	appearance: none;
	border-radius:0px;
	outline:none;
	background:#fff;
	font-size:16px;
}
input,
select{
	cursor:pointer;
	border-radius:0;
	-webkit-appearance: none !important;
	appearance: none !important;
	background:#fff;
	color:#082621;
	font-size:16px;
}
textarea{
	-webkit-appearance: none !important;
}
input:focus {
	color: #082621;
	border:none;
	font-weight:200;
}
input::placeholder{
    color:#dddfe3;
	font-weight:200;
}
input::-webkit-input-placeholder {
    color:#dddfe3;
	font-weight:200;
}
input::-moz-placeholder {
    color:#dddfe3;
	font-weight:200;
}
input::-ms-input-placeholder {
    color:#dddfe3;
	font-weight:200;
}
.blog-menu{
	position:relative;
	width:200px;
	background:yellow;
	margin:0 0 50px 0;
	padding:0;
}
.blog-menu::before{
	content:'';
	position:absolute;
	display:block;
	width:6px;
	height:6px;
	border-left:1px solid #082621;
	border-top:1px solid #082621;
	transform:rotate(-135deg);
	right:0;
	top:calc((100% - 6px)/2);
}
.blog-menu select{
	width:200px;
	outline:none;
	border:0;
	border-bottom:1px solid #082621;
	padding:10px 0 10px 0;
	font-size:100%;
	margin: 0;
	cursor:pointer;
	border-radius:0;
	-webkit-appearance: none !important;
	appearance: none !important;
}

header{
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	width:100%;
	height:100vh;
}
header.height-50{
	height:calc(50vh + 120px);
	padding:120px 0 0 0;
}
header.height-80{
	height:calc(80vh + 120px);
	padding:120px 0 0 0;
}
header.header-bg{
	background: no-repeat center/0% url("../img/headerbg.png");
	background-size:cover;
	background-attachment: fixed;
}
header.header-bg-service{
	background: no-repeat center/0% url("../img/servicebg.png");
	background-size:cover;
	background-attachment: fixed;
	height:80vh !important;
}
header.header-bg-project{
	background: no-repeat center/0% url("../img/projectbg.png");
	background-size:cover;
	background-attachment: fixed;
}
header .header-container{
	display:inline-block;
	width:auto;
	height:auto;
	max-width:50%;
	margin:0 auto;
	position:relative;
	flex-wrap:wrap;
	padding:0;
}
header .header-container h1{
	font-weight:200;
	font-family:'Manrope', sans-serif;
	line-height:1.25;
	padding:0;
	margin: 0 0 50px 0;
	font-size:45px;
}
header .header-container h1 span{
	margin:0;
	padding:0;
	display:inline-block;
}
header .header-container h1.width-100{
	width:100%;
	flex: 0 0 100%;
}
header .header-container p{
	margin:0;
	display:inline-block;
	padding:0;
	margin:0;
}
header .header-container p.width-100{
	width:100% !important;
}
header .header-container p b{
display:inline-block;
margin:0 0 25px 0;
font-size:150%;
font-style: normal;
font-weight:200;
}


header .header-container h1 span{
	width:auto;
	padding:0;
	margin:0;
	display:inline-block;
	text-align:left;
	overflow: hidden;
	line-height:1.25;

}
header .header-container h1 span em{
	display:inline-block;
	font-style: normal;
	position:relative;
	transform: translateY(210%);
	margin:0;
	padding:0;
	max-height:auto;
	line-height:1.0;
}

@keyframes header-em{
	0%{ transform: translateY(210%);}
	100%{ transform: translateY(0%);}
}



header .header-container h1 .header-link-box a label{
	display:inline-block;
	width:auto;
	position:relative;
}
header .header-container h1 .header-link-box a label::before{
	width:0%;
	height:1px;
	content:'';
	background: #082621;
	position:absolute;
	bottom:-5px;
	left:0;
	display:block;
	transition:all .3s ease-in-out;
}
header .header-container h1 .header-link-box a:hover > label::before{
	width:100%;
}
header .header-container h1 .header-link-box a i{
	width:30px;
	height:30px;
	display:inline-block;
	margin:0 15px 0 0;
	position:relative;
}
header .header-container h1 .header-link-box a i::before{
	content:'';
	width:35%;
	height:35%;
	display:block;
	position:absolute;
	top:32.5%;
	left:32.5%;
	border-top:1px #082621 solid;
	border-right:1px #082621 solid;
	transform: rotate(0deg);
	transition:all .2s ease;
}

header .header-container h1 .header-link-box a:hover > i::before{
	top:calc(32.5% - 3px);
	left:calc(32.5% + 3px);
}
header .header-container h1 .header-link-box a i::after{
	content:'';
	width:50%;
	height:1px;
	display:block;
	position:absolute;
	top:50%;
	left:25%;
	background:#082621;
	transform: rotate(-45deg);
	transition:all .2s ease;
}
header .header-container h1 .header-link-box a:hover > i::after{
	top:calc(50% - 3px);
	left:calc(25% + 3px);
}


header nav{
	position:fixed;
	z-index:999;
	top:0;
	left:0;
	display:flex;
	justify-content:center;
	align-items: center;
	align-content: center;
	width:100%;
	height:80px;
	margin:0;
	padding:0;
}
header nav .nav-container{
	flex:0 0 90%;
	width:90%;
	display:flex;
	justify-content:space-between;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	box-sizing: border-box;
}
header nav::before{
	content:'';
	color:#082621;
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	background:rgba(255,255,255,.5);
	backdrop-filter: blur(5px);
}
header nav .nav-container .logo{
	flex:0 0 calc(193px/1.5);
	padding:0;
	margin:0 0 0 0;
}
header nav .nav-container .logo img{
	width:100%;
	height:100%;
	padding:0;
	margin:0;
}
header nav .nav-container ul{
	flex: 0 0 calc(100% - 600px);
	display:flex;
	list-style-type: none;
}
header nav .nav-container ul li{
	flex: 0 0 20%;
	width:20px;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	position:relative;
	
}

header nav .nav-container ul li a{
	text-decoration: none;
	color:#082621;
	position:relative;
	display:inline-block;
	padding:0;
	margin:0;
	font-size:100%;
}
header nav .nav-container ul li.contact a{
	border:1px solid #082621;
	padding:16px 32px;
	transition:all .9s ease;
}
header nav .nav-container ul li.contact a:hover{
	background:#082621;
	color:#fff;
}
header nav .nav-container ul li.contact a::before{
	display:none;
}
header nav .nav-container ul li a:hover::before{
	width:100%;
}
header nav .nav-container ul li a::before{
	content:'';
	width:auto;
	display:block;
	height:1px;
	width: 0%;
	background: #082621;
	position:absolute;
	bottom:-5px;
	transition: all .3s ease-in-out;
}
header nav .nav-container ul li.selected a::before{
	width:100% !important;
}
header .img6,
header .img7{
	position:absolute;
	margin:0;
	padding:0;
}
header .img6{
	width:100%;
	height:100%;
	max-width:calc(563px/2);
	max-height:calc(844px/2);
	z-index:111;
	right:5%;
	bottom:10%;
}
header .img7{
	width:100%;
	height:100%;
	max-width:calc(499px/2);
	max-height:calc(333px/2);
	z-index:222;
	right:calc(563px/2);
	bottom:12.5%;
}
header .img6 img,
header .img7 img{
	width:100%;
	height:100%;
	display:block;
	margin:0;
	padding:0;	
}
main{
	display:flex;
	justify-content: center;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
section{
	flex:0 0 100%;
	width:100%;
	display:flex;
	justify-content: center;
	align-items: flex-start;
	align-content: flex-start;
	margin:0 0 70px 0;
	padding:80px 0 0 0;
}
section:last-child{
	margin:0 0 200px 0;
}
section.margin-0{margin:0 !important;}
section:nth-of-type(1){
	margin:20px 0 70px 0;
}
section.section-margin-first{
	margin:0px 0 0 0 !important;
	padding:100px 0 0 0;
}
section.section-margin-0{
	margin:0 !important;
	padding:0;
}
section.formlink1{
	background: no-repeat center/0% url("../img/formlink-bg1.png");
	background-size:cover;
	margin:0;
	padding:0;
}
section.formlink2{
	background: no-repeat center/0% url("../img/formlink-bg2.png");
	background-size:cover;
	margin:0;
	padding:0;
}
aside.pp-menu{
	flex: 0 0 calc(30% - 50px);
	margin:0;
	padding:0;
	display:block;
	position:sticky;
	top:100px;
}
aside.pp-menu ol{
	margin:0;
	padding:0;
	list-style-position: inside;
	list-style-type:decimal;
}
aside.pp-menu ol li{
	padding:0 0 15px 0px;
	font-size:90%;
}
aside.pp-menu ol li a{
	transition:.3s ease all;
}
aside.pp-menu ol li a:hover{
	opacity:.4;
}
article{
	flex:0 0 90%;
	width:90%;
	padding:0;
	margin:0;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
article.margin-top-50{
	margin:50px 0 100px 0
}
article h1{
	padding:0;
	margin:0 0 50px 0;
	line-height:1.5;
	text-align:left;
	position:relative;
	z-index:222;
}
article h1.margin-0{
	margin:0 0 0px 0;
}

article p{
	display:inline-block;
	padding:0;
	margin:0 0 50px 0;
}
article p span.pp{
	display:block;
	width:auto;
	margin: 50px 0 0 50px;
}
article p.padding-100{
	padding:100px 0 0 0;
	margin:0;
}
article p.pp-intro{
	padding:0;
	margin:0;
}
article p.margin-0{
	margin:0 !important;
}
article p.fontsize-280{
	font-size:280%;
	font-weight:200;
}
article p.font-125{
	font-size:125%;
}
article p:last-of-type{
	margin:0;
}
article p:first-of-type{
	margin:0 0 50px 0 !important;
}
article p:first-child{
	margin:0 0 50px 0 !important;
}
article p.width-80{
	width:80% !important;
}
article p.width-60{
	width:60% !important;
}
article p.margin-100{
	margin:0 0 100px 0;
}
article .article-container{
	height:auto;
	padding:0;
	margin:0;
}
article .article-container:last-child{
	margin:0;
}
article .article-40{
	flex:0 0 40%;
	width:40%;	
}
article .article-50{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);	
}
article .article-50-about{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);	
}
article .article-60{
	flex:0 0 60%;
	width:60%;	
}
article .article-70{
	flex:0 0 calc(70% - 50px);
}
article .article-100{
	flex:0 0 100%;
	width:100%;	
}
article .margin-0{
	margin:0;
}
article .margin-mob-50{
	margin:0 0 50px 0;
}
article .article-img1{
	width:calc(50% - 50px);
	flex:0 0 calc(50% - 50px);
	height:auto;
	margin:0;
	padding:0;
	position:relative !important;
	top:0;
	right:0;
}
.article-img1-container{
	display:block;
	position:relative;
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	top:0px;
}
article .article-img1 .article-img1-container span{
	display:block;
	position:relative;
	right:0;
	top:0px;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
}
article .article-img1 .article-img1-container span img{
	position:relative;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	top:0;
	left:0;
}
article .article-img2{
	top:-50px;
	right:0;
	display:block;
	position:absolute;
}
article .article-img5{
	top:-50px;
	right:0;
	display:block;
	position:absolute;
}
article .article-img5,
article .article-img2{
	width:100%;
	height:100%;
	max-width:calc(697px/2);
	max-height:calc(465px/2);
}
article .article-img2 .scroll-lines{
	left:-50px;
	top:-25px;
}
article .article-img5 .scroll-lines{
	left:-150px;
	top:170px;
}
article .article-img5 span,
article .article-img2 span{
	display:block;
	position:relative;
	width:100%;
	height:100%;
	max-width:calc(697px/2);
	max-height:calc(465px/2);
}
article .article-img2 span{
	left:-50px;
	top:-25px;
	z-index:111;
}
article .article-img5 span{
	left:-150px;
	top:170px;
	z-index:111;
}
article .article-img5 span img,
article .article-img2 span img{
	width:100%;
	height:auto;
	position:relative;
}
article .service-img-container{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
	position:relative;
	width:100%;
	margin:0;
	z-index:333;
	margin:0 0 100px 0;
	padding:0;
}
article .service-img-container:last-child{
	margin:0 !important;
}
article .service-img-container p{
	flex: 0 0 calc(50% - 50px);
	display:block;
	position:relative;
}  
article .service-img-container .service-img{
	flex: 0 0 calc(50% - 50px);
	display:block;
	position:relative;
	top:0px;
	margin:0;
	padding:0;
	width:auto;
	top:0px;
}
article .service-img-container .service-img span{
	width:100%;
	height:100%;
	display:block;
	position:relative;
	top:0px;
	margin:0;
	padding:0;
}
article .service-img-container .service-img span img{
	width:100%;
	height:auto;
}

article .blog-container{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	position:relative;
}
article .blog-container a{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
}
.blog-title{
	flex:0 0 100%;
	width:100%;
	display:flex;
	justify-content: center;
	align-self: center;
	align-content: center;
	align-items: center;
	margin:0 0 50px 0;
	padding:50px 0;
	box-sizing: border-box;
}
.blog-title span{
	display:none;
	padding:0;
	margin:0;
}
.blog-article-container{
	flex: 0 0 100%;
	width:100%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	position:relative;
}
.blog-article-container::after{
	content:"";
	display: block;
	width:30%;
  }
.blog-article-container .blog-article-box{
	width:30%;
	flex: 0 0 30%;
	margin: 0;
	opacity: 0;
	display:none;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out;
}
.blog-article-container .visible{
    display:block;
	animation: block-article-visible .3s ease forwards;
}

  @keyframes block-article-visible{
	0%{ display:block;opacity:0;visibility: visible;}
	100%{display:block;opacity:1;visibility: visible;}
}
.blog-article-container .blog-article-box:nth-of-type(3n){margin:0;}

.blog-article-container .blog-article-hidden-p1,
.blog-article-container .blog-article-hidden-p2,
.blog-article-container .blog-article-hidden-p3,
.blog-article-container .blog-article-hidden-p4,
.blog-article-container .blog-article-hidden-p5,
.blog-article-container .blog-article-hidden-p6,
.blog-article-container .blog-article-hidden-p7,
.blog-article-container .blog-article-hidden-p8,
.blog-article-container .blog-article-hidden-p9{
	display:none;
}

#blog-page2,
#blog-page3,
#blog-page4,
#blog-page5,
#blog-page6,
#blog-page7,
#blog-page8,
#blog-page9{display:none}

.blog-article-box .blog-thumbnail{
	width:100%;
	min-height:250px;
	max-width:100%;
	aspect-ratio: 1.62/1;
	padding:0;
	margin:0 0 25px 0;
	display:block;
	position:relative;
	overflow:hidden;
}
.blog-article-box .blog-thumbnail a{
	position:absolute;
	z-index:333;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
}
.blog-article-box .blog-thumbnail a:hover + img{
	transform:scale(1.025);
}
.blog-article-box .blog-thumbnail img{
	width:100%;
	height:100%;
	transition:all .3s ease;
}
.blog-title-container{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
	margin:0;
	padding:0;
}
.blog-title-container .subtitle{
	flex: 0 0 calc(100% - 75px);
	line-height:1.25;
	display:inline-block;
}
.blog-title-container .btn-link-arrow{
	flex: 0 0 50px;
}
#a01 {
	display:flex;
}
#a02,
#a03 {
	display:none;
}

article .partners-container{
	width:100vw;
	flex:0 0 100vw;
	left:-80px;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	border: 1px 0 solid #082621;
}
article .partners-container::after,
article .partners-container::before{
	content:'';
	height:1px;
	width:100%;
	left:0;
	background: #082621;
	position:absolute;
	display:block;
}
article .partners-container::before{
	top:0;
}
article .partners-container::after{
	bottom:0 !important;
}
article .partners-container .partners-box{
	width:33.333%;
	flex: 0 0 33.333%;
	border-right:1px solid #082621;
}
article .partners-container .partners-box:nth-child(3n){
	border:0;
}
article .partners-container .partners-box .partners-box-container{
	display: flex;
	justify-content: center;
	align-items: center;
	align-self: center;
	padding:50px;
	aspect-ratio: 1/1;
	box-sizing: border-box;
}
.partners-box .partners-box-container .partners-logo{
	background:#eef1f5;
	width:176px;
	height:62px;
	display:block;
}
article .team-container{
	flex: 0 0 calc((250px * 2) + (450px * 1));
	width:calc((250px * 2) + (450px * 1));
	margin:0;
	padding:0;
	position:relative;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
.team-container::-webkit-scrollbar {
	width: 3px;
	height: 3px;
}
.team-container::-webkit-scrollbar-track {
	box-shadow:0; 
	border-radius:0;
}
.team-container::-webkit-scrollbar-thumb{
	background: #082621;
	border-radius: 0;
}
.team-container::-webkit-scrollbar-thumb:hover {
	background: #082621;
}
.team-container .team-box{
	width:200px;
	flex: 0 0 200px;
	margin:0 50px 0 0;
	padding:0 0 50px 0;
}
article .team-container .empty,
article .team-container .empty{
	display:block;
}
.team-container .team-box:nth-of-type(6){
	position:relative;
	left:200px;
	margin:50px 0 0 0;
}
.team-box .team-box-img{
	width:100%;
	height:auto;
	margin:0 0 50px 0;
	padding:0;
}
.team-box .team-box-img img{
	width:100%;
	height:100%;
}
.team-box .team-box-name{
	width:100%;
	display:block;
	margin: 0 0 10 0;
}
.team-box .team-box-position{
	width:100%;
	display:block;
	opacity:.6;
	font-size:90%;
}
.team-container .hero{
	border:0px solid#082621;
	height:324px;
	display:flex;
	justify-content: center;
	align-items: flex-end;
	align-content: flex-end;
	flex-wrap:wrap;
	padding:25px;
	box-sizing: border-box;
}
.team-container .hero .hero-title{
	display:block;
	width:100%;
	font-size:150%;
	padding:0;
	margin:0 0 25px 0;
}
.team-container .hero i{
	width:50px;
	height:50px;
	position:absolute;
	top:25px;
	left:25px
}
.team-container .hero i::before{
	content:'';
	width:25px;
	height:25px;
	border-radius:50%;
	display:block;
	position:absolute;
	border:1px solid #082621;
	background:#fff;
	z-index:222;
}
.team-container .hero i::after{
	content:'';
	display:block;
	position:absolute;
	width:13px;
	height:1px;
	top:26px;
	left:-5px;
	background: #082621;
	transform: rotate(-45deg);
	z-index:111;
}

.team-container .hero .hero-text{
	display:block;
	padding:0;
	margin:0 !important;
}
article .clients-container{
	width:100%;
	flex:0 0 100%;
	position:relative;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	background:#fff;
	padding:0;
	margin:0;	
}
article .clients-container .clients-box{
	flex: 0 0 1;
	min-width:20%;
	aspect-ratio: 1/1;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	cursor:pointer;
}
article .clients-container .clients-box span{
	display:block;
	width:80px;
}
article .clients-container .clients-box span img{
	width:100%;
	height:100%;
}
article .clients-container .clients-box:hover > .line-left,
article .clients-container .clients-box:hover > .line-right{
	display:block;
	height:100%;
}
article .clients-container .clients-box:hover > .line-top,
article .clients-container .clients-box:hover > .line-bottom{
	display:block;
	width:100%;
}

article .clients-container .clients-box .line-right,
article .clients-container .clients-box .line-left,
article .clients-container .clients-box .line-top,
article .clients-container .clients-box .line-bottom{
	position:absolute;
	background:#082621;
	margin:0;
	padding:0;
	transition:all .3s ease-in-out;
}
article .clients-container .clients-box .line-right{
	width:1px;
	height:0%;
	top:0;
	right:0;
}
article .clients-container .clients-box .line-left{
	width:1px;
	height:0%;
	bottom:0;
	left:0;
}
article .clients-container .clients-box .line-top{
	width:0%;
	height:1px;
	top:0;
	right:0;
}
article .clients-container .clients-box .line-bottom{
	width:0%;
	height:1px;
	bottom:0;
	left:0;
}
article .formlink-container{
	width:100vw;
	height:100vh;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
}
.formlink-container .formlink-box{
	flex:100%;
	width:100%;
	position:relative;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	transition:all .3s ease-in-out;

}
.formlink-container .formlink-box a{
	display:inline-block;
	padding:30px 40px;
	margin:0 auto;
	position:relative;
}
.formlink-box.active a:hover > .line-left,
.formlink-box.active a:hover > .line-right{
	display:block;
	height:0%;
	opacity:0;
}
.formlink-box.active a:hover > .line-top,
.formlink-box.active a:hover > .line-bottom{
	display:block;
	width:0%;
	opacity:0;
}
.formlink-box a .line-right,
.formlink-box a .line-left,
.formlink-box a .line-top,
.formlink-box a .line-bottom{
	position:absolute;
	background:#082621;
	margin:0;
	padding:0;
	transition:all .3s ease-in-out;
}
.formlink2 .formlink-container .formlink-box a{
	color:#fff;
}

.formlink2 .formlink-box a .line-right,
.formlink2 .formlink-box a .line-left,
.formlink2 .formlink-box a .line-top,
.formlink2 .formlink-box a .line-bottom{
	background:#fff !important;
}
.formlink-box a .line-right{
	width:1px;
	height:0%;
	bottom:0;
	right:0;
}
.formlink-box.active a .line-right{
	animation: formlink-line-left .4s ease forwards;
	animation-delay:0.8s;
}
.formlink-box a .line-left{
	width:1px;
	height:0%;
	top:0;
	left:0;
}
.formlink-box.active a .line-left{
	animation: formlink-line-left .4s ease forwards;
	animation-delay:0;
}
.formlink-box a .line-top{
	width:0%;
	height:1px;
	top:0;
	right:0;
}
.formlink-box.active a .line-top{
	animation: formlink-line-top .4s ease forwards;
	animation-delay:1.2s;	
}
.formlink-box a .line-bottom{
	width:0%;
	height:1px;
	bottom:0;
	left:0;
}
.formlink-box.active a .line-bottom{
	animation: formlink-line-top .4s ease forwards;
	animation-delay:0.4s;
}
@keyframes formlink-line-left{
	0%{height:0}
	100%{height:100%}
}
@keyframes formlink-line-top{
	0%{width:0}
	100%{width:100%}
}

.formlink-container .formlink-box a span{
	position:relative;
	display:inline-block;
}
.formlink-container .formlink-box a span::before{
	content:'';
	height:1px;
	width:0%;
	background: #082621;
	bottom:-5px;
	display:block;
	left:0;
	position:absolute;
	transition:all .5s ease-in;
}
.formlink2 .formlink-container .formlink-box a span::before{
	background:#fff;
}
.formlink-container .formlink-box a:hover > span::before{
	width:100%;
}
article .clientslogo-container{
	flex:0 0 100%;
	width:100%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:nowrap;
	padding:0;
	margin:0;	
}
article .clientslogo-container .clientslogo-box{
	flex:1;
	display:flex;
	justify-content: center;
	align-items: center;
	align-self: center;
	align-content: center;
}
article .clientslogo-container .clientslogo-box .logo{
	width:100%;
	height:100%;
	max-width:80px;
	display:flex;
	justify-content: center;
	align-items: center;
	align-self: center;
	align-content: center;
}
article .clientslogo-container .clientslogo-box .logo img{
	width:100%;
	height:100%;
	display:block;
}
.clientslogo-container::-webkit-scrollbar {
	width: 3px;
	height: 3px;
}
.clientslogo-container::-webntslogokit-scrollbar-track {
	box-shadow:0; 
	border-radius:0;
}
.clientslogo-container::-webkit-scrollbar-thumb{
	background: #082621;
	border-radius: 0;
}
.clientslogo-container::-webkit-scrollbar-thumb:hover {
	background: #082621;
}
article .service-container{
	width:100%;
	flex:0 0 100%;
	margin:0;
	padding:0;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
article .service-container:first-child{
	padding:0;
	margin:0 0 0px 0;
}
article .service-container:last-child{
	padding:100px 0 0 0;
	margin:0 0 100px 0;
}
article .service-title{
	flex:0 0 100%;
	width:100%;
	margin:0 0 50px 0;
	padding:0;
}
.service-title h1{
	width:100%;
	position:relative;
	font-weight:200;
}

article .service-desc{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0;
	padding:0px 0 0 0;
}
article .service-desc-img{
	position:relative;
	width:100%;
}
article .service-desc-img span{
	display:block;
	margin:0;
	padding:0;
	width:100%;
}
article .service-desc-img span img{
	width:100%;
	display:block;
	margin:0;
	padding:0;
}
article .service-menu{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0;
	padding:0px 0 0 0;
	display:flex;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
	flex-wrap:wrap;
}
.service-menu .service-img-container{
	flex:0 0 45%;
	width:45%;
	position:relative;
}

.service-menu .service-box-container{
	flex:0 0 100%;
	width:100%;
	margin:0;
	padding:0;
}
.service-box-container .service-box{
	width:100%;
	position:relative;
	margin:0 0 25px 0;
	padding:0;
	border-bottom:1px solid #082621;
}
.service-box .service-box-title{
	width:100%;
	display:flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	margin:0 0 10px 0;
	padding:0;
	cursor:pointer;
}
.service-box-title .name{
	flex:0 0 calc(100% -(10px + 30px));
}
.service-box-title i{
	flex:0 0 25px;
	width:25px;
	height:25px;
	border:1px solid #082621;
	position:relative;
}
.service-box-title i::after,
.service-box-title i::before{
	content:'';
	width:50%;
	height:1px;
	display:block;
	position:absolute;
	top:calc((100% - 1px)/2);
	left:25%;
	background: #082621;
}
.service-box-title i::after{
	transform:rotate(90deg);
}
.service-box.active i::after{
	display:none;
}
.service-box .service-box-text{
	height:0;
	opacity:0;
	font-size:100%;
	color:#082621;
	margin:0px 0 0 0;
	padding:0;
	transition: all 0.5s ease;
}
.service-box.active .service-box-text{
	height:auto;
	opacity:1;
	margin:50px 0 0 0;
}
.service-box .service-box-text p{
	margin:0px 0 50px 0;
}
.projects-container{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	padding:0;
	margin:0;
}
.projects-container .projects-box{
	flex: 0 0 calc(50% - 50px);
	width: calc(50% - 50px);
	position:relative;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-self: flex-start;
	flex-wrap:wrap;
	margin:0 0 50px 0;
}
.projects-container .projects-box :nth-last-child(-2+X){
	margin:0 !important;
}

.projects-container .projects-box .projects-box-container{
	flex: 0 0 100%;
	width:100%;
	height:auto;
	position:relative;
}

.projects-container .projects-box .projects-box-thumbnail{
	width:100%;
	aspect-ratio: 2/1;
	margin:0;
	padding:0;
	position:relative;
	overflow:hidden;
}
.projects-container .projects-box .projects-box-thumbnail a{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:333;
}
.projects-container .projects-box .projects-box-thumbnail a:hover ~ span img{
	transform:scale(1.05);	
	transition: all .3s ease;
}
.projects-container .projects-box .projects-box-thumbnail img{
	aspect-ratio: 2/1;
	position:absolute;
	width:100%;
	height:auto;
}
.projects-container .projects-box .projects-box-container .projects-box-desc{
	position:relative;
	z-index:222;
	width:100%;
	top:100%;
	margin: 25px 0 0 0;
}
.projects-container .projects-box .projects-box-desc .company{
	width:100%;
	display:block;
}
.projects-container .projects-box .projects-box-desc .title{
	width:100%;
	display:block;
	margin: 0 0 25px 0;
}
article .review-container{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: flex-start;
	align-items: flex-end;
	align-content: flex-end;
	flex-wrap:nowrap;
	position:relative;
	margin:0;
	padding:0 0 50px 0;
	overflow-x:scroll;
}
.review-container::-webkit-scrollbar {
	width: 3px;
	height: 3px;
}
.review-container::-webkit-scrollbar-track {
	box-shadow:0; 
	border-radius:0;
}
.review-container::-webkit-scrollbar-thumb{
	background: #082621;
	border-radius: 0;
}
.review-container::-webkit-scrollbar-thumb:hover {
	background: #082621;
}
.review-container .review-box{
	flex: 0 0 450px;
	width:450px;
	border:0px solid #082621;
	padding:0px;
	box-sizing: border-box;
	margin:0 100px 0 0;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: stretch;
	flex-wrap:wrap;
}
.review-container .review-box .review-text{
	width:100%;
	flex: 0 0 100%;
	margin:0;
	padding:0 0 25px 0;
	border-bottom:1px solid #082621;
}
.review-container .review-box .review-text p{
	font-size:90%;
	margin:0 !important;
	padding:0!important;
}
.review-container .review-box .review-logo{
	width:75px;
	flex:0 0 75px;
	margin:15px 0 0 0;
	padding:0;
}
.review-container .review-box .review-logo img{
	width:100%;
	max-width:50px;
	height:auto;
}
.review-container .review-box .review-client{
	width:calc(100% - 75px);
	flex:0 0 (100% - 75px);
	margin:15px 0 0 0;
	padding:0;
	display:flex;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
}
.review-container .review-box .review-client p{
	font-size:80%;
	height:auto !important;
}

article .adviser-container{
	width:550px;
	flex:0 0 550px;
	margin:0;
	padding:0;
	display:flex;
	justify-content: flex-end;
}
.adviser-container .adviser-thumbnail{
	width:550px;
	height:340px;
	padding:0;
	margin:0 0 25px 0;
}
.adviser-container .adviser-thumbnail span{
	width:100%;
	height:100%;
	position:relative;
	top:0;
	left:0;
} 
.adviser-container .adviser-thumbnail span img{
	width:100%;
	height:100%;
	display:block;
}
.adviser-container .adviser-name{
	display:block;
	width:250px;
	padding:0;
	margin:0 0 50px 0;
}
article .mfmf-container{
	width:45%;
	flex:0 0 45%;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	position:relative;
	margin:0;
	padding:0;
}
article .mfmf-container p{
	flex:0 0 100%;
	width:100%;
	margin:0 0 50px 0;
	padding:0;
	display:block;
}
article .mfmf-container form{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	position:relative;
}

article .mfmf-container .mfmf-1, /* textarea */
article .mfmf-container .mfmf-2, /* name */
article .mfmf-container .mfmf-3, /* email */
article .mfmf-container .mfmf-4, /* tel number */
article .mfmf-container .mfmf-5, /* company name */
article .mfmf-container .mfmf-6  /* submit */{ 
	flex: 0 0 100%;
	width: 100%;
	margin: 0 0 25px 0;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
article .mfmf-container .mfmf-6{
	margin:25px 0 0 0 !important;
	display:flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	padding:0;
	height:60px;
}
article .mfmf-container .mfmf-1 textarea{
	outline:none;
	width:100%;
	height:240px;
	resize: none;
	border:1px solid #082621;
	font-size:100%;
}
article .mfmf-container input{
	width:100%;
	outline:none;
	border:0;
	border-bottom:1px solid #082621;
	height:auto;	
	font-size:100%;
}
article .mfmf-container .mfmf-6 .btn{
	flex: 0 0 auto;
	padding:0;
	margin:0;
	box-sizing: border-box;
	position:relative;
}
article .mfmf-container .mfmf-6 .agreement{
	flex: 0 0 calc(100% - 28px);
	width: calc(100% - 28px);
	padding:0 0 0 28px;
	margin:0;
	display:flex;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
	position:relative;
	box-sizing: border-box;
}
p#errorText{display:none;color:red;width:100%;}
input[type="checkbox"] { display: none; }

input[type="checkbox"] + label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 20px;
  color: #082621;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

input[type="checkbox"] + label:last-child { margin-bottom: 0; }

input[type="checkbox"] + label:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #082621;
  position: absolute;
  left: 0;
  top: 0;
  opacity: .6;
  -webkit-transition: all .12s, border-color .08s;
  transition: all .12s, border-color .08s;
}

input[type="checkbox"]:checked + label:before {
  width: 10px;
  top: -5px;
  left: 5px;
  border-radius: 0;
  opacity: 1;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}




article .mfmf-container .mfmf-6 .btn input{
	width:120px;
	flex: 0 0 auto;
	height:60px;
	color:#082621;
	padding:0;
	margin:0;
	border:0;
	border-bottom:0;
	cursor:pointer;
	background:#fff;
	transition:all .9s ease;
}
article .mfmf-container .mfmf-6 .btn label{
	position:absolute !important;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	height:auto;
	padding:1.14em 2em;
	width:100%;
	top:0;
	left:0;
	transition:all .9s ease;
}
article .mfmf-container .mfmf-6 .btn label:hover{
	background:#082621;
	color:#fff;
}

article .newsletter-container{
	width:50%;
	flex:0 0 50%;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
article .newsletter-container p{
	margin: 0 0 50px 0;
	display:block;
	width:100%;
}

.newsletter-container .newsletter-form{
	width: 100%;
	flex: 0 0 100%;
	margin:0 0 50px 0;
}
.newsletter-container .newsletter-form input#emailaddress{
	width:100%;
	max-width:450px;
	border:none;
	outline: none;
	border-bottom:1px solid #082621;
    height:30px;
	box-sizing: border-box;
	font-size:100%;
	font-weight:lighter;
	margin:0 0 50px 0;
	cursor:pointer;
}
.newsletter-container .newsletter-form .btn{
	width:auto;
	height:50px;
	margin: 0 0 25x 0;

}
.newsletter-container .newsletter-form .btn label{
	position:absolute;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	height:60px;
	width:120px;
	top:0;
	left:0;
}
.newsletter-container .newsletter-form .btn input.btn-register{
	border:1px solid #082621;
	width:120px;
	padding:0 40px;
	box-sizing: border-box;
	font-weight:200 !important;
	font-size:100%;
	height:60px;
	border:0;
	cursor:pointer;
	transition:all .2s ease;
}

article .blog-container{
	width:100%;
	flex:0 0 100%;
}

article .blog-container .blog-box{
	flex:0 0 100%;
	width:100%;
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	padding:0;
	margin:0 0 50px 0;
	border-bottom:1px solid #082621;
}
article .blog-container .blog-box:last-child{
	margin:0;
}
.blog-box .blog-box-container{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
	flex-wrap:wrap;
	padding:50px 0;
}
.blog-box .blog-box-container:nth-child(1){
	padding:0 0 50px 0;
}
.blog-box .blog-box-container .blog-box-thumbnail{
	flex: 0 0 500px;
	width:500px;
	margin:0;
	padding:0;
}
.blog-box .blog-box-container .blog-box-thumbnail img{
	width:100%;
	height:100%;
	max-height:250px;
	aspect-ratio: 2/1;
}
.blog-box .blog-box-container .blog-box-desc{
	display:flex;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
.blog-box .blog-box-container .blog-box-desc .blog-box-desc-text{
	flex:0 0 100%;
	width:100%;
	height:calc(250px - 60px);
	display:flex;
	justify-content: flex-start;
	align-items: flex-end;
	align-content: flex-end;
	flex-wrap:wrap;
	margin:50px 0 0 0;
}
.blog-box-desc-text .blogtitle{
	flex:0 0 100%;
	width:100%;
	font-weight:400;
	margin:0 0 25px 0;
	padding:0;
	display:block;
}
.blog-box-desc-text p{
	flex:0 0 100%;
	width:100%;
	margin:0;
	padding:0;
	display:block;
}
.blog-box .blog-box-container .blog-box-data{
	flex: 0 0 100%;
	width:100%;
	display:flex;
	justify-content: end;
	padding:0;
	margin:0;
}
.blog-box .blog-box-container .blog-box-data p{
	display:block;
	position:absolute;
	right:0;
	bottom:-45px;
	font-size:90%;
	margin:0;
	padding:0;
}
article .projectbox-container{
	width:100%;
	flex:0 0 100%;
	display:flex;
	justify-content: space-between;
	align-items: stretch;
	align-content: stretch;
	flex-wrap:wrap;
	position:relative;
}
article .projectbox-container a{
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
}
article .projectbox-container .projectbox-linkbox,
article .projectbox-container .projectbox-box{
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	padding:0;
	margin:0 100px 100px 0;
	box-sizing: border-box;
}
article .projectbox-container .projectbox-box .text-link{
	justify-content: flex-start;
}
article .projectbox-container .projectbox-box:last-child{
	margin:0 0 100px 0;
}
.projectbox-box .desc{
	flex:0 0 100%;
	width: 100%;
	padding:0px 25px 0 0;
	margin:0;
}
.projectbox-box .desc .title{
	width:100%;
	display:block;
	margin:0 0 10px 0;
	padding:0;
}
.projectbox-box .desc p{
	width:100%;
	display:block;
	margin:0 0 25px 0 !important;
	padding:0;
}
.projectbox-box .thumbnail{
	flex:0 0 100%;
	width: 100%;
	height:350px;
	max-width:100%;
	max-height:350px;

	overflow:hidden;
	position:relative;
	margin: 0 0 50px 0;
}
.projectbox-box .thumbnail a{
	position:absolute;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.projectbox-box .thumbnail span{
	display:block;
	position:relative;
	width:100%;
	height:auto;
}
.projectbox-box .thumbnail span img{
	display:block;
	width:100%;
	height:100%;
	border:0;
}
article .servicebox-container{
	width:80%;
	flex:0 0 80%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
}
article .servicebox-container .childbox{
	border:0px solid #082621;
	padding:50px;
	box-sizing: border-box;
	position:relative;
	margin:0;
	aspect-ratio: 1/1;

}
article .servicebox-container .childbox:nth-of-type(1)::before{
	content:'';
	display:block;
	position:absolute;
	top:0%;
	left:0%;
	width:100%;
	height:100%;
	background: no-repeat center/0% url("../img/servicebox-bg1.png");
	background-size:cover;
	z-index:-1;
	transition:all .1s ease-in-out;
}
article .servicebox-container .childbox:nth-of-type(1):hover::before{
	top:1%;
	left:1%;
	width:101%;
	height:101%;
}
article .servicebox-container .childbox:nth-of-type(1)::after{
	background:rgba(255,255,255,.85);
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	content:'';
	z-index:0;
	backdrop-filter: 5px;
	transition:all ease-in-out .5s;
}
article .servicebox-container .childbox:nth-of-type(1):hover::after{
	background:rgba(255,255,255,.4);
	backdrop-filter: 0px;
}

article .servicebox-container .childbox:nth-of-type(2){

}
article .servicebox-container .childbox:nth-of-type(2)::before{
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background: no-repeat center/0% url("../img/servicebox-bg2.png");
	background-size:cover;
	z-index:-1;
	transition:all .1s ease-in-out;
}
article .servicebox-container .childbox:nth-of-type(2):hover::before{
	top:1%;
	left:1%;
	width:101%;
	height:101%;
}

article .servicebox-container .childbox:nth-of-type(2)::after{
	background:rgba(255,255,255,.85);
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	content:'';
	z-index:0;
	backdrop-filter: 5px;
	transition:all ease-in-out .5s;
}
article .servicebox-container .childbox:nth-of-type(2):hover::after{
	background:rgba(255,255,255,.4);
	backdrop-filter: 0px;
}
article .servicebox-container .childbox .childbox-thumbnail{
	display:none;
	width:100%;
	height:auto;
	position:relative;
	z-index:0;
	margin:0 0 25px 0;
}
article .servicebox-container .childbox .childbox-thumbnail img{
	width:100%;
	height:auto;
}
article .servicebox-container .childbox .title{
	display:block;
	line-height:1.25;
	width:100%;
	margin:0 0 25px 0;
	position:relative;
	z-index:3;
}
article .servicebox-container .childbox p{
	display:block;
	width:100%;
	margin: 0 0 25px 0;
	padding:0;
	position:relative;
	z-index:3;
	font-size:90%;
}
article .servicebox-container .childbox .btn-link{
	position:relative;
	z-index:555;
}
footer{
	width:100%;
	min-height:50vh;
	display:flex;
	justify-content: center;
	align-items: flex-start;
	align-content: flex-start;
	border-top:1px solid #082621;
}
footer .footer-container{
	flex:0 0 90%;
	height:100%;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	padding:50px 0 0 0;
	box-sizing: border-box;
}
footer .footer-container .footer-leftbox{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0px 0 50px 0;
	padding:0;
}
footer .footer-container .footer-rightbox{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0px 0 50px 0;
	padding:0;
}
footer .footer-container .footer-menubox{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0 0 50px 0;
	position:relative;
	bottom:0;
	right:0;
}
footer .footer-container .footer-menubox .sns{
	position:absolute;
	display:flex;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
	padding:0;
	margin:0;
}
footer .footer-container .footer-menubox .sns .instagram,
footer .footer-container .footer-menubox .sns .linkedin{
	flex: 0 0 40px;
} 
footer .footer-container .footer-menubox .sns .instagram a,
footer .footer-container .footer-menubox .sns .linkedin a{
	text-decoration: none;
}
footer .footer-container .footer-menubox .sns .instagram a img,
footer .footer-container .footer-menubox .sns .linkedin a img{
	width:20px;
	height:20px;
}
footer .footer-container .footer-menubox ul{
	list-style-type: none;
	list-style-position: inside;
	display:flex;
	justify-content: flex-end;
	align-items: flex-start;
	align-content: flex-start;
	flex-wrap:wrap;
	padding:0;
	margin:0;
}
footer .footer-container .footer-menubox ul li{
	flex:0 0 auto;
	padding:0 25px;
	margin:0;
	box-sizing: border-box;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
}
footer .footer-container .footer-menubox ul li:last-child{
	padding:0 0 0 25px;
}
footer .footer-container .footer-menubox ul li.email{
	font-size:90%;
}
footer .footer-container .footer-menubox ul li a{
	display:block;
	width:100%;
	height:100%;
	font-size:90%;
	font-style: normal;
}
footer .footer-container .footer-copybox{
	flex:0 0 calc(50% - 50px);
	width:calc(50% - 50px);
	margin:0 0 0 0;
	padding:0;
}
footer .footer-container .footer-copybox p{
	font-size:80%;
	width:100%;
	display:inline-block;
	text-align:left;
}
footer .footer-container .footer-rightbox input{
	outline:none;
	border:none;
}
footer .footer-container .footer-rightbox .btn{
	width:auto;
	height:50px;
	margin: 0 0 100px 0;

}
footer .footer-container .footer-rightbox .btn input#footer-btn-register{
	width:120px;
	height:60px;
	border:0;
	padding:0 40px;
	margin: 0 0 25px 0;
	position:relative;
	transition:all .2s ease;
}
footer .footer-container .footer-rightbox .btn input#footer-btn-register:hover{
	background:#082621;
	color:#fff;
}
footer .footer-container .footer-rightbox .btn label{
	position:absolute;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	height:auto;
	padding:1em 2em;
	top:0;
	left:0;
}
footer .footer-container .footer-rightbox input#footer-emailaddress{
	width:80%;
	height:50px;
	border-bottom:1px solid #082621;
	margin:0 0 25px 0;
	font-size:100%;
}

footer .footer-container .footer-rightbox .title{
	font-weight:200;
	line-height:1.5;
	margin:0 0 50px 0;
	display:block;
	width:100%;
}
footer .footer-container .footer-leftbox p{
	margin:0;
	padding:0;
	font-weight:200;
}
.btn label{
	transition:all .9s ease;
	cursor:pointer;
}
.btn label:hover{
	background:#082621;
	color:#fff;
}
.btn label .line-top,
.btn label .line-left,
.btn label .line-bottom,
.btn label .line-right{
	position:absolute;
	display:block;
	background:#082621;
	transition:all 0.2s ease;
}
.btn label  .line-top{
	width:100%;
	height:1px;
	top:0;
	left:0;
	transition:all 0.3s ease;
}
.btn label .line-left{
	width:1px;
	height:100%;
	top:0;
	left:0;
}
.btn label .line-bottom{
	width:100%;
	height:1px;
	bottom:0;
	right:0;
}
.btn label .line-right{
	width:1px;
	height:100%;
	bottom:0;
	right:0;
}
.btn label:hover > .line-bottom{
	width:0;
}

.btn label:hover > .line-top{
	width:0;
}

.btn label:hover > .line-left{
	height:0;
}

.btn label:hover > .line-right{
	height:0;
}
.btn-link{
	display:block;
	position:relative;
	z-index:222;
	width:100%;
	height:auto;
	margin:0;
}
.btn-link a{
	height:100%;
	display:inline-block;
	box-sizing:border-box;
	padding:1.14em 2em;
	text-decoration: none;
	position:relative;
}
.btn-link a span{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	color: #082621;
}
.btn-link .line-top,
.btn-link .line-left,
.btn-link .line-bottom,
.btn-link .line-right{
	position:absolute;
	display:block;
	background:#082621;
	transition:all 0.2s ease;
}
.btn-link .line-top{
	width:100%;
	height:1px;
	top:0;
	left:0;
	transition:all 0.3s ease;
}
.btn-link .line-left{
	width:1px;
	height:100%;
	top:0;
	left:0;
}
.btn-link .line-bottom{
	width:100%;
	height:1px;
	bottom:0;
	right:0;
}
.btn-link .line-right{
	width:1px;
	height:100%;
	bottom:0;
	right:0;
}
.btn-link a:hover > .line-bottom{
	width:0;
}

.btn-link a:hover > .line-top{
	width:0;
}

.btn-link a:hover > .line-left{
	height:0;
}

.btn-link a:hover > .line-right{
	height:0;
}



.btn-link-arrow{
	display:block;
	position:relative;
	width:100%;
	height:60px;
	margin:0;
}
.btn-link-arrow-right{
	display:flex !important;
	justify-content: flex-end !important;
	align-items: flex-start !important;
	align-content: flex-start !important;
}

.btn-link-arrow a{
	width:50px !important;
	height:50px !important;
	display:block;
	box-sizing:border-box;
	padding:0;
	margin:0;
	text-decoration: none;
	position:relative;
}
.btn-link-arrow a::before{
	content:'';
	width:35%;
	height:35%;
	display:block;
	position:absolute;
	top:32.5%;
	left:32.5%;
	border-top:1px #082621 solid;
	border-right:1px #082621 solid;
	transform: rotate(0deg);
	transition:all .2s ease;
}

.btn-link-arrow a:hover::before{
	top:calc(32.5% - 3px);
	left:calc(32.5% + 3px);
}
.btn-link-arrow a::after{
	content:'';
	width:50%;
	height:1px;
	display:block;
	position:absolute;
	top:50%;
	left:25%;
	background:#082621;
	transform: rotate(-45deg);
	transition:all .2s ease;
}
.btn-link-arrow a:hover::after{
	top:calc(50% - 3px);
	left:calc(25% + 3px);
}

.btn-link-arrow .line-top,
.btn-link-arrow .line-left,
.btn-link-arrow .line-bottom,
.btn-link-arrow .line-right{
	position:absolute;
	display:block;
	background:#082621;
	transition:all 0.2s ease;
}
.btn-link-arrow .line-top{
	width:100%;
	height:1px;
	top:0;
	left:0;
	transition:all 0.3s ease;
}
.btn-link-arrow  .line-left{
	width:1px;
	height:100%;
	top:0;
	left:0;
}
.btn-link-arrow .line-bottom{
	width:100%;
	height:1px;
	bottom:0;
	right:0;
}
.btn-link-arrow .line-right{
	width:1px;
	height:100%;
	bottom:0;
	right:0;
}
.btn-link-arrow a:hover > .line-bottom{
	width:0;
}

.btn-link-arrow a:hover > .line-top{
	width:0;
}

.btn-link-arrow a:hover > .line-left{
	height:0;
}

.btn-link-arrow a:hover > .line-right{
	height:0;
}
.blog-article-box:hover{
	cursor:pointer;
}
.blog-article-box:hover > .blog-title-container .btn-link-arrow a .line-top,
.blog-article-box:hover > .blog-title-container .btn-link-arrow a .line-bottom{
	width:0;
}
.blog-article-box:hover > .blog-title-container .btn-link-arrow a .line-left,
.blog-article-box:hover > .blog-title-container .btn-link-arrow a .line-right{
	height:0;
}
.blog-box-thumbnail:hover + .blog-box-desc .btn-link-arrow a .line-top,
.blog-box-thumbnail:hover + .blog-box-desc .btn-link-arrow a .line-bottom{
	width:0;
}
.blog-box-thumbnail:hover + .blog-box-desc .btn-link-arrow a .line-left,
.blog-box-thumbnail:hover + .blog-box-desc .btn-link-arrow a .line-right{
	height:0;
}
.projects-box-thumbnail:hover + .projects-box-desc .btn-link-arrow a .line-bottom,
.projects-box-thumbnail:hover + .projects-box-desc .btn-link-arrow a .line-top{
	width:0;
}
.projects-box-thumbnail:hover + .projects-box-desc .btn-link-arrow a .line-right,
.projects-box-thumbnail:hover + .projects-box-desc .btn-link-arrow a .line-left{
	height:0;
}
.text-link{
	width:100%;
	flex: 0 0 100%;
	padding:0;
	margin:0;
	display:flex;
	justify-content: flex-end;
	align-items: flex-start;
	align-content: flex-start;
	position:relative;
}
.text-link-center{
	justify-content: center !important;
}
.text-link-padding50{
	padding:50px 0 !important;
}
.text-link a{
	position:relative !important;
	width:  auto !important;;
	flex:0 0 auto !important;;
	display:inline-block !important;;
	text-decoration:none;
	padding:0 0 3px 0;
	margin:0;
	overflow:hidden;
	transition:all .3s ease-in-out;
}
.text-link a::before{
	content:'';
	display:block;
	width:100%;
	height:1px;
	background:#082621;
	position:absolute;
	bottom:1px;
	left:0;
	padding:0;
	margin:0;
	transition:all .3s ease-in-out;
}
.text-link a:hover::before{
	width:100%;
	left:100%;
}
.text-link a span{
	color: #082621;
	position:relative;
}

.fade-in-up {
	opacity:0;
	animation: fadeInUp .6s ease forwards; /* 1秒間のアニメーションで、イージング関数「ease」を使用して最後までアニメーションを保持 */
}
@keyframes fadeInUp {
	from {
	  opacity: 0;
	  transform: translateY(20px); /* Y軸方向に20px上に移動 */
	}
	to {
	  opacity: 1;
	  transform: translateY(0); /* 元の位置に戻る */
	}
  }
.fadeIn {
  opacity: 0;
}
.fadeIn.active {
  animation: fadeIn 1.0s linear forwards;
}

@keyframes fadeIn {
	0% {
	  opacity: 0;
	}
	30% {
	  opacity: 0;
	}
	100% {
		opacity: 1;
	  }
  }
.scroll-lines2,
.scroll-lines{
	position:absolute;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
} 
.scroll-line-left,  
.scroll-line-right,
.scroll-line-bottom,  
.scroll-line-top{
	display:block;
	position:absolute;
	background: #082621 !important;
	z-index:333;
}
.scroll-line-left{
	top:0;
	left:0;
}  
.scroll-line-right{
	bottom:0;
	right:0;
}
.scroll-line-bottom{
	left:0;
	bottom:0;
}
.scroll-line-top{
	top:0;
	right:0;
}
.scroll-line-left,  
.scroll-line-right {
  width:1px;
  height:0;
}
.scroll-lines2.active > .scroll-line-right,
.scroll-lines2.active > .scroll-line-left{
	animation: scroll-line-height2 0.8s ease-in-out forwards;
}
.scroll-lines.active > .scroll-line-right,
.scroll-lines.active > .scroll-line-left{
	animation: scroll-line-height 0.8s ease-in-out forwards;
}
@keyframes scroll-line-height {
	0% {height:0;opacity:1;}
	19% {opacity: 1;}
	20% {opacity: 1;}
	80%{height:100%;opacity:0;}
	81%{height:100%;opacity:0;}
	100% {height:100%;opacity: 0;}
}
@keyframes scroll-line-height2 {
	0% {height:0;opacity:1;}
	19% {opacity: 1;}
	20% {opacity: 1;}
	80%{height:100%;opacity:1;}
	81%{height:100%;opacity:1;}
	100% {height:100%;opacity: 1;}
}
.scroll-line-bottom,  
.scroll-line-top{
  opacity: 0;
  width:0;
  height:1px;
}
.scroll-lines2.active > .scroll-line-top,
.scroll-lines2.active > .scroll-line-bottom{
  animation: scroll-line-width2 0.8s ease-in-out forwards;
}
.scroll-lines.active > .scroll-line-top,
.scroll-lines.active > .scroll-line-bottom{
  animation: scroll-line-width 0.8s ease-in-out forwards;
}
@keyframes scroll-line-width {
	0% {opacity: 0;}
	19% {opacity: 1;}
	20% {opacity: 1;}
	80%{width:100%;opacity:0;}
	81%{width:100%;opacity:0;}
	100% {opacity: 0;}
  }
  @keyframes scroll-line-width2 {
	0% {opacity: 1;}
	19% {opacity: 1;}
	20% {opacity: 1;}
	80%{width:100%;opacity:1;}
	81%{width:100%;opacity:1;}
	100% {width:100%;opacity: 1;}
}

#cookie{
	min-height:100px;
	width:100%;
	position:fixed;
	display:flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	bottom:0;
	left:0;
	z-index:999;
	padding:25px;
	box-sizing: border-box;
	margin:0;
	background:rgba(255,255,255,.9);
	backdrop-filter: blur(5px);
	border-top:1px solid #082621;
}
#cookie p{
	flex: 0 0 80%;
	margin:0;
	padding:0;
	display:inline-block;
} 
#cookie-agree{
	display:flex;
	justify-content: center;
	align-items: center;
	align-self: center;
	width:110px;
	height:55px;
	padding:auto 40px;
	border:1px #082621 solid;
	transition:all .3s ease-in-out;
}
#cookie-agree:hover{
	background:#082621;
	color:#fff;
	cursor:pointer;
}

#mobile-nav{
	display:none;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap:wrap;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#fff;
	z-index:999;
	padding:10px;
	box-sizing: border-box;
}
.mobile-nav-container{
	display:flex;
	flex-wrap:wrap;
	align-items: flex-start;
	align-content: flex-start;
	width:100%;
	height:100%;
}
.mobile-nav-container .logo{
	flex:0 0 100%;
	width:193px;
	height:31px;
	display:block;
	position:absolute;
	bottom:0px;
	margin: 0;
	padding:0;
}
.mobile-nav-container .logo img{
	width:100%;
	height:100%;
	max-width:calc(193px/2);
	max-height:calc(31px/2);
}
.mobile-nav-container ul{
	padding:0;
	margin:75px 0 0 0;
	list-style-type: none;
}
.mobile-nav-container ul li{
	padding:20px 0px;
	margin:0;
	width:auto;
	font-size:120%;
	position:relative;
}

.mobile-nav-container ul li.delay-01{
	animation-delay:0.025s;
}
.mobile-nav-container ul li.delay-02{
	animation-delay:0.050s;
}
.mobile-nav-container ul li.delay-03{
	animation-delay:0.075s;
}
.mobile-nav-container ul li.delay-04{
	animation-delay:0.1s;
}
.mobile-nav-container ul li.delay-05{
	animation-delay:0.25s;
}
.mobile-nav-container ul li.contact{
	width:100%;
	height:40px;
	padding:0;
	display:flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	padding:0;
	border-bottom:1px solid #082621;
	margin:25px 0 0 0;
	padding:0 0 5px 0;

}
.mobile-nav-close{
	display:block;
	position:fixed;
	width:30px;
	height:30px;
	top:10px;
	left:10px;
	border:0px solid #082621;
	cursor:pointer;
}
.mobile-nav-close .line-top,
.mobile-nav-close .line-bottom,
.mobile-nav-close .line-left,
.mobile-nav-close .line-right{
	display:block;
	background: #082621;
	position:absolute;
	margin:0;
	padding:0;
}
.mobile-nav-close .line-top,
.mobile-nav-close .line-bottom{
	width:0%;
	height:1px;
}
.mobile-nav-close .line-left,
.mobile-nav-close .line-right{
	width:1px;
	height:0%;
}
.mobile-nav-close .line-top{
	top:0;
	right:0;
	animation: nav-line-top .4s ease forwards;
	animation-delay:.9s;
}
.mobile-nav-close .line-bottom{
	bottom:0;
	left:0;
	animation: nav-line-top .4s ease forwards;
	animation-delay:.3s;
}
.mobile-nav-close .line-right{
	bottom:0;
	right:0;
	animation: nav-line-left .4s ease forwards;
	animation-delay:.6s;
}
.mobile-nav-close .line-left{
	top:0;
	left:0;
	animation: nav-line-left .4s ease forwards;

}
@keyframes nav-line-left {
	0% {height:0;}
	100% {height:100%;}
}
@keyframes nav-line-top {
	0% {width:0;}
	100% {width:100%;}
}
.mobile-nav-close span:nth-of-type(1){
	width:60%;
	height:1px;
	top:calc((100% - 1px)/2);
	left:20%;
	background: #082621;
	display:block;
	position:absolute;
	transform:rotate(45deg);
}
.mobile-nav-close span:nth-of-type(3){
	width:60%;
	height:1px;
	top:calc((100% - 1px)/2);
	left:20%;
	background: #082621;
	display:block;
	position:absolute;
	transform:rotate(-45deg);
}
#mobile-nav-btn{
	display:none;
	position:fixed;
	width:30px;
	height:30px;
	top:10px;
	left:10px;
	border:0px solid #082621;
	cursor:pointer;
	z-index:9999;
}
#mobile-nav-btn span:nth-of-type(1){
	width:60%;
	height:1px;
	top:calc(((100% - 1px)/2) - 5px);
	left:20%;
	background: #082621;
	display:block;
	position:absolute;
}
#mobile-nav-btn span:nth-of-type(2){
	width:60%;
	height:1px;
	top:calc((100% - 1px)/2);
	left:20%;
	background: #082621;
	display:block;
	position:absolute;
}
#mobile-nav-btn span:nth-of-type(3){
	width:60%;
	height:1px;
	top:calc(((100% - 1px)/2) + 5px);
	left:20%;
	background: #082621;
	display:block;
	position:absolute;
}
.mobile-nav-fadein{
	display:flex !important;
	animation: nav-fadein .3s linear forwards;
}
  
  @keyframes nav-fadein {
	  0% {
		opacity: 0;
		display:flex;
	  }
	  100% {
		  opacity: 1;
		  display:flex;
		}
	}
.mobile-nav-fadeout{
	animation: nav-fadeout 1s linear forwards;
}
@keyframes nav-fadeout {
	0% {
		
	  opacity: 1;
	}
	100% {
		opacity: 0;
	  }
  }

.thankyou{
	display:block;
	margin:0 auto 150px auto;
	width:60%;
	padding:50px;
	border:#082621 1px solid;
}
.thankyou .main{
	display:block;
	margin:0 0 25px 0;
  }
  .thankyou .btn-link{
	margin: 0 0 50px 0;
	display:flex;
	justify-content: center;
  }
  .thankyou .message{
	display:block;
	padding:50px 0 0 0;
	margin:0 0 50px 0;
	border-top:1px solid #082621;
  }
.thankyou .name,
.thankyou .email,
.thankyou .phone,
.thankyou .company{
	display:block;
	padding:0;
	margin:0 0 25px 0;
  }
.thankyou .company{
	margin:0;
}

