/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

:root {
	--color-white: #FFFFFF;
	--color-black: #333333;
	--color-gray: #EEEEEE;
	
	--color-blue: #044377;
	--color-blue-dark: #162961;
	--color-blue-light: #F2F5F6;
	--color-skyblue: #2B8BBD;
	
	--color-red: #CC0002;
	--color-red-dark: #8C0000;
	
	--color-main: var(--color-blue);
	--color-sub: var(--color-skyblue);
	--color-link: #03528A;
	--color-line: #CCCCCC;
	--color-list-marker: #054479;
	--color-gradient: linear-gradient(to right, #0078B7 10%,var(--color-link),#071945);
}

/**
 * overwrite
 */
html {
	font-feature-settings: "palt";
}

body, button, input, select, textarea, .ast-button, .ast-custom-button {
	font-family: "Roboto", "Noto Sans JP", sans-serif;
}

#content {
	--e-global-color-primary: #044377;
    --e-global-color-secondary: #2B8BBD;
    --e-global-color-text: #333333;
    --e-global-color-accent: #162961;
    --e-global-typography-primary-font-family: "Noto Sans JP", sans-serif;
    --e-global-typography-primary-font-weight: 600;
    --e-global-typography-secondary-font-family: "Noto Sans JP", sans-serif;
    --e-global-typography-secondary-font-weight: 400;
    --e-global-typography-text-font-family: "Noto Sans JP", sans-serif;
    --e-global-typography-text-font-weight: 400;
    --e-global-typography-accent-font-family: "Noto Sans JP", sans-serif;
    --e-global-typography-accent-font-weight: 500;
	
	--e-a-color-black: var(--color-black);
}

.entry-content .e-con {
	--padding-top: 0;
    --padding-right: 0;
    --padding-bottom: 0;
    --padding-left: 0;
	
	--gap: var(--widgets-spacing, 0);
    --row-gap: var(--widgets-spacing-row, 0);
    --column-gap: var(--widgets-spacing-column, 0);
}

#content .entry-content p {
	margin-bottom: 0;
}
.entry-content p+p {
	margin-top: 1.6em;
}

.has-text-align-center {
	text-align: center;
}

button.ast-menu-toggle {
	box-shadow: initial;
}


/**
 * common - component
 */
.elementor-heading-title {
	letter-spacing: 0.05em;
}

.c-page-heading.e-con {
	height: 16rem;
	padding: 0;
}
.c-page-heading-mb.e-con {
	margin-bottom: 40px;
}
.c-page-heading .e-con-inner {
	max-width: 100%!important;
}
.c-page-heading .elementor-widget-image {
	border-radius: 0!important;
}
.c-page-heading .elementor-widget-image::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
}
.page .c-page-heading .elementor-widget-image img {
    position: relative;
	object-position: top;
}
.c-page-heading .elementor-widget-heading {
	position: absolute;
	left: 20px;
	bottom: 1rem;
	z-index: 2;
}
.c-page-heading .elementor-widget-heading .elementor-heading-title {
	filter: drop-shadow(2px 4px 6px rgba(255, 255, 255, 0.5));
	color: var(--color-white);
}

@media screen and (min-width: 768px) {
	.c-page-heading-mb.e-con {
		margin-bottom: 60px;
	}
}

@media screen and (min-width: 922px) {
	.c-page-heading .elementor-widget-heading {
		left: 35px;
	}
	.page .c-page-heading .elementor-widget-image img {
		height: auto;
		top: -20%;
	}
}

@media screen and (min-width: 1181px) {
	.c-page-heading-mb.e-con {
		margin-bottom: 80px;
	}
}

.c-lead p,
.site-above-footer-wrap p.has-text-align-center {
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 2.5;
}

.elementor-widget-heading h2.elementor-heading-title {
	line-height: 1.6;
}
.elementor-widget-heading h3.elementor-heading-title {
	font-size: 1.5rem;
	font-weight: 700;
}
.elementor-widget-heading h4.elementor-heading-title {
	margin: 2em 0 1em;
}
.elementor-widget-heading h4.elementor-heading-title::before {
	content: "";
	display: inline-block;
	position: relative;
	top: 0.125em;
	width: 4px;
	height: 1em;
	margin-right: 0.5em;
	background: var(--color-blue);
}
.elementor-widget-heading:first-child h4.elementor-heading-title {
	margin-top: 0.5em;
}

.page header.entry-header {
	display: flex;
    flex-direction: column;
}
.page header.entry-header,
#content .c-section__head {
	gap: 0.75rem 1.75rem;
	margin-bottom: 3.5rem;
}
header.entry-header .entry-title,
.c-section__head-title.elementor-widget-heading .elementor-heading-title {
	padding: 0;
	font-size: 3rem;
    font-weight: 500;
	line-height: 1.4;
}
.c-section__head-subtitle {
	font-size: 1.1rem;
    font-style: italic;
    letter-spacing: 0.05em;
    opacity: 0.5;
}
.c-section__head-subtitle p::before {
	content: "—";
	display: inline-block;
	margin-right: 1em;
}

header.entry-header,
.c-section__head:not(:has(.c-section__head-subtitle)) {
	text-align: center;
	font-weight: 600;
}
header.entry-header::after,
.c-section__head:not(:has(.c-section__head-subtitle))::after {
	content: "";
	display: block;
	width: 2rem;
	height: 4px;
	margin: 0.5rem auto 0;
	background: var(--e-global-color-primary);
	opacity: 0.5;
}
.u-bg-blue .c-section__head:not(:has(.c-section__head-subtitle))::after {
	background: var(--color-white);
}
header.entry-header::after {
	background: var(--color-black);
}

@media screen and (max-width: 767px) {
	.page header.entry-header,
	#content .c-section__head {
		margin-bottom: 2rem;
	}
	header.entry-header .entry-title,
	.c-section__head-title.elementor-widget-heading .elementor-heading-title {
		font-size: 2.5rem;
	}
}

.c-section-fv .elementor-icon {
	position: absolute;
	bottom: 1rem;
	right: 1rem;
	font-size: 1rem;
	filter: drop-shadow(0 4px 8px rgba(4, 67, 119,0.5));
	opacity: 0.8;
}
.c-section-fv .elementor-widget-icon.elementor-view-default  .elementor-icon svg {
	fill: var(--color-white);
}
@media screen and (min-width: 768px) {
	.c-section-fv .elementor-icon {
		bottom: 2.5rem;
		right: 2.5rem;
		font-size: 2rem;
	}
}

