/*
Theme Name: 山陽レジン
Template: lightning
Author: 株式会社 FEAT.
Version: 0.6.1
*/


/*
	font-family: "Zen Kaku Gothic New", sans-serif; 300,400,500,700,900
	font-family: "Varela", sans-serif;
	font-family: "Shippori Antique B1", sans-serif;
	font-family: "Spinnaker", sans-serif;
*/

/* -----------------------------------------
	共通
----------------------------------------- */
:root {
	--vk-color-text-body: #000;
}
html {
	scroll-behavior: smooth;
}
body {
	--main-color: #E21413;
/* 	--max-width: 1512px; */
/* 	--sub-width: 1111px; */
	--max-width: 1520px;
	--sub-width: 1120px;
	
	position: relative;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
}
a,
p a {
	color: var(--main-color);
	text-decoration: none;
}
.btn.focus,
.btn:focus {
	box-shadow: none;
}
@media screen and (max-width: 1670px){
	body {
		--max-width: 90cqw;
		--sub-width: 90cqw;
	}
}
@media screen and (max-width: 767px){
	body {
		--max-width: calc(90cqw - 20px);
		--sub-width: calc(90cqw - 20px);
	}
}
/* コンテナ */
body .container,
body .container-lg,
body .container-md,
body .container-sm,
body .container-xl,
.vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container {
	max-width: var(--max-width);
	padding-left: 0;
	padding-right: 0;
}
.vk_outer-width-full.vk_outer-paddingLR-none {
	padding-left: 0;
	padding-right: 0;
}
.alignfull, 
.alignfull:is(.swiper-container,
.vk_slider,
.wp-block-image,
.wp-block-cover-image,.wp-block-cover) {
	margin-left: calc(50% - 50cqw);
    margin-right: calc(50% - 50cqw);
}
.page_top_btn {
	background-color: var(--main-color);
	background-size: 65%;
	box-shadow: 0 0 0 1px #fff,0 0 0 2px var(--main-color);
}
@media screen and (max-width: 1024px){
	body .container,
	body .container-lg,
	body .container-md,
	body .container-sm,
	body .container-xl,
	.vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container {
		padding-left: 0;
		padding-right: 0;
	}
}

/* ヘッダー */
.site-header {
	background-color: transparent;
	width: 100%;
	box-shadow: none;
}
.site-header .site-header-container {
	max-width: unset;
	padding: .9rem 1.4%;
}
.site-header-logo {
	display: inline-block;
	width: auto !important;
	padding-top: 0;
	margin-bottom: 0;
}
.site-header-logo img {
	width: 263px;
	max-height: unset;
}
.global-nav {
	align-items: flex-start !important;
	margin-right: 1.35%;
}
.global-nav-list>li:before {
	display: none !important;
	width: 0 !important;
}
.site-header .global-nav-list>li>a {
	font-size: 20px;
	padding: 14px .8rem;
	transition: all .3s;
}
.site-header .global-nav-list>li>a:hover {
	opacity: .5;
}
.global-nav-list>li a .global-nav-name {
	font-size: .7em;
	font-weight: 400;
	letter-spacing: .2em;
	text-indent: .2em;
	margin-top: 5px;
}
.global-nav-list>li a .global-nav-description {
	order: -1;
	color: var(--main-color);
	font-size: 1em;
	font-weight: bold;
	letter-spacing: .2em;
	text-indent: .2em;
	line-height: 1;
	opacity: 1;
}

#vk-mobile-nav-menu-btn.vk-mobile-nav-menu-btn {
	background: transparent;
	top: 25px;
    right: 25px;
    width: 51px;
    height: 22px;
	border: none !important;
	opacity: 0;
	transition: all .3s;
}
.vk-mobile-nav-menu-btn:hover {
	opacity: .75;
}
body .vk-mobile-nav-menu-btn::before,
body .vk-mobile-nav-menu-btn::after {
	display: block;
	position: absolute;
	top: 2.6em;
	left: 52%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: transparent;
	line-height: 1;
	transition: all .3s;
}
body .vk-mobile-nav-menu-btn .hamburger_icon {
	display: block;
	position: absolute;
	top: 5px;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 40px;
	height: 20px;
	transition: all .3s;
}
body .vk-mobile-nav-menu-btn .hamburger_icon::before {
	content: '';
	display: block;
}
body .vk-mobile-nav-menu-btn .hamburger_icon_line,
body .vk-mobile-nav-menu-btn .hamburger_icon::before {
	position: absolute;
	left: 0;
	background-color: var(--main-color);
	width: 100%;
	height: 2.4px;
	transform-origin: center;
	transition: all .5s;
}
body .vk-mobile-nav-menu-btn .hamburger_icon_line {
	top: 0;
	width: 75%;
}
body .vk-mobile-nav-menu-btn .hamburger_icon::before {
	top: 10px;
}
body .vk-mobile-nav-menu-btn.menu-open .hamburger_icon_line,
body .vk-mobile-nav-menu-btn.menu-open .hamburger_icon::before {
	background-color: #fff;
}
body .vk-mobile-nav-menu-btn.menu-open .hamburger_icon_line {
	transform: translateY(8px) rotate(-315deg);
	width: 100%;
}
body .vk-mobile-nav-menu-btn.menu-open .hamburger_icon::before {
	transform: translateY(-8px) rotate(315deg);
}

.vk-mobile-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--main-color);
}
.vk-mobile-nav nav>ul {
	border: none;
}
.vk-mobile-nav nav ul li {
	text-align: center;
}
.vk-mobile-nav nav ul li + li {
	margin-top: 1rem;
}
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
	display: inline-block;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	border: none;
}
.vk-mobile-nav nav ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 4px 0;
	padding: .3em .7em;
}
.vk-mobile-nav nav ul li a strong {
	line-height: 1.3;
}
.vk-mobile-nav nav ul li a span {
	font-size: .7em;
	line-height: 1.3;
}
@media screen and (max-width: 1350px) {
	.site-header-logo img {
		width: 210px;
	}
	.global-nav {
		margin-right: 0;
	}
	.site-header .global-nav-list>li>a {
		font-size: 16px;
		padding: 14px .5rem;
	}
	.global-nav-list>li a .global-nav-description {
		letter-spacing: .15em;
		text-indent: .15em;
	}
}
@media screen and (max-width: 991px) {
	.site-header .site-header-container {
		text-align: center;
		padding: .5rem 1.4%;
	}
	.site-header-logo img {
		width: 170px;
	}
}
@media screen and (max-width: 767px) {
	.site-header-logo img {
		width: 130px;
	}
	
	#vk-mobile-nav-menu-btn.vk-mobile-nav-menu-btn {
		top: 20px;
		right: 10px;
	}
}

/* フッター */
.site-footer {
	background-color: #F4F4F4;
	margin-top: 0.85rem;
	border-top: 2px solid var(--main-color);
}
.site-footer .site-footer-content {
	font-size: 18px;
	padding: 0;
	padding-top: 2.9rem;
	padding-bottom: .85rem;
}
.footer_top_column {
	justify-content: space-between;
}
.footer_top_column.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
	flex-basis: auto;
	flex-grow: 0;
	width: auto;
}
.footer_top_column.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:has(#menu-footer-menu) {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.footer_info_box > * {
	max-width: unset;
}
.footer_info_box p {
	letter-spacing: .2em;
	line-height: 1.6;
}
.footer_logo,
.footer_logo img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.footer_logo {
	width: 220px;
	margin-left: 5px !important;
	margin-bottom: 2.1rem;
}
.footer_address {
	margin-bottom: 1.15em !important;
}
.footer_tel {
	font-size: 22px;
}
.footer_iso_column {
	gap: 0 10px;
	width: 355px;
	margin-top: 0.95rem;
	margin-block-start: 0.95rem !important;
	margin-left: -1.1rem;
}
.footer_iso_column figure,
.footer_iso_column figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.menu-footer-menu-container > ul {
	display: flex;
}
.widget_nav_menu>div>ul li {
	font-size: 1em;
}
.widget_nav_menu>div>ul li a {
	padding: 0 !important;
	border: none;
}
.widget_nav_menu>div>ul>li {
	margin-right: 2vw;
}
.widget_nav_menu>div>ul>li:nth-child(2),
.widget_nav_menu>div>ul>li:last-child {
	margin-right: 0;
}
.widget_nav_menu>div>ul>li>a {
	color: #000;
	font-size: 20px;
	font-weight: 600;
}
.widget_nav_menu>div ul li a:hover,
.widget_nav_menu>div>ul li.current_page_item>a {
	background-color: transparent;
}
.widget_nav_menu>div ul li a:hover {
	opacity: .65;
}
.widget_nav_menu>div>ul>li>a:hover {
	color: #000;
}
.widget_nav_menu>div>ul>li>.sub-menu>li>a {
	color: #5B5B5B;
	font-weight: 500;
	margin-top: .9em;
    margin-bottom: .9em;
}
.widget_nav_menu>div>ul>li>.sub-menu>li:first-child>a {
	margin-top: .65em;
}
.widget_nav_menu>div>ul>li>.sub-menu>li:has(.sub-menu)>a {
	margin-bottom: .2em;
}
.widget_nav_menu>div>ul>li>.sub-menu>li>.sub-menu>li {
	position: relative;
	font-size: .88em;
	padding-left: .8em;
}
.widget_nav_menu>div>ul>li>.sub-menu>li>.sub-menu>li::before {
	content: '';
	display: block;
	position: absolute;
	top: .75em;
    left: .2em;
    width: .3em;
    height: 1px;
	background-color: #5B5B5B;
}
.widget_nav_menu>div>ul>li>.sub-menu>li>.sub-menu>li>a {
	color: #5B5B5B;
	font-size: 1em;
}

.widget_nav_menu ul#menu-footer-sub-menu {
	display: flex;
	justify-content: flex-end;
	margin-right: 1.2vw;
}
.widget_nav_menu>div>ul#menu-footer-sub-menu>li {
	position: relative;
	font-size: 15px;
	margin-right: .65em;
}
.widget_nav_menu>div>ul#menu-footer-sub-menu>li:last-child {
	margin-right: 0;
}
.widget_nav_menu>div>ul#menu-footer-sub-menu>li::before {
	content: '';
	display: block;
	position: absolute;
	top: .4em;
    right: -0.35em;
    width: 1px;
    height: .8em;
	background-color: #000;
}
.widget_nav_menu>div>ul#menu-footer-sub-menu>li:last-child::before {
	display: none;
}
.widget_nav_menu ul#menu-footer-sub-menu li a {
	color: #000;
	font-size: 1em;
	font-weight: 400;
}

