/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/* GENERAL */

h1,h2,h3,h4,h5,h6 {
	color:#2A395B;
	font-weight:700 !important;
	line-height:1.5 !important;
}

h1,h2,h3 {
	font-family:"Noto Sans JP", sans-serif !important;
	margin-bottom:32px !important;
	margin-top:0px !important;
}

h4,h5,h6 {
	font-family:"Noto Sans", sans-serif !important;
	margin-bottom:32px !important;
	margin-top:0px !important;
}

h1 {
	font-size:60px;
}

h2 {
	font-size:40px;
}

h3 {
	font-size:28px;
}

h4 {
	font-size:20px;
}

h5 {
	font-size:18px;
}

p {
	font-size:16px;
	margin-bottom:32px;
	line-height:1.7 !important;
}

a {
	color:#44A39C;
	transition:color 0.2s ease-in-out;
}

a:hover {
	color:#b3c938;
}

li {
	line-height:1.7 !important;
}

.elementor-text-editor ul {
	padding-left:22px;
}

.elementor-text-editor ul li {
	list-style:none;
	padding:6px 0px 6px 0px;
	color:#3F597F;
}

.elementor-text-editor ul li::before {
	content: "\2022";
	color: #D9E1EB;
	font-weight: bold;
	display: inline-block; 
	width: 6px;
	height:6px;
	position:absolute;
	left:0px;
}

.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
	padding:0px !important;
}

.elementor-top-section>.elementor-column-gap-default>.elementor-row>.elementor-column {
	padding-left:20px;
	padding-right:20px;
}

.page-title-section.elementor-top-section {
	padding:96px 0px 96px 0px;
}

.page-title-section h1,
.page-title-section h4,
.page-title-section h5 {
	text-align:center;
	color:#ffffff;
}

.page-title-section h4 {
	font-weight:400 !important;
	margin-bottom:0px !important;
	max-width:600px;
	margin:0 auto;
	font-size:18px;
}

.page-title-section h5 {
	margin-top:32px !important;
	margin-bottom:0px !important;
	font-size:16px;
}

.page-title-section > .elementor-background-overlay {
	background-color:rgba(42,57,91,0.85);
}

.page-main-section.elementor-top-section {
	padding:112px 0px 112px 0px;
}

.page-main-section.elementor-top-section p {
	max-width:540px;
}

.page-main-section.main-centered.elementor-top-section p {
	max-width:720px;
	margin:0px auto 40px;
}

.gradient-light-blue > .elementor-background-overlay {
	background: rgb(246,250,255);
	background: linear-gradient(180deg, rgba(246,250,255,1) 25%, rgba(246,250,255,0.78) 100%);
}

.blue-bg {
	background-color:#F6FAFF;
}

.dark-blue-bg {
	background-color:#3F597F;
}

.divider-line {
    display: block;
    width: 80px;
    height: 3px;
    background-color: #44A39C;
    margin-bottom: 40px;
}

.divider-line-center {
	display: block;
    width: 80px;
    height: 3px;
    background-color: #44A39C;
	margin:0 auto;
	margin-bottom: 40px;	
}

.divider-line-center.divider-line-green {
	display: block;
    width: 80px;
    height: 3px;
    background-color: #B3C938;
	margin:0 auto;
	margin-bottom: 40px;
}

/*
.elementor-button {
	display:flex;
	height:64px;
	justify-content:center;
	align-items:center;
	font-family:"Noto Sans JP", sans-serif !important;
	font-weight:700 !important;
	font-size:18px;
	letter-spacing:1px;
	color:#44A39C;
	border:3px solid #44A39C;
	border-radius:8px;
}
*/

.wp-block-button {
	margin-bottom:40px !important;
}

.wp-block-button__link {
	border-radius:8px !important;
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	letter-spacing:1px !important;
	background-color:#44A39C !important;
	transition:all 0.2s ease-in-out;
}

.wp-block-button__link:hover {
	background-color:#B3C938 !important;
}

.elementor-button {
	justify-content:center;
	align-items:center;
	font-family:"Noto Sans JP", sans-serif !important;
	font-weight:700 !important;
	font-size:18px;
	letter-spacing:1px;
	color:#44A39C;
	border:3px solid #44A39C;
	border-radius:8px;
	padding:18px 28px 18px 28px;
}

.elementor-button:focus, .elementor-button:visited {
	color:#44A39C;
}

.elementor-button:hover {
	color:#ffffff;
	background-color:#44A39C;
}

.clear-button .elementor-button {
	padding:0px 0px 0px 0px;
	border:none;
	color:#44A39C !important!;
}

.clear-button .elementor-button:hover {
	color:#b3c938;
	background-color:transparent;
}

.elementor-social-icon {
	background-color:transparent !important;
}

.elementor-social-icon i {
    color: #44A39C;
}

.elementor-social-icon:hover i {
	color: #B3C938;
}

.elementor-widget-social-icons a i {
	transition:color 0.2s ease-in-out;
}

/*
.page-inner-nav {
	background-color:#F6FAFF;
	height:80px;
	transition:height 0.1s ease-in-out;
}

.page-inner-nav.elementor-sticky--active {
	height:52px;
}

.page-inner-nav ul {
	justify-content:center;
	padding-left:0px;
	display:flex;
	list-style:none;
}

.page-inner-nav ul li a {
	min-width:200px;
	height:80px;
	display:flex;
	justify-content:center;
	align-items:center;
	padding:0px !important;
	color:#3F597F;
	font-size:16px;
	font-weight:700;
	transition:height 0.1s ease-in-out !important;
	position:relative;
}

.page-inner-nav ul li a:after {
	content:"";
	display:block !important;
	background-color:#B3C938 !important;
	height:4px !important;
	z-index:50;
	position:absolute;
	bottom:0px;
	width:100%;
	opacity:0;
	transition:all 0.2s ease-in-out;
}

.page-inner-nav ul li a:hover:after {
	opacity:1;	
}

.page-inner-nav.elementor-sticky--active ul li a {
	height:52px;
}
*/

