@charset "UTF-8";
@import url("mod.css");

body {
	position: relative;
	overflow-x: hidden;
}
body:not(.home) {
	z-index: 1;
}
body:not(.home):not(.page-works):not(.page-advantage) {
	background-color: var(--color-bg);
}
body:not(.home)::before {
	content: '';
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/bg_deco01.png');
	background-repeat: repeat;
	background-position: center top;
	z-index: -1;
}
body.page-works::before {
	opacity: .5;
}
body.home::after {
	content: '';
	content: '';
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,.9);
	z-index: 100;
	opacity: 0;
	visibility: hidden;
	transition-timing-function: cubic-bezier(.7,0,.3,1);
	transition-duration: .7s;
	transition-property: opacity, visibility;
}
body.home.open-modal::after {
	opacity: 1;
	visibility: visible;
}



/* ------------------------------
   ヘッダー
--------------------------------- */
.header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 100;
	padding: 30px 40px;
	box-sizing: border-box;
	height: var(--h-header);
}
body:not(.home) {
	padding-top: var(--h-header);
}
.header::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-font-r);
	z-index: -1;
	/*
	box-shadow: 0 0 30px rgba(0,66,100,.05);
	*/
	opacity: 1;
	/*
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: opacity;
	*/
}
body.page-aboutChild .header::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-font-r);
	z-index: -1;
	box-shadow: 0 0 30px rgba(0,66,100,.05);
	opacity: 1;
}

body.home.js-header-r .header::after {
	opacity: 0;
	/*
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: opacity;
	*/
}



.header__inner {
	display: flex;
}
.h-logo {
	position :relative;
	flex-shrink: 0;
	z-index: 1;
}
body.home .h-logo .type-def {
	transition: ease-in .2s opacity;
}
body.home .h-logo .type-white {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
body:not(.home) .h-logo .type-white {
	display: none;
}
.h-nav {
	flex-grow: 1;
	display: flex;
	justify-content: flex-end;
}
.h-nav__pc {
	display: flex;
}
.wp-menu__global__container {
	display: flex;
}
#wp-menu__global {
	display: flex;
	gap: 27px;
}
#wp-menu__global li a[href="#"] {
	pointer-events: none;
}
#wp-menu__global > li {
	display: flex;
	position: relative;
}
#wp-menu__global > li > a {
	display: flex;
	align-items: center;
	position: relative;
	color: var(--color-font);
	transition: ease-in .2s color;
	font-weight: 700;
}
body.home:not(.js-header-r) #wp-menu__global > li > a {
	color: var(--color-font-r);
}
#wp-menu__global > li > a + ul {
	visibility: hidden;
	position: absolute;
	top: 55px;
	left: -90px;
	z-index: 1;
	padding: 40px 40px 50px;
	width: max-content;
	/*
	box-shadow: 0 0 20px rgba(0,100,145,.75);
	*/
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: visibility, opacity;
	opacity: 0;
}
#wp-menu__global > li > a + ul::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-image: var(--color-top-header-submenu-grad-main);
	mix-blend-mode: multiply;
}
#wp-menu__global > li > a + ul::after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
  background-image:
    linear-gradient( 180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) calc(100% - 1px), #a0b4bd calc(100% - 1px), #a0b4bd 100%);
  background-size: 100% 6px;
  line-height:2;
	opacity: 0.1;
	mix-blend-mode: multiply;
}
#wp-menu__global > li.menu-item-has-children > a {
	padding-right: 16px;
}
body.home.js-header-r #wp-menu__global > li > a:hover,
#wp-menu__global > li > a:hover {
	color: var(--color-header-menu-link-hover);
}
body.home:not(.js-header-r) #wp-menu__global > li > a:hover {
	color: var(--color-header-menu-link-hover-r);
}
#wp-menu__global > li.menu-item-has-children > a::before {
	content: '';
	position: absolute;
	width: 9px;
	border-top: solid 1.5px var(--color-main);
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
#wp-menu__global > li > a + ul > li + li {
	margin-top: 40px;
}
#wp-menu__global > li > a + ul > li > a {
	color: var(--color-font-r);
	opacity: .5;
	font-size: 30px;
}
#wp-menu__global > li > a + ul > li > a + ul > li + li {
	margin-top: 15px;
}
#wp-menu__global > li > a + ul > li > a + ul {
	padding-left: 1em;
	margin-top: 20px;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a {
	color: var(--color-font-r);
	font-size: 18px;
	position: relative;
	display: block;
	padding: 5px 115px 5px 0;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a[data-en]::after {
	content: attr(data-en);
	display: block;
	font-family: var(--font-en2);
	font-size: 9px;
	font-weight: 500;
	opacity: .3;
	padding-top: 2px;
	letter-spacing: .1em;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a > span::before {
	content: '';
	position: absolute;
	width: calc(100% - 115px);
	bottom: 0;
	left: 0;
	border-bottom: solid 1px var(--color-font-r);
}
#wp-menu__global > li > a + ul > li > a + ul > li > a > span::after {
	content: '';
	position: absolute;
	bottom: 5.5px;
	left: calc(100% - 115px - 2px);
	width: 22px;
	border-bottom: solid 1px var(--color-font-r);
	rotate: -30deg;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a > i {
	position: absolute;
	width: 8px;
	height: 8px;
	border: solid 1px var(--color-font-r);
	border-radius: 100vmin;
	right: 0;
	bottom: 7.5px;
	font-style: normal;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a > i::before {
	content: '';
	position: absolute;
	top: 2.5px;
	right: 6.5px;
	width: 89px;
	border-bottom: solid 1px var(--color-font-r);
}
#wp-menu__global > li > a + ul > li > a + ul > li > a > i::after {
	content: '';
	position: absolute;
	width: 22px;
	height: 22px;
	border: solid 1px var(--color-font-r);
	border-radius: 100vmin;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
	opacity: 0;
}
#wp-menu__global > li > a + ul > li > a + ul > li > a:hover > i {
	background-color: var(--color-font-r);
}
#wp-menu__global > li > a + ul > li > a + ul > li > a:hover > i::after {
	opacity: 1;
}
#wp-menu__global > li > a + ul:hover,
#wp-menu__global > li.menu-item-has-children > a:hover + ul {
	opacity: 1;
	visibility: visible;
}
#wp-menu__global > li.menu-item-has-children > a::after {
	content: '';
	position: absolute;
	height: 9px;
	border-right: solid 1.5px var(--color-main);
	right: 3.5px;
	top: 50%;
	transform: translateY(-50%);
}
#wp-menu__global > li.menu-item-has-children > a::after,
#wp-menu__global > li.menu-item-has-children > a::before {
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: border-color, opacity;
}
body.home:not(.js-header-r) #wp-menu__global > li.menu-item-has-children > a::after,
body.home:not(.js-header-r) #wp-menu__global > li.menu-item-has-children > a::before {
	border-color: var(--color-font-r);
}

#wp-menu__global > li > a:hover::after {
	opacity: 0;
}
body.home:not(.js-header-r) #wp-menu__global > li > a:hover::after,
body.home:not(.js-header-r) #wp-menu__global > li > a:hover::before {
	border-color: var(--color-header-menu-link-hover-r);
}

.h-button {
	display: flex;
	align-items: center;
	margin-left: 35px;
	width: 218px;
	flex-shrink: 0;
}
.h-button a {
	display: flex;
	align-items: center;
	width: 100%;
	color: var(--color-font);
	border-radius: 100vmin;
	overflow: hidden;
	padding: 20px 30px;
	font-size: 16px;
	position: relative;
	background-color: #fff;
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: color,background-color;
}
body.home:not(.js-header-r) .h-button a {
	background-color: rgba(0,0,0,.07);
	color: var(--color-font-r);
}
.h-button a::after,
.h-button a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 100vmin;
}
.h-button a::before {
	transition: ease-in .2s opacity;
	border: solid 1px var(--color-main);
}
body.home:not(.js-header-r) .h-button a::before {
	border-color: var(--color-font-r);
}
.h-button a::after {
	transition: ease-in .2s opacity;
	background: var(--color-bg-grad01);
	z-index: -1;
}
body.home.js-header-r .h-button a::after {
	transition-delay: .2s;
}
body.home:not(.js-header-r) .h-button a::after {
	opacity: 0;
}
.h-button a > i {
	font-style: normal;
	width: 13px;
	height: 11px;
	display: block;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}
.h-button a > i::after,
.h-button a > i::before {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 1;
	transition: ease-in .2s opacity;
}
.h-button a > i::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/header-i-tab01_blue.svg');
}
body.home:not(.js-header-r) .h-button a > i::before {
	opacity: 0;
}
.h-button a > i::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/header-i-tab01_w.svg');
	opacity: 0;
}
body.home:not(.js-header-r) .h-button a > i::after {
	opacity: 1;
}
.h-button a:hover {
	color: var(--color-font-r);
	background-color: rgba(255,255,255,0);
}
body.home:not(.js-header-r) .h-button a:hover {
	color: var(--color-font);
	background-color: rgba(255,255,255,1);
}
.h-button a:hover::before {
	opacity: 0;
}
.h-button a:hover > i::before {
	opacity: 0;
}
body.home:not(.js-header-r) .h-button a:hover > i::before {
	opacity: 1;
}
.h-button a:hover > i::after {
	opacity: 1;
}
body.home:not(.js-header-r)  .h-button a:hover > i::after {
	opacity: 0;
}
.h-nav__sp-inner {
	position: fixed;
	top: -100vh;
	left: 0;
	width: 100%;
	background-color: var(--color-font-r);
	transition: ease-in .2s top;
	z-index: -2;
	box-sizing: border-box;
	padding-top: calc(var(--h-header) + 20px);
}
.h-nav__sp-menu {
	overflow-y: scroll;
	max-height: calc(100vh - var(--h-header) - 20px);
	padding-bottom: 40px;
}
.h-nav__sp-inner .wp-menu__global__sp__container {
	padding-right: 30px;
	padding-left: 30px;
}
.h-nav__sp.active .h-nav__sp-inner {
	top: 0;
}
.h-nav-open {
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	display: block;
}
/*
.h-nav-open::before {
	content: 'Close';
	font-family: var(--font-en);
	font-size: 5px;
	color: var(--color-main);
	position: absolute;
	left: 0;
	bottom: -5px;
	width: 100%;
	text-align: center;
	opacity: 0;
}
*/
.h-nav__sp.active .h-nav-open::before {
	opacity: 1;
}
.h-nav-open i {
	position: absolute;
	left: 50%;
	width: 100%;
	border-top: solid 1px var(--color-main);
	top: 50%;
	transform: translate(-50%,-50%);
	transform-origin: left center;
	transition: ease-in .2s rotate;
}
.h-nav__sp.active .h-nav-open i {
	/*
	width: 22px;
	*/
	width: 27px;
}
.h-nav-open i:nth-of-type(1) {
	margin-top: -6px;
}
.h-nav-open i:nth-of-type(3) {
	margin-top: 6px;
}
.h-nav__sp.active .h-nav-open i:nth-of-type(1) {
	rotate: 225deg;
	margin-top: 0;
}
.h-nav__sp.active .h-nav-open i:nth-of-type(2) {
	display: none;
}
.h-nav__sp.active .h-nav-open i:nth-of-type(3) {
	rotate: -225deg;
	margin-top: 0;
}
#wp-menu__global__sp > li {
	border-bottom: solid .6px var(--color-gray);
}
#wp-menu__global__sp > li.menu-item-has-children {
	position: relative;
}
#wp-menu__global__sp > li.menu-item-has-children > i {
	position: absolute;
	right: 0;
	width: 30px;
	height: 30px;
	top: 20px;
	cursor: pointer;
}
#wp-menu__global__sp > li.menu-item-has-children > i::before {
	content: '';
	width: 14px;
	border-top: solid 1.5px var(--color-main);
	position: absolute;
	left: 50%;
	transform: translate(-50%,-50%);
	top: 50%;
	font-style: normal;
}
#wp-menu__global__sp > li.menu-item-has-children > i.open::after {
	opacity: 0;
}
#wp-menu__global__sp > li.menu-item-has-children > i::after {
	content: '';
	height: 14px;
	border-left: solid 1.5px var(--color-main);
	position: absolute;
	left: 50%;
	transform: translate(-50%,-50%);
	top: 50%;
	font-style: normal;
}
#wp-menu__global__sp > li > a {
	font-size: 16px;
	padding-top: 25px;
	padding-bottom: 25px;
	display: block;
}
#wp-menu__global__sp > li.menu-item-has-children > a {
	width: calc(100% - 30px);
}
#wp-menu__global__sp > li > a[data-en]::after {
	content: attr(data-en);
	font-family: var(--font-en);
	font-size: 8px;
	color: var(--color-main);
	padding-left: 1em;
	font-weight: 500;
}
#wp-menu__global__sp > li > ul {
	margin-top: 5px;
	margin-bottom: 45px;
}
#wp-menu__global__sp > li i:not(.open) + a + ul {
	display: none;
}
#wp-menu__global__sp > li > ul > li > a {
	padding-left: 25px;
	position: relative;
}
#wp-menu__global__sp > li > ul > li > a::before {
	content: '';
	position: absolute;
	left: 7px;
	top: 5px;
	width: 6px;
	height: 6px;
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/header-i-arrow01_blue.svg');
}
#wp-menu__global__sp > li > ul > li + li {
	margin-top: 25px;
}
.h-nav__sp-inner .wp-menu__global-sub__sp__container {
	padding-right: 30px;
	padding-left: 30px;
}
#wp-menu__global-sub__sp > li {
	margin-top: 25px;
}
#wp-menu__global-sub__sp > li > a {
	/*
	padding-left: 25px;
	*/
	position: relative;
	font-size: 14px;
}
/*
#wp-menu__global-sub__sp > li > a::before {
	content: '';
	position: absolute;
	left: 7px;
	top: 5px;
	width: 9px;
	height: 5px;
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/header-i-arrow02.svg');
}
*/
.h-sp-button {
	font-size: 16px;
	margin-top: 70px;
}
.h-sp-button.link-button a {
	padding-top: 20px;
	padding-bottom: 20px;
	width: 250px;
	margin-inline: auto;
}
.h-sp-button.link-button a > i {
	bottom: 18px;
}
@media (min-width: 1140px) {
	.h-nav__sp {
		display: none !important;
	}
		body.home:not(.js-header-r) .header::before {
		opacity: 0;
	}
	body.home:not(.js-header-r) .header::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
		/*
		background: var(--color-top-header-grad);
		*/
	}
	body.home:not(.js-header-r) .h-logo .type-def {
		opacity: 0;
	}
}
@media (max-width: 1139px) {
	.h-nav__pc {
		display: none !important;
	}
	.h-button {
		display: none !important;
	}
	.header {
		padding: 17px 15px;
	}
	.h-logo {
		max-width: 145px;
	}
}
@media (max-width: 767px) {
	.h-nav__sp-inner {
		height: 100vh;
	}
	.h-nav__sp-inner .wp-menu__global__sp__container {
		padding-right: calc(var(--side-margin) * 2);
		padding-left: calc(var(--side-margin) * 2);
	}
	#wp-menu__global__sp > li > a {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	#wp-menu__global-sub__sp > li > a {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
		/*
		padding-left: calc(100vmin * 25 / var(--sp-font-vw));
		*/
	}
	#wp-menu__global__sp > li > a[data-en]::after {
		font-size: calc(100vmin * 8 / var(--sp-font-vw));
	}
	#wp-menu__global__sp > li.menu-item-has-children > a {
		width: calc(100% - calc(100vmin * 30 / var(--sp-font-vw)));
	}
	#wp-menu__global__sp > li.menu-item-has-children > i {
	width: calc(100vmin * 30 / var(--sp-font-vw));
	height: calc(100vmin * 30 / var(--sp-font-vw));
	top: calc((100vmin * -5 / var(--sp-font-vw)) + 25px);
}
	#wp-menu__global__sp > li.menu-item-has-children > i::before {
		width: calc(100vmin * 14 / var(--sp-font-vw));
	}
	#wp-menu__global__sp > li.menu-item-has-children > i::after {
		height: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.h-nav__sp-inner .wp-menu__global-sub__sp__container {
		padding-right: calc(var(--side-margin) * 2);
		padding-left: calc(var(--side-margin) * 2);
	}
	.h-sp-button {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	.h-sp-button.link-button a {
		width: calc(100vmin * 250 / var(--sp-font-vw));
	}
	.h-sp-button.link-button a > i {
		bottom: 30%;
	}
}


/* ------------------------------
   フッター
--------------------------------- */

.footer {
	position: relative;
	z-index: 2;
}
.footer__inner {
	color: var(--color-footer-font);
	background-color: var(--color-footer-bg);
	padding-bottom: 20px;
}
.footer__content {
	padding-top: 120px;
	padding-bottom: 170px;
	display: flex;
}
.footer__content .footer__content-item:first-of-type {
	flex-shrink: 0;
	flex-grow: 1;
}
.footer__copyright {
	text-align: center;
	font-size: 12px;
}
.f-tel {
	margin-top: 50px;
	line-height: 1.4;
}
.f-address {
	margin-top: 40px;
	line-height: 1.4;
}
.f-map {
	max-width: 360px;
	margin-top: 15px;
}
.f-map__inner {
	overflow: hidden;
	border-radius: 5px;
	object-fit: cover;
	aspect-ratio: 4 / 2;
	position: relative;
}
.f-map iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.f-map-link {
	margin-top: 20px;
	font-weight: 700;
}
.f-map-link a {
	display: block;
	max-width: 207px;
	color: var(--color-font-r);
	border: solid 1px var(--color-font-r);
	border-radius: 100vmin;
	padding: 20px 30px;
	font-size: 11px;
	position: relative;
}
.f-map-link a::after,
.f-map-link a::before {
	content: '';
	width: 10px;
	height: 9px;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}
