/*!
Theme Colors
*/

@import url('https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&family=Noto+Sans+JP:wght@100..900&family=Sarabun:wght@400;700&display=swap');

:root {
	/* --main-color: #0c416f;
	--main-color-rgb: 12, 65, 111;
	--sub-color: #1e6bb8;
	--sub-color-rgb: 30, 107, 184;
	--point-color: #c89b3c;
	--point-color-rgb: 200, 155, 60;
	--bg-color: #FFFFFF;
	--bg-color-rgb: 255, 255, 255;
	--bg-sub-color: #EEF2F6;
	--bg-sub-color-rgb: 238, 242, 246;
	--text-color: #222;
	--text-color-rgb: 34, 34, 34; */
	
	--main-color: #0F3E69;
	--main-color-rgb: 15, 62, 105;
	--sub-color: #2A6FB3;
	--sub-color-rgb: 42, 111, 179;
	--point-color: #C89B3C;
	--point-color-rgb: 200, 155, 60;
	--bg-color: #111820;
	--bg-color-rgb: 17, 24, 32;
	--bg-sub-color: #182330;
	--bg-sub-color-rgb: 24, 35, 48;
	--text-color: #EAF2F8;
	--text-color-rgb: 234, 242, 248;

	--font: "Noto Sans JP", sans-serif;
	--font-regular: 400;
	--font-bold: 700;
	--eng-font: "Helvetica Neue", Helvetica, "Arimo", sans-serif;
	--eng-font-regular: 400;
	--eng-font-bold: 700;
}
html[lang="en"] {
	--font: "Helvetica Neue", Helvetica, "Arimo", sans-serif;
}
html[lang="th"] {
	--font: "Sarabun", sans-serif;
}

body:not(:has(form.snow-monkey-form)) .grecaptcha-badge {
	display: none !important;
}

