@charset "utf-8";

/*----------------------------------------------
	ヘッダー
---------------------------------------------*/
.l_header {
	width: calc(100% - 20px);
	height: 80px;
	padding: 15px 20px 15px 40px;
	background-color: rgba(255, 255, 255, 0.91);
	display: flex;
	justify-content: space-between;
	align-items: center;
	box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
	position: fixed;
	top: 10px;
	left: 10px;
	z-index: 99;
	border-radius: 50px;
	overflow: hidden;
}

.l_header_logo {
	height: auto;
	width: 70%;
}

.l_header_link{
	display: flex;
	align-items: center;
	padding: 10px 0;
}
.l_header_link h2{
	font-family: var(--primary-font);
	font-size: .8em;
	font-weight: 500;
	line-height: 24px;
	letter-spacing: 1%;
	color: var(--primary-color);
	margin-left: -10px;
}
.l_nav {
	display: flex;
	align-items: center;
	gap: 40px;
	height: 100%;
}

.l_nav_ul {
	height: 100%;
	display: flex;
	align-items: center;
	gap: 40px;
}

.l_nav_list {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.l_nav_link {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	transition: .3s;
	font-family: var(--primary-font);
	font-size: 1em;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-wrap: nowrap;
}
.l_nav_link.link_active{
    color: var(--accent-one-color) !important; 
}

.l_nav_contact {
	padding: 10px 10px 10px 10px;
	background: var(--accent-two-color);
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--secondary-color);
	border-radius: 360px;
	transition: .3s;
	min-width: 50px;
	max-width: 50px;
	height: 50px;
	transition: .5s ease all;
}
.l_nav_list_contact{
	display: none;
}
.l_nav_contact:hover {
	background: var(--accent-three-color);
}
.l_nav_contact .is-active {
	background: var(--accent-one-color);
}

.l_nav_arrow {
	width: 10px;
	height: 19px;
	margin-left: 5px;
}
.l_nav_mail {
	width: 20px;
	height: 16px;
}
.l_sptab_burger {
	display: none;
}

.l_nav_link:hover{
	color: var(--accent-one-color);
}
@media (max-width: 1170px) {
	.l_header_logo {
		max-width: 400px;
	}
	.l_header_link h2{
		font-size: .4em;
		margin-left: -25px;
	}
}
@media (max-width: 1150px) {

	.l_header {
		height: 60px;
		padding: 10px 10px 10px 20px;
		overflow: unset;
	}
	.l_header_logo {
		height: 50%;
		width: 60%;
	}
	.l_nav {
		padding: 40px 0 30px;
		position: absolute;
		background-color: rgba(255, 255, 255, 0.9);
		box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1);
		border-radius: 20px;
		width: calc(100%);
		height: auto;
		top: 70px;
		left: 0px;
		transform: translateX(calc(100% + 20px));
		transition: .3s;
		flex-direction: column;
		justify-content: center;
		gap: 20px;
		z-index: -1;
		overflow: hidden;
	}

	.active .l_nav {
		transform: translateX(0);
	}

	.l_header .l_nav_ul {
		flex-direction: column;
		gap: 20px;
	}
	.l_header .l_nav_link {
		padding: 10px 40px;
		font-size: 1.6rem;
	}
	.l_nav_list_contact{
		display: flex;
	}
	.l_nav_contact {
		display: none;
	}

	.l_sptab_burger {
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		background: var(--accent-one-color);
		cursor: pointer;
	}

	.l_sptab_burger-top,
	.l_sptab_burger-middle,
	.l_sptab_burger-bottom {
		width: 20px;
		height: 2px;
		border-radius: 2px;
		position: absolute;
		transition: .3s;
		background: var(--secondary-color);
	}

	.l_sptab_burger-top {
		transform: translateY(-7px);
	}

	.l_sptab_burger-bottom {
		transform: translateY(7px);
	}

	.active .l_sptab_burger-top {
		transform: rotate(45deg);
	}

	.active .l_sptab_burger-middle {
		opacity: 0;
	}

	.active .l_sptab_burger-bottom {
		transform: rotate(-45deg);
	}
}
@media (max-width:500px) {
	.l_header_link.c_link h2, .l_footer_address .c_link h2{
		font-size: 16px;
	}
}
/*----------------------------------------------
	パンくず
---------------------------------------------*/
.l_bread {
	margin-bottom: 5px;
	padding: var(--padding-container);
}