.f-map-link a::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/footer-i-tab01_w.svg');
}
.f-map-link a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/footer-i-tab01.svg');
	opacity: 0;
}
.f-map-link a:hover {
	background-color: var(--color-font-r);
	color: var(--color-font);
}
.f-map-link a:hover::after {
	opacity: 1;
}
.f-nav {
	margin-top: 100px;
}
.f-nav__menu {
	display: grid;
	grid-template-areas: "nav01 nav01 nav01"
		"nav02 nav03 nav04";
	gap: 50px 90px;
}
.f-nav__menu .f-nav-item01 {
	grid-area: nav01;
}
.f-nav__menu .f-nav-item02 {
	grid-area: nav02;
}
.f-nav__menu .f-nav-item03 {
	grid-area: nav03;
}
.f-nav__menu .f-nav-item04 {
	grid-area: nav04;
}
.wp-menu__footer-nav__container > ul > li + li {
	margin-top: 50px;
}
.wp-menu__footer-nav__container > ul > li > a {
	font-size: 16px;
}
.wp-menu__footer-nav__container > ul > li > a + ul {
	padding-left: .8em;
	margin-top: 15px;
}
.wp-menu__footer-nav__container > ul > li > a + ul > li:not(:first-of-type) {
	margin-top: 20px;
}
.wp-menu__footer-nav__container > ul > li > a + ul > li > a {
	color: var(--color-footer-submenu);
	font-size: 14px;
	position: relative;
}
.wp-menu__footer-nav__container > ul > li > a + ul > li > a[target="_blank"]::before {
	content: '';
	width: 10px;
	height: 9px;
	position: absolute;
	right: -15px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/footer-i-tab01_gray.svg');
	z-index: 1;
}
@media (max-width: 1099px) {
	.f-nav {
		margin-left: 40px;
	}
	.f-nav__menu {
	grid-template-areas: "nav01 nav01"
		"nav02 nav03"
		"nav02 nav04";
		gap: 40px 50px;
		grid-template-rows: auto auto 1fr;
	}
}
@media (max-width: 767px) {
	.footer__content {
		flex-direction: column;
		padding-top: 110px;
		padding-bottom: calc(100vmin * 200 / var(--sp-font-vw));
		max-width: calc(var(--con-w) + var(--side-margin) * 4);
		    padding-right: calc(var(--side-margin) * 2);
    padding-left: calc(var(--side-margin) * 2);
	}
	.f-logo {
		max-width: calc(100vmin * 170 / var(--sp-font-vw));
		margin-inline: auto;
	}
	.f-logo img {
		max-width: none;
		width: 100%;
	}
	.footer__copyright {
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
	}
	.f-map {
		max-width: calc(100vmin * 302 / var(--sp-font-vw));
		margin-top: 15px;
		margin-inline: auto;
	}
	.f-map-link a {
		margin-inline: auto;
	}
	.f-nav {
		position: relative;
		padding-top: 50px;
		margin-top: 70px;
		margin-left: 0;
	}
	.f-nav::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		border-top: solid .5px;
		opacity: .5;
	}
	.f-nav__menu {
		gap: 40px calc(100vmin * 50 / var(--sp-font-vw));
	}
	.f-tel,
	.f-address {
		font-size: calc(100vmin * 13 / var(--sp-font-vw));
		text-align: center;
	}
	.wp-menu__footer-nav__container > ul > li > a {
		font-size: calc(100vmin * 13 / var(--sp-font-vw));
	}
	.wp-menu__footer-nav__container > ul > li > a + ul > li > a {
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
	}
	.wp-menu__footer-nav__container > ul > li + li {
	margin-top: 35px;
	}
.wp-menu__footer-nav__container > ul > li > a + ul > li:not(:first-of-type) {
	margin-top: 17px;
	}
}



/* ------------------------------
   TOP
--------------------------------- */

/* top-mv */
.top-mv {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
.top-mv__inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 1;
	height: 100%;
}
.top-mv__news {
	position: absolute;
	bottom: 60px;
	max-width: 815px;
	width: 100%;
}
.top-mv__news-link {
	height: 74px;
	display: flex;
	border-radius: 0 100vmin 100vmin 0;
	align-items: center;
	overflow: hidden;
	position: relative;
	z-index: 1;
	color: var(--color-font-r);
	padding-left: 80px;
	padding-right: 60px;
}
.top-mv__news-link::after,
.top-mv__news-link::before {
	content: '';
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	/*
	transition: ease-in .2s opacity;
	*/
}
.top-mv__news-link::before {
	background-image: var(--color-top-mv-news-grad);
	opacity: .9;
}
.top-mv__news-link::after {
	background-image: var(--color-top-mv-news-grad-hover);
	opacity: 0;
}
.top-mv__news-link:hover::before {
	opacity: 0;
}
.top-mv__news-link:hover::after {
	opacity: .9;
}
.top-mv__news-point {
	font-family: var(--font-en);
	font-size: 16px;
	width: 74px;
	flex-shrink: 0;
	color: var(--color-main-dark04);
}
.top-mv__news-date {
	font-size: 13px;
	margin-right: 32px;
	width: 90px;
	flex-shrink: 0;
}
.top-mv__news-title {
	flex-grow: 1;
	font-weight: 700;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.top-mv__news-link > i {
	font-style: normal;
	display: block;
	position: absolute;
	width: 15px;
	height: 8px;
	right: 35px;
	top: 50%;
	transform: translateY(-50%);
}
.top-mv__news-link > i::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
	transition: ease-in .2s right;
	background-image:  url('/wp-content/themes/chusoku-thema/assets/images/top/top-mv_arrow01_w.svg');
}
.top-mv__news-link:hover > i::after {
	right: -15px;
}
.top-mv__deco-scroll {
	font-family: var(--font-en);
	font-size: 16px;
	letter-spacing: .1em;
	position: absolute;
	top: calc(100vh - 158px);
	right: 50px;
	writing-mode: sideways-rl;
	color: var(--color-font-r);
	height: 158px;
	padding-left: 5px;
}
.top-mv__deco-scroll-bar {
	position: absolute;
	font-style: normal;
	left: 0;
	width: 1px;
	bottom: 0;
	height: 100%;
	overflow: hidden;
}
.top-mv__deco-scroll-bar::before {
	content: '';
	position: absolute;
	width: 1px;
	height: 30%;
	top: 0;
	left: 0;
	background-color: var(--color-font-r);
	animation: kf_top-mv__deco-scroll-bar 2s ease-in-out infinite;
}
@keyframes kf_top-mv__deco-scroll-bar {
  0% {
    height: 0;
    top: 0;
  }
  30% {
    height: 100%;
  }
  100% {
    top: 100%;
  }
}
.top-mv__bg {
	overflow: hidden;
	position: relative;
	padding-top: 50vh;
	padding-bottom: 50vh;
	z-index: -1;
}
.top-mv-sp__bg {
	overflow: hidden;
	position: relative;
	height: 100lvh;
	z-index: -1;
	max-height: 1200px;
}
/*
.top-mv__bg img {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
}
*/
.top-mv-sp__bg video,
.top-mv__bg video {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.top-mv__bg video {
	object-position: center left;
}
.top-mv-sp__bg video {
	object-position: center 45%;
}
@media (min-width: 768px) {
	.top-mv-sp__bg {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-mv__bg {
		display: none !important;
	}
	.top-mv__news {
		bottom: 14px;
		max-width: none;
		padding-right: var(--side-margin);
		padding-left: var(--side-margin);
	}
	.top-mv__news-link {
		border-radius: 9px;
		padding-left: 18px;
		display: grid;
		grid-template-areas: "point date"
			"point title";
		grid-template-columns: calc(100vmin * 45 / var(--sp-font-vw)) 1fr;
		align-content: center;
		gap: 6px 0;
		padding-right: 44px;
		height: calc(100vmin * 61 / var(--sp-font-vw));
	}
	.top-mv__news-point {
		font-size: calc(100vmin * 11 / var(--sp-font-vw));
		width: auto;
		grid-area: point;
	}
	.top-mv__news-date {
		grid-area: date;
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
	}
	.top-mv__news-title {
		grid-area: title;
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
	}
	.top-mv__news-link > i {
		right: 14px;
	}
	.top-mv__deco-scroll {
		display: none;
	}
}



.top-contents {
	margin-top: 100vh;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.top-bg-grad {
	background-image: var(--color-top-bg);
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 640px;
	z-index: -1;
}
.top-bg-color {
	background-color: var(--color-font-r);
	position: absolute;
	left: 0;
	top: 640px;
	height: calc(100% - 640px);
	width: 100%;
	z-index: -1;
}
.top-bg-image {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/bg_deco01.png');
	mix-blend-mode: multiply;
	background-repeat: repeat;
	background-position: center top;
	visibility: hidden;
	opacity: 0;
}
.top-bg-movie {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	mix-blend-mode: multiply;
	visibility: hidden;
	opacity: 0;
}
.top-bg-movie video {
	width: 1920px;
	height: 1080px;
}
body.js-open-bg .top-bg-movie,
body.js-open-bg .top-bg-image {
	transition-timing-function: ease-in-out;
	transition-duration: .2s;
	transition-property: opacity, visibility;
	visibility: visible;
}
body.js-open-bg .top-bg-movie {
	opacity: .5;
}
body.js-open-bg .top-bg-image {
	opacity: .5;
}
@media (min-width: 1920px) {
	.top-bg-movie video {
		width: 100%;
		height: auto;
	}
}

[data-top-content] {
	position: relative;
}


/* top-solution */
.top-solution {
	padding-top: 440px;
}
.top-solution__inner {
	padding-top: 500px;
	position: relative;
	overflow: hidden;
	padding-bottom: 270px;
}
.top-solution__animation-top {
	position: absolute;
	top: calc(100vh - 200px);
	right: -80px;
	mix-blend-mode: multiply;
	opacity: .5;
}
.top-solution__animation-bottom {
	position: absolute;
	bottom: -80px;
	left: 0;
	mix-blend-mode: multiply;
	opacity: .5;
}
.top-solution__header {
	position: relative;
	z-index: 1;
}
.top-solution__main {
	margin-top: 70px;
	position: relative;
	z-index: 1;
}
.top-solution__links > ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 50px;
}
.top-solution__links > ul > li {
	opacity: 0;
	transition-timing-function: ease-in-out;
	transition-duration: .5s;
	transition-property: opacity, transform;
	transform: translateY(40px);
}
.top-solution__links[data-scroll-action="true"] > ul > li {
	opacity: 1;
	transform: translateY(0);
}
.top-solution__links > ul > li:nth-of-type(2) {
	transition-delay: .2s;
}
.top-solution__links > ul > li:nth-of-type(3) {
	transition-delay: .4s;
}
.top-solution__links > ul > li:nth-of-type(4) {
	transition-delay: .6s;
}
.top-solution__links > ul li:nth-of-type(odd) {
	margin-top: 100px;
}
.top-solution__links-image-wrap {
	position: relative;
	z-index: 1;
	display: block;
}
.top-solution__links-image-wrap::before {
	content: '';
	width: calc(100% + 20px * 2);
	height: calc(100% + 8px * 2);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	border-top: solid 1px var(--color-top-solution-links-border);
	border-bottom: solid 1px var(--color-top-solution-links-border);
	z-index: -1;
}
.top-solution__links-image-wrap::after {
	content: '';
	width: calc(100% + 8px * 2);
	height: calc(100% + 20px * 2);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	border-right: solid 1px var(--color-top-solution-links-border);
	border-left: solid 1px var(--color-top-solution-links-border);
	z-index: -1;
}
.top-solution__links-image-wrap a {
	display: block;
	overflow: hidden;
	position: relative;
}
.top-solution__links-image-wrap a::after,
.top-solution__links-image-wrap a::before {
	content: '';
	width: 67px;
	height: 27px;
	display: block;
	position: absolute;
	right: 17px;
	bottom: 13px;
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
}
.top-solution__links-image-wrap a::before {
	border: solid 1.5px var(--color-font-r);
	border-radius: 100vmin;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
}
.top-solution__links-image-wrap a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01.svg');
	opacity: 0;
}
.top-solution__links-image-wrap a:hover::before {
	background-color: #fff;
}
.top-solution__links-image-wrap a:hover::after {
	opacity: 1;
}
.top-solution__links-image-wrap a img  {
	transition: ease-in .2s scale;
}
.top-solution__links figure:hover .top-solution__links-image-wrap a img {
	scale: 1.12;
}
.top-solution__links figcaption {
	font-size: 27px;
	margin-top: 30px;
}
.top-solution__links figcaption small {
	font-size: 18px;
}
.top-solution__service-lists {
	margin-top: 50px;
}
.top-solution__service-lists > ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 11px 48px;
}
.top-solution__service-lists > ul > li {
	display: flex;
}
.top-solution__service-lists > ul > li > button {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 30px 40px;
	border: solid 1px var(--color-top-solution-service-border);
	border-radius: 10px;
	background-color: var(--color-font-r);
	position: relative;
	cursor: pointer;
	font-size: 18px;
}
.top-solution__service-lists > ul > li > button::after,
.top-solution__service-lists > ul > li > button::before {
	content: '';
	width: 18px;
	height: 15px;
	display: block;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}