/*.c-section-fv .elementor-widget-video ::before {
	content: "";
	display: block!important;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.2);
	background-color: rgba(4, 67, 119,0.2);
}*/

.e-con.c-fv__head {
	position: absolute;
	left: 35px;
	bottom: 2rem;
	z-index: 2;
	gap: 0;
	width: fit-content;
	filter: drop-shadow(0 4px 8px rgba(4, 67, 119,0.5));
}

.c-fv__head-subtitle p {
	font-size: min(2.67vw, 40px);
	line-height: 1;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: var(--color-white);
}

.e-con.c-fv__head .elementor-heading-title {
	margin-top: calc(17 / 120 * 1em);
	font-family: "Roboto Condensed", sans-serif;
	font-size: min(8vw, 120px);
	line-height: 1;
	font-weight: 700;
	letter-spacing: 0;
	color: var(--color-white);
}

.c-heading-bg {
	z-index: 1;
}
.c-heading-bg .elementor-heading-title {
	width: fit-content;
	padding: 0em 0.2em 0.1em 0.3em;
	background: var(--color-white);
	font-size: 2.5rem;
	line-height: 1.2;
	color: var(--color-blue)!important;
}

@media screen and (max-width: 921px) {
	.e-con.c-fv__head {
		left: 20px;
		bottom: 1rem;
	}
}

@media screen and (max-width: 767px) {
	.c-fv__head-subtitle p {
		font-size: 5.333333vw;
	}
	.e-con.c-fv__head .elementor-heading-title {
		margin-top: calc(10 / 40 * 1em);
		font-size: 13.333333vw;
		line-height: 0.9;
	}
		
	.c-heading-bg .elementor-heading-title {
		margin: -0.75em auto 0;
		text-align: center;
		font-size: 1.7rem;
	}
}

/* @media screen and (min-width: 768px) {
	.c-heading-bg .elementor-heading-title {
		margin-left: calc(-40px - 0.2em);
		padding-left: calc(40px + 0.2em);
	}
	.u-text-right-pc .c-heading-bg .elementor-heading-title {
		margin-left: auto;
		margin-right: calc(-40px - 0.2em);
		padding-right: calc(40px + 0.2em);
	}
} */


/*** utility ***/
.u-en {
	font-family: "Roboto Condensed", sans-serif;
}

.u-large p {
	font-size: 1.25rem;
    line-height: 2;
}

.u-large  {
	font-size: 1.25em;
}

.u-small {
	font-size: 0.85em;
}

.u-smaller {
	font-size: 0.7em;
}

.u-bold {
	font-weight: 700;
}

.u-bg-white {
	background: var(--color-white);
}

.u-bg-gray {
	background: var(--color-blue-light);
}
.u-bg-gray * {
	color: var(--color-black);
}

.u-bg-blue {
	background: var(--color-blue);
}
.u-bg-blue *,
.u-bg-blue .elementor-widget-heading .elementor-heading-title{
	color: var(--color-white);
}

.u-text-blue {
	color: var(--color-blue);
}

.u-hidden {
	display: none!important;
}

.u-block {
	display: block!important;
}

.u-box-center {
	width: fit-content;
    margin: auto;
}

.u-bg-logo .e-con-inner {
	position: relative;
	max-width: initial!important;
}
.u-bg-logo .e-con-inner .elementor-element {
	position: relative;
	z-index: 3;
}
.u-bg-logo .e-con-inner::after {
	content: "";
	position: absolute;
	right: -2%;
	bottom: -8%;
	width: 50%;
	aspect-ratio: 1;
	background: url(https://hl-recruit.me/wp-content/uploads/2025/07/bg_logo.png) no-repeat;
	background-size: contain;
	opacity: 0.05;
}
@media screen and (max-width: 767px) {
	.u-bg-logo .e-con-inner {
		overflow: hidden;
	}
}
@media screen and (min-width: 768px) {
	.u-bg-logo .e-con-inner::after {
		width: min(38%, 600px);
	}
}

.site-content:not(:has(.elementor)) .entry-content a {
	transition: 0.3s;
}
.custom-logo-link,
#ast-scroll-top,
#content .u-link {
	text-decoration: none;
	cursor: pointer;
	transition: 0.3s;
}
.site-content:not(:has(.elementor)) .entry-content a:hover,
.custom-logo-link:hover,
#ast-scroll-top:hover,
.u-link:hover {
	text-decoration: none;
	opacity: 0.5;
}

.u-link .elementor-widget-image {
	overflow: hidden;
}
.u-link img {
	width: 100%;
	transition: 0.3s;
}
.u-link:hover img {
	scale: 1.1;
}
.u-link-hover-shadow:hover {
	opacity: 1;
	filter: drop-shadow(0 4px 8px rgba(0,0,0,0.6));
}