.page-inner-nav {
	background-color:#F6FAFF;
	height:80px;
	transition:height 0.1s ease-in-out;
}

.page-inner-nav.elementor-sticky--active {
	height:52px;
}

.page-inner-nav nav {
	justify-content:center;
}

.page-inner-nav nav a {
	min-width:200px;
	height:80px;
	display:flex;
	justify-content:center;
	align-content:center;
	padding:0px !important;
	color:#3F597F;
	font-size:16px;
	font-weight:700;
	transition:height 0.1s ease-in-out !important;
}

.page-inner-nav ul a:after {
	background-color:#B3C938 !important;
	height:4px !important;
}

.page-inner-nav.elementor-sticky--active nav a {
	height:52px;
}

.img-block .elementor-column-wrap {
	padding:0px !important;
}

/*
.img-block .elementor-widget-wrap {
	background-color:#ffffff;
	padding:64px 64px 32px 64px;
	max-width:778px;
	margin-bottom:112px;
}
*/

.img-block .elementor-widget-wrap {
	padding:64px 64px 32px 64px;
}

.img-block .elementor-element {
	background-color:#f9fafa;
	margin-left:-10px;
	margin-top: -10px;
	padding-left: 20px;
	padding-right: 20px;
	max-width:778px;
} 

.img-block .elementor-element:last-child {
		margin-bottom:112px;
}

.img-block p {
	max-width:100% !important;
}

.img-block-right .elementor-column-wrap {
	justify-content:flex-end;
}

.img-block-blue .elementor-widget-wrap {
	background-color:#F6FAFF;
}

.img-block .elementor-button {
	margin-bottom:32px;	
}

.blue-block {
	padding:64px !important;
}

.lingo-newsletter-form .elementor-field-group {
	padding:0px !important;
	margin:0px !important;
}

.lingo-newsletter-form .elementor-form-fields-wrapper {
	flex-wrap:nowrap;
	border-radius:8px !important;
	overflow:hidden;
}

.lingo-newsletter-form .elementor-field-type-email {
	flex-basis:80%;
	box-sizing:border-box;
	// border:none;
}

.lingo-newsletter-form .elementor-field-type-email input {
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:18px;
	display:flex;
	height:64px;
	align-items:center;
	padding:0px 24px 0px 24px;
	border-top-left-radius:8px;
	border-bottom-left-radius:8px;
	border-bottom-right-radius:0px;
	border-top-right-radius:0px;
	background-color:#ffffff;
	color:#44A39C !important;
	box-sizing:border-box;
	border:3px solid #44A39C !important;
}

.lingo-newsletter-form .elementor-field-type-submit {
	flex-basis:20%;
	box-sizing:border-box;
	display:flex;
}

.lingo-newsletter-form .elementor-field-type-submit button {
	flex-basis:100%;
	padding:0px 24px 0px 24px;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#44A39C;
	height:64px;
	border-bottom-left-radius:0px;
	border-top-left-radius:0px;
	border:3px solid #44A39C;
}

.lingo-newsletter-form .elementor-align-icon-left {
	margin-right:0px !important;
}

.lingo-newsletter-form .elementor-field-type-submit button:hover {
	background-color:#b3c938;
	border-color:#b3c938;
}

/* HEADER */

.lingo-header {
	background-color:#ffffff;
}

.lingo-header > .elementor-container {
	padding-top:16px;
	padding-bottom:16px;
	transition:padding 0.1s ease-in-out;
}

.lingo-header.elementor-sticky--effects > .elementor-container {
	padding-top:8px;
	padding-bottom:8px;
}

.lingo-header ul {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	padding-left:0px !important;
	margin-bottom:0px !important;
}

.lingo-header ul.menu > li > a {
	display:flex;
	color:#3f597f;
	font-size:16px;
	font-family:"Noto Sans JP", sans-serif !important;
	font-weight:500 !important;
	padding-left:22px !important;
	padding-right:22px !important;
	padding-top:13px;
	padding-bottom:13px;
}

.lingo-header ul.menu > li > a:hover {
	color:#44a39c;
}

.lingo-header ul > li.current-menu-item > a {
	color:#44a39c;
}

.lingo-header ul.menu > li.last > a {
	color:#ffffff;
	border-radius:8px;
	background-color:#44A39C;
	margin-left:12px;
	transition:all 0.2s ease-in-out;
}

.lingo-header ul.menu > li.last > a:hover {
	color:#ffffff;
	background-color:#b3c938;
}

#menu-toggle .elementor-button-wrapper {
	text-align:right;
}

#menu-toggle a {
	padding:8px 0px 8px 0px;
	border:none !important;
	color:#2A395B;
}

#menu-toggle a:focus,
#menu-toggle a:hover {
	background-color:#ffffff !important;
	color:#2A395B;
}

#menu-toggle a.open {
	color:#44A39C;
}

#menu-toggle a .elementor-button-text {
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:15px;
	padding-right:4px;
	// line-height:16px;
	// vertical-align:middle;
}

.mobile-menu-wrap {
	position:fixed !important;
	visibility:hidden;
	opacity:0;
	width:100%;
	height:100vh;
	display:flex;
	background-color:#f6faff;
	left:0;
	transition:all 0.2s ease-in-out;
	z-index:100;
}

