html {
	-webkit-font-smoothing: antialiased;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	font-weight: 400;
	font-style: normal;
	font-family: "Roboto", sans-serif;
	line-height: 1.2500;/*20px*/
	font-size: 1.000em;/*16px*/
	color: #1c1c1c;
}

.container {
	width: 100%;
	padding: 0 15px;
	max-width: 1220px;
	box-sizing: border-box;
	word-wrap: break-word;
	position: relative;
	margin: auto;
	z-index: 1;
}

body .full-width-inside-container {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}

::selection {
	background-color: #1f4912;
	color: #fff;
}

* {
	box-sizing: border-box;
	outline: none;
}

*:focus {
	outline: none
}

*::-moz-focus-inner {
	outline: none;
	border: 0
}

a {
	color: #5dc269
}

a:hover {
	text-decoration: none;
	color: #403062;
}

p {line-height: 1.5em}

.heading {
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
	padding-bottom: 15px;
	position: relative;
	color: #000;
}

.heading::before {
	width: 100px;
	height: 5px;
	background-color: #5F7D31;
	transform: translateX(-50%);
	position: absolute;
	content: "";
	left: 50%;
	bottom: 0;
}

h1{
	width: 100%;
	margin: 0 0 20px;
	line-height: 1.0416;/*50px*/
	font-size: 3.000em;/*48px*/
	font-weight: 600;
}
h2 {
	width: 100%;
	margin: 0 0 20px;
	line-height: 1.0416;
	font-size:2.250em;/*48px*/
	font-weight: 600;
}
h3{
	line-height: 1.2916;/*31px*/
	font-size: 1.500em;/*24px*/
	font-weight: 600;
}

.heading h1,
.heading h2 {
	margin: 0;
	line-height: 1.1;
}

.bgImg {
	width: 100%;
	height: 100%;
	position: absolute;
	line-height: 0;
	left: 0;
	top: 0;
}

img {
	max-width: 100%
}

.bgImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}


label {
	display: block;
	margin-bottom: 5px;
	font-family: "Lato", Arial, Helvetica, sans-serif;
}

.contactForm label {
	display: none
}

/* input[type="email"],
input[type="date"],
input[type="search"],
input[type="number"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select{
	width: 100%;
	padding:15px;
	height: var(--form-height);	
	font-family: "Open Sans", sans-serif;
	border: var(--form-brd-width) solid var(--form-brd-color);
	border-radius: var(--form-brd-radius);
	background-color: var(--form-bg);
	color: var(--form-color);
	transition: border-color .5s ease;
	vertical-align: middle;
	font-size:0.875em;
} */
textarea {
	overflow: auto;
	min-height: 150px;
}

@media screen and (max-width:1220px) {
	body {
		font-size: 1.1475409836065573vw
	}
}

@media screen and (max-width:767px) {
	body {
		font-size: 13px;
		overflow-x: hidden;
	}

	h1,
	h2 {
		margin-bottom: 15px;
		font-size: 2.000em;
	}
}

/********************************/
/*******      HEADER      *******/
/********************************/
#header {
	width: 100%;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .08);
	background-color: #f3f3f3;
	position: sticky;
	display: block;
	z-index: 99999;
	left: 0;
	top: 0;
}

#header .container {
	position: static;
	justify-content: right;
	align-items: center;
	flex-wrap: wrap;
	display: flex;
}

.logo {
	margin-right: auto;
	display: inline-block;
	line-height: 0;
	z-index:2;
}

.logo img {
	width: auto;
	height: 45px;
}

.menuTop {
	width: 100%;
	height: 60px;
	padding: 0 20px;
	position: relative;
	background-color: #FFF;
	justify-content: space-between;
	align-items: center;
	display: none;
}

.menuOpen,
.menuClose {
	width: 30px;
	height: 30px;
	font-size: 0;
	line-height: 0;
	background: none;
	position: relative;
	cursor: pointer;
	z-index: 1000;
	display: none;
	border: none;
	padding: 0;
	margin: 0;
}

.menuOpen {
	width: 24px;
	height: 22px;
	margin-left: 15px;
}

.menuOpen span,
.menuOpen span::after,
.menuOpen span::before {
	width: 24px;
	height: 4px;
	content: "";
	display: block;
	background-color: #000;
	border-radius: 10px;
	position: absolute;
	left: 0;
	top: 9px;
}

.menuOpen span::after {
	top: -8px;
}

.menuOpen span::before {
	top: 8px;
}

.menuClose svg {
	width: 100%;
	height: auto;
	color: #000;
}

.opener {
	width: 50px;
	height: 50px;
	border-left: 1px solid rgb(0, 0, 0, 0.105);
	position: relative;
	display: none;
}

.opener::after {
	width: 7px;
	height: 7px;
	margin: -4px 0 0 -4px;
	border-right: 1px solid #242424;
	border-bottom: 1px solid #242424;
	transition: all 0.15s ease-in-out;
	-webkit-transition: all 0.15s ease-in-out;
	transform-origin: 66% 66%;
	transform: rotate(45deg);
	pointer-events: none;
	position: absolute;
	display: block;
	content: '';
	left: 50%;
	top: 50%;
}

.menu {
	justify-content: center;
	align-items: center;
	overflow: inherit;
	list-style: none;
	flex-wrap: wrap;
	display: flex;
	gap: 0 30px;
	padding: 0;
	margin: 0;
}

.menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.menu li {
	position: relative;
	font-weight: 600;
}