.l_bread a {
	color: #858585;
	transition: .3s;
}

.l_bread span {
    color: #858585;
    text-wrap: nowrap;
	white-space: wrap;
}
.l_bread span:last-child {
    text-wrap: wrap;
	color: var(--blk-color);
}
.l_bread a:hover {
	color: var(--primary-color);
}
.l_bread span+span:before {
	content: "＞";
	color: #858585;
	margin: .5em;
}

/* L_top button */
.l_topbtn {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 999;
	transition: .3s;
	transform: translateY(100px);
}

.l_topbtn.is_active {
	transform: translateY(0);
}

.l_topbtn_link {
	background: var(--accent-one-color);
	box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1);
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: .3s;
	border-radius: 50%;
}

.l_top_arrow {
    width: 40px;
    height: fit-content;
	fill: white;
	margin-top: 35px;
}

.l_topbtn_link:hover {
	filter: brightness(120%);
}

@media (max-width: 1160px) {
	.l_topbtn_link {
		width: 40px;
		height: 40px;
	}

	.l_topbtn_link:hover {
		filter: none;
	}
}
@media (max-width: 600px) {
	.l_top_arrow {
		width: 30px;
		margin-top: 30px;
	}
}
@media (max-width: 500px) {
	.l_bread {
		padding: 0 20px;
	}
	
}