.page .elementor-widget-image,
.u-img {
	aspect-ratio: 3 / 2;
	border-radius: 0.25rem;
	overflow: hidden;
}
.page .elementor-widget-image img,
.u-img img {
	width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.u-link .elementor-widget-image {
	border-radius: initial;
}

.u-text-gradient>* {
	background: var(--color-gradient);
	-webkit-background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    background-clip: text;
    text-fill-color: rgba(0,0,0,0);
}


@media screen and (min-width: 768px) {
	.u-sp {
		display: none;
	}
	
	.elementor-element:has(> .c-heading-bg) {
		padding-top: 3rem;
	}
	
	.u-text-right-pc * {
		text-align: right;
	}
}

@media screen and (max-width: 767px) {
	.u-pc {
		display: none;
	}
}

/*** button ***/
.wp-block-buttons,
.elementor-widget-button {
	margin-top: 2.5rem;
}

.elementor-widget-button {
	width: 100%;
}
input[type="submit"].wpcf7-submit,
.ast-header-break-point .main-navigation ul .menu-item-247,
.main-header-menu .menu-item-247,
.wp-block-button,
#content .elementor-widget-button .elementor-button {
	display: inline-block;
	position: relative;
	width: min(335px, 100%);
	padding: 1.2em 0;
	background: var(--color-gradient);
	border: 1px solid transparent;
	border-radius: 5em;
	text-align: center;
	font-size: calc(15 / 16 * 1rem);
	overflow: hidden;
	cursor: pointer;
}
.ast-header-break-point .main-navigation ul .menu-item-247 .menu-link,
.main-header-menu .menu-item-247 .menu-link,
.wp-block-button .wp-block-button__link,
.elementor-button-content-wrapper {
	display: block;
	position: relative;
	z-index: 2;
	width: min(335px, 100%);
	padding: 0 4em;
	border: initial;
	background: initial;
	font-size: calc(15 / 16 * 1rem);
	font-weight: 500;
	letter-spacing: 0.05em;
	color: var(--color-white);
}
.elementor-widget-button .elementor-button .e-fas-arrow-right {
	position: absolute;
	right: 1.0em;
	z-index: 2;
	transition: 0.3s;
}
.elementor-widget-button .elementor-button svg path {
	transition: 0.4s;
}
.main-header-menu .menu-item-247::after,
.wp-block-button::after,
#content .elementor-widget-button .elementor-button::after {
	content: '';
    position: absolute;
    z-index: 1;
    left: -40%;
    top: 0;
    -webkit-transform: skew(50deg);
    -ms-transform: skew(50deg);
    transform: skew(50deg);
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    width: 0;
    height: 100%;
    background-color: rgba(255,255,255,1);
}
.ast-header-break-point .main-navigation ul .menu-item-247:hover .menu-link,
.main-header-menu .menu-item-247:hover .menu-link,
.wp-block-button:hover .wp-block-button__link,
#content .elementor-widget-button .elementor-button:hover,
#content .elementor-widget-button .elementor-button:hover .elementor-button-content-wrapper {
	color: var(--color-link);
}
.wp-block-button .wp-block-button__link:hover, 
.wp-block-button .wp-block-button__link:focus {
	border: initial;
	background: initial;
}
.elementor-widget-button .elementor-button:hover svg path {
	fill: var(--color-link);
}
.elementor-widget-button .elementor-button:hover .e-fas-arrow-right {
	right: calc(1.0em - 4px);
}
.main-header-menu .menu-item-247:hover::after,
.wp-block-button:hover::after,
#content .elementor-widget-button .elementor-button:hover::after {
	width: 140%;
    height: 100%;
}

@media screen and (max-width: 921px) {
	.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item-247 > .menu-link {
		line-height: 1;
		color: var(--color-white);
	}
	.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item-247:hover > .menu-link {
		background: transparent;
		color: var(--color-link);
	}
}


/**
 * common - layout
 */

.ast-container {
	max-width: initial;
	padding-left: initial;
	padding-right: initial;
}
.ast-single-post.ast-page-builder-template .site-main > article, .woocommerce.ast-page-builder-template .site-main, .ast-page-builder-template .post-navigation {
	padding: 0;
}

.site-content {
	padding-top: 80px;	
}

.site-content:has(.elementor) .entry-header {
	display: none;
}

.entry-title {
	margin: 0;
	padding: 1em 0;
	text-align: center;
}

.ast-builder-grid-row-container-inner,
.page .entry-header,
.site-content:not(:has(.elementor)) .entry-content {
	width: min(100%, 1140px);
	margin: 0 auto;
}

.site-content:not(:has(.elementor)) .entry-content .wp-block-heading {
	margin: 2em 0 1em;
}

.entry-content[data-ast-blocks-layout] > figure {
	margin: 1em 0;
}

.site-above-footer-wrap {
	padding-top: 60px;
	padding-bottom: 60px;
}

@media screen and (max-width: 1180px) {
	.ast-builder-grid-row-container-inner {
		padding-left: 40px;
		padding-right: 40px;
	}
	.site-above-footer-wrap {
		padding-top: 40px;
		padding-bottom: 40px;
	}
}

@media screen and (max-width: 921px) {
	.site-content {
		padding-top: 60px;	
	}
}

@media screen and (max-width: 767px) {
	.ast-builder-grid-row-container-inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	.ast-scroll-to-top-right {
		right: 20px;
	}
}

/*** header ***/
.site-header {
	position: fixed;
	width: 100%;
	box-shadow: 0 4px 10px -2px rgba(0,0,0,.1);
}

.site-header-section {
	margin: -2px 0;
}

.ast-primary-header-bar {
	border-bottom: initial!important;
}

.site-primary-header-wrap .ast-builder-grid-row {
	grid-column-gap: initial;
}

.ast-logo-title-inline .site-logo-img {
	width: 240px;
	padding-right: 0;
}

.main-header-menu {
	align-items: center;
	gap: 1px;
}

.main-header-menu .menu-link {
	position: relative;
	width: auto;
}

.main-header-menu .menu-link::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: var(--color-main);
	transition: 0.4s;
	scale: 0;
}

.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link::after,
.main-header-menu .menu-link:hover::after {
	scale: 1;
}

.ast-builder-menu-1 .menu-item:hover > .menu-link,
.ast-builder-menu-1 .inline-on-mobile .menu-item:hover > .ast-menu-toggle,
.ast-builder-menu-1 .menu-item.current-menu-item:not(.menu-item-247) > .menu-link {
	color: var(--color-main);
}
.ast-builder-menu-1 .menu-item.current-menu-item.menu-item-247 > .menu-link {
	color: var(--color-white);
}
.ast-builder-menu-1 .menu-item.current-menu-item.menu-item-247:hover > .menu-link {
	color: var(--color-main);
}

.ast-builder-menu-1 .sub-menu {
	border-top-width: 0;
}

.main-header-menu .sub-menu {
	width: 100%;
}

.main-header-menu .sub-menu .menu-link::after {
	width: 4px;
	height: 100%;
}

.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item-247 {
	margin: 1em auto 2em;
}

.main-header-menu .menu-item-247 {
	width: 200px;
}

.main-header-menu .menu-item-247 .menu-link {
	width: 100%;
	padding: 0;
}

.main-header-menu .menu-item-247 .menu-link::after {
	display: none;
}

.ast-desktop .ast-primary-header-bar .main-header-menu  .menu-item-247 >  .menu-link {
	line-height: 1;
}

.ast-header-break-point .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle>.ast-icon.icon-arrow {
	position: relative;
    left: 0.8em;
}

@media screen and (min-width: 922px) and (max-width: 1180px) {
	#menu-item-171 {
		display: none;
	}
}

@media screen and (max-width: 1180px) {
	.ast-logo-title-inline .site-logo-img {
		width: 170px;
	}
	
	.main-header-menu .menu-item-247 {
		width: 160px;
	}
}