.mobile-menu-wrap.menu-open {
	visibility:visible;
	opacity:1;
}

.mobile-menu-wrap .elementor-row,
.mobile-menu-wrap .elementor-container {
	flex-basis:100%;
	margin:0px !important;
}

.mobile-menu-wrap ul {
	list-style:none;
	padding:0px !important;
	flex-basis:100%;
	margin-top:32px;
}

.mobile-menu-wrap ul li a {
	font-family:"Noto Sans JP", sans-serif !important;
	display:block;
	box-sizing:border-box;
	width:100%;
	padding-top:10px;
	padding-bottom:10px;
	text-align:left;
	color:#3f597f;
	font-weight:700 !important;
	font-size:20px;
}

.mobile-menu-wrap ul li.current-menu-item a {
	color:#44A39C;
}

.mobile-menu-wrap ul li.last a {
	color:#ffffff;
	border-radius:8px;
	background-color:#44A39C;
	margin-top:24px;
	text-align:center;
	padding:12px 0px 12px 0px;
}

.mobile-menu-wrap ul li.last a:hover {
	color:#ffffff;
	background-color:#b3c938;
}

/*
.mobile-menu-wrap ul li a {
	text-transform:uppercase;
}

.mobile-menu-wrap ul li.last a  {
	background: linear-gradient(to right, #1C4076 50%, #BE975E 50%);
	background-size: 205% 100%;
	background-position:right bottom;
	transition:all 0.5s ease !important;
	color:#ffffff !important;
	width:90%;
	margin:0 auto;
	margin-top:20px;
}

.mobile-menu-wrap ul li.last a:hover {
	background-position:left bottom;
}


.mobile-menu-wrap ul li a::after {
	content:"";
	display:block !important;
	height:2px;
	width:32px;
	background-color:#BE975E;
	margin-top:6px !important;
	opacity:0;
	margin:0 auto;
	transition:all 0.3s ease-in-out !important;
}

.mobile-menu-wrap ul li a:hover::after {
	opacity:1;
}

.mobile-menu-wrap ul li.current-menu-item a,
.mobile-menu-wrap ul li a:hover {
	color:#12213A;
}

.mobile-menu-wrap ul li.current-menu-item a::after {
	opacity:0;
}

.mobile-menu-wrap ul li.last a::after {
	display:none !important;
}
*/

/* HOME */

.hero-section h1 {
	margin-top:88px !important;
}

.hero-section h1,
.hero-section h4 {
	color:#3F597F;
}

.hero-section h4 {
	max-width:600px;
	margin:0px auto;
}

.hero-cta-row {
	max-width:1100px;
	bottom:0px;
	margin:-84px auto 0px;
}

.hero-cta-row .elementor-column {
	padding:0px 0px 0px 0px !important;
}

.hero-cta-row a.elementor-button {
	display:flex;
	justify-content:center;
	align-items:center;
	height:84px;
	color:#ffffff;
	border:none !important;
	border-radius:0px;
}

.hero-cta-col-left a.elementor-button {
	background-color:#44A39C;
	border-top-left-radius:12px;
}

.hero-cta-col-right a.elementor-button {
	background-color:#3F597F;
	border-top-right-radius:12px;
}

.hero-cta-row a.elementor-button:hover {
	background-color:#b3c938;
}

/*
.key-areas-blocks {
	margin-bottom:8px;
}
*/

.key-areas-blocks .elementor-row {
	justify-content:space-between;
}

.key-areas-blocks .elementor-column {
	margin-bottom:40px;
	flex-basis:calc(50% - 20px);
}

/*
.key-areas-blocks .elementor-column:first-child {
	margin-right:20px;
}

.key-areas-blocks .elementor-column:nth-child(2) {
	margin-left:20px;
}
*/

.key-areas-blocks .elementor-column-wrap {
	padding:0px !important;
}

.key-areas-blocks .elementor-widget-wrap {
	background-color:#F6FAFF;
	padding:32px;
	max-width:400px;
	margin-bottom:112px;
}

/*
.key-areas-blocks .elementor-widget-container {
	background-color:#F6FAFF;
	padding:32px;
	max-width:400px;
	margin-bottom:112px;
}
*/

.key-areas-blocks h3 {
	font-family:"Noto Sans", sans-serif !important;
	margin-bottom:24px !important;
	max-width:60%;
	color:#2A395B;
	font-size:20px;
}

.key-areas-blocks p {
	color:#2A395B;
	max-width:95%;
	margin-bottom:24px !important;
}

.home-blog-posts .elementor-post__text {
	padding:32px;
}

.home-blog-posts .elementor-post__text a {
	color:#2A395B;
}

.home-blog-posts .elementor-post__text a:hover {
	color:#44A39C;
}

.home-blog-posts .elementor-post__thumbnail__link {
	margin-bottom:0px !important;
}

.home-blog-posts .elementor-post__text p {
	color:#2A395B;
}

.home-blog-posts .elementor-post__text h4 {
	margin-bottom:8px !important;
}

.home-blog-posts .elementor-post__text .elementor-post__meta-data {
	margin-bottom:24px;
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:12px;
	color:#8DA8CE;
}

.home-blog-posts .elementor-post__text {
	background-color:#F6FAFF;
}

/* ABOUT */

.team-cards .elementor-row {
	justify-content:space-between !important;
}

.team-cards .elementor-column {
	flex-basis:32%;
	flex-basis:calc(33.333% - 21.3px);
}

.team-cards .elementor-image-box-content {
	padding:32px 32px 24px 32px;
	background-color:#ffffff;
	min-height:191px;
}

