@charset "utf-8";

/* home
-------------------------------------------------------------------*/

body.home .kv_wrap{
	position:relative;
	aspect-ratio:1920 / 920;
	z-index:1;
	--delayUnit:0.2s;
	max-width: 1920px;
	margin-inline: auto;
}
body.home .kv_wrap .delay_set{
	filter:saturate(0);
	position:relative;
	aspect-ratio:1920 / 920;
	z-index: 1;
	animation-delay: 0s;
	animation-duration: 0.8s;
	animation-fill-mode: forwards;
	animation-timing-function: cubic-bezier(0.43, 0.82, 0.16, 0.97);
}
body.home .kv_wrap .delay_set.once{
	animation-name: kv-filter;
}
body.home .kv_wrap *[class*="layer"]{
	position:absolute;
	inset:0;
	transform:scale(50%) translateZ(0);
	opacity:0;
	animation-duration: 1.4s;
	animation-fill-mode: forwards;
	animation-timing-function: cubic-bezier(0.43, 0.82, 0.16, 0.97);
/*	animation-delay: 0s;*/
}
body.home .kv_wrap .delay_set.once *[class*="layer"]{
	animation-name: kv-size;
}

@keyframes kv-filter {
	0% {
		filter:saturate(0);
	}
	100% {
		filter:saturate(100%);
	}
}
@keyframes kv-size {
	0% {
		transform: scale(50%) translateZ(0);
		opacity: 0;
	}
	100% {
		transform: scale(100%);
		opacity: 1;
	}
}