.menu li a {
	color: #1c1c1c;
	font-size: 1.000em;/*16px*/
	text-decoration: none;
	display: block;
}

.menu>li>a {
	line-height: 68px
}

.menu>li:last-child a {
	padding: 0 15px;
	background-color: #5F7D31;
	border-radius: 4px;
	line-height: 44px;
	color: #fff;
}

.menu>li:before {
	transform: scaleX(0);
	border-bottom: 3px solid #5dc269;
	;
	transition: transform .25s;
	position: absolute;
	content: "";
	z-index: -1;
	opacity: 1;
	bottom: 0;
	right: 0;
	left: 0;
}

.menu>li:hover:before {
	transform: scaleX(1);
	transition: transform .25s;
	z-index: 1
}

.menu>li:last-child:before {
	display: none;
}

.menu .sub-menu {
	width: 290px;
	padding: 16px 4px;
	top: calc(100% + 8px);
	background-color: #fff;
	transition: all 0.5s ease;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
	border-radius: 4px;
	visibility: hidden;
	position: absolute;
	flex-wrap: wrap;
	display: flex;
	z-index: -9;
	opacity: 0;
	left: 0;
}

.menu .sub-menu:before {
	width: 100%;
	height: 10px;
	display: block;
	position: absolute;
	content: "";
	top: -9px;
	left: 0;
}

.menu li:hover>.sub-menu {
	visibility: visible;
	z-index: 99;
	opacity: 1;
}

.menu .sub-menu li {
	width: 100%
}

.menu .sub-menu li a {
	line-height: 19px;
	padding: 14px 25px;
}

.menu .sub-menu li:hover a {
	background-color: #f0f0f0
}

.nav-search-form {
	margin-left: 15px;
	padding-left: 55px;
	border-left: 1px solid #d1d2d3;
	position: relative;
}

.searchOpen {
	width: 44px;
	height: 44px;
	margin: 8px 15px 8px 0;
	background: url(../images/search.png) no-repeat center center;
	border-radius: 4px;
	cursor: pointer;
	display: none;
	border: none;
	padding: 0;
}

.searchOpen:hover {
	background-color: #ececec;
}

.nav-search-btn {
	width: 24px;
	height: 24px;
	cursor: pointer;
	background: url(../images/search.png) no-repeat left center;
	transform: translateY(-50%);
	position: absolute;
	border: none;
	padding: 0;
	margin: 0;
	left: 15px;
	top: 50%;
}

.nav-search-form input[type="search"] {
	width: 100%;
	height: 68px;
	border: none;
	background-color: transparent;
	line-height: 68px;
	font-size: 1.000em;/*16px*/
	color: #808080;
	padding: 0;
	margin: 0;
}

.myArannayk {
	display: block;
	text-decoration: none;
	line-height: 1.0416;
	font-size: 14px;
	font-weight: 600;
	color: #5F7D31;
	margin-left: 16px;
}
.menuBox .myArannayk {display:none}


@media screen and (max-width:991px) {
	.nav-search-form input[type="search"] {width: 100px}
}

@media screen and (min-width:768px) {
	#header .container {
		position: relative
	}

	.logo {
		padding: 10px;
		overflow: hidden;
		box-shadow: 0 3px 5px 0 rgba(91, 92, 97, 0.2);
		border-radius: 0 0 10px 10px;
		background-color: #fff;
		position: absolute;
		left: 15px;
		top: 0;
	}

	.logo img {
		height: 75px
	}
}

@media screen and (max-width:767px) {
	#header {
		font-size: 14px
	}

	#header .container {
		justify-content: space-between;
		padding: 0;
	}

	.logo {
		margin-right: 0
	}

	.menuTop {
		display: flex
	}

	.menuOpen,
	.menuClose {
		display: block
	}

	.menuBox {
		width: 300px;
		height: 100vh;
		transition: all 0.5s ease;
		position: fixed;
		left: -100%;
		top: 0;
	}

	.menuBox.show {
		z-index: 9999;
		left: 0;
	}

	.menuBox::before {opacity: 0}

	.menuBox.show::before {
		width: 100vw;
		height: 100vh;
		transition: all 0.5s ease;
		background-color: rgba(0, 0, 0, 0.7);
		position: fixed;
		content: '';
		z-index: 0;
		opacity: 1;
		right: 0;
		top: 0;
	}

	.menuBox.show::after {
		width:300px;
		height: 100vh;
		background-color:#fff;
		position:absolute;
		content: '';
		z-index:1;
		left: 0;
		top: 0;
	}

	.menu-item-has-children>.opener {display: flex;}
	.menu-item-has-children:last-child>.opener {display:none}

	.menu {
		max-height: calc(100% - 100px);
		border-top: 1px solid rgb(0, 0, 0, 0.105);
		background-color: #fff;
		position: relative;
		overflow-y: scroll;
		display: block;
		z-index: 2;
	}

	.menu .sub-menu {
		width: 100%;
		transform: none;
		box-shadow: none;
		position: relative;
		visibility: visible;
		border-radius: 0;
		display: none;
		padding: 0;
		opacity: 1;
		z-index: 9;
		left: 0;
		top: 0;
	}

	.menu .opene+.sub-menu {
		display: block
	}

	.menu li li .sub-menu {
		transform: none;
		left: 0;
		top: 0;
	}

	.menu li {
		width: 100%;
		border-top: 1px solid rgb(0, 0, 0, 0.105);
		line-height: 20px;
		font-weight: 600;
		font-size: 13px;
		padding: 0;
		z-index: 1;
	}

	.menu>li:last-child {
		padding: 30px;
		text-align: center;
	}

	.menu>li:first-child {
		border-top: none
	}

	.menu .sub-menu li {
		padding: 0;
		line-height: 20px;
	}

	li.menu-item-has-children {
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
		display: flex;
	}

	li.menu-item-has-children::after {
		display: none
	}

	.menu li a {
		padding: 15px 20px;
		color: #000;
	}

	.menu>li>a {
		line-height: 20px;
	}

	li.menu-item-has-children>a {
		width: calc(100% - 50px)
	}

	.menu .sub-menu li a {
		padding: 15px 20px
	}
	.myArannayk {display:none}
	.menuBox .myArannayk {
		text-align: center;
		position: relative;
		display:block;
		z-index: 2;
		margin: 0;
	}
}