.team-cards .elementor-image-box-content h4 {
	margin-top:0px;
	margin-bottom:24px !important;
}

.team-button {
	padding:0px 32px 32px 32px;
	background-color:#ffffff;
}

.team-modal .elementor-top-section>.elementor-column-gap-default>.elementor-row>.elementor-column {
	padding-left:0px;
	padding-right:0px;
}

/*
.team-modal-img img {
	border-radius:100%;
	padding:24px;
}
*/
.team-modal-img .elementor-column-wrap {
	margin-bottom:0px !important;
}

.team-modal-img .elementor-image img {
    width: 100%;
    max-width: 440px;
}

.team-modal .dialog-close-button {
	padding:8px;
	background-color:#ffffff;
	border-radius:4px;
}

.team-modal .eicon-close {
	color:#44A39C;
}

.team-modal-content {
	padding:32px 32px 32px 32px !important;
}

.intern-row.elementor-section>.elementor-column-gap-default>.elementor-row>.elementor-column {
	// padding-left:20px;
	padding-right:40px;
} 

.report-row {
	padding-top:32px;
	padding-bottom:32px;
	border-bottom:1px solid #D9E1EB;
}

.report-row .elementor-column {
	width:50% !important;
}

.report-row h3 {
	margin-bottom:0px !important;
}

/* OUR WORK */

.work-row {
	overflow:hidden;
}

.work-row p {
	max-width:540px;	
}

.projects-carousel-2 .elementor-widget-wrap {
	width:1300px !important;
}

/*
.projects-carousel-2 .ha-slick-slide .ha-slick-item {
	height:410px;
	overflow:hidden;
}

.projects-carousel-2 .ha-carousel .slick-prev {
    display:none !important;
}

.projects-carousel-2 .ha-carousel .slick-next {
    right: inherit;
	left:580px;
}

.projects-carousel-2 .ha-slick-slide:focus,
.projects-carousel-2 .ha-slick-slide a:focus {
	outline:none !important;
}

.projects-carousel-2 .ha-slick-content {
	padding:32px 32px 32px 32px !important;
	background-color:#ffffff !important;
	background-image:none !important;
	position:absolute;
	bottom:0px;
}

.projects-carousel-2 h2,
.projects-carousel-2 p {
	color:#2A395B !important;
}

.projects-carousel-2 h2 {
	margin-bottom:24px !important;
	font-family:"Noto Sans", sans-serif !important;
	font-size:18px;
}

.projects-carousel-2 p {
	margin-bottom:0px;
}
*/

.projects-carousel-2 .swiper-slide {
	height:400px;
	overflow:hidden;
}

.projects-carousel-2 .swiper-button-prev {
    display:none !important;
}

.projects-carousel-2 .swiper-button-next {
    right: inherit;
	left:576px;
	font-size:16px;
	display:flex;
	width:40px;
	height:40px;
	justify-content:center;
	align-items:center;
	border-radius:100%;
}

.projects-carousel-2 .swiper-button-next i {
	color:#2A395B;
	transition:color 0.2s ease-in-out;
}

.projects-carousel-2 .swiper-button-next:hover i {
	color:#44A39C;
}

.projects-carousel-2 .swiper-button-next:focus {
	outline:none !important;
}

.projects-carousel-2 .pp-info-box-content {
	padding:32px 32px 32px 32px !important;
	background-color:#ffffff !important;
	background-image:none !important;
	position:absolute;
	bottom:0px;
	text-align:left;
	width:100% !important;
}

.projects-carousel-2 .pp-info-box-content h5,
.projects-carousel-2 .pp-info-box-description {
	color:#2A395B !important;
}

.projects-carousel-2 .pp-info-box-content h5 {
	margin-bottom:24px !important;
	transition:color 0.2s ease-in-out;
	font-weight:600 !important;
}

.projects-carousel-2 .pp-info-box-content h5:hover {
	color:#44A39C !important;
}

.projects-carousel-2 .pp-info-box-description {
	margin-bottom:0px !important;
	font-size:14px;
	line-height:1.5;
}

.work-blue-cards .pp-info-box-content {
	background-color:#F6FAFF !important;
}



.projects-carousel .myportfolio-container {
	width:1300px !important;
}

.eg-project-carousel-content {
	background-color:#F6FAFF;
	padding:32px !important;
}

/*
.esg-overflowtrick {
	overflow:visible !important;
}

.eg-project-carousel-wrapper {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    top: 0px !important;
    z-index: 2;
}
*/

.eg-project-carousel-content a,
.eg-project-carousel-content p {
	font-family:"Noto Sans", sans-serif !important;
	color:#2A395B !important;
	text-align:left !important;
}

.eg-project-carousel-content h4 {
	font-size:18px !important;
	font-weight:700 !important;
	margin-bottom:24px !important;
}

.eg-project-carousel-content p a {
	font-size:16px !important;
	font-weight:400 !important;
}

.eg-project-carousel-content p {
	margin-bottom:0px !important;
}

.esg-filters.esg-navbutton-solo-right {
	right:inherit;
	left:580px;
	top:47%;
	top:calc(50% - 24px);
}

.project-carousel-filters .esg-navigationbutton {
	display:flex !important;
	justify-content:center;
	align-items:center;
	border-radius:50px !important;
	box-shadow:none !important;
	transition:all 0.1s ease-in-out;
	border-color:#8da8ce !important;
	width:48px !important;
	height:48px !important;
}

.project-carousel-filters .esg-navigationbutton.hovered {
	border-radius:50px !important;
	box-shadow:none !important;
	background-color:#44a39c !important;
	border-color:#44a39c !important;
}