.top-solution__service-lists > ul > li > button::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top-solution_service-deco01.svg');
}
.top-solution__service-lists > ul > li > button::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top-solution_service-deco01_w.svg');
	opacity: 0;
}
.top-solution__service-lists > ul > li > button:hover {
	background-color: var(--color-top-solution-service-border);
	color: var(--color-font-r);
}
.top-solution__service-lists > ul > li > button:hover::after {
	opacity: 1;
}
.top-solution__service-lists > ul > li > button .type-def {
	position: relative;
	z-index: 1;
}
.top-solution__service-lists > ul > li > button .type-hover {
	position: absolute;
	left: 40px;
	top: 50%;
	transform: translateY(-50%);
}
.top-solution__service-lists > ul > li > button:hover .type-def {
	opacity: 0;
}
.top-solution__service-title {
	font-size: 40px;
	margin-top: 170px;
}
.top-solution__service-data {
	position: relative;
	z-index: 1;
	padding: 60px 40px 90px;
	background-color: #fff;
}
.top-solution__service-data::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
  background-image:
    linear-gradient( 180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) calc(100% - 1px), #f5f5f5 calc(100% - 1px), #f5f5f5 100%);
  background-size: 100% 6px;
  line-height:2;
}
.top-solution__service-data-box {
	display: grid;
	gap: 50px 20px;
	grid-template-areas: "image title"
		"image desc";
	grid-template-rows: auto 1fr;
	grid-template-columns: repeat(2, 1fr);
}
.top-solution__service-data-title {
	grid-area: title;
	font-size: 35px;
	color: var(--color-main);
	max-width: 490px;
}
.top-solution__service-data-title::before {
	content: attr(data-en);
	font-family: var(--font-en);
	color: #bfbfbf;
	display: block;
	font-size: 10px;
	font-weight: 500;
	margin-bottom: 10px;
}
.top-solution__service-data-image {
	grid-area: image;
	place-self: center;
}
.top-solution__service-data-desc {
	grid-area: desc;
	max-width: 490px;
}
.top-solution__service-data-deco i {
	position: absolute;
	font-style: normal;
	display: block;
}
.top-solution__service-data-deco i:nth-of-type(-n+4) {
	width: 10px;
	height: 9px;
}
.top-solution__service-data-deco i:nth-of-type(1) {
	top: 18px;
	left: 21px;
	border-top: solid 2px;
	border-left: solid 2px;
}
.top-solution__service-data-deco i:nth-of-type(2) {
	top: 18px;
	right: 21px;
	border-top: solid 2px;
	border-right: solid 2px;
}
.top-solution__service-data-deco i:nth-of-type(3) {
	bottom: 18px;
	left: 21px;
	border-bottom: solid 2px;
	border-left: solid 2px;
}
.top-solution__service-data-deco i:nth-of-type(4) {
	bottom: 18px;
	right: 21px;
	border-bottom: solid 2px;
	border-right: solid 2px;
}
.top-solution__service-data-deco i:nth-of-type(5) {
	bottom: 60px;
	left: 21px;
	height: calc(50% - 60px - 15px);
	border-left: solid 2px;
}
.top-solution__service-data-deco i:nth-of-type(6) {
	top: 60px;
	right: 21px;
	height: calc(50% - 60px - 15px);
	border-right: solid 2px;
}
.top-solution__service-data-close {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 100%;
	color: var(--color-font-r);
	text-align: center;
	font-family: var(--font-en);
	margin-top: 35px;
}
.top-solution__service-data-close span {
	display: block;
	margin-bottom: 20px;
	opacity: .5;
}
.top-solution__service__button {
	margin-top: 65px;
	display: flex;
	justify-content: center;
}
@media (min-width: 1500px) {
	.top-solution__headline .type-md {
		display: none !important;
	}
}
@media (max-width: 1499px) {
	.top-solution__headline .type-pc {
		display: none !important;
	}
	.top-solution__headline {
		text-align: center;
	}
	.top-solution__links {
		max-width: 800px;
		margin-inline: auto;
	}
	.top-solution__links > ul {
		grid-template-columns: repeat(2, 1fr);
	}
	.top-solution__service-lists > ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px 8px;
	}
	.js-service-modal-target {
		max-width: 900px !important;
	}
	.iziModal-navigate>button.iziModal-navigate-next,
	.iziModal-navigate>button.iziModal-navigate-prev {
		transform: none;
	}
}
@media (max-width: 900px) {
	.top-solution__service-lists > ul {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px 8px;
	}
	.js-service-modal-target {
		max-width: 600px !important;
	}
	.iziModal-navigate>button.iziModal-navigate-next,
	.iziModal-navigate>button.iziModal-navigate-prev {
		background-size: 15px auto !important;
		transform: translateX(40px);
	}
}
@media (min-width: 768px) {
	.top-solution__headline .type-sp {
		display: none !important;
	}
	.top-solution__service-title .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-solution__headline .type-pc {
		display: none !important;
	}
	.top-solution__headline .type-md {
		display: none !important;
	}
	.top-solution__service-title .type-pc {
		display: none !important;
	}
	.top-solution__inner {
		position: relative;
		overflow: hidden;
		padding-bottom: calc(100vmin * 270 / var(--sp-font-vw));
		padding-top: calc(170px + (100vmin * 376 / var(--sp-font-vw) ) );
	}
	.top-solution__main {
		margin-top: 60px;
	}
	.top-solution__animation-top {
		top: 740px;
		left: calc(100vmin * 100 / var(--sp-font-vw) );
		right: auto;
	}
	.top-solution__animation-top video {
		max-width: calc(100vmin * 500 / var(--sp-font-vw) );
	}
	.top-solution__animation-bottom {
		bottom: calc(100vmin * 66 / var(--sp-font-vw) * -1);
		left: 0;
	}
	.top-solution__animation-bottom video {
		max-width: calc(100vmin * 310 / var(--sp-font-vw) );
	}
	.top-solution__links {
		padding-right: var(--side-margin);
        padding-left: var(--side-margin);
	}
	.top-solution__links > ul {
		gap: calc(100vmin * 10 / var(--sp-font-vw)) calc(100vmin * 22 / var(--sp-font-vw));
	}
	.top-solution__links > ul li:nth-of-type(odd) {
		margin-top: calc(100vmin * 35 / var(--sp-font-vw));
	}
	.top-solution__links-image-wrap::before {
		width: calc(100% + calc(100vmin * 12 / var(--sp-font-vw)) * 2);
		height: calc(100% + calc(100vmin * 5 / var(--sp-font-vw)) * 2);
	}
	.top-solution__links-image-wrap::after {
		width: calc(100% + calc(100vmin * 5 / var(--sp-font-vw)) * 2);
		height: calc(100% + calc(100vmin * 12 / var(--sp-font-vw)) * 2);
	}
	.top-solution__links figcaption {
		margin-top: calc(100vmin * 16 / var(--sp-font-vw));
		text-align: center;
	}
	.top-solution__service-title {
		margin-top: 135px;
		text-align: center;
	}
	.js-service-modal-target {
		padding-right: calc(var(--side-margin) * 2);
		padding-left: calc(var(--side-margin) * 2);
		padding-top: calc(100vmin * 45 / var(--sp-font-vw));
		padding-bottom: calc(100vmin * 40 / var(--sp-font-vw));
		max-width: 100% !important;
		height: 100% !important;
	}
	.iziModal .iziModal-content {
		width: 100%;
		height: 70vh;
    	overflow-y: scroll;
	}
	.top-solution__service-lists > ul {
		gap: calc(100vmin * 10 / var(--sp-font-vw)) calc(100vmin * 6 / var(--sp-font-vw));
	}
	.top-solution__service-lists > ul > li > button {
		padding: calc(100vmin * 18 / var(--sp-font-vw)) calc(100vmin * 12 / var(--sp-font-vw));
	}
	.top-solution__service-lists > ul > li > button img {
		width: calc(100vmin * 100 / var(--sp-font-vw));
	}
	.top-solution__service-lists > ul > li > button::after,
	.top-solution__service-lists > ul > li > button::before {
    width: calc(100vmin * 11 / var(--sp-font-vw));
    height: calc(100vmin * 9 / var(--sp-font-vw));
    right: calc(100vmin * 15 / var(--sp-font-vw));
	}
    .top-solution__service-lists > ul > li > button .type-hover {
			left: calc(100vmin * 12 / var(--sp-font-vw));
	}
	.top-solution__service__button {
		margin-top: 55px;
	}
	.top-solution__service-data-close {
		width: calc(100vmin * 31 / var(--sp-font-vw));
		margin-top: 0;
		font-size: calc(100vmin * 8 / var(--sp-font-vw));
		top: 72vh;
	}
	.top-solution__service-data-close span {
		margin-bottom: 1vh;
	}
	.top-solution__service-data-box {
    gap: calc(100vmin * 20 / var(--sp-font-vw));
    grid-template-areas:
        "image"
				"title"
        "desc";
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
	}
	.top-solution__service-data-image {
		width: 70%;
	}
	.top-solution__service-data-deco i:nth-of-type(5),
	.top-solution__service-data-deco i:nth-of-type(6) {
		display: none;
	}
	.iziModal-navigate {
		z-index: 1001 !important;
	}
	.iziModal-navigate>button.iziModal-navigate-next,
	.iziModal-navigate>button.iziModal-navigate-prev {
		background-size: calc(100vmin * 15 / var(--sp-font-vw)) auto !important;
		transform: translateX(3vw);
		background-position: center center !important;
	}
	.top-solution__service-data-title {
		font-size: calc(100vmin * 26 / var(--sp-font-vw));
		text-align: center;
	}
	.top-solution__service-data-title::before {
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
	}
}