@media screen and (max-width:767px) {
	.nav-search-btn,
	.nav-search-form {
		width: 100%;
		padding: 0 15px;
		border-left: none;
		background-color: #fff;
		border-top: 1px solid #d1d2d3;
		display: none;
		margin: 0;
	}

	.nav-search-form.open,
	.searchOpen {display:block}

	.nav-search-form input[type="search"] {
		width: 100%;
		height: 56px;
		line-height: 56px;
	}
}

/********************************/
/*******      FOOTER      *******/
/********************************/
.footer {
	width: 100%;
	padding: 20px 0 0;
	background-color: #1f4912;
	color: #fff;
}

.footer a {
	color: #fff;
	text-decoration: none;
}

.ftrLogo {
	display: inline-block;
	line-height: 0;
}

.ftrLogo img {
	width: auto;
	height: 45px;
}

.ftrMid {
	width: 100%;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #fff;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	display: flex;
}

.ftrIn {
	width: 25%;
	margin-bottom: 20px;
}

.ftrTitle {
	width: 100%;
	display: block;
	font-weight: 700;
	padding-bottom: 10px;
	line-height: 1.300;/*26px*/
	font-size: 1.429em;/*20px*/
}

.footer ul {
	width: 100%;
	list-style: none;
	flex-wrap: wrap;
	display: flex;
	padding: 0;
	margin: 0;
	gap: 6px;
}

.footer li {
	width: 100%;
}

.telMail,
.footer p,
.footer li {
	margin: 0;
	line-height: 1.25;/*20px*/
	font-size: 1.000em;/*16px*/
}

.telMail {
	width: 100%;
	padding-top: 10px;
}

.telMail a {
	align-items: center;
	display: flex;
	gap: 10px;
}

.scialMedia {
	width: 100%;
	align-items: center;
	flex-wrap: wrap;
	display: flex;
	gap: 15px;
}

.scialMedia a {
	display: block;
	line-height: 0;
}

.scialMedia svg {
	width: auto;
	height: 24px;
}

.ftrBtn {
	width: 100%;
	margin-top: 15px;
	align-items: center;
	flex-wrap: wrap;
	display: flex;
	gap: 15px;
}