.project-carousel-filters .esg-navigationbutton * {
	font-size:16px !important;
	color:#2a395b !important;
}

.project-carousel-filters .esg-navigationbutton.hovered * {
	color:#ffffff !important;
}

.work-blue-cards .eg-project-carousel-content {
	background-color:#F6FAFF !important;
}

/* POSTS + PROJECTS GENERAL */

.breadcrumb-section {
	// min-height:88px;
	padding-top:32px;
	padding-bottom:32px;
}

.breadcrumb-section a {
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:14px;
	color:#ffffff;
	padding-right:10px;
	padding-left:10px;
}

.breadcrumb-section .elementor-shortcode > span > span > a {
	padding-left:0px;
}

.breadcrumb-section a:hover {
	color:#44a39c;
}

.breadcrumb-section .breadcrumb_last {
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:14px;
	color:#F6FAFF;
}

.breadcrumb-separator {
	color:#B3C938;
	font-size:12px;
	font-weight:700 !important;
}

/* BLOG + PROJECT + RESOURCE ARCHIVE */

.archive-section {
	padding-top:64px;
	padding-bottom:112px;
}

/*
.archive-title-data {
	margin-top:32px;
}
*/

.archive-section .elementor-post__text {
	padding:32px;
}

.archive-section .elementor-post__text a {
	color:#2A395B;
}

.archive-section .elementor-post__text a:hover {
	color:#44A39C;
}

.archive-section .elementor-post__thumbnail__link {
	margin-bottom:0px !important;
}

.archive-section .elementor-post__text p {
	color:#2A395B;
}

.archive-section .elementor-pagination {
	margin-top:40px;
	letter-spacing:1px;
}

.blog-archive .elementor-post__text h3 {
	margin-bottom:8px !important;
}

.blog-archive .elementor-post__text .elementor-post__meta-data {
	margin-bottom:24px;
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:12px;
	color:#8DA8CE;
}

.blog-archive-content {
	padding-right:32px !important;
	width:73% !important;
}

.page-inner-nav.project-inner-nav nav a {
	min-width:160px;
}

/*
.projects-archive {
	padding-right:48px !important;
}
*/

#project-filter-button .elementor-button-wrapper {
	text-align:right;
}

#project-filter-button a {
	padding:8px 0px 8px 0px;
	border:none !important;
	color:#2A395B;
}

#project-filter-button a:hover,
#project-filter-button a:focus {
	background-color:transparent !important;
	color:#2A395B;
}

#project-filter-button a.open {
	color:#44A39C;
}

#project-filter-button a .elementor-button-text {
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:15px;
	padding-right:4px;
}

.project-menu-wrap {
	position:absolute;
	visibility:hidden;
	opacity:0;
	width:100%;
	display:flex;
	background-color:#f6faff;
	left:0;
	transition:all 0.2s ease-in-out;
	z-index:100;
}

.project-menu-wrap.menu-open {
	visibility:visible;
	opacity:1;
}


.project-menu-wrap .elementor-row,
.project-menu-wrap .elementor-container {
	flex-basis:100%;
	margin:0px !important;
}

.project-menu-wrap ul {
	list-style:none;
	padding:0px !important;
	flex-basis:100%;
	margin-top:8px;
}

.project-menu-wrap ul li a {
	font-family:"Noto Sans JP", sans-serif !important;
	display:block;
	box-sizing:border-box;
	width:100%;
	padding-top:10px;
	padding-bottom:10px;
	text-align:right;
	color:#3f597f;
	font-weight:700 !important;
	font-size:16px;
}

.project-menu-wrap ul li.current-menu-item a {
	color:#44A39C;
}

.projects-archive .elementor-post__text h3 {
	margin-bottom:24px !important;
}

.projects-archive .elementor-post__text {
	background-color:#F6FAFF;
}

.post-type-archive-resources .archive-title-data {
	display:none !important;
}

.sidebar-col {
	padding-left:0px !important;
	// background-color:#F6FAFF;
	width:27% !important;
}

.sidebar-col .elementor-widget-wrap {
	padding:60px 40px 60px 40px !important;
	background-color:#F6FAFF;
}

.sidebar-col ul {
	padding-left:0px;
}

.sidebar-col ul li {
	text-decoration:none;
	list-style:none;
	padding-bottom:12px;
}

.sidebar-col .elementor-element {
	margin-bottom:40px;
}

.sidebar-col h5 {
	margin-top:0px !important;
	margin-bottom:24px !important;
}

/* SINGLE POST */

.single-featured-img {
	margin-top:64px;
}

.single-featured-img .elementor-column .elementor-column-wrap {
	background-position:center center;
	background-size:cover;
	min-height:480px;
}

.single-post-content-section {
	padding-bottom:112px;
}

.single-post-content {
	width:73% !important;
}

.single-post-content h1 {
	font-size:40px;
	margin-bottom:28px !important;	
}

.single-post-content h2 {
	font-size:32px;	
}

.single-post-content ul {
	margin-bottom:32px;
}

.single-post-content-project h1 {
	font-size:40px;
	margin-bottom:64px !important;	
}

.single-post-content {
	margin-top:-180px;
	padding-top:56px;
	padding-right:48px !important;
	background-color:#ffffff;
}

.single-post-content .elementor-post-info {
	margin-bottom:24px;
}

.lingo-blog-share {
	margin-bottom:40px !important;
}

.lingo-blog-share .elementor-share-btn {
	background-color:transparent !important;
	height:24px;
}

.lingo-blog-share .elementor-share-btn:hover {
	background-color:transparent !important;
}