/*----------------------------------------------
	フッター
---------------------------------------------*/
.l_footer{
	position: relative;
}
.l_footer .lp-container {
	position: relative;
	padding: 80px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	z-index: 1;
}
.l_footer_logo {
    height: 100%;
    width: 100%;
}
.l_footer_ovalbg{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
	background: var(--grey-color);
	min-height: inherit;
	width: 100%;
	height: 100%;
	border-radius: 50% 50% 0 0;
}
.l_footer_address{
	display: flex;
	align-items: start;
	height: auto;
	gap: 20px;
}
.l_footer_logo{
	width: 100%;
	height: inherit;
}
.l_footer_copy {
	color: var(--primary-color);
	text-align: center;
	font-family: var(--primary-font);
	font-size: var(--paragraph-font);
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.9px;
	margin: 20px auto;
}
.c_link h2{
	font-family: var(--primary-font);
	font-weight: 500;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 1%;
	text-align: center;
	color: var(--primary-color);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
.c_link .l_footer_logo{
	display: none;
}
.l_footer_copyright{
	position: relative;
	padding: var(--padding-regular);
	text-align: center;
	background: var(--accent-two-color);
	z-index: 0;
}
.l_footer_copyright p{
	font-size: 1.5rem;
	font-weight: 500;
	color: var(--secondary-color);
}
.l_footer_navigation{
	padding: var(--padding-regular);
	border-top: 1px solid var(--primary-color);
	width: fit-content;
	margin: 20px auto;
}
.l_footer_telephone, .l_footer_mail {
	width: 50px;
	height: 40px;
}

.l_footer_link {
	padding: 15px 30px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 50px 10px;
	transition: box-shadow 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	cursor: pointer;
}

.l_footer_link:hover {
	transform: scale(1.01);
}
.l_telephone:hover {
	box-shadow: 1px 2px 5px var(--accent-four-color);
}
.l_mail:hover {
	box-shadow: 1px 2px 5px var(--accent-one-color);
}


.l_footer_nav_link{
	margin-left: 10px;
	font-size: 1.875em;
	font-weight: 800;
	color: var(--secondary-color);
}

.l_telephone {
	background: var(--accent-four-color);
}
.l_mail{
	background: var(--accent-two-color);
}

.l_footer_text_telephone{
	font-family: var(--secondary-font);
}
.footer_break{
	display: none;
}
@media (max-width: 1200px){
	.l_footer .lp-container {
		padding: 40px 20px;
	}
}
@media (max-width: 768px) {
	.l_footer_button{
		flex-direction: column;
		margin-bottom: 20px;
	}
	.l_footer_link {
		margin: 10px auto;
	}
	.l_footer .l_nav_ul {
		flex-direction: column;
		gap: 20px;
	}
	.l_footer .l_nav_link {
		padding: 10px 40px;
		font-size: 1.6rem;
	}
	.l_footer .lp-container {
		padding: 40px 20px;
	}
	.l_footer_navigation{
		display: none;
	}
	.l_footer_logo{
		display: none;
	}
	.c_link{
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.c_link .l_footer_logo{
		display: flex;
		width: 80%;
	}
	 .c_link h2{
		width: fit-content;
	}
	.l_footer_address{
		gap: 0px;
	}
}
@media (max-width: 500px) {
	.l_footer_logo .c_link{
		flex-direction: column;
	}
	.l_footer_telephone, .l_footer_mail {
		width: 20px;
		height: 30px;
	}
	.l_footer_nav_link{
		font-size: 1.25em;
	}

	.l_footer_logo{
		max-width: 200px;
		margin: auto;
		text-align: center;
	}
	.footer_break{
		display: flex;
	}
	.l_footer_ovalbg{
		border-radius: 0 0;
	}
}


/* Arrow Button Component*/
.c_arrow, .main_btn_arrow{
	border-radius: 360px;
	padding: var(--padding-regular);
	min-width: 40px;
	max-width: 40px;
	width: 100%;
	height: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.c_arrow{
	margin-left: 10px;
	transition: all .6s ease-in-out;
}
.c_arrow:hover{
	transform: scale(1.3);
	transition: .6s ease-in-out;
}
.c_arrow:hover .c_arrow_right{
	transform: scale(.9);
	transition-delay: 1s;
	transition: 1s ease-in-out;
}

.main_btn_arrow{
	margin-right: 10px;
}
.primary-arrow-btn{
	background: var(--accent-two-color);
}
.secondary-arrow-btn{
	background: var(--accent-three-color);
}
.tertiary-arrow-btn{
	background: var(--accent-four-color);
}
.transparent-arrow-btn{
	border: 1px solid var(--secondary-color);
	background: transparent;
}
.lime-arrow-btn, .green-arrow-btn{
	background: var(--secondary-color);
}

/* Section Title Component*/

.c_title_header{
	font-family: var(--primary-font);
	font-size: var(--header-font);
	font-style: normal;
	font-weight: 700;
	line-height: 40px;
}

.c_title_sub{
	font-family: var(--secondary-font);
	font-size: var(--sub-font);
	font-style: normal;
	font-weight: 600;
	line-height: 20px;
}

/* Main Button with arrow Component*/
.c_main_button {
	position: relative;
	width: 100%;
	max-width: 300px;
	height: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px;
	border-radius: 100px;
	border: 1px solid var(--primary-color);
	transition: all ease .3s;
}
.main_btn_arrow{
	position: absolute;
	transition: all ease .3s;
	left: 10px;
}
.c_button-title{
	font-family: var(--primary-font);
	font-size: 1.375em;
	font-style: normal;
	font-weight: 600;
	line-height: 40px;
	color: var(--primary-color);
	transition: all ease .3s;
}
.c_main_button:hover .main_btn_arrow
{
	transform: translateX(600%);
}


/* page title componet */
.c_page_title_container{
	display: flex;
	align-items: center;
	justify-content: start;
	height: 100%;
	padding: var(--padding-container);
}
.c_title_border{
	width: 16px;
	height: 100%;
	min-height: 110px;
	border-radius: 10px;
	background: var(--accent-four-color);
	opacity: 40%;
	margin-right: 10px;
}
.c_title_header_jpn{
	color: var(--primary-color);
	font-size: var(--header-font);
	font-family: var(--primary-font);
	font-weight: 500;
	line-height: 40px;
	word-wrap: break-word
}
.c_title_sub_en{
	color: var(--primary-color);
	font-size: 4.375em;
	line-height: 75px;
	font-family: var(--secondary-font);
	font-weight: 400;
	letter-spacing: 3.50px;
	word-wrap: break-word
}

@media (max-width: 500px) {
	.c_title_sub_en{
		font-size: 3.5em !important;
	}
	.c_title_border{
		min-height: 90px;
	}
}
/* Floating Component */
.c_topic_parent_container{
	width: 100%;
	display: flex;
	justify-content: center;
	margin-top: 50px;
}
.c_topic_container{
	position: relative;
	background: rgba(255, 255, 255, 75%);
	padding: var(--padding-medium-container);
	border-radius: 20px;
	width: 100%;
	max-width:400px;
	min-height: 350px;
	filter: drop-shadow(0 0 5px rgba(88, 88, 88, 0.25));
	margin-top: 0px;
}
.c_topic_title_container{
	margin-bottom: 20px;
	color: var(--primary-color);
}
.c_topic_title_container img{
	margin: auto;
	text-align: center;
}
.c_topic_list{
	list-style: unstyled;
}

.c_topic_list_item, .c_topic_content{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.c_topic_list_item{
	border-top: 1px solid var(--primary-color);
	padding: 10px 0;
	color: var(--primary-color);
}
.c_topic_list_item:hover {
	color: var(--accent-two-color);
}
.c_topic_list_item:hover .c_topic_content_topic{
	color: var(--accent-two-color);
}

.c_topic_list_item:hover .c_arrow{
	transform: scale(1.3);
	transition: .6s ease-in-out;
}
.c_topic_list_item:hover .c_arrow:hover .c_arrow_right{
	transform: scale(.9);
	transition-delay: 1s;
	transition: 1s ease-in-out;
}
.c_topic_content_topic{
	font-family: var(--secondary-font);
	font-size: var(--paragraph-font);
	color: var(--primary-color);
	font-weight: 500;
	font-style: normal;
	line-height: normal;
	margin-right: 20px;
}

.c_element_container{
	position: relative;
	width: 100%;
	padding-top: 450px;
}
.element_top-left{
	position: absolute;
	background: var(--accent-two-color);
	width: 100%;
	max-width: 330px;
	height: 250px;
	border-radius: 50% 10px 10px 50%;
	opacity: 50%;
	right: 0%;
	top: 30%;
}
.element_bottom-left{
	position: absolute;
	background: var(--accent-three-color);
	width: 100%;
	max-width: 330px;
	height: 300px;
	border-radius: 10px 50% 50% 10px;
	opacity: 50%;
	bottom: -20%;
	left: 10%;
}
@media (max-width: 1200px) {
	.c_element_container {
		position: absolute;
		width: 100%;
		padding-top: 350px;
	}
	.element_top-left{
		max-width: 250px;
		height: 200px;
		right: 0%;
		top: -20%;
	}
	.element_bottom-left{
		max-width: 280px;
		height: 230px;
		bottom: -50%;
		left: 0%;
	}
}
@media (height: 800px) {
	.c_topic_parent_container{
		margin-top: 0px;
	}
	.c_element_container{
		padding-top: 350px;
	}
	.element_top-left{
		max-width: 250px;
		height: 200px;
		right: 0%;
		top: 30%;
	}
	.element_bottom-left{
		max-width: 280px;
		height: 230px;
		bottom: -20%;
		left: 10%;
	}
}
@media (max-width: 500px) {
	.c_topic_parent_container{
		padding: var(--padding-container);
	}
    .element_bottom-left {
        left: 0% !important;
        top: 40%;
    }
	.c_topic_container {
		max-width: 400px;
		min-height: 300px;
	}
	.c_pages .c_title_header, .c_pages .c_title_sub{
		font-size: 1.5em;
		line-height: 1.2;
	}
}
@media (max-height: 750px) {
	.element_bottom-left {
		max-width: 230px;
		height: 200px;
		bottom: 20%;
	}
	.c_element_container {
		padding-top: 350px;
	}
	.element_top-left {
		max-width: 230px;
		height: 200px;
	}
	.c_topic_parent_container {
		margin-top: -100px; 
	}
}
/* list component */
.c_list{
	list-style: unstyled;
}
.c_item{
	height: 100%;
	padding: var(--padding-container);
	border-radius: 10px;
}
.c_list_item {
    display: flex;         
    width: 100%;
	gap: 10px;
	margin-bottom: 10px;
	align-items: stretch !important;
	justify-content: stretch;
}

.c_left_item {
	display: flex; 
	align-self: stretch;
	justify-content: stretch;
    flex: 0 0 17%;    
	min-height: 100%;      
    align-items: center; 
	border-right: 10px white;
	height: auto;
	min-width: 160px;
}
.c_right_item {
	display: flex; 
	align-self: stretch;
	justify-content: stretch;
    flex: 1;           
	flex-direction: column;  
	background: var(--grey-color);
	height: auto;
}
.c_item_title, .c_item_description{
	color: var(--primary-color);
	font-family: var(--primary-font);
	font-size: var(--paragraph-font);
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}
#job .c_item_description_title{
	margin-bottom: 0;
}
.c_company_multi_items .c_item_description_title:first-child{
	margin-bottom: 0 !important; 
}
.c_item_description_title{
	color: var(--primary-color);
	font-family: var(--primary-font);
	font-size: 1.5em;
	font-style: normal;
	font-weight: 500;
	line-height: 25px;
	margin-bottom: 10px;
}


.c_item_title_large{
	font-family: var(--secondary-font);
	font-size: 3em  !important;
	text-align: center !important;
}


@media (max-width: 500px) {
	.c_left_item {
		min-width: 110px;
	}
	.c_left_item{
		flex: 0 0 13%; 
	}
	.c_item_title_large{
		font-size: 1.75em  !important;
	}
}

/* Contact Form */
.p_contact{
	width: 100%;
	max-width: 1400px !important;
	padding: var(--padding-container);
	margin: auto;
	display: flex;
	flex-direction: column;
}

.phone_display{
	background: var(--grey-color);
	padding: 30px 60px;
	border-radius: 10px;
	width: 100%;
	font-family: var(--secondary-font);
	text-align: center;
}

.p_contact_container, .form_wrap, .terms_text{
	width: 100%;
	max-width: 1000px;
	margin: auto;
}
.phone_link{
	color: var(--accent-four-color);
	font-family: var(--secondary-font);
	font-size: 3.125em;
	font-style: normal;
	font-weight: 800;
	line-height: normal;
	letter-spacing: 2.5px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
.phone_link span{
	text-decoration: underline;
}
.phone_text{
	color: var(--primary-color);
	font-family: var(--primary-font);
	font-size: 1em;
	font-style: normal;
	font-weight: 500;
	line-height: 44px;
	letter-spacing: 0.8px;
}

.contact_text{
	color: var(--blk-color);
	text-align: center;
	font-family: var(--primary-font);
	font-size: 1.125em;
	font-style: normal;
	font-weight: 500;
	line-height: 38px;
	margin: 20px 0;
}

.field_label{
	display: flex;
	flex-direction: column;
	width: 100%;
}
.p_contact_information{
	margin-bottom: 30px;
}
.label_text{
	margin-bottom: 10px;
	color: var(--blk-color);
	font-family: var(--primary-font);
	font-size: 1.5em;
	font-style: normal;
	font-weight: 700;
	line-height: 44px; 
	letter-spacing: 1.2px;
}
.required_badge{
	border-radius: 50px;
	background: var(--accent-two-color);
	padding: 2px 20px;

	color: var(--secondary-color);
	font-family: var(--primary-font);
	font-size: .6em;
	font-style: normal;
	font-weight: 700;
	line-height: 44px;
	letter-spacing: 0.8px;
}
.postal{
	display: flex;
	align-items: center;
	gap: 20px;
	width: 100%;
}
.wpcf7-form-control-wrap{
	width: 100%;
}
.postal input{
	width: 50%;
}
input, textarea{
	width: 100%;
	border-radius: 10px;
	background: var(--grey-color);
	border: none;
	padding: 10px;

	color: var(--primary-color);
	font-family: var(--primary-font);
	font-size: 1.5em;
	font-style: normal;
	font-weight: 700;
	line-height: 44px;
	letter-spacing: 1.2px;
}
.wpcf7-form-control-wrap{
	display: flex;
	flex-direction: column;
}
.terms_text{
	width: 100%;
	height: 280px;
	max-width: 600px;
	overflow-y: auto;
	border: 1px solid var(--primary-color);
	padding: var(--padding-container);
}

.ttl-inquire{
	color: var(--blk-color);
	font-family: var(--primary-font);
	font-style: normal;
	line-height: 30px; 
	letter-spacing: 1px;
}
.ttl-inquire h1{
	font-size: 1.25em;
	font-weight: 700;
}
.ttl-inquire p{
	font-size: 1em;
	font-weight: 600;
}
.ttl-inquire-policy{
	color: var(--blk-color);
	font-family: var(--primary-font);
	font-size: 1em;
	font-style: normal;
	font-weight: 400;
	line-height: 26px;
	letter-spacing: 0.8px;
}

.wpcf7-form-control-wrap, .wpcf7-checkbox, .wpcf7-list-item{
	display: flex;
	width: 100%;
}
.wpcf7-form-control .wpcf7-acceptance{
	margin: auto;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.wpcf7-list-item{
	margin: 0 auto !important;
	width: 100%;
}

.agreement-check label{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	gap: 20px;
	max-width: 250px;
	margin: auto;
}
.agreement-check input{
	position: relative;
	width: 25px;
	height: 25px;
	background: gray;
	border: none;
	margin: 0 !important;
}
.agreement-check .wpcf7-list-item-label {
	position: relative;
    color: var(--blk-color);
    font-family: var(--primary-font);
    font-size: 1.25em;
    font-style: normal;
    font-weight: 700;
    line-height: 44px;
    letter-spacing: 1px;
    width: 100%;
    max-width: fit-content;
	display: flex;
	text-wrap: nowrap;
	flex-wrap: nowrap;
	margin: 0 !important;
}
.s_contact_btn{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px auto; 

	background: var(--accent-two-color);
	padding: 20px 60px;
	border-radius: 20px;

	width: fit-content;
	cursor: pointer;
	transition: all .5s ease-in-out;
}
.s_contact_btn:hover{
	background: var(--accent-three-color);
}
.s_contact_btn_flex{
	display: flex;
	align-items: center;
}
.s_contact_btn input{
	background: none;
	padding: 0;
	width: 100%;
	color: var(--secondary-color);
	font-family: var(--primary-font);
	font-size: 1.625em;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.3px;
}
/* The default disabled state */
.s_contact_submit{
    cursor: pointer;
}
.s_contact_btn:has(input:disabled){
	background: grey;
	cursor: not-allowed;
}
/* Ensure the spinner is invisible but preserves its spot in the layout */
.wpcf7-spinner {
    display: none;
	width: 100%;
	min-width: 20px;
	max-width: 20px;
	height: 20px;
	margin: 0;
    margin-left: 5px;
}

/* Only show it when the parent form is in the 'submitting' state */
.wpcf7-form.submitting .wpcf7-spinner {
    display: block;
}

.recaptcha-text{
	color: var(--blk-color);
	font-family: var(--primary-font);
	font-size: .875em;
	font-style: normal;
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 0.7px;
	text-align: center;
	padding: var(--padding-container);
}

.recaptcha-text a{
	text-decoration: underline;
	color: var(--blk-color);
	font-family: var(--primary-font);
	font-size: .875em;
	font-style: normal;
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 0.7px;
	text-align: center;
}

@media (max-width: 768px){
	.phone_display{
		padding: 30px;
	}
	.phone_link{
		font-size: 1.875em;
	}
	.phone-icon-img{
		max-width: 50px;
	}
	.label_text{
		font-size: 1.25em;
	}
	.required_badge{
		padding: 5px 20px;
		font-size: .6em;
	}
	.s_contact_btn input{
		font-size: 1.25em;
	}
}

@media (max-width: 500px){
	.phone_display{
		padding: 20px;
	}
	.phone_link{
		font-size: 1.563em;
	}
	.phone-icon-img{
		max-width: 40px;
	}
	.s_contact_btn{
		margin: 20px auto; 
		padding: 20px 30px;
	}
	.postal input{
		width: 100%;
	}
	.contact_text{
		font-size: 1em;
	}
	textarea {
		height: 300px;
	}
}
@media (max-width: 400px){
	.contact_text{
		font-size: .875em;
	}
	.recaptcha-text {
		font-size: .7em;
	}
}
@media (max-width: 320px){
	.phone_link{
		flex-direction: column;
	}
	.contact_text{
		font-size: 0.813em;
	}
}



/* 404 */
.c_page_404_title{
	color: #000;
	font-family: var(--primary-font);
	font-size: 2em;
	font-style: normal;
	font-weight: 500;
	line-height: 70px; 
	margin-bottom: 20px;
}
.c_page_404_description{
	color: #000;
	font-family: var(--primary-font);
	font-size: var(--paragraph-font);
	font-style: normal;
	font-weight: 500;
	line-height: 40px;
}
.c_page_404_button{
	color: var(--secondary-color);
	font-family: var(--primary-font);
	font-size: 1em;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.3px;

	border-radius: 10px;
	background: #4EBC85;
	padding: 15px 60px;
	margin: 40px auto;
	display: flex;
	justify-content: center;
	align-items: center;
	width: fit-content;
	transition: all .5s ease;
}
.c_page_404_button:hover{
	background: var(--accent-three-color);
}
/* Divider */
.divider{
	width: 100%;
	padding: 100px 20px;
	display: flex;
	align-items: center;
	justify-content: end;
	margin: auto;
}
.divider-one,.divider-two,.divider-three{
	border-radius: 10px;
	width: 100%;
	max-width: 460px;
	height: 10px;
	opacity: 0.4;
}
.divider-one{	
	background: var(--accent-four-color);
	margin-right: -30px;
}
.divider-two{
	background: var(--accent-three-color);
}
.divider-three{
	background: var(--accent-two-color);
	margin-left: -30px;
}
@media (max-width: 768px) {
	.divider{
		padding: 50px 20px;
	}
}
@media (max-width: 500px) {
	.company_title, .recruit_title{
		font-size: 1.688em !important;
		line-height: 50px !important;
	}
	.company_description, .recruit_description {
		line-height: 30px !important;
	}
	.divider{
		padding: 30px 20px;
	}
	.c_page_404_title{
		font-size: 1.5em;
		line-height: 1.5; 
	}
	.c_page_404_button{
		padding: 20px 40px;
		margin: 40px auto;
	}
}