.footer_bottom {
	display: flex;
	justify-content: space-between;
}
.footer_bottom * {
	max-width: unset !important;
}
.footer_bottom_copyright,
.footer_bottom_sub {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.footer_bottom_copyright {
	padding-left: 3px;
}
.footer_bottom_copyright p {
	color: #000;
	font-size: 12px;
	letter-spacing: .08em;
}

.site-footer-copyright {
	display: none !important;
}
@media screen and (max-width: 1500px) {
	.site-footer .site-footer-content {
		font-size: 16px;
	}
	.site-footer .site-footer-content > .row > div {
		padding: 0;
	}
	.footer_logo {
		width: 200px;
		margin-left: 0 !important;
		margin-bottom: 1.3rem;
	}
	.footer_address {
		margin-bottom: .5em !important;
	}
	.footer_tel {
		font-size: 20px;
	}
	.footer_iso_column {
		width: 300px;
		margin-top: 1rem;
		margin-block-start: 1rem !important;
	}
	.widget_nav_menu>div>ul>li {
		margin-right: 2vw;
	}
	.widget_nav_menu>div>ul>li:nth-child(2),
	.widget_nav_menu>div>ul>li:last-child {
		margin-right: 0;
	}
	.widget_nav_menu>div>ul>li>a {
		font-size: 18px;
	}
	.widget_nav_menu>div>ul>li>.sub-menu>li>a {
		margin-top: .6em;
		margin-bottom: .6em;
	}
	.widget_nav_menu>div>ul#menu-footer-sub-menu>li {
		font-size: 14px;
	}
}
@media screen and (max-width: 1300px) {
	.site-footer .site-footer-content {
		font-size: 14px;
	}
	.footer_tel {
		font-size: 18px;
	}
	.menu-footer-menu-container > ul {
		flex-wrap: wrap;
	}
	.widget_nav_menu>div>ul>li>a {
		font-size: 16px;
	}
	.footer_bottom_sub .widget_nav_menu>div>ul>li {
		font-size: 12px;
	}
}
@media screen and (max-width: 1024px) {
	.site-footer .site-footer-content {
		padding-top: 3.3rem;
		padding-bottom: 1.5rem;
	}
	.site-footer-content > .row > div > .widget_block:has(.footer_top_column) {
		margin-bottom: 0;
	}
	.footer_top_column {
		flex-direction: column;
		gap: 0;
		margin-bottom: 0;
	}
	.footer_top_column > .wp-block-column:has(.footer_info_box) {
		order: 1;
	}
	.footer_logo {
		width: 195px;
		margin-bottom: 1rem;
	}
	.footer_iso_column {
		width: 265px;
	}
	.footer_top_column.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:has(#menu-footer-menu) {
		display: contents;
	}
	.footer_top_column .widget_nav_menu:has(#menu-footer-sub-menu) {
		order: 2;
	}
	.widget_nav_menu ul#menu-footer-sub-menu {
		justify-content: center;
		margin-top: 2rem;
		margin-right: 0;
	}
	
	.footer_bottom {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 5px;
	}
	.footer_bottom_copyright {
		order: 1;
		padding-left: 0;
		margin-top: 5px;
	}
}
@media screen and (max-width: 767px) {
	.site-footer .site-footer-content {
		padding-top: 2.5rem;
	}
	.footer_info_box {
		padding-top: 1rem;
	}
	.footer_logo {
		width: 165px;
	}
	.footer_iso_column {
		width: 240px;
		margin-top: .5rem;
        margin-block-start: .5rem !important;
	}
	.widget_nav_menu>div>ul#menu-footer-menu {
		flex-wrap: wrap;
		gap: 8px;
	}
	.widget_nav_menu>div>ul#menu-footer-menu>li {
		width: 100%;
		margin-right: 0;
	}
	.widget_nav_menu>div>ul>li>.sub-menu {
		padding-left: 1rem;
	}
	.widget_nav_menu>div>ul>li>.sub-menu>li>a,
	.widget_nav_menu>div>ul>li>.sub-menu>li:first-child>a {
		margin-top: .3em;
        margin-bottom: .3em;
	}
}

/* ページヘッダー */
body:has(.page_header_container) .site-body {
	padding-top: 1.6rem;
}
.page_header_container {
	padding-top: 0;
	padding-left: 0;
}
.page_header_container.no_img {
	padding-top: 2rem;
	padding-bottom: 4.3rem;
}
.page_header_container > .vk_outer-background-area {
	display: none;
}
.page_header_container:not(.no_img) > div > .vk_outer_container {
	max-width: unset !important;
}
.page_header_container_img,
.page_header_container_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.page_header_container:not(.no_img) .title_block {
	position: absolute;
	left: 0;
	bottom: -1.2rem;
	background-color: #fff;
	padding: 1.85rem 2.57rem 0 4.57rem;
}
@media screen and (max-width: 1024px) {
	body:has(.page_header_container) .site-body {
		padding-top: 0;
	}
	.page_header_container.no_img {
		padding-bottom: 3rem;
	}
	.page_header_container_img img {
		aspect-ratio: 7 / 2;
		object-fit: cover;
	}
	.page_header_container:not(.no_img) .title_block {
		padding: 1.5rem 2.3rem 0 1.8rem;
	}
}
@media screen and (max-width: 767px) {
	.page_header_container.no_img {
		padding-bottom: 2.5rem;
	}
	.page_header_container_img img {
		aspect-ratio: 35 / 12;
	}
	.page_header_container:not(.no_img) .title_block {
		padding: 1rem 1rem 0 1.6rem;
	}
}

/* タイトル */
.title_block {
	font-size: 50px;
	margin-bottom: 4.6rem;
}
.title_block > * {
	max-width: unset !important;
}
.title_block .title_block_big {
	position: relative;
	font-family: "Varela", "Zen Kaku Gothic New", sans-serif;
	font-size: 1em;
	font-weight: normal;
	letter-spacing: .07em;
	line-height: 1.2;
	z-index: 1;
}
.title_block .title_block_big::before {
	content: '';
	display: block;
	position: absolute;
	top: -0.24em;
    left: -0.38em;
	width: .88em;
	aspect-ratio: 1 / 1;
	background-color: var(--main-color);
	border-radius: 50%;
	opacity: .3;
	z-index: -1;
}
.title_block .title_block_small {
	font-size: 18px;
	letter-spacing: .1em;
	line-height: 1.3;
    padding-left: 2px;
	margin-top: .3rem;
}
@media screen and (max-width: 1024px){
	.title_block {
		font-size: 36px;
		margin-bottom: 3rem;
	}
	.title_block .title_block_small {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	.title_block {
		font-size: 24px;
		margin-bottom: 2.5rem;
	}
	.title_block .title_block_small {
		font-size: 12px;
		margin-top: .1rem;
	}
}

/* シンプルタイトル */
.simple_title_box {
	text-align: center;
	margin-block-end: 5.3rem !important;
}
.simple_title {
	display: inline-block;
	position: relative;
	font-size: 40px;
	letter-spacing: .07em;
	text-indent: .07em;
}
.simple_title::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: calc(100% + .8em);
	height: 33%;
	background-color: #F4C6C6;
	z-index: -1;
}
@media screen and (max-width: 1024px){
	.simple_title_box {
		margin-block-end: 3rem !important;
	}
	.simple_title {
		font-size: 28px;
	}
}
@media screen and (max-width: 767px){
	.simple_title_box {
		margin-block-end: 3rem !important;
	}
	.simple_title {
		font-size: 22px;
	}
}

/* ボタン */
.arrow_btn.vk_button .vk_button_link.btn {
	min-width: 13.3rem;
	padding: .86em 1.5rem;
}
.arrow_btn.vk_button .vk_button_link.btn:hover {
	opacity: 1;
	box-shadow: none;
}
.arrow_btn.vk_button .vk_button_link_caption {
	font-size: 16px;
	letter-spacing: .07em;
	text-indent: .07em;
}
.arrow_btn.vk_button .vk_button_link_caption .vk_button_link_txt {
	display: inline-block;
	position: relative;
	font-size: 16px;
	font-weight: bold;
	padding-right: 1.7em;
	transition: all .3s;
}
.arrow_btn.vk_button .vk_button_link_caption .vk_button_link_txt::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background-image: url('../../../wp-content/uploads/2025/08/arrow_white.png');
	background-repeat: no-repeat;
	background-size: contain;
	width: 1em;
	aspect-ratio: 1 / 1;
	transition: all .3s;
}
.arrow_btn.red.vk_button .vk_button_link_caption .vk_button_link_txt::before {
	background-image: url('../../../wp-content/uploads/2025/08/arrow_red.png');
}
.arrow_btn.white.vk_button .vk_button_link.btn:hover .vk_button_link_caption .vk_button_link_txt {
	color: #000;
}
.arrow_btn.white.vk_button .vk_button_link.btn:hover .vk_button_link_caption .vk_button_link_txt::before {
	background-image: url('../../../wp-content/uploads/2025/08/arrow_black.png');
}
.arrow_btn.red.vk_button .vk_button_link.btn:hover .vk_button_link_caption .vk_button_link_txt::before {
	background-image: url('../../../wp-content/uploads/2025/08/arrow_white.png');
}
@media screen and (max-width: 767px){
	.arrow_btn.vk_button .vk_button_link.btn {
		min-width: 12rem;
		padding: .65em 1.5rem;
	}
	.arrow_btn.vk_button .vk_button_link_caption .vk_button_link_txt {
		font-size: 14px;
	}
}