.lingo-blog-share .elementor-share-btn__icon {
	width:24px;
	height:24px;
}

.lingo-blog-share .elementor-share-btn .elementor-share-btn__icon i {
	color:#44a39c !important;
	font-size:24px !important;
	transition:all 0.2s ease-in-out;
}

.lingo-blog-share .elementor-share-btn:hover .elementor-share-btn__icon:hover i {
	color:#b3c938 !important;
}

.single-post-content .elementor-author-box {
	padding:48px;
	margin-top:24px;
	background-color:#F6FAFF;
}

/* GET INVOLVED */

.connect-inner-first {
	margin-bottom:32px;
}

.connect-inner-first .elementor-row {
	justify-content:space-between !important;
}

.connect-inner-first .elementor-column {
	flex-basis:32%;
	flex-basis:calc(25% - 24px);
}

.connect-inner-first .elementor-widget-container {
	background-color:#FFFFFF;
	border-radius:12px;
	overflow:hidden;
}

.connect-inner-first .elementor-widget-container .elementor-icon {
	display:flex;
	padding-top:40px;
	// text-align:center;
	justify-content:center;
	padding-bottom:16px;
	color:#44A39C;
}

.connect-inner-first .elementor-widget-container h5 {
	margin-top:0px;
	margin-bottom:0px !important;
	display:flex;
	justify-content:center;
}

.connect-inner-first .elementor-widget-container h5 a {
	flex-basis:100%;
	padding-bottom:40px;
	text-align:center;
	color:#3F597F;
}

.connect-inner-second {
	padding:80px 64px 80px 64px;
	background-color:#ffffff;
	border-radius:12px;
}

.connect-inner-second .elementor-icon {
	color:#44A39C;
}

.connect-inner-second h3 {
	margin:0px !important;
}

/* CONTACT */

.contact-col p {
	max-width:100% !important;
	margin-bottom:0px; !important;
}

.wpcf7 label {
	width:100%;
	margin-bottom:20px;
	box-sizing:border-box;
	display:block;
}

.wpcf7 br {
	display:none !important;
}

.wpcf7-form textarea { 
    height:200px;
}

.wpcf7-form input,
.wpcf7-form textarea {
	width:100%;
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:18px;
	letter-spacing:1px;
	color:#3f597f !important;
	border:3px solid #44A39C;
	border-radius:8px;
	padding:20px 24px 20px 24px;
}

.wpcf7-form input:focus {
	border-color:#b3c938;
}

.wpcf7-form input[type=submit] {
	width:100%;
	font-family:"Noto Sans", sans-serif !important;
	font-weight:700 !important;
	font-size:18px;
	letter-spacing:1px;
	color:#ffffff !important;
	border:3px solid #44A39C;
	border-radius:8px;
	padding:18px 28px 18px 28px;
	background-color:#44A39C;
}

.wpcf7-form input[type=submit]:hover {
	color:#ffffff;
	background-color:#b3c938;
	border-color:#b3c938;
}

.wpcf7-form input[type=submit]:focus {
	outline:none !important;
}

.wpcf7::-webkit-input-placeholder { /* WebKit browsers */
color: #44A39C !important;
opacity: 1;
}
.wpcf7:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
color: #44A39C !important;
opacity: 1;
}
.wpcf7::-moz-placeholder { /* Mozilla Firefox 19+ */
color: #44A39C !important;
opacity: 1;
}
.wpcf7:-ms-input-placeholder { /* Internet Explorer 10+ */
color: #44A39C !important;
opacity: 1;
}

div.wpcf7-validation-errors,
.wpcf7 div.wpcf7-response-output {
    color: #ffffff !important;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #44a39c;
	background-color:#44a39c !important;
}

.wpcf7 form.invalid .wpcf7-response-output {
    border-color: red;
	background-color:red !important;
}

.wpcf7 form .wpcf7-response-output {
    margin: 8px 0px 8px 0px !important;
	padding:20px 24px !important;
    border: none !important;
	border-radius:8px !important;
}

.wpcf7-form .wpcf7-not-valid {
	border-color:red;
}

.wpcf7-form .wpcf7-not-valid-tip {
	display:none !important;
}

.contact-col .wpcf7 p label:nth-child(3) {
    float: left;
    width: 48.5% !important;
    clear: none;
    margin-right: 3% !important
}

.contact-col .wpcf7 p label:nth-child(5) {
    float: left;
    width: 48.5% !important;
    margin-right: 0 !important;
    clear: none
}

/* FOOTER */

.footer-cta {
	z-index:20;
	padding:0px !important;
}

.footer-cta > .elementor-container > .elementor-row {
	background-color:#44A39C;
	border-radius:20px;
	padding:96px 20px 96px 20px;
	margin-bottom:-96px;
	margin-left:20px;
	margin-right:20px;
}

.footer-cta h2,
.footer-cta p {
	color:#ffffff;
}

.footer-cta p {
	max-width:600px;
	margin:0px auto 56px;
}

.cta-left-button .elementor-button-wrapper {
	text-align:right;
	margin-right:16px;
}

.cta-right-button .elementor-button-wrapper {
	text-align:left;
	margin-left:16px;
}

.footer-cta .elementor-button {
	color:#ffffff;
	border-color:#ffffff;
	width:344px;
	text-align:center;
}

.footer-cta .elementor-button:focus, .footer-cta .elementor-button:visited {
	color:#ffffff;
}

.footer-cta .elementor-button:hover {
	color:#44A39C;
	background-color:#ffffff;
}

.footer-top h3,
.footer-top h4 {
	color:#ffffff;
}

