/*
Theme Name: 株式会社テクノ電設
Template: lightning
Author: 株式会社レクスト
Version: 0.6.1
*/

/*************************************
 * 共通
*************************************/
:root {
	--main-color: #0abbfe;
	--sub-color: #0090c3;
}
html {
	scroll-behavior: smooth;
}
body {
	background-color: #f7f1ee;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	color: #1a1818;
	padding-top: 80px;
}
.site-body {
	min-height: 80vh;
}
.site-body-container,
#breadcrumb .container {
	max-width: 1680px !important;
	width: 90%;
	padding: 0;
}
.vk_outer_container {
	max-width: unset !important;
}
/* .wp-block-group__inner-container {
	max-width: unset !important;
} */
.main_content .vk_outer_container,
.site-footer-content > .row {
	max-width: 1518px !important;
	width: calc(100% - 150px);
	margin-right: 0 !important;
	margin-left: auto;
}
.sub_content .vk_outer_container {
	max-width: 1622px !important;
	width: calc(100% - 150px);
	margin-right: 0 !important;
	margin-left: auto;
}
#page_top,
.single-post .breadcrumb,
.single-post .entry-footer {
	display: none !important;
}
.ytp-chrome-top.ytp-show-cards-title {
	display: none;
}
.youtube {
	aspect-ratio: 1 / .563;
}
.is-layout-constrained>:where(:not(.alignfull,.alignwide)),
.wp-block-image:where(:not(.alignfull,.alignwide)) {
	max-width: unset;
}
.grecaptcha-badge {
	display: none !important;
}
body:has(.contact_content) .grecaptcha-badge {
	display: block !important;
}

@media screen and (max-width: 1024px) {
	body {
		padding-top: 0;
	}
	.site-body {
		min-height: auto;
	}
	.sub_content .vk_outer_container {
		width: 100%;
	}
}

/*************************************
 * 準備中
*************************************/
.soon_content {
	display: flex;
	justify-content: center;
	align-items: center;
	height: calc(100vh - 100px);
}
.soon_content > div:has(.vk_outer_container) {
	width: 100%;
}
.soon_box {
	max-width: 1000px;
	background-color: #fff;
	padding: 2rem 1rem;
	margin: 0 auto;
}



/*************************************
 * ヘッダー
*************************************/
.site-header {
/* 	position: relative; */
	position: fixed;
	top: 0;
	left: 0;
	background-color: var(--sub-color);
}
.site-header-container {
	max-width: 98%;
	padding-left: 12.5rem;
}
.site-header-logo {
	padding-top: 1.5rem;
    padding-bottom: 1.5rem;
	margin-bottom: 0;
}
.site-header-logo a {
	font-size: 36px;
	font-weight: 500;
	color: #fff;
}
.site-header-container .global-nav li:not(.header_btn) {
	display: none;
}
.site-header-container .global-nav li::before {
	display: none;
}
.site-header-container .global-nav li a {
	color: #fff;
	padding: 15px 3em;
}
.site-header-container .global-nav li a strong {
	font-weight: 400 !important;
	font-size: 16px;
}
.site-header-container .global-nav li a .global-nav-description {
	font-size: 20px;
	font-weight: 900;
	line-height: 1.2;
	opacity: 1;
}
.header_side_menu {
	position: absolute;
	top: 23px;
    left: 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: var(--main-color);
	padding: 1.8rem 1.5rem;
	gap: 2rem;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.header_side_menu::before {
	content: '';
	width: 20px;
	height: 59px;
	background-color: #00638b;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	position: absolute;
	top: 0;
	right: -20px;
}
.side_logo {
	width: 80px;
}
.header_side_menu .global-nav {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-right: auto;
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
}
.header_side_menu .global-nav ul {
	gap: 0.5rem;
}
.header_side_menu .global-nav ul .sub-menu,
.header_side_menu .global-nav ul li::after {
	display: none;
}
.header_side_menu .global-nav li::before {
	display: none;
}
.header_side_menu .global-nav a strong {
	color: #fff;
	font-size: 20px;
	font-weight: 900;
}
.header_side_menu .global-nav a .global-nav-description {
	display: none;
}
.header_side_menu .global-nav .news_btn {
	display: none;
}
.vk-mobile-nav-menu-btn {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: none;
	background-color: #f7f1ee;
	box-shadow: 0 3px 6px rgba(0,0,0,0.6);
}
.vk-mobile-nav-menu-btn.menu-open {
	background-color: #f7f1ee;
	border: none;
}
body::before {
	content: '';
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.6);
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s;
	z-index: 1001;
}
body:has(.menu-open)::before {
	opacity: 1;
	pointer-events: auto;
}
.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in {
	left: calc(100% - 500px);
}
.vk-mobile-nav {
	background-color: var(--sub-color);
	padding-top: 4rem;
	max-width: 500px;
}
.vk-mobile-nav nav>ul {
	border-top: 1px solid #fff;
}
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
	border-bottom: 1px solid #fff;
}
.vk-mobile-nav nav ul li a {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.04em;
}
.vk-menu-acc .acc-btn {
	border: none;
	background: var(--vk-menu-acc-icon-open-white-bg-src) center 50% no-repeat;
}
.vk-menu-acc .acc-btn-close {
	background: var(--vk-menu-acc-icon-close-white-bg-src) center 50% no-repeat;
}