/* 無限スライダー */
.ani_flow_container .vk_outer-background-area {
	background-color: transparent !important;
	opacity: 0 !important;
}
.ani_flow_slider {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
.ani_flow_slider > .row {
	flex-wrap: nowrap !important;
	justify-content: flex-start;
	transition-timing-function: linear;
	overflow: visible;
}
.ani_flow_slider > .row > .wp-block-vk-blocks-grid-column-item {
	-ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: unset;
	padding: 0 1.3%;
}
.ani_flow_slider > .row > .wp-block-vk-blocks-grid-column-item figure,
.ani_flow_slider > .row > .wp-block-vk-blocks-grid-column-item figure img {
	width: 100%;
	margin-bottom: 0;
	user-select: none;
	pointer-events: none;
}
.ani_flow_slider > .row > .wp-block-vk-blocks-grid-column-item figure {
	overflow: hidden;
}
@media screen and (max-width: 767px){
	.ani_flow_container {
		padding-top: 2.6vw;
		padding-bottom: 10.8vw;
	}
}



/* -----------------------------------------
	トップページ
----------------------------------------- */
body.home .site-body {
	padding-bottom: 0;
}

/* FV */
.fv_container {
	position: relative;
	padding: 0;
	margin-top: 0.7vw;
}
.fv_container > .vk_outer-background-area {
	display: none !important;
}
.fv_container > div > .vk_outer_container {
	max-width: unset !important;
}
.fv_slider {
	position: relative;
	width: 100cqw;
	max-width: unset;
	padding-top: 6.25vw;
	margin: 0 calc(50% - 50cqw);
}
.fv_slider > .row {
	flex-wrap: nowrap !important;
	margin-left: 0;
	margin-right: 0;
}
.fv_slider > .row > .wp-block-vk-blocks-grid-column-item,
.fv_slider > .row > .swiper-slide {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
/* 	width: 100%; */
	width: 62.86%;
	max-width: unset;
	padding: 0;
	padding-right: 1.7vw;
	transform: scale(1.0);
	transform-origin: left;
	transition: all 1.3s;
}
.fv_slider > .row > .swiper-slide.swiper-slide-next {
	transform: scale(1.39);
}
.fv_slider > .row > .wp-block-vk-blocks-grid-column-item figure,
.fv_slider > .row > .wp-block-vk-blocks-grid-column-item figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
	pointer-events: none;
	user-select: none;
}
.fv_slider > .row > .wp-block-vk-blocks-grid-column-item figure img {
	aspect-ratio: 295 / 154;
	object-fit: cover;
}
.fv_title_box {
	position: absolute;
	top: 0;
    left: 5.75%;
	color: #fff;
	z-index: 3;
}
.fv_title_box > .wp-block-group__inner-container {
	max-width: unset !important;
}
.fv_title_box .fv_title {
	font-size: 3.125vw;
	font-weight: 500;
	letter-spacing: .07em;
	line-height: 1.1;
	margin-bottom: 0;
}
.fraction {
	--easing: cubic-bezier(.2, 1, .2, 1);
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 4.75%;
    bottom: 6.2%;
	font-family: "Arimo", sans-serif;
	font-size: 20px;
	letter-spacing: .06em;
	text-indent: .06em;
	color: #fff;
	width: 110px;
	height: 110px;
	border: 1px solid #fff;
	border-radius: 50%;
	overflow: hidden;
	z-index: 3;
}
.fraction span {
	line-height: 1;
}
.fraction .current {
    display: inline-block;
    overflow: hidden;
}
.fraction .current .num {
    display: inline-block;
}
.fraction .current .num.anm-started {
	-webkit-animation: fraction-num 1s var(--easing);
	animation: fraction-num 1s var(--easing);
}
@keyframes fraction-num {
	0%, 100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
    }
    50% {
		-webkit-transform: translateY(-110%);
		transform: translateY(-110%);
		opacity: 1;
    }
    50.1% {
		-webkit-transform: translateY(110%);
		transform: translateY(110%);
		opacity: 0;
    }
}
@media screen and (max-width: 1024px){
	.fv_title_box {
		left: 3.75%;
	}
	.fv_title_box .fv_title {
		font-size: 4.5vw;
	}
	.fv_slider {
		padding-top: 8.25vw;
	}
	.fv_slider > .row > .wp-block-vk-blocks-grid-column-item,
	.fv_slider > .row > .swiper-slide {
		width: 76.99%;
	}
	.fraction {
		font-size: 18px;
		width: 90px;
		height: 90px;
	}
}
@media screen and (max-width: 767px){
	.fv_title_box .fv_title {
		font-size: 7.5vw;
		line-height: 1.3;
	}
	.fv_slider {
		padding-top: 23.25vw;
	}
	.fv_slider > .row > .wp-block-vk-blocks-grid-column-item,
	.fv_slider > .row > .swiper-slide {
		width: 83.3%;
	}
	.fv_slider > .row > .swiper-slide.swiper-slide-next {
		transform: scale(1.7);
	}
	.fv_slider > .swiper-wrapper > .swiper-slide figure img {
		aspect-ratio: 5 / 4;
		object-fit: cover;
	}
	
	.fraction {
		font-size: 14px;
		width: 70px;
		height: 70px;
	}
}

/* お知らせ */
.top_news_container {
	padding-top: 5.3rem;
}
.top_news_container .title_block .title_block_big::before {
	background-color: #fff;
}
.top_news_container .top_news_inner > * {
	max-width: unset !important;
}
.top_news_container .arrow_btn {
	margin-block-start: 1.9rem !important;
}
@media screen and (max-width: 1024px){
	.top_news_container {
		padding-top: 5rem;
		padding-bottom: 4rem;
	}
	.top_news_container .arrow_btn {
		margin-block-start: .9rem !important;
	}
}

/* MESSAGE */
.top_message_container {
	position: relative;
	padding-top: 9.2rem;
	padding-bottom: 20.6rem;
}
.top_message_container::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
	opacity: .7;
	z-index: 1;
	mix-blend-mode: multiply;
}
.top_message_container > .vk_outer-background-area {
	display: none !important;
}
.top_message_container > div > .vk_outer_container {
	position: static !important;
}
.top_message_container .title_block .title_block_big::before {
	background-color: #fff;
}
.message_gallery_items {
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	gap: 0;
	justify-content: space-between;
	width: 100%;
	min-height: 123%;
	overflow: hidden;
}
.message_gallery_items > .wp-block-column {
	position: relative;
}
.message_gallery_items > .wp-block-column:last-child {
	position: relative;
    z-index: -1;
}
.message_gallery_items figure {
	height: 40%;
	margin-bottom: 0;
}
.message_gallery_items figure + figure {
	margin-block-start: .5vw !important;
}
.message_gallery_items figure img:not([style*=object-fit]) {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}
.message_gallery_main_img {
	position: relative;
}
.message_gallery_main_img::before {
	content: '';
	background: #333;
	opacity: var(--opacity-value);
	position: absolute;
	inset: 0;
	z-index: 1;
	mix-blend-mode: multiply;
}
.message_gallery_text_box {
	position: relative;
	width: 100%;
	transition: all .6s;
	z-index: 1;
}
.message_gallery_text_box > * {
	max-width: var(--sub-width) !important;
}
.message_gallery_text_box > *.title_block {
	max-width: unset !important;
}
.message_gallery_text_box .title_block {
	margin-bottom: 9.35rem;
}
.message_gallery_text {
	font-size: 22px;
	font-weight: 500;
	letter-spacing: .19em;
	text-indent: .19em;
	line-height: 1.8;
}
.message_gallery_main_img,
.wp-block-column:nth-child(1) .wp-block-image,
.wp-block-column:nth-child(3) .wp-block-image {
  will-change: transform;
}
.message_gallery_text_box .arrow_btn {
	margin-top: 3.3rem;
}
@media screen and (max-width: 1024px) {
	.top_message_container {
		padding-top: 6.2rem;
        padding-bottom: 6.6rem;
	}
	.message_gallery_text_box .title_block {
		margin-bottom: 4.35rem;
	}
	.message_gallery_text {
		font-size: 18px;
	}
}
@media screen and (max-width: 767px) {
	.top_message_container {
		padding-top: 5rem;
        padding-bottom: 5rem;
	}
	.message_gallery_text_box .title_block {
		margin-bottom: 3rem;
	}
	.message_gallery_text {
		font-size: 14px;
	}
	.message_gallery_items figure + figure {
		margin-block-start: 1.5vw !important;
	}
	.message_gallery_text_box .arrow_btn {
		margin-top: 2.3rem;
	}
}

/* 会社概要 */
.top_company_container {
	padding-top: 10.65rem;
}
.top_company_container .company_big_title {
	font-size: 60px;
	letter-spacing: .071em;
	line-height: 1.35;
	margin-bottom: 11.2rem;
}
.top_company_container .title_block {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}
.bg_inner_box {
	max-width: var(--sub-width);
	margin-left: auto;
	margin-right: auto;
	margin-block-start: -1rem !important;
}
.bg_inner_box_text {
	--side: 33%;
}
.bg_inner_box_text,
.bg_inner_box_text > * {
	max-width: unset;
}
.bg_inner_box.right .bg_inner_box_text {
	padding-right: 0;
	padding-left: var(--side);
}
.bg_inner_box.left .bg_inner_box_text {
	padding-left: 0;
	padding-right: var(--side);
}
.bg_inner_box_text p {
	font-size: 22px;
	font-weight: 900;
	letter-spacing: .29em;
	line-height: 1.8;
}
.bg_inner_box_text .arrow_btn {
	margin-top: 3.4rem;
}
.bg_inner_box_main,
.bg_inner_box_main figure,
.bg_inner_box_main figure img,
.bg_inner_box_bg,
.bg_inner_box_bg figure,
.bg_inner_box_bg figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.top_company_container .bg_inner_box_main {
	margin-bottom: 1.8rem;
}
.bg_inner_box_bg {
	position: absolute;
	bottom: 0;
	width: 86%;
	opacity: .2;
	z-index: -1;
}
.bg_inner_box.right .bg_inner_box_bg {
	right: auto;
	left: calc(((100vw - var(--sub-width)) / 2) * -1);
}
.bg_inner_box.left .bg_inner_box_bg {
	left: auto;
	right: calc(((100vw - var(--sub-width)) / 2) * -1);
}
@media screen and (max-width: 1300px) {
	.top_company_container {
		padding-top: 8.65rem;
	}
	.top_company_container .company_big_title {
		font-size: 48px;
		margin-bottom: 8.2rem;
	}
}
@media screen and (max-width: 1024px) {
	.top_company_container {
		padding-top: 6.65rem;
	}
	.top_company_container .company_big_title {
		font-size: 34px;
        margin-bottom: 5.2rem;
	}
	.bg_inner_box_text {
		--side: 25%;
	}
	.bg_inner_box_text p {
		font-size: 18px;
	}
	.bg_inner_box_text .arrow_btn {
		margin-top: 2.5rem;
	}
	.bg_inner_box_bg {
		width: 65%;
	}
}
@media screen and (max-width: 767px) {
	.top_company_container {
		padding-top: 4.65rem;
	}
	.top_company_container .company_big_title {
		font-size: 26px;
		margin-bottom: 4rem;
	}
	.top_company_container .title_block {
		margin-bottom: 3rem !important;
		margin-block-end: 3rem !important;
	}
	.bg_inner_box_text {
		--side: 0;
	}
	.bg_inner_box_text p {
		font-size: 16px;
		letter-spacing: .15em;
		line-height: 1.5;
	}
	.bg_inner_box_text .arrow_btn {
		margin-top: 1.5rem;
	}
}

/* 事業内容 */
.top_business_container {
	padding-top: 5.82rem;
}
.top_business_container .title_block {
	margin-bottom: 6.4rem !important;
	margin-block-end: 6.4rem !important;
}
.top_business_container .bg_inner_box_main {
	margin-bottom: 3.2rem;
}
@media screen and (max-width: 1024px) {
	.top_business_container .title_block {
		margin-bottom: 4rem !important;
		margin-block-end: 4rem !important;
	}
}
@media screen and (max-width: 767px) {
	.top_business_container {
		padding-top: 3.8rem;
	}
	.top_business_container .title_block {
		margin-bottom: 3rem !important;
		margin-block-end: 3rem !important;
	}
	.top_company_container .bg_inner_box_main,
	.top_business_container .bg_inner_box_main {
		margin-bottom: 1.5rem;
	}
}