.footer-top {
	padding-top:208px;
	background-color:#2A395B;
	padding-bottom:112px;
}

.footer-top.elementor-section.elementor-section-boxed > .elementor-container,
.footer-bottom.elementor-section.elementor-section-boxed > .elementor-container {
	max-width:1100px;
}

.footer-top .elementor-icon-list-items li {
	padding:4px 0px 4px 0px !important;	
	font-weight:400 !important;
	color:#ffffff;
}

.footer-top .elementor-icon-list-items li a {
	font-weight:400 !important;
	color:#ffffff;
}

.footer-top .menu {
	list-style:none;
	padding-left:0px;
}

.footer-top .menu li a {
	display:block;
	padding:4px 0px 4px 0px !important;	
	font-weight:400 !important;
	color:#ffffff;
}

.footer-top .elementor-icon-list-items li a:hover,
.footer-top .menu li a:hover {
	color:#b3c938;
}

.footer-newsletter {
	margin-bottom:40px !important;
}

.footer-newsletter .elementor-field-type-email input {
	background-color:transparent;
}

.footer-bottom {
	padding-top:24px;
	padding-bottom:24px;
	background-color:#2A395B;
}

.footer-bottom p {
	margin-bottom:0px;
	color:#ffffff;
	font-size:14px;
}

@media screen and (min-width: 1320px) {
	.page-inner-nav.project-inner-nav nav a {
		min-width:200px;
	}	
}

@media screen and (max-width: 1025px) {
	h1,h2,h3,h4,h5,h6 {
		line-height:1.5 !important;
	}

	h1,h2,h3 {
		margin-bottom:32px !important;
	}

	h4,h5,h6 {
		margin-bottom:32px !important;
		margin-top:0px !important;
	}

	h1 {
		font-size:48px;
	}

	h2 {
		font-size:32px;
	}

	h3 {
		font-size:24px;
	}

	h4 {
		font-size:18px;
	}

	h5 {
		font-size:16px;
	}

	p {
		margin-bottom:32px;
		line-height:1.7 !important;
	}
	.lingo-header ul.menu > li > a {
		display:flex;
		font-size:16px;
		padding-left:16px !important;
		padding-right:16px !important;
		padding-top:13px;
		padding-bottom:13px;
	}
	.page-main-section.elementor-top-section {
		padding:96px 0px 96px 0px;
	}
	.page-title-section.elementor-top-section {
		padding:64px 0px 64px 0px;
	}
	.page-inner-nav nav a {
		min-width:136px;
		font-size:14px;
	}
	.img-block .elementor-widget-wrap {
		padding:56px 56px 24px 56px;
		max-width:640px;
	}
	.blue-block {
		padding:48px !important;
	}
	.hero-section h1 {
		margin-top:64px !important;
	}
	.page-inner-nav.project-inner-nav nav a {
		min-width:128px;
	}
	.projects-carousel-2 .elementor-widget-wrap {
		width:100% !important;
	}
	.projects-carousel-2 .swiper-button-next {
		left:calc(100% - 52px)
	}
	.archive-section {
		padding-top:48px;
		padding-bottom:64px;
	}
	.blog-archive-content {
		padding-right:20px !important;
		padding-bottom:40px !important;
		width:100% !important;
	}
	.single-featured-img {
		margin-top:48px;
	}
	.single-featured-img .elementor-column .elementor-column-wrap {
		min-height:400px !important;
	}
	.single-post-content-section {
		padding-bottom:64px;
	}
	.single-post-content {
		margin-top:0px;
		margin-bottom:48px;
		padding-top:48px;
		padding-right:20px !important;
		width:100% !important;
	}
	.sidebar-col {
		padding-left:20px !important;
		width:100% !important;
	}
	.sidebar-col .elementor-widget-wrap {
		padding:64px 32px 64px 32px !important;
	}
	.footer-top {
		padding-top:184px;
		padding-bottom:96px;
	}
}