body.home .kv_wrap *[class*="layer"] img{
	display:block;
	animation-name: float;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
}
body.home .kv_wrap .layer01 img {
	--float-amplitude: 3px;
	animation-duration: 10s;
	animation-delay: 0s;
}
body.home .kv_wrap .layer02 img {
	--float-amplitude: 5px;
	animation-duration: 8s;
	animation-delay: -1.5s; 
}
body.home .kv_wrap .layer03 img {
	--float-amplitude: 7px;
	animation-duration: 7s;
	animation-delay: -3s;
}
body.home .kv_wrap .layer04 img {
	--float-amplitude: 9px;
	animation-duration: 6s;
	animation-delay: -4.5s;
}
body.home .kv_wrap .layer05 img {
	--float-amplitude: 12px;
	animation-duration: 5s;
	animation-delay: -6s;
}
body.home .kv_wrap .layer06 img {
	--float-amplitude: 15px;
	animation-duration: 4s;
	animation-delay: -7.5s;
}
@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(calc(-1 * var(--float-amplitude, 0.5em)));
  }
  100% {
    transform: translateY(0);
  }
}
body.home .kv_wrap .scroll_down{
	position:absolute;
	z-index:10;
	right:2em;
	bottom: 2em;
}
body.home .kv_wrap .scroll_down a{
	position:relative;
	display:block;
	box-shadow:0 0 5px rgba(0,0,0,0.5);
	border-radius:50%;
	color:#fff;
}
body.home .kv_wrap .scroll_down a .intxt{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	gap:0.25em;
	position:absolute;
	z-index:1;
	inset:0;
	margin:0;
}
body.home .kv_wrap .scroll_down a img{
	display:block;
	animation-name: roll;
	animation-timing-function: linear;
	animation-duration: 12s;
	animation-iteration-count: infinite;
}
body.home .kv_wrap .scroll_down a b{
	font-size:2.125rem;
	line-height:1;
	font-weight:300;
}
@keyframes roll {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@media (any-hover: hover) {
	body.home .kv_wrap .scroll_down a:hover{
		color:#222;
	}
	body.home .kv_wrap .scroll_down a:hover img{
		filter:brightness(0.85) invert(1);
	}
}

body .ttl_set{
	display:flex;
	flex-direction:column;
	margin-bottom: 6em;
	gap: 0.75em;
	letter-spacing: 0.1em;
	align-items:center;
	border-block:solid 1px;
	padding-block: 5.5em;
}
body .ttl_set :is(h1,h2,h3,h4,h5,h6){
	font-weight: 500;
	font-size:1.5rem;
	font-family: var(--font);
}
body .ttl_set [lang="en"]{
	font-size: 3.5rem;
	font-weight: 300;
	line-height:1.0;
	margin: 0 auto;
}
:root .job-nav{
	display:flex;
	justify-content:center;
	border-block:solid 1px;
	padding-block:4em 5.75em;
	gap:3em;
	margin-bottom: 9.5em;
}
:root .job-nav li{
	flex:1;
	max-width:332px;
}
:root .job-nav a{
	display:flex;
	flex-direction:column;
	justify-content:center;
	text-align:center;
	color:var(--color);
	--color:var(--keycolor);
	padding-block:0.75em 1.25em;
	position:relative;
	z-index:2;
	overflow:hidden;
}
:root .job-nav a .mincho{
	font-size:2.75rem;
	position:relative;
	z-index:1;
	display:flex;
	justify-content:center;
	gap:0.25em;
	align-items:center;
	padding-left:0.5em;
	position:relative;
	z-index:-1;
	font-weight:300;
	font-style: var(--fontM);
}
:root .job-nav a .mincho:after{
	content:"";
	display:block;
	aspect-ratio:1 / 1;
	height:1.25rem;
	background:var(--color);
	border-radius:50%;
	z-index:-1;
}
:root .job-nav a [lang="en"]{
	font-size:0.9375rem;
	font-weight:400;
}
:root .job-nav a[href*="new-graduates"]{
	--color:var(--type01);
}
:root .job-nav a[href*="career"]{
	--color:var(--type02);
}
:root .job-nav a:before,
:root .job-nav a:after{
	content:"";
	display:block;
	position:absolute;
	bottom:0;
	height:6px;
	width:4.5em;
	background:#000;
	z-index:2;
}
:root .job-nav a:before{
	z-index:1;
	background:var(--color);
	width:100%;
}
:root .job-nav a:after{
	transition:width .2s;
}
:root .job-nav a:hover{
	background:var(--color);
	color:#fff;
	text-decoration-color:transparent;
}
:root .job-nav a:hover:after{
	width:100%;
}
:root .job-nav a:hover .mincho:after{
	transform:scale(30);
}
body.home #about .vertical-area{
	padding-bottom:5em;
	display: flex;
	flex-direction: column;
	gap: 0em;
	padding-inline: 5em;
}
body.home #about .vertical-area > div{
	display:flex;
	justify-content:space-around;
}
body.home #about .vertical-area div p{
	writing-mode: vertical-rl;
	font-size: 1.325rem;
	line-height:2.5;
	font-weight:500;
	font-family: var(--fontR);
}
body.home #about .vertical-area div p:has(img){
	writing-mode:inherit;
}
body.home #about .vertical-area > div .item01{
	margin-top:3.5em;
}
body.home #about .vertical-area > div .item02{
	margin-right:5em;
	display: flex;
}
body.home #about .vertical-area > div .item03{
	margin-top: 6em;
	margin-right:-10em
}
body.home #about .vertical-area > div.vt-02{
	margin-bottom:4em;
}
body.home #about .vertical-area > div .item04{
	display:flex;
	flex-direction:row-reverse;
	gap:3em;
	margin-inline:8em -8em;
}
body.home #about .vertical-area > div .item08{
	margin-top:12em;
	margin-left: 0em;
	margin-right: -5em;
}
body.home #about .vertical-area .action_set img{
	display:inline-block;
	filter:blur(15px);
	will-change: filter, transform;
	max-width:100%;
	height:auto;
}
body.home #about .vertical-area .item01{
	--width:496px;
}
body.home #about .vertical-area .item03{
	--width:171px;
}
body.home #about .vertical-area .item05{
	--width:263px;
}
body.home #about .vertical-area .item06{
	--width:255px;
}
body.home #about .vertical-area .item07{
	--width:255px;
	display: flex;
	gap: 2em;
	flex-direction: row-reverse;
}
body.home #about .vertical-area .item08{
	--width:255px;
}
body.home #news{
	padding-block: 0em 3.5em;
}
body.home #news .btn_area  a{
	margin-inline:auto;
}
body.home #work .ttl_set{
	margin-bottom:0;
}
body.home #work .interview-list{
	padding-top: 4.25em;
	margin-bottom:4.75em;
	max-width: 90%;
	margin-inline: auto;
}
body.home #office-support .scroller{
	margin-block: -1em 12em;
	overflow-x:auto;
}
body.home #office-support .scroll-child{
	display:flex;
	gap: 4em 3.5em;
}
body.home #office-support .scroll-cell{
	display:flex;
	flex-direction:column;
	gap: 2.5em;
	align-items:flex-start;
}
body.home #office-support .scroll-cell img{
	max-width:fit-content;
}
body.home #office-support .pht01{
	--width: 405px;
}
body.home #office-support .pht02{
	--width:388px;
}
body.home #office-support .pht02-1{
	--width:255px;
}
body.home #office-support .pht03{
	--width:255px;
}
body.home #office-support .pht03-1{
	--width:404px;
}
body.home #office-support .pht04{
	--width:404px;
}
body.home #office-support .pht05{
	--width:339px;
}
body.home #office-support .pht05-1{
	--width:255px;
}
body.home #office-support .scroll-cell .pht01{
	margin-top:6em;
}
body.home #office-support .scroll-cell .pht02{
	margin-left: 3.5em;
	margin-top: 3.5em;
}
body.home #office-support .scroll-cell .pht03{
	margin-inline:auto 0em;
}
body.home #office-support .scroll-cell .pht03-1{
	margin-right:3em;
}
body.home #office-support .scroll-cell .pht04{
	margin-top: 6em;
}
body.home #office-support .scroll-cell .pht05{
	margin-left:4em;
	margin-top: 2em;
}
body.home #office-support .scroll-cell .pht05-1{
	margin-left:1.5em;
	margin-top: 3.5em;
}
body.home #office-support .scroll-cell img{
	max-width:100%;
	height:auto;
}
body.home #office-support .scroller{
	margin-block: -1em 0em;
	overflow-x: hidden;
	padding-bottom:12em;
	position: relative;
}
body.home #office-support .scroller .scroll-track {
    display: flex;
    animation: scroll-loop 40s linear infinite;
}
body.home #office-support .scroll-child{
	display:flex;
	gap: 4em 3.5em;
    flex-shrink: 0; 
	padding-inline:3em;
}
/* アニメーションの定義 */
@keyframes scroll-loop {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-2379px); 
    }
}
@media (min-width:1601px) {
	body.home #work .interview-list{
		max-width:1200px;
	}
	body.home #work .interview-list .images{
		margin-inline:7.5%;
	}
	body.home #work .interview-list .images .title{
		font-size:1.625rem;
		line-height:1.35;
		padding-block:0.35em;
	}
	body.home #work .interview-list .images:after{
		max-width:120%;
	}
}
@media (max-width:1600px) {
	body.home .style_news,
	body.home #work .interview-list{
		max-width: 1100px;
		margin-inline:auto;
	}
}
@media (max-width:1480px) {
	:root .job-nav a .mincho{
		font-size:2.5rem;
	}
	body.home .kv_wrap .scroll_down a{
		width:100px;
	}
	body.home #about .vertical-area .action_set{
		width:calc(var(--width) * 1);
		font-size:1.0rem;
	}
	body.home #about .vertical-area > div.vt-01{
		flex-wrap:wrap;
	}
	body.home #about .vertical-area .action p{
		font-size:1.5rem;
	}
	body.home .style_news,
	body.home #work .interview-list{
		max-width: 1000px;
		margin-inline:auto;
		padding-inline:calc(var(--inner) * 2)
	}
	body.home #office-support .scroll-cell p{
		width:calc(var(--width) * 0.75);
	}
	body.home .sitewrap > *{
		padding-inline: var(--inner);
	}
}
@media screen and (max-width:1200px) and (min-width:768px){
	body.home #about .vertical-area > div.vt-01{
		margin-bottom:4em
	}
	body.home #about .vertical-area > div .item01{
		width:35%;
	}
	body.home #about .vertical-area > div .item02{
		width:30%;
		margin:0 0 0 auto;
	}
	body.home #about .vertical-area > div .item03{
		margin:2em 0 6em auto;
		width: 17%;
	}
	body.home #about .vertical-area > div.vt-02{
		justify-content:center;
		gap:30%;
	}
	body.home #about .vertical-area > div.vt-03{
		justify-content:flex-end;
		gap:8%;
	}
	body.home #about .vertical-area > div .item04{
		margin-inline:5% 0;
	}
	body.home #about .vertical-area > div .item08{
		margin-right:0;
	}
}
@media screen and (max-width:767px) {
	@keyframes scroll-loop {
	    from {
	        transform: translateX(0);
	    }
	    to {
	        transform: translateX(-2366px); 
	    }
	}
	body.home .visual {
	}
	body.home .kv_wrap{
		aspect-ratio:75 / 120;
	}
	body.home .kv_wrap .delay_set.once{
		animation-delay: 0.5s;
		animation-duration: 0.3s;
	}
	body.home .kv_wrap .once *[class*="layer"]{
		animation-duration: 1.2s;
		animation-timing-function: cubic-bezier(0.73, 0.12, 0.05, 0.83);
	}
	body.home .kv_wrap *[class*="layer"] img{
		width:100%;
		height:auto;
	}
	body.home .kv_wrap .scroll_down {
		right: 0;
		bottom: 17.5em;
	}
	body.home .kv_wrap .scroll_down a{
		width: 75px;
		font-size:0.65rem;
	}
	body.home .kv_wrap .scroll_down a b{
		font-size: 1.30rem;
	}
	:root .job-nav{
		padding-block: 2em 4em;
		margin-bottom: 5em;
		flex-direction:column;
		gap:1em;
		align-items:stretch;
	}
	:root .job-nav li{
		max-width:265px;
		margin-inline:auto;
		width:100%;
	}
	:root .job-nav a{
	}
	:root .job-nav a .mincho{
		font-size:1.571rem;
		gap: 1em;
	    padding-left: 1.275em;
	}
	:root .job-nav a .mincho:after{
		height: 0.715rem;
	}
	:root .job-nav a [lang="en"]{
		font-size:0.66rem;
	}
	:root .job-nav a:before,
	:root .job-nav a:after{
		height:4px;
	}
	:root .job-nav a:after{
		width: 3.9295em;
	}
	body.home #about .vertical-area > div{
		flex-wrap:wrap;
		gap:1em;
		justify-content:flex-start;
		gap: 1em;
	}
	body.home #about .vertical-area .action_set img{
		position:relative;
		z-index:-1;
		width: auto;
	}
	body.home #about .vertical-area{
		padding-inline:var(--inner);
		padding-bottom: 0;
	}
	body.home #about .vertical-area div p,
	body.home #about .vertical-area .action p{
		font-size: 0.83rem;
	}
	body.home #about .vertical-area > div.vt-01{
		flex-wrap:wrap;
		gap:0em 2%;
	}
	body.home #about .vertical-area > div .item01{
		margin-top:14em;
		margin-left:-1.14rem;
		width:48%;
	}
	body.home #about .vertical-area > div .item01 img{
		aspect-ratio:358 / 268;
		object-fit:cover;
	}
	body.home #about .vertical-area > div .item02{
		margin-top:0em;
		margin-inline:auto 0;
		flex-basis:48%;
	}
	body.home #about .vertical-area > div .item03{
		margin:0 0 0 auto;
		width: 21%;
		position:relative;
	}
	body.home #about .vertical-area > div .item03 img{
		position:absolute;
	}
	body.home #about .vertical-area > div.vt-02{
		width: 72%;
		gap:2% 1em;
		flex-wrap:nowrap;
	}
	body.home #about .vertical-area > div .item04{
		margin-top:0em;
		margin-inline: 0;
		gap:2em;
	}
	body.home #about .vertical-area > div .item05{
		margin: 6em -4em 0 0;
		padding-inline:1em 0;
	}
	body.home #about .vertical-area > div.vt-03{
		flex-direction: column;
		align-items: center;
		gap:2em;
	}
	body.home #about .vertical-area > div .item06{
		margin-inline: auto 0;
		margin-block: -4em 2em;
		order: 0;
		--width: 125px;
	}
	body.home #about .vertical-area > div .item08{
		margin-block: 2em 0;
		margin-inline: -1.14em auto;
		--width: 150px;
	}
	body .ttl_set{
		margin-bottom: 4em;
		padding-block: 2.0em;
		gap:0.35em;
	}
	body .ttl_set :is(h1,h2,h3,h4,h5,h6){
		font-size: 0.94rem;
	}
	body .ttl_set [lang="en"]{
		font-size: 2rem;
	}
	.interview-list .img_fit,
	:root .interview-list .images:after{
		zoom:1;
	}
	body.home #office-support .scroller{
		padding-bottom:6em;
		position:relative;
	}
	body.home #office-support .scroller .scroll-track{
		animation-duration:80s;
	}
	body.home #office-support .scroll-child{
		font-size:0.5rem;
	}	
	body.home #office-support .scroll-cell p{
		width: calc(var(--width) * 0.5);
	}
	body.home #office-support #mouse-stalker{
		display:flex;
		position:absolute;
		transform:none !important;
		z-index:5;
		inset:0;
		margin:auto;
		width:120px;
		height:120px;
		font-size:0.575rem;
	}
	body.home #office-support #mouse-stalker > *{
		opacity:1;
	}
}