/* 流れる文字 */
.top_flow_text {
	padding-top: 5.3rem;
	padding-bottom: 1.8rem;
}
.top_flow_text .top_flow_text_title {
	color: var(--main-color);
	font-family: "Shippori Antique B1", "Zen Kaku Gothic New", sans-serif;
	font-size: 9.2vw;
	font-weight: normal;
	letter-spacing: .085em;
	line-height: 1;
	margin-bottom: 0;
	opacity: .3;
}
@media screen and (max-width: 1024px) {
	.top_flow_text {
		padding-top: 2.7rem;
	}
	.top_flow_text .top_flow_text_title {
		font-size: 12.2vw;
	}
}
@media screen and (max-width: 767px) {
	.top_flow_text {
		padding-top: 1.7rem;
		padding-bottom: 0.8rem;
	}
}

/* 採用情報 */
.top_recruit_container {
	padding-top: 10.9rem;
	padding-bottom: 9rem;
	background-image: url('../../../wp-content/uploads/2025/08/recruit_bg_20250805-scaled.webp');
	border-radius: 35px;
}
.top_recruit_container > .vk_outer-background-area {
	display: none !important;
	opacity: 0 !important;
}
.top_recruit_container > div > .vk_outer_container {
	position: static !important;
}
.top_recruit_inner {
	position: relative;
	z-index: 1;
}
.top_recruit_inner > * {
	max-width: unset !important;
}
.top_recruit_inner .top_recruit_title {
	font-size: 60px;
	letter-spacing: .075em;
	text-indent: .075em;
	margin-bottom: 1rem;
}
.top_recruit_inner .arrow_btn.vk_button .vk_button_link.btn {
	background-color: #fff;
}
.top_recruit_inner .arrow_btn.vk_button .vk_button_link.btn:hover {
	background-color: #e21413;
}
.top_recruit_img_column > .row > .wp-block-vk-blocks-grid-column-item {
	position: static;
}
.top_recruit_img_column_img1,
.top_recruit_img_column_img2 {
	position: absolute;
	margin-bottom: 0;
}
.top_recruit_img_column_img1 img,
.top_recruit_img_column_img2 img {
	width: 100%;
	vertical-align: bottom;
}
.top_recruit_img_column_img1 {
	width: 29.3%;
    left: 2.75%;
    top: 11.3%;
}
.top_recruit_img_column_img2 {
	width: 32.4%;
    right: 0.4%;
    bottom: .1%;
}
/* .top_recruit_container .title_block {
	margin-bottom: 2.2rem;
}
.top_recruit_container .title_block .title_block_big::before {
	background-color: #fff;
}
.top_recruit_column {
	max-width: var(--sub-width);
	max-width: 1111px;
	margin-left: auto;
    margin-right: auto;
}
.top_recruit_column > .row {
	--gap: 4%;
	gap: 3.1rem var(--gap);
	margin: 0;
}
.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item {
	position: relative;
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--gap))/2);
	max-width: unset;
	padding: 0;
}
.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item::before {
	content: '';
	display: block;
	position: absolute;
	right: 3.8%;
    bottom: 9%;
	background-image: url('../../../wp-content/uploads/2025/08/arrow_red.png');
	background-repeat: no-repeat;
	background-size: cover;
	width: 2.3rem;
	aspect-ratio: 1 / 1;
	z-index: 1;
	transition: all .5s;
}
.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item:hover::before {
	transform: translateX(.4rem);
}
.recruit_column_img,
.recruit_column_img figure,
.recruit_column_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.recruit_column_img,
.recruit_column_img figure {
	border-radius: 10px;
	overflow: hidden;
}
.recruit_column_img img {
	aspect-ratio: 179 / 91;
	object-fit: cover;
	transition: all .5s;
}
.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item:hover .recruit_column_img img {
	transform: scale(1.1);
}
.recruit_column_title {
	position: absolute;
	left: 5.2%;
    bottom: 9.7%;
	font-size: 28px;
	font-weight: 900;
    letter-spacing: .19em;
	line-height: 1;
	padding: .03em .46em .15em !important;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 4.6rem;
} */


@media screen and (max-width: 1024px) {
	.top_recruit_container {
		padding-top: 6rem;
		padding-bottom: 6rem;
		border-radius: 25px;
	}
	.top_recruit_inner .top_recruit_title {
		font-size: 40px;
	}
	.top_recruit_img_column_img1 {
		left: 1.75%;
		top: 2.3%;
	}
/* 	.recruit_column_title {
		left: 4.2%;
		font-size: 23px;
		margin-right: 3.4rem;
	}
	.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item::before {
		bottom: 10%;
		width: 1.6rem;
	} */
}
@media screen and (max-width: 767px) {
	.top_recruit_inner .top_recruit_title {
		font-size: 32px;
		margin-bottom: 1.5rem;
	}
	.top_recruit_img_column_img1 {
		width: 34.3%;
        left: 1.75%;
        top: 0.3%;
	}
	.top_recruit_img_column_img2 {
		width: 38.4%;
	}
/* 	.top_recruit_column > .row {
		--gap: 0;
		gap: 1.5rem var(--gap);
	}
	.top_recruit_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: 100%;
	}
	.recruit_column_title {
		font-size: 17px;
		padding: .25em .46em .35em !important;
	} */
}