@media screen and (max-width: 921px) {
	.site-header-primary-section-right .ast-builder-layout-element.ast-flex.site-header-focus-item {
		position: relative;
		left: 0.9em;
	}
	
	.ast-mobile-header-wrap .ast-primary-header-bar, .ast-primary-header-bar .site-primary-header-wrap {
		min-height: 60px;
	}
	
	.main-navigation {
		box-shadow: 0 4px 10px -2px rgba(0,0,0,.1);
	}
	
	.main-header-menu .menu-link::after {
		width: 4px;
		height: 100%;
		scale: initial;
		opacity: 0;
	}
	
	.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link::after {
		opacity: 1;
	}
}

@media screen and (min-width: 922px) {
	.main-header-menu .menu-item-247 {
		margin-left: 0.5rem;
	}
}

/*** footer ***/
.ast-footer-row-mobile-stack .site-footer-section {
	margin-bottom: 0!important;
}

.site-footer .menu-link {
	color: var(--color-white);
	transition: 0.4s;
}

.site-footer .menu-link:hover {
	opacity: 0.5;
}

#astra-footer-menu {
	display: grid;
    grid-template-rows: repeat(5, auto);
    grid-auto-flow: column;
	gap: 0.5rem 3rem;
}

#astra-footer-menu .menu-item,
#astra-footer-menu .menu-item > a.menu-link {
	display: block;
	padding: 0;
}

.site-above-footer-wrap[data-section="section-above-footer-builder"] {
	position: relative;
	background: url(https://hl-recruit.me/wp-content/uploads/2025/07/bg_footer.jpeg) no-repeat center;
    background-size: cover;
}

body:not(.page-id-2) .site-above-footer-wrap[data-section="section-above-footer-builder"] {
	color: #fff;
}

.site-above-footer-wrap .ast-builder-grid-row-container-inner {
	position: relative;
	z-index: 1;
}

body:not(.page-id-2) .site-above-footer-wrap .ast-builder-grid-row-container-inner {
	filter: drop-shadow(0 4px 8px rgba(0,0,0,0.12));
}

.site-above-footer-wrap::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
}

.site-above-footer-wrap .wp-block-button {
	filter: drop-shadow(0 4px 8px rgba(0,0,0,0.12));
}

body:not(.page-id-2) .site-above-footer-wrap .wp-block-button {
	border: initial;
	padding: calc(1.2em + 1px) 0;
}

body:not(.page-id-2) .wp-block-button .wp-block-button__link {
	padding: 0 calc(4em + 1px);
}

.site-primary-footer-wrap {
	padding: 60px 0;;
}

.site-primary-footer-wrap .ast-builder-grid-row {
	grid-template-columns: auto auto;
}

.ast-builder-footer-grid-columns {
	grid-row-gap: 2rem;
}

.site-primary-footer-wrap img {
	filter: brightness(0) invert(1);
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"],
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
	background-color: var(--color-main);
	border: initial;
	color: var(--color-white);
}

.site-below-footer-wrap {
	padding: 0 0 2.25rem;
}

.site-below-footer-wrap[data-section="section-below-footer-builder"],
.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row {
	min-height: initial;
}

.ast-footer-copyright {
	padding: 0;
	font-size: 0.75rem;
	color: var(--color-white);
}

@media screen and (max-width: 1180px) {
	.site-primary-footer-wrap {
		padding: 40px 0;
	}
}

@media screen and (max-width: 767px) {
	.site-below-footer-wrap {
		padding: 0 0 2.6rem;
	}
}

@media screen and (min-width: 545px) {
	.site-primary-footer-wrap .ast-builder-grid-row {
		display: flex;
		justify-content: center;
	}

	.footer-widget-area[data-section="section-footer-menu"] .astra-footer-tablet-vertical-menu {
		justify-content: flex-start;
	}
}

@media screen and (min-width: 768px) {
	.site-above-footer-wrap p.has-text-align-center {
		font-size: 1.2rem;
		line-height: 3;
	}
}

@media screen and (min-width: 1181px) {
	#astra-footer-menu {
		grid-auto-flow: row;
		grid-template-columns: repeat(3, auto);
	}
	.site-primary-footer-wrap .ast-builder-grid-row {
		gap: 100px;
	}	
}

/*** elementor ***/
.elementor-widget .elementor-icon-list-items .elementor-icon-list-item {
	align-items: flex-start;
}
.elementor-widget  .elementor-icon-list-item + .elementor-icon-list-item {
	margin-top: 0.5em;
}
.elementor-widget-icon-list .elementor-icon-list-item .elementor-icon-list-text {
	color: var(--color-black);
}
.u-bg-blue .elementor-widget-icon-list .elementor-icon-list-item .elementor-icon-list-text {
	color: var(--color-white);
}
.u-bg-blue .elementor-widget-icon-list .elementor-icon-list-icon svg {
	fill: var(--color-white);
}
.elementor-widget .elementor-icon-list-item .elementor-icon-list-icon {
	top: 0.45em;
}
.elementor-widget .elementor-icon-list-item .elementor-icon-list-icon .e-fas-circle {
	width: 0.5em;
}
.u-bold.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text {
	font-weight: 700;
}

body.page-id-2 .elementor>.e-con:nth-child(2n-1):not(.c-section-fv) {
	background-color: var(--color-main);
}
body.page-id-2 .elementor>.e-con:nth-child(2n-1):not(.c-section-fv) *,
body.page-id-2 .elementor>.e-con:nth-child(2n-1):not(.c-section-fv) .elementor-heading-title {
	color: var(--color-white);
}

body.page-id-144 .elementor>.e-con:nth-child(2n):not(.c-section-fv) {
	background-color: var(--color-main);
}
body.page-id-144 .elementor>.e-con:nth-child(2n):not(.c-section-fv) *,
body.page-id-144 .elementor>.e-con:nth-child(2n):not(.c-section-fv) .elementor-heading-title {
	color: var(--color-white);
}

.site-content:not(:has(.elementor)) .site-main > article.page,
.e-con:not(.c-page-heading):not(.c-section-fv)>.e-con-inner {
	padding-top: 80px;
	padding-bottom: 100px;
}