@media screen and (max-width: 768px) {
	h1,h2,h3 {
		margin-bottom:32px !important;
	}

	h4,h5,h6 {
		margin-bottom:32px !important;
		margin-top:0px !important;
	}

	h1 {
		font-size:40px;
	}

	h2 {
		font-size:28px;
	}

	h3 {
		font-size:20px;
	}

	h4 {
		font-size:18px;
	}

	h5 {
		font-size:16px;
	}
	.page-main-section.elementor-top-section {
		padding:88px 0px 88px 0px;
	}
	.elementor-top-section>.elementor-container>.elementor-row>.elementor-column>.elementor-element-populated {
		margin-bottom:40px;
	}
	
	.elementor-top-section.lingo-header>.elementor-container>.elementor-row>.elementor-column>.elementor-element-populated {
		margin-bottom:0px;
	}
	.lingo-header > .elementor-container {
		padding-top:8px;
		padding-bottom:8px;
	}

	.lingo-header.elementor-sticky--effects > .elementor-container {
		padding-top:8px;
		padding-bottom:8px;
	}
	.lingo-header img {
		width:100px;
		height:auto;
	}
	.page-title-section.elementor-top-section {
		padding:48px 0px 8px 0px;
	}
	.page-inner-nav {
		display:none !important;
	}
	.page-inner-nav.project-inner-nav {
		// display:flex !important;
	}
	.img-block .elementor-widget-wrap {
		padding:0px 32px 8px 32px;
		max-width:640px;
		margin-bottom:200px;
	}
	.blue-block {
		padding:40px 20px 40px 20px !important;
	}
	.hero-section h1 {
		margin-top:48px !important;
	}
	.hero-cta-row {
		margin-top:-128px !important;
	}
	.hero-cta-row .elementor-column-wrap {
		margin-bottom:0px !important;
	}
	.hero-cta-row a.elementor-button {
		border-radius:0px !important;
		height:64px;
	}
	.key-areas-blocks .elementor-column {
		margin-bottom:40px;
		flex-basis:100%;
	}
	.team-cards .elementor-column {
		flex-basis:48%;
		flex-basis:calc(50% - 16px);
		margin-bottom:32px;
	}
	/*
	.projects-carousel .myportfolio-container {
		width:100%;
	}
	.esg-grid .mainul li.eg-project-carousel-wrapper {
		padding-right:0px !important;
	}
	.esg-filters.esg-navbutton-solo-right {
		// right:12px !important;
		left:calc(100% - 56px);
		top:47%;
		top:calc(50% - 24px);
	}
	*/
	.connect-inner-first .elementor-column {
		flex-basis:48%;
		flex-basis:calc(50% - 16px);
	}
	.connect-inner-first .elementor-column:first-child,
	.connect-inner-first .elementor-column:nth-child(2) {
		margin-bottom:32px;
	}
	.connect-newsletter-icon-box {
		margin-bottom:32px;
	}
	.archive-section {
		padding-top:48px;
		padding-bottom:48px;
	}
	.blog-archive-content {
		padding-right:20px !important;
	}
	.project-filter-section .elementor-column-wrap {
		margin-bottom:0px !important;
	}
	.breadcrumb-section .elementor-column-wrap {
		margin-bottom:0px !important;
	}
	.single-featured-img .elementor-column .elementor-column-wrap {
		min-height:400px !important;
	}
	.single-post-content-section {
		padding-bottom:48px;
	}
	.single-post-content {
		margin-top:0px;
		padding-top:48px;
		padding-right:20px !important;
	}
	.single-post-content h1 {
	font-size:32px !important;
	}

	.single-post-content h2 {
		font-size:26px;	
	}
	.single-post-content h3 {
		font-size:24px;	
	}
	.sidebar-col {
		padding-left:20px !important;
		width:100% !important;
	}
	.sidebar-col .elementor-widget-wrap {
		padding:64px 32px 64px 32px !important;
	}
	.single-post-content .elementor-author-box {
		padding:32px;
	}
	
	.footer-top {
		padding-top:160px;
		padding-bottom:88px;
	}
	.footer-cta > .elementor-container > .elementor-row {
		border-radius:20px;
		padding:64px 20px 64px 20px;
		margin-bottom:-64px;
	}
	.cta-left-button .elementor-button-wrapper {
		margin-right:0px;
	}
	.cta-right-button .elementor-button-wrapper {
		margin-left:0px;
	}
	.footer-cta .elementor-button {
		width:100%;
	}
	.cta-buttons .elementor-row .elementor-column:first-child {
		margin-bottom:20px;
	}
}

@media screen and (max-width: 480px) {
	h1,h2,h3 {
		margin-bottom:32px !important;
	}

	h4,h5,h6 {
		margin-bottom:32px !important;
		margin-top:0px !important;
	}

	h1 {
		font-size:32px;
	}

	h2 {
		font-size:28px;
	}

	h3 {
		font-size:20px;
	}

	h4 {
		font-size:18px;
	}

	h5 {
		font-size:16px;
	}
	.page-main-section.elementor-top-section {
		padding:64px 0px 24px 0px;
	}
	.page-title-section.elementor-top-section {
		padding:44px 0px 12px 0px;
	}
	.page-title-section h1 {
		margin-bottom:24px !important;
	}
	.img-block .elementor-column-wrap {
		min-height:320px;
		margin-top:320px;
	}
	.img-block .elementor-widget-wrap {
		position:absolute;
		padding:0px 0px 8px 0px;
		max-width:100%;
		margin-bottom:0px;
		top:-320px;
	}
	.lingo-spacer .elementor-spacer-inner {
		height:64px !important;
	}
	.key-areas-blocks .elementor-column-wrap {
		min-height:320px;
		margin-top:220px;
	}
	.key-areas-blocks .elementor-widget-wrap {
		position:absolute;
		background-color:#F6FAFF;
		padding:32px;
		max-width:100%;
		margin-bottom:0px;
		top:-220px;
	}
	.key-areas-blocks h3 {
		max-width:75%;	
	}
	.team-cards .elementor-column {
		flex-basis:100%;
	}
	.connect-inner-first {
		margin-bottom:20px;
	}
	.connect-inner-first .elementor-column {
		flex-basis:49%;
		flex-basis:calc(50% - 10px);
	}
	.connect-inner-first .elementor-column:first-child,
	.connect-inner-first .elementor-column:nth-child(2) {
		margin-bottom:20px;
	}
	.archive-section {
		padding-bottom:24px;
	}
	.breadcrumb-section {
		padding-top:20px;
		padding-bottom:20px;
	}
	.single-featured-img .elementor-column .elementor-column-wrap {
		min-height:300px !important;
	}
	.single-post-content-section {
		padding-bottom:24px;
	}
	.contact-col .wpcf7 p label:nth-child(3) {
		width: 100% !important;
		margin-right: 0% !important
	}

	.contact-col .wpcf7 p label:nth-child(5) {
		width: 100% !important;
		margin-right: 0 !important;
	}
	.footer-cta > .elementor-container > .elementor-row {
		border-radius:0px;
		padding:48px 0px 48px 0px;
		margin-bottom:-48px;
		margin-left:0px;
		margin-right:0px;
	}
	.footer-top {
		padding-top:156px;
		padding-bottom:64px;
	}
}