.donateBtn,
.involvedBtn {
	padding: 0 15px;
	border-radius: 4px;
	background-color: #D78C3A;
	line-height: 2.75;/*44px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	display: block;
	color: #000;
}

.copyright {
	width: 100%;
	padding: 16px 0;
	background: #1a3c10;
}

.copyright p {
	margin: 0
}

.copyright a {
	display: inline-block;
	font-weight: 600;
}

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

/********************************/
/*********    Banner    *********/
/********************************/
.banner .slick-arrow {
	width: 78px;
	height: 92px;
	border: none;
	text-indent: -10000px;
	margin-top: -23px;
	cursor: pointer;
	position: absolute;
	z-index: 5;
	top: 50%;
}

.banner .slick-prev {
	background: url(../images/banner/slider-left.png) no-repeat left 20px center;
	left: 0;
}

.banner .slick-next {
	background: url(../images/banner/slider-right.png) no-repeat right 20px center;
	right: 0;
}

.banner .slick-arrow:hover {
	background-color: rgba(0, 0, 0, 0.5)
}

.banner .slick-prev:hover {
	transform: translateX(-5px)
}

.banner .slick-next:hover {
	transform: translateX(5px)
}

.banner .slick-dots {
	width: 100%;
	padding: 0 15px;
	max-width: 1220px;
	position: absolute;
	flex-wrap: wrap;
	display: flex;
	bottom: 30px;
	margin: auto;
	gap: 6px;
	right: 0;
	left: 0;
}

.banner .slick-dots button {
	width: 40px;
	height: 3px;
	cursor: pointer;
	background-color: hsla(0, 0%, 100%, .4);
	line-height: 0;
	font-size: 0;
	border: none;
	padding: 0;
	margin: 0;
}

.banner .slick-active button {
	background-color: #fff
}

.banner {
	width: 100%;
	overflow: hidden;
	position: relative;
	color: #fff;
}

.banner ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.banner .slick-slide {
	width: 100%;
	position: relative;
}

.bnrBg {
	width: 100%;
	height:620px;
	background-color: #000;
	line-height: 0;
}
.shortBanner .bnrBg {height:15vw}
.shortBanner .bnrBg.noimg {background-color: #1f4912}

.shortBanner.bnrheight .bnrBg,
.shortBanner.bnrheight .bnrBg.noimg {height: 620px}

.banner img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	opacity: 0.5;
}

.banner .container {
	transform: translate(-50%, -50%);
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 50%;
}

.shortBanner .bnrText {
	width: 100%;
	text-align: center;
}

.shortBanner h1{
	padding-bottom: 20px;
	border-bottom:1px solid #fff;
}

.bnrTitle{
	display: block;
	padding-bottom: 10px;
	line-height: 1.2916;/*31px*/
	font-size: 1.500em;/*24px*/
}
.banner p {
	margin: 0 0 20px;
	line-height: 1.400;/*28px*/
	font-size: 1.250em;/*20px*/
}

.banner span {
	display: block;
	line-height: 1.500;/*24px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
}

.bnrBtn {
	padding: 0 15px;
	border-radius: 4px;
	display: inline-block;
	text-decoration: none;
	background-color: #D78C3A;
	font-family: inherit;
	line-height: 2.375;/*38px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	color: #000;
}

@media screen and (min-width:768px) {
	.banner .container {
		max-width: 1340px;
		padding: 0 75px;
	}

	.bnrText {
		width: 50%;
	}
}

@media screen and (max-width:767px) {
	.banner .container {
		transform: none;
		position: static;
		background-color: #fff;
		padding: 15px 15px 30px;
	}

	.banner img {
		opacity: 0.7;
	}

	.banner .slick-slide {
		color: #000;
	}

	.banner .slick-dots {
		justify-content: center;
	}

	.banner .slick-dots button {
		background-color: rgba(0, 0, 0, .4)
	}

	.banner .slick-active button {
		background-color: #000
	}
	.bnrBg {height: 100%;}/* 280 / 360 */
	.shortBanner.bnrheight .bnrBg,
	.shortBanner.bnrheight .bnrBg.noimg,
	.shortBanner .bnrBg {height:55vw}
	.shortBanner .container {
		padding: 15px;
		position: absolute;
		transform: translate(-50%, -50%);
		background-color: transparent;
	}
	.banner .slick-dots {bottom: 15px}
	.shortBanner p {margin: 0}
}

/********************************/
/*******   videoScreen    *******/
/********************************/
.videoScreen {
	width: 100%;
	position: relative;
	overflow: hidden;
}

.videoScreen p {
	line-height: 0;
	padding: 0;
	margin: 0;
}

.videoScreen iframe {
	width: calc(100% + 30px);
	height: 56.28vw;
	margin: 0 -15px;
}

/********************************/
/*******     achieve      *******/
/********************************/
.achieve {
	width: 100%;
	padding: 50px 0;
	background-color: #f6f4ef;
}

.achieve h2 {
	margin: 0;
	padding-bottom: 10px;
	border-bottom: 2px solid #ddd;
	line-height: 1.2916;/*31px*/
	font-size: 1.500em;/*24px*/
	font-weight: 480;
	color: #3f3f3f;
	text-align: center;
}

.achievSlider {
	padding: 0 40px;
	margin: 50px 0 0;
	position: relative;
}

.achieve .slick-slide {
	padding: 0 15px
}

.achieve h3 {
	margin: 0 0 15px;
	line-height: 1.2857;/*27px*/
	font-size: 3.500em;/*56px*/
	font-weight: 600;
}

.achieve p {
	margin: 0;
	line-height: 1.363;/*30px*/
	font-size: 1.375em;/*22px*/
}

.achieve .slick-arrow {
	width: 45px;
	height: 75px;
	border: none;
	border-radius: 5px;
	text-indent: -10000px;
	margin-top: -37px;
	cursor: pointer;
	position: absolute;
	padding: 0;
	z-index: 5;
	top: 50%;
}

.achieve .slick-prev {
	background: rgba(0, 0, 0, 0.5) url(../images/banner/slider-left.png) no-repeat left 5px center;
	left: -45px;
}

.achieve .slick-next {
	background: rgba(0, 0, 0, 0.5) url(../images/banner/slider-right.png) no-repeat right 5px center;
	right: -45px;
}

@media screen and (max-width:1280px) {
	.achieve .slick-prev {
		left: -15px;
	}

	.achieve .slick-next {
		right: -15px;
	}
}

/********************************/
/*******     projects     *******/
/********************************/
.projects {
	width: 100%;
	padding: 50px 0;
	background-color: #fff;
}

.projects p {
	margin: 0 0 20px;
	line-height: 1.500;/*30px*/
	font-size: 1.125em;/*18px*/
}

.projects .row {
	width: 100%;
	flex-wrap: wrap;
	display: flex;
	gap: 30px;
}

.projectBox {
	width: 100%;
	flex-wrap: wrap;
	display: flex;
}

.projectImg {
	width: 30%;
	line-height: 0;
}

.projectImg img {
	width: 100%;
	height: auto;
}

.projectTxt {
	width: 70%;
	padding-left: 30px;
}

.hashTag {
	width: 100%;
	margin-bottom: 15px;
	flex-wrap: wrap;
	display: flex;
	gap: 5px;
}

.hashTag a {
	display: block;
	text-decoration: none;
	line-height: 1.500;/*24px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	color: #198700;
}

.hashTag a:hover {
	text-decoration: underline
}

.hashTag a::before {
	content: "#";
	speak-as: none;
}

.projectTxt h3 {
	margin: 0;
	min-height:50px;
	line-height: 1.500;/*30px*/
	font-size: 1.125em;/*18px*/
}

.projectTxt h3 a {
	text-decoration: none;
	color: #1c1c1c;
}

.projectTxt h3 a:hover {
	text-decoration: underline
}

.projectTxt p {
	margin: 15px 0;
	line-height: 1.500;/*24px*/
	font-size: 1.000em;/*16px*/
}

.projectTxt span {
	display: block;
	font-weight: 300;
	line-height: 1.500;/*24px*/
	font-size: 0.938em;/*16px*/
}

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

	.projectTxt {
		width: 100%;
		padding: 15px 0 0;
	}
}