@media screen and (max-width: 1180px) {
	.site-content:not(:has(.elementor)) .site-main > article.page,
	.e-con:not(.c-page-heading):not(.c-section-fv)>.e-con-inner {
		padding: 60px 40px;
	}
}

@media screen and (max-width: 767px) {
	.site-content:not(:has(.elementor)) .site-main > article.page,
	.e-con:not(.c-page-heading):not(.c-section-fv)>.e-con-inner {
		padding: 40px 20px;
	}
}

@media screen and (min-width: 1200px) {
	.ast-plain-container.ast-no-sidebar #primary {
        margin-top: 0;
        margin-bottom: 0;
    }
}


/**
 * home - トップページ
 */

.c-section-fv.elementor-element-74671e0 {
	cursor: pointer;
}

.page-id-2 .site-above-footer-wrap::before {
	background-color: rgba(255,255,255,0.85);
}

.e-con.c-fv__head.elementor-element-e12cf52 {
	opacity: 1;
	animation: fadeOut 1s ease forwards;
	animation-delay: 2.5s;
}

@keyframes fadeOut {
  to {
    opacity: 0;
    visibility: hidden;
  }
}

/* catch */
.elementor-element-3f1256f .e-con-inner .elementor-element {
	width: fit-content;
}

.elementor-element-3f1256f h2.elementor-heading-title {
	font-size: min(5vw, 80px);
}

@media screen and (max-width: 767px) {
	.elementor-element-3f1256f.e-con:not(.c-section-fv) > .e-con-inner {
		flex-direction: column;
		padding-left: 0;
		padding-right: 0;
	}
	
	/*.e-con.c-fv__head.elementor-element-e12cf52 {
		display: none;
	}*/
	
	.elementor-element-3f1256f h2.elementor-heading-title {
		margin-bottom: 0.75em;
		font-size: 1.5rem;
	}
}

@media screen and (min-width: 768px) {
	.elementor-element-3f1256f.e-con:not(.c-section-fv) > .e-con-inner {
		max-width: initial;
		padding: min(6vw, 96px) 0;
		gap: min(4vw, 64px);
	}
	
	.elementor-element-3f1256f h2.elementor-heading-title {
		font-weight: 300;
	}
	
	.elementor-element-3f1256f p {
		font-size: min(1.6vw, 24px);
	}

	#content .elementor-element-3f1256f .elementor-widget-button .elementor-button,
	.elementor-element-3f1256f .elementor-button-content-wrapper {
		width: 100%;
		font-size: min(1.6vw, 24px);
	}
}

/* Our Solutions */
.elementor-element.elementor-element-6abc044 h2.elementor-heading-title {
	margin-bottom: 0.8em;
	padding-bottom: 0.1em;
	font-size: 4rem;
}

.elementor-element.elementor-element-6abc044 h2.elementor-heading-title::before {
	content: "Point";
	display: inline-block;
	margin-right: 1em;
	font-size: 0.4em;
	font-style: italic;
	letter-spacing: 0.01em;
	opacity: 0.5;
}

.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(1) h2.elementor-heading-title::before {
	content: "Point 01";
}
.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(2) h2.elementor-heading-title::before {
	content: "Point 02";
}
.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(3) h2.elementor-heading-title::before {
	content: "Point 03";
}
.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(4) h2.elementor-heading-title::before {
	content: "Point 04";
}
.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(5) h2.elementor-heading-title::before {
	content: "Point 05";
}
.elementor-element.elementor-element-6abc044 > .elementor-element:nth-child(6) h2.elementor-heading-title::before {
	content: "Point 06";
}

@media screen and (max-width: 767px) {
	.elementor-element.elementor-element-6abc044 h2.elementor-heading-title {
		margin-bottom: 0;
		padding: 0.5em 0 0.5em;
		font-size: 1.9rem;
	}
	.elementor-element.elementor-element-6abc044 h2.elementor-heading-title::before {
		display: block;
		font-size: 0.5em;
	}
	.elementor-element.elementor-element-6abc044 p br:not(.u-sp) {
		display: none;
	}
	.elementor-element.elementor-element-6abc044 p.elementor-heading-title {
		width: 100%;
		padding: 0.2em 0 0.25em;
		font-size: 7vw;
	}
	.elementor-element.elementor-element-6abc044 p:not(.elementor-heading-title) {
		margin-top: -0.5em;
	}
}

@media screen and (min-width: 768px) {
	.elementor-element.elementor-element-6abc044 .c-heading-bg .elementor-heading-title {
		margin-left: calc(-40px - 0.2em);
		padding-left: calc(40px + 0.2em);
	}
	.elementor-element.elementor-element-6abc044 .u-text-right-pc .c-heading-bg .elementor-heading-title {
		margin-left: auto;
		margin-right: calc(-40px - 0.2em);
		padding-right: calc(40px + 0.2em);
	}
	
	.elementor-element.elementor-element-6abc044 h2.elementor-heading-title {
		border-bottom: 1px solid rgba(255,255,255,0.5);
	}
	
	.elementor-element.elementor-element-6abc044 p:not(.elementor-heading-title) {
		font-size: 1.2rem;
	}
}


/* Careers */
.elementor-element-dde111f .u-link {
	position: relative;
}

.elementor-element-dde111f .u-link > .elementor-element:first-child {
	border-bottom: 8px solid var(--color-blue);
}

.elementor-element-dde111f .elementor-widget-heading {
	position: initial;
}

.elementor-element-dde111f .elementor-widget-heading .elementor-heading-title {
	position: absolute;
	right: 0;
	bottom: -8px;
	z-index: 1;
	padding: 0.3em 1em 0.4em;
	background: var(--color-blue);
	font-size: 2rem;
	border-top-left-radius: 0.25rem;
	color: var(--color-white);
}

.elementor-element-dde111f .elementor-widget-text-editor {
	padding: 1.5em 0.5em;
/* 	border-top: 10px solid var(--color-main); */
	background: var(--color-blue-light);
}

.elementor-element-dde111f .u-link::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
}
.elementor-element-dde111f .u-link:hover {
	opacity: 1;
}
.elementor-element-dde111f .u-link::after {
	content: "詳しく見る ＞";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	margin: auto;
	padding: 0.5em 1em 0.5em 2em;
	border: 1px solid var(--color-white);
	border-radius: 0.25rem;
	letter-spacing: 0.1em;
	color: var(--color-white);
}
.elementor-element-dde111f .u-link:hover::before,
.elementor-element-dde111f .u-link:hover::after{
	z-index: 2;
}