@media screen and (max-width: 1200px) {
	.site-header-container .global-nav li a {
		padding: 19px 2em;
	}
	.header_side_menu {
		padding: 1rem;
	}
	.header_side_menu::before {
		height: 60px;
	}
}
@media screen and (max-width: 1024px) {
	.site-header {
		position: relative;
	}
	.site-header-container {
		padding-left: 15px;
	}
	.site-header-logo {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.site-header-logo a {
		font-size: 28px;
	}
	.header_side_menu,
	.site-header .global-nav {
		display: none !important;
	}
	.vk-mobile-nav-menu-btn,
	.vk-mobile-nav {
		display: block !important;
	}
}
@media screen and (max-width: 767px) {
	.site-header-logo {
		padding-top: .5rem;
		padding-bottom: .5rem;
	}
	.site-header-logo a {
		font-size: 22px;
	}
	.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in {
		left: 20%;
	}
	.vk-mobile-nav {
		max-width: 80%;
	}
	.vk-mobile-nav nav ul li a {
		font-size: 14px;
	}
}

/*************************************
 * フッター
*************************************/
.site-footer {
	border-top: none;
}
.site-footer-content {
	max-width: 1720px;
	padding-top: 4.6rem;
}
.site-footer .widget {
	margin-bottom: 0;
}
.footer_items {
	justify-content: space-between;
	margin-bottom: 0;
}
aside + aside {
	margin-top: 3.8rem;
}
.footer_logo {
/* 	max-width: 241px; */
	max-width: 200px;
	margin-bottom: 2.4rem;
}
.footer_company_name {
	font-size: 32px;
}
.footer_company_addr {
	font-size: 20px;
    line-height: 1.3;
}
.footer_items .widget_nav_menu:first-child .menu {
	display: flex;
/* 	justify-content: space-between; */
	flex-wrap: wrap;
	gap: 68px;
	margin-top: 10px;
}
.footer_items .widget_nav_menu:first-child .header_btn {
	display: none;
}
.footer_items .widget_nav_menu:first-child > div > .menu > li > a {
	position: relative;
	padding: 10px 0;
	font-size: 20px;
	font-weight: bold;
}
.footer_items .widget_nav_menu:first-child > div > .menu > li > a::before {
	content: '';
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 99999px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.footer_items .widget_nav_menu:first-child .sub-menu {
	display: flex;
	flex-direction: column;
	margin-top: 5px;
}
.footer_items .widget_nav_menu:first-child .sub-menu a {
/* 	padding: 10px 0;
	font-size: 24px; */
	padding: 5px 0;
    font-size: 18px;
}
.footer_items .widget_nav_menu:first-child a {
	border: none;
}
.footer_items .widget_nav_menu:last-child .menu {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 68px;
}
.footer_items .widget_nav_menu + .widget_nav_menu {
	margin-top: 4rem;
}
.footer_items .widget_nav_menu:last-child .menu a {
	padding: 0;
	font-size: 20px;
	border-bottom: 2px solid #fff;
	min-width: 120px;
}
.footer_phone_title {
	font-size: 22px;
	margin-bottom: -12px !important;
}
.footer_phone_btn a {
	position: relative;
    font-size: 50px;
    font-weight: bold;
    color: #fff !important;
    padding-left: 45px !important;
}
.footer_phone_btn a::before {
	content: '';
	width: 35px;
	height: 42px;
	background: url('../../../wp-content/uploads/2025/04/footer_phone.png') center / contain no-repeat;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.footer_contact_btn a {
	max-width: 585px;
	font-size: 32px !important;
	font-weight: bold;
	color: #fff !important;
	background-color: transparent !important;
	border: 3px solid #fff !important;
	padding: .66em 1.5rem !important;
}
.footer_contact_btn .vk_button_link_txt {
	position: relative;
	padding-left: 55px;
}
.footer_contact_btn .vk_button_link_txt::before {
	content: '';
	width: 50px;
    height: 35px;
	background: url('../../../wp-content/uploads/2025/04/footer_mail.png') center / contain no-repeat;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.footer_items:has(.footer_contact_btn) {
	margin-bottom: 2.4rem;
}
.site-footer-copyright {
	max-width: 100% !important;
	background-color: var(--sub-color);
	padding: .6rem 1rem .58rem;
}
.site-footer-copyright p {
	font-size: 20px;
}

@media screen and (max-width: 1300px) {
	.footer_items .widget_nav_menu:first-child .menu,
	.footer_items .widget_nav_menu:last-child .menu {
		gap: 40px;
	}
}
@media screen and (max-width: 1200px) {
	.site-footer .footer_items {
		flex-wrap: wrap !important;
	}
	.footer_items > .wp-block-column {
		flex-basis: 100% !important;
	}
	.footer_items .widget_nav_menu:first-child .menu {
		justify-content: flex-start;
		gap: 15px;
	}
	.footer_items .widget_nav_menu:last-child .menu {
		gap: 15px;
	}
}
@media screen and (max-width: 1100px) {
	.footer_logo {
		max-width: 150px;
		margin-bottom: 1rem;
	}
	.footer_company_name {
		font-size: 24px;
	}
	.footer_company_addr,
	.footer_items .widget_nav_menu:last-child .menu a {
		font-size: 20px;
	}
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a {
		font-size: 20px;
	}
/* 	.footer_items .widget_nav_menu:last-child .menu {
		gap: 57px;
	} */
	.footer_items .widget_nav_menu + .widget_nav_menu {
		margin-top: 1rem;
	}
}
@media screen and (max-width: 1024px) {
	.site-footer .footer_items {
		flex-wrap: wrap !important;
	}
	.footer_items > .wp-block-column {
		flex-basis: 100% !important;
	}
	.footer_items .widget_nav_menu:first-child .menu {
		justify-content: flex-start;
		gap: 20px;
	}
	.footer_company_addr,
	.footer_items .widget_nav_menu:last-child .menu a,
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a,
	.footer_items .widget_nav_menu:first-child .sub-menu a {
		font-size: 16px;
	}
	.footer_items .widget_nav_menu:first-child .sub-menu {
		margin-top: 10px;
	}
	.footer_items .widget_nav_menu:first-child .sub-menu a {
		padding: 3px 0;
	}
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a {
		padding: 10px 0;
	}
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a::before {
		height: 3px;
	}
	.footer_logo {
		max-width: 100px;
	}
	.footer_items .widget_nav_menu:last-child .menu {
		gap: 20px;
	}
	.footer_items .widget_nav_menu:last-child .menu a {
		min-width: 100px;
	}
	.footer_phone_title {
		font-size: 20px;
	}
	.footer_phone_btn a {
		font-size: 40px;
		padding-left: 33px !important;
	}
	.footer_phone_btn a::before {
		width: 25px;
    	height: 32px;
	}
	.footer_contact_btn a {
		max-width: 450px !important;
		font-size: 24px !important;
	}
	.footer_contact_btn .vk_button_link_txt {
		padding-left: 48px;
	}
	.footer_contact_btn .vk_button_link_txt::before {
		width: 40px;
    	height: 28px;
	}
	.site-footer-copyright {
		padding: .5rem;
	}
	.site-footer-copyright p {
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	.site-footer-content {
		padding-top: 2.5rem;
	}
	.site-footer-content > .row > .col-lg-12 {
		padding: 0;
	}
	.site-footer .footer_items {
		gap: .5rem;
	}
	.footer_logo {
		max-width: 80px;
		margin-bottom: .5rem;
	}
	.footer_company_name {
		font-size: 18px;
	}
	.footer_company_addr,
	.footer_items .widget_nav_menu:last-child .menu a,
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a,
	.footer_items .widget_nav_menu:first-child .sub-menu a {
		font-size: 14px;
	}
	.footer_items .widget_nav_menu:first-child .menu {
		flex-direction: column;
		align-items: flex-start;
		margin-top: 0;
		gap: 5px;
	}
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a::before {
		height: 2px;
	}
	.footer_items .widget_nav_menu:first-child > div > .menu > li > a {
		padding: 6px 0;
	}
	.footer_items .widget_nav_menu:first-child .sub-menu {
		margin-top: 5px;
	}
	.footer_items .widget_nav_menu:last-child .menu a {
		min-width: 80px;
		text-align: center;
	}
	.footer_phone_title {
		font-size: 15px;
		margin-bottom: -8px !important;
	}
	.footer_phone_btn a {
		font-size: 32px;
		padding-left: 28px !important;
	}
	.footer_phone_btn a::before {
        width: 20px;
        height: 27px;
    }
	.footer_contact_btn a {
		max-width: 260px !important;
		font-size: 16px !important;
		border-width: 2px !important;
	}
	.footer_contact_btn .vk_button_link_txt {
        padding-left: 35px;
    }
	.footer_contact_btn .vk_button_link_txt::before {
        width: 30px;
        height: 21px;
    }
	aside + aside {
		margin-top: 2rem;
	}
}


/*************************************
 * トップページ
*************************************/
/* FV */
.fv_content {
	padding-top: 9.1vw;
	z-index: 1;
}
.fv_content::before {
	content: '';
	width: 50.2vw;
	height: 40.36vw;
	background: url('../../../wp-content/uploads/2025/04/fv_bg.webp') center / contain no-repeat;
	position: absolute;
	top: 5.5vw;
	right: 0;
}
.fv_content .vk_outer_container {
	max-width: 89.2% !important;
    margin-right: 0 !important;
}
.fv_content figure {
	margin-bottom: 0;
}
.fv_content img {
	width: 100%;
}
.fv_title {
	max-width: 51.093vw;
}
.fv_text {
	max-width: 43.177vw;
    margin-top: 2vw;
    margin-bottom: 9.2vw !important;
    margin-left: 1vw;
}
.fv_hero_text {
	max-width: 71.302vw;
}

@media screen and (max-width: 1024px) {
	.fv_content .vk_outer_container {
		max-width: unset !important;
	}
}
@media screen and (max-width: 767px) {
	.fv_content::before {
		width: 60.2vw;
    	height: 48.36vw;
		top: 12.5vw;
	}
	.fv_title {
		max-width: 63vw;
	}
	.fv_text {
		max-width: 70vw;
	}
	.fv_hero_text {
		max-width: 80vw;
	}
}

/* お知らせ */
.news_content {
	padding-top: 0;
	padding-bottom: 0;
	margin-top: -15vw;
	z-index: 0;
	overflow: visible;
}
.news_items {
	justify-content: space-between;
}
/* .news_items > .wp-block-column:first-child {
	flex-basis: 36.5% !important;
	margin-left: calc(50% - 50vw);
} */
.news_items > .wp-block-column:first-child {
	flex-basis: 61.5% !important;
    margin-left: calc(25% - 50vw);
}
.news_items > .wp-block-column:last-child {
	flex-basis: 58.7% !important;
	padding-top: 18.3vw;
}
.news_col {
	margin-bottom: 1.9rem;
}
.news_title_box {
	color: #197eb9;
}
.news_sub_title {
	font-size: 24px;
	letter-spacing: 0.02em;
	line-height: 1.2;
	margin-bottom: -0.7rem !important;
}
.news_title {
	font-size: 68px;
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.2;
}
.news_post_btn a {
	width: 225px;
	font-size: 30px !important;
	font-weight: 500;
}
.vk_posts-postType-news {
	position: relative;
	margin: 0;
	padding-left: 3rem;
}
.vk_posts-postType-news::before {
	content: '';
	width: 20px;
	height: 100%;
	background-color: #1a1818;
	position: absolute;
	top: 0;
	left: 0;
}
.vk_post-postType-news {
	margin: 1.5rem 0;
	border-bottom: none;
	padding: 0;
}
.vk_post-postType-news .postListText_date,
.vk_post-postType-news .postListText_title {
	font-size: 20px;
	letter-spacing: 0.02em;
}
.vk_post-postType-news .postListText_date {
	margin-right: .4rem;
}
.vk_post-postType-news .postListText_title a {
	text-decoration: none;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}
.news_asset {
	pointer-events: none;
	animation: circle 150s linear infinite;
}

@keyframes circle {
	from {
		transform: rotate(0);
	}
	to {
		transform: rotate(360deg);
	}
}
@media screen and (max-width: 1400px) {
	.news_items > .wp-block-column:last-child {
		flex: 67.7% !important;
	}
}
@media screen and (max-width: 1024px) {
	.news_content {
		margin-top: 0;
		padding-bottom: 3rem;
	}
	.news_content .news_items {
		flex-wrap: wrap !important;
	}
	.news_items > .wp-block-column:first-child,
	.news_items > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.news_items > .wp-block-column:last-child {
		padding-top: 28vw;
	}
	.news_asset {
		position: absolute;
        top: -11vw;
        left: -22vw;
        width: 43vw;
		animation: circle 90s linear infinite;
	}
	.news_sub_title {
		font-size: 20px;
	}
	.news_title {
		font-size: 50px;
	}
	.news_col {
		align-items: center !important;
	}
	.news_post_btn a {
		width: 200px;
		font-size: 20px !important;
	}
	.vk_posts-postType-news {
		padding-left: 2rem;
	}
	.vk_posts-postType-news::before {
		width: 10px;
	}
	.vk_post-postType-news {
		margin: .8rem 0;
	}
	.vk_post-postType-news .postListText_date,
	.vk_post-postType-news .postListText_title {
		font-size: 18px;
	}
	.vk_post-postType-news .postListText_title a {
		-webkit-line-clamp: 2;
	}
}
@media screen and (max-width: 767px) {
	.news_asset {
		top: -30vw;
		width: 55vw;
	}
	.news_items > .wp-block-column:last-child {
		padding-top: 19vw;
	}
	.vk_posts-postType-news {
		padding-left: 1.5rem;
	}
	.vk_posts-postType-news::before {
		width: 8px;
	}
	.vk_post-postType-news {
		margin: .5rem 0;
	}
	.vk_post-postType-news .postListText_date,
	.vk_post-postType-news .postListText_title {
		font-size: 14px;
	}
	.vk_post-postType-news .postListText_title {
		padding-top: 0;
	}
	.news_col {
		display: contents !important;
	}
	.news_items > .wp-block-column:last-child {
		display: flex;
		flex-direction: column;
	}
	.news_post_btn {
		order: 1;
		margin-top: 2rem !important;
	}
	.news_post_btn a {
		display: block;
		width: 150px;
		font-size: 16px !important;
		margin: 0 auto;
	}
	.news_title_box {
		margin-bottom: 1.5rem !important;
	}
	.news_title_box > .wp-block-group__inner-container {
		max-width: unset !important;
	}
	.news_sub_title {
		font-size: 15px;
		margin-bottom: -0.3rem !important;
		text-align: center;
	}
	.news_title {
		font-size: 32px;
		text-align: center !important;
	}
}

/* 事業紹介 */
.top_work_content {
	padding-top: 0;
}
.top_work_title_box figure {
	padding-top: 0.5rem;
    margin-right: 3.3rem;
	max-width: 30%;
}
.tate_title {
	font-size: clamp(5.625rem, 1.339rem + 6.7vw, 9.375rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1;
	color: #197eb9;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.top_work_item {
	gap: 0;
	margin-top: -12.9rem;
	align-items: flex-start !important;
}
.top_work_item > .wp-block-column {
	cursor: pointer;
}
.top_work_item > .wp-block-column:hover .top_work_img img {
	transform: scale(1.1);
}
.top_work_item > .wp-block-column:nth-child(2) {
	margin-top: 8.4rem;
}
.top_work_item > .wp-block-column:nth-child(3) {
	margin-top: 16.5rem;
}
.top_work_item_title {
	position: relative;
	padding-left: clamp(1rem, -0.143rem + 1.79vw, 2rem);
    margin-bottom: -1.8rem;
	z-index: 2;
	gap: clamp(1rem, 0.214rem + 1.23vw, 1.688rem);
}
.top_work_title {
	font-size: clamp(1.375rem, 0.375rem + 1.56vw, 2.25rem);
	font-weight: 500;
	letter-spacing: 0.02em;
}
.top_work_img {
	position: relative;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	overflow: hidden;
}
.top_work_img img {
	transition: all .3s;
}
.top_work_img::before,
.top_work_img::after {
	content: '';
	width: 100%;
	height: 5%;
	background-color: var(--main-color);
	position: absolute;
	left: 0;
	z-index: 1;
}
.top_work_img::before {
	top: 0;
}
.top_work_img::after {
	bottom: 0;
}
.top_work_num.wp-block-image img:not([style*=object-fit]) {
	height: clamp(3.125rem, -3.375rem + 10.16vw, 8.813rem) !important;
    width: auto !important;
    object-fit: contain;
}

@media screen and (max-width: 1800px) {
	.top_work_content {
		margin-top: 0;
	}
}
@media screen and (max-width: 1300px) {
	.top_work_item_title {
		margin-bottom: -0.8rem;
	}
}
@media screen and (max-width: 1024px) {
	.top_work_content {
		margin-top: 0;
	}
	.top_work_title_box figure {
		max-width: 35%;
	}
	.tate_title {
		font-size: 80px;
	}
	.top_work_item > .wp-block-column:nth-child(2) {
		margin-top: 4rem;
	}
	.top_work_item > .wp-block-column:nth-child(3) {
		margin-top: 8rem;
	}
	.top_work_item {
		margin-top: -5rem;
		margin-bottom: 0;
	}
	.top_work_item_title {
		padding-left: .5rem;
		margin-bottom: -1rem;
		gap: .8rem;
	}
	.top_work_num.wp-block-image img:not([style*=object-fit]) {
		height: 45px !important;
        object-fit: contain !important;
        width: auto;
	}
	.top_work_title {
		font-size: 22px;
	}
}
@media screen and (max-width: 767px) {
	.top_work_title_box figure {
		max-width: 150px;
		margin-right: 1rem;
	}
	.tate_title {
		font-size: 45px;
	}
	.top_work_content .top_work_item {
		max-width: 500px;
		flex-wrap: wrap !important;
		gap: 1.5rem 5%;
		justify-content: center;
		margin: 1rem auto 0;
	}
	.top_work_item > .wp-block-column:nth-child(2) {
		margin-top: 0;
	}
	.top_work_item > .wp-block-column:nth-child(3) {
		margin-top: 0;
	}
	.top_work_item > .wp-block-column {
/* 		flex-basis: 47.5% !important; */
		flex-basis: 100% !important;
		flex-grow: 0 !important;
	}
	.top_work_item_title {
		margin-bottom: -0.5rem;
        gap: 1rem;
	}
	.top_work_num.wp-block-image img:not([style*=object-fit]) {
/* 		height: 25px !important; */
		height: 40px !important;
	}
	.top_work_title {
/* 		font-size: 16px; */
		font-size: 22px;
	}
}

/* 会社案内 */
.top_company_content {
	padding-top: 2.8rem;
	padding-bottom: 13.6rem;
}
.top_company_content::before {
	content: '';
	width: 42.656vw;
	height: 13.802vw;
	background: url('../../../wp-content/uploads/2025/04/top_company_bg.webp') center / contain no-repeat;
	position: absolute;
	top: 17.9rem;
	right: 0;
}
.top_company_content .top_work_title_box figure {
	padding-top: 3.6rem;
    margin-right: 0;
    margin-left: 2.4rem;
}
.top_company_items {
	margin-top: 5.1rem;
}
.top_company_items > .row {
	margin: 0;
	gap: 1.06%;
}
.top_company_items .vk_gridColumn_item {
	position: relative;
	padding: 0;
	flex: 0 0 24.2%;
	max-width: unset;
}
.top_company_img {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	overflow: hidden;
}
.top_company_img img {
	transition: all .3s;
}
.top_company_img:hover img {
	transform: scale(1.1);
}
.top_company_title {
	position: absolute;
	top: -1.4rem;
	left: 0;
	max-width: 27%;
	pointer-events: none;
}
.top_company_title::before {
	content: '';
	width: 10px;
	height: 22px;
	background-color: var(--sub-color);
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	position: absolute;
	top: 0;
	right: -10px;
}

@media screen and (max-width: 1024px) {
	.top_company_content {
		padding-bottom: 4rem;
	}
	.top_company_content .top_work_title_box figure {
		padding-top: 1rem;
		margin-left: 1.5rem;
	}
	.top_company_items {
		max-width: 600px;
		margin: 5rem auto 0;
	}
	.top_company_items > .row {
		gap: 3rem 5%;
	}
	.top_company_items .vk_gridColumn_item {
		flex: 0 0 47.5%;
	}
}
@media screen and (max-width: 767px) {
	.top_company_content::before {
		width: 52.656vw;
		height: 17.802vw;
		top: 13.9rem;
	}
	.top_company_content .top_work_title_box figure {
		padding-top: .5rem;
		margin-left: .5rem;
	}
	.top_company_items > .row {
		margin-top: 23vw;
	}
	.top_company_title {
		top: -1rem;
		max-width: 20%;
	}
	.top_company_title::before {
		width: 5px;
		height: 14px;
		right: -5px;
	}
}

/* 採用情報 */
.top_recruit_content {
	padding-top: 7.8rem;
	padding-bottom: 8.2rem;
	overflow: visible;
}
.top_recruit_title {
/* 	font-size: clamp(4.063rem, -2.009rem + 9.49vw, 9.375rem); */
	font-size: clamp(4.063rem, -1.295rem + 8.37vw, 8.75rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	color: #197eb9;
	margin-bottom: 0;
}
.top_recruit_title_box > .wp-block-column:last-child {
	margin-right: calc(50% - 50vw);
	flex-grow: 1 !important;
}
.top_recruit_img {
	margin-top: -13.5vw;
	width: 90%;
}
.top_recruit_box {
	position: relative;
	justify-content: space-between;
	gap: 0;
	margin-top: -7.3rem;
    padding: 5.1rem 3.7rem;
}
.top_recruit_box::before,
.top_recruit_box::after {
	content: '';
	width: 395px;
	height: 395px;
	position: absolute;
	pointer-events: none;
}
.top_recruit_box::before {
	background: url('../../../wp-content/uploads/2025/04/top_recruit_border_left.png') center / contain no-repeat;
	top: 0;
	left: 0;
}
.top_recruit_box::after {
	background: url('../../../wp-content/uploads/2025/04/top_recruit_border-_right.png') center / contain no-repeat;
	bottom: 0;
	right: 0;
}
.top_recruit_hero {
/* 	font-size: 72px; */
	font-size: clamp(1.75rem, -0.893rem + 4.13vw, 4.063rem);
	letter-spacing: 0.02em;
	line-height: 1.25;
	font-weight: 900;
	padding-top: 1.4rem;
    margin-bottom: 2.8rem;
}
.top_recruit_text {
	font-size: clamp(1.125rem, 0.696rem + 0.67vw, 1.5rem);
	letter-spacing: 0.02em;
}
.top_recruit_btn {
	margin-top: 3.1rem;
}
.top_recruit_btn a {
	font-size: 30px !important;
	font-weight: 500;
	padding: 1rem .5rem !important;
}

@media screen and (max-width: 1300px) {
	.top_recruit_box {
		margin-top: -4rem;
	}
}
@media screen and (max-width: 1024px) {
	.top_recruit_content {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	.top_recruit_title {
		font-size: 65px;
	}
	.top_recruit_box {
		margin-top: 0;
		padding: 4rem 1.5rem;
	}
	.top_recruit_box::before,
	.top_recruit_box::after {
		width: 20vw;
		height: 20vw;
	}
	.top_recruit_hero {
		font-size: 28px;
		padding-top: 0;
		margin-bottom: 1rem;
	}
	.top_recruit_text {
		font-size: 16px;
	}
	.top_recruit_btn {
		margin-top: 1.5rem;
	}
	.top_recruit_btn a {
		font-size: 20px !important;
	}
}
@media screen and (max-width: 767px) {
	.top_recruit_content .top_recruit_title_box,
	.top_recruit_content .top_recruit_box {
		flex-wrap: wrap !important;
	}
	.top_recruit_title_box > .wp-block-column,
	.top_recruit_box > .wp-block-column {
		flex-basis: 100% !important;
	}
	.top_recruit_title_box {
		margin-bottom: 0;
	}
	.top_recruit_img {
		width: 50%;
		position: absolute;
		top: 0;
		right: 0;
	}
	.top_recruit_title {
		font-size: 32px;
	}
	.top_recruit_box {
		padding: 1.5rem 1rem;
	}
	.top_recruit_box figure {
		max-width: 450px;
		width: 80%;
		margin: 0 auto 1rem;
	}
	.top_recruit_hero {
		font-size: 20px;
	}
	.top_recruit_text {
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0;
	}
	.top_recruit_btn a {
		font-size: 16px !important;
		padding: .8rem .5rem !important;
	}
}


/*************************************
 * お問い合わせ
*************************************/
.contact_content {
	padding-top: 8rem;
	padding-bottom: 16.2rem;
}
.contact_items {
	justify-content: space-between;
/* 	gap: 9%; */
}
.contact_items > .wp-block-column:first-child {
	flex-basis: 180px !important;
}
.contact_items > .wp-block-column:last-child {
	flex-basis: calc(100% - 9% - 180px) !important;
}
.contact_title {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: var(--sub-color);
	font-size: clamp(4.063rem, -2.366rem + 10.04vw, 9.688rem);
    margin: 0;
    white-space: nowrap;
    line-height: 1;
}
.contact_text_box {
	position: relative;
	margin-top: 1.1rem;
}
.contact_text_box::before {
	content: '';
	width: 100%;
/* 	height: 65%; */
	height: clamp(7.688rem, -2.098rem + 15.29vw, 16.25rem);
	background: url('../../../wp-content/uploads/2025/04/contact_text_bg.png') center / contain no-repeat;
	position: absolute;
	top: 10%;
	left: 0;
}
.contact_text_box::after {
	content: '';
/* 	width: 57px;
	height: 397px; */
	width: clamp(1.875rem, -0.054rem + 3.01vw, 3.563rem);
	height: clamp(13.125rem, -0.232rem + 20.87vw, 24.813rem);
	background: url('../../../wp-content/uploads/2025/04/contact_pen.png') center / contain no-repeat;
	position: absolute;
	top: 0;
/* 	right: 3rem; */
	right: clamp(1rem, -0.143rem + 1.79vw, 2rem);
}
.contact_text_box > .wp-block-group__inner-container {
	max-width: 980px !important;
	width: 90%;
	padding-right: 2rem;
	margin: 0 auto;
}
.contact_text {
	font-size: clamp(1rem, 0.429rem + 0.89vw, 1.5rem);
	line-height: 1.75;
/*     padding-top: 9.2rem; */
	padding-top: clamp(5.188rem, 0.616rem + 7.14vw, 9.188rem);
}
.contact_alart_text {
	position: relative;
	font-size: 24px;
    line-height: 1.75;
    padding-left: 4rem;
    margin-top: 1.3rem;
    display: inline-block;
}
.contact_alart_text::before {
	content: '';
	width: 100%;
	height: 5px;
	background-color: #000;
	border-radius: 99999px;
	position: absolute;
	bottom: -4px;
	left: 0;
}
.contact_alart_text::after {
	content: '';
	width: 50px;
	height: 32.5px;
	background: url('../../../wp-content/uploads/2025/04/alart_icon.png') center / contain no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.contact_table_box {
	max-width: 1038px;
	margin-top: clamp(4rem, -10.857rem + 23.21vw, 17rem);
}
.contact_check_box {
	margin-bottom: 4.7rem;
}
.contact_check_box h3 {
	border-bottom: none;
	font-size: 37px;
	padding-bottom: 0;
	margin-bottom: 2.6rem;
}
.contact_check_box h3::after {
	display: none;
}
.contact_check .wpcf7-radio .wpcf7-list-item {
	margin-left: 7px;
}
.contact_check p {
	margin-bottom: 0;
}
.contact_check .wpcf7-radio .last.wpcf7-list-item {
	margin-left: 9.7rem;
}
.contact_check .wpcf7-radio label {
	display: flex;
	align-items: center;
}
.contact_check .wpcf7-radio input {
	width: 34px;
	height: 34px;
	margin: 0;
}
.contact_check .wpcf7-radio .wpcf7-list-item-label {
	font-size: 24px;
	margin-left: 11px;
}
.must_text {
	font-size: 18px;
	color: var(--sub-color);
	text-align: right;
	margin-bottom: 1rem;
}
.contact_table,
.contact_table td {
	border: none;
}
.contact_table tr {
	display: flex;
}
.contact_table tr + tr {
	margin-top: 3.1rem;
}
.contact_table td {
	width: calc(100% - 298px);
	font-size: 24px;
	padding: 0;
}
.contact_table td:first-child {
	width: 298px;
	text-align: right;
	padding-top: 14px;
	padding-right: 54px;
}
.contact_left > p {
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	line-height: 1.2;
}
.contact_right > p {
	margin-bottom: 0;
}
.contact_left span {
	font-size: 20px;
    line-height: 1.2;
    color: var(--sub-color);
}
.contact_table input[type="text"],
.contact_table input[type="email"],
.contact_table textarea {
	height: 62px;
	border: 1px solid #000;
	border-radius: 0;
}
.contact_table textarea {
	resize: none;
	height: 350px;
}
.wpcf7-not-valid-tip {
	font-size: 14px;
    line-height: 1.2;
}
.confirm_btn_box {
	font-size: 24px;
	margin-top: 3.4rem;
}
.confirm_btn_box p {
	line-height: 1.5;
}
.confirm_btn_box > p:has(.wpcf7-form-control-wrap) {
	text-align: center;
	margin-top: 2rem;
}
.confirm_btn_box input[type="checkbox"] {
	transform: scale(2.4);
	margin-right: 1rem;
}
.confirm_btn_box label:has(input[type="checkbox"]) {
	display: flex;
    align-items: center;
	gap: 10px;
}
.confirm_btn {
	margin-top: 7.8rem;
}
.confirm_btn input[type="submit"] {
	width: 100%;
	color: #fff;
	background-color: var(--main-color) !important;
	font-size: 31px;
	border: none;
	border-radius: 0;
}

@media screen and (max-width: 1500px) {
	.contact_items > .wp-block-column:last-child {
		flex-basis: calc(100% - clamp(5.625rem, -0.804rem + 10.04vw, 11.25rem)) !important;
	}
	.contact_items > .wp-block-column:first-child {
		flex-basis: clamp(5.625rem, -0.804rem + 10.04vw, 11.25rem) !important;
	}
	.contact_text_box::before {
		height: clamp(8.938rem, -6.794rem + 24.58vw, 16.25rem);
	}
	.contact_text_box::after {
		top: clamp(0.438rem, -1.445rem + 2.94vw, 1.313rem);
	}
}
@media screen and (max-width: 1024px) {
	.contact_content {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	.main_content .vk_outer_container,
	.site-footer-content > .row {
		width: 100%;
	}
	.contact_table_box {
		margin-top: 4rem;
	}
	.contact_text_box::after {
		top: 10px;
	}
	.contact_text_box::before {
		height: clamp(8.313rem, 1.764rem + 14.24vw, 10.875rem);
	}
	.contact_alart_text {
		font-size: 16px;
		padding-left: 35px;
	}
	.contact_alart_text::after {
		width: 30px;
    	height: 21.5px;
		top: 3px;
	}
	.contact_alart_text::before {
		height: 3px;
	}
	.contact_check_box {
		margin-bottom: 1.5rem;
	}
	.contact_check_box h3 {
		font-size: 20px;
		margin-bottom: .5rem;
	}
	.contact_check .wpcf7-radio .wpcf7-list-item-label {
		font-size: 16px;
		margin-left: 5px;
	}
	.contact_check .wpcf7-radio input {
		width: 15px;
		height: 15px;
	}
	.contact_check .wpcf7-radio .last.wpcf7-list-item {
		margin-left: 2rem;
	}
	.must_text {
		font-size: 14px;
	}
	.contact_left > p {
		margin-bottom: 0;
	}
	.contact_table tr + tr {
		margin-top: 1rem;
	}
	.contact_table td {
		width: calc(100% - 200px);
		font-size: 16px;
	}
	.contact_table td:first-child {
		width: 200px;
		padding-right: 20px;
		padding-top: 8px;
	}
	.contact_table input[type="text"],
	.contact_table input[type="email"],
	.contact_table textarea {
		height: 40px;
	}
	.contact_table textarea {
		height: 200px;
	}
	.confirm_btn_box {
		font-size: 14px;
		margin-top: 1rem;
	}
	.confirm_btn_box p {
		margin-bottom: .5rem;
	}
	.confirm_btn_box label:has(input[type="checkbox"]) {
		gap: 10px;
	}
	.confirm_btn_box > p:has(.wpcf7-form-control-wrap) {
		margin: 0;
	}
	.confirm_btn_box input[type="checkbox"] {
		transform: scale(1.2);
		margin-right: 0;
	}
	.confirm_btn {
		margin-top: 2rem;
	}
	.confirm_btn input[type="submit"] {
		font-size: 20px;
	}
}
@media screen and (max-width: 767px) {
	.contact_content .contact_items {
		flex-wrap: wrap !important;
	}
	.contact_items > .wp-block-column:first-child,
	.contact_items > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.contact_items > .wp-block-column:last-child {
		margin-top: -3rem;
	}
	.contact_title {
		writing-mode: inherit;
		font-size: 32px;
	}
	.contact_text_box::before {
        height: clamp(5.4rem, -1.139rem + 22.19vw, 11.5rem);
    }
	.contact_text {
		padding-top: clamp(4rem, 2.565rem + 6.12vw, 5.5rem);
		line-height: 1.6;
		margin-bottom: 0;
	}
	.contact_alart_text {
		font-size: 13px;
		padding-left: 25px;
	}
	.contact_alart_text::after {
		width: 20px;
        height: 19.5px;
	}
	.contact_text_box::after {
		top: clamp(-0.25rem, -0.908rem + 2.81vw, 0.438rem);
	}
	.contact_check_box {
		margin-bottom: 1rem;
	}
	.contact_check_box h3 {
		font-size: 17px;
	}
	.contact_check .wpcf7-radio .wpcf7-list-item-label {
		font-size: 1rem;
	}
	.contact_check .wpcf7-radio .last.wpcf7-list-item {
		margin-left: 7px;
	}
	.contact_table tr,
	.contact_table td {
		display: block;
	}
	.contact_table td,
	.contact_table td:first-child {
		width: 100%;
	}
	.contact_table td {
		font-size: 1rem;
	}
	.contact_table td:first-child {
		padding-right: 0;
		padding-top: 0;
		padding-bottom: 5px;
	}
	.contact_left span {
		font-size: 12px;
	}
	.contact_left > p {
		justify-content: flex-start;
	}
	.contact_table input[type="text"],
	.contact_table input[type="email"],
	.contact_table textarea {
		height: 30px;
		padding: .5rem;
	}
	.contact_table textarea {
		height: 150px;
	}
	.wpcf7-not-valid-tip {
		font-size: 12px;
	}
	.must_text {
		margin-bottom: .5rem;
		font-size: 12px;
	}
	.confirm_btn input[type="submit"] {
		font-size: 16px;
	}
}

/*************************************
 * 会社概要
*************************************/
/* ページFV */
.page_fv_content {
	padding-top: 6.6vw;
}
.page_fv_title {
	font-size: clamp(2.5rem, 1.071rem + 2.23vw, 3.75rem);
    line-height: 1.74;
    color: #197eb9;
    letter-spacing: 0.02em;
	position: absolute;
/* 	top: -0.8vw;
    left: 14.3vw; */
	top: -3%;
    left: 17%;
}
.company_fv_content .top_work_title_box figure {
	max-width: unset;
    padding-top: 6.5vw;
    margin-right: 0;
	max-width: 58.7%;
}
.company_fv_content .top_work_title_box img {
	width: 100% !important;
}

@media screen and (max-width: 1300px) {
	.company_fv_content .top_work_title_box figure {
		padding-top: 11.5vw;
		max-width: 53.7%;
	}
}
@media screen and (max-width: 767px) {
	.page_fv_title {
		font-size: 24px;
		line-height: 1.6;
	}
	.company_fv_content .top_work_title_box figure {
        padding-top: 27.5vw;
        max-width: 59.7%;
    }
}

/* 理念 */
.philo_content {
	padding-top: 10.7rem;
}
.philo_items {
	justify-content: space-between;
}
.philo_items > .wp-block-column:first-child {
	flex-basis: 31% !important;
}
.philo_items > .wp-block-column:last-child {
	flex-basis: 60.5% !important;
}
.title01_box {
	position: relative;
	color: #197eb9;
	margin-bottom: clamp(2rem, 0.446rem + 2.43vw, 3.36rem);
}
.title01_box::before {
	content: '';
    width: clamp(8.125rem, 4.911rem + 5.02vw, 10.938rem);
    height: 6px;
    background-color: #1a1818;
    position: absolute;
    top: clamp(3rem, 1.857rem + 1.79vw, 4rem);
    left: -6rem;
    transform: rotate(134deg);
}
.title01_box > .wp-block-group__inner-container {
	max-width: unset !important;
}
.title01 {
	font-size: clamp(5.625rem, -1.518rem + 11.16vw, 11.875rem);
	font-weight: 900;
	letter-spacing: 0.01em;
	line-height: 1.3;
    margin-top: -5rem !important;
}
.sub_title01 {
	font-size: clamp(2.125rem, 1.125rem + 1.56vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	padding-left: 0.4rem;
}
.philo_text {
	font-size: clamp(1.125rem, 0.982rem + 0.22vw, 1.25rem);
    letter-spacing: 0.02em;
    padding-left: .5rem;
    line-height: 1.745;
}

@media screen and (max-width: 1024px) {
	.philo_content {
		padding-top: 6rem;
		padding-bottom: 0;
	}
	.title01_box::before {
		width: 80px;
		top: 32px;
		left: -44px;
	}
	.philo_text {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px) {
	.philo_content .philo_items {
		flex-wrap: wrap !important;
		gap: 0;
	}
	.philo_items > .wp-block-column:first-child,
	.philo_items > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.philo_items > .wp-block-column:has(.philo_img) {
		order: 1;
	}
	.title01_box {
		margin-bottom: 1rem;
	}
	.title01 {
		font-size: 40px;
	}
	.sub_title01 {
		font-size: 20px;
		padding-left: 0;
	}
	.title01_box::before {
        width: 45px;
        height: 3px;
        top: 10px;
        left: -22px;
    }
	.philo_text {
		font-size: 14px;
		padding-left: 0;
	}
	.philo_img {
		max-width: 300px;
		width: 40%;
		margin-left: auto;
	}
}

/* 代表挨拶 */
.greeting_content {
	padding-top: 8.7rem;
}
.greeting_bar_box {
	position: relative;
	width: 100vw;
	margin: auto calc(50% - 50vw - 75px) 9.7rem;
}
.greeting_bar_box > .wp-block-group__inner-container {
	max-width: 100% !important;
}
.greeting_bar_title {
	font-size: clamp(2.5rem, 1.071rem + 2.23vw, 3.75rem);
    font-weight: 900;
    letter-spacing: 0.02em;
    line-height: 1.8;
    position: absolute;
    top: 57.8%;
/*     left: 13.3vw; */
	right: 13.3vw;
    transform: translateY(-50%);
}
.greeting_bar_img {
	margin-bottom: 0;
}
.greeting_content .title01_box {
	margin-bottom: 1.4rem;
}
.greeting_content .sub_title01 {
	margin-top: -2.1rem !important;
    padding-left: 0;
}
.greeting_img {
	margin-bottom: 7rem;
}
.greeting_text {
/* 	column-count: 2;
	column-gap: 2em; */
	font-size: 20px;
    letter-spacing: 0.02em;
/*     line-height: 2.4; */
}
.greeting_name_box {
/* 	margin-top: 4.4rem; */
	margin-top: 3.4rem;
}
.greeting_post {
	font-size: 20px;
    letter-spacing: 0.02em;
}
.greeting_name {
	font-size: 30px;
	letter-spacing: .02em;
	margin-top: -0.2rem;
}

.intaview_box {
	position: relative;
	max-width: 800px;
	margin: 6rem auto 0;
}
.intaview_box::before {
	content: '';
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.3);
/* 	background-color: rgba(10,187,254,.3); */
	position: absolute;
	top: 0;
	left: 0;
}
.intaview_title {
	font-size: 32px;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
/* 	background-color: rgba(0,0,0,0.6); */
	padding: 25px 10px;
	width: 100%;
	margin: 0;
	text-align: center !important;
}
.intaview_banner {
	position: relative;
	border: 5px solid #000;
	max-width: 800px;
	margin: 6rem auto 0;
}
.intaview_banner figure {
	margin-bottom: 0 !important;
}
.intaview_banner::before {
	content: '';
    width: 100%;
    height: calc(100% + 16px);
    background: url(../../../wp-content/uploads/2025/07/date_bg.png) center / cover no-repeat;
    position: absolute;
    top: 6px;
    left: 23px;
    border: 5px solid #000;
    z-index: -1;
	transition: all .4s;
}
.intaview_banner:hover::before {
	top: 0;
	left: 15px;
}

@media screen and (max-width: 1500px) {
	.greeting_content .sub_title01 {
		margin-top: 0 !important;
	}
}
@media screen and (max-width: 1024px) {
	.greeting_content {
		padding-top: 1rem;
	}
	.greeting_bar_box {
		margin: auto calc(50% - 50vw) 6.7rem;
	}
	.greeting_content .philo_items {
		flex-wrap: wrap !important;
	}
	.greeting_content .philo_items > .wp-block-column:first-child,
	.greeting_content .philo_items > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.philo_items > .wp-block-column:has(.greeting_img) {
		order: 1;
	}
	.greeting_text {
		font-size: 16px;
		column-gap: 1em;
		line-height: 2;
	}
	.greeting_name_box {
		margin-top: 1rem;
	}
	.greeting_post {
		font-size: 16px;
	}
	.greeting_name {
		font-size: 24px;
	}
	.greeting_img {
		max-width: 300px;
		margin-top: -4rem;
		margin-bottom: 0;
	}
}
@media screen and (max-width: 767px) {
	.greeting_bar_title {
		font-size: 22px;
		line-height: 1.3;
		top: 54%;
/* 		left: 5.3vw; */
		right: 5.3vw;
	}
	.greeting_text {
		font-size: 14px;
		line-height: 1.6;
		column-count: 1;
		text-align: justify;
	}
	.greeting_post {
		font-size: 14px;
	}
	.greeting_name {
		font-size: 20px;
	}
	.greeting_img {
		max-width: 200px;
		width: 45%;
	}
	.intaview_banner {
		border-width: 2px;
	}
	.intaview_banner::before {
		border-width: 2px;
		height: calc(100% + 5px);
        top: 6px;
        left: 10px;
	}
	.intaview_banner:hover::before {
		top: 0;
		left: 5px;
	}
}

/* ポイント */
.company_point_content {
	padding-top: 1.4rem;
/* 	padding-bottom: clamp(2rem, -2.857rem + 10.71vw, 10rem); */
	padding-bottom: clamp(2rem, -0.286rem + 3.57vw, 4rem);
}
.company_point_title {
	font-size: clamp(3.75rem, -2.679rem + 10.04vw, 9.375rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.02em;
    margin-bottom: clamp(0.5rem, -0.986rem + 2.32vw, 1.8rem);
}

@media screen and (max-width: 767px) {
	.company_point_title {
		font-size: 32px;
	}
}

/* ロゴに込めた想い */
.logo_content {
	padding-top: clamp(4rem, -3.543rem + 11.79vw, 10.6rem);
}
.logo_box {
	position: relative;
	margin-right: 1.8rem;
	padding: clamp(2rem, -1.429rem + 5.36vw, 5rem) clamp(3rem, -5rem + 12.5vw, 10rem) clamp(3rem, -2.829rem + 9.11vw, 8.1rem) clamp(3rem, 0.829rem + 3.39vw, 4.9rem);
}
.logo_box::before {
	content: '';
	width: 100%;
	height: 100%;
	background: url('../../../wp-content/uploads/2025/07/logo_bg2.webp') center / cover no-repeat;
	position: absolute;
	bottom: -1.5rem;
    left: 1.7rem;
    border: 5px solid #1a1818;
    z-index: -1;
}
.logo_box > .wp-block-column:first-child {
	flex-basis: 18% !important;
}
.logo_box > .wp-block-column:last-child {
	position: relative;
	flex-basis: 82% !important;
}
.logo_title_box figure {
	max-width: clamp(5rem, 1.071rem + 6.14vw, 8.438rem);
}
.logo_title {
	position: relative;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: clamp(2rem, 0.857rem + 1.79vw, 3rem);
    font-weight: 900;
    letter-spacing: 0.02em;
    color: #197eb9;
    margin: 2rem 0 0 .6rem;
    padding: 0 clamp(1rem, -1rem + 3.13vw, 2.75rem) clamp(2rem, -1.303rem + 5.16vw, 4.89rem) 0;
    box-shadow: 5px 5px #000;
}
.sub_logo_text1,
.sub_logo_text2,
.main_logo_text {
	font-size: clamp(1rem, 0.714rem + 0.45vw, 1.25rem);
	letter-spacing: 0.02em;
}
.sub_logo_text1 {
	position: absolute;
    bottom: 36.3rem;
    right: 1.3rem;
    width: clamp(17rem, -0.857rem + 19.05vw, 22rem);
	margin-bottom: 0;
    padding-bottom: 1.4rem;
}
.sub_logo_text1::before,
.sub_logo_text2::before {
	content: '';
	width: calc(100% + 1rem);
	height: 5px;
	background-color: #1a1818;
	position: absolute;
	bottom: 0;
	left: 0;
}
.sub_logo_text1::after {
	content: '';
    width: clamp(3rem, -4.143rem + 7.62vw, 5rem);
    height: 5px;
    background-color: #1a1818;
    position: absolute;
    bottom: 0;
    left: calc(clamp(3rem, -4.143rem + 7.62vw, 5rem) * -1);
    transform: rotate(-48deg);
    transform-origin: top right;
}
.sub_logo_text2 {
	position: absolute;
    bottom: 23rem;
    left: -0.7rem;
    width: clamp(14rem, -7.429rem + 22.86vw, 20rem);
	margin-bottom: 0;
    padding-bottom: 1.4rem;
}
.sub_logo_text2::after {
	content: '';
    width: 5rem;
    height: 5px;
    background-color: #1a1818;
    position: absolute;
    bottom: 0;
    right: -6rem;
    transform: rotate(48deg);
    transform-origin: top left;
}
.logo_img {
	max-width: 359px;
    margin: 19.8rem auto 4rem;
	margin-top: 0;
	position: relative;
/*     right: -2.2rem; */
    z-index: 1;
}

@media screen and (max-width: 1500px) {
	.logo_content .logo_box {
		flex-wrap: wrap !important;
	}
	.logo_box > .wp-block-column:first-child,
	.logo_box > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.logo_box > .wp-block-column:last-child {
		max-width: 715px;
		margin: 0 auto;
	}
	.logo_title_box {
		display: flex;
		align-items: center;
		gap: 1rem;
		box-shadow: 5px 5px #000;
	}
	.logo_title {
		writing-mode: unset;
		padding: 0 3rem 1.5rem 0;
        margin: 0;
		box-shadow: none;
	}
	.sub_logo_text1,
	.sub_logo_text2,
	.main_logo_text {
		font-size: 16px;
	}
	.sub_logo_text1 {
		padding-bottom: 10px;
        width: 235px;
        bottom: 437px;
	}
	.sub_logo_text2 {
		padding-bottom: 10px;
	}
	.logo_img {
		max-width: 250px;
/* 		margin: 11.8rem auto 2rem; */
		margin: 0 auto 1rem;
	}
}
@media screen and (max-width: 1024px) {
	.logo_content {
		padding-top: 4rem;
	}
	.logo_title_box figure {
		max-width: 60px;
	}
	.logo_box > .wp-block-column:last-child {
		max-width: 570px;
	}
	.logo_img {
		max-width: 200px;
	}
	.sub_logo_text1 {
		bottom: 407px;
	}
	.sub_logo_text2::after {
		width: 3rem;
		right: -4rem;
	}
}
@media screen and (max-width: 767px) {
	.logo_content .logo_box {
		padding: 2rem 1rem;
		border-width: 2px !important;
		margin-right: 1rem;
	}
	.logo_box::before {
		border-width: 2px;
		bottom: -1rem;
		left: 1rem;
	}
	.logo_title_box {
		box-shadow: 2px 2px #000;
	}
	.logo_title {
		font-size: 22px;
    	padding: 0 .5rem .5rem 0;
	}
	.logo_title_box figure {
        max-width: 45px;
    }
	.logo_box > .wp-block-column:last-child {
		display: flex;
		flex-direction: column;
	}
	.sub_logo_text1,
	.sub_logo_text2,
	.main_logo_text {
		position: relative;
		font-size: 14px;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
	}
	.sub_logo_text1 {
		order: -1;
	}
	.sub_logo_text2 {
		padding-top: 10px;
		padding-bottom: 0;
	}
	.sub_logo_text1::before,
	.sub_logo_text2::before {
		width: 50%;
		height: 2px;
	}
	.sub_logo_text1::after {
		width: 30px;
		height: 2px;
		left: 50%;
		transform: rotate(48deg);
		transform-origin: top left;
	}
	.sub_logo_text2::before {
		bottom: unset;
		top: 0;
		left: unset;
		right: 0;		
	}
	.sub_logo_text2::after {
		width: 30px;
		height: 2px;
		right: calc(50% - 1px);
		bottom: unset;
		top: 0;
		transform-origin: top right;
	}
	.logo_img {
		max-width: 150px;
		right: 0;
		margin: 16px auto;
	}
	.main_logo_text {
/* 		margin-top: 2rem; */
		margin-top: 0;
		margin-bottom: 0;
	}
}

/* ギャラリー */
.company_gallery_content {
	padding-top: 7.5rem;
}
.company_gallery_items {
	width: 100vw;
	margin: auto calc(50% - 50vw);
	gap: 0;
}
.company_gallery_item {
	position: relative;
}
.company_gallery_item:nth-child(2) {
	padding-top: 13.4%;
}
.company_gallery_item:nth-child(3) {
	padding-top: 8.1%;
}
.company_gallery_item:nth-child(4) {
	padding-top: 16.7%;
}
.company_gallery_asset1 {
	max-width: 56.5%;
	margin: 0 auto;
}
.company_gallery_asset2 {
	max-width: 54.2%;
	margin-left: 12%;
	margin-bottom: 0;
}
.company_gallery_asset3 {
	max-width: 36.3%;
    margin-top: -16%;
    margin-left: 2.5%;
}

/* アクセス */
.access_content {
	padding-top: clamp(6.5rem, 1.929rem + 7.14vw, 10.5rem);
	padding-bottom: clamp(7rem, 1.057rem + 9.29vw, 12.2rem);
}
.access_content .philo_items {
	margin-bottom: clamp(1rem, -2.429rem + 5.36vw, 4rem);
}
.access_img {
	margin-top: -4.5rem;
}
.access_content .title01_box {
	margin-bottom: clamp(1.7rem, -1.729rem + 5.36vw, 4.7rem);
}
.access_content .sub_title01 {
    margin-top: -2.1rem !important;
    padding-left: 0;
}
.access_text {
	font-size: 20px;
    letter-spacing: 0.02em;
    line-height: 1.745;
}
.access_content .map {
	aspect-ratio: 1/.381;
	vertical-align: top;
	margin-bottom: 2.4rem;
}
.btn01 a {
	font-size: 24px !important;
    font-weight: 900;
    padding: .8rem .97rem !important;
}

@media screen and (max-width: 1500px) {
	.access_content .sub_title01 {
		margin-top: -1rem !important;
	}
}
@media screen and (max-width: 1024px) {
	.access_text {
		font-size: 16px;
	}
	.access_content .map {
		margin-bottom: 1rem;
	}
	.btn01 a {
		font-size: 18px !important;
	}
}
@media screen and (max-width: 767px) {
	.access_content .philo_items {
		flex-wrap: wrap !important;
	}
	.access_img {
		margin-top: 0;
		position: absolute;
		max-width: 150px;
		width: 35%;
		top: -6rem;
		right: 0;
	}
	.access_text {
		font-size: 14px;
	}
	.access_content .title01_box {
		margin-bottom: 1rem;
	}
	.access_content .map {
		aspect-ratio: 1 / .6;
	}
	.btn01 a {
		font-size: 15px !important;
		letter-spacing: 0.02em;
	}
}

/* 会社概要 */
.company_content {
	padding-top: clamp(4rem, -2.743rem + 10.54vw, 9.9rem);
}
.company_box {
	gap: 4.2%;
}
.company_box > .wp-block-column:last-child {
	flex-basis: 61% !important;
}
.company_title_box {
	margin-left: calc(50% - 51.1vw) !important;
    flex-grow: 1 !important;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
	padding: 2.9rem 4rem 1rem;
}
.company_title {
	font-size: clamp(2rem, 0.857rem + 1.79vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin: 0 0 2.7rem clamp(0rem, -6.857rem + 10.71vw, 6rem);
}
.company_title_img {
	max-width: 500px;
	margin-left: auto;
}
.company_table {
	margin-bottom: 0;
}
.company_table table,
.company_table tbody,
.company_table td {
	display: block;
	border: none !important;
}
.company_table tr {
	position: relative;
	display: flex;
}
.company_table tr::before {
	content: '';
	width: 100%;
	height: 1px;
	background: url('../../../wp-content/uploads/2025/07/wave.png') center / contain repeat;
	position: absolute;
	bottom: 0;
	left: 0;
}
.company_table td {
	font-size: clamp(1rem, 0.714rem + 0.45vw, 1.25rem);
	letter-spacing: 0.08em;
	padding: clamp(1.43rem, 0.287rem + 1.79vw, 2.43rem) 0 .3rem;
}
.company_table tr:first-child td {
	padding-top: 0;
}
.company_table td:first-child {
	font-weight: 900;
	width: clamp(9.063rem, 1.563rem + 11.72vw, 15.625rem);
	flex-shrink: 0;
}

@media screen and (max-width: 1024px) {
	.company_title {
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 767px) {
	.company_content {
		overflow: visible;
	}
	.company_content .company_box {
		flex-wrap: wrap !important;
	}
	.company_title_box {
		flex-basis: 100% !important;
        margin-left: 0 !important;
        background-color: transparent !important;
        padding: 0 0 .5rem;
	}
	.company_box > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.company_title {
		writing-mode: unset !important;
	}
	.company_title_img {
		position: absolute;
		bottom: -10rem;
		right: 0;
		max-width: 350px;
		width: 40%;
	}
	.company_table tr {
		flex-wrap: wrap;
	}
	.company_table td {
		width: 100% !important;
	}
	.company_table td:first-child {
		padding-top: 15px !important;
		padding-bottom: 0 !important;
	}
	.company_table td:last-child {
		padding-top: 3px !important;
	}
}


/*************************************
 * 採用情報
*************************************/
.recruit_fv_content.page_fv_content {
	padding-top: 7.2vw;
	margin-bottom: rem;
}
.recruit_fv_content .top_work_title_box {
	align-items: flex-end;
	margin-bottom: 2rem;
}
.recruit_fv_content .top_work_title_box figure {
	padding-top: 0;
    margin-right: 1.5vw;
    margin-bottom: 1.4vw;
    max-width: 54%;
}
.recruit_fv_title {
	font-size: clamp(4.375rem, 2.232rem + 3.35vw, 6.25rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.3;
}

@media screen and (max-width: 1024px) {
	.recruit_fv_title {
		font-size: 42px;
	}
	.recruit_fv_content .top_work_title_box {
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 767px) {
	.recruit_fv_title {
		font-size: 30px;
	}
}


/* ページ内リンク */
.page_link_content {
	padding-top: clamp(2rem, -1.886rem + 6.07vw, 5.4rem);
	padding-bottom: clamp(2rem, -1.886rem + 6.07vw, 5.4rem);
}
.page_link_items .vk_buttons_col {
	gap: 3.69%;
	justify-content: center;
}
.page_link_items .vk_button {
	/* 表示個数が変わっても1行に収まるよう可変にする（上限は従来の22.23%） */
	flex: 1 1 0;
	width: auto;
	max-width: 22.23%;
}
.page_link_items a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: clamp(1.125rem, 0.696rem + 0.67vw, 1.5rem) !important;
	font-weight: 500;
	letter-spacing: 0.02em;
	min-height: 125px !important;
}
.page_link_items a::before {
	content: '';
	width: 24px;
	height: 17px;
	background-color: #25afff;
	clip-path: polygon(100% 0, 0 0, 50% 100%);
	position: absolute;
	bottom: -17px;
	left: 50%;
	transform: translateX(-50%);
}

@media screen and (max-width: 1500px) {
	.page_link_items .vk_buttons_col {
		gap: 2rem 3.69%;
		justify-content: center;
	}
	.page_link_items .vk_button {
		flex: 0 1 auto;
		width: 35%;
		max-width: none;
	}
	.page_link_items a {
		min-height: 100px !important;
	}
}
@media screen and (max-width: 1024px) {
	.page_link_items a {
		min-height: 65px !important;
	}
}
@media screen and (max-width: 767px) {
	.page_link_items .vk_buttons_col {
		gap: 1.4rem 5%;
	}
	.page_link_items .vk_button {
		width: 47.5%;
	}
	.page_link_items a {
		font-size: 14px !important;
		padding: 10px 2px !important;
		min-height: 60px !important;
	}
	.page_link_items a::before {
		width: 19px;
		height: 12px;
		bottom: -12px;
	}
}

/* 代表者メッセージ */
.message_content {
	padding-bottom: clamp(2rem, -2.343rem + 6.79vw, 5.8rem);
}
.bar_title_box {
	margin-bottom: 5.7rem;
}
.bar_left_title {
	margin-right: calc(50% - 50vw + 75px);
}
.bar_right_title {
	margin-left: calc(50% - 50vw - 75px);
}
.bar_title_box > .wp-block-group__inner-container {
	max-width: unset !important;
}
.bar_title {
	font-size: clamp(2rem, 1.714rem + 0.45vw, 2.25rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	color: #197eb9;
	background-color: #fff;
	border: 5px solid #000;
	padding: 0.8rem 1.4rem;
}
.bar_left_title .bar_title {
	box-shadow: 8px 10px #1a1818;
	border-right: none;
}
.bar_right_title .bar_title {
	box-shadow: -8px 10px #1a1818;
	border-left: none;
}
/* .bar_right_title .bar_sub_title {
	margin-left: 8vw;
} */
.bar_sub_title {
	font-size: clamp(9.688rem, -0.67rem + 16.18vw, 18.75rem);
	font-weight: 900;
	letter-spacing: -0.06em;
	line-height: 1;
	color: #000;
	opacity: .1;
	margin-bottom: -1.1rem !important;
}
.message_items,
.message_text_box {
	gap: 0;
	justify-content: space-between;
	margin-bottom: 0;
}
.message_items > .wp-block-column:first-child {
	flex-basis: 74% !important;
}
.message_items > .wp-block-column:last-child {
	flex-basis: 24% !important;
}
.message_text_box > .wp-block-column:first-child {
	flex-basis: 67.66% !important;
}
.message_text_box > .wp-block-column:last-child {
	flex-basis: 31.33% !important;
}
.message_text {
	font-size: clamp(1rem, 0.714rem + 0.45vw, 1.25rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.75;
	margin-bottom: 2.8rem;
}
.message_post {
	font-size: clamp(1.25rem, 0.964rem + 0.45vw, 1.5rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.75;
}
.message_name {
	font-size: clamp(1.5rem, 1.071rem + 0.67vw, 1.875rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.75;
	margin-top: -0.5rem !important;
}
.message_img {
	margin-bottom: 0;
}

@media screen and (max-width: 1400px) {
	.message_content .message_text_box {
		flex-wrap: wrap !important;
	}
	.message_text_box > .wp-block-column:first-child,
	.message_text_box > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.message_post {
		text-align: right !important;
	}
	.message_items > .wp-block-column:first-child {
		flex-basis: 58% !important;
	}
	.message_items > .wp-block-column:last-child {
		flex-basis: 38% !important;
	}
}
@media screen and (max-width: 1024px) {
	.bar_left_title {
		margin-right: calc(50% - 50vw);
		margin-bottom: 2.5rem;
	}
	.bar_right_title {
		margin-left: calc(50% - 50vw);
	}
	.bar_left_title .bar_title {
		box-shadow: 4px 6px #1a1818;
	}
	.bar_right_title .bar_title {
		box-shadow: -4px 6px #1a1818;
	}
	.bar_sub_title {
		font-size: 115px;
	}
	.message_text {
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 767px) {
	.bar_sub_title {
		font-size: 55px;
		margin-bottom: -0.4rem !important;
		padding-left: 17px;
	}
	.bar_right_title .bar_sub_title {
		padding-left: 0;
	}
	.bar_title {
		font-size: 20px;
		border-width: 3px;
		padding: 7px 17px;
	}
	.message_content .message_items {
		flex-wrap: wrap !important;
	}
	.message_items > .wp-block-column:first-child,
	.message_items > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
	.message_post {
		font-size: 15px;
	}
	.message_name {
		font-size: 18px;
	}
	.message_img {
		max-width: 400px;
		width: 60%;
		margin-right: auto;
	}
}

/* 数字で見るテクノ電設 */
.date_content {
	padding-bottom: 5.5rem;
}
.date_content .bar_sub_title {
	padding-left: 9rem;
}
.date_content .bar_title_box {
	margin-bottom: 6.1rem;
}
.date_items > .row {
	margin: 0;
	gap: 3.3rem 4.1%;
}
.date_items .wp-block-vk-blocks-grid-column-item {
	position: relative;
/* 	display: flex;
	flex-direction: column; */
	flex: 0 0 30.6%;
	max-width: 100%;
	width: 100%;
	padding: 3rem 1rem 3.6rem;
	border: 5px solid #000;
	background-color: #f7f1ee;
}
.date_items .wp-block-vk-blocks-grid-column-item::before {
	content: '';
	width: 100%;
	height: calc(100% + 16px);
	background: url('../../../wp-content/uploads/2025/07/date_bg.png') center / cover no-repeat;
	position: absolute;
	top: 6px;
    left: 23px;
    border: 5px solid #000;
    z-index: -1;
}
.date_title {
	font-size: clamp(2rem, 0.857rem + 1.79vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.2;
	color: #197eb9;
	margin-bottom: -0.6rem;
	min-height: 115px;
}
/* .num_alart_box {
	position: relative;
	width: max-content;
    margin: auto auto 1.7rem;
}
.num_alart_box.max_width {
	width: 100%;
} */
.num_alart {
/* 	position: absolute;
	bottom: 0;
	left: 0; */
	position: relative;
	top: -1.5rem;
	font-size: clamp(0.938rem, 0.58rem + 0.56vw, 1.25rem);
	font-weight: bold;
	color: #197eb9;
	text-align: center;
}
.date_result {
	font-size: clamp(5.313rem, 0.67rem + 7.25vw, 7rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1;
	color: #197eb9;
	margin-top: auto;
	margin-bottom: 1.7rem;
/* 	padding-bottom: 2rem; */
}
.date_result span {
	font-size:clamp(2rem, 0.857rem + 1.79vw, 3rem) !important;
}
.date_text {
	font-size: clamp(1rem, 0.714rem + 0.45vw, 1.25rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.75;
	margin-bottom: 0;
}

@media screen and (max-width: 1700px) {
	.date_items > .row {
		justify-content: center;
	}
	.date_items .wp-block-vk-blocks-grid-column-item {
		flex: 0 0 415px;
	}
}
@media screen and (max-width: 1673px) {
	.date_title {
		min-height: auto;
	}
}
@media screen and (max-width: 1150px) {
	.date_items > .row {
		gap: 3.3rem 5%;
	}
	.date_items .wp-block-vk-blocks-grid-column-item {
		flex: 0 0 47.5%;
	}
	.date_title {
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 1024px) {
	.date_content {
		padding-bottom: 4rem;
	}
	.date_content .bar_title_box {
		margin-bottom: 2.5rem;
	}
	.date_content .bar_sub_title {
		padding-left: 0;
	}
	.num_alart {
		font-size: 13px;
	}
/* 	.date_result {
		padding-bottom: 0;
	} */
}
@media screen and (max-width: 767px) {
	.date_items > .row {
		gap: 2rem 5%;
	}
	.date_items .wp-block-vk-blocks-grid-column-item {
		border-width: 2px;
		padding: 1.5rem .5rem 2rem;
		flex: 0 0 100%;
	}
	.date_items .wp-block-vk-blocks-grid-column-item::before {
		height: calc(100% + 5px);
		top: 6px;
		left: 10px;
		border-width: 2px;
	}
	.date_title {
		font-size: 24px;
	}
	.date_result {
		font-size: 52px;
		padding-bottom: 0;
		margin-bottom: 1.2rem;
	}
	.date_result span {
		font-size: 30px !important;
	}
	.date_text {
		line-height: 1.5;
	}
	.num_alart {
        font-size: 12px;
		top: -1rem;
    }
}

/* 先輩インタビュー */
.interview_content {
	padding-bottom: 2rem;
}
.interview_content .bar_title_box {
	margin-bottom: 6.4rem;
}
.interview_banner {
	max-width: 1200px;
	border-radius: 20px;
	overflow: hidden;
	margin: 0 auto;
}
.interview_banner a {
	display: block;
	transition: opacity .3s;
}
.interview_banner a:hover {
	opacity: .7;
}
.interview_banner img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 1024px) {
	.interview_content .bar_title_box {
		margin-bottom: 2.5rem;
	}
}

/* 社員の一日密着!! */
.interview_video_content {
	padding-top: 2.4rem;
/* 	padding-bottom: 10.8rem; */
	padding-bottom: 4rem;
}
.video_title_box figure {
	max-width: 43%;
	margin-right: -6.4%;
}
.video_title {
	font-size: clamp(3.438rem, 2.223rem + 1.9vw, 4.5rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.2;
	color: #197eb9;
}

@media screen and (max-width: 767px) {
	.interview_video_content {
		overflow: visible;
		padding-bottom: 0;
		padding-top: 6.4rem;
	}
	.video_title {
		font-size: 32px;
	}
	.video_title_box figure {
		position: absolute;
		top: -45%;
		right: 0;
	}
}

/* 採用情報ギャラリー */
.recruit_gallery_content {
	padding-top: 0;
	padding-bottom: 2rem;
	overflow: visible;
}
.recruit_gallery_items {
	position: relative;
}
.recruit_gallery_items .row {
	position: relative;
	margin: 0;
	flex-wrap: nowrap !important;
	gap: 3.1%;
	padding-top: 8rem;
/* 	height: 100vh !important; */
	align-items: center;
}
.recruit_gallery_items .vk_gridColumn_item {
	padding: 0;
/* 	flex: 0 0 37.3% !important; */
	flex: 0 0 25vw !important;
	max-width: 100% !important;
}
.recruit_gallery_items figure {
	border-radius: 40px;
	border: 7px solid #000;
	margin-bottom: 0;
	overflow: hidden;
}
.recruit_gallery_items figure img {
	width: 100%;
}
.scrollbar {
	height: 5px;
	width: 0%;
	background-color: #25afff;
	border-radius: 9999px;
	transition: width 0.1s ease-out;
	position: absolute;
	bottom: calc(50% - 17.5vw);
    left: 0;
    transform: translateY(-50%);
}
.recruit_gallery_items .row::before {
	content: '';
	width: 100%;
	height: 5px;
	background-color: #25afff;
	border-radius: 9999px;
	opacity: .23;
	position: absolute;
	bottom: calc(50% - 17.5vw);
    left: 0;
    transform: translateY(-50%);
}

@media screen and (min-width: 3000px) {
	.scrollbar,
	.recruit_gallery_items .row::before {
		bottom: calc(50% - 15.5vw);
	}
}
@media screen and (max-width: 1500px) {
	.scrollbar,
	.recruit_gallery_items .row::before {
		bottom: calc(50% - 19.5vw);
	}
}
@media screen and (max-width: 1024px) {
	.recruit_gallery_items .vk_gridColumn_item {
		flex: 0 0 50% !important;
	}
	.recruit_gallery_items figure {
		border-width: 4px;
		border-radius: 20px;
	}
	.scrollbar,
	.recruit_gallery_items .row::before {
		height: 3px;
		bottom: calc(50% - 34vw);
	}
}
@media screen and (max-width: 767px) {
	.recruit_gallery_items .vk_gridColumn_item {
		flex: 0 0 80% !important;
	}
	.recruit_gallery_items figure {
		border-width: 4px;
		border-radius: 20px;
	}
	.scrollbar,
	.recruit_gallery_items .row::before {
		bottom: calc(50% - 50vw);
	}
	.recruit_gallery_items .row {
		padding-top: 4rem;
	}
}

/* 募集要項 */
.recruit_content {
	padding-top: 2rem;
}
.recruit_content .bar_title_box {
	margin-bottom: 3.6rem;
}
.recruit_table table,
.recruit_table td {
	border: none !important;
}
.recruit_table tr {
	border-bottom: 2px dashed #cec8c5;
}
.recruit_table td {
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.5;
	padding: 36px 0 5px;
}
.recruit_table td:first-child {
	font-weight: 900;
	width: 304px;
}

@media screen and (max-width: 1024px) {
	.recruit_content .bar_title_box {
		margin-bottom: 2.5rem;
	}
	.recruit_table td {
		font-size: 16px;
		padding: 20px 0 5px;
	}
	.recruit_table td:first-child {
		width: 250px;
	}
}
@media screen and (max-width: 767px) {
	.recruit_table tr,
	.recruit_table td {
		display: block;
		width: 100% !important;
	}
	.recruit_table tr {
		padding: 15px 0 5px;
	}
	.recruit_table td {
		padding: 0 !important;
		font-size: 14px;
	}
}

/* お問い合わせバー */
.recruit_contact_content {
	padding-top: 3.5rem;
	padding-bottom: 11.5rem;
}
.recruit_contact_title {
	font-size: 30px;
	letter-spacing: 0.02em;
	margin-bottom: 1rem !important;
}
.recruit_contact_title strong {
	position: relative;
	font-weight: 900 !important;
}
.recruit_contact_title strong::before,
.recruit_contact_title strong::after {
	content: '';
	width: 52px;
	height: 63px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.recruit_contact_title strong::before {
	background: url('../../../wp-content/uploads/2025/07/recruit_contact_arrow1.png') center / contain no-repeat;
	left: -60px;
}
.recruit_contact_title strong::after {
	background: url('../../../wp-content/uploads/2025/07/recruit_contact_arrow2.png') center / contain no-repeat;
	right: -60px;
}
.recruit_contact_btn a {
	position: relative;
	font-size: clamp(3.75rem, 0.893rem + 4.46vw, 6.25rem) !important;
	font-weight: 900;
	letter-spacing: 0.02em;
	overflow: hidden;
	padding: 0.7rem .5rem !important;
	border: none !important;
}
.recruit_contact_btn a::before {
	content: '';
	width: 416px;
	height: 344px;
	background: url('../../../wp-content/uploads/2025/07/recruit_contact_mail.png') center / contain no-repeat;
	position: absolute;
	top: 61%;
	left: -1rem;
	transform: translateY(-50%);
}

@media screen and (max-width: 1024px) {
	.recruit_contact_content {
		padding-top: 0;
		padding-bottom: 7rem;
	}
	.recruit_contact_title {
		font-size: 22px;
	}
	.recruit_contact_title strong::before,
	.recruit_contact_title strong::after {
		width: 42px;
    	height: 51px;
	}
	.recruit_contact_btn a::before {
		width: 27%;
		height: 215%;
	}
	.recruit_contact_btn a {
		font-size: 32px !important;
	}
}
@media screen and (max-width: 767px) {
	.recruit_contact_title {
		font-size: 18px;
	}
	.recruit_contact_title strong::before,
	.recruit_contact_title strong::after {
		width: 32px;
    	height: 41px;
	}
	.recruit_contact_title strong::before {
		left: -36px;
	}
	.recruit_contact_title strong::after {
		right: -36px;
	}
	.recruit_contact_btn a {
		font-size: 24px !important;
	}
	.recruit_contact_btn a::before {
		top: 50%;
		left: 0;
	}
}


/*************************************
 * 社員の1日の流れ
*************************************/
/* 1日の流れ */
.day_flow_content {
	padding-top: 2rem;
	padding-bottom: clamp(2rem, -2.343rem + 6.79vw, 5.8rem);
}
.day_flow_content .bar_title_box {
	margin-bottom: 3.6rem;
}
.day_flow_catch {
	font-size: clamp(1.25rem, 0.964rem + 0.45vw, 1.5rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.6;
	margin-top: 0;
	margin-bottom: 1.6rem;
}
.day_flow_read {
	font-size: clamp(1rem, 0.857rem + 0.22vw, 1.125rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 2;
	margin-top: 0;
	margin-bottom: clamp(3rem, 0.143rem + 4.46vw, 6rem);
}
.day_flow_items {
	position: relative;
}
.day_flow_items::before {
	content: '';
	width: 5px;
	height: 100%;
	background-color: #25afff;
	border-radius: 9999px;
	opacity: .23;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.day_flow_item {
	position: relative;
	align-items: center !important;
	margin-top: 0;
	gap: 9%;
	margin-bottom: clamp(3rem, -0.714rem + 5.8vw, 6rem);
}
.day_flow_item:last-child {
	margin-bottom: 0;
}
.day_flow_item:nth-of-type(even) {
	flex-direction: row-reverse;
}
.day_flow_item > .wp-block-column {
	flex-basis: 45.5% !important;
	flex-grow: unset !important;
}
.day_flow_img {
	border: 7px solid #000;
	border-radius: 40px;
	box-shadow: -20px 20px #25afff;
	overflow: hidden;
	margin-top: 0;
	margin-bottom: 0;
}
.day_flow_item:nth-of-type(even) .day_flow_img {
	box-shadow: 20px 20px #25afff;
}
.day_flow_img img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	vertical-align: bottom;
}
.day_flow_time {
	font-size: clamp(1rem, 0.786rem + 0.33vw, 1.188rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1;
	color: #fff;
	background-color: #25afff;
	border: 5px solid #1a1818;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 96px;
	height: 96px;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}
.day_flow_title {
	font-size: clamp(1.5rem, 1.071rem + 0.67vw, 1.875rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.5;
	color: #1a1818;
	margin-top: 0;
	margin-bottom: 0.8rem;
}
.day_flow_lead {
	font-size: clamp(1.125rem, 0.839rem + 0.45vw, 1.375rem);
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.6;
	color: #25afff;
	margin-top: 0;
	margin-bottom: 1.2rem;
}
.day_flow_text {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 2;
	margin-top: 0;
	margin-bottom: 0;
}
.day_message_box {
	background-color: #fff;
	border: 5px solid #1a1818;
	box-shadow: 8px 10px #25afff;
	padding: clamp(1.6rem, -0.343rem + 3.04vw, 3.2rem);
	margin-top: clamp(4rem, 0.571rem + 5.36vw, 7.6rem);
}
.day_message_title {
	font-size: clamp(1.375rem, 1.089rem + 0.45vw, 1.625rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	line-height: 1.5;
	color: #197eb9;
	margin-bottom: 1.2rem;
}
.day_message_text {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 2;
}

@media screen and (max-width: 1300px) {
	.day_flow_item {
		gap: 8%;
	}
	.day_flow_item > .wp-block-column {
		flex-basis: 46% !important;
	}
	.day_flow_time {
		width: 80px;
		height: 80px;
		border-width: 4px;
	}
}
@media screen and (max-width: 1024px) {
	.day_flow_content .bar_title_box {
		margin-bottom: 2.5rem;
	}
	.day_flow_items::before {
		width: 3px;
	}
	.day_flow_time {
		width: 64px;
		height: 64px;
		border-width: 3px;
		font-size: 14px;
	}
	.day_flow_img {
		border-width: 4px;
		border-radius: 20px;
		box-shadow: -12px 12px #25afff;
	}
	.day_flow_item:nth-of-type(even) .day_flow_img {
		box-shadow: 12px 12px #25afff;
	}
	.day_flow_text,
	.day_message_text {
		font-size: 16px;
		line-height: 1.9;
	}
	.day_message_box {
		border-width: 4px;
		box-shadow: 5px 6px #25afff;
	}
}
@media screen and (max-width: 767px) {
	.day_flow_items::before {
		left: 28px;
		transform: none;
	}
	.day_flow_content .day_flow_item,
	.day_flow_content .day_flow_item:nth-of-type(even) {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 1.2rem;
		padding-left: 4.6rem;
		margin-bottom: 3rem;
	}
	.day_flow_item > .wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
	}
	.day_flow_time {
		width: 56px;
		height: 56px;
		top: 0;
		left: 28px;
		transform: translateX(-50%);
	}
	.day_flow_img,
	.day_flow_item:nth-of-type(even) .day_flow_img {
		box-shadow: 7px 7px #25afff;
	}
	.day_flow_text,
	.day_message_text {
		font-size: 14px;
	}
	.day_message_box {
		padding: 1.4rem 1.2rem;
	}
}


/*************************************
 * 事業紹介
*************************************/
.work_fv_content  .top_work_title_box figure {
	padding-top: 2rem;
    margin-right: 0.7rem;
    max-width: 42%;
}
.work_link_content .page_link_items .vk_buttons_col {
	gap: 9.95%;
}
.work_link_content .page_link_items .vk_button {
	width: 26.7%;
}
.work_link_content .page_link_items a {
	min-height: 146px !important;
}

@media screen and (max-width: 1500px) {
	.work_link_content .page_link_items a {
		min-height: 100px !important;
	}
}
@media screen and (max-width: 1024px) {
	.work_link_content .page_link_items .vk_buttons_col {
		gap: 5%;
	}
	.work_link_content .page_link_items a {
		min-height: 65px !important;
	}
}
@media screen and (max-width: 767px) {
	.work_fv_content .top_work_title_box figure {
		padding-top: 5rem;
	}
	.work_link_content .page_link_items .vk_buttons_col {
		gap: 1.4rem 5%;
	}
	.work_link_content .page_link_items .vk_button {
		width: 47.5%;
	}
	.work_link_content .page_link_items a {
		min-height: 60px !important;
	}
}

/* サービス紹介 */
.work_content {
	padding-top: 3.7rem;
	padding-bottom: clamp(2rem, -3.714rem + 8.93vw, 7rem);
}
#work3.work_content {
	padding-bottom: 9rem;
}
.work_content::before {
	content: '';
    width: 27.187vw;
    height: 7.447vw;
    background: url(../../../wp-content/uploads/2025/07/work_asset1-scaled.png) center / contain no-repeat;
    position: absolute;
    top: 8.5vw;
    right: -4.2vw;
	animation: floating-y 4s ease-in-out infinite alternate-reverse;
}
.work_content::after {
	content: '';
    width: 17.656vw;
    height: 5.729vw;
    background: url(../../../wp-content/uploads/2025/07/work_asset2-scaled.png) center / contain no-repeat;
    position: absolute;
    top: 19.4vw;
    left: -2.2vw;
	animation: floating-x 4s ease-in-out infinite alternate-reverse;
}
#work2.work_content::before {
	width: 17.656vw;
    height: 5.729vw;
    background: url(../../../wp-content/uploads/2025/07/work_asset2-scaled.png) center / contain no-repeat;
	top: 9.7vw;
	right: -0.5vw;
	animation: floating-x 4s ease-in-out infinite alternate-reverse;
}
#work2.work_content::after {
	width: 27.187vw;
    height: 7.447vw;
    background: url(../../../wp-content/uploads/2025/07/work_asset1-scaled.png) center / contain no-repeat;
    top: 15.5vw;
    left: -0.6vw;
	animation: floating-y 4s ease-in-out infinite alternate-reverse;
}
.work_title_box {
	position: relative;
	max-width: clamp(21.875rem, 9.946rem + 18.64vw, 32.313rem);
	margin: 0 auto clamp(2rem, -2.229rem + 6.61vw, 5.7rem);
}
.work_title {
	font-size: clamp(2.5rem, 1.929rem + 0.89vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.22em;
	color: #fff;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}
.work_title_bg {
	margin-bottom: 0;
}
.work_title_bg img {
	width: 100% !important;
}
.work_hero {
	font-size: clamp(2.5rem, 1.929rem + 0.89vw, 3rem);
	letter-spacing: 0.02em;
	line-height: 1.75;
	margin-bottom: clamp(2rem, -1.771rem + 5.89vw, 5.3rem) !important;
}
.work_hero strong {
	position: relative;
	display: inline-block;
	font-weight: 900 !important;
}
.work_hero strong::before,
.work_hero strong::after {
	content: '';
	width: 5px;
	height: 100%;
	background-color: #000;
	position: absolute;
	bottom: 0;
}
.work_hero strong::before {
	left: -5.6rem;
    transform: rotate(-39deg);
}
.work_hero strong::after {
	right: -3.8rem;
    transform: rotate(39deg);
}
.work_text {
	max-width: 1000px;
	margin: 0 auto;
	font-size: clamp(1.125rem, 0.839rem + 0.45vw, 1.375rem);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.75;
}
.work_items > .row {
	margin: clamp(2rem, -0.057rem + 3.21vw, 3.8rem) 0 0;
	gap: clamp(1.5rem, -0.786rem + 3.57vw, 3.5rem) 6.7%;
}
.work_items .vk_gridColumn_item {
	padding: 0;
	max-width: 100%;
	flex: 0 0 28.8% !important;
}
.work_img {
	margin-bottom: 1rem;
}
.work_img img {
	width: 100% !important;
}
.work_name {
	font-size: clamp(1rem, 0.857rem + 0.22vw, 1.125rem);
	letter-spacing: 0.02em;
	line-height: 1.75;
	margin-bottom: 0;
}

@keyframes floating-y {
  0% {
    transform: translateY(-15%);
  }
  100% {
    transform: translateY(15%);
  }
}
@keyframes floating-x {
  0% {
    transform: translateX(-8%) translateY(-15%);
  }
  100% {
    transform: translateX(8%) translateY(15%);
  }
}

@media screen and (max-width: 1024px) {
	.work_title_box {
		max-width: 250px;
	}
	.work_title {
		font-size: 28px;
	}
	.work_hero {
		font-size: 28px;
		line-height: 1.5;
	}
	.work_hero strong::before {
		left: -3.6rem;
	}
	.work_hero strong::after {
		right: -3.6rem;
	}
	.work_text {
		font-size: 16px;
	}
	.work_img {
		margin-bottom: .5rem;
	}
	.work_name {
		line-height: 1.5;
	}
}
@media screen and (max-width: 767px) {
	.work_content {
		padding-top: 2rem;
	}
	.work_content::before {
		width: 32.187vw;
        height: 9.447vw;
	}
	.work_content::after {
		width: 27.656vw;
    	height: 9.729vw;
	}
	#work2.work_content::before {
		width: 27.656vw;
    	height: 9.729vw;
	}
	#work2.work_content::after {
		width: 37.187vw;
    	height: 10.447vw;
		top: 32.5vw;
	}
	.work_title_box {
		max-width: 200px;
	}
	.work_title {
		font-size: 22px;
	}
	.work_hero {
		font-size: 20px;
		line-height: 1.3;
		margin-bottom: 1rem !important;
	}
	.work_hero strong::before,
	.work_hero strong::after {
		width: 3px;
		height: 80%;
	}
	.work_hero strong::before {
		left: -1.6rem;
	}
	.work_hero strong::after {
		right: -1.6rem;
	}
	.work_text {
		font-size: 14px;
	}
	.work_items > .row {
		gap: 1.5rem 5%;
	}
	.work_items .vk_gridColumn_item {
		flex: 0 0 47.5% !important;
	}
}

/*************************************
 * お知らせ
*************************************/
.archive .site-body {
	padding-top: 7.9rem;
	padding-bottom: 0;
}
.archive .archive-header {
	display: none;
}
.archive .main-section {
	max-width: 1518px !important;
    width: calc(100% - 150px);
	margin: 0 auto;
	padding-bottom: 4rem;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.single .main-section {
	max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 4rem;
}
.archive .breadcrumb-list,
.single .breadcrumb-list,
.archive .page-header,
.single .page-header {
	display: none;
}
.archive .main-section::after {
	display: none;
}
.archive .tate_title {
	margin: 0;
	flex-basis: clamp(6.25rem, 0.536rem + 8.93vw, 11.25rem) !important;
}
.archive_main_box {
	flex-basis: calc(100% - 9% - clamp(6.25rem, 0.536rem + 8.93vw, 11.25rem)) !important;
}
.archive_title {
	font-size: clamp(2rem, 0.857rem + 1.79vw, 3rem);
	font-weight: 900;
	letter-spacing: 0.02em;
	color: #197eb9;
	border: none;
	padding-bottom: 0;
    margin-bottom: clamp(1rem, -1.971rem + 4.64vw, 3.6rem);
}
.archive_title::after {
	display: none;
}
.archive .vk_posts {
	margin: 0;
}
.archive .vk_posts-postType-news {
	padding-left: 0;
}
.archive .vk_posts-postType-news::before {
	display: none;
}
.archive .vk_post {
	display: flex;
	align-items: flex-start;
	margin: clamp(1rem, 0.429rem + 0.89vw, 1.5rem) 0;
}
.archive .postListText_singleTermLabel {
	order: -1;
	min-width: 110px;
	border: 5px solid #cec8c5;
	margin-top: 0;
	margin-right: 0;
}
.archive .postListText_singleTermLabel a {
	background-color: transparent !important;
	font-size: 16px;
	line-height: 1.875;
	letter-spacing: 0.02em;
	color: #1a1818 !important;
	padding: 0;
}
.archive .postListText_date {
	min-width: 90px;
    text-align: center;
    margin-right: 0;
    padding: 3px 1.5rem 0;
	flex-shrink: 0;
}
.archive .postListText_title a {
	display: block;
}
/* .page-numbers > li {
	overflow: visible !important;
} */
.page-numbers .page-numbers {
	font-size: 24px;
    font-weight: 900;
    line-height: 1;
    color: #25afff;
    border: none;
    display: block;
    margin: 0;
    padding: 0;
    padding-top: 3px;
	width: 100%;
	height: 100%;
}
ul.page-numbers li {
	margin: 0 5px;
}
ul.page-numbers li:has(.current) {
	background-color: #25afff;
	color: #000;
	border: none;
}
ul.page-numbers li span.page-numbers.current {
	background-color: transparent !important;
	border: none;
	padding: 0;
	padding-top: 8px;
}
.page-numbers > li:has(.meta-nav) {
	width: 43px;
	height: 43px;
	border: 5px solid #25afff;
	border-radius: 50% !important;
	display: flex;
    align-items: center;
    justify-content: center;
}
.page-numbers > li:has(.dots) {
	width: 30px;
	height: 43px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.page-numbers.dots {
	color: #25afff !important;
	padding: 0 !important;
	padding-bottom: 14px !important;
	border: none !important;
}
.page-numbers.next,
.page-numbers.prev {
	border: 5px solid #25afff;
	border-radius: 9999px !important;
	padding: 6px 20px;
}
.page-numbers a.page-numbers {
	transition: all .3s;
}
.page-numbers a.page-numbers:hover {
	background-color: #25afff;
	color: #fff;
}
h1 {
	font-size: 32px;
}
h2 {
	font-size: 30px;
}
h3 {
	font-size: 28px;
}
h4 {
	font-size: 26px;
}
h5 {
	font-size: 24px;
}
@media screen and (max-width: 1500px) {
	.archive .main-section,
	.single .main-section {
		width: calc(100% - 150px);
		margin-right: 0;
	}
	.archive .breadcrumb-list,
	.single .breadcrumb-list {
		width: calc(100% - 150px);
		margin-right: 0;
	}
}
@media screen and (max-width: 1024px) {
	.archive .site-body {
		padding-top: 2.5rem;
	}
	.archive .main-section,
	.single .main-section {
		width: 100%;
		margin-right: auto;
	}
	.archive .breadcrumb-list,
	.single .breadcrumb-list {
		width: 100%;
		margin-right: auto;
	}
	.archive .page-header,
	.single .page-header {
		min-height: 14rem;
	}
	.archive .vk_post {
		margin: 5px 0;
	}
	.archive .postListText_singleTermLabel {
		min-width: 100px;
		border-width: 2px;
	}
	.archive .postListText_singleTermLabel a {
		font-size: 14px;
	}
	.archive .postListText_date {
		font-size: 14px;
		padding: 5px 10px 0;
	}
	.archive .postListText_title {
		font-size: 16px;
	}
	.page-numbers.next,
	.page-numbers.prev,
	.page-numbers > li:has(.meta-nav) {
		border-width: 3px;
	}
	.page-numbers .page-numbers {
		font-size: 18px;
	}
	.page-numbers > li:has(.meta-nav) {
		width: 36px;
		height: 36px;
	}
	h1 {
		font-size: 24px;
	}
	h2 {
		font-size: 22px;
	}
	h3 {
		font-size: 20px;
	}
	h4 {
		font-size: 18px;
	}
	h5 {
		font-size: 17px;
	}
}
@media screen and (max-width: 767px) {
	.archive .page-header,
	.single .page-header {
		min-height: 9rem;
	}
	.archive .main-section {
		flex-wrap: wrap;
	}
	.archive .tate_title,
	.archive_main_box {
		flex-basis: 100% !important;
	}
	.archive .tate_title {
		writing-mode: unset;
		font-size: 32px;
	}
	.archive_title {
		font-size: 24px;
	}
	.archive .vk_post {
		flex-wrap: wrap;
		margin: 10px 0;
	}
	.archive .postListText_singleTermLabel {
		min-width: 95px;
	}
	.archive .postListText_singleTermLabel a {
		font-size: 12px;
	}
	.archive .postListText_date {
		padding: 3px 5px;
		min-width: 75px;
	}
	.archive .postListText_title {
		width: 100%;
		font-size: 14px;
		margin-top: 5px;
	}
	.page-numbers .page-numbers {
		font-size: 14px;
		padding-top: 6px;
	}
	.page-numbers.next,
	.page-numbers.prev {
		padding: 6px 13px;
	}
	.page-numbers.next,
	.page-numbers.prev,
	.page-numbers > li:has(.meta-nav) {
		border-width: 2px;
	}
	.page-numbers > li:has(.meta-nav) {
		width: 32px;
		height: 32px;
	}
	ul.page-numbers li {
		margin: 0 2px;
	}
	h1 {
		font-size: 22px;
	}
	h2 {
		font-size: 20px;
	}
	h3 {
		font-size: 18px;
	}
	h4 {
		font-size: 17px;
	}
	h5 {
		font-size: 16px;
	}
	.page-header-title {
		font-size: 24px;
	}
}

.delay1 {
	transition-delay: .1s !important;
}
.delay2 {
	transition-delay: .2s !important;
}
.delay3 {
	transition-delay: .3s !important;
}
.delay4 {
	transition-delay: .4s !important;
}
.delay5 {
	transition-delay: .4s !important;
}
/* 上へふわっと */
.class_key.up {
	opacity: 0;
    transform: translateY(50px);
    transition: all .9s cubic-bezier(.25,1,.5,1);
}
.class_key.up.active {
	opacity: 1;
    transform: translateY(0);
}

/* 右へふわっと */
.class_key.left {
	opacity: 0;
    transform: translateX(-100px);
    transition: all .9s cubic-bezier(.25,1,.5,1);
}
.class_key.left.active {
	opacity: 1;
    transform: translateX(0);
}
@media screen and (max-width: 767px) {
	.class_key.left {
		transform: translateX(-30px);
	}
}

/* 左へふわっと */
.class_key.right,
.fv_content.class_key.fv_right::before,
.top_company_content.class_key.company_right::before {
	opacity: 0;
    transform: translateX(100px);
    transition: all .9s cubic-bezier(.25,1,.5,1);
}
.class_key.right.active,
.fv_content.class_key.fv_right.active::before,
.top_company_content.class_key.company_right.active::before {
	opacity: 1;
    transform: translateX(0);
}
@media screen and (max-width: 767px) {
	.class_key.right,
	.fv_content.class_key.fv_right::before,
	.top_company_content.class_key.company_right::before {
		transform: translateX(30px);
	}
}