/* エントリーボタン */
.top_entry_btn_container {
	padding-top: 2.25rem;
	padding-bottom: 1.2rem;
}
.top_entry_btn_container .vk_outer_container {
	max-width: unset !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.ani_entry_slider {
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
.ani_entry_slider > .row {
	flex-wrap: nowrap !important;
	margin-left: 0;
	margin-right: 0;
	transition-timing-function: linear;
}
.ani_entry_slider > .row > .wp-block-vk-blocks-grid-column-item {
	ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: unset;
	padding: 0;
}
.entry_btn_box {
	width: 100%;
	margin-bottom: 0;
}
.entry_btn_box > .vk_buttons_col {
	justify-content: space-around;
	gap: 0;
	padding: 0;
}
.entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt {
	position: relative;
	display: inline-block;
	font-family: "Spinnaker", "Zen Kaku Gothic New", sans-serif;
	font-size: 5.2vw;
	font-weight: 500;
	letter-spacing: .075em;
	line-height: 1;
	padding-right: 1.2em;
	transition: all .3s;
}
.entry_btn.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_caption .vk_button_link_txt {
	color: #7C1615;
	text-decoration: none;
}
.entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background-color: var(--main-color);
	background-image: url('../../../wp-content/uploads/2025/08/arrow_white.png');
	background-repeat: no-repeat;
	background-size: 28%;
    background-position: 51% 50%;
	width: .92em;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	transition: all .3s;
}
.entry_btn.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_caption .vk_button_link_txt::before {
	background-color: #7C1615;
}
@media screen and (max-width: 1024px) {
	.entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt::before {
		background-size: 40%;
	}
}
@media screen and (max-width: 767px) {
	.top_entry_btn_container {
		padding-bottom: 0;
	}
	.entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt {
		font-size: 8.2vw;
	}
}



/* -----------------------------------------
	会社情報
----------------------------------------- */
.page_tab_container {
	padding-bottom: 0.6rem;
}
.page_tab_container .tab_box {
	max-width: var(--sub-width);
	margin: 0 auto;
}
.tab_box {
	--label-gap: 7px;
}
.tab_box .vk_tab_labels {
	align-items: flex-end;
	gap: 0 var(--label-gap);
	justify-content: space-between;
}
.tab_box .vk_tab_labels .vk_tab_labels_label {
	font-size: 18px;
	letter-spacing: .11em;
	text-indent: .11em;
	width: calc((100% - var(--label-gap)*5)/6);
	padding: .3rem .5rem;
	border: 2px solid var(--main-color);
	border-bottom: 1px;
	border-radius: 10px 10px 0 0;
	transition:
		color .3s ease-out,
		background-color .3s ease-out;
}
.tab_box .vk_tab_labels .vk_tab_labels_label:hover {
	color: #fff;
	background-color: var(--main-color) !important;
	opacity: 1 !important;
}
.tab_box .vk_tab_labels .vk_tab_labels_label.vk_tab_labels_label-state-active,
.tab_box .vk_tab_labels .vk_tab_labels_label.has-background,
.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.vk_tab_labels_label-state-active,
.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.has-background {
	color: #fff;
	background-color: var(--main-color) !important;
	font-size: 20px;
	font-weight: 500;
	padding: .8rem .5rem;
}
.tab_box.is-style-vk_tab_labels-line .vk_tab_labels .vk_tab_labels_label::before,
.tab_box.is-style-vk_tab_labels-line .vk_tab_labels .vk_tab_labels_label::after {
	display: none;
}
.tab_box.is-style-vk_tab_labels-line .vk_tab_labels .vk_tab_labels_label>div {
	background-color: transparent;
	padding: 0;
	border: none;
}

.tab_box .vk_tab_bodys {
	border: 2px solid var(--main-color);
	border-radius: 0 0 20px 20px;
    overflow: hidden;
}
.tab_box .vk_tab_bodys_body {
	border: none;
}
.tab_box .vk_tab_bodys_body > .wp-block-group {
	padding: 4.8rem 4.1rem !important;
}
.tab_box .tab_box_inner {
	font-size: 18px;
	letter-spacing: -0.01em;
	padding: 1.1rem 7.1%;
	border: none !important;
}
.tab_box .tab_box_inner > * {
	max-width: unset !important;
}
.tab_box .tab_box_inner p {
	line-height: 2.4;
}
.tab_box_title {
	color: var(--main-color);
	font-size: 40px;
	letter-spacing: .11em;
	text-indent: .11em;
	padding-top: 0;
    padding-bottom: 1rem;
	border-bottom: 2px solid var(--main-color);
}
.tab_box_subtitle {
	font-size: 28px;
	font-weight: 900;
	letter-spacing: -0.01em;
	margin-bottom: 1.05em;
	margin-block-end: 0.85em !important;
}
p + .tab_box_subtitle {
	margin-block-start: 2.5em !important;
}
.name_img {
	width: 16.8rem;
	margin-left: auto !important;
	margin-right: 0 !important;
	margin-block-start: 1.6rem !important;
}
.name_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.tab_box .wp-block-list {
	list-style: none;
	padding-left: 1.2em;
}
.tab_box .wp-block-list li {
	position: relative;
	padding-left: 1em;
	margin-top: 1em;
    margin-bottom: 1em;
}
.tab_box .wp-block-list li::before {
	content: '';
	display: block;
	position: absolute;
	top: .55em;
	left: 0;
	width: .55em;
	aspect-ratio: 1 / 1;
	background-color: var(--main-color);
	border-radius: 50%;
}
@media screen and (max-width: 1024px) {
	.tab_box .vk_tab_labels {
		justify-content: flex-start;
	}
	.tab_box .vk_tab_bodys_body > .wp-block-group {
		padding: 3.5rem 2.8rem !important;
	}
	.tab_box .vk_tab_labels .vk_tab_labels_label {
		font-size: 16px;
		width: auto;
		border-radius: 7px 7px 0 0;
	}
	.tab_box .vk_tab_labels .vk_tab_labels_label.vk_tab_labels_label-state-active,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.vk_tab_labels_label-state-active,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.has-background {
		font-size: 18px;
		padding: .6rem .5rem;
	}
	.tab_box_title {
		font-size: 24px;
		border-width: 1px;
	}
	.tab_box_subtitle {
		font-size: 18px;
	}
	.tab_box .tab_box_inner {
		font-size: 16px;
		padding: 1.1rem 0;
	}
	.tab_box .tab_box_inner p {
		line-height: 1.8;
	}
	.name_img {
		width: 14.8rem;
	}
	.tab_box .wp-block-list li {
		padding-left: 1.2em;
	}
}
@media screen and (max-width: 767px) {
	.tab_box {
		--label-gap: 4px;
	}
	.tab_box .vk_tab_labels .vk_tab_labels_label {
		font-size: 14px;
		border-radius: 5px 5px 0 0;
		border-width: 1px;
	}
	.tab_box .vk_tab_labels .vk_tab_labels_label.vk_tab_labels_label-state-active,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.vk_tab_labels_label-state-active,
	.tab_box .vk_tab_labels .vk_tab_labels_label.has-background.has-background {
		font-size: 16px;
	}
	.tab_box .vk_tab_bodys {
		border-radius: 0 0 15px 15px;
	}
	.tab_box .vk_tab_bodys_body > .wp-block-group {
		padding: 2.5rem 1.5rem !important;
	}
	.tab_box .tab_box_inner {
		font-size: 14px;
		padding: 1.1rem 0;
	}
	.tab_box .tab_box_inner p {
		line-height: 1.6;
	}
	.tab_box_title {
		font-size: 20px;
		padding-bottom: .7rem;
        margin-block-end: .5em !important;
	}
	.tab_box_subtitle {
		font-size: 16px;
	}
	.name_img {
		width: 13.5rem;
        margin-block-start: 1rem !important;
	}
	.tab_box .wp-block-list {
		padding-left: 0;
	}
	.tab_box .wp-block-list li {
		margin-top: .5em;
		margin-bottom: .5em;
	}
}

/* ISO */
.tab_box hr {
	margin-top: 2.5rem;
    margin-bottom: 2rem;
	border-width: 1px;
}
.company_iso_img {
	width: 28.3rem;
	margin-block-start: 2.6rem !important;
	margin-left: -0.8rem !important;
}
.company_iso_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.tab_box .iso_title {
	font-size: 20px;
	margin-bottom: 1.85rem;
}
.tab_box .tab_box_inner p.tab_iso_text {
	line-height: 1.65;
}
.tab_box .tab_box_inner.philosophy p {
	line-height: 1.87;
}
.philosophy_title {
	font-size: 22px;
	margin-block-end: 1.8rem !important;
}
@media screen and (max-width: 1024px) {
	.company_iso_img {
		width: 21.3rem;
		margin-block-start: 1.6rem !important;
	}
	.tab_box .iso_title {
		font-size: 18px;
		margin-bottom: 1rem;
	}
	.tab_box .tab_box_inner.philosophy p {
		line-height: 1.7;
	}
	.philosophy_title {
		font-size: 18px;
		margin-block-end: 1rem !important;
	}
}
@media screen and (max-width: 767px) {
	.company_iso_img {
		width: 16.3rem;
        margin-block-start: -1rem !important;
	}
	.tab_box .iso_title,
	.philosophy_title {
		font-size: 17px;
		margin-bottom: .5rem;
		margin-block-end: .5rem !important;
	}
}

/* 沿革 */
.company_history_items {
	max-width: 544px;
    margin-right: auto !important;
    margin-left: auto !important;
	margin-block-start: 2.65rem !important;
}
.company_history_items.vk_timeline .vk_timeline_item {
	padding-left: 2.2rem;
}
.company_history_items .vk_timeline_item_lineStyle-default::before {
	background-color: var(--main-color);
	top: 0;
	left: 7px;
	width: 1px;
}
.company_history_items .vk_timeline_item_lineStyle-default:first-child::before {
	top: 20px;
}
.company_history_items.vk_timeline .vk_timeline_item_style.vk_timeline_item_style-outlined:not(.has-text-color) {
	color: var(--main-color);
	background-color: var(--main-color);
	top: 16px;
    left: 2px;
	width: 11px;
	height: 11px;
}
.company_history_items.vk_timeline .vk_timeline_item_content p {
	margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
	.company_history_items.vk_timeline .vk_timeline_item {
		padding-bottom: 1rem;
	}
	.company_history_items.vk_timeline .vk_timeline_item_style.vk_timeline_item_style-outlined:not(.has-text-color) {
		top: 10px;
	}
	.company_history_items {
		margin-block-start: .65rem !important;
	}
}
@media screen and (max-width: 767px) {
	.company_history_items.vk_timeline .vk_timeline_item {
		padding-left: 1.5rem;
	}
	.company_history_items .vk_timeline_item_lineStyle-default:first-child::before {
		top: 13px;
	}
	.company_history_items.vk_timeline .vk_timeline_item_style.vk_timeline_item_style-outlined:not(.has-text-color) {
		top: 6px;
	}
}


/* 会社概要 */
.profile_table,
.profile_table table,
.profile_table table tr,
.profile_table table tr th,
.profile_table table tr td {
	font-size: 16px;
	letter-spacing: .07em;
	border: none;
}
.profile_table table tr {
	border-bottom: 1px solid #D9D9D9;
}
.profile_table table tr td {
	line-height: 2.1;
	padding: .8rem 0;
}
.profile_table table tr:first-child td {
	padding-top: 0;
}
.profile_table table tr td:first-child {
	color: var(--main-color);
	font-size: 18px;
	font-weight: bold;
	width: 14.6em;
}
@media screen and (max-width: 1024px) {
	.profile_table table tr td,
	.profile_table table tr td:first-child {
		display: block;
		line-height: 1.7;
		width: 100%;
		padding: 1.5rem 0;
	}
	.profile_table table tr td:first-child {
		font-size: 16px;
		padding-bottom: .5rem;
	}
	.profile_table table tr td:last-child {
		padding-top: 0;
	}
}
@media screen and (max-width: 767px) {
	.profile_table, .profile_table table,
	.profile_table table tr,
	.profile_table table tr th,
	.profile_table table tr td {
		font-size: 14px;
	}
	.profile_table table tr td,
	.profile_table table tr td:first-child {
		padding: 1.2rem 0;
	}
	.profile_table table tr:first-child td:first-child {
		padding-top: .5rem;
	}
	.profile_table table tr td:first-child {
		font-size: 15px;
		padding-bottom: .3rem;
	}
}

/* アクセス */
.tab_box .tab_box_inner .page_access_box {
	font-size: 18px;
	margin-bottom: 0 !important;
	border: none !important;
}
.tab_box .tab_box_inner .page_access_box > * {
	max-width: unset !important;
}
.tab_box .tab_box_inner .page_access_box + .page_access_box {
	margin-top: 4.75rem;
}
.access_title {
	font-size: 24px;
	letter-spacing: .08em;
	margin-block-end: 0 !important;
}
.access_map {
	width: 100%;
	aspect-ratio: 35 / 12;
	margin-block-start: .75rem !important;
	margin-block-end: 1.1rem !important;
}
.tab_box .tab_box_inner .page_access_box p {
	line-height: 1.6;
}
@media screen and (max-width: 1024px) {
	.tab_box .tab_box_inner .page_access_box {
		font-size: 16px;
	}
	.access_title {
		font-size: 18px;
	}
}
@media screen and (max-width: 767px) {
	.access_map {
		aspect-ratio: 7 / 4;
		margin-block-end: 0.5rem !important;
	}
	.tab_box .tab_box_inner .page_access_box {
		font-size: 14px;
	}
	.tab_box .tab_box_inner .page_access_box + .page_access_box {
		margin-top: 2.75rem;
	}
	.access_title {
		font-size: 16px;
	}
}

/* 施工事例 */
.works_item .vk_accordion-trigger p {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}
.works_table,
.works_table table,
.works_table table thead,
.works_table table tr,
.works_table table tr th,
.works_table table tr td {
	font-size: 18px;
	border: none;
}
.works_table table {
	min-width: 1040px !important;
}
.works_table table tr {
	border-bottom: 2px solid #D9D9D9;
}
.works_table table tr:has(th) {
	border: none;
}
.works_table table tr th {
	color: #fff;
	background-color: var(--main-color);
	text-align: left;
	padding: 1.2rem;
}
.works_table table tr td {
	padding: 1rem 1.2rem;
}
.works_table table tr th:first-child,
.works_table table tr td:first-child {
	width: 21rem;
}
.works_table table tr th:nth-child(2),
.works_table table tr td:nth-child(2) {
	width: 25rem;
}
.works_table table tr th:nth-child(3),
.works_table table tr td:nth-child(3) {
	width: 8rem;
}
@media screen and (max-width: 1024px) {
	.works_table,
	.works_table table,
	.works_table table thead,
	.works_table table tr,
	.works_table table tr th,
	.works_table table tr td {
		font-size: 16px;
	}
	.works_table table {
		min-width: 850px !important;
	}
	.works_table table tr th {
		padding: .6rem .8rem;
	}
	.works_table table tr td {
		padding: .8rem .8rem;
	}
	.works_table table tr th:first-child,
	.works_table table tr td:first-child {
		width: 300px;
	}
	.works_table table tr th:nth-child(2),
	.works_table table tr td:nth-child(2) {
		width: 350px;
	}
	.works_table table tr th:nth-child(3),
	.works_table table tr td:nth-child(3) {
		width: 90px;
	}
}
@media screen and (max-width: 767px) {
	.works_table,
	.works_table table,
	.works_table table thead,
	.works_table table tr,
	.works_table table tr th,
	.works_table table tr td {
		font-size: 14px;
	}
	.works_table table {
		min-width: 800px !important;
	}
	.works_table table tr th:first-child,
	.works_table table tr td:first-child {
		width: 18rem;
	}
	.works_table table tr th:nth-child(3),
	.works_table table tr td:nth-child(3) {
		width: 6rem;
	}
}


/* -----------------------------------------
	事業内容
----------------------------------------- */
.page_business_container {
	padding-top: 4.6rem;
	padding-bottom: 12.3rem;
}
.business_btns {
	margin-bottom: 8rem;
}
.business_btns > .vk_buttons_col {
	justify-content: center;
	gap: 1rem 1vw;
}
.business_btns .vk_button .vk_button_link {
	font-size: 18px;
	text-align: left;
	width: 13rem;
	padding: .5em 1em;
	padding-right: .7em;
	border: 2px solid var(--main-color);
	border-radius: 10px;
	transition: all .5s;
}
.business_btns .vk_button .vk_button_link:hover {
	color: var(--main-color);
	background-color: #fff !important;
	box-shadow: none;
	opacity: 1;
}
.business_btns .vk_button .vk_button_link_caption {
	position: relative;
	display: block;
	width: 100%;
}
.business_btns .vk_button .vk_button_link_caption::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background-image: url('../../../wp-content/uploads/2025/08/tri_white1.png');
	background-repeat: no-repeat;
	background-size: contain;
	width: 1.45em;
	aspect-ratio: 1 / 1;
	transition: all .5s;
}
.business_btns .vk_button .vk_button_link:hover .vk_button_link_caption::before {
	background-image: url('../../../wp-content/uploads/2025/08/tri_red1.png');
}
.business_btns .vk_button .vk_button_link_caption .vk_button_link_txt {
	display: inline-block;
    width: 100%;
	font-size: 1em;
	font-weight: 500;
	letter-spacing: .1em;
	padding-right: 1.8em;
}
@media screen and (max-width: 1024px){
	.business_btns {
		margin-bottom: 4.5rem;
	}
	.business_btns .vk_button .vk_button_link {
		font-size: 16px;
		width: 11rem;
		padding: .3em .8em;
		border-width: 1px;
		border-radius: 5px;
	}
	.business_btns .vk_button .vk_button_link_caption::before {
		width: 1.2em;
	}
	.business_btns .vk_button .vk_button_link_caption .vk_button_link_txt {
		padding-right: 1.5em;
	}
}
@media screen and (max-width: 767px){
	.business_btns > .vk_buttons_col {
		gap: .5rem .4rem;
	}
	.business_btns > .vk_buttons_col > .wp-block-vk-blocks-button {
		width: calc((100% - .4rem)/2);
	}
	.business_btns .vk_button .vk_button_link {
		font-size: 14px;
		width: 100%;
	}
}