@media screen and (max-width: 767px) {
	.elementor-element-dde111f .elementor-widget-heading .elementor-heading-title {
		font-size: 1.6rem;
	}
}
@media screen and (min-width: 768px) {
	.elementor-element-dde111f .u-link {
		width: calc(50% - 20px);
	}
	.elementor-element-dde111f .u-link:first-child {
		width: calc(50% - 19px);
	}
}

/* About Us */
.elementor-element-f4ecae4 .u-link {
	position: relative;
	overflow: hidden;
	border-radius: 0.25rem;
}

.elementor-element-f4ecae4 .elementor-widget-heading:has(h3.elementor-heading-title) {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 5em;
	padding-bottom: 0.1em;
	background: var(--color-white);
}
.elementor-element-f4ecae4 h3.elementor-heading-title {
	color: var(--color-main)!important;
}

.elementor-element-f4ecae4 .u-link:hover .elementor-widget-heading:has(h3.elementor-heading-title) {
	background: var(--color-main);
	background: linear-gradient(to left, #0078B7 10%,var(--color-link),#071945);
	border-color: transparent;
}
.elementor-element-f4ecae4 .u-link:hover h3.elementor-heading-title {
	color: var(--color-white)!important;
	opacity: 0.9;
}

.elementor-element-f4ecae4 .elementor-icon {
	position: absolute;
	right: -0.1em;
	bottom: 0.5em;
}
.elementor-element-f4ecae4 .elementor-icon svg {
	height: 0.6em;
}
.elementor-element-f4ecae4 .u-link:hover .elementor-icon svg {
	fill: var(--color-white);
}
@media screen and (max-width: 767px) {
	.elementor-element-f4ecae4 .elementor-widget-heading:has(h3.elementor-heading-title) {
		height: 4em;
	}
	.elementor-element-f4ecae4 .elementor-icon {
		bottom: 0.3em;
	}
}

@media screen and (min-width: 768px) {
	.elementor-element-f4ecae4 .c-section__head-subtitle {
		position: relative;
		bottom: 0.3em;
	}
}

/* 仲間たちの声 */
.c-section .elementor-element-759c4c7 {
	display: none;
}


/**
 * message - メッセージ
 */
.elementor-element-755b9f9 p {
	font-weight: 600;
}

.p-message__content > .elementor-element,
.p-statistics__content > .elementor-element,
.p-ideal__content > .elementor-element,
.p-careers__content > .elementor-element {
	padding: 1.5rem 1.5rem 1.75rem;
	background: var(--color-blue-light);
	border-radius: 0.25rem;
}
.p-message__content > .elementor-element {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	border-left: 0.5rem solid var(--e-global-color-primary);
}

.p-message__content .elementor-widget-heading h3.elementor-heading-title {
	font-size: 2rem;
}
.p-message__content p {
	margin-top: 0.5em;
	font-size: 1.25rem;
	font-weight: 500;
}

.elementor-element-aff1f84 .elementor-widget-heading h3.elementor-heading-title {
	line-height: 1.9;
}

@media screen and (max-width: 768px) {
	.elementor-element-752777a .u-block {
		margin-bottom: 0.75em;
	}
	.elementor-element-752777a .u-large  {
		font-size: 1.15em;
	}
	.elementor-element-752777a .u-large .u-text-blue {
		display: block;
		margin-bottom: 1em;
		font-size: 1.35em;
		line-height: 2;
	}
	
	.p-message__content > .elementor-element {
		padding: 1.5rem 0.95rem;
	}
}

@media screen and (min-width: 768px) {
	.p-message__content > .elementor-element,
	.p-ideal__content > .elementor-element,
	.p-careers__content > .elementor-element {
		padding: 1.75rem 2rem 2rem;
	}
	.p-message__content .elementor-widget-heading h3.elementor-heading-title {
		font-size: 2.5rem;
	}
	.p-message__content p {
		font-size: 1.5rem;
	}
	
	.elementor-element-aff1f84 .elementor-widget-heading h3.elementor-heading-title {
		font-size: 2.5rem;
	}
}


/**
 * statistics - 数字で見るホームランド
 */
.elementor-element-65a68fa.e-con.c-fv__head .elementor-heading-title {
	font-family: inherit;
	font-size: min(6.4vw, 96px);
}

.p-statistics__content > .elementor-element {
	position: relative;
	width: 100%;
	padding: 1.5rem 0;
}
.p-statistics__content > .elementor-element .e-child {
	flex-direction: row!important;
    gap: 0;
}

.p-statistics__content + .elementor-element > .e-child {
	padding-top: 30px;
	border-top: 1px solid var(--color-gray);
}

.p-statistics__content .elementor-widget-heading {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
	padding: 0.3em 1em 0.4em;
	border-top-left-radius: 0.25rem;
	font-size: 2rem;
    color: var(--color-white);
}

.p-statistics__content .elementor-widget-image {
	width: calc(40% - 2rem);
	aspect-ratio: 1;
	margin: 0 1rem;
}

.p-statistics__content .elementor-widget-text-editor {
	width: 60%;
	padding-bottom: 1.5rem;
	font-size: 4.5rem;
	font-weight: 700;
	color: var(--color-blue);
}
.p-statistics__content .elementor-widget-text-editor:has(.u-block) {
	padding-bottom: 2.5rem;
}
.p-statistics__content .elementor-widget-text-editor * {
	color: var(--color-blue);
}
.p-statistics__content .elementor-widget-text-editor p {
	line-height: 1.4;
}
.p-statistics__content .elementor-widget-text-editor .unit {
	display: inline-block;
    margin-left: 0.1em;
	font-size: 1.5rem;
}
.p-statistics__content .elementor-widget-text-editor .unit.mr {
	margin-right: 0.1em;
	margin-left: 0;
}
.p-statistics__content .elementor-widget-text-editor .unit.u-block {
	margin-top: -1rem;
}

/* 会社について */
.p-statistics__content.elementor-element-482c4e5 .elementor-widget-heading {
	bottom: 8px;
	border-bottom-left-radius: 0.25rem;
	background: var(--color-blue);
}
.p-statistics__content.elementor-element-482c4e5 .elementor-widget-text-editor {
	position: relative;
	bottom: 8px;
}

.elementor-element-6a44c21 .elementor-widget-text-editor p {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 1rem;
	padding-right: 2rem;
}
.elementor-element-6a44c21 .elementor-widget-text-editor .unit.u-block {
	margin-top: 0;
	line-height: 1.2;
}

.elementor-element-195d4bb {
	flex-direction: initial!important;
}
.elementor-element-195d4bb .elementor-widget-text-editor p {
	width: fit-content;
	margin: auto;
}
.elementor-element-195d4bb .elementor-widget-text-editor {
	padding-bottom: 2rem;
}
.elementor-element-195d4bb .elementor-widget-text-editor .unit {
	display: block;
	width: fit-content;
	margin-left: 0;
}
.elementor-element-195d4bb .elementor-widget-text-editor .unit:nth-child(2) {
	position: relative;
    bottom: 1px;
}

/* 働きやすさ */
.p-statistics__content.elementor-element-f41a9fb > .elementor-element {
	padding-bottom: calc(1.5rem - 8px);
	border-bottom: 8px solid var(--color-blue);
}
.p-statistics__content.elementor-element-f41a9fb .elementor-widget-heading {
	padding-bottom: calc(0.4em - 8px);
	background: var(--color-blue);
}
.p-statistics__content.elementor-element-f41a9fb h3.elementor-heading-title {
	color: var(--color-white);
}

.elementor-element-13383c0 .elementor-widget-text-editor .unit {
	margin-left: 0;
	margin-right: 0.1em;
}

@media screen and (min-width: 768px) {
	.p-statistics__content > .elementor-element {
		width: calc((100% / 2) - 20px);
	}
}
@media screen and (min-width: 922px) {
	.elementor-element-482c4e5.p-statistics__content > .elementor-element {
		width: calc((100% / 3) - 20px);
	}
	/*.elementor-element-f41a9fb .elementor-widget-text-editor {
		font-size: 5.4rem;
	}
	.elementor-element-f41a9fb .elementor-widget-text-editor .unit {
		font-size: 1.8rem;
	}*/
	.elementor-element.elementor-element-f41a9fb {
		max-width: 750px;
		margin: auto;
	}
}


/**
 * ideal - 求める人材
 */
.elementor-element-52a673b {
	background: var(--color-white);
}
.elementor-element-52a673b.e-con .e-con-inner {
	max-width: initial;
	padding-bottom: 0!important;
	background: var(--color-blue);
}
.elementor-element-52a673b .e-con-inner > * {
	max-width: 1140px;
	margin: auto;
}
.elementor-element-52a673b::after {
	content: "";
	display: block;
	position: relative;
	top: -1px;
	width: 100%;
	aspect-ratio: 5 / 1;
	background: var(--color-blue);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.elementor-element-52a673b .elementor-widget-image {
	width: 30%;
	aspect-ratio: 1;
}

.elementor-element-3767ed6 .elementor-widget-heading h3.elementor-heading-title {
	margin-top: 1em;
	font-size: 2rem;
	line-height: 1.9;
}

@media screen and (min-width: 768px) {
	.elementor-element-3767ed6 .elementor-widget-heading h3.elementor-heading-title {
		font-size: 2.5rem;
	}
}

.elementor-element-79deab6.e-con {
	width: fit-content;
}

.c-balloon {
	position: relative;
	width: fit-content;
	margin-left: 0.8em;
	padding: 0.5em 1.5em;
	border-radius: 0.5em;
	font-size: clamp(13px, 3vw, 46px);
}
.c-balloon::before {
	content: "";
	position: absolute;
	left: calc(-0.8em + 1px);
	bottom: 0.7em;
	display: block;
	width: 0.8em;
	aspect-ratio: 1;
	background: var(--color-white);
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	rotate: -90deg;
}
.c-balloon .elementor-heading-title {
	line-height: 1.4;
}

.u-bg-blue .c-balloon.elementor-widget-heading .elementor-heading-title,
.u-bg-blue .c-balloon.elementor-widget-heading .elementor-heading-title * {
	color: var(--e-global-color-primary);
}


/**
 * benefits - 福利厚生
 */
.post-144 .elementor>.e-con:nth-child(2n) .elementor-heading-title {
	position: relative;
	width: 100%;
	font-size: 2.5rem;
}
.post-144 .elementor>.e-con:nth-child(2n) p {
	font-size: 1.25rem;
	font-weight: 500;
}

.post-144 .elementor>.e-con:nth-child(2n-1):not(.c-section-fv) .e-con-inner > .e-child + .e-child {
	padding-top: 30px;
	border-top: 1px solid var(--color-gray);
}

@media screen and (min-width: 768px) {
	.post-144 .elementor>.e-con:nth-child(2n) .elementor-widget-video,
	.post-144 .elementor>.e-con:nth-child(2n) .elementor-widget-image {
		z-index: 1;
	}
	.post-144 .elementor>.e-con:nth-child(2n) .elementor-heading-title {
		width: calc(100% + 40px);
	}
	.post-144 .elementor>.e-con:nth-child(2n) .elementor-heading-title::after {
		content: "";
		position: absolute;
		top: 0;
		display: block;
		height: 100%;
		aspect-ratio: 1;
		clip-path: polygon(0 0, 100% 100%, 0 100%);
		background: var(--color-white);
	}
	.post-144 .elementor>.e-con:nth-child(4n-2) .elementor-heading-title {
		margin-left: -40px;
		padding-left: 40px;
		padding-right: 0;
	}
	.post-144 .elementor>.e-con:nth-child(4n-2) .elementor-heading-title::after {
		right: 1px;
		transform: translateX(100%);
	}
	.post-144 .elementor>.e-con:nth-child(4n) .elementor-heading-title {
		margin-right: -40px;
		padding-left: 0;
	}
	.post-144 .elementor>.e-con:nth-child(4n) .elementor-heading-title::after {
		left: 1px;
		transform: translateX(-100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%);
	}
	.post-144 .elementor>.e-con:nth-child(2n) p {
		margin-top: 0.5em;
	}
}
@media screen and (min-width: 922px) {
	.post-144 .elementor>.e-con:nth-child(2n) .elementor-heading-title {
		font-size: 3.5rem;
	}
	.post-144 .elementor>.e-con:nth-child(2n) p {
		font-size: 1.5rem;
	}
}


/**
 * careers - 募集要項
 */
.post-146 .elementor-element-b8397b5 p {
	color: var(--e-global-color-text);
}

.post-146 .elementor-element-c92303b .u-link {
	border-radius: 0.25rem;
	overflow: hidden;
}
.post-146 .elementor-element-c92303b .u-link:hover {
	transform: translateX(10px);
}
.post-146 .elementor-element-c92303b .u-link:hover img {
	scale: 1.0;
}
.post-146 .elementor-element-c92303b .u-link .elementor-heading-title {
	line-height: 1.2;
	color: var(--color-main);
}
.post-146 .elementor-element-c92303b .u-link > .e-child {
	padding: 20px calc(2rem + 60px) 20px 30px;
}
.post-146 .elementor-element-c92303b .u-link .elementor-widget-icon .elementor-icon {
	position: absolute;
	right: 30px;
	bottom: 50%;
	transform: translateY(50%);
}
.post-146 .elementor-element-c92303b .u-link .elementor-widget-icon svg {
	width: 2rem;
	fill: var(--color-blue-dark);
}

@media screen and (max-width: 767px) {
	.post-146 .elementor-element-c92303b .u-link > .e-child {
		padding: 22px calc(2rem + 40px) 30px 20px;
		border-top: 8px solid var(--color-blue);
	}
	.post-146 .elementor-element-c92303b .u-link .elementor-widget-icon .elementor-icon {
		right: 20px;
		bottom: calc(50% - 8px);
	}
}

@media screen and (min-width: 768px) {
	.post-146 .elementor-element-c92303b .u-link {
		border-bottom: 8px solid var(--color-blue);
	}
	.post-146 .elementor-element-c92303b .u-link .elementor-widget-image {
		width: 45%;
	}
}

/*.p-statistics__content > .elementor-element,*/
.p-ideal__content > .elementor-element,
.p-careers__content > .elementor-element {
	border-top: 4px solid var(--e-global-color-primary);
}

.p-careers__about .u-bg-white {
	border-radius: 0.25rem;
}
.p-careers__about .u-bg-white * {
	color: var(--color-blue)!important;
}

.p-careers__about .elementor-widget-heading:has(h3) {
	width: 65%;
	padding: 1rem 0 1rem 2rem;
}
.p-careers__about .elementor-widget-heading h3.elementor-heading-title {
	font-size: 2.5rem;
	line-height: 1.2;
}

.p-careers__about .elementor-widget-image {
	position: relative;
	width: 35%;
	aspect-ratio: 2 / 1;
}
.p-careers__about .elementor-widget-image::before {
	content: "";
	position: absolute;
	top: 0;
	display: block;
	height: 100%;
	background: var(--color-white);
}

@media screen and (max-width: 767px) {
	.p-careers__about .elementor-widget-heading:has(h3) {
		position: absolute;
		z-index: 1;
		width: 100%;
		padding: 1rem 0;
		text-align: center;
	}
	.p-careers__about .elementor-widget-image {
		width: 100%;
	}
	.p-careers__about .elementor-widget-image::before {
		left: -1px;
		width: 100%;
		opacity: 0.8;
	}
}
@media screen and (min-width: 768px) {
	.p-careers__about .elementor-widget-image::before {
		aspect-ratio: 1;
		clip-path: polygon(0 0, 50% 0, 0 100%);
	}
}


/**
 * entry - エントリーフォーム
 */
.page-id-245 .site-above-footer-wrap {
	display: none;
}
.grecaptcha-badge {
	bottom: 72px!important;
    z-index: 5;
}

label {
	display: block;
}
.notice {
	color: #DC2626
}
.wpcf7 {
	margin-top: 2rem;
}
.entry-content .wpcf7 p+p {
	margin-top: 2em;
}
.wpcf7 input[type="date"],
.wpcf7 input[type=file] {
	background: initial;
}
.wpcf7 p > label {
	margin-bottom: 0.75em;
	font-size: 1.1rem;
}
.wpcf7 fieldset {
	margin: 2em 0;
}
.wpcf7 fieldset legend {
	margin-bottom: 0;
	font-size: 1.1rem;
}
.wpcf7 fieldset p > label {
	font-size: 0.9rem;
	color: #044377;
}
.wpcf7 fieldset.address-fieldset {
    border: none;
    padding: 0;
}
.wpcf7 fieldset.address-fieldset legend {
	margin-bottom: 1em;
	padding: 0;
}
.wpcf7 p:has(.wpcf7-acceptance) {
	text-align: center;
}
.wpcf7-form-control-wrap:has(.wpcf7-acceptance) {
	display: block;
	margin-top: 1em;
}
.wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}
.entry-content .wpcf7 p:has(.wpcf7-submit) {
	margin-top: 2.5rem;
	text-align: center;
}
.wpcf7 .wpcf7-submit:disabled {
	background: var(--color-gray);
}
.wpcf7-spinner {
	display: block;
	margin: 1rem auto;
}

.wpcf7 form .wpcf7-response-output {
	border-color: var(--color-main);
	text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--color-skyblue);
}