/* article */
#vk-mobile-nav-menu-btn{
	display:none;
}
:root .site-body{
	padding-block:0 8em;
}
:root .topicpath{
}
:root .topicpath ol{
	display:flex;
	gap:1.5em;
	margin:0;
	padding:0;
	list-style:none;
	font-size:0.75rem;
	overflow-x:auto;
	scrollbar-width:thin;
	letter-spacing:0.1em;
}
:root .topicpath ol li{
	display:flex;
	gap:1.5em;
	white-space:nowrap;
}
:root .topicpath ol li:not(:first-child):before{
	content:"|";
	display:block;
}
:root .topicpath ol li a{
	color:inherit;
	text-decoration-color:inherit;
	text-decoration-thickness:1px;
}
@media (any-hover: hover) {
	:root .topicpath ol li a:hover{
		text-decoration-color:transparent;
	}
}
body:not(.home) {
	position:relative;
	z-index:2;
}
@media screen and (max-width:1520px) {
	body:not(.home) {
		--inner:10%;
	}
}
@media screen and (max-width:1200px) {
	body:not(.home) {
		--inner:8%;
	}
}
@media screen and (max-width:767px) {
	body:not(.home) {
		--inner:1.14em;
	}
}
body:not(.home) header #site_ttl a img{
	max-width:153px;
}
body:not(.home) main{
	padding-top:var(--header);
}
body:not(.home) .article_body{
	padding-bottom: 0;
}
body.single-interview .site-body{
	padding-bottom:8em;
}
body:not(.home) .article_body section{
	width:100%;
}
body.page .article_body .section{
	margin-bottom:8em;
}
body.page .article_body #faq{
	margin-bottom:0;
}
body.page .article_body hgroup{
	margin-bottom:4em;
}
body.page .article_body .lead h3,
body.page .article_body .lead p{
	text-align:center;
}
body.page .article_body .ttl_set h2{
	margin-bottom:0;
	font-weight: bold;
}
body.page .article_body .lead h3{
	margin-bottom:0.5em;
}
body.page .article_body .lead p{
	margin-bottom:3em;
	font-family: var(--font);
}

body:not(.home) .article_body section .sitewrap > *:first-child{
	margin-top:0;
}
body:not(.home) .article_body .sitewrap:has( > .innerwrap){
	background:#e1e8dd;
	overflow:hidden;
	padding-block:6.5625em;
}
body:not(.home) .article_body .sitewrap:has( > .innerwrap) + .sitewrap{
	margin-top:5em;
}
body:not(.home) .article_body .sitewrap .innerwrap {
	max-width: 1200px;
	margin-inline:auto;
}
body:not(.home) .article_body .sitewrap .innerwrap > *:first-child{
	margin-top:0;
}
body:not(.home) .article_body .sitewrap .innerwrap > *:last-child{
	margin-bottom:0;
}
body:not(.home) .article_body .sitewrap .innerwrap > hgroup:first-child{
	margin-block:-2.5em 2.5em;
}
body:not(.home) .article_body hr{
	border:none;
	border-bottom:solid 1px var(--lgray);
	margin-block: 6em;
}
body:not(.home) .article_body .news_list a {
	background:transparent;
	border-bottom: solid 1px var(--dgray);
	border-radius:0;
	margin:0;
}
body:not(.home) .article_body .news_list a:after{
	border-radius:0;
}
body:not(.home) .article_body .news_list a .article{
	width:100%;
}
body:not(.home) .article_body .news_list a .data,
body:not(.home) .article_body .news_list a:not(:has(.img_fit)) .article:before{
	transition:transform .2s;
}
body:not(.home) .article_body a.btn{
	margin-inline:auto;
}

body:not(.home) main{
	display:flex;
	flex-direction:column;
	margin-inline:auto;
	/* max-width:1800px; */
}
:root .article_head{
	display:flex;
	flex-direction:column;
	justify-content: flex-start;
	position:relative;
}
:root .article_head .visual .sitewrap{
	display:flex;
	align-items:center;
	height:100%;
	flex-direction:column;
	align-items:flex-start;
}
:root .article_head .visual{
}
:root .article_head .visual .ttl_set{
	margin-block: 10em 6.75em;
}
:root .article_head .visual .ttl_set [lang="en"]{
	font-weight: 700;
	font-size: 8.375rem;
	flex-basis:100%;
	letter-spacing:-0.03em;
}
:root .article_head .visual .ttl_set [lang="en"]:after{
	margin-block: 0.25em 0.25em;
	height: 1px;
	width: 1.5em;
	background:#000;
}
:root .article_head .visual :is(h1,h2){
	font-weight:600;
	font-size:1.5rem;
}
:root .article_head .pagemenu{
	margin-block: 1.5em 3.5em;
	background:var(--keycolor);
	color:#fff;
	position:relative;
	z-index:1;
}
:root .article_head .pagemenu ul{
	max-width:1200px;
	margin-inline:auto;
}
:root .article_head .pagemenu ul{
	display:flex;

}
:root .article_head .pagemenu ul li{
	flex-grow:1;
	padding: 0;
}
:root .article_head .pagemenu ul a{
	padding: 1.125em 0.5em;
	transition:.2s;
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
}
:root .article_head .pagemenu ul ul{
	position:absolute;
	left:0;
	right:0;
	background:#fff;
	color:var(--keycolor);
	max-width:inherit;
	justify-content:center;
	gap:2em;
	pointer-events:none;
	opacity:0;
	overflow:hidden;
	max-height:0;
	transition:opacity .4s,max-height .4s;
}
:root .article_head .pagemenu ul ul li{
	flex-grow:inherit;
}
:root .article_head .pagemenu ul li.toggle_switch:hover ul{
	opacity:1;
	max-height:fit-content;
	pointer-events:auto;
}
:root .article_head .pagemenu ul a:hover,
:root .article_head .pagemenu ul li.toggle_switch:hover .trigger a{
	background:#fff;
	color:var(--keycolor);
	text-decoration-color:transparent;
}
:root .article_head .pagemenu ul ul a:hover{
	text-decoration-color:var(--keycolor)
}
:root .article_body{
}
:root .article_foot{
	order:10;
	padding-block: 1.25em;
	border-bottom: solid 1px #fff;
	background:var(--keycolor);
	color:#fff;
}
:root .article_body hgroup{
	display:flex;
	align-items: flex-end;
	margin-block: 1.5em;
	gap: 1em;
	color:var(--dgray);
	letter-spacing: 0.1em;
}
:root .article_body hgroup :is(h1,h2,h3,h4,h5,h6){
	font-weight: 400;
	margin-bottom:0.75em;
}
:root .style_module {
	word-break:break-all;
}
:root .style_module :is(h1,h2,h3,h4,h5,h6,p,ul,ol,table,dl){
	margin-block:1.5em;
}
:root .style_module :is(h1,h2,h3,h4,h5,h6,p,ul,ol,table,dl):first-child{
	margin-block:0 1.5em;
}