.business_item_outer > .wp-block-vk-blocks-border-box {
	max-width: unset !important;
}
.business_item_outer + .business_item_outer {
	margin-block-start: 8.3rem !important;
}
.business_item {
	text-align: center;
}
.business_item .vk_borderBox_title_container i {
	display: none;
}
.business_item .vk_borderBox_title_container {
	background-color: #F4F4F4 !important;
	width: 19rem;
	padding: 1.1rem 1rem .1rem;
	border-radius: 10px 10px 0 0;
}
.business_item .vk_borderBox_title_container .vk_borderBox_title {
	color: var(--main-color);
	font-size: 40px;
	letter-spacing: .07em;
	text-indent: .07em;
}
.business_item .vk_borderBox_body {
	text-align: left;
	padding: 3.85rem 3.85rem;
	border: none;
}
.business_item_main_column {
	justify-content: space-between;
}
.business_item_main_column .business_item_main_column_img {
	flex-basis: 37.2% !important;
}
.business_item_main_column .business_item_main_column_text {
	flex-basis: 54.4% !important;
}
.business_item_title {
	font-size: 24px;
    letter-spacing: -0.01em;
    line-height: 1.7;
	margin-block-end: 2.55rem !important;
}
.business_item_main_column_text * + .business_item_box {
	margin-block-start: 3.8rem !important;
}
.business_item_main_column_text .business_item_title + .business_item_box {
	margin-block-start: 4.5rem !important;
}
.business_item_main_column_text > p {
	font-size: 18px;
	line-height: 2.15;
}
.business_item_box {
	font-size: 18px;
	padding: 2.45rem 3rem;
	border-radius: 20px;
}
.business_item_box > * {
	max-width: unset !important;
}
.business_item_box_column .business_item_box {
	height: 100%;
}
.business_item_box_title {
	font-size: 24px;
}
.business_item_box p {
	letter-spacing: .026em;
}
.business_item_box_column .business_item_box ul,
.business_item_box .business_item_list_column ul {
	padding-left: 0;
	list-style: none;
}
.business_item_list_column {
	--gap: 8%;
	gap: 0 var(--gap);
	justify-content: center;
    width: auto;
    max-width: 100%;
	padding: 4.45rem 0;
}
.business_item_list_column.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {
	flex-shrink: 0;
	flex-basis: auto;
    flex-grow: 0;
	max-width: calc((100% - var(--gap))/2);
}
.business_item_list_column ul {
	width: max-content;
	max-width: 100%;
}
.business_item_list_column ul li {
	font-size: 24px;
}
.business_item_box ul li,
.business_item_list_column ul li {
	margin-top: .15em;
	margin-bottom: .15em;
}
@media screen and (max-width: 1024px){
	.page_business_container {
		padding-top: 3.6rem;
		padding-bottom: 4.3rem;
	}
	.business_item_outer + .business_item_outer {
		margin-block-start: 4.5rem !important;
	}
	.business_item .vk_borderBox_title_container {
		width: 15rem;
		padding: 0.5rem 1rem .1rem;
		border-radius: 7px 7px 0 0;
	}
	.business_item_main_column.wp-block-columns.is-not-stacked-on-mobile {
		flex-wrap: wrap !important;
	}
	.business_item_main_column .business_item_main_column_img,
	.business_item_main_column .business_item_main_column_text {
		flex-basis: 100% !important;
	}
	.business_item .vk_borderBox_body {
		padding: 3rem 2.5rem;
	}
	.business_item_img {
		width: 100%;
		max-width: 300px;
		margin-left: auto;
		margin-right: auto;
	}
	.business_item .vk_borderBox_title_container .vk_borderBox_title {
		font-size: 26px;
	}
	.business_item_title {
		font-size: 22px;
		margin-block-end: 1.2rem !important;
	}
	.business_item_box {
		font-size: 16px;
		padding: 1.5rem 2rem;
		border-radius: 13px;
	}
	.business_item_main_column_text .business_item_title + .business_item_box {
		margin-block-start: 2rem !important;
	}
	.business_item_main_column_text * + .business_item_box {
		margin-block-start: 2.5rem !important;
	}
	.business_item_box_title {
		font-size: 18px;
		margin-block-end: .75rem !important;
	}
	.business_item_main_column_text > p {
		font-size: 16px;
		line-height: 1.7;
	}
	.business_item_list_column.wp-block-columns.is-not-stacked-on-mobile {
		--gap: 0;
		flex-wrap: wrap !important;
		padding: 0;
	}
	.business_item_list_column.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {
		width: 100%;
	}
	.business_item_list_column ul li {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	.business_item .vk_borderBox_title_container .vk_borderBox_title {
		font-size: 22px;
	}
	.business_item_title {
		font-size: 18px;
	}
	.business_item_box {
		font-size: 14px;
		padding: 1.5rem;
	}
	.business_item .vk_borderBox_body {
		padding: 2.5rem 1.5rem;
	}
	.business_item_box_column.wp-block-columns.is-not-stacked-on-mobile {
		flex-wrap: wrap !important;
	}
	.business_item_box_column.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
		flex-basis: auto;
		flex-grow: 0;
		width: 100%;
	}
	.business_item_main_column_text > p {
		font-size: 14px;
	}
	.business_item_box_title {
		font-size: 16px;
		margin-block-end: .5rem !important;
	}
	.business_item_list_column ul li {
		font-size: 14px;
	}
	.business_item_main_column_text .business_item_title + .business_item_box {
		margin-block-start: 1rem !important;
	}
}



/* -----------------------------------------
	採用情報
----------------------------------------- */
.page_recruit_top {
	font-size: 18px;
	font-weight: 500;
	padding-top: 1.85rem;
}
.page_recruit_top p {
	line-height: 2.2;
}
@media screen and (max-width: 1024px){
	.page_recruit_top {
		font-size: 16px;
	}
	.page_recruit_top p {
		line-height: 1.7;
	}
}
@media screen and (max-width: 767px){
	.page_recruit_top {
		font-size: 14px;
	}
}