/* top-works */
.top-works {
	color: var(--color-font-r);
}
.top-works::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-image: var(--color-bg-grad01);
	mix-blend-mode: multiply;
}
.top-works__inner {
	padding-top: 160px;
	position: relative;
	padding-bottom: 90px;
}
.top-works__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
.top-works__main {
	position: relative;
	z-index: 2;
}
.top-works__description {
	margin-top: 63px;
}
.top-works__performance {
	margin-top: 70px;
}
.top-works__performance ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 55px;
}
.top-works__performance ul li {
	background-color: var(--color-font-r);
	color: var(--color-font);
	padding: 70px 50px;
	font-size: 35px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-radius: 15px;
	box-shadow: 0 0 30px rgba(0,0,0,.25);
}
.top-works__performance ul li data {
	letter-spacing: .1em;
}
.top-works__performance ul li data::after {
	content: attr(data-en);
	font-size: 13px;
	color: var(--color-top-works-performance-en-title);
	display: block;
	padding-top: 10px;
	letter-spacing: 0;
}
.top-works__performance ul li strong {
	color: var(--color-main);
	position: relative;
}
.top-works__performance ul li strong .type-val-set,
.top-works__performance ul li strong .type-val {
	font-size: 130px;
	font-family: var(--font-num);
	font-weight: 400;
}
.top-works__performance ul li strong .type-val {
	visibility: hidden;
	display: none;
}
.top-works__performance ul li strong small {
	font-size: 40px;
	font-weight: 400;
}
.top-works__button {
	margin-top: 65px;
	display: flex;
	justify-content: center;
}
.top-works__slider {
	overflow: hidden;
	position: relative;
	z-index: 2;
}
@keyframes kf_top-works__slider {
  from {
	  transform: translateX(0);
  }
  to {
	  /* 400px(imgW) * 5(枚数) */
	  transform: translateX(calc(-400px * 5));
  }
}
.top-works__slider-inner {
		overflow: hidden;
		display: flex;
    align-items: center;
    width: max-content;
    animation-name: kf_top-works__slider;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-duration: calc(4s * 5);
}
.top-works__slide-item {
	width: 400px;
}
.top-works__slide-item img {
	pointer-events: none;
}
.top-works-sp__slider {
	overflow: hidden;
	position: relative;
	z-index: 2;
	width: 100%;
	margin-top: 45px;
}
@keyframes kf_top-works-sp__slider {
  from {
	  transform: translateX(0);
  }
  to {
	  /* 180px(imgW) * 5(枚数) */
	  transform: translateX(calc((100vmin * 180 / var(--sp-font-vw) * -1) * 5));
  }
}
.top-works-sp__slider-inner {
		overflow: hidden;
		display: flex;
    align-items: center;
    width: max-content;
    animation-name: kf_top-works-sp__slider;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-duration: calc(4s * 5);
}
.top-works-sp__slide-item {
	width: calc(100vmin * 180 / var(--sp-font-vw));
}
.top-works-sp__slide-item img {
	pointer-events: none;
}
@media (max-width: 1400px) {
	.top-works__performance ul {
		grid-template-columns: 1fr;
		gap: 22px;
	}
	.top-works__performance {
		max-width: 700px;
		margin-inline: auto;
	}
}
@media (min-width: 768px) {
	.top-works__headline .type-sp {
		display: none !important;
	}
	.top-works-sp__slider {
		display: none !important;
	}
	.top-works__description .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-works__headline .type-pc {
		display: none !important;
	}
	.top-works__slider {
		display: none !important;
	}
	.top-works__inner {
		padding-top: 90px;
	}
	.top-works__header {
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
	.top-works__description p {
		text-align: center;
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.top-works__performance {
		margin-top: 45px;
	}
	.top-works__performance ul li {
		    padding: calc(100vmin * 30 / var(--sp-font-vw)) calc(100vmin * 14 / var(--sp-font-vw));
	}
	.top-works__performance ul li {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	.top-works__performance ul li data::after {
		font-size: calc(100vmin * 7 / var(--sp-font-vw));
		padding-top: 4px;
	}
	.top-works__performance ul li strong .type-val-set,
	.top-works__performance ul li strong .type-val {
		font-size: calc(100vmin * 61 / var(--sp-font-vw));
	}
	.top-works__performance ul li strong small {
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.top-works__button {
		margin-top: 55px;
	}
}




/* top-strong */
.top-strong {
	margin-top: 220px;
}
.top-strong__inner {
	position: relative;
	z-index: 2;
}
.top-strong__main {
	display: grid;
	/*
	gap: 100px 20px;
	*/
	grid-template-areas: "title image"
		"desc image"
		"button image";
	justify-content: flex-start;
	align-content: flex-start;
	grid-template-rows: 192px 217px 1fr;
	grid-template-columns: minmax(480px, 43.5%) 1fr;
}
.top-strong__headline {
	grid-area: title;
}
.top-strong__desc {
	grid-area: desc;
}
.top-strong__image {
	position: relative;
}
.top-strong__button {
	grid-area: button;
}
@keyframes kf_top-strong__image {
  from {
	  opacity: 0;
  }
  to {
	  opacity: 1;
  }
}
.top-strong__image img {
	opacity: 0;
	animation-timing-function: ease-in;
	animation-fill-mode: forwards;
	animation-duration: .2s;
}
[data-scroll-action="true"] .top-strong__image img {
	animation-name: kf_top-strong__image;
}
.top-strong__image img:not(:first-of-type) {
	position: absolute;
	left: 0;
	top: 0;
}
.top-strong__image img:nth-of-type(2) {
	animation-delay: .4s;
}
.top-strong__image img:nth-of-type(3) {
	animation-delay: .55s;
}
.top-strong__image img:nth-of-type(4) {
	animation-delay: .7s;
}
.top-strong__image img:nth-of-type(5) {
	animation-delay: .85s;
}
.top-strong__image img:nth-of-type(6) {
	animation-delay: 1s;
}
@media (min-width: 1080px) {
	.top-strong__headline .type-md {
		display: none !important;
	}
}
@media (max-width: 1079px) {
	.top-strong__headline .type-pc {
		display: none !important;
	}
	.top-strong__main {
		grid-template-areas: "title"
			"desc"
			"image"
			"button";
		justify-content: flex-start;
		align-content: flex-start;
		grid-template-rows: 1fr;
		grid-template-columns: 1fr;
		justify-items: center;
	}
	.top-strong__desc {
		margin-top: 75px;
		margin-bottom: 45px;
		text-align: center;
	}
}
@media (min-width: 768px) {
	.top-strong__headline .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-strong__headline .type-pc {
		display: none !important;
	}
	.top-strong__headline .type-md {
		display: none !important;
	}
	.top-strong {
		margin-top: 140px;
	}
	.top-strong__headline {
		justify-self: center;
	}
	.top-strong__button {
		margin-top: 50px;
	}
}


/* top-company */
.top-company {
	margin-top: 350px;
	/*
	counter-reset: cnt_top-company;
	*/
}
.top-company__inner {
	position: relative;
	z-index: 2;
}
.top-company__slider {
	display: grid;
	grid-template-columns: 1fr 560px;
	margin-top: 80px;
	gap: 40px;
}
.top-company__slider .top-company__slider-box:last-of-type {
	order: -1;
}
.top-company__slider-swiper {
	border-radius: 20px;
}
.top-company__slider-swiper-thum .swiper-wrapper {
	flex-direction: column;
}
.top-company__slider-swiper-thum .swiper-slide {
	width: 100% !important;
	max-width: 610px;
}
.top-company__list {
	border-top: solid 1px var(--color-top-company-list-border);
	width: 100%;
	/*
	counter-increment: cnt_top-company;
	*/
}
.top-company__slider-swiper-thum .swiper-slide:last-of-type .top-company__list {
	border-bottom: solid 1px var(--color-top-company-list-border);
} 
.top-company__list a {
	display: block;
	padding: 40px 80px 40px 20px;
	position: relative;
	z-index: 1;
}
.top-company__list a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background-color: var(--color-top-company-list-hover-bg);
	transition: ease-in .2s width;
	width: 0px;
	z-index: -1;
}
.top-company__list a:hover::before {
	width: 100%;
}
.top-company__list a > i {
	font-style: normal;
	width: 62px;
	height: 24px;
	display: block;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 100vmin;
	box-sizing: border-box;
	background: var(--color-bg-grad01);
}
.top-company__list a > i::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 1;
	transition: ease-in .2s right;
}
.top-company__list a > i::after {
	background-image:  url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
}
.top-company__list a:hover > i::after {
	right: -15%;
}
.top-company__list a > span {
	font-size: 27px;
}
.top-company__list a > span::before {
	/*
	content: '# ' counter(cnt_top-company,decimal-leading-zero);
	display: block;
	font-size: 12px;
	padding-bottom: 10px;
	font-weight: 700;
	*/
}
.top-company__list a > span::after {
	content: attr(data-en);
	display: block;
	font-size: 12px;
	padding-top: 10px;
	color: var(--color-main);
}
.top-company-sp__list {
	border-bottom: solid 1px var(--color-top-company-list-border);
}
.top-company-sp__list > ul > li {
		border-top: solid 1px var(--color-top-company-list-border);
}
.top-company-sp__list > ul > li > a {
	display: flex;
	align-items: center;
	padding: 18px 70px 18px 15px;
	position: relative;
	z-index: 1;
	gap: 20px;
}
.top-company-sp__list > ul > li > a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background-color: var(--color-top-company-list-hover-bg);
	transition: ease-in .2s width;
	width: 0px;
	z-index: -1;
}
.top-company-sp__list > ul > li > a:hover::before {
	width: 100%;
}
.top-company-sp__list > ul > li > a > i {
	font-style: normal;
	width: 62px;
	height: 24px;
	display: block;
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 100vmin;
	box-sizing: border-box;
	background: var(--color-bg-grad01);
}
.top-company-sp__list > ul > li > a > i::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 1;
	transition: ease-in .2s right;
}
.top-company-sp__list > ul > li > a > i::after {
	background-image:  url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
}
.top-company-sp__list > ul > li > a:hover > i::after {
	right: -15%;
}
.top-company__sp {
	margin-top: 60px;
}
.top-company-sp__thum {
	max-width: 200px;
}
.top-company-sp__thum img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 1;
	border-radius: 5px;
}
.top-company-sp__title {
	flex-grow: 1;
	font-size: 27px;
}
.top-company-sp__title::after {
	content: attr(data-en);
	display: block;
	font-size: 12px;
	padding-top: 4px;
	color: var(--color-main);
}
@media (min-width: 1080px) {
	.top-company__headline .type-md {
		display: none !important;
	}
	.top-company__sp {
		display: none !important;
	}
}
@media (max-width: 1079px) {
	.top-company__headline .type-pc {
		display: none !important;
	}
	.top-company__pc {
		display: none !important;
	}
	.top-company__headline {
		text-align: center;
	}
}
@media (min-width: 768px) {
	.top-company__headline .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-company__headline .type-pc {
		display: none !important;
	}
	.top-company__headline .type-md {
		display: none !important;
	}
	.top-company {
		margin-top: 160px;
	}
	.top-company-sp__list > ul > li > a {
		padding: calc(100vmin * 18 / var(--sp-font-vw)) calc(100vmin * 10 / var(--sp-font-vw) + 70px) calc(100vmin * 18 / var(--sp-font-vw)) calc(100vmin * 15 / var(--sp-font-vw));
	}
	.top-company-sp__thum {
		width: calc(100vmin * 82 / var(--sp-font-vw));
	}
	.top-company-sp__title {
		flex-grow: 1;
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.top-company-sp__title::after {
		font-size: calc(100vmin * 9 / var(--sp-font-vw));
	}
}


/* top-news */
.top-news {
	margin-top: 345px;
	position: relative;
	border-radius: 20px;
	padding: 70px 80px;
	color: var(--color-font-r);
	overflow: hidden;
	max-width: var(--con-w);
}
.top-news::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: var(--color-bg-grad01);
}
.top-news__main {
	display: grid;
	gap: 100px 20px;
	grid-template-areas: "title posts"
		"button posts";
	grid-template-rows: auto 1fr;
	grid-template-columns: minmax(300px, 36%) 1fr;
	position: relative;
	z-index: 2;
}
.top-news__headline {
	grid-area: title;
}
.top-news__posts {
	grid-area: posts;
}
.top-news__post-link {
	display: grid;
	gap: 20px;
	grid-template-areas: "thum meta"
		"thum title";
	grid-template-rows: auto 1fr;
	grid-template-columns: 174px 1fr;
	position: relative;
	padding-top: 30px;
	padding-bottom: 30px;
}
.top-news__post-link::after,
.top-news__post-link::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
}
.top-news__post-link::before {
	background-color: var(--color-font-r);
	width: 100%;
	opacity: .7;
}
.top-news__post-link::after {
	background-color: var(--color-top-news-post-hover-border);
	transition: ease-in .2s width;
	width: 0px;
}
.top-news__post-link:hover::after {
	width: 100%;
}
.top-news__post-title {
	grid-area: title;
	font-size: 16px;
}
.top-news__post-meta {
	grid-area: meta;
	display: flex;
	align-items: flex-start;
}
.top-news__post-date {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-family: var(--font-en2);
	gap: 5px;
	margin-right: 17px;
	padding-right: 17px;
	position: relative;
	flex-shrink: 0;
}
.top-news__post-date::after {
	content: '';
	position: absolute;
	right: 0;
	height: 100%;
	border-right: solid 1px;
	opacity: .7;
}
.top-news__post-date {
	font-family: var(--font-en2);
}
.top-news__post-date span:nth-of-type(1) {
	font-size: 12px;
	opacity: .7;
}
.top-news__post-date span:nth-of-type(2) {
	font-size: 20px;
}
.top-news__post-terms {
	align-self: center;
	font-size: 12px;
}
.top-news__post-terms li {
	position: relative;
	padding: 6px 20px;
	text-align: center;
}
.top-news__post-terms li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 100vmin;
	background-color: var(--color-font-r);
	opacity: .25;
}
.top-news__post-thum {
	grid-area: thum;
}
.top-news__post-thum img {
	border-radius: 10px;
	object-fit: cover;
	aspect-ratio: 3 / 2;
	background-color: var(--color-font-r);
}
.top-news__button {
	grid-area: button;
}
@media (max-width: 1480px) {
	.top-news {
		border-radius: 0;
		max-width: 100%;
	}
}
@media (min-width: 1080px) {
	.top-news__headline .type-md {
		display: none !important;
	}
	.top-news__posts .top-news__post:not(:nth-of-type(-n+3)) {
		display: none;
	}
}
@media (max-width: 1079px) {
	.top-news__headline .type-pc {
		display: none !important;
	}
	.top-news__main {
    gap: 55px;
    grid-template-areas:
        "title"
				"posts"
        "button";
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
    position: relative;
    z-index: 2;
	}
	.top-news__headline {
		justify-self: center;
	}
	.top-news__posts ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 60px 40px;
	}
	.top-news__post-link {
    gap: 13px;
    grid-template-areas:
        "thum"
				"meta"
        "title";
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.top-news__post-link::before,
	.top-news__post-link::after {
		display: none;
	}
	.top-news__button {
		justify-self: center;
	}
}
@media (min-width: 768px) {
	.top-news__headline .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.top-news__headline .type-pc {
		display: none !important;
	}
	.top-news__headline .type-md {
		display: none !important;
	}
	.top-news {
		margin-top: 140px;
		padding-right: calc(var(--side-margin) * 2);
		padding-left: calc(var(--side-margin) * 2);
	}
	.top-news__posts ul {
		gap: calc(100vmin * 60 / var(--sp-font-vw)) calc(100vmin * 22 / var(--sp-font-vw));
	}
	.top-news__post-link {
    gap: calc(100vmin * 12 / var(--sp-font-vw));
	}
	.top-news__post-date {
		min-width: calc(100vmin * 50 / var(--sp-font-vw));
	}
	.top-news__post-date span:nth-of-type(1) {
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
	}
	.top-news__post-date span:nth-of-type(2) {
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.top-news__post-date {
		gap: calc(100vmin * 2 / var(--sp-font-vw));
		margin-right: calc(100vmin * 11 / var(--sp-font-vw));
		padding-right: calc(100vmin * 11 / var(--sp-font-vw));
	}
	.top-news__post-terms {
		font-size: calc(100vmin * 9 / var(--sp-font-vw));
	}
	.top-news__post-terms li {
		padding: calc(100vmin * 6 / var(--sp-font-vw)) calc(100vmin * 12 / var(--sp-font-vw));
		min-width: calc(100vmin * 75 / var(--sp-font-vw));
	}
	.top-news__post-title {
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
	}
}



/* top-bottom */
.top-bottom {
	margin-top: 215px;
}
.top-bottom__inner {
	position: relative;
	z-index: 2;
}
.top-bottom__banner > ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 111px;
}
.top-bottom__banner > ul > li {
	overflow: hidden;
	border-radius: 10px;
	box-shadow: 15px 30px 20px rgba(12,64,99,.3);
}
.top-bottom__banner a {
	position: relative;
	display: block;
}
.top-bottom__banner a::after,
.top-bottom__banner a::before {
	content: '';
	width: 67px;
	height: 27px;
	display: block;
	position: absolute;
	right: 30px;
	bottom: 25px;
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
}
.top-bottom__banner a::before {
	border: solid 1.5px var(--color-font-r);
	border-radius: 100vmin;
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
}
.top-bottom__banner a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01.svg');
	opacity: 0;
}
.top-bottom__banner a:hover::before {
	background-color: #fff;
}
.top-bottom__banner a:hover::after {
	opacity: 1;
}
.top-bottom__banner a .type-title {
	position: absolute;
	left: 45px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.top-bottom__banner a .type-bg {
	transition: ease-in .2s scale;
}
.top-bottom__banner a:hover .type-bg {
	scale: 1.12;
}
.top-bottom__banner a .type-bg img {
	max-width: none;
	width: 100%;
}
@media (max-width: 1240px) {
	.top-bottom__banner > ul {
		gap: 80px;
	}
}
@media (min-width: 1081px) {
	.top-bottom__banner a .type-sp {
		display: none !important;
	}
}
@media (max-width: 1080px) {
	.top-bottom__banner a .type-pc {
		display: none !important;
	}
	.top-bottom__banner > ul {
		grid-template-columns: 1fr;
		gap: 80px;
		max-width: 600px;
		margin-inline: auto;
	}
}
@media (max-width: 767px) {
	.top-bottom {
		margin-top: 125px;
	}
	.top-bottom__banner a .type-title {
		left: calc(100vmin * 25 / var(--sp-font-vw));
	}
	.top-bottom__banner a::after,
	.top-bottom__banner a::before {
		right: calc(100vmin * 20 / var(--sp-font-vw));
		bottom: calc(100vmin * 15 / var(--sp-font-vw));
	}
	.top-bottom__banner > ul {
		max-width: calc(100vmin * 308 / var(--sp-font-vw));
	}
	.top-bottom__banner > ul > li:nth-of-type(1) a .type-title {
		width: calc(100vmin * 113 / var(--sp-font-vw));
	}
	.top-bottom__banner > ul > li:nth-of-type(2) a .type-title {
		width: calc(100vmin * 152 / var(--sp-font-vw));
	}
}


.top-bottom__slider {
	margin-top: 320px;
	overflow: hidden;
	margin-bottom: 15px;
}
.top-bottom__slider-inner {
	overflow: hidden;
	width: 100%;
}
@keyframes kf_top-bottom__slider {
  from {
	  transform: translateX(0);
  }
  to {
	  /* 1366px(imgW) + 140px(padding) */
	  transform: translateX(-1506px);
  }
}
.top-bottom__slider-inner {
		display: flex;
    align-items: center;
		gap: 140px;
    width: max-content;
    animation-name: kf_top-bottom__slider;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-duration: 18s;
}
.top-bottom__slide-item {
	width: 1366px;
}
@media (max-width: 767px) {
	.top-bottom__slider {
		margin-top: 125px;
		margin-bottom: 50px;
	}
	.top-bottom__slider-inner {
		animation-duration: 16s;
		gap: 60px;
	}
	@keyframes kf_top-bottom__slider {
		from {
			transform: translateX(0);
		}
		to {
			/* 630px(imgW) + 60px(padding) */
			transform: translateX(-690px);
		}
	}
	.top-bottom__slide-item {
		width: 630px;
	}

}



/* ------------------------------
   archive
--------------------------------- */
.archive-content {
	padding-top: 150px;
	padding-bottom: 200px;
	position: relative;
	z-index: 1;
}
.archive__post-link {
	display: grid;
	gap: 20px;
	grid-template-areas: "thum meta"
		"thum title";
	grid-template-rows: auto 1fr;
	grid-template-columns: 250px 1fr;
	position: relative;
	padding-top: 30px;
	padding-bottom: 30px;
}
.archive__post-link::after,
.archive__post-link::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
}
.archive__post-link::before {
	background-color: var(--color-archive-news-post-border);
	width: 100%;
	opacity: .7;
}
.archive__post-link::after {
	background-color: var(--color-archive-news-post-hover-border);
	transition: ease-in .2s width;
	width: 0px;
}
.archive__post-link:hover::after {
	width: 100%;
}
.archive__post-title {
	grid-area: title;
	font-size: 16px;
}
.archive__post-meta {
	grid-area: meta;
	display: flex;
	align-items: flex-start;
}
.archive__post-date {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-family: var(--font-en2);
	gap: 5px;
	margin-right: 17px;
	padding-right: 17px;
	position: relative;
	flex-shrink: 0;
}
.archive__post-date::after {
	content: '';
	position: absolute;
	right: 0;
	height: 100%;
	border-right: solid 1px var(--color-archive-news-post-border);
}
.archive__post-date span:nth-of-type(1) {
	font-size: 12px;
	opacity: .7;
}
.archive__post-date span:nth-of-type(2) {
	font-size: 20px;
}
.archive__post-terms {
	align-self: center;
	font-size: 12px;
}
.archive__post-terms li {
	position: relative;
	padding: 6px 20px;
	text-align: center;
}
.archive__post-terms li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 100vmin;
	border: solid 1px var(--color-font);
}
.archive__post-thum {
	grid-area: thum;
}
.archive__post-thum img {
	border-radius: 10px;
	object-fit: cover;
	aspect-ratio: 3 / 2;
	background-color: var(--color-font-r);
}
.archive__post-arrow {
	font-style: normal;
	width: 60px;
	height: 24px;
	display: block;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 100vmin;
	box-sizing: border-box;
	background: var(--color-bg-grad01);
}
.archive__post-arrow::before,
.archive__post-arrow::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
}
.archive__post-arrow::before {
	border-radius: 100vmin;
	box-sizing: border-box;
}
.archive__post-arrow::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/news/archive_post-arrow.svg');
}
.archive__post-arrow::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
	z-index: 1;
}
.archive__post-link:hover > .archive__post-arrow {
	background: none;
}
.archive__post-link:hover > .archive__post-arrow::after {
	opacity: 0;
}
.archive__post-link:hover > .archive__post-arrow::before {
	border: solid 1px var(--color-archive-news-post-arrow-hover-border);
}
@media (max-width: 1079px) {
	.archive__post-link {
    gap: 13px;
    grid-template-areas:
        "thum meta"
				"thum title";
    grid-template-columns: 35vw 1fr;
	}
	.archive__button {
		justify-self: center;
	}
	.archive__post-arrow {
		display: none;
	}
}
@media (max-width: 767px) {
	.archive-content {
		padding-bottom: calc(100vmin * 210 / var(--sp-font-vw));
		padding-top: calc(100vmin * 80 / var(--sp-font-vw));
	}
	.archive-content__main {
		gap: calc(100vmin * 60 / var(--sp-font-vw)) calc(100vmin * 22 / var(--sp-font-vw));
	}
	.archive__post-link {
    gap: calc(100vmin * 12 / var(--sp-font-vw));
	}
	.archive__post-date {
		min-width: calc(100vmin * 50 / var(--sp-font-vw));
	}
	.archive__post-date span:nth-of-type(1) {
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
	}
	.archive__post-date span:nth-of-type(2) {
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.archive__post-date {
		gap: calc(100vmin * 2 / var(--sp-font-vw));
		margin-right: calc(100vmin * 11 / var(--sp-font-vw));
		padding-right: calc(100vmin * 11 / var(--sp-font-vw));
	}
	.archive__post-terms {
		font-size: calc(100vmin * 9 / var(--sp-font-vw));
	}
	.archive__post-terms li {
		padding: calc(100vmin * 6 / var(--sp-font-vw)) calc(100vmin * 12 / var(--sp-font-vw));
		min-width: calc(100vmin * 75 / var(--sp-font-vw));
	}
	.archive__post-title {
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
	}
}




/* ------------------------------
   single
--------------------------------- */
.single-content {
	padding-top: 150px;
	padding-bottom: 200px;
	position: relative;
	z-index: 1;
}
.single-content__header {
	display: flex;
	flex-direction: column;
	padding-bottom: 50px;
}
.single__post-title {
	font-size: 30px;
	color: var(--color-main);
	margin-top: 55px;
	border-bottom: solid 1px var(--color-archive-news-post-border);
	padding-bottom: 45px;
	line-height: 1.4;
}
.single__post-meta {
	order: -1;
	display: flex;
	align-items: flex-start;
}
.single__post-date {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-family: var(--font-en2);
	gap: 5px;
	margin-right: 45px;
	padding-right: 45px;
	position: relative;
	flex-shrink: 0;
}
.single__post-date::after {
	content: '';
	position: absolute;
	right: 0;
	height: 100%;
	border-right: solid 1px var(--color-archive-news-post-border);
}
.single__post-date {
	font-family: var(--font-en2);
}
.single__post-date span:nth-of-type(1) {
	font-size: 22px;
	opacity: .7;
}
.single__post-date span:nth-of-type(2) {
	font-size: 38px;
}
.single__post-terms {
	align-self: center;
	font-size: 14px;
}
.single__post-terms li {
	position: relative;
	padding: 6px 20px;
	text-align: center;
}
.single__post-terms li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 100vmin;
	border: solid 1px var(--color-font);
}
.single__post-thum {
	grid-area: thum;
}
.single__post-thum img {
	border-radius: 10px;
	object-fit: cover;
	aspect-ratio: 3 / 2;
}
.single__post-arrow {
	font-style: normal;
	width: 60px;
	height: 24px;
	display: block;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 100vmin;
	box-sizing: border-box;
	background: var(--color-bg-grad01);
}
.single__post-arrow::before,
.single__post-arrow::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
}
.single__post-arrow::before {
	border-radius: 100vmin;
	box-sizing: border-box;
}
.single__post-arrow::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/news/single_post-arrow.svg');
}
.single__post-arrow::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/top/top_image-arrow01_w.svg');
	z-index: 1;
}
.single__post-link:hover > .single__post-arrow {
	background: none;
}
.single__post-link:hover > .single__post-arrow::after {
	opacity: 0;
}
.single__post-link:hover > .single__post-arrow::before {
	border: solid 1px var(--color-single-news-post-arrow-hover-border);
}
.single-content__main p {
	line-height: 2;
	font-size: 16px;
}
.single-content__main ul li {
	font-size: 16px;
	padding-left: .5em;
	position: relative;
	line-height: 1.4;
}
.single-content__main ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: .55em;
    width: 5px;
    height: 5px;
    background-color: var(--color-font);
}
.single-content__main ul li + li {
	margin-top: .5em;
}
.single-content__main > * + * {
	margin-top: 40px;
}
.single-content__thumbnail {
	margin-top: 80px;
}
@media (max-width: 767px) {
	.single-content__header {
		padding-bottom: calc(100vmin * 40 / var(--sp-font-vw));
	}
	.single-content {
		padding-bottom: calc(100vmin * 210 / var(--sp-font-vw));
		padding-top: calc(100vmin * 80 / var(--sp-font-vw));
	}
	.single__post-title {
		margin-top: calc(100vmin * 55 / var(--sp-font-vw));
		padding-bottom: calc(100vmin * 35 / var(--sp-font-vw));
		font-size: calc(100vmin * 24 / var(--sp-font-vw));
	}
	.single__post-date {
		margin-right: calc(100vmin * 25 / var(--sp-font-vw));
		padding-right: calc(100vmin * 25 / var(--sp-font-vw));
		gap: calc(100vmin * 5 / var(--sp-font-vw));
	}
	.single__post-date span:nth-of-type(1) {
    	font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	.single__post-date span:nth-of-type(2) {
		font-size: calc(100vmin * 26 / var(--sp-font-vw));
	}
	.single__post-terms {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.single__post-terms li {
		position: relative;
		padding: calc(100vmin * 6 / var(--sp-font-vw)) calc(100vmin * 12 / var(--sp-font-vw));
		min-width: calc(100vmin * 100 / var(--sp-font-vw));
		text-align: center;
	}
	.single-content__main p {
		font-size: calc(100vmin * 18 / var(--sp-font-vw));
	}
	.single-content__main ul li {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	.single-content__main > * + * {
		margin-top: calc(100vmin * 40 / var(--sp-font-vw));
	}
	.single-content__thumbnail {
		margin-top: calc(100vmin * 80 / var(--sp-font-vw));
	}
}


/* ------------------------------
   page
--------------------------------- */
.page-content {
	padding-top: 150px;
	padding-bottom: 200px;
	position: relative;
	z-index: 1;
}
.page-content.type-side .page-content__inner {
	display: grid;
	grid-template-columns: 197px 1fr;
	gap: 110px;
	position: relative;
}
.page-content__main h2[data-style-page="image"] {
	margin-bottom: 45px;
}
.page-content__main h2[data-style-page="border"] {
	position: relative;
	margin-bottom: 40px;
	padding-bottom: 35px;
}
.page-content__main h2[data-style-page="border"]::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	border-bottom: solid 1px var(--color-main);
	z-index: 1;
}
.page-content__main h2[data-style-page="border"]::after {
	content: '';
	position: absolute;
	bottom: 0;
	width: 100%;
	left: 0;
	border-bottom: solid 1px var(--color-h2-border);
}
.type-def-temp .page-content__main {
	font-size: 16px;
}
.type-def-temp .page-content__main > p a {
	text-decoration: underline;
	color: var(--color-main);
}
.type-def-temp .page-content__main > .mw_wp_form_complete + *,
.type-def-temp .page-content__main > *:first-child {
	margin-top: 0 !important;
}
.type-def-temp .page-content__main > * + * {
	margin-top: 40px;
}
.type-def-temp .page-content__main h2 {
    font-size: 40px;
    color: var(--color-main);
	margin-top: 60px;
	line-height: 1.4;
	margin-bottom: 40px;
}
.page-content__sec + .page-content__sec {
	margin-top: 145px;
}
.page-bg-movie {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	mix-blend-mode: multiply;
	opacity: .5;
}
.page-bg-movie video {
	width: 1920px;
	height: 1080px;
}
/* サイドバー */
.sidebar {
	background-color: var(--color-font-r);
	padding: 80px 45px;
	border-radius: 15px;
}
.sidebar ol {
	counter-reset: cnt-sidebar;
}
.sidebar ol li a {
	counter-increment: cnt-sidebar;
	padding-left: 30px;
	position: relative;
	font-weight: 700;
}
.sidebar ol li a::before {
	content: counter(cnt-sidebar,decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 0;
}
.sidebar ol li a {
	color: var(--color-gray02);
}
.sidebar ol[data-scroll-point="1"] li:nth-of-type(1) a,
.sidebar ol[data-scroll-point="2"] li:nth-of-type(2) a,
.sidebar ol[data-scroll-point="3"] li:nth-of-type(3) a,
.sidebar ol[data-scroll-point="4"] li:nth-of-type(4) a,
.sidebar ol li a:hover {
	color: var(--color-font);
}
.sidebar ol li + li {
	margin-top: 40px;
}
@media (max-width: 1239px) {
	
}
@media (max-width: 1080px) {
	.page-content.type-side .page-content__inner {
		display: grid;
		grid-template-columns: 1fr;
		gap: 110px;
		position: relative;
	}
	.sidebar {
		position: static !important;
		background: none;
		padding: 0;
		width: 100% !important;
	}
	.sidebar ol {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 56px 26px;
		font-size: 14px;
	}
	.sidebar ol li + li {
		margin-top: 0 !important;
	}
	.sidebar ol li a {
		color: var(--color-font);
		border-bottom: solid .7px var(--color-page-pl-border);
		display: block;
		padding-left: 0;
		padding-bottom: 13px;
		position: relative;
		padding-right: 11px;
		font-weight: 400;
	}
	.sidebar ol li a::before {
		display: none;
	}
	.sidebar ol li a::after {
		content: '';
		height: 10px;
		width: 8px;
		position: absolute;
		right: 4px;
		top: 50%;
		transform: translateY(-50%);
		margin-top: -7.6px;
		background-position: center center;
		background-size: contain;
		background-repeat: no-repeat;
		background-image: url('/wp-content/themes/chusoku-thema/assets/images/pl-i-arrow.svg');
	}
}
@media (min-width: 768px) {
	.page-content__main :where(h2,h3,h4,h5,h6) .type-sp:not(.no-def-set) {
		display: none !important;
	}
}
@media (max-width: 767px) {
	.page-content__main :where(h2,h3,h4,h5,h6) .type-pc:not(.no-def-set) {
		display: none !important;
	}
	.page-content {
		padding-bottom: calc(100vmin * 210 / var(--sp-font-vw));
		padding-top: calc(100vmin * 80 / var(--sp-font-vw));
	}
	.page-content.type-side .page-content__inner {
		gap: calc(100vmin * 110 / var(--sp-font-vw));
	}
	.type-def-temp .page-content__main {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.type-def-temp .page-content__main > * + * {
		margin-top: calc(100vmin * 40 / var(--sp-font-vw));
	}
	.type-def-temp .page-content__main h2 {
		font-size: calc(100vmin * 26 / var(--sp-font-vw));
		color: var(--color-main);
		margin-top: calc(100vmin * 60 / var(--sp-font-vw));
		margin-bottom: calc(100vmin * 40 / var(--sp-font-vw));
	}
	.page-content__sec + .page-content__sec {
		margin-top: calc(100vmin * 160 / var(--sp-font-vw));
	}
	.page-content__main h2[data-style-page="border"] {
		text-align: center;
		margin-bottom: calc(100vmin * 30 / var(--sp-font-vw));
    	padding-bottom: calc(100vmin * 25 / var(--sp-font-vw));
	}
	.page-content__main h2[data-style-page="border"]::before {
		left: 50%;
		transform: translateX(-50%);
		width: calc(100vmin * 34 / var(--sp-font-vw));
	}
	.page-content__main h2[data-style-page="border"]::after {
		opacity: 0;
	}
	.sidebar ol {
		grid-template-columns: repeat(2, 1fr);
		gap: calc(100vmin * 56 / var(--sp-font-vw)) calc(100vmin * 26 / var(--sp-font-vw));
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.sidebar ol li a {
		padding-right: calc(100vmin * 11 / var(--sp-font-vw));
		font-weight: 400;
	}
	.sidebar ol li a::after {
		height: calc(100vmin * 10 / var(--sp-font-vw));
		width: calc(100vmin * 8 / var(--sp-font-vw));
		right: calc(100vmin * 2 / var(--sp-font-vw));
		background-image: url('/wp-content/themes/chusoku-thema/assets/images/pl-i-arrow_sp.svg');
	}
}




/* ------------------------------
   page - 会社概要
--------------------------------- */
[data-page-sec="company-philosophy"] dl {
	margin-top: 95px;
	margin-bottom: 195px;
}
[data-page-sec="company-philosophy"] dl > div {
	margin-bottom: 150px;
}
[data-page-sec="company-philosophy"] dl > div:last-of-type {
	margin-bottom: 0;
}
[data-page-sec="company-philosophy"] dl dt {
	margin-bottom: 30px;
}
[data-page-sec="company-philosophy"] dl dd {
	font-size: 24px;
}
[data-page-sec="company-message"] h3[data-style-page="custom-01"] {
	font-size: 30px;
	text-align: center;
	margin-top: 70px;
	margin-bottom: 60px;
}
[data-page-sec="company-message"] .p-sec__desc p {
	font-size: 16px;
	line-height: 1.8;
}
[data-page-sec="company-message"] .p-sec__desc p + p {
	margin-top: 2em;
}
[data-page-sec="company-overview"] dl > div {
	border-top: solid 1px var(--color-gray);
	padding-top: 30px;
	padding-bottom: 30px;
	display: flex;
	width: 100%;
}
[data-page-sec="company-overview"] dl > div:last-of-type {
	border-bottom: solid 1px var(--color-gray);
}
[data-page-sec="company-overview"] dl p,
[data-page-sec="company-overview"] dl dt {
	line-height: 1.4;
}
[data-page-sec="company-overview"] dl dt {
	width: 185px;
	flex-shrink: 0;
}
[data-page-sec="company-overview"] dl dd {
	flex-grow: 1;
}
[data-page-sec="company-overview"] dl dd > div > * + *,
[data-page-sec="company-overview"] dl dd p + p {
	margin-top: 1.5em;
}
[data-page-sec="company-overview"] dl dd > div {
	margin-bottom: 4em;
}
[data-page-sec="company-overview"] .p-sec__map {
	overflow: hidden;
	border-radius: 5px;
	object-fit: cover;
	aspect-ratio: 4 / 2;
	position: relative;
	max-width: 250px;
}
[data-page-sec="company-overview"] .p-sec__map iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
[data-page-sec="company-overview"]  .p-sec__map-link {
	font-weight: 700;
}
[data-page-sec="company-overview"]  .p-sec__map-link a {
	display: block;
	max-width: 130px;
	color: var(--color-font);
	border: solid .7px var(--color-font);
	/*
	background-color: var(--color-font-r);
	*/
	border-radius: 100vmin;
	padding: 10px 20px 10px;
	font-size: 11px;
	position: relative;
}
[data-page-sec="company-overview"]  .p-sec__map-link a img {
	vertical-align: middle;
}
[data-page-sec="company-overview"]  .p-sec__map-link a .type-hover {
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	margin-top: .7px;
}
[data-page-sec="company-overview"]  .p-sec__map-link a::after,
[data-page-sec="company-overview"]  .p-sec__map-link a::before {
	content: '';
	width: 6px;
	height: 5px;
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}
[data-page-sec="company-overview"]  .p-sec__map-link a::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/company/map-tab-i.svg');
}
[data-page-sec="company-overview"]  .p-sec__map-link a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/company/map-tab-i_hover.svg');
	opacity: 0;
}
[data-page-sec="company-overview"]  .p-sec__map-link a:hover {
	background-color: var(--color-font);
	color: var(--color-font-r);
}
[data-page-sec="company-overview"]  .p-sec__map-link a:hover .type-hover {
	opacity: 1;
}
[data-page-sec="company-overview"]  .p-sec__map-link a:hover::after {
	opacity: 1;
}
[data-page-sec="company-history"] dl {
	margin-top: 95px;
}
[data-page-sec="company-history"] dl > div {
	padding-left: 25px;
	padding-bottom: 55px;
	position: relative;
	display: flex;
}
[data-page-sec="company-history"] dl > div:last-of-type {
	padding-bottom: 0;
}
[data-page-sec="company-history"] dl > div::before {
	content: '';
	position: absolute;
	left: 0;
	top: .325em;
	width: 8px;
	height: 8px;
	border-radius: 100vmin;
	background-color: var(--color-main);
}
[data-page-sec="company-history"] dl > div::after {
	content: '';
	position: absolute;
	left: 3.5px;
	top: calc(.325em + 8px);
	border-left: solid 1px var(--color-main);
	height: calc(100% - 8px);
}
[data-page-sec="company-history"] dl > div:last-of-type::after {
	display: none;
}
[data-page-sec="company-history"] dl dt {
	flex-shrink: 0;
	width: 150px;
	font-weight: 400;
}
@media (min-width: 768px) {
	[data-page-sec="company-philosophy"] dl dt .type-sp {
		display: none !important;
	}
}
@media (max-width: 767px) {
	[data-page-sec="company-philosophy"] h2[data-style-page="image"] img {
		width: calc(100vmin * 140 / var(--sp-font-vw));
	}
	[data-page-sec="company-philosophy"] dl dt .type-pc {
		display: none !important;
	}
	[data-page-sec="company-philosophy"] dl > div:nth-of-type(1) dt img {
		width: calc(100vmin * 163 / var(--sp-font-vw));
	}
	[data-page-sec="company-philosophy"] dl > div:nth-of-type(2) dt img {
		width: calc(100vmin * 248 / var(--sp-font-vw));
	}
	[data-page-sec="company-philosophy"] dl > div:nth-of-type(3) dt img {
		width: calc(100vmin * 188 / var(--sp-font-vw));
	}
	[data-page-sec="company-philosophy"] dl {
		margin-bottom: 0;
	}
	[data-page-sec="company-philosophy"] dl dd {
		font-size: calc(100vmin * 18 / var(--sp-font-vw));
		line-height: 1.4;
	}
	[data-page-sec="company-philosophy"] dl > div {
		    margin-bottom: calc(100vmin * 60 / var(--sp-font-vw));
	}
	[data-page-sec="company-message"] h2[data-style-page="image"] img {
		width: calc(100vmin * 118 / var(--sp-font-vw));
	}
	[data-page-sec="company-message"] h3[data-style-page="custom-01"] {
		font-size: calc(100vmin * 24 / var(--sp-font-vw));
		line-height: 1.4;
	}
	[data-page-sec="company-message"] h3[data-style-page="custom-01"] {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw));
		margin-bottom: calc(100vmin * 35 / var(--sp-font-vw));
	}
	[data-page-sec="company-message"] .p-sec__desc p {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] h2[data-style-page="image"] img {
		width: calc(100vmin * 123 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] dl {
		margin-top: calc(100vmin * 70 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] dl > div {
		flex-direction: column;
		gap: calc(100vmin * 15 / var(--sp-font-vw));
		padding-top: calc(100vmin * 30 / var(--sp-font-vw));
		padding-bottom: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] dl dt {
		color: var(--color-main);
		font-weight: 400;
	}
	[data-page-sec="company-overview"] dl dd {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] dl dd > div + div {
		margin-bottom: 0;
	}
	[data-page-sec="company-overview"] .p-sec__map {
			aspect-ratio: 4 / 2;
			max-width: 100%;
	}
	[data-page-sec="company-overview"] .p-sec__map-link a {
		width: calc(100vmin * 200 / var(--sp-font-vw));
		max-width: none;
		padding: calc(100vmin * 15 / var(--sp-font-vw)) calc(100vmin * 30 / var(--sp-font-vw)) calc(100vmin * 15 / var(--sp-font-vw)) calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] .p-sec__map-link a img {
		width: calc(100vmin * 94 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] .p-sec__map-link a::after,
	[data-page-sec="company-overview"] .p-sec__map-link a::before {
		width: calc(100vmin * 9 / var(--sp-font-vw));
		height: calc(100vmin * 8 / var(--sp-font-vw));
		right: calc(100vmin * 19 / var(--sp-font-vw));
	}
	[data-page-sec="company-overview"] .p-sec__map-link a .type-hover {
		left: calc(100vmin * 20 / var(--sp-font-vw));
		margin-top: 0;
	}
	[data-page-sec="company-history"] h2[data-style-page="image"] img {
		width: calc(100vmin * 48 / var(--sp-font-vw));
	}
	[data-page-sec="company-history"] dl > div {
		flex-direction: column;
		/*
		padding-left: calc(100vmin * 55 / var(--sp-font-vw));
		*/
		padding-left: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="company-history"] dl dt {
		margin-bottom: calc(100vmin * 10 / var(--sp-font-vw));
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
	}
	[data-page-sec="company-history"] dl dd {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="company-history"] dl > div::before {
		/*
		left: calc(100vmin * 20 / var(--sp-font-vw));
		*/
		left: 0;
		width: calc(100vmin * 8 / var(--sp-font-vw));
		height: calc(100vmin * 8 / var(--sp-font-vw));
	}
	[data-page-sec="company-history"] dl > div::after {
		/*
		left: calc(100vmin * 23.5 / var(--sp-font-vw));
		*/
		left: calc(100vmin * 3.5 / var(--sp-font-vw));
		top: calc(.325em + (100vmin * 8 / var(--sp-font-vw)));
    border-left: solid 1px var(--color-main);
    height: calc(100% - (100vmin * 8 / var(--sp-font-vw)));
	}
}



/* ------------------------------
   page - 採用情報
--------------------------------- */
[data-page-sec="recruit-intro"] {
	padding-top: 90px;
}
[data-page-sec="recruit-intro"] .p-sec__title {
	text-align: center;
}
[data-page-sec="recruit-intro"] .p-sec__desc {
	margin-top: 85px;
}
[data-page-sec="recruit-intro"] .p-sec__desc p {
	text-align: center;
	font-size: 16px;
	line-height: 2.6;
}
[data-page-sec="recruit-intro"] .p-sec__desc p + p {
	margin-top: 50px;
}
[data-page-sec="recruit-imagelist"] {
	max-width: calc(1550px + var(--side-margin) * 2);
	width: 100%;
	margin-inline: auto;
	padding-right: var(--side-margin);
	padding-left: var(--side-margin);
}

[data-page-sec="recruit-imagelist"] ul {
	display: grid;
	grid-template-columns: repeat( 5, 1fr );
	gap: 17px 13px;
}
[data-page-sec="recruit-imagelist"] ul li img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 16 / 9;
	border-radius: 10px;
}
[data-page-sec="recruit-req"] .p-sec__inner {
	background-color: var(--color-font-r);
	border-radius: 30px;
	padding-top: 130px;
	padding-bottom: 125px;
}
[data-page-sec="recruit-req"] .p-sec__box {
	max-width: 780px;
	margin-inline: auto;
}
[data-page-sec="recruit-req"] .p-sec__title {
	text-align: center;
}
[data-page-sec="recruit-req"] .p-sec__title[data-en]::after {
	content: attr(data-en);
	font-family: var(--font-en);
	display: block;
	font-weight: 200;
	font-size: 7px;
	margin-top: 15px;
}
[data-page-sec="recruit-req"] dl {
	margin-top: 90px;
}
[data-page-sec="recruit-req"] dl > div {
	padding-top: 40px;
	padding-bottom: 40px;
	border-bottom: solid 1px var(--color-page-recruit-req-border);
	display: flex;
	font-size: 16px;
}
[data-page-sec="recruit-req"] dl dt {
	flex-shrink: 0;
	width: 170px;
	font-weight: 400;
	color: var(--color-main);
}
[data-page-sec="recruit-req"] dl dd,
[data-page-sec="recruit-req"] dl dt {
	line-height: 1.8;
}
[data-page-sec="recruit-req"] .p-sec__button {
	margin-top: 110px;
}
[data-page-sec="recruit-req"] .p-sec__button a {
	display: block;
	max-width: 634px;
	color: var(--color-main);
	border: solid 2px var(--color-main);
	border-radius: 11px;
	padding: 50px 60px 50px 10px;
	font-size: 20px;
	text-align: center;
	background-color: var(--color-font-r);
	position: relative;
	margin-inline: auto;
}
[data-page-sec="recruit-req"] .p-sec__button a::after,
[data-page-sec="recruit-req"] .p-sec__button a::before {
	content: '';
	width: 19px;
	height: 16px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: 50px;
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}
[data-page-sec="recruit-req"] .p-sec__button a::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/recruit/req_button-tab_blue.svg');
}
[data-page-sec="recruit-req"] .p-sec__button a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/recruit/req_button-tab_w.svg');
	opacity: 0;
}
[data-page-sec="recruit-req"] .p-sec__button a:hover {
	background-color: var(--color-main);
	color: var(--color-font-r);
}
[data-page-sec="recruit-req"] .p-sec__button a:hover::after {
	opacity: 1;
}
@media (max-width: 1080px) {
	[data-page-sec="recruit-imagelist"] {
		margin-top: 50px !important;
	}
	[data-page-sec="recruit-imagelist"] ul {
		display: grid;
		grid-template-columns: repeat( 3, 1fr );
		gap: 6px 5px;
	}
	[data-page-sec="recruit-imagelist"] ul li:last-of-type {
		display: none !important;
	}
	[data-page-sec="recruit-req"] {
		margin-top: 60px !important;
	}
	[data-page-sec="recruit-req"] dl {
		padding-right: calc(var(--side-margin));
		padding-left: calc(var(--side-margin));
	}
}
@media (max-width: 767px) {
	[data-page-sec="recruit-intro"] {
		padding-top: calc(100vmin * 50 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-intro"] .p-sec__title img {
		width: calc(100vmin * 247 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-intro"] .p-sec__desc {
		margin-top: calc(100vmin * 70 / var(--sp-font-vw));
}
	[data-page-sec="recruit-intro"] .p-sec__desc p {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-intro"] .p-sec__desc p + p {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-imagelist"] {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw)) !important;
	}
	[data-page-sec="recruit-req"] {
		margin-top: calc(100vmin * 60 / var(--sp-font-vw)) !important;
	}
	[data-page-sec="recruit-req"] .p-sec__inner {
		padding-top: calc(100vmin * 95 / var(--sp-font-vw));
		padding-bottom: calc(100vmin * 90 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] .p-sec__title img {
		width: calc(100vmin * 86 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] .p-sec__title[data-en]::after {
		font-size: calc(100vmin * 5 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] dl {
		padding-right: calc(var(--side-margin) * 2);
		padding-left: calc(var(--side-margin) * 2);
		margin-top: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] dl > div {
		flex-direction: column;
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
		padding-top: calc(100vmin * 40 / var(--sp-font-vw));
    padding-bottom: calc(100vmin * 10 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] dl dd,
	[data-page-sec="recruit-req"] dl dt {
		line-height: 1.5;
	}
	[data-page-sec="recruit-req"] dl dd {
		margin-top: .7em;
	}
	[data-page-sec="recruit-req"] .p-sec__button {
		margin-top: calc(100vmin * 65 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] .p-sec__button a {
		max-width: calc(100vmin * 270 / var(--sp-font-vw));
		padding: calc(100vmin * 25 / var(--sp-font-vw)) calc(100vmin * 40 / var(--sp-font-vw)) calc(100vmin * 25 / var(--sp-font-vw)) calc(100vmin * 10 / var(--sp-font-vw));
		font-size: calc(100vmin * 17 / var(--sp-font-vw));
	}
	[data-page-sec="recruit-req"] .p-sec__button a::after,
	[data-page-sec="recruit-req"] .p-sec__button a::before {
		width: calc(100vmin * 14 / var(--sp-font-vw));
		height: calc(100vmin * 12 / var(--sp-font-vw));
		margin-left: calc(100vmin * 40 / var(--sp-font-vw));
	}
}

/* ------------------------------
   page - 私たちの強み
--------------------------------- */
.headline-advantage {
	position: fixed;
	left: 0;
	top: var(--h-header);
	width: 100%;
	height: 610px;
	overflow: hidden;
	background-color: #3786C7;
}
.headline-advantage.hidden {
	opacity: 0;
}
.headline-advantage__text {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
	width: 100%;
	text-align: center;
}
.headline-advantage__bg img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 1920px;
	max-width: none;
	height: auto;
	pointer-events: none;
}
body.page-advantage .page-content {
	padding-top: 610px;
	padding-bottom: 0;
	overflow: hidden;
}
body.page-advantage .page-content__inner {
	background-color: var(--color-page-advantage-bg);
}
[data-page-sec="advantage-intro01"] {
	margin-top: 410px;
	padding-bottom: 230px;
	position: relative;
}
[data-page-sec="advantage-intro01"] .p-sec__deco {
	position: absolute;
	z-index: 1;
	transform: translateX(-50%);
	left: 50%;
	width: max-content;
	list-style: normal;
}
[data-page-sec="advantage-intro01"] .p-sec__deco01 {
	top: 152px;
	margin-left: calc((670px + 502px / 2) * -1);
}
[data-page-sec="advantage-intro01"] .p-sec__deco02 {
	top: 240px;
	margin-left: calc((558px + 434px / 2));
}
[data-page-sec="advantage-intro01"] .p-sec__deco03 {
	bottom: 0;
	margin-left: 80px;
}
[data-page-sec="advantage-intro01"] .p-sec__inner {
	background-color: var(--color-font-r);
	border-radius: 27px;
	padding: 120px 10px;
}
[data-page-sec="advantage-intro01"] .p-sec__box {
	max-width: 1165px;
	padding-left: 55px;
	padding-right: 10px;
	margin-inline: auto;
	display: grid;
	align-items: flex-start;
	gap: 80px 0;
	grid-template-areas: "title image"
		"desc image";
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto 1fr;
}
[data-page-sec="advantage-intro01"] .p-sec__title {
	grid-area: title;
}
[data-page-sec="advantage-intro01"] .p-sec__desc {
	grid-area: desc;
}
[data-page-sec="advantage-intro01"] .p-sec__desc p {
	line-height: 2.5;
}
[data-page-sec="advantage-intro01"] .p-sec__image {
	grid-area: image;
	text-align: right;
}
[data-page-sec="advantage-intro02"] {
	padding-top: 80px;
	margin-top: 150px;
	position: relative;
	padding-bottom: 365px;
}
[data-page-sec="advantage-intro02"] .p-sec__box {
	display: grid;
	align-items: flex-start;
	gap: 80px 0;
	grid-template-areas: "image title"
		"image desc";
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto 1fr;
}
[data-page-sec="advantage-intro02"] .p-sec__title {
	grid-area: title;
	margin-left: 100px;
	position: relative;
	width: max-content;
}
[data-page-sec="advantage-intro02"] .p-sec__desc {
	grid-area: desc;
	margin-left: 100px;
}
[data-page-sec="advantage-intro02"] .p-sec__desc p {
	line-height: 2.5;
}
[data-page-sec="advantage-intro02"] .p-sec__desc p strong {
	color: var(--color-main);
}
[data-page-sec="advantage-intro02"] .p-sec__image {
	grid-area: image;
}
[data-page-sec="advantage-intro02"] .p-sec__image img {
	border-radius: 20px;
}
[data-page-sec="advantage-intro02"] .p-sec__deco {
	position: absolute;
	z-index: 1;
	width: max-content;
	list-style: normal;
}
[data-page-sec="advantage-intro02"] .p-sec__deco01 {
	bottom: 100%;
	margin-top: -80px;
	right: 0;
	mix-blend-mode: multiply;
}
[data-page-sec="advantage-how"] {
	padding-top: 345px;
	padding-bottom: 370px;
}
[data-page-sec="advantage-how"] .p-sec__title {
	text-align: center;
}
[data-page-sec="advantage-how"] .p-sec__box {
	margin-top: 210px;
	display: grid;
	align-items: flex-start;
	gap: 70px 0;
	grid-template-areas: "title image"
		"desc image";
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto 1fr;
}
[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) {
	grid-template-areas: "image title"
		"image desc";
}
[data-page-sec="advantage-how"] .p-sec__box-title {
	grid-area: title;
}
[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(odd) .p-sec__box-title {
	margin-right: 40px;
}
[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-title {
	margin-left: 175px;
}
[data-page-sec="advantage-how"] .p-sec__box-desc {
	grid-area: desc;
}
[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(odd) .p-sec__box-desc {
	margin-right: 40px;
}
[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-desc {
	margin-left: 175px;
}
[data-page-sec="advantage-how"] .p-sec__box-desc p {
	line-height: 2.5;
}
[data-page-sec="advantage-how"] .p-sec__box-desc p strong {
	color: var(--color-main);
}
[data-page-sec="advantage-how"] .p-sec__box-image {
	grid-area: image;
	text-align: center;
}
[data-page-sec="advantage-how"] .p-sec__box-image.type-photo img {
	border-radius: 20px;
}
[data-page-sec="advantage-how"] .p-sec__deco {
	font-style: normal;
}
[data-page-sec="advantage-how"] .p-sec__deco01 {
	display: block;
	text-align: right;
}
@media (max-width: 1239px) {
	.headline-advantage {
		height: 500px;
	}
	.headline-advantage__bg img {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
		width: 1500px;
		max-width: none;
		height: auto;
		pointer-events: none;
	}
	body.page-advantage .page-content {
		padding-top: 500px;
	}
}
@media (max-width: 1239px) {
	[data-page-sec="advantage-intro01"] .p-sec__inner {
		padding: calc(100vmin * 50 / var(--sp-font-vw)) calc(var(--side-margin) * 2) calc(100vmin * 20 / var(--sp-font-vw));
		max-width: 700px;
		margin-inline: auto;
	}
	[data-page-sec="advantage-intro01"] .p-sec__deco01 {
		top: auto;
		bottom: 340px;
		margin-left: calc((240px + 502px / 2) * -1);
	}
	[data-page-sec="advantage-intro01"] .p-sec__deco02 {
		top: auto;
		bottom: 500px;
		margin-left: calc((208px + 434px / 2));
	}
	[data-page-sec="advantage-intro01"] .p-sec__box {
		padding: 0;
		grid-template-areas:
					"title"
					"desc"
					"image";
		grid-template-columns: 1fr;
	}
	[data-page-sec="advantage-intro01"] .p-sec__image {
		text-align: center;
	}
	[data-page-sec="advantage-intro02"] {
		max-width: 800px;
		margin-inline: auto;
	}
	[data-page-sec="advantage-intro02"] .p-sec__box {
		grid-template-areas:
			"image"
			"title"
			"desc";
		grid-template-columns: 1fr;
		grid-template-rows: unset;
	}
	[data-page-sec="advantage-intro02"] .p-sec__title {
		margin-left: 0;
		width: auto;
		margin-top: 40px;
	}
	[data-page-sec="advantage-intro02"] .p-sec__deco01 {
		margin-top: -40px;
		bottom: auto;
		right: 0;
		top: 0;
	}
	[data-page-sec="advantage-intro02"] .p-sec__desc {
		margin-left: 0;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-title {
    margin-left: 40px;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-desc {
			margin-left: 40px;
	}
}
@media (max-width: 1239px) and (min-width: 768px) {
	[data-page-sec="advantage-intro02"] .p-sec__desc p br.sp-none {
		display: none;
	}
	[data-page-sec="advantage-intro01"] .p-sec__desc p br.sp-none {
		display: none;
	}
}
@media (max-width: 767px) {
	.headline-advantage {
		position: relative;
		top: 0;
		height: calc(100vmin * 190 / var(--sp-font-vw));
	}
	.headline-advantage__text img {
		width: calc(100vmin * 153 / var(--sp-font-vw));
	}
	.headline-advantage__bg img {
			width: 100%;
	}
	body.page-advantage .page-content {
		padding-top: 0;
	}
	body.page-advantage .page-content__inner {
		padding-top: calc(100vmin * 80 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] {
		margin-top: 0;
		padding-bottom: calc(100vmin * 90 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__inner {
		padding: calc(100vmin * 50 / var(--sp-font-vw)) calc(var(--side-margin) * 2) calc(100vmin * 20 / var(--sp-font-vw));
		margin-left: calc(var(--side-margin));
		margin-right: calc(var(--side-margin));
	}
	[data-page-sec="advantage-intro01"] .p-sec__deco01 {
		top: auto;
		bottom: calc(100vmin * 120 / var(--sp-font-vw));
		margin-left: calc(100vmin * 170 / var(--sp-font-vw) * -1);
		width: calc(100vmin * 125 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__deco02 {
		top: auto;
		bottom: calc(100vmin * 200 / var(--sp-font-vw));
		margin-left: calc(100vmin * 150 / var(--sp-font-vw));
		width: calc(100vmin * 137 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__deco03 {
    bottom: 0;
    margin-left: calc(100vmin * 71 / var(--sp-font-vw));
		width: calc(100vmin * 154 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__box {
		padding: 0;
		grid-template-areas:
					"title"
					"desc"
					"image";
		grid-template-columns: 1fr;
		gap: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__title {
		margin-bottom: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__desc p {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro01"] .p-sec__image img {
		width: calc(100vmin * 252 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] {
		margin-top: calc(100vmin * 140 / var(--sp-font-vw)) !important;
		padding-top: 0;
		padding-bottom: calc(100vmin * 120 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] .p-sec__inner {
		padding-right: calc(var(--side-margin));
		padding-left: calc(var(--side-margin));
	}
	[data-page-sec="advantage-intro02"] .p-sec__box {
		gap: calc(100vmin * 50 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] .p-sec__title {
		margin-top: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] .p-sec__title > img {
		width: calc(100vmin * 260 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] .p-sec__image img {
		width: 100%;
		border-radius: 11px;
	}
	[data-page-sec="advantage-intro02"] .p-sec__deco01 {
		margin-top: calc(100vmin * 33 / var(--sp-font-vw) * -1);
		bottom: auto;
		right: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-intro02"] .p-sec__deco01 img {
		width: calc(100vmin * 117 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] {
		padding-top: calc(100vmin * 160 / var(--sp-font-vw));
		padding-right: calc(var(--side-margin));
		padding-left: calc(var(--side-margin));
		padding-bottom: calc(100vmin * 280 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__title img {
		width: calc(100vmin * 137 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box {
		margin-top: calc(100vmin * 100 / var(--sp-font-vw));
		grid-template-areas:
			"title"
			"desc"
			"image";
    grid-template-columns: 1fr;
    grid-template-rows: unset;
		gap: calc(100vmin * 40 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box + .p-sec__box {
		margin-top: calc(100vmin * 140 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(odd) .p-sec__box-desc {
		margin-right: 0;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) {
			grid-template-areas:
				"image"
				"title"
				"desc";
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-desc {
		margin-left: 0;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(odd) .p-sec__box-title {
		margin-right: 0;
		text-align: center;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(1) .p-sec__box-title img {
		width: calc(100vmin * 290 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(1) .p-sec__box-image img {
		width: calc(100vmin * 240 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-title {
		margin-left: 0;
		text-align: center;
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(2) .p-sec__box-title img {
		width: calc(100vmin * 172 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box:nth-of-type(even) .p-sec__box-desc {
		display: flex;
		gap: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__box-desc p {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="advantage-how"] .p-sec__deco01 img {
		width: calc(100vmin * 140 / var(--sp-font-vw));
	}
}



/* ------------------------------
   page - 業務内容
--------------------------------- */
[data-page-sec="about-top-list"] {
	background-color: var(--color-font-r);
	padding: 110px 40px;
	border-radius: 30px;
	position: relative;
}
[data-page-sec="about-top-list"] + [data-page-sec="about-top-list"] {
	margin-top: 256px;
}
[data-page-sec="about-top-list"] .p-sec__inner {
	max-width: var(--con-w-page);
	width: 100%;
	margin-inline: auto;
}
[data-page-sec="about-top-list"] .p-sec__header {
	display: grid;
	grid-template-columns: repeat( 2, 1fr );
}
[data-page-sec="about-top-list"] .p-sec__h-desc p {
	font-size: 14px;
}
[data-page-sec="about-top-list"] .p-sec__main {
	margin-top: 110px;
}
[data-page-sec="about-top-list"] .p-sec__title-deco {
	position: absolute;
	right: 0;
	bottom: 100%;
	font-family: var(--font-en);
	font-size: 80px;
	font-style: normal;
	color: var(--color-page-about-title-deco);
	margin-bottom: 20px;
}
[data-page-sec="about-top-list"] .p-sec__link-list {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 40px;
}
[data-page-sec="about-top-list"] .p-sec__link-list a {
	width: 100%;
	display: block;
	position: relative;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure::before,
[data-page-sec="about-top-list"] .p-sec__link-list a figure::after,
[data-page-sec="about-top-list"] .p-sec__link-list a::before,
[data-page-sec="about-top-list"] .p-sec__link-list a::after {
	content: '';
	height: 28px;
	width: 63px;
	position: absolute;
	right: 0;
	bottom: 0;
	background-position: center center;
	background-repeat: no-repeat;
	border: solid 1.5px;
	border-radius: 100vmin;
	box-sizing: border-box;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure::before,
[data-page-sec="about-top-list"] .p-sec__link-list a figure::after {
	display: none;
	right: 17px;
	bottom: 13px;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure::before,
[data-page-sec="about-top-list"] .p-sec__link-list a::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/about/link-list-arrow.svg');
	background-color: var(--color-font-r);
	border-color: var(--color-main);
	z-index: 1;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure::after,
[data-page-sec="about-top-list"] .p-sec__link-list a::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/about/link-list-arrow_hover.svg');
	border-color: var(--color-font-r);
	background-color: var(--color-main);
}
[data-page-sec="about-top-list"] .p-sec__link-list a:hover figure::before,
[data-page-sec="about-top-list"] .p-sec__link-list a:hover::before {
	opacity: 0;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure {
	border-radius: 15px;
	box-shadow: 0 5px 10px rgba(0,0,0,.2);
	position: relative;
	overflow: hidden;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure > img {
	transition: ease-in .2s scale;
}
[data-page-sec="about-top-list"] .p-sec__link-list a:hover figure > img {
	scale: 1.12;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure:not(.type-icon) img {
	max-width: none;
	width: 100%;
}
[data-page-sec="about-top-list"] .p-sec__link-list a figure.type-icon {
	display: flex;
	align-items: center;
	min-height: 320px;
	justify-content: center;
	background-color: var(--color-page-about-link-list-icon-bg);
	padding-top: 30px;
}
[data-page-sec="about-top-list"] .p-sec__link-list-tag {
	font-style: normal;
	position: absolute;
	left: 0;
	top: 0;
}
[data-page-sec="about-top-list"] .p-sec__link-list-tag img {
	border-radius: 0 0 15px 0;
}
[data-page-sec="about-top-list"] .p-sec__link-list-title {
	margin-top: 30px;
}
[data-page-sec="about-top-list"] .p-sec-box {
	margin-top: 150px;
	display: grid;
	grid-template-columns: 41% 1fr;
	gap: 10%;
	align-items: center;
	margin-bottom: 200px;
}
[data-page-sec="about-top-list"] .p-sec-box__header {
	max-width: 950px;
	width: 100%;
	margin-inline: auto;
}
[data-page-sec="about-top-list"] .p-sec-box__h-desc {
	margin-top: 40px;
}
[data-page-sec="about-top-list"] .p-sec-box__h-desc p {
	font-size: 16px;
}
[data-page-sec="about-top-list"] .p-sec-box__h-desc p strong {
	font-weight: 400;
	color: var(--color-main);
}
[data-page-sec="about-top-list"] .p-sec-box__main {
	margin-top: 40px;
}
[data-page-sec="about-top-list"] .p-sec-box__image-group {
	display: flex;
	align-items: center;
	gap: 30px;
}
@media (max-width: 1239px) {
	[data-page-sec="about-top-list"] .p-sec__title-deco {
		font-size: 60px;
	}
	[data-page-sec="about-top-list"] + [data-page-sec="about-top-list"] {
		margin-top: 200px;
	}
}
@media (min-width: 1080px) {
	[data-page-sec="about-top-list"] .p-sec__header .type-sp {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec__h-desc .type-sp {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list-title .type-sp  {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec-box__header [data-style-page="custom-01"] .type-sp {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec-box__h-desc .type-sp {
		display: none !important;
	}
}
@media (max-width: 1079px) {
	[data-page-sec="about-top-list"] .p-sec__header .type-pc {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list-title .type-pc  {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec-box__header [data-style-page="custom-01"] .type-pc {
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec__header {
		grid-template-columns: 1fr;
		gap: 50px;
	}
	[data-page-sec="about-top-list"] .p-sec__header [data-style-page="custom-01"] {
		text-align: center;
	}
	[data-page-sec="about-top-list"] .p-sec__h-desc {
		text-align: center;
	}
	[data-page-sec="about-top-list"] .p-sec__main {
		margin-top: 60px;
	}
	[data-page-sec="about-top-list"] .p-sec-box {
		display: block;
		margin-top: 110px;
	}
	[data-page-sec="about-top-list"] .p-sec-box__h-desc {
		text-align: center;
	}
	[data-page-sec="about-top-list"] .p-sec-box__main {
		margin-top: 45px;
	}
	[data-page-sec="about-top-list"] .p-sec-box__image-group {
		justify-content: center;
	}
	[data-page-sec="about-top-list"] .p-sec-box__header [data-style-page="custom-01"] {
		text-align: center;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list {
		max-width: 700px;
		margin-inline: auto;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list {
		grid-template-columns: repeat(2, 1fr);
	}
	[data-page-sec="about-top-list"] .p-sec__link-list a::before, [data-page-sec="about-top-list"] .p-sec__link-list a::after {
		top: 0;
		margin-top: 83%;
		right: 5%;
		bottom: auto;
		height: 3.5vw;
    width: 7.5vw;
		display: none !important;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list a figure::before, [data-page-sec="about-top-list"] .p-sec__link-list a figure::after {
		height: 3.5vw;
    width: 7.5vw;
		display: inline-block !important;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list a figure.type-icon {
		padding-top: 0;
		min-height: 37vw;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list-title {
		margin-top: 25px;
		text-align: center;
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(1) a figure > img {
		width: 20.9vw;
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(2) a figure > img {
		width: 20.5vw;
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(3) a figure > img {
		width: 24.3vw;
	}
}
@media (max-width: 767px) {
	[data-page-sec="about-top-list"] {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw));
		padding: calc(100vmin * 80 / var(--sp-font-vw)) calc(var(--side-margin) * 1.5) calc(100vmin * 90 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] + [data-page-sec="about-top-list"] {
		margin-top: calc(100vmin * 120 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__title-deco {
		font-size: calc(100vmin * 32 / var(--sp-font-vw));
		margin-bottom: calc(100vmin * 15 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__header {
		grid-template-columns: 1fr;
		gap: calc(100vmin * 50 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__h-desc p {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__main {
		margin-top: calc(100vmin * 60 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec-box {
		margin-top: calc(100vmin * 110 / var(--sp-font-vw));
		margin-bottom: calc(100vmin * 70 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec-box__main {
		margin-top: calc(100vmin * 45 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__link-list {
		gap: calc(100vmin * 25 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__link-list a figure::before, [data-page-sec="about-top-list"] .p-sec__link-list a figure::after {
		bottom: calc(100vmin * 7 / var(--sp-font-vw));
		right: calc(100vmin * 7 / var(--sp-font-vw));
		height: calc(100vmin * 14 / var(--sp-font-vw));
    width: calc(100vmin * 35 / var(--sp-font-vw));
		background-size: calc(100vmin * 9 / var(--sp-font-vw)) auto;
	}
	[data-page-sec="about-top-list"] .p-sec__link-list a figure.type-icon {
		padding-top: 0;
		min-height: calc(100vmin * 140 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__link-list-tag {
		width: calc(100vmin * 60 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"] .p-sec__link-list-title {
		margin-top: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(1) .p-sec__link-list:nth-of-type(1) li:nth-of-type(1) .p-sec__link-list-title img {
		width: calc(100vmin * 105 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(1) .p-sec__link-list:nth-of-type(1) li:nth-of-type(2) .p-sec__link-list-title img {
		width: calc(100vmin * 70 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(1) .p-sec__link-list-title img {
		width: calc(100vmin * 82 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(2) .p-sec__link-list-title img {
		width: calc(100vmin * 82 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(3) .p-sec__link-list-title img {
		width: calc(100vmin * 82 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(1) a figure > img {
		width: calc(100vmin * 89 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(2) a figure > img {
		width: calc(100vmin * 79 / var(--sp-font-vw));
	}
	[data-page-sec="about-top-list"]:nth-of-type(2) .p-sec__link-list:nth-of-type(1) li:nth-of-type(3) a figure > img {
		width: calc(100vmin * 104 / var(--sp-font-vw));
	}
}



/* ------------------------------
   page - 業務内容詳細ページ
--------------------------------- */
[data-page-sec="about-single-sec"] {
	position: relative;
}
[data-page-sec="about-single-sec"] + [data-page-sec="about-single-sec"] {
	margin-top: 100px;
}
[data-page-sec="about-single-sec"] .p-sec__inner {
	max-width: 910px;
	width: 100%;
	margin-inline: auto;
	display: grid;
	grid-template-areas: "title title"
		"desc image";
	grid-template-rows: auto 1fr;
	grid-template-columns: 1fr 38%;
	justify-content: flex-start;
	gap: 0 70px;
}
[data-page-sec="about-single-sec"] .p-sec__inner.type-imageS {
	grid-template-columns: 1fr 31%;
}
[data-page-sec="about-single-sec"] .p-sec__inner.type-title-desc {
	grid-template-areas: "title"
		"desc";
	grid-template-rows: 1fr;
	grid-template-columns: 1fr;
}
[data-page-sec="about-single-sec"] .p-sec__inner.type-title-2desc {
	grid-template-areas: "title title"
		"desc01 desc02";
	grid-template-rows: auto 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 0 70px;
}
[data-page-sec="about-single-sec"] .p-sec__inner.type-title-2desc.type-adjust01 {
	grid-template-columns: 1fr auto;
}
[data-page-sec="about-single-sec"] .p-sec__title {
	grid-area: title;
}
[data-page-sec="about-single-sec"] .p-sec__image {
	grid-area: image;
	text-align: center;
}
[data-page-sec="about-single-sec"] .p-sec__image img:not(.type-sp):not(.type-pc) + img:not(.type-sp):not(.type-pc) {
	margin-top: 20px;
}
[data-page-sec="about-single-sec"] .p-sec__desc {
	grid-area: desc;
}
[data-page-sec="about-single-sec"] .type-title-2desc .p-sec__desc:nth-of-type(1) {
	grid-area: desc01;
}
[data-page-sec="about-single-sec"] .type-title-2desc .p-sec__desc:nth-of-type(2) {
	grid-area: desc02;
}
[data-page-sec="about-single-sec"] .p-sec__desc p {
	line-height: 1.8;
	font-size: 16px;
}
[data-page-sec="about-single-sec"] .p-sec__desc p strong {
	color: var(--color-main);
	font-weight: inherit;
}
[data-page-sec="about-single-sec"] .p-sec__desc p + p {
	margin-top: 1.5em;
}
[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) {
	line-height: 1.5;
	font-size: 16px;
}
[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) strong {
	color: var(--color-main);
}
[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) b {
	font-weight: inherit;
	color: var(--color-main);
}
[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) li + li {
	margin-top: 1.5em;
}
[data-page-sec="about-single-sec"] .p-sec__desc a {
	text-decoration: underline;
}
[data-page-sec="about-single-sec"] .p-sec__desc dl {
	font-size: 16px;
	line-height: 1.5;
}
[data-page-sec="about-single-sec"] .p-sec__desc dt {
	font-size: 24px;
	line-height: 1.2;
	font-weight: inherit;
	color: var(--color-main);
}
[data-page-sec="about-single-sec"] .p-sec__desc dl > div + div {
	margin-top: 3em;
}
[data-page-sec="about-single-sec"] .p-sec__desc-point {
	display: flex;
	justify-content: flex-end;
	line-height: 1.5;
	font-size: 12px;
	margin-top: 5em;
}
[data-page-sec="about-single-sec"] .p-sec__desc-point li {
	text-indent: -1em;
	padding-left: 1em;
}
[data-page-sec="about-single-sec"] .p-sec__desc-point li::before {
	content: '※';
}
@media (max-width: 1399px) {
	[data-page-sec="about-single-sec"] .p-sec__inner {
		gap: 0 80px;
	}
	[data-page-sec="about-single-sec"] .p-sec__inner.type-imageS {
		grid-template-columns: 1fr;
	}
}
@media (min-width: 1240px) {
	[data-page-sec="about-single-sec"] .p-sec__title .type-tab {
		display: none !important;
	}
	[data-page-sec="about-single-sec"] {
		background-color: var(--color-font-r);
		padding: 60px 90px;
		border-radius: 22px;
	}
	[data-page-sec="about-single-sec"] .p-sec__image .type-sp {
		display: none !important;
	}
}
@media (max-width: 1239px) {
	[data-page-sec="about-single-sec"] .p-sec__title .type-pc-only {
		display: none !important;
	}
	[data-page-sec="about-single-sec"] .p-sec__image .type-pc {
		display: none !important;
	}
	[data-page-sec="about-single-sec"] .p-sec__inner {
		margin-top: 50px;
		grid-template-areas: "title"
			"image"
			"desc";
		grid-template-rows: 1fr;
		grid-template-columns: 1fr;
		gap: 0 106px;
		background-color: var(--color-font-r);
		border-radius: 20px;
		padding: 50px 50px 70px;
	}
	[data-page-sec="about-single-sec"] .p-sec__image {
		margin-bottom: 40px;
		max-width: 400px;
		margin-inline: auto;
	}
}
@media (max-width: 767px) {
	[data-page-sec="about-single-sec"] .p-sec__title .type-tab {
		display: none !important;
	}
	[data-page-sec="about-single-sec"] .p-sec__inner {
		padding: calc(100vmin * 80 / var(--sp-font-vw)) calc(100vmin * 25 / var(--sp-font-vw)) calc(100vmin * 100 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__inner.type-title-2desc {
		grid-template-areas:
			"title"
			"desc01"
			"desc02";
		grid-template-rows: 1fr;
		grid-template-columns: 1fr;
	}
	[data-page-sec="about-single-sec"] .p-sec__inner.type-title-2desc.type-adjust01 {
		grid-template-columns: 1fr;
	}
	[data-page-sec="about-single-sec"] .p-sec__desc p {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__image {
		margin-bottom: calc(100vmin * 40 / var(--sp-font-vw));
		max-width: none;
	}
	[data-page-sec="about-single-sec"] .p-sec__desc dt {
		font-size: calc(100vmin * 24 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__desc dd {
		font-size: calc(100vmin * 16 / var(--sp-font-vw));
		margin-top: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__desc dl > div + div {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .type-title-2desc .p-sec__desc:nth-of-type(2),
	[data-page-sec="about-single-sec"] .p-sec__desc ul:not([class*="p-sec__desc-"]) li + li {
		margin-top: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="about-single-sec"] .p-sec__desc-point {
		font-size: calc(100vmin * 13 / var(--sp-font-vw));
		justify-content: flex-start;
	}
	/* 空中写真測量 */
	body.page-about-photogrammetry [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 254 / var(--sp-font-vw));
	}
	body.page-about-photogrammetry [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 332 / var(--sp-font-vw));
	}
	body.page-about-photogrammetry [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 203 / var(--sp-font-vw));
	}
	body.page-about-photogrammetry [data-page-sec="about-single-sec"].type-sec04 .p-sec__title img {
		width: calc(100vmin * 226 / var(--sp-font-vw));
	}
	/* 地上測量 */
	body.page-about-geodetic-surveying [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-geodetic-surveying [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 177 / var(--sp-font-vw));
	}
	body.page-about-geodetic-surveying [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	/* 庁内型GIS */
	body.page-about-intranet-based [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-intranet-based [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 177 / var(--sp-font-vw));
	}
	body.page-about-intranet-based [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-intranet-based [data-page-sec="about-single-sec"].type-sec03 .p-sec__image img {
		max-width: none;
		width: calc(100vmin * 148 / var(--sp-font-vw));
	}
	body.page-about-intranet-based [data-page-sec="about-single-sec"].type-sec04 .p-sec__title img {
		width: calc(100vmin * 292 / var(--sp-font-vw));
	}
	/* 総合型GIS */
	body.page-about-integrated [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-integrated [data-page-sec="about-single-sec"].type-sec01 .p-sec__image img {
		width: calc(100vmin * 190 / var(--sp-font-vw));
	}
	body.page-about-integrated [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 141 / var(--sp-font-vw));
	}
	body.page-about-integrated [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-integrated [data-page-sec="about-single-sec"].type-sec04 .p-sec__title img {
		width: calc(100vmin * 292 / var(--sp-font-vw));
	}
	/* 公開型GIS */
	body.page-about-open [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-open [data-page-sec="about-single-sec"].type-sec01 .p-sec__image img {
		width: calc(100vmin * 161 / var(--sp-font-vw));
	}
	body.page-about-open [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 177 / var(--sp-font-vw));
	}
	body.page-about-open [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	/* 3D測量技術 */
	body.page-about-3d-surveying [data-page-sec="about-single-sec"].type-sec01 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-3d-surveying [data-page-sec="about-single-sec"].type-sec02 .p-sec__title img {
		width: calc(100vmin * 177 / var(--sp-font-vw));
	}
	body.page-about-3d-surveying [data-page-sec="about-single-sec"].type-sec03 .p-sec__title img {
		width: calc(100vmin * 58 / var(--sp-font-vw));
	}
	body.page-about-3d-surveying [data-page-sec="about-single-sec"].type-sec04 .p-sec__title img {
		width: calc(100vmin * 146 / var(--sp-font-vw));
	}
}



/* ------------------------------
   page - 実績紹介
--------------------------------- */
[data-page-sec="works-contents"] h2[data-style-page="custom-01"] {
	display: flex;
	align-items: center;
	gap: 25px;
}
[data-page-sec="works-contents"] h2[data-style-page="custom-01"] img {
	flex-shrink: 0;
	opacity: 0;
	transition-timing-function: ease-in;
	transition-duration: .2s;
	transition-property: opacity;
}
[data-page-sec="works-contents"][data-scroll-action="true"] h2[data-style-page="custom-01"] img {
	opacity: 1;
}
[data-page-sec="works-contents"] h2[data-style-page="custom-01"]::after {
	content: '';
	height: 1px;
	opacity: 0;
	background-color: var(--color-font);
}
[data-page-sec="works-contents"] h2[data-style-page="custom-01"]::after {
	width: 0;
	transition-delay: .15s;
	transition-timing-function: ease-in;
	transition-duration: .45s;
	transition-property: width;
}
[data-page-sec="works-contents"][data-scroll-action="true"] h2[data-style-page="custom-01"]::after {
	width: 100%;
	opacity: 1;
}
[data-page-sec="works-contents"] .p-sec__main {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 75px;
	margin-top: 50px;
}
[data-page-sec="works-contents"] .p-item__main {
	position: relative;
	overflow: hidden;
	min-height: 228px;
	border-radius: 20px;
	box-sizing: border-box;
	padding-top: 25px;
	color: var(--color-font-r);
}
[data-page-sec="works-contents"] h3[data-style-page="custom-02"] {
	padding-bottom: 25px;
}
[data-page-sec="works-contents"] .p-item__main strong {
	text-align: center;
	display: block;
}
[data-page-sec="works-contents"] .p-item__main strong .type-val-set,
[data-page-sec="works-contents"] .p-item__main strong .type-val {
	font-size: 100px;
	font-family: var(--font-num);
	font-weight: 400;
}
[data-page-sec="works-contents"] .p-item__main strong .type-val {
	visibility: hidden;
	display: none;
}
[data-page-sec="works-contents"] .p-item__main strong small {
	font-size: 24px;
	font-weight: 400;
	position: absolute;
	left: calc(100% - 4em);
	bottom: 40px;
	word-break: keep-all;
}
[data-page-sec="works-contents"] h3[data-style-page="custom-02"] {
	text-align: center;
}
[data-page-sec="works-contents"] h3[data-style-page="custom-02"] data[data-en]::after {
	content: attr(data-en);
	display: block;
	font-family: var(--font-en);
	font-size: 8px;
	margin-top: 10px;
}
[data-page-sec="works-contents"] .p-item {
	opacity: 0;
	transform: translateY(90px);
	transition-timing-function: ease-out;
	transition-duration: .5s;
	transition-property: opacity, transform;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(1) {
	transition-delay: .2s;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(2) {
	transition-delay: .4s;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(3) {
	transition-delay: .6s;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(4) {
	transition-delay: .8s;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(5) {
	transition-delay: 1s;
}
[data-page-sec="works-contents"] .p-item:nth-of-type(6) {
	transition-delay: 1.2;
}
[data-page-sec="works-contents"][data-scroll-action="true"] .p-item {
	opacity: 1;
	transform: translateY(0);
}
[data-page-sec="works-contents"] .p-item__bg {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
	padding-top: 27.5%;
	padding-bottom: 27.5%;
	width: 100%;
}
[data-page-sec="works-contents"] .p-item__footer {
	margin-top: 25px;
	padding-right: 40px;
	padding-left: 40px;
}
[data-page-sec="works-contents"] .p-item__footer  dl dt {
	font-weight: 400;
	width: 100%;
	text-align: center;
	border: solid 1px var(--color-page-works-related-border);
	border-radius: 100vmin;
	margin-bottom: 20px;
	padding: 4px;
	background-color: var(--color-font-r);
}
[data-page-sec="works-contents"] .p-item__footer  dl dd {
	font-size: 16px;
	padding-left: .5em;
	position: relative;
	line-height: 1.4;
}
[data-page-sec="works-contents"] .p-item__footer  dl dd::before {
	content: '';
	position: absolute;
	left: 0;
	top: .55em;
	width: 5px;
	height: 5px;
	background-color: var(--color-font);
}
[data-page-sec="works-contents"] .p-item__footer  dl dd + dd {
	margin-top: 7px;
}
[data-page-sec="works-pl"] ul {
	max-width: 241px;
	margin-inline: auto;
	margin-bottom: 90px;
}
[data-page-sec="works-pl"] li + li {
	margin-top: 40px;
}
[data-page-sec="works-pl"] li a {
	position: relative;
	display: block;
	padding-bottom: 10px;
	border-bottom: solid .5px;
}
[data-page-sec="works-pl"] li a i {
	font-style: normal;
	width: 31px;
	height: 13px;
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -10px;
	transform: translateY(-50%);
	border-radius: 100vmin;
	box-sizing: border-box;
	background: var(--color-bg-grad01);
}
[data-page-sec="works-pl"] li a i::before,
[data-page-sec="works-pl"] li a i::after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background-position: center center;
	background-repeat: no-repeat;
}
[data-page-sec="works-pl"] li a i::before {
	border-radius: 100vmin;
	box-sizing: border-box;
}
[data-page-sec="works-pl"] li a i::before {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/works/pl-arrow_hover.svg');
}
[data-page-sec="works-pl"] li a i::after {
	background-image: url('/wp-content/themes/chusoku-thema/assets/images/works/pl-arrow.svg');
	z-index: 1;
}
[data-page-sec="works-pl"] li a:hover > i {
	background: none;
}
[data-page-sec="works-pl"] li a:hover > i::after {
	opacity: 0;
}
[data-page-sec="works-pl"] li a:hover > i::before {
	border: solid 1px var(--color-page-works-pl-arrow-hover-border);
}
@media (max-width: 1400px) {
	[data-page-sec="works-contents"] {
		max-width: 900px;
		margin-inline: auto;
	}
	[data-page-sec="works-contents"] .p-sec__main {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 75px;
	}
}
@media (min-width: 941px) {
	[data-page-sec="works-contents"] h3[data-style-page="custom-02"] .type-sp {
		display: none !important;
	}
	[data-page-sec="works-pl"] {
		display: none !important;
	}
}
@media (max-width: 940px) {
	[data-page-sec="works-contents"] .p-item__bg video {
		min-width: 80vh;
		min-height: 80vh;
	}
	[data-page-sec="works-contents"] h3[data-style-page="custom-02"] .type-pc {
		display: none !important;
	}
	[data-page-sec="works-contents"] {
		max-width: 420px;
	}
	[data-page-sec="works-contents"] .p-sec__main {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}
	[data-page-sec="works-contents"] h2[data-style-page="custom-01"] {
		display: block;
		text-align: center;
	}
	[data-page-sec="works-contents"] h2[data-style-page="custom-01"]::after {
		display: none;
	}
}
@media (max-width: 767px) {
	[data-page-sec="works-contents"] .p-item {
		padding-right: var(--side-margin);
		padding-left: var(--side-margin);
	}
		[data-page-sec="works-contents"] .page-content__main {
		max-width: none;
	}
	[data-page-sec="works-contents"] {
		max-width: calc(100vmin * 318 / var(--sp-font-vw));
		margin-inline: auto;
	}
	[data-page-sec="works-contents"] .p-item__main strong .type-val-set, [data-page-sec="works-contents"] .p-item__main strong .type-val {
		font-size: calc(100vmin * 78 / var(--sp-font-vw));
	}
	[data-page-sec="works-contents"] .p-item__main strong small {
		font-size: calc(100vmin * 22 / var(--sp-font-vw));
    	bottom: calc(100vmin * 25 / var(--sp-font-vw));
		left: calc(100% - 4.5em);
		width: 4.5em;
		text-align: center;
	}
	[data-page-sec="works-contents"] h3[data-style-page="custom-02"] {
		padding-bottom: calc(100vmin * 15 / var(--sp-font-vw));
	}
	[data-page-sec="works-contents"] h3[data-style-page="custom-02"] data[data-en]::after {
		font-size: calc(100vmin * 7 / var(--sp-font-vw));
		margin-top:  calc(100vmin * 10 / var(--sp-font-vw));
	}
	[data-page-sec="works-contents"] .p-item__main {
		min-height: 0;
		height: calc(100vmin * 180 / var(--sp-font-vw));
		padding-top: calc(100vmin * 25 / var(--sp-font-vw));
		gap: calc(100vmin * 85 / var(--sp-font-vw));
	}
	.page-content__sec:nth-of-type(1) .p-item:nth-of-type(1) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 250 / var(--sp-font-vw));
	} 
	.page-content__sec:nth-of-type(1) .p-item:nth-of-type(2) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 148 / var(--sp-font-vw));
	} 
	.page-content__sec:nth-of-type(1) .p-item:nth-of-type(3) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 172 / var(--sp-font-vw));
	}
	.page-content__sec:nth-of-type(2) .p-item:nth-of-type(1) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 118 / var(--sp-font-vw));
	} 
	.page-content__sec:nth-of-type(2) .p-item:nth-of-type(2) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 118 / var(--sp-font-vw));
	} 
	.page-content__sec:nth-of-type(2) .p-item:nth-of-type(3) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 118 / var(--sp-font-vw));
	}
	.page-content__sec:nth-of-type(3) .p-item:nth-of-type(1) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 248 / var(--sp-font-vw));
	} 
	.page-content__sec:nth-of-type(3) .p-item:nth-of-type(1) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 173 / var(--sp-font-vw));
	}
	.page-content__sec:nth-of-type(3) .p-item:nth-of-type(2) h3[data-style-page="custom-02"] img {
		width: calc(100vmin * 173 / var(--sp-font-vw));
	}
	[data-page-sec="works-contents"] .p-item__footer dl dt {
		font-size: calc(100vmin * 12 / var(--sp-font-vw));
		margin-bottom: calc(100vmin * 20 / var(--sp-font-vw));
	}
	[data-page-sec="works-contents"] .p-item__footer dl dd {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
		white-space: nowrap;
	}
	[data-page-sec="works-contents"] .p-item__footer {
		margin-top: calc(100vmin * 40 / var(--sp-font-vw));
		padding-right: calc(100vmin * 30 / var(--sp-font-vw));
		padding-left: calc(100vmin * 30 / var(--sp-font-vw));
	}
	[data-page-sec="works-pl"] ul {
		margin-bottom: calc(100vmin * 90 / var(--sp-font-vw));
		max-width: none;
		width: calc(100vmin * 241 / var(--sp-font-vw));
	}
	[data-page-sec="works-pl"] li + li {
	margin-top: calc(100vmin * 40 / var(--sp-font-vw));
}
	[data-page-sec="works-pl"] li a {
		position: relative;
		display: block;
		padding-bottom: calc(100vmin * 10 / var(--sp-font-vw));
		border-bottom: solid .5px;
	}
		[data-page-sec="works-pl"] li a i {
		width: calc(100vmin * 31 / var(--sp-font-vw));
		height: calc(100vmin * 13 / var(--sp-font-vw));
		top: 50%;
		margin-top: calc(100vmin * -10 / var(--sp-font-vw));
	}
	[data-page-sec="works-pl"] li a i::before,
[data-page-sec="works-pl"] li a i::after {
		background-size: calc(100vmin * 9 / var(--sp-font-vw)) calc(100vmin * 5 / var(--sp-font-vw));
	}
}


/* ------------------------------
   page - お問い合わせ
--------------------------------- */
.form-contents {
	margin-top: 100px;
}
.form-contents table {
	table-layout: fixed;
}
.form-contents tbody,
.form-contents table {
	width: 100%;
}
.form-contents tbody tr:not(:last-of-type) td,
.form-contents tbody tr:not(:last-of-type) th {
	padding-bottom: 70px;
}
.form-contents th {
	position: relative;
	width: 280px;
	padding-top: 30px;
}
.form-contents th[data-tag]::after {
	content: attr(data-tag);
	background-color: var(--color-main);
	display: inline-block;
	min-width: 60px;
	padding: 6px;
	border-radius: 100vmin;
	position: absolute;
	right: 0;
	top: calc(-.3em + 30px);
	color: var(--color-font-r);
	font-weight: 400;
	font-size: 12px;
	text-align: center;
}
.form-contents td {
	padding-left: 20px;
}
.mw_wp_form_preview .form-contents td {
	padding-top: 30px;
}
.form-contents td textarea,
.form-contents td input[type="email"],
.form-contents td input[type="text"] {
	padding: 30px 20px;
	box-sizing: border-box;
	border: solid .2px;
	background-color: var(--color-font-r);
	width: 100%;
	border-radius: 5px;
	font-size: 14px;
}
.form-contents td textarea {
	height: 300px;
}
.form-contents td ::placeholder {
	color: var(--color-page-contact-placeholder);
}
.form-contents__check {
	margin-top: 80px;
}
.mw_wp_form_preview .form-contents__check {
	margin-top: 50px;
	padding-top: 50px;
	border-top: solid 1px var(--color-gray03);
}
.form-contents__check-input {
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.mw_wp_form_preview .form-contents__check-input {
	display: none;
}
.mw_wp_form_input .form-contents__check-confirm {
	display: none;
}
.form-contents__check input[type="checkbox"] {
	-webkit-appearance: auto;
	appearance: auto;
	width: 27px;
	height: 27px;
	border: solid 2px var(--color-main);
	border-radius: 4px;
	background-color: var(--color-font-r);
	margin: 0 15px 0 0;
}
.form-contents__check .error {
	order: 3;
	width: 100%;
}
.form-contents__check a {
	text-decoration: underline;
	color: var(--color-main);
}
.form-contents__check .mwform-checkbox-field-text {
	display: none;
}
.form-contents__button {
	display: flex;
	justify-content: center;
	margin-top: 115px;
	gap: 40px 30px;
}
.form-contents__button button {
	max-width: 450px;
	width: 100%;
	padding: 30px 20px;
	border-radius: 100vmin;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: var(--color-font-r);
}
.form-contents__button button[type="submit"] {
	background-image: var(--color-bg-grad01);
}
.form-contents__button button[type="submit"][value="back"] {
	background: var(--color-gray-dark);
}
.mw_wp_form .error {
	font-weight: 700;
	padding-top: .5em;
}
@media (max-width: 1239px) {
	.form-contents table,
	.form-contents tbody,
	.form-contents tr,
	.form-contents td {
		display: block;
	}
	.form-contents th {
		padding-top: 0;
		display: flex;
		align-items: center;
		gap: 15px;
		padding-bottom: 20px !important;
		word-break: keep-all;
	}
	.form-contents td {
		padding-left: 0;
		width: 100%;
	}
	.form-contents tbody tr:not(:last-of-type) td {
		padding-bottom: 50px;
	}
	.form-contents th[data-tag]::after {
		position: static;
	}
	.form-contents__button {
		flex-direction: column;
		align-items: center;
	}
}
@media (max-width: 767px) {
	.form-contents {
		margin-top: calc(100vmin * 70 / var(--sp-font-vw));
	}
	.form-contents th {
		gap: calc(100vmin * 15 / var(--sp-font-vw));
		padding-bottom: calc(100vmin * 20 / var(--sp-font-vw)) !important;
	}
	.mw_wp_form_preview .form-contents td {
		padding-top: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.form-contents tbody tr:not(:last-of-type) td {
		padding-bottom: calc(100vmin * 50 / var(--sp-font-vw));
	}
	.form-contents th[data-tag]::after {
		font-size: calc(100vmin * 10 / var(--sp-font-vw));
		min-width: calc(100vmin * 42 / var(--sp-font-vw));
		padding: calc(100vmin * 4 / var(--sp-font-vw));
	}
	.form-contents td textarea,
	.form-contents td input[type="email"],
	.form-contents td input[type="text"] {
		padding: calc(100vmin * 20 / var(--sp-font-vw)) calc(100vmin * 15 / var(--sp-font-vw));
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
	.form-contents td textarea {
		height: calc(100vmin * 300 / var(--sp-font-vw));
	}
	.form-contents__check {
		margin-top: calc(100vmin * 60 / var(--sp-font-vw));
	}
	.mw_wp_form_preview .form-contents__check {
		margin-top: calc(100vmin * 50 / var(--sp-font-vw));
		padding-top: calc(100vmin * 50 / var(--sp-font-vw));
		border-top: solid 1px var(--color-gray03);
	}
	.form-contents__check input[type="checkbox"] {
		width: calc(100vmin * 27 / var(--sp-font-vw));
		height: calc(100vmin * 27 / var(--sp-font-vw));
	}
	.form-contents__button {
		margin-top: calc(100vmin * 90 / var(--sp-font-vw));
		gap: calc(100vmin * 30 / var(--sp-font-vw));
	}
	.form-contents__button button {
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
	}
	.form-contents__button button {
		max-width: calc(100vmin * 260 / var(--sp-font-vw));
	}
}




/* ------------------------------
   page - プライバシーポリシー
--------------------------------- */
[data-page-sec="privacy-content"] {
	counter-reset: cnt-privacy-title;
}
[data-page-sec="privacy-content"] .p-sec__desc p {
	line-height: 1.7;
}
[data-page-sec="privacy-content"] .p-sec-box {
	margin-top: 80px;
	counter-increment: cnt-privacy-title;
}
[data-page-sec="privacy-content"] .p-sec-box__title {
	color: var(--color-main);
	font-size: 30px;
	margin-bottom: 20px;
}
[data-page-sec="privacy-content"] .p-sec-box__title::before {
	content: counter(cnt-privacy-title) '.';
	margin-right: .5em;
}
[data-page-sec="privacy-content"] .p-sec-box__desc {
	margin-left: 35px;
}
[data-page-sec="privacy-content"] .p-sec-box__desc :where(p,li,address) {
	line-height: 2;
	font-style: normal;
	letter-spacing: 0;
}
[data-page-sec="privacy-content"] .p-sec-box__desc ul li::before {
	content: '・';
}
@media (max-width: 767px) {
	[data-page-sec="privacy-content"] .p-sec-box__title {
		font-size: calc(100vmin * 20 / var(--sp-font-vw));
		line-height: 1.4;
	}
	[data-page-sec="privacy-content"] .p-sec-box__title::before {
		margin-right: 0;
	}
	[data-page-sec="privacy-content"] .p-sec-box__desc {
		margin-left: 0;
	}
	[data-page-sec="privacy-content"] .p-sec-box__desc p {
		font-size: calc(100vmin * 14 / var(--sp-font-vw));
	}
}