@media screen and (min-width: 768px) {
/* 	.wpcf7 input, .wpcf7 select {
		max-width: 300px;
	}
	.wpcf7 fieldset input:not(.your-postcode),
	.wpcf7 input[type=file].wpcf7-form-control {
		max-width: 600px;
	} */
	.wpcf7 form {
		max-width: 750px;
		margin: 0 auto;
	}
}


/**
 * sitemap - サイトマップ
 */
.post-156 .wp-block-page-list,
.post-156 .wp-block-navigation__submenu-container {
	list-style: none;
	padding-left: 0;
}

.post-156 .wp-block-page-list .wp-block-pages-list__item__link {
	font-weight: 700;
	text-decoration: none;
}

.post-156 .wp-block-page-list > .wp-block-pages-list__item > .wp-block-pages-list__item__link {
	display: block;
    margin-top: 1.5rem;
	padding: 1rem 1.5rem;
	background: var(--color-blue-light);
}

.post-156 .wp-block-navigation__submenu-container {
	padding: 0 1.5rem;
}

.post-156 .wp-block-navigation__submenu-container .wp-block-pages-list__item {
	margin: 1rem 0;
}
.post-156 .wp-block-navigation__submenu-container .wp-block-pages-list__item::before {
	content: "";
	display: inline-block;
	position: relative;
	bottom: 2px;
	width: 0.75rem;
	height: 2px;
	margin-right: 0.5rem;
	background: var(--color-black);
	vertical-align: middle;
}