/* page_recruite_point_container */
.page_recruite_point_container {
	padding-top: 6.7rem;
}
.recruit_point_column > .row {
	--gap: 2.5%;
	justify-content: center;
	gap: 2.1rem var(--gap);
	margin-left: 0;
	margin-right: 0;
}
.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	font-size: 18px;
	width: calc((100% - var(--gap))/2);
	max-width: unset;
	padding: 3.25rem 3% 2.2rem;
	border: 2px solid var(--main-color);
	border-radius: 10px;
}
.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item:nth-child(n+3) {
	width: calc((100% - var(--gap)*2)/3);
}
.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item > *:last-child {
	margin-bottom: 0 !important;
	margin-block-end: 0 !important;
}
.recruit_point_title_box {
	gap: .5rem 1.3rem;
	font-size: 24px;
	letter-spacing: .18em;
	margin-bottom: 2.25rem;
}
.recruit_point_title_box figure {
	width: 1.86em;
}
.recruit_point_title_box figure.point1 {
	width: 1.9em;
}
.recruit_point_title_box figure.point2 {
	width: 2.16em;
}
.recruit_point_title_box figure.point3 {
	width: 2.125em;
}
.recruit_point_title_box figure.point4 {
	width: 2.33em;
}
.recruit_point_title_box figure.point5 {
	width: 2.625em;
}
.recruit_point_title_box figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.recruit_point_title_box .wp-block-heading {
	font-size: 1em;
	margin-block-end: 0 !important;
}
.recruit_point_column p {
	line-height: 1.8;
}
@media screen and (max-width: 1700px) {
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item {
		font-size: 17px;
		padding: 3.25rem 2% 2.2rem;
	}
}
@media screen and (max-width: 1500px) {
	.recruit_point_column > .row {
		--gap: 1.5%;
	}
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item {
		font-size: 16px;
		padding: 2.25rem 1% 2.2rem;
	}
	.recruit_point_title_box {
		gap: .5rem .7rem;
		font-size: 22px;
		margin-bottom: 1.5rem;
	}
}
@media screen and (max-width: 1300px) {
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item:nth-child(n+3) {
		width: calc((100% - var(--gap))/2);
	}
}
@media screen and (max-width: 1024px) {
	.page_recruite_point_container {
		padding-top: 3rem;
	}
	.recruit_point_column > .row {
		gap: 1.5rem var(--gap);
	}
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item {
		font-size: 14px;
		padding: 2rem 3%;
		border-radius: 7px;
	}
	.recruit_point_title_box {
		font-size: 18px;
		letter-spacing: .1em;
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 767px){
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item,
	.recruit_point_column > .row > .wp-block-vk-blocks-grid-column-item:nth-child(n+3) {
		width: 100%;
	}
}

/* page_recruite_schedule_container */
.page_recruite_schedule_container {
	padding-top: 8.55rem;
}
.recruit_sub_inner {
/* 	max-width: var(--sub-width); */
	max-width: 1116px;
	margin: 0 auto !important;
}
.recruit_term_box .wp-block-vk-blocks-accordion + .wp-block-vk-blocks-accordion {
	margin-top: 1rem;
}
.recruite_schedule_title {
	font-size: 30px;
	letter-spacing: .07em;
    text-indent: .07em;
}
.recruite_schedule_box + .recruite_schedule_box {
	margin-block-start: 7rem !important;
}
.recruite_schedule_items {
	position: relative;
/* 	height: 450px; */
	margin-top: 0 !important;
	margin-block-end: 4rem !important;
	overflow: hidden;
}
.recruite_schedule_box.open .recruite_schedule_items {
	height: 100%;
}
/* .recruite_schedule_items::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 150px;
	background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
	pointer-events: none;
	transition: opacity 0.3s ease;
}
.recruite_schedule_box.open .recruite_schedule_items::after {
	height: 0;
	opacity: 0;
} */
.recruite_schedule_box.open .business_btns .vk_button .vk_button_link_caption::before {
	transform: translateY(-50%) scale(1, -1);
    -webkit-transform: translateY(-50%) scale(1, -1);
    -ms-transform: translateY(-50%) scale(1, -1);
}
.recruite_schedule_items .wp-block-vk-blocks-step-item {
	padding-left: 0;
}
.recruite_schedule_items .wp-block-vk-blocks-step-item + .wp-block-vk-blocks-step-item {
	padding-top: 9.35rem;
}
.recruite_schedule_items .vk_step .vk_step_item_content:after {
	display: none;
}
.recruite_schedule_items .vk_step_item_dot {
	display: none !important;
}
.recruite_schedule_items .vk_step_item_lineStyle-default::before {
	top: 0;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 6px;
	background: var(--main-color);
}
.recruite_schedule_item_column {
	font-size: 18px;
	gap: 0;
	margin-bottom: 0 !important;
}
.recruite_schedule_item_column.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {
	flex-basis: auto;
    flex-grow: 0;
	flex-shrink: 0;
	width: 50%;
}
.recruite_schedule_item_column p {
	letter-spacing: .11em;
	line-height: 1.55;
}
.recruite_schedule_item_column_text {
	padding-right: 8%;
}
.recruite_schedule_item_column.is-vk-row-reverse .recruite_schedule_item_column_text {
	padding-right: 0;
	padding-left: 8%;
}
.recruite_schedule_item_column .recruite_schedule_item_column_num {
	font-size: 32px;
	letter-spacing: .05em;
	line-height: 1;
	margin-block-end: 1.5rem !important;
}
.recruite_schedule_item_column .recruite_schedule_item_column_title {
	font-size: 20px;
	letter-spacing: .11em;
	padding-top: 0 !important;
	margin-bottom: 1.58rem;
}
.recruite_schedule_item_column_img figure,
.recruite_schedule_item_column_img figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.recruite_schedule_item_column_img figure {
	margin-block-start: -4.7rem !important;
}
.recruite_schedule_items .wp-block-vk-blocks-step-item:first-child .recruite_schedule_item_column_img figure {
	margin-block-start: 0 !important;
}
.recruite_schedule_items .wp-block-vk-blocks-step-item:first-child .recruite_schedule_item_column_text {
	margin-top: 3.2rem;
}
.recruite_schedule_items .vk_step_item_lineStyle-default.wp-block-vk-blocks-step-item:first-child::before {
	top: 3.1rem;
}
@media screen and (max-width: 1300px) {
	.recruit_sub_inner {
		max-width: unset;
	}
	.recruite_schedule_item_column_img figure {
		margin-block-start: -4.7vw !important;
	}
}
@media screen and (max-width: 1200px) {
	.recruite_schedule_items .vk_step_item_lineStyle-default.wp-block-vk-blocks-step-item:first-child::before {
		top: 2.65rem;
	}
	.recruite_schedule_items .wp-block-vk-blocks-step-item:first-child .recruite_schedule_item_column_text {
		margin-top: 2.8rem;
	}
}
@media screen and (max-width: 1024px) {
	.recruite_schedule_title {
		font-size: 24px;
	}
	.recruite_schedule_item_column {
		font-size: 16px;
	}
	.recruite_schedule_item_column p {
		letter-spacing: .05em;
	}
	.recruite_schedule_item_column_text {
		padding-right: 6%;
	}
	.recruite_schedule_item_column.is-vk-row-reverse .recruite_schedule_item_column_text {
		padding-left: 6%;
	}
	.recruite_schedule_item_column .recruite_schedule_item_column_num {
		font-size: 26px;
		margin-block-end: .8rem !important;
	}
	.recruite_schedule_item_column .recruite_schedule_item_column_title {
		font-size: 18px;
	}
}
@media screen and (max-width: 991px) {
	.recruite_schedule_items .vk_step_item_lineStyle-default.wp-block-vk-blocks-step-item:first-child::before {
		top: 2.25rem;
	}
}
@media screen and (max-width: 767px) {
	.page_recruite_schedule_container {
		padding-top: 5rem;
	}
	.recruite_schedule_title {
		font-size: 20px;
	}
	.recruite_schedule_items {
		width: 100%;
		max-width: unset !important;
	}
	.recruite_schedule_items .vk_step_item_lineStyle-default::before {
		left: 0;
		transform: none;
		-webkit-transform: none;
		-ms-transform: none;
		width: 4px;
	}
	.recruite_schedule_items .wp-block-vk-blocks-step-item + .wp-block-vk-blocks-step-item {
		padding-top: 4rem;
	}
	.recruite_schedule_item_column p {
		line-height: 1.7;
	}
	.recruite_schedule_item_column.wp-block-columns.is-not-stacked-on-mobile {
		flex-wrap: wrap !important;
		font-size: 14px;
	}
	.recruite_schedule_item_column.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column {
		width: 100%;
	}
	.recruite_schedule_item_column_text,
	.recruite_schedule_item_column.is-vk-row-reverse .recruite_schedule_item_column_text {
		padding-right: 0;
		padding-left: 1.8rem;
	}
	.recruite_schedule_item_column_text {
		order: 1;
	}
	.recruite_schedule_item_column_img {
		margin-bottom: 1rem !important;
	}
	.recruite_schedule_item_column_img figure {
		margin-block-start: 0 !important;
	}
	.recruite_schedule_item_column .recruite_schedule_item_column_num {
		font-size: 19px;
		margin-block-end: .5rem !important;
	}
	.recruite_schedule_item_column .recruite_schedule_item_column_title {
		font-size: 17px;
		margin-bottom: 1rem;
	}
	.recruite_schedule_items .vk_step_item_lineStyle-default.wp-block-vk-blocks-step-item:first-child::before {
		top: 8vw;
	}
	.recruite_schedule_items .wp-block-vk-blocks-step-item:first-child .recruite_schedule_item_column_text {
		margin-top: 0;
	}
}

/* page_recruite_term_container */
.page_recruite_term_container {
	padding-top: 6rem;
	padding-bottom: 6rem;
}
.recruit_term_box .wp-block-vk-blocks-accordion {
	border: none !important;
}
.recruit_term_box .wp-block-vk-blocks-accordion-trigger {
	background-color: #F4F4F4;
	padding-right: 45px;
	border-radius: 10px;
}
.recruit_term_box .wp-block-vk-blocks-accordion-trigger p {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: .07em;
	margin-block-end: 0 !important;
}
.recruit_term_box .vk_accordion-toggle {
	border: none;
}
.recruit_term_box .wp-block-vk-blocks-accordion-target.vk_accordion-target-open {
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.vk_accordion-trigger .vk_accordion-toggle-close::after,
.vk_accordion-trigger .vk_accordion-toggle-open::after {
	top: 50%;
	right: 15px;
	background-image: url('../../../wp-content/uploads/2025/08/tri_red1.png');
	background-repeat: no-repeat;
	background-size: cover;
	width: 20px;
	height: auto;
	aspect-ratio: 1 / 1;
	border: none;
}
.vk_accordion-trigger .vk_accordion-toggle-close::after {
	-webkit-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg);
}
.vk_accordion-trigger .vk_accordion-toggle-open::after {
	-webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
}
.recruit_term_table,
.recruit_term_table table,
.recruit_term_table table tr,
.recruit_term_table table tr th,
.recruit_term_table table tr td {
	font-size: 18px;
	letter-spacing: .07em;
	line-height: 1.87;
	padding: 0;
	border: none;
}
.recruit_term_table table tr {
	border-bottom: 2px solid #D9D9D9;
}
.recruit_term_table table tr:first-child {
	border-top: 2px solid #D9D9D9;
}
.recruit_term_table table tr td {
	padding: 1.2rem 0;
}
.recruit_term_table table tr td:first-child {
	color: var(--main-color);
	font-weight: bold;
	width: 11.2em;
	vertical-align: top;
}
.page_recruite_term_container .recruit_term_table + .recruit_entry_btn {
	margin-top: 3.65rem;
}
.recruit_entry_btn.vk_button .vk_button_link.btn {
	width: 45.95rem;
	max-width: 100%;
	padding: 2.25rem 1rem;
}
.recruit_entry_btn.vk_button .vk_button_link:hover {
	color: var(--main-color);
	background-color: #fff;
	box-shadow: unset;
	opacity: 1;
}
.recruit_entry_btn.vk_button .vk_button_link_caption {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: .08em;
	text-indent: .08em;
}
.recruit_entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt {
	position: relative;
	padding-right: 2.1em;
}
.recruit_entry_btn.vk_button .vk_button_link_caption .vk_button_link_txt::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    background-image: url(../../../wp-content/uploads/2025/08/arrow_white.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 1em;
    aspect-ratio: 1 / 1;
    transition: all .3s;
}
.recruit_entry_btn.vk_button .vk_button_link:hover .vk_button_link_caption .vk_button_link_txt::before {
    background-image: url(../../../wp-content/uploads/2025/08/arrow_red.png);
}
@media screen and (max-width: 1024px) {
	.page_recruite_term_container {
		padding-top: 5.2rem;
		padding-bottom: 3rem;
	}
	.recruit_term_box .wp-block-vk-blocks-accordion-trigger {
		padding-right: 40px;
		border-radius: 7px;
	}
	.vk_accordion-trigger .vk_accordion-toggle-close::after,
	.vk_accordion-trigger .vk_accordion-toggle-open::after {
		width: 18px;
	}
	.recruit_term_box .wp-block-vk-blocks-accordion-trigger p {
		font-size: 18px;
	}
	.recruit_term_table,
	.recruit_term_table table,
	.recruit_term_table table tr,
	.recruit_term_table table tr th,
	.recruit_term_table table tr td {
		font-size: 16px;
		line-height: 1.6;
	}
	.recruit_term_table table tr td:first-child {
		width: 9.5em;
	}
	
	.page_recruite_term_container .recruit_term_table + .recruit_entry_btn {
		margin-top: 2.5rem;
	}
	.recruit_entry_btn.vk_button .vk_button_link.btn {
		width: 30rem;
		padding: 1.5rem 1rem;
	}
	.recruit_entry_btn.vk_button .vk_button_link_caption {
		font-size: 24px;
	}
}
@media screen and (max-width: 767px) {
	.recruit_term_box .wp-block-vk-blocks-accordion-trigger p {
		font-size: 16px;
	}
	.recruit_term_box .wp-block-vk-blocks-accordion-target.vk_accordion-target-open {
		padding-top: 2.5rem;
		padding-bottom: 2rem;
	}
	.recruit_term_table,
	.recruit_term_table table,
	.recruit_term_table table tr,
	.recruit_term_table table tr th,
	.recruit_term_table table tr td {
		font-size: 14px;
	}
	.recruit_term_table table tr td {
		display: block;
		width: 100%;
	}
	.recruit_term_table table tr td:first-child {
		font-size: 15px;
		width: 100%;
		padding-bottom: 0;
	}
	.recruit_term_table table tr td:last-child {
		padding-top: .5rem;
	}
	
	.page_recruite_term_container .recruit_term_table + .recruit_entry_btn {
		margin-top: 1.5rem;
	}
	.recruit_entry_btn.vk_button .vk_button_link.btn {
		padding: 1rem 1rem;
	}
	.recruit_entry_btn.vk_button .vk_button_link_caption {
		font-size: 16px;
	}
}



/* -----------------------------------------
	お知らせ一覧
----------------------------------------- */
body.blog .page-header,
body.blog #breadcrumb,
body.archive .page-header,
body.archive #breadcrumb,
body.wp-singular .page-header,
body.wp-singular #breadcrumb {
	display: none;
}