:root .style_module h2{
    color: var(--keycolor);
    font-size: 3.14rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0em;
    margin-bottom:1em;
}
:root .style_module h2 ~ h2{
	margin-top:1.5em;
}
:root .style_module h3{
    color: var(--dgray);
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0em;
    margin-block:1em;
    display:flex;
    gap: 0.35em;
    align-items:center;
}
:root .style_module h3:after{
	content:"";
	display:block;
	height:1px;
	flex-grow:1;
	background:var(--dgray);
}
:root .style_module h2:not(:first-child){
	margin-top:3em;
}
:root .style_module hr{
	margin-block:2em;
	border:none;
	border-bottom:dotted 2px #a6a6a6;
}
:root .style_module ul > li{
	list-style: disc;
}
:root .style_module ul > li li{
	list-style:circle;
}
:root .style_module :is(ul,ol){
	padding-inline:0;
	margin-inline:1.75em auto;
	line-height:1.25;
}
:root .style_module :is(ul,ol) li:not(:first-child){
	margin-top:0.5em;
}
:root .style_module :is(ul,ol){
	font-feature-settings:normal;
}
:root .style_module :is(p,li,figure,dl){
	letter-spacing:0.1em;
	line-height:1.8;
	font-size:1rem;
}
:root .style_module p + p{
	margin-top:1.6em;
}
:root .style_module :is(li,th,td,figcaption,caption){
	line-height:1.4;
}
:root .style_module p + :is(ul,ol){
	margin-top:0.5em;
}
:root .style_module li + li{
	margin-top:0.5em;
}
:root .style_module img + figcaption{
	margin-top:0.5em;
}
:root .style_module a:not(.btn){
	color:#000;
	text-decoration-color:inherit;
}
:root .style_module a.btn{
	display:inline-flex;
}
:root .style_module a[href$=".pdf"]{
	display:flex;
	gap:0.5em;
	align-items:center;
	flex-wrap:wrap;
}
:root .style_module a[href$=".pdf"]:after{
	background:url(../img/ico_pdf.png) no-repeat top left / contain;
	content:"";
	display:block;
	width:1.375em;
	aspect-ratio:1 / 1;	
}
:root .style_module a[href$=".pdf"]:has(.filesize):after{
	display:none;
}
@media (any-hover: hover) {
	:root .style_module a:not(.btn):hover{
		text-decoration-color:transparent;
	}
}
:root .style_module .bg-wrapper {
	padding:0.5em var(--inner);
	background:#fff6e6;
	margin-block:3em;
}
@media screen and (max-width:1520px) {
	body:not(.home) .article_body .sitewrap:has( > .innerwrap){
		margin-inline:var(--inner);
		width:auto;
	}
	:root .article_head .pagemenu{
		margin-inline:var(--inner);
		width:auto;
		font-size:0.94rem;
	}
	:root .article_head .visual .ttl_set [lang="en"]{
		font-size: 7.5rem;
	}
	:root .article_head .visual .ttl_set{
		margin-block: 8em 5em;
	}
}
@media screen and (max-width:1410px) {
	body:not(.home) .article_body .sitewrap > hgroup{
		margin-inline:auto;
	}
}
@media screen and (max-width:1200px) {
	:root .topicpath{
	}
	:root .topicpath li{
		white-space:nowrap;
	}
	:root .article_head .visual .ttl_set{
		margin-block:4.5em 2.5em;
	}
	:root .article_head .visual .ttl_set [lang="en"]{
		font-size:7.25rem;
	}
	:root .article_head .pagemenu ul{
		flex-wrap:wrap;
		padding-inline:0;
	}
	:root .article_head .pagemenu ul li{
		flex-grow:inherit;
		flex-basis:calc(100% / 5);
	}
}
@media screen and (max-width:767px) {
	:root .site-body{
		padding-block:0 4em;
	}
	body:not(.home) {
		--header:80px;
	}
	body:not(.home):after{
		background-size: 100% auto;
	}
	:root .article_head .pagemenu {
		margin-right:0;
		margin-block: 0.5em 1.5em;
		overflow: hidden;
		padding-inline:var(--inner) 2.0em;
		position:relative;
		z-index:1;
	}
	:root .article_head .pagemenu:after{
		position:absolute;
		inset:0 0.75em 0 auto;
		z-index:2;
		pointer-events:none;
		content:"";
		display:flex;
		align-items:center;
		justify-content: center;
		font-weight:800;
		z-index:3;
		width:0.5em;
		height:0.5em;
		border-top:solid 2px;
		border-right:solid 2px;
		transform:rotate(45deg);
		margin:auto;
		transition:opacity .2s .2s;
		opacity:1;
	}
	:root .article_head .pagemenu:focus:after,
	:root .article_head .pagemenu:active:after{
		opacity:0;
	}
	:root .article_head .pagemenu ul{
		flex-wrap:nowrap;
		gap:1em;
		justify-content: flex-start;
		padding: 0.75em 0;
		font-size: min(3.15vw,0.875rem);
		overflow-x:auto;
		scrollbar-width:thin;
	}
	:root .article_head .pagemenu ul li{
		flex-basis:auto;
		white-space:nowrap;
	}
	:root .article_head .pagemenu ul a{
		padding:0.25em 0.5em;
		text-decoration-color:transparent;
	}
	:root .article_head .pagemenu ul ul{
		padding:0;
		display:none;
	}
	body.single-interview .site-body{
		padding-bottom:4em;
	}
	body.page .article_body hgroup{
		margin-bottom: 3em;
	}
	body.page .article_body .section{
		margin-bottom:01em;
	}
	:root .article_head .pagemenu ul a:hover,
	:root .article_head .pagemenu ul li.toggle_switch:hover .trigger a{
		background:inherit;
		color:#fff;
		text-decoration-color:#fff;
	}
	:root .article_head .pagemenu ul li.toggle_switch.opened ul{
		opacity:1;
		max-height:fit-content;
		pointer-events:auto;
		margin-inline:1em;
		box-shadow:0 3px 5px rgba(0,0,0,0.52);

	}
	:root .article_head .pagemenu ul li.toggle_switch.opened .trigger{
		background:#fff;
	}
	:root .article_head .pagemenu ul ul a:hover,
	:root .article_head .pagemenu ul li.toggle_switch.opened .trigger a{
		color:var(--keycolor);
	}
	:root .article_head .visual{
		margin: 2em 0;
	}
	:root .article_head .visual .ttl_set{
		margin-block: 0;
	}
	:root .article_head .visual .ttl_set [lang="en"]{
		font-size: 4rem;
		line-height: 1.0;
	}
	:root .article_head .visual :is(h1,h2){
		font-size:1.15em;
	}
	:root .topicpath{
		margin:0;
	}
	:root .article_head{
		padding: 0;
		height:auto;
	}
	body:not(.home) .article_body .sitewrap:has( > .innerwrap){
		padding-block:3em;
		margin:2em var(--inner) 0;
	}
	body:not(.home) .article_body .sitewrap:has( > .innerwrap) + .sitewrap{
		margin-top:3em;
	}
	body:not(.home) .article_body .sitewrap .innerwrap > hgroup:first-child{
		margin-block:-1.0em 0em
	}
	body:not(.home) .article_body .sitewrap > .style_news{
		padding-inline:0;
	}
	body:not(.home) .article_body .sitewrap > .style_news .tab_change{
		padding-inline:var(--inner);		
	}
	body:not(.home) .article_body .style_news .news_list a:not(:first-child){
		margin-top:0;
	}
	body:not(.home) .article_body .style_news a .article{
		padding: 0.5em var(--inner);
	}
	body:not(.home) .article_body .style_news a .article:not(:has(.img_fit)){
		padding-right:2.5em;
	}
	body:not(.home) .article_body section{
		padding-block: 0 4em;
	}
	:root .style_module :is(h1,h2,h3,h4,h5,h6,p,ul,ol){
		margin-block:1.25em;
	}
	body.page .article_body .faq-list{
		margin-inline:1em;
	}
}

:root .style_module .flex_list{
	display:flex;
	flex-wrap:wrap;
	gap: 4em 3%;
	margin-inline:0;
}
:root .style_module .flex_list li{
	width: 31%;
	list-style:none;
}
:root .style_module .flex_list li:nth-child(n){
	margin-top:0;
}
:root .style_module .figure{
	text-align:center;
	margin-bottom:1em;
	background:#fff;
	padding:0.5em;
}
:root .style_module .unit{
	font-size:1.125rem;
	font-weight:500;
	margin-bottom:0.5em;
}
:root .style_module .flex_list table{
	margin-inline:auto;
	width:100%;
}
:root .style_module .flex_list table :is(th,td){
	font-size:0.875rem;
	text-align:center;
	letter-spacing:0;
}
:root .style_module .captions{
	margin-block:4em 0;
	line-height:1.8;
}
:root .style_module .captions p + p{
	margin-top:2em;
}

:root .style_module [itemprop="mainEntity"]:nth-child(n+2){
	margin-top:2em;
}
:root .style_module [itemprop]:first-child{
	margin-top:0;
}
:root .style_module :is(h2,h3,h4)[itemprop="name"],
:root .style_module .faq-list :is(h2,h3,h4){
	margin-block:1em;
	font-size: 1.25rem;
	color: var(--dgray);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0em;
	display: flex;
	gap: 0.5em;
	align-items: center;
	border-bottom:solid 1px var(--lgray);
	padding-bottom:1em;
}
:root .style_module :is(h2,h3,h4)[itemprop="name"]:before{
	content:"Q";
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1.5rem;
	background:var(--keycolor);
	width:1.75em;
	height:1.75em;
	aspect-ratio:1 / 1;
	border-radius:50%;
	color:#fff;
	font-weight:600;
}
:root .style_module .faq-list :is(h2,h3,h4){
	margin-top:0;
}
:root .style_module .faq-list :is(h2,h3,h4) mark{
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1.5rem;
	background:var(--keycolor);
	width:1.75em;
	height:1.75em;
	aspect-ratio:1 / 1;
	border-radius:50%;
	color:#fff;
	font-weight:600;
}
:root .style_module [itemprop="acceptedAnswer"]{
	display:flex;
	gap:1em;
	align-items:flex-start;
	margin-left: 1em;
}
:root .style_module [itemprop="acceptedAnswer"]:before{
	content:"A";
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1em;
	background:var(--gray);
	width:1.75em;
	height:1.75em;
	border-radius:50%;
	color:var(--dgray);
	font-weight:600;
	aspect-ratio:1 / 1;
}
:root .style_module .faq-list :is(p,ul,ol){
	margin-left: 1em;
}
:root .style_module .faq-list :is(p,ul,ol):has( > mark){
	position:relative;
	padding-left:2.5em;
}
:root .style_module .faq-list :is(p,ul,ol) > mark{
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1em;
	background:var(--gray);
	width:1.75em;
	height:1.75em;
	border-radius:50%;
	color:var(--dgray);
	font-weight:600;
	aspect-ratio:1 / 1;
	position:absolute;
	left:0;
}
@media screen and (max-width:1410px) {
	:root .style_module .flex_list{
		gap: 4em 4%;	
	}
	:root .style_module .flex_list li{
		width: 48%;
	}
}