/********************************/
/*******      partner     *******/
/********************************/
.partner {
	width: 100%;
	text-align: center;
	background-color: #f3f3f3;
	position: relative;
	padding: 0 0 20px;
	--widthm: -238px;
	--width: 238px;
	--height: 180px;
	--quantity: 12;
	--duration: 15s;
}

.partner::before {
	width: 100%;
	height: 100px;
	background-color: #fff;
	position: absolute;
	content: "";
	left: 0;
	top: 0;
}

.partner .heading {
	margin-bottom: 50px
}

.clientBox {
	width: 100%;
	margin-top: 40px;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 10% 90%, transparent);
	mask-image: linear-gradient(to right, transparent, #000 10% 90%, transparent);
	position: relative;
	overflow: hidden;
}

.slide-track {
	width: calc(var(--width) * var(--quantity));
	animation: slide var(--duration) linear infinite;
	align-items: center;
	display: flex;
}

.slide-track:hover {
	-webkit-animation-play-state: paused;
	animation-play-state: paused;
}

.clientLogo {
	width: var(--width);
	text-align: center;
}

.clientLogo img {
	max-width: 80%;
	height: auto;
	margin: auto;
}

@keyframes slide {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(var(--widthm) * 3))
	}
}

@media screen and (max-width: 767px) {
	.partner::before {
		height: 70px
	}
}

/********************************/
/*******      weWork      *******/
/********************************/
.weWork {
	width: 100%;
	padding: 50px 0;
	background-color: #fff;
}

.wrorkMap {
	width: 100%;
	position: relative;
	justify-content: center;
	align-items: center;
	display: flex;
	gap: 50px;
}

.mapBox {
	width: 40%;
	line-height: 0;
}

.mapBox img {
	width: 100%;
	height: auto;
}

/********************************/
/*******      newsSec     *******/
/********************************/
.newsSec {
	width: 100%;
	padding: 0 0 50px;
	background-color: #f3f3f3;
	position: relative;
	text-align: center;
	overflow: hidden;
}

.newsSec::before {
	width: 100%;
	height: 100px;
	background-color: #fff;
	position: absolute;
	content: "";
	left: 0;
	top: 0;
}

.newsSec .heading {
	margin-bottom: 80px
}

.newsSec .row {
	width: calc(100% + 30px);
	margin-left: -15px;
	text-align: left;
	flex-wrap: wrap;
	display: flex;
}

.newsBox {
	width: 33.3333%;
	padding: 0 15px;
	border-left: 1px solid #434347;
	flex-wrap: wrap;
	display: flex;
}

.newsBox:first-child {
	border-left: none;
}

.newsLogo {
	width: 30%;
	padding-top: 10px;
	line-height: 0;
}

.newsTxt {
	width: 70%;
	padding: 18px 0 0 15px;
	flex-wrap: wrap;
	display: flex;
	gap: 15px;
	line-height: 1.500;/*24px*/
	font-size: 1.000em;/*16px*/
}

.newsTxt strong {
	display: block;
	font-weight: 600;
}

@media screen and (max-width: 767px) {
	.newsBox {
		width: 100%;
		padding: 15px;
		border-left: none;
		border-top: 1px solid #434347;
	}

	.newsBox:first-child {
		border-top: none;
	}

	.newsLogo,
	.newsTxt {
		padding-top: 0
	}
}