/* お知らせ */
.vk_posts-layout-card-horizontal .vk_post-postType-post {
	border-radius: 10px;
	border: 2px solid var(--main-color);
	cursor: pointer;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 1.6rem 1.77rem 4.6rem;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body::before {
	content: '';
	display: block;
	position: absolute;
	right: .95rem;
    bottom: 1.06rem;
    width: 2.1rem;
	aspect-ratio: 1 / 1;
	background-image: url('../../../wp-content/uploads/2025/08/arrow_white.png');
	background-repeat: no-repeat;
	background-size: 50%;
	background-position: 53% 50%;
	background-color: var(--main-color);
	border: 1px solid var(--main-color);
	border-radius: 50%;
	transition: all .3s;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post:hover .card-body::before {
	background-color: #fff;
	background-image: url('../../../wp-content/uploads/2025/08/arrow_red.png');
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-title,
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-date {
	color: #000;
	font-size: 16px;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-title {
	letter-spacing: .07em;
	line-height: 1.45;
	font-weight: bold;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-title a {
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-date {
	order: -1;
	letter-spacing: .08em;
	margin-top: 0;
	margin-bottom: 1.8rem;
}
@media screen and (max-width: 1024px){
	.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-date {
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 767px){
	.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body {
		padding: 1.6rem 1.2rem 3.6rem;
	}
	.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-title,
	.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body .card-date {
		font-size: 14px;
	}
	.vk_posts-layout-card-horizontal .vk_post-postType-post .card-body::before {
		width: 2rem;
		bottom: .8rem;
	}
}

/* ページネーション */
.pagination {
	margin-top: 2.55rem;
}
ul.page-numbers {
	display: flex;
	align-items: center;
	gap: 0 1.05rem;
}
ul.page-numbers li {
	float: none;
}
ul.page-numbers li a,
ul.page-numbers li span.page-numbers {
	color: #000;
	font-weight: 700;
	padding: 6px 3px;
	border: none;
}
ul.page-numbers li a:hover {
	background-color: transparent;
	opacity: .5;
}
ul.page-numbers li span.page-numbers {
	position: relative;
}
ul.page-numbers li span.page-numbers::before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background-color: #000;
}
ul.page-numbers li span.page-numbers.current::before {
	width: 100%;
}
ul.page-numbers li span.page-numbers.current {
	color: #000;
	background-color: transparent;
}
ul.page-numbers li:first-child>.page-numbers,
ul.page-numbers li:last-child>.page-numbers {
	border-radius: 0 !important;
}
ul.page-numbers li > .prev.page-numbers,
ul.page-numbers li > .next.page-numbers {
	font-size: .875em;
	font-weight: 400;
	letter-spacing: .1em;
	text-indent: .1em;
}
ul.page-numbers li > .prev.page-numbers {
	margin-right: .75rem;
}
ul.page-numbers li > .next.page-numbers {
	margin-left: .75rem;
}
@media screen and (max-width: 1024px){
	.pagination {
		margin-top: 1.5rem;
	}
	ul.page-numbers li > .prev.page-numbers {
		margin-right: .2rem;
	}
	ul.page-numbers li > .next.page-numbers {
		margin-left: .2rem;
	}
}



/* -----------------------------------------
	お知らせ詳細
----------------------------------------- */
.entry-header .entry-title {
	font-size: 30px;
}
@media screen and (max-width: 1024px){
	.entry-header .entry-title {
		font-size: 24px;
	}
}
@media screen and (max-width: 767px){
	.entry-header .entry-title {
		font-size: 20px;
	}
}



/* -----------------------------------------
	お問い合わせ
----------------------------------------- */
.page_contact_container .title_block {
	margin-bottom: 3rem;
}
.page_contact_container .contact_title {
	color: var(--main-color);
    font-size: 34px;
	text-align: center;
    letter-spacing: .2em;
    text-indent: .2em;
    line-height: 1.2;
	margin-bottom: 2rem;
}
.page_contact_box form {
	width: 85%;
	max-width: 900px;
	margin: 0 auto;
}
.page_contact_box form p {
	letter-spacing: .11em;
	line-height: 2.1;
	margin-bottom: 0;
	margin-block-end: 0 !important;
}
.contact_table,
.contact_table tr,
.contact_table tr th,
.contact_table tr td {
	font-size: 1rem;
	text-align: left;
	padding: .9rem 0;
	border: none;
}
.contact_table {
	margin-top: 2.3rem;
}
.contact_table p {
	margin-bottom: 0;
}
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
	background: #fff;
	padding: .86em 1em;
	margin-bottom: 0;
	border: 1px solid #5B5B5B;
	border-radius: 0;
}
textarea {
	line-height: 1.6;
	resize: none;
}
.contact_table tr th {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: .36em;
	width: 13.85em;
	vertical-align: top;
}
.contact_table tr th p {
	text-align: left;
	padding-top: 0.35rem;
}
.contact_table tr th span {
	color: var(--main-color);
	font-size: 14px;
	font-weight: 400;
}
.wpcf7-not-valid-tip {
	font-size: .875em;
}
.privacy_policy {
	font-size: 14px;
	letter-spacing: .38em;
	max-height: 157px;
	padding: 16px;
	margin-bottom: 1.2rem;
	border: 1px solid #c8c8c8;
    overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.policy_box + .policy_box {
	margin-top: 1rem;
}
.policy_box .title {
	font-weight: 600;
}
.privacy-check {
	margin-bottom: 1.35rem;
}
.privacy-check .wpcf7-list-item {
	letter-spacing: .39em;
	margin-left: 0;
}
.privacy-check .wpcf7-list-item > label {
	display: flex;
	align-items: center;
	gap: .5em;
}
.privacy-check .wpcf7-list-item input[type="checkbox"] {
	width: 1.5em;
    height: 1.5em;
}
.submit_box {
	display: inline-block;
	background-color: var(--main-color);
	text-align: center;
	min-width: 357px;
	padding: .75rem 1rem;
	border: 1px solid var(--main-color);
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	cursor: pointer;
}
.page_contact_container:has(.wpcf7-submit[disabled]) .submit_box {
	user-select: none;
	pointer-events: none;
	opacity: .3;
}
.submit_box + .submit_box {
	margin-top: 1rem;
}
.submit_box:hover {
	color: var(--main-color);
	background-color: #fff;
}
.submit_box p {
	display: inline-block;
	position: relative;
}
.submit_box input {
	color: #fff;
	background-color: transparent !important;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: .11em;
	text-indent: .11em;
	padding: 0;
	border: none !important;
	border-radius: 0;
	cursor: pointer;
}
.submit_box input:hover,
.submit_box:hover input {
	color: var(--main-color) !important;
}
.confirm_area .contact_table td p span.wpcf7-spinner {
	display: none;
}
.confirm_area p {
	text-align: center;
}

/*確認画面と完了画面を非表示*/
.confirm_area,
.thanks_area {
	display: none;
}
.confirm_area .contact_table,
.thanks_area .contact_table {
	margin-top: 2rem;
}
/*デフォルトのサンクスメッセージを非表示*/
.wpcf7-response-output{
	display: none;
}
.confirm_area > p,
.thanks_area > p {
	font-size: 18px;
	margin-bottom: 0;
}
.confirm_area .contact_table td p span {
	display: block;
	background: #fff;
	padding: .86em 1em;
	text-align: left;
	border: 1px solid #5B5B5B;
}
.submit_btn_box {
	text-align: center;
	margin-top: 0.85rem;
}
.privacy-check .wpcf7-list-item-label {
	letter-spacing: .11em;
	text-indent: .11em;
}
.submit_box:has(.back_button) {
	background-color: #696969;
	border: 1px solid #696969;
}
.submit_box:has(.back_button):hover {
	background-color: #fff;
}
.submit_box:has(.back_button):hover input {
	color: #696969 !important;
}
.wpcf7-spinner {
	display: none !important;
}

.grecaptcha-badge {
	display: none;
	bottom: 75px !important;
}
body.page-id-13 .grecaptcha-badge {
	display: block;
}
@media screen and (max-width: 1024px){
	.contact_table {
		margin-top: 2.5rem;
	}
	.contact_table tr th,
	.contact_table tr td {
		display: block;
		width: 100%;
	}
	.contact_table tr {
		padding: 0;
	}
	.contact_table tr th {
		font-size: 16px;
		letter-spacing: .25em;
		padding-top: 0;
		padding-bottom: 0;
	}
	.contact_table tr td {
		padding-top: .5rem;
	}
	input[type=date],
	input[type=email],
	input[type=number],
	input[type=password],
	input[type=tel],
	input[type=text],
	input[type=url],
	select,
	textarea {
		padding: .7em 1em;
	}
	.page_contact_box .wpcf7-form-control-wrap .wpcf7-list-item:first-child {
		margin-left: 0;
	}
	.submit_box {
		display: block;
		min-width: unset;
	}
	.submit_box .wpcf7-submit {
		font-size: 16px;
	}
	.privacy-check .wpcf7-list-item {
		letter-spacing: .3em;
	}
	
	.confirm_area > p,
	.thanks_area > p {
		font-size: 16px;
	}
	.page_contact_container .contact_title {
		font-size: 26px;
		margin-bottom: 1.5rem;
	}
}
@media screen and (max-width: 767px){
	.page_contact_box form {
		width: 100%;
		max-width: unset;
	}
	.page_contact_box form p {
		line-height: 1.8;
	}
	.contact_table {
		width: 100%;
	}
	.page_contact_box .wpcf7-list-item {
		width: 100%;
		margin-left: 0;
	}
	.privacy_policy {
		font-size: 12px;
		letter-spacing: .25em;
	}
	
	.confirm_area > p,
	.thanks_area > p {
		font-size: 12px;
	}
	.page_contact_container .contact_title {
		font-size: 22px;
	}
}



/* -----------------------------------------
 	アニメーション
-----------------------------------------*/
/* フワッと */
.ani_trigger.ani_fadeUp {
	opacity: 0;
}
.ani_fadeUp.active {
	animation: fadeUp .75s ease-in-out 1 normal forwards;
}
.ani_fade.active {
	animation: fade .7s ease-out 1 normal forwards;
}
@keyframes fade {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(150px); }
  to { opacity: 1; transform: translateY(0); }
}