.header {
	border-radius: 99em;
	top: 1rem;
	left: 1rem;
	right: 1rem;
	overflow: hidden;
	padding: 0.5rem 0.5rem 0.75rem;
}
.header::before {
	background-color: #246CA0;
}
.headerLogo {
	max-width: 9rem;
}
.headerGnav,
.ctaBtn,
.footer {
	font-family: var(--eng-font);
}
.gtranslate_wrapper {
	grid-area: 1/4/2/5;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
}
.gtranslate_wrapper a.glink {
	border: 0.0625rem solid #eee;
}
.gtranslate_wrapper a.glink img {
	display: block;
	margin: 0;
}
.headerSns.snsIcons {
	grid-area: 1/3/2/4;
	display: flex;
}
.headerTel {
	display: none;
}
.headerNav {
	grid-area: 1/1/2/2;
	align-self: center;
}
.headerNav ul {
	gap: 1.5rem;
}
.headerNav li + li::before {
	display: none;
}
.headerCta {
	grid-area: 1/2/2/3;
}
.home .main {
	margin-top: 0;
}
.main {
	margin-top: 6.8081rem;
}
.topMv {
	min-height: 100vh;
	padding: 8rem 0;
}
.topMvBgImage {
	width: calc(50% - 2rem);
	left: auto;
	right: 0;
}
.topMvBgImage::after {
	display: none;
}
.topMvBg .topMvContent {
	color: inherit;
	flex-basis: calc(50% - 2rem);
	flex-grow: 0;
	display: flex;
	flex-direction: column;
}
.topMvBg .topMvContent .topMvTagline,
.topMvBg .topMvContent .topMvTaglineEn,
.topMvBg .topMvContent .topMvTaglineTopic,
.topMvBg .topMvContent .topMvTaglineText {
	text-shadow: none;
}
.topMvTagline {
	order: 2;
	color: #228DFF;
	font-size: 1.15em;
	letter-spacing: 0.2em;
	margin-bottom: 4rem;
}
.topMvTaglineEn {
	order: 1;
	font-size: 2.5em;
	line-height: 1.25;
	letter-spacing: 0;
	color: #76B8DE;
}
.topMvTaglineTopic {
	order: 3;
	font-size: 0.8125em;
	color: #34B1FF;
}
.topMvTaglineText {
	order: 4;
	font-size: 0.8125em;
	text-align: justify;
}
.topMvTaglineBtn {
	order: 5;
}
.topAdvantage {
	background-image: linear-gradient(-60deg,rgba(var(--main-color-rgb),0.35) 50%,rgba(var(--main-color-rgb),0.05) 50%);
}
.topAdvantageInfo::before {
	color: #5499C5;
	-webkit-text-stroke: 0;
}
.topAdvantageTitleSub {
	color: #34B1FF;
}
.colorSection {
	border-radius: 3rem 3rem 0 0;
	/* background-color: rgba(var(--main-color-rgb),0.25); */
	background-color: #76B8DE;
}
.sectionTitle {
	flex-direction: column-reverse;
}
.sectionTitleEn {
	text-transform: uppercase;
	font-size: 3em;
	line-height: 1;
	letter-spacing: 0;
	text-indent: 0;
}
.sectionTitleJa {
	font-size: 1em;
}
.contentTitle {
	flex-direction: column-reverse;
}
.contentTitleEn {
	text-transform: uppercase;
	font-size: 3em;
	line-height: 1;
	letter-spacing: 0;
	transform: none;
}
.contentTitleJa {
	font-size: 1em;
	display: none;
}
html.translated-ltr .sectionTitleJa,
html.translated-ltr .contentTitleJa {
	display: none;
}
.btn .ph {
	background-color: inherit;
	color: inherit;
}
.serviceListTitle::before {
	border-radius: 100%;
	width: 0.4em;
	height: 0.4em;
	top: 0.6em;
}
.serviceListTitle {
	padding-left: 0;
	font-size: 1.125em;
	color: #5499C5;
}
.serviceListTitle::before {
	display: none;
}
.serviceListBtn.btn {
	padding: 0;
	width: 5.5em;
	border: 0;
}
.serviceListBtn.btn .ph {
	right: 0;
}
.worksList a::after {
	background-image: linear-gradient(to bottom right,var(--sub-color) 50%,transparent 50%);
}
.colorSection .btn {
	color: var(--sub-color);
}
.faq {
	background-color: var(--sub-color);
}
.flow dl::after {
	background-color: #5499C5;
}
.flow dl:not(:last-child)::before {
	background-color: #5499C5;
}
.faq .ph {
	color: #76B8DE;
}
.filledDiv, .bulletPointsDiv, .singleNotes, .faq, .snow-monkey-form, .blogList li a, .footerTopNav a {
	border-radius: 1rem;
}
.blogListCategory {
	border: 0.0625rem solid;
	border-radius: 1em;
	padding: 0 1em;
	margin-left: 0.5em;
	font-size: 0.92307692em;
}
.blogListCategory::before {
	display: none;
}
.blogListMeta time {
	font-weight: var(--eng-font-regular);
	color: var(--sub-color);
}
.blogList li a {
	color: var(--main-color);
	border: 0.0625rem solid rgba(var(--main-color-rgb),0.15);
}
.ctaSectionContent .sectionTitleEn {
	color: #76B8DE;
}
.footer {
	color: #fff;
}
.footerTopTitle {
	flex-basis: 8rem;
}
.facebookDiv .sectionTitleEn {
	text-transform: none;
}
.facebookDiv .sectionTitleJa {
	display: none;
}
.facebookDiv iframe {
	margin: auto;
	display: block;
}
.contents p a {
	text-decoration: underline;
}
.groupMap img {
	width: 100%;
}
a, .btn, .wp-block-button__link, .inPageNav a {
	color: var(--sub-color);
}
.headline.serviceTitle {
	color: #76B8DE;
}
.bulletPointsDiv {
	border-color: #76B8DE;
}
.bulletPointsTitle,
.bulletPoints .ph {
	color: #76B8DE;
}
.greetingImage {
	float: left;
	width: 40%;
	margin: 0 1.5rem 0.5rem 0;
}
.colorSection.requirementsSection {
	background-color: rgba(var(--main-color-rgb),0.25);
}
.snow-monkey-form {
	background-color: var(--sub-color);
}
.worksTitle {
	color: #76B8DE;
}
.recruitHeadline {
	color: #76B8DE;
}
.snow-monkey-form .smf-item__controls .note a {
	color: var(--text-color);
}
.filledDiv {
	background-color: rgba(var(--main-color-rgb),0.2);
}

@media screen and (max-width: 960px) {
	.headerNav {
		order: 1;
	}
	.headerCta {
		order: 2;
	}
	.headerSns.snsIcons {
		order: 3;
	}
	.gtranslate_wrapper {
		order: 4;
		justify-content: center;
		gap: 0.5em;
	}
	.headerSpNavToggle i {
		background-color: #fff;
	}
	.topMv {
		min-height: auto;
		padding: 33rem 0  3rem;
	}
	.topMvBgImage {
		width: 100%;
		height: 30rem;
	}
	.topMvTaglineEn {
		font-size: 2.35em;
	}
}
@media screen and (max-width: 632px) {
	.header {
		left: 0.5rem;
		right: 0.5rem;
		top: 0.5rem;
		padding: 0.5rem;
	}
	.headerLogo {
		max-width: 6rem;
	}
	.main {
		margin-top: 4.33rem;
	}
	.topMvBgImage {
		height: 24rem;
	}
	.topMv {
		padding: 26rem 0  2rem;
	}
	.topMvTaglineEn {
		font-size: 1.65em;
	}
	.topMvTagline {
		font-size: 1em;
		margin-bottom: 3rem;
	}
	.sectionTitleEn {
		font-size: 2em;
	}
	.topAdvantageInfo::before {
		font-size: 3em;
	}
	.serviceList li.pickup .serviceListImage {
		margin-bottom: 0.5rem;
	}
	.serviceList a {
		gap: 0.5rem;
	}
	.serviceListText {
		font-size: 0.8em;
	}
	.footerTopNav a {
		color: var(--main-color);
	}
	.contentTitleEn {
		font-size: 2em;
	}
	.serviceList.serviceListInWorks li {
		flex-basis: 100%;
		padding-bottom: 0;
	}
}