/********************************/
/*******     fbposts      *******/
/********************************/
.fbposts{
	width: 100%;
	padding: 50px 0;
	background-color: #f6f4ef;
	text-align: center;
}
.fbposts .container{max-width:1616px}
.fbposts .row{
	width: 100%;
	text-align: left;
	justify-content: space-between;
	flex-wrap: wrap;
	display: flex;
}
.fb-post {
	width: calc(25% - 22.5px);
	background-color: #ffffff;
	border: 1px solid #ddd;
	padding:15px 15px 45px;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
}
.fb-header {
	display: flex;
	align-items: center;
	gap: 10px;
}
.fb-logo {
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
.fb-meta {
	display: flex;
	flex-direction: column;
	font-size: 14px;
	color: #333;
}
.fb-meta span {
	font-size: 12px;
	color: #888;
}
.fb-message {
	min-height: 70px;
	margin: 15px 0 0;
	font-size: 14px;
	color: #333;
}
.fb-message br + br{display:none}
.fb-message .smore {
	color: #333;
	text-decoration: none;
	font-weight: bold;
}

.fb-message .smore:hover {color: #5F7D31}
.fb-image {
	width: 100%;
	height:auto;
	border-radius: 6px;
	margin-top: 15px;
	overflow: hidden;
}
.fb-link {
	padding:0 15px;
	display: block;
	color:#5F7D31;
	text-decoration: none;
	position: absolute;
	font-weight: 600;
	bottom:15px;
	left: 0;
}

@media only screen and (min-width:768px){
	.fb-image{
		height:237px;
		object-fit: cover;
		object-position:center top;
	}
}

@media only screen and (max-width:767px){
	.fbposts .row{gap:30px;}
	.fb-post{width:100%}
	.fb-message {min-height:inherit}
}


/********************************/
/*******      joinus      *******/
/********************************/
.joinus {
	width: 100%;
	padding: 50px 0;
	background-color: #fff;
	text-align: center;
}

.joinus .row {
	width: 100%;
	text-align: left;
	justify-content: space-between;
	flex-wrap: wrap;
	display: flex;
	gap: 30px;
}

.cardBox {
	width: calc(33.3333% - 20px);
	box-shadow: 0 1px 8px rgba(0, 0, 0, .16);
	transition: box-shadow .2s;
	padding-bottom: 58px;
	border-radius: 4px;
	position: relative;
	overflow: hidden;
}

.cardBox:hover {
	box-shadow: 0 1px 14px rgba(0, 0, 0, .3)
}

.cardImg {
	width: 100%;
	display: block;
}

.cardTxt {
	width: 100%;
	padding: 20px;
}

.card-tag {
	display: block;
	line-height: 1.333;/*20px*/
	font-size: 0.938em;/*15px*/
	font-weight: 700;
	color: #6f7376;
}

.card-heading {
	margin-top: 8px;
	display: inline-block;
	text-decoration: none;
	line-height: 1.400;/*28px*/
	font-size: 1.250em;/*20px*/
	font-weight: 700;
	color: #1c1c1c;
}

.card-excerpt {
	margin: 8px 0 0;
	line-height: 1.333;/*20px*/
	font-size: 0.938em;/*15px*/
}

.card-btn {
	padding: 0 15px;
	border-radius: 4px;
	display: inline-block;
	text-decoration: none;
	background-color: #D78C3A;
	font-family: inherit;
	position: absolute;
	line-height: 2.375;/*38px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	color: #000;
	bottom: 20px;
	right: 20px;
}

.load-more-btn {
	padding: 0 15px;
	border-radius: 4px;
	margin: 30px auto 0;
	display: inline-block;
	border: 1px solid #1f4912;
	background-color: #fff;
	font-family: inherit;
	line-height: 2.375;/*38px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	color: #1f4912;
	cursor: pointer;
}

.load-more-btn:hover {
	background-color: #1f4912;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.cardBox {
		width: calc(50% - 15px)
	}
}

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

/********************************/
/**********    jobs    **********/
/********************************/
.jobs{
	width: 100%;
	padding: 50px 0;
	background-color: #f6f4ef;
}
.jobs .list{
	width: 100%;
	list-style: none;
	flex-wrap: wrap;
	display: flex;
	padding: 0;
	margin: 0;
	gap:15px;
}
.jobs .item{
	width: 100%;
	padding: 15px;
	border-radius: 15px;
	border:1px solid #5F7D31;
	justify-content: right;
	align-items: center;
	display: flex;
	gap:15px;
}
.jobs .item p{
	padding: 0;
	margin: 0;
}
.jobs .title{
	line-height:1.1;
	margin-right: auto !important;
	font-size: 1.125em;/*18px*/
	font-weight:700;
}
.jobs .place{width:250px}

.apply{
	margin: 0;
	border: none;
	padding: 0 20px;
	cursor: pointer;
	border-radius: 4px;
	text-decoration: none;
	background-color: #D78C3A;
	font-family: "Roboto", sans-serif;
	line-height: 2.75;/*44px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	display: block;
	color: #fff;
}
.apply:hover{
	background-color:#5F7D31;
	color: #fff;
}

.backLink{
	cursor: pointer;
	text-decoration: none;
	font-family: "Roboto", sans-serif;
	line-height: 2.75;/*44px*/
	font-size: 1.000em;/*16px*/
	color:#D78C3A;
	align-items: center;
	display: flex;
}
.backLink:hover{color:#5F7D31}
.backLink path{fill:#D78C3A}
.backLink:hover path{fill:#5F7D31}

.job__header {
	width: 100%;
	padding:15px 0 30px;
	flex-direction: row;
    align-items: center;
	display: flex;
	gap: 15px;
}
.job__title {flex-grow: 1;}

.job__title h2 {
	width: 100%;
	margin: 0 0 5px;
	line-height: 1.2916;
	font-size:2.000em;/*32px*/
	font-weight:400;
	color:#D78C3A;
}
.job__location{
	width: 100%;
	align-items: center;
	display: flex;
	gap:5px;
}
.job__location path{fill:#D78C3A}

.job__description h3{margin:0;}


@media screen and (max-width: 639px) {
	.jobs .item{
		justify-content: center;
		text-align: center;
		flex-wrap: wrap;
		gap: 10px;
	}
	.jobs p{width:100%;}
	.jobs .apply {
		width: 100%;
		border-radius:10px;
	}
	.job__header {flex-wrap: wrap;}
}

/********************************/
/***********   Common Content   **********/
/********************************/
.common_cont {
	width: 100%;
	padding: 50px 0;
	/* background-color: #F5F5F5; */
}
.wrap_cont {
	width: 100%;
	padding: 50px 0 0;
}

/********************************/
/***********   board   **********/
/********************************/
.board{
	width: 100%;
	padding: 50px 0;
	/*background-color:#F5F5F5;*/
}
.board ul{
	width: 100%;
	list-style: none;
	flex-wrap: wrap;
	display: flex;
	padding: 0;
	margin: 0;
	gap:30px;
}
.board li{
	width:calc(33.33% - 20px);
	box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.2);
	background-color: #fff;
	border-radius: 15px;
	overflow: hidden;
	padding: 15px;
}
.team li{
	width:calc(50% - 15px);
	align-items: center;
	flex-wrap: wrap;
	display: flex;
	gap:15px;
}
.bioImg{
    width:100%;
    border-radius:10px;
    position:relative;
    overflow:hidden;
	line-height:0;
}
.team {padding: 50px 0 80px}
.team .bioImg{
    width:20%;
    border-radius:10px 0 0 10px;
}
.bioImg::before{
    top:50%;
    width:0;
    height:0;
    opacity:0;
    content:'';
    display:block;
    border-radius:100%;
    background:rgba(255, 255, 255, .2);
    -webkit-transform:translate(-50%, -50%);
    transform:translate(-50%, -50%);
    position:absolute;
    z-index:2;
    left:50%;
}
.bioImg img{
    width:100%;
	/*height: auto;*/
	height:420px;
}
.team .bioImg img {height: 140px}

.bioImg:hover::before{
    -webkit-animation:circle .75s;
    animation:circle .75s;
}

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

    40%{
        opacity:1
    }

    100%{
        width:200%;
        height:200%;
        opacity:0;
    }
}

@keyframes circle{
    0%{
        opacity:1
    }

    40%{
        opacity:1
    }

    100%{
        width:200%;
        height:200%;
        opacity:0;
    }
}
.bioTxt{
	width: 100%;
	padding-top: 15px;
	text-align: center;
}
.bioTxt h3 {
    line-height: 1.300;/*26px*/
	font-size: 1.429em;/*20px*/
	font-weight: 700;
	color:#5F7D31;
}
.team .bioTxt{
	width:calc(80% - 15px);
	text-align:left;
	padding-top:0;
}
.bioTxt a{
	text-decoration: none;
	color:#5F7D31;
}

@media screen and (max-width:767px) {
	.board ul{gap:15px}
	.board li{width:calc(50% - 15px)}
}
@media screen and (max-width:639px) {
	.board li{width:100%}
	.team .bioImg img {height: 90px}
	.bioImg img {height: auto}
}

/********************************/
/*******      career      *******/
/********************************/
.career{
	width:100%;
	padding-bottom: 50px;
	position:relative;
}
.careerTop{
	width:100%;
	padding:30px 15px;
	margin-bottom: 30px;
	background-color: #d9d9d9;
	text-align: center;
}
.careerTop p,
.careerTop h2{margin: 0;}
.careerTop strong{
	display: block;
	line-height: 1.0416;
	font-size:2.250em;/*48px*/
	font-weight: 600;
}
.filter {
	width:100%;
	margin-bottom:30px;
	align-items: center;
	flex-wrap: wrap;
	display: flex;
	gap:15px;
}

.filter span {
	font-weight:600;
	font-size:1.125em;/*18px*/
}

.tab {
	padding: 10px 15px;
	background-color: #d9d9d9;
	border: 2px solid transparent;
	cursor: pointer;
}

.tab.active {border: 2px solid orange}
.cards {
	padding-bottom: 30px;
	flex-wrap: wrap;
	display: flex;
	gap:30px;
}
.card {
	width:calc(33.3333% - 20px);
	background-color: #d9d9d9;
	flex-wrap: wrap;
	display: none;
	padding:30px;
	gap:15px;
}
.card .location {
	padding: 5px 10px;
	background: #fff;
	display: inline-block;
}
.card p,
.card h3 {
	width: 100%;
	margin:0;
}
.card a {
	margin-left: auto;
	text-decoration: none;
	font-weight:600;
	color: black;
}
.card.active {display:flex}
.card.highlight {border: 4px solid orange;}

@media only screen and (max-width:767px){
	.filter {margin-bottom: 15px}
	.cards {
		padding-bottom: 15px;
		gap: 15px;
	}
	.card {
		width: 100%;
		padding:15px;
	}
}


/********************************/
/*******      benefit     *******/
/********************************/
.benefit{
	width: 100%;
	padding: 50px 0;
	background-color:#1f4912;
	color: #fff;
}
.benefit h2{text-align: center;}
.benefit ul{
	max-width:680px;
	column-gap:200px;
	column-count:2;
	margin:auto;
}

@media screen and (max-width:639px) {
	.benefit ul {
		column-gap: 0;
		column-count: 1;
		padding-left: 15px;
	}
}


/********************************/
/*******      commSec     *******/
/********************************/
.commSec{
	width: 100%;
	padding: 50px 0;
}
.deadline{
	position: relative;
	padding-top: 0;
}
.deadline::before {
	width: 100%;
	height: 100px;
	background-color:#1f4912;
	position: absolute;
	content: "";
	z-index:1;
	left:0;
	top: 0;
}
.deadline h2{
	width: 100%;
	height: 100px;
	position: relative;
	justify-content:center;
	align-items: center;
	flex-wrap:wrap;
	display:flex;
	color:#fff;
	z-index: 2;
}
.deadline .lgText{
	font-weight: 600;
	text-align: center;
	color: #D78C3A;
}
.sohel{
	padding-left:55px;
	position: relative;
}
.sohel strong{
	position: absolute;
	left: 0;
	top: 0;
}

.shareBtm{
	width:100%;
	justify-content:flex-end;
	align-items:center;
	display:flex;
	gap:15px;
}
.shareBtn{position:relative;}
.applyNow,
.shareBtn span{
	padding: 0 15px;
	margin: 10px 0 0;
	border-radius: 4px;
	text-decoration: none;
	background-color:#5F7D31;
	line-height: 2.75;/*44px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	color: #fff;
	cursor: pointer;
	align-items:center;
	display:flex;
	gap:10px;
}
.applyNow:hover,
.shareBtn span:hover{
	background-color:#D78C3A;
	color: #fff;
}
.shareBox{
	padding:10px;
	border-radius: 4px;
	background-color:rgba(0,0,0,0.7);
	transform:translateX(-50%);
	position:absolute;
	bottom:100%;
	left:50%;
	align-items:center;
	display:none;
	gap:10px;
}
.shareBtn:hover .shareBox{display:flex}
.shareBox::before {
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid rgba(0,0,0,0.7);
	transform:translateX(-50%);
	position: absolute;
	content: "";
	top: 100%;
	left:50%;
}
.shareBox a{
	text-decoration: none;
	color:#fff;
}
.shareBox a:hover{
	text-decoration: none;
	color:#D78C3A;
}

.form-container {padding-top:50px;}
.form-row {
	display: flex;
	margin-bottom: 20px;
	gap: 20px;
}
.form-group {
	flex-direction: column;
	display: flex;
	flex: 1;
}
.form-group label,
.form-section strong{
	margin-bottom: 5px;
	font-weight:600;
	color:#000;
}
.form-group label sup{color:red}
.form-container input[type="text"],
.form-container input[type="email"],
.form-container input[type="tel"],
.form-container select {
	padding: 8px;
	font-size: 14px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.form-section {margin: 20px 0;}
.radio-group label {
	margin-bottom: 8px;
	display:inline-block;
}

@media screen and (max-width:639px) {
	.form-row {flex-wrap: wrap;}
	.form-group {
		width: 100%;
		min-width: 100%;
	}
}

/********************************/
/*************  main  ***********/
/********************************/
.main{
	width:100%;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap:wrap;
	display:flex;
	gap:15px;
}
.sidebar{
	width:23%;
	padding:30px 30px 63px;
	position:relative;
	background-color:#f2f2f2;
	flex-wrap:wrap;
	display:flex;
	gap:20px;
}
.sidebar p{
	width:100%;
	font-size:1.125em;/*18px*/
	margin:0;
}
.sidebar p strong{display:block;}

.applyBtn{
	width: 100%;
	padding: 0 15px;
	text-align: center;
	text-decoration:none;
	background-color: #D78C3A;
	line-height: 2.75;/*44px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	display: block;
	color:#fff;
	position: absolute;
	bottom:0;
	left:0;
}
.applyBtn:hover{
	background-color:#5F7D31;
	color:#fff;
}

.content{width:calc(77% - 30px);}
.content h3:first-child,
.content h2:first-child{margin-top:0;}

@media screen and (max-width:767px) {
	.content{width:100%;}
	.sidebar{
		width:100%;
		padding:20px 20px 53px;
		gap:15px;
	}
}



/********************************/
/*******    subscribe     *******/
/********************************/
.subscribe {
	width: 100%;
	padding: 50px 0;
	background-color: #f6f4ef;
}

.subscribe p {
	margin: 0 0 20px;
	line-height: 1.500;/*30px*/
	font-size: 1.125em;/*18px*/
}

.subscribe form {
	max-width: 800px;
	position: relative;
}

.subscribe .row {
	width: 100%;
	display: flex;
	gap: 20px;
}

.subscribe .row .inputBox {
	width: 50%;
}

.subscribe select,
.subscribe input[type="text"],
.subscribe input[type="email"] {
	width: 100%;
	height: 48px;
	padding: 8px;
	margin: 0 0 20px;
	border-radius: 4px;
	border: 1px solid #a3a5a7;
	background-color: #fff;
	font-family: inherit;
	color: #1c1c1c;
	font-size: 15px;
}

.subscribe select:focus,
.subscribe input[type="text"]:focus,
.subscribe input[type="email"]:focus {
	border-color: transparent;
	box-shadow: 0 0 0 2px #198700;
}

.form-check {
	min-height: 16px;
	padding-left: 40px;
	margin-bottom: 30px;
}

.form-check input[type="checkbox"] {
	width: 26px;
	height: 26px;
	margin: 0 0 0 -40px;
	vertical-align: top;
	background-color: #fff;
	-webkit-print-color-adjust: exact;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: 1px solid #a3a5a7;
	color-adjust: exact;
	border-radius: 4px;
	appearance: none;
	float: left;
}

.form-check input[type="checkbox"]:checked {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
	box-shadow: 0 0 0 3px rgba(21, 156, 228, 0.4);
	background-color: #0d6efd;
	border-color: #0d6efd;
}

.form-check label {
	margin: 0;
	cursor: pointer;
	line-height: 26px;
	font-size: 16px;
	color: #000;
}

.form-check label small {
	color: #c02b0a;
	display: inline-block;
	font-size: 13.008px;
	padding-inline-start: 0.125em;
}

.subscribe input[type="submit"] {
	padding: 0 15px;
	border-radius: 4px;
	border: 1px solid #D78C3A;
	background-color: #D78C3A;
	font-family: inherit;
	line-height: 2.750;/*44px*/
	font-size: 1.000em;/*16px*/
	font-weight: 600;
	cursor: pointer;
	display: block;
	color: #000;
}

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

	.subscribe select,
	.subscribe input[type="text"],
	.subscribe input[type="email"] {
		height: 38px;
		font-size: 13px;
	}
}

#loader {
	padding: 0 0 10px;
	color: #1f4912;
	display: none;
}

#success {
	color: #1f4912;
	padding: 10px 0;
	font-size: 1.5em;
	font-weight: 600;
}