@media screen and (max-width:767px) {
	:root .style_module h2{
	    font-size: 2.125rem;
		font-weight:600;
	}
	:root .style_module .flex_list{
		gap: 4em 0;
		flex-direction:column;
	}
	:root .style_module .flex_list li{
		width: 100%;
	}
	:root .style_module :is(p,li,figure){
		font-size:0.94rem;
	}
	:root .style_module :is(figcaption,caption){
		font-size:0.875rem;
	}
	:root .style_module :is(h2,h3,h4)[itemprop="name"],
	:root .style_module .faq-list :is(h2,h3,h4){
		font-size:1.5rem;
		align-items:flex-start;
	}
	:root .style_module :is(h2,h3,h4)[itemprop="name"]:before,
	:root .style_module .faq-list :is(h2,h3,h4) mark{
		font-size:0.94rem;
	}
	:root .style_module :is(h2,h3,h4)[itemprop="name"]:after{
		display:none;
	}
	:root .style_module [itemprop="acceptedAnswer"]{
		display:flex;
		gap:1em;
		align-items:flex-start;
		margin-left:0em;
	}
	:root .style_module .faq-list :is(p,ul,ol){
		margin-left:0;
	}
	:root .style_module [itemprop="acceptedAnswer"]:before,
	:root .style_module .faq-list :is(p,ul,ol) mark{
		font-size:0.94em;
	}
}
/*common*/
.post-type-archive .color-new-graduates{
	--article-block-color:var(--)
}
.post-type-archive,
.page,
.post-type-post,
.error404{
	--article-block-color:var(--type03);
}
body.list-new-graduates,
.post-type-archive .color-new-graduates,
.color-new-graduates,
.term-new-graduates,
.category-new-graduates{
	--article-block-color:var(--type01);
}
body.list-career,
.post-type-archive .color-career,
.color-career,
.term-career,
.category-career{
	--article-block-color:var(--type02);
}
body.list-outsourcing-contracts,
.post-type-archive .color-outsourcing-contracts,
.color-outsourcing-contracts,
.term-outsourcing-contracts,
.category-outsourcing-contracts{
	--article-block-color:var(--keycolor);
}
.post-type-archive .color-dialogue,
.color-dialogue,
.term-dialogue{
	--article-block-color:var(--accent);
}
body:not(.home)  .container{
	display: flex;
	flex-direction:column-reverse;
	justify-content:center;
	align-items:flex-start;
	padding-inline: 6em;
	max-width: 100%;
}
body:not(.home) .page-header{
	background:none;
	color:#fff;
	position:relative;
	background:var(--article-block-color);
	margin-bottom: 5.5em;
	text-align:left;
	min-height: 280px;
}
body:not(.home) .page-header:before{
	content:"";
	width: 1170px;
	height:280px;
	background:url(../img/tit-coly.png) no-repeat center / contain;
	position:absolute;
	inset:0 0 0 auto;
	margin:auto;
	z-index:5;
}
body:not(.home) .page-header .page-header-subtext{
	color:#fff;
	font-size:3.5rem;
	margin-bottom:0;
	font-weight: 400;
	font-family: var(--fontEN);
}
body:not(.home) .page-header .page-header-title{
	color:#fff;
	font-size:1.5rem;
	font-weight:bold;
	margin-top: 0.5em;
	position: relative;
	font-family: var(--font);
}
body:not(.home) .page-header .page-header-title:before,
body:not(.home) .page-header .page-header-title:after{
	content:"[";
}
body:not(.home) .page-header .page-header-title:after{
	content:"]";
}
main.page-new-graduate .article_body hgroup [lang="en"]{
	color: #141414;
	font-weight: 400;
	margin: 0 auto;
}
@media screen and (max-width:1670px) {
	body:not(.home)  .container{
		padding-inline:6em;
	}
}
@media screen and (max-width:768px) {
	body:not(.home) .article_head{
		margin-bottom:3em;
	}
	body:not(.home)  .container{
		padding-inline:var(--inner);
	}
	body:not(.home) .article_head:before{
		width: 100%;
		height: 55%;
		top:auto;
		bottom:0;
	}
	body:not(.home) .page-header .page-header-subtext{
		color:#fff;
		font-size: 2.5rem;
	}
	body:not(.home) .page-header .page-header-title{
		font-size: 1.14rem;
	}
	main.page-new-graduate .article_body hgroup [lang="en"]{
		color: #141414;
		font-weight: 400;
		margin: 0 auto;
	}
	body:not(.home) .page-header:before{
		width: 100%;
		height: 55%;
		inset: auto 0 0 auto;
	}
}
/*faq*/
.post-type-faq .faq-category-wrap{
	position:relative;
	margin-bottom: 6em;
}
.post-type-faq .faq-category-wrap ul{
	display:flex;
	justify-content: space-between;
	align-items:center;
	flex-wrap:wrap;
	gap: 1em;
	max-width:1050px;
	margin:0 auto;
}
.post-type-faq .faq-category-wrap ul li{
	width: calc(33% - 1.5em);
	text-align:left;
}
.post-type-faq .faq-category-wrap ul li a{
	border-bottom:1px solid var(--article-block-color);
	display:block;
	padding: 0.75em 1em;
	font-size:1.5rem;
	font-weight:500;
	line-height:1;
	position:relative;
	text-decoration:none;
	font-family: var(--font);
}
.post-type-faq .faq-category-wrap ul li a span{
	position:relative;
	z-index:5;
}
.post-type-faq .faq-category-wrap ul li a:after{
	content:"\02193";
	width:20px;
	height:20px;
	color:var(--article-block-color);
	position:absolute;
	inset:0 1em 0 auto;
	margin:auto;
	transition:.5s transform;
}
.post-type-faq .faq-wrap{
	max-width: 1100px;
	margin: 0 auto;
}
.post-type-faq .faq-wrap + .faq-wrap{
	margin-top: 7em;
	padding-top: 7em;
	border-top: 1px solid #141414;
}
.post-type-faq .faq-wrap .style_h2{
	margin-bottom:2em;
}
body.post-type-faq .archive-header-title{
	max-width:1100px;
	margin:0 auto;
}
.faq-list{
	position:relative;
}
.faq-list .faq-item{
	background:var(--bgcolor2);
	padding: 45px 65px;
	list-style: none;
}
.faq-list .faq-item + .faq-item{
	margin-top:2em;
}
.faq-list .faq-item .faq-question,
.faq-list .faq-item .faq-answer{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:1em;
}
.faq-list .faq-item .faq-question + .faq-answer{
	margin-top: 1.5em;
}
.faq-list .faq-item .faq-question i,
.faq-list .faq-item .faq-answer i{
	font-size:2.25rem;
	font-weight:300;
	width: 1.25em;
	margin-right: 0;
	line-height: 1;
}
.faq-list .faq-item .faq-question p,
.faq-list .faq-item .faq-answer .faq-answer-area{
	width:calc(100% - 2.5em);
}
.faq-list .faq-item .faq-question p{
	margin-bottom:0;
	font-size:1.25rem;
	font-weight:bold;
	padding-top: 0.25em;
	font-family: var(--font);
}
.faq-list .faq-item .faq-answer .faq-answer-area p{
	margin-bottom:0;
	line-height: 1.875;
}
.faq-list .faq-item .faq-answer .faq-answer-area * + *{
	margin-top:1em;
}
.faq-list .faq-item .faq-answer i{
	color:var(--article-block-color);
}
.faq-list .faq-item .faq-answer .faq-answer-area a{
	text-decoration-color:var(--fontcolor);
	text-decoration-style: solid;
}
@media (any-hover: hover) {
	.post-type-faq .faq-category-wrap ul li a:hover:after{
		transform:translateY(5px);
	}
	.faq-list .faq-item .faq-answer .faq-answer-area a:hover{
		text-decoration-color:transparent;
	}
}
@media screen and (max-width:1670px) {
	body:not(.home) .article_head .sitewrap{
		width:100%;
	}
	body:not(.home) .article_head .sitewrap > *{
		padding-inline: var(--inner);
	}
	
}
@media screen and (max-width:768px) {
	.post-type-faq .faq-category-wrap{
		margin-bottom:3em;
	}
	.post-type-faq .faq-category-wrap ul{
		gap:1em 2%;
	}
	.post-type-faq .faq-category-wrap ul li a{
		font-size:1.25rem;
	}
	body:not(.home) .page-header{
		min-height: 12em;
		margin-bottom: 3em;
	}
	.post-type-faq .faq-wrap .style_h2{
		margin-bottom:1em;
	}
	.faq-list .faq-item{
		padding:30px 15px;
	}
	.faq-list .faq-item .faq-question i,
	.faq-list .faq-item .faq-answer i{
		font-size: 1.71rem;
	}
	.faq-list .faq-item .faq-question p{
		font-size: 1.07rem;
	}
	.faq-list .faq-item .faq-answer .faq-answer-area p{
		line-height:1.6;
	}
	.post-type-faq .faq-wrap + .faq-wrap{
		margin-top:4em;
		padding-top:4em;
	}
}
@media screen and (max-width:650px) {
	.post-type-faq .faq-category-wrap ul li{
		width:48%;
	}
}

/*interview*/
.post-type-interview:not(.single-interview) .interview-list{
	display:flex;
	justify-content: flex-start;
	align-items:stretch;
	flex-wrap:wrap;
	gap: 1.5em 0.5%;
}
.post-type-interview:not(.single-interview) .interview-list:before{
	display:none;
}
.post-type-interview:not(.single-interview) .interview-list a,
:root .interview-slider.interview-list a{
	width:33%;
	margin-inline: 0;
	position:relative;
	text-decoration: none;
}
.post-type-interview:not(.single-interview) .interview-list a:nth-child(3n+2){
	margin-top: 12em;
}
.post-type-interview:not(.single-interview) .interview-list .images .img_fit,
:root .interview-slider.interview-list .images .img_fit{width: 59%;}
.post-type-interview:not(.single-interview) .interview-list .images .img_fit img,
:root .interview-slider.interview-list .images .img_fit img{
	max-width:100%;
	width: 267px;
	object-fit: inherit;
}
.post-type-interview:not(.single-interview) .interview-list .images:after,
:root .interview-slider.interview-list .images:after{
	width:95%;
	top: 47%;
}
.post-type-interview:not(.single-interview) .interview-list .data_head,
:root .interview-slider.interview-list .data_head{
	margin-top:1em;
}
.post-type-interview:not(.single-interview) .interview-list .data_head mark,
:root .interview-slider.interview-list .data_head mark,
:root .interview-top .interview-people-item .data_head mark{
	padding: 0.25em 0.75em;
	line-height: 1;
}
.post-type-interview:not(.single-interview) .interview-list .images .title,
:root .interview-slider.interview-list .images .title{
	padding:0.15em 0.35em;
	font-size: 1.15rem;
	bottom: 1.125em;
	margin-bottom: 0;
	width: 14em;
	display: flex;
	align-items: center;
	min-height: 4.5em;
	padding: 0.5em;
	line-height: 1.25;
}
.post-type-interview:not(.single-interview) .interview-list .images,
:root .interview-slider.interview-list .images{
	margin-block: 3em 2.125em;
}
.post-type-interview:not(.single-interview) .interview-list .job,
:root .interview-slider.interview-list .job{
	font-size: 1.125rem;
	margin-bottom: 0.5em;
	width: 85%;
	font-family: var(--font);
}
.post-type-interview:not(.single-interview) .interview-list .data_head .name,
:root .interview-slider.interview-list .data_head .name,
:root .interview-top .interview-top-people .data_head .name{
	font-size:2.5rem;
}
.post-type-interview:not(.single-interview)  .interview-list .color-dialogue .data_head .name,
:root .interview-slider.interview-list .color-dialogue .data_head .name,
:root .interview-list .color-dialogue .data_head .name{
	display:none;
}
.post-type-interview:not(.single-interview) .interview-list .job:has(span:nth-child(2)) span:first-child,
:root .interview-slider.interview-list .job:has(span:nth-child(2)) span:first-child{
	position:relative;
}
.post-type-interview:not(.single-interview) .interview-list .job:has(span:nth-child(2)) span:first-child:after,
:root .interview-list .job:has(span:nth-child(2)) span:first-child:after{
	content:"\0d7";
	width:20px;
	height:20px;
	font-size:1.25em;
	margin-left: 0.5em;
	display: inline-block;
}
.post-type-interview:not(.single-interview) .interview-wrap,
:root .interview-slider-wrap .interview-wrap{
	max-width:1100px;
	margin: 1em auto 5em;
}
.post-type-interview:not(.single-interview) .interview-wrap ul{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
	gap:1em;
}
.post-type-interview:not(.single-interview) .interview-wrap ul li{
	width: calc(25% - 0.75em);
	max-width:256px;
}
.post-type-interview:not(.single-interview) .interview-wrap ul li a{
	font-size:1.125rem;
	min-height: 3.334em;
	margin-top:0;
	border:1px solid var(--article-block-color);
	color:var(--article-block-color);
	background-color:#fff;
	font-weight: 500;
}
.post-type-interview:not(.single-interview) .interview-wrap ul .all-btn a{
	background:var(--basecolor);
	color:var(--subcolor);
	border-color:var(--basecolor);
}
.post-type-interview:not(.single-interview) .interview-wrap ul .all-btn a{
	background:var(--basecolor);
	color:var(--subcolor);
	border: 1px solid var(--basecolor);
}
.post-type-interview.tax-interview-category:not(.single-interview) .interview-wrap ul .all-btn a{
	background:var(--subcolor);
	color:var(--basecolor);
}
.post-type-interview:not(.single-interview) .interview-wrap ul .all-btn a{
	background:var(--basecolor);
	color:var(--subcolor);
	border: 1px solid var(--basecolor);
}
.post-type-interview:not(.single-interview) .interview-wrap ul .category-current a{
	color:#fff;
	background-color:var(--article-block-color);
}
:root .interview-slider-wrap{
	margin-top:10em;
}
:root .interview-slider.interview-list:before{
	display:none;
}
:root .interview-slider-wrap .slick-arrow{
	aspect-ratio:1 / 1;
	width:76px;
}
:root .interview-slider-wrap .slick-arrow:before{
	display:none;
}
:root .interview-slider-wrap .prev_icon{
	transform:scale(-1);
	inset: 0 auto 0 -60px;
	margin:auto;
}
:root .interview-slider-wrap .next_icon{
	inset: 0 -60px 0 auto;
	margin:auto;
}
:root .interview-slider-wrap .ttl_set{
	margin-bottom:5em;
}
:root .interview-slider-wrap .ttl_set [lang="en"]{
	margin:0 auto;
	color: var(--fontcolor);
	font-weight:300;
	font-family: var(--fontEN);
	line-height: 1.2;
}
:root .interview-slider-wrap .ttl_set [lang="ja"]{
	margin:0 auto;
	font-weight:bold;
}
body.single-interview .article_body{
	padding-top: 45px;
	padding-bottom: 8em;
}
.single-interview .interview-top{
	position:relative;
	padding-bottom: 7em;
	margin-bottom: 5.5em;
	border-bottom:1px solid;
	min-height: 776px;
}
.single-interview p{
	font-family: var(--font);
}
.single-interview .interview-top:before{
	content:"";
	width:1920px;
	height:486px;
	background:url(../img/tit-interview-coly.png) no-repeat center / cover;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	pointer-events: none;
	z-index: 0;
}
.single-interview .interview-top .interview-top-title{
	position:relative;
	float:left;
	width:50%;
	margin-block: 8vh 10vh;
}
.single-interview .interview-top .interview-top-title p{
	font-size:1.125rem;
	font-weight:bold;
	margin-bottom: 2em;
}
.single-interview .interview-top .interview-top-title .interview-top-style{
	font-size:3rem;
	font-weight:400;
	font-feature-settings:'palt';
	font-family: var(--fontM);
}
.single-interview .interview-top .interview-top-image{
	position:relative;
	float:right;
	width: 44.75%;
	max-width: 629px;
}
.single-interview .interview-top .interview-top-people{
	position:relative;
	width: 43%;
	pointer-events: none;
}
.single-interview .interview-top .interview-top-people .data_head .name{
	font-size:3.4375rem;
}
.single-interview .interview-top .interview-top-people .data_head{
	margin-bottom:0.5em;
}
.single-interview.interview-people-position{
	font-size:1.125rem;
	font-weight:bold;
}
.single-interview .interview-people-item + .interview-people-item{
	margin-top:2em;
}
.single-interview .interview-people-item p{
	line-height:1.75;
	margin-bottom: 0;
}
.single-interview.interview-top .interview-top-image .images{
	margin: 2.25em auto;
}
.single-interview .interview-top .interview-top-image .images .img_fit{
	margin:0 auto;
}
.single-interview .interview-top .interview-top-image .images:after{
	width: 100%;
}
.single .interview-item:nth-of-type(n + 2){
	border-top:1px solid;
	margin-top:4em;
	padding-top:4em;
}
.single .interview-item-box:nth-of-type(n + 2)::before{
	display:block;
	content:"";
	width:100%;
	height:1px;
	background:#000;
	margin-block:4em;
}
.single .no_image .interview-item-box > *{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
    gap: 2em;
}
.single .no_image .interview-item-box .interview-item-q{
	flex-basis: 33%;
	flex-grow: 0;
}
.single .no_image .interview-item-box > * .wp-block-group:not(.interview-item-q){
	flex-basis: 66%;
	flex-grow: 0;
}
.single .interview-item-q em{
	font-size:2.25rem;
	font-weight: 400;
	font-family: var(--fontEN);
	color:var(--article-block-color);
	white-space: nowrap;
}
.single .interview-item-q p{
	font-weight:bold;
}
.single :is(.interview-item-box,.interview-message) h2{
	font-family: var(--fontM);
	font-weight:400;
	font-feature-settings:'palt';
	letter-spacing:-0.05em;
	line-height: 1.7;
}
.single .interview-message{
	background:#e3e3d0;
	padding-block: 4em;
	padding-inline: 1em;
	margin-top: 5em;
}
.single .interview-message .interview-message-box{
	width:min(100%,1100px);
	margin-inline:auto;
}
.single .dialogue_item .vk_balloon_content{
	padding:0;
	background:transparent;
}
body:not(.home) .archive-header-title{
	font-size:2rem;
	font-weight:bold;
	margin-bottom:1.5em;
	font-family: var(--font);
}
.interview-slider.interview-list .slick-arrow{
	width:77px;
	top:0;
	bottom:0;
	margin:auto;
	height: 77px;
}
.interview-slider.interview-list .slick-arrow:before{
	display:none;
}
.interview-slider.interview-list .prev_icon{
	right:auto;
	left:-40px;
	transform:scale(-1);
	top: -77px;
}
.interview-slider.interview-list .next_icon{
	left:auto;
	right: -40px;
}
body.single-interview .article_body p{
	line-height: 2;
}
@media (any-hover: hover) {
	.post-type-interview:not(.single-interview) .interview-wrap ul li a:hover{
		color:#fff;
		background-color:var(--article-block-color);
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul .all-btn a:hover{
		background:var(--subcolor);
		color:var(--basecolor);
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul:has(.category-current) .all-btn a:hover{
		background:var(--basecolor);
		color:var(--subcolor);
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul .category-current a:hover{
		color:var(--article-block-color);
		background-color:#fff;
	}
}
@media screen and (max-width:1480px) {
	.single-interview .interview-top .interview-top-image .images .img_fit{
		width:65%;
	}
	.single-interview .interview-top{
		min-height: 42.5vw;
	}
}
@media screen and (max-width:1200px) {
	.interview-slider.interview-list .slick-arrow{
		width:50px;
		height: 50px;
	}
	.interview-slider.interview-list .prev_icon{
		top: -90px;
	}
	.interview-slider.interview-list .next_icon{
		top: -40px;
	}
}
@media screen and (max-width:1000px) {
	.single-interview .interview-top .interview-top-title{
		float:none;
		width:100%;
		margin-block: 0 5em;
	}
	.single-interview .interview-top .interview-top-image{
		float:none;
		width:100%;
		margin: 3em auto 5em;
	}
	.single-interview .interview-top .interview-top-people{
		width:100%;
	}
}
@media screen and (max-width:768px) {
	.post-type-interview:not(.single-interview) .interview-list{
		justify-content:space-between;
		gap: 4em 2%;
	}
	:root .interview-slider.interview-list .images:after{
		max-width: 340px;
	}
	.post-type-interview:not(.single-interview) .interview-wrap{
		margin-block: 0 5em;
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul{
		gap:1em 2%;
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul li{
		width:48%;
		max-width: 100%;
	}
	.post-type-interview:not(.single-interview) .interview-wrap ul li a{
		max-width:100%;
		padding-inline: 0.5em;
		min-height: 2em;
		text-decoration: none;
	}
	.post-type-interview:not(.single-interview) .interview-list a{
		width:48%;
	}
	.post-type-interview:not(.single-interview) .interview-list a:nth-child(3n+2){
		margin-top:0em;
	}
	.post-type-interview:not(.single-interview) .interview-list .images .title {
		padding:0.15em 0.35em;
		font-size: 1.14rem;
		bottom: 1em;
		left: 0;
	}
	.post-type-interview:not(.single-interview) .interview-list .images{
		margin-block: 1.25em 1em;
	}
	.post-type-interview:not(.single-interview) .interview-list .job{
		font-size:1rem;
	}
	.post-type-interview:not(.single-interview) .interview-list .data_head .name{
		font-size:2rem;
	}
	.single-interview .interview-top .interview-top-title p{
		font-size:1rem;
		margin-bottom: 1em;
	}
	.single-interview .interview-top .interview-top-title .interview-top-style{
		font-size:2rem;
	}
	.single-interview .interview-top .interview-top-image{
		margin: 1.5em auto 2.5em;
	}
	.single-interview .interview-top .interview-top-title{
		margin-bottom:3em;
	}
	.single-interview .interview-top{
		min-height:0;
		padding-bottom:3em;
		margin-bottom:3em;
	}
	.single-interview .interview-top .interview-top-people .data_head .name{
		font-size:2.5rem;
	}
	:root .interview-slider-wrap{
		margin-top:5em;
	}
	:root .interview-slider-wrap .ttl_set{
		margin-bottom:2em
	}
	:root .interview-slider-wrap .ttl_set [lang="en"]{
		text-align:center;
	}
	:root .interview-slider-wrap .slick-arrow{
		width:50px;
	}
	:root .interview-slider-wrap .prev_icon{
		inset: 0 auto 0 -10px;
	}
	:root .interview-slider-wrap .next_icon{
		inset: 0 -10px 0 auto;
	}
	.single .no_image .interview-item-box > *{
		flex-direction:column;
	    gap: 2em;
	}
	.single .no_image .interview-item-box .interview-item-q,
	.single .no_image .interview-item-box > * .wp-block-group:not(.interview-item-q){
		flex-basis:100%;
	}
	.single .interview-item-q em{
		font-size:1.71rem;
	}
	.archive-header-title{
		font-size:1.47rem;
		margin-bottom:1em;
	}
	.interview-slider.interview-list .slick-arrow{
		width:50px;
		height: 50px;
	}
	.interview-slider.interview-list .prev_icon{
		left:-10px;
		top: -130px;
	}
	.interview-slider.interview-list .next_icon{
		right:-10px;
		top: -80px;
	}
	body.single-interview .article_body{
		padding-bottom:4em;
	}
	body.single-interview .article_body p{
		line-height: 1.6;
	}
}
@media screen and (max-width:650px) {
	.post-type-interview:not(.single-interview) .interview-list a{
		width: 100%;
	}
}
:root .recruit-inner{
	max-width:1100px;
	margin:0 auto;
}


/*support-facilities*/
.post-name-office-support .site-body section{
	padding-block:0 5em;
}
.post-name-office-support .site-body .support-systems{
	padding-block:0 0;
}
.post-name-office-support .site-body hgroup{
	margin-bottom:5em;
}
.post-name-office-support .site-body hgroup [lang="en"]{
	margin:0 auto;
	text-align:center;
	font-weight: 300;
	color: var(--fontcolor);
	font-size: 3.5rem;
	line-height: 1;
}
.post-name-office-support .site-body hgroup [lang="ja"]{
	margin-bottom:0;
}
.post-name-office-support .facilities-area{
	display:flex;
	justify-content:space-between;
	align-items: center;
	flex-wrap:wrap;
	gap: 2em 1em;
	margin-bottom: 3em;
}
.facilities-slider-image{
	width: 53.25%;
}
.facilities-slider-text{
	width:40%;
}
.facilities-slider-text .style_h3{
	margin-bottom:0.5em;
}
.facilities-slider-text p{
	line-height:1.75;
}
.facilities-slider-thumbnail{
	width:100%;
}
.post-name-office-support .facilities-area .facilities-thumbnail {
	position:relative;
}
.post-name-office-support .facilities-area .facilities-thumbnail:before{
	content:"";
	border:5px solid transparent;
	position:absolute;
	inset:0 0.75em 0 0;
	margin:auto;
	transition: border-color .3s linear;
}
.post-name-office-support .facilities-area  .facilities-thumbnail.slick-current:before {
  border-color:#2e62f4;
}
.post-name-office-support .facilities-area .facilities-slider-thumbnail .slick-track {
  transform: unset !important;
  flex-wrap:wrap;
}
.post-name-office-support .facilities-area .slick-arrow {
	width:70px;
	height:70px;
}
.post-name-office-support .facilities-area .slick-arrow:before{
	display:none;
}
.post-name-office-support .facilities-area .next_icon{
	left:auto;
	right:-35px;
}
.post-name-office-support .facilities-area .prev_icon{
	left:-35px;
	right:auto;
	top:0;
	bottom:0;
	transform:scale(-1);
	margin:auto;
}
.post-name-office-support .systems-list{
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	flex-wrap:wrap;
	gap: 3.5em 3.5em;
}
.post-name-office-support .systems-list .systems-list-item{
	width: calc(25% - 1em);
	max-width: 308px;
}
.post-name-office-support .systems-list .systems-list-item .systems-item-image{
	text-align:center;
	margin-bottom: 1.5em;
}
.post-name-office-support .systems-list .systems-list-item .systems-item-text .systems-style{
	text-align:center;
	font-size:1.5rem;
	margin-bottom:0.5em;
}
.post-name-office-support .systems-list .systems-list-item .systems-item-text p{
	font-weight:500;
	margin-bottom: 0;
	font-feature-settings: 'palt';
	line-height: 1.875;
}
.single .site-body a{
	text-decoration-color:inherit;
	text-decoration-style:inherit;
}
.single .site-body a:hover{
	text-decoration-color:transparent;
}
@media screen and (max-width:1480px) {
	.post-name-office-support .facilities-area .facilities-slider-thumbnail .slick-track {
		gap: 1em;
		justify-content:flex-start;
		align-items: center;
	}
	.post-name-office-support .facilities-area .facilities-slider-thumbnail .slick-track:before{
		display:none;
	}
	.post-name-office-support .facilities-area .facilities-thumbnail:before{
		right:0;
	}
	.post-name-office-support .facilities-area .slick-arrow{
		width:50px;
		height:50px;
	}
	.post-name-office-support .systems-list{
		gap: 3.5em 1em;
	}
}
@media screen and (max-width:980px) {
	.post-name-office-support .systems-list{
		display:flex;
		justify-content:flex-start;
		align-items:stretch;
		flex-wrap:wrap;
		gap: 3.5em 1.75em;
	}
	.post-name-office-support .systems-list .systems-list-item{
		width: calc(33% - 1em);
		max-width: 100%;
	}
}
@media screen and (max-width:768px) {
	.post-name-office-support .facilities-area{
		gap:1em;
		margin-bottom: 0;
	}
	.facilities-slider-image{
		width:100%;
	}
	.facilities-slider-text{
		width:100%;
	}
	.post-name-office-support .facilities-area .slick-arrow{
		width:40px;
		height:40px;
	}
	.post-name-office-support .facilities-area .prev_icon{
		left:-10px;
	}
	.post-name-office-support .facilities-area .next_icon{
		right:-10px;
	}
	.post-name-office-support .facilities-area .facilities-slider-thumbnail .slick-track{
		gap:0.5em;
		justify-content: center;
	}
	.post-name-office-support .facilities-area .facilities-thumbnail{
		width: calc((100% - 1.625em) / 3) !important;
		max-width: 144px;
	}
	.post-name-office-support .facilities-area .facilities-thumbnail:before{
		inset:0;
	}
	.post-name-office-support .site-body hgroup [lang="en"]{
		font-size: 2rem;
	}
	.post-name-office-support .systems-list{
		gap: 1.5em 4%;
	}
	.post-name-office-support .systems-list .systems-list-item{
		width:48%;
		max-width: 100%;
	}
	.post-name-office-support .systems-list .systems-list-item .systems-item-text .systems-style{
		font-size:1.14rem;
	}
	.post-name-office-support .systems-list .systems-list-item .systems-item-text p{
		font-size:0.86rem;
	}
	.post-name-office-support .systems-list .systems-list-item .systems-item-image{
		margin-bottom:1em;
	}
	.post-name-office-support .site-body hgroup{
		margin-bottom:3em;
	}
}
body.post-name-about .page-header{
	margin-bottom:0;
}
.defolt-top .article-top-mv{
	padding-left:6em;
	text-align: left;
}
main .defolt-column p{
	font-family: var(--fontR);
}
@media screen and (max-width:1000px) {
	.defolt-top .article-top-mv{
		padding-left:4em;
	}
}
@media screen and (max-width:768px) {
	.defolt-top .article-top-mv{
		padding-left:0em;
		margin-top:1.5em;
	}
	.defolt-top .is-layout-flex{
		gap:1em;
	}
}


.post-type-post .site-body{
	padding-top:0;
}
.post-type-post .main-section > a{
	padding-bottom:2.5em;
	margin-bottom:2.5em;
	display:block;
	border-bottom:1px solid;
	padding-right: 4em;
	position:relative;
	text-decoration:none;
}
.post-type-post .main-section > a:before{
	content:"\2192";
	width:20px;
	height:20px;
	color: var(--fontcolor);
	position:absolute;
	inset: -2.5em 2em 0 auto;
	margin:auto;
	transition:.5s transform;
	font-size:1.25rem;
}
.post-type-post .data{
	display:flex;
	justify-content:flex-start;
	align-items:center;
	gap: 2.5em;
}
.post-type-post .data .data_head-text{
	width:calc(100% - 210px - 2.5em);
}
.post-type-post .data .img_fit{
	aspect-ratio: 210 / 140;
	width: 210px;
	height: auto;
	position:relative;
}
.post-type-post .data .img_fit:before{
	content:"";
	border:1px solid;
	position:absolute;
	inset:0;
	margin:auto;
	z-index:10;
}
.post-type-post .data .data-text{
	width: calc(100% - 210px - 2em);
}
.post-type-post .data .data-text h3{
	font-size:1.125rem;
	font-weight:400;
	margin-bottom:0;
}
.post-type-post .sub-section .wp-block-list li{
	margin-block:1em;
}
.post-type-post .localNavi a,
.post-type-post .localNavi .current-cat a,
.post-type-post .sub-section .wp-block-list a{
	transition:.5s transform;
	border-bottom: none;
	padding-left: 0;
	background: none;
	display:block;
	text-decoration:none;
	font-weight: 500;
}
.post-type-post .sub-section .wp-block-list li:first-child a,
.category-new-graduates .sub-section .wp-block-list li:nth-child(2) a,
.category-career .sub-section .wp-block-list li:nth-child(3) a,
.category-outsourcing-contracts .sub-section .wp-block-list li:nth-child(4) a{
	transform:translateX(2em);
	background:transparent;
}
.post-type-post .sub-section .wp-block-list li:first-child a:before,
.category-new-graduates .sub-section .wp-block-list li:nth-child(2) a:before,
.category-career .sub-section .wp-block-list li:nth-child(3) a:before,
.category-outsourcing-contracts .sub-section .wp-block-list li:nth-child(4) a:before{
	opacity:1;
}
.category-new-graduates .sub-section .wp-block-list li:first-child a,
.category-career .sub-section .wp-block-list li:first-child a,
.category-outsourcing-contracts .sub-section .wp-block-list li:first-child a{
	transform:translateX(0);
}
.category-new-graduates .sub-section .wp-block-list li:first-child a:before,
.category-career .sub-section .wp-block-list li:first-child a:before,
.category-outsourcing-contracts .sub-section .wp-block-list li:first-child a:before{
	opacity:0;
}
.post-type-post .localNavi a:before,
.post-type-post .sub-section .wp-block-list a:before{
	content:"\2192";
	width: 2.556em;
	height:15px;
	background:var(--type03);
	position:absolute;
	inset:0 auto 0 0;
	color:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:30px;
	font-size: 9px;
	opacity: 0;
	transition:.5s opacity;
	transform: translateX(-3em);
	margin:auto;
}
.post-type-post .sub-section .sub-section-title,
.post-type-post .sub-section h2{
	font-family: var(--fontEN);
	font-size:1.5rem;
	border-bottom:1px solid;
	padding-bottom:0.5em;
	margin-bottom:0.5em;
	font-weight: 500;
}
.post-type-post  .article time{
	font-size:0.875rem;
}
.post-type-post  .article mark[data-job]{
	font-size:0.875rem;
}
.post-type-post .article h3{
	font-size:1.125rem;
	font-weight:400;
	margin-bottom:0;
	line-height: 1.75;
}
.post-type-post .main-section--col--two{
	width: calc(100% - 319.8px);
}
.post-type-post .sub-section--col--two{
	width:220px;
}
.post-type-post .post-article_head{
	position:relative;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
	gap: 1em 1em;
	margin-bottom:3em;
	padding-bottom:3em;
	border-bottom:1px solid;
}
.post-type-post .post-article_head time{
	font-family: var(--fontEN);
    font-weight: 300;
	font-size: 0.875rem;
}
.post-type-post .post-article_head .ttl{
	width:100%;
	font-size:2rem;
	font-weight:500;
	margin-bottom:0;
}
.blog .interview-top-image,
.archive .interview-top-image{
	width: 210px;
}
.single .interview-top-image .images .img_fit{
	text-align:center;
	margin: 0px auto 4em;
}
.blog .interview-top-image .images .img_fit,
.archive .interview-top-image .images .img_fit{
	filter: saturate(0%);
}
.blog .interview-top-image .images .img_fit img,
.archive .interview-top-image .images .img_fit img{
	width:100%;
	height:100%;
}
.post-type-post .post-article_end{
	margin-top: 5em;
}
.post-type-post .post-article_end a{
	font-size:1.125rem;
	max-width:280px;
	margin:0 auto;
	min-height: 3.3334em;
}
.post-type-post .main-section--col--two p{
	font-family: var(--font);
}
@media (any-hover: hover) {
	.blog a:hover  .interview-top-image .images .img_fit,
	.archive a:hover  .interview-top-image .images .img_fit{
		filter: saturate(100%);
	}
	.post-type-post .localNavi a:hover,
	.post-type-post .sub-section .wp-block-list a:hover,
	.category-new-graduates .sub-section .wp-block-list li:first-child a:hover,
	.category-career .sub-section .wp-block-list li:first-child a:hover,
	.category-outsourcing-contracts .sub-section .wp-block-list li:first-child a:hover{
			transform:translateX(2em);
		background:transparent;
	}
	.post-type-post .localNavi a:hover:before,
	.post-type-post .sub-section .wp-block-list a:hover:before,
	.category-new-graduates .sub-section .wp-block-list li:first-child a:hover:before,
	.category-career .sub-section .wp-block-list li:first-child a:hover:before,
	.category-outsourcing-contracts .sub-section .wp-block-list li:first-child a:hover:before{
		opacity:1;
	}
}
@media screen and (max-width: 1480px){
	.post-type-post .sub-section--col--two,
	.post-type-post .main-section--col--two{
		padding:0;
	}
	.post-type-post .site-body{
		padding-inline:var(--inner);
	}
}
@media screen and (max-width:1000px){
	.post-type-post .sub-section--col--two,
	.post-type-post .main-section--col--two{
		width:100%;
	}
}
@media screen and (max-width: 768px){
	.post-type-post .data{
		gap:1em;
		flex-wrap:wrap;
	}
	.post-type-post .data .data_head-text{
		width: 100%;
	}
	.blog .interview-top-image,
	.archive .interview-top-image,
	.post-type-post .data .img_fit{
		width:100%;
		max-width: fit-content;
		margin: 0 auto;
	}
	.post-type-post .data .img_fit .images{
		text-align:center;
		margin:0 auto;
	}
	.post-type-post .main-section > a{
		padding-bottom: 2em;
		margin-bottom: 2em;
		padding-right:0em;
	}
	.post-type-post .article h3{
		padding-right:1em;
	}
	.post-type-post .main-section > a:before{
		width:10px;
		height:10px;
		inset: auto 1em 2.75em auto;
		font-size:1rem;
	}
	.post-type-post .post-article_end{
		margin-block:3em 4em;
	}
}

@media screen and (max-width: 768px){
	.post-name-about .alignwide{
		width:100%;
		margin:0 auto;
	}
	.post-name-about .vk_outer-width-full.vk_outer-paddingLR-none{
		padding-inline:var(--inner);
	}
}