/*!
Theme Colors
*/

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

:root {
	--main-color: #4CAF50;
	--main-color-rgb: 76, 175, 80;
	--sub-color: #FFE082;
	--sub-color-rgb: 255, 224, 130;
	--point-color: #3A6EA5;
	--point-color-rgb: 58, 110, 165;
	--bg-color: #FFFFFF;
	--bg-color-rgb: 255, 255, 255;
	--bg-sub-color: #FFF8E1;
	--bg-sub-color-rgb: 255, 248, 225;
	--text-color: #1E1E1E;
	--text-color-rgb: 30, 30, 30;
	--font: "Noto Sans JP", sans-serif;
	--font-regular: 500;
	--font-bold: 800;
	--eng-font: "Open Sans", sans-serif;
	--eng-font-regular: 500;
	--eng-font-bold: 700;
}

.header {
	padding: 0.75rem 0;
}
.headerLogo {
	max-width: 7rem;
}
.header::before {
	background-color: rgba(var(--bg-color-rgb), 0);
}
.header.scrolled::before {
	background-color: rgba(var(--bg-color-rgb), 0.75);
	backdrop-filter: blur(0.1875rem);
}
.header.scrolled .headerNav a {
	color: inherit;
}
.home .headerNav a {
	color: #fff;
}
.home .main {
	margin-top: 0;
}
.main {
	margin-top: 6.035rem;
}
.topMv {
	height: 100vh;
}
.mask,
.iframe,
.filledDiv,
.bulletPointsDiv,
.singleNotes,
.faq,
.mw_wp_form,
.blogList li a,
.footerTopNav a,
.orgListImage img {
	border-top-left-radius: 2rem;
	border-bottom-right-radius: 2rem;
}
.btn,
.ctaBtn,
.wp-block-button__link,
.page-numbers,
.postLinkItem,
.inPageNav a {
	border-top-left-radius: 0.75rem;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0.75rem;
	border-bottom-left-radius: 0;
}
.topAdvantage::after {
	background-image: linear-gradient(-60deg,rgba(var(--main-color-rgb),0.05) ,transparent);
}
.topAdvantageItem:nth-child(2n-1) {
	flex-direction: row-reverse;
}
.topAdvantageItem:nth-child(2n) {
	flex-direction: row;
}
.sectionTitleJa {
	font-size: 1em;
}
.sectionTitleEn {
	font-size: 3em;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: 0;
}
.footerTopTitle {
	flex-basis: 6rem;
}
.mask.blogListImage {
	border-bottom-right-radius: 0;
}
.blogListMeta time {
	color: var(--main-color);
}
.contentTitleJa {
	font-size: 1.125em;
}
.contentTitleEn {
	font-size: 3.5em;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: 0;
	transform: translateX(-0.075em);
}
.filledDiv {
	background-color: var(--bg-sub-color);
}
.postDate {
	color: var(--main-color);
}

@media screen and (max-width: 960px) {
	.topMvTaglineTopic {
		transform: translateX(0);
		font-size: 1em;
	}
	.serviceListTitle {
		font-size: 1.1875em;
	}
}
@media screen and (max-width: 632px) {
	.main {
		margin-top: 4.0912rem;
	}
	.headerLogo {
		max-width: 4rem;
	}
	.topMvTagline {
		font-size: 1.7em;
	}
	.topMvTaglineEn {
		font-size: 0.8em;
	}
	.topMvTaglineText {
		font-size: 0.8em;
	}
	.topMvTaglineText br {
		display: contents;
	}
	.sectionTitleEn {
		font-size: 2em;
	}
	.sectionTitleJa {
		font-size: 0.85em;
	}
	.topAdvantageText {
		font-size: 0.85714286em;
	}
	.serviceList li {
		flex-basis: 100%;
	}
	.footerTopNav {
		flex-basis: 100%;
	}
	.footerBottomNavMenu {
		gap: 0.85rem;
		justify-content: center;
	}
	.contentTitleJa {
		font-size: 0.9em;
	}
	.contentTitleEn {
		font-size: 2.5em;
	}
	.headline {
		font-size: 1.45em;
	}
}