@charset 'UTF-8';
/*normalize: http://necolas.github.io/normalize.css/*/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
	display: block;
}
/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,canvas,video{
	display: inline-block;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]){
	display: none;
	height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],template{
	display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html{
	font-family: sans-serif; /* 1 */

	-webkit-text-size-adjust: 100%; /* 2 */
	    -ms-text-size-adjust: 100%; /* 2 */
}
/**
 * Remove default margin.
 */
body{
	margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a{
	background: transparent;
}
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus{
	outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,a:hover{
	outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1,h2,h3,h4,p{
	font-size: 1em;
	font-weight: 400;
	margin: 0;
}
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title]{
	border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,strong,.strong{
	font-weight: bold;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn,em,.em{
	font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr{
	box-sizing: content-box;
	height: 0;
}
/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p{
	-webkit-hyphens: auto;
	        hyphens: auto;

	-epub-hyphens: auto;
}
/*
 * Addresses margins set differently in IE6/7.
 */
pre{
	margin: 0;
}
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,kbd,pre,samp{
	font-family: monospace, serif;
	font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre{
	white-space: pre-wrap;
}
/**
 * Set consistent quote types.
 */
q{
	quotes: '\201C' '\201D' '\2018' '\2019';
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,q:after{
	content: '';
	content: none;
}
small,.small{
	font-size: 75%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup{
	top: -.5em;
}
sub{
	bottom: -.25em;
}
/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,menu,ol,ul{
	margin: 0;
}
dd{
	margin: 0;
}
/*
 * Addresses paddings set differently in IE6/7.
 */
menu{
	padding: 0 0 0 40px;
}
ol,ul{
	padding: 0;
	list-style-type: none;
}
/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,nav ol{
	list-style: none;
	list-style-image: none;
}
/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img{
	border: 0;
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root){
	overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure{
	margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset{
	margin: 0 2px;
	padding: .35em .625em .75em;
	border: 1px solid #c0c0c0;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend{
	padding: 0; /* 2 */
	border: 0; /* 1 */
}
/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,input,select,textarea{
	font-family: inherit; /* 1 */
	font-size: 100%; /* 2 */
	margin: 0; /* 3 */
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,input{
	line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,select{
	text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,html input[type='button'],/* 1 */
input[type='reset'],input[type='submit']{
	cursor: pointer; /* 3 */

	-webkit-appearance: button; /* 2 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],html input[disabled]{
	cursor: default;
}
/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type='checkbox'],input[type='radio']{
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type='search']{
	box-sizing: content-box;

	-webkit-appearance: textfield; /* 1 */ /* 2 */
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type='search']::-webkit-search-cancel-button,input[type='search']::-webkit-search-decoration{
	-webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea{
	overflow: auto; /* 1 */
	vertical-align: top; /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table{
	border-spacing: 0;
	border-collapse: collapse;
}
*{
	box-sizing: border-box;
}
*:before,*:after{
	box-sizing: border-box;
}
.image-replacement,.ir{
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}
.clearfix,.cf{
	zoom: 1;
}
.clearfix:before,.clearfix:after,.cf:before,.cf:after{
	display: table; 
	content: '';
}
.clearfix:after,.cf:after{
	clear: both;
}
/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp{
	font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
	font-style: italic;
}
:root{
	--color: #111;
	/*イージング*/
	--easeInOutSine: cubic-bezier(.445, .050, .550, .950);
}
/* ==========================================================================
  アニメーション
========================================================================== */
@keyframes menuFadeIn{
	0%{
		display: grid;
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes menuFadeInSp{
	0%{
		display: block;
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes menuFadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}
@keyframes fadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes fadeOut{
	0%{
		opacity: 1;
	}
	100%{
		opacity: 0;
	}
}
/*左から表示*/
.rollX{
	position: relative;
}
.rollX::before{
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transform: scaleX(0);
	transform-origin: left top;
	background: #f4a100;
}
.rollX>*{
	transition: opacity .2s linear;
	transition-delay: .8s;
	opacity: 0;
}
.animeAction.rollX::before{
	animation: rollX 1.2s 1 .2s cubic-bezier(.5, 0, 0, 1) forwards;
}
.animeAction.rollX>*{
	opacity: 1;
}
.rollXAjx{
	position: relative;
}
.rollXAjx::before{
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transform: scaleX(0);
	transform-origin: left top;
	background: #f4a100;
}
.rollXAjx img{
	transition: opacity .2s linear;
	transition-delay: .8s;
	opacity: 0;
}
.animeActive.rollXAjx::before{
	animation: rollX 1.2s 1 .2s cubic-bezier(.5, 0, 0, 1) forwards;
}
.animeActive.rollXAjx img{
	opacity: 1;
}
@keyframes rollX{
	0%{
		transform: scaleX(0);
		transform-origin: left top;
	}
	50%{
		transform: scaleX(1);
		transform-origin: left top;
	}
	51%{
		transform: scaleX(1);
		transform-origin: right top;
	}
	100%{
		transform: scaleX(0);
		transform-origin: right top;
	}
}
/*ぺらっと文字*/
.textRoll{
	display: inline-flex;
	overflow: hidden;

	justify-content: center;
}
.textRoll .wall{
	overflow: hidden;
	transition: transform 1.6s cubic-bezier(.5, 0, 0, 1);
	transform: translate3d(-101%, 0, 0);
}
.textRoll .wall .text{
	transition: transform 1.6s cubic-bezier(.5, 0, 0, 1);
	transform: translate3d(101%, 0, 0);
}
.animeAction.textRoll .wall{
	transform: translate3d(0, 0, 0);
}
.animeAction.textRoll .wall .text{
	transform: translate3d(0, 0, 0);
}
.fade-enter-active,.fade-leave-active{
	transition: opacity .3s ease;
}
.fade-enter-from,.fade-leave-to{
	opacity: 0;
}
.fade2-enter-active,.fade2-leave-active{
	transition: opacity .2s;
}
.fade2-enter,.fade2-leave-to{
	opacity: 0;
}
.mode-fade-enter-active,.mode-fade-leave-active{
	transition: opacity .5s ease;
}
.mode-fade-enter-from,.mode-fade-leave-to{
	opacity: 0;
}
/* 採用情報アニメーション */
/* 飛び出す袋文字と、流れる背景 */
.enBackText{
	position: relative;
	z-index: 2;
}
.enBackText .fukuromoji path{
	transition: all .4s ease;
	transform: translateX(10px) scale(2);
	opacity: 0;
}
.enBackText .enBkText{
	position: absolute;
	z-index: 1;
	width: 100%;
	transition: opacity .2s cubic-bezier(.25,.25,.75,.75),transform .5s cubic-bezier(.17,1.465,.415,.96);
	transform: scale(0);
	background-repeat: repeat-x;
	background-size: auto 100%;

	backface-visibility: hidden;
}
.enBackText .enBkText1{
	animation: bgText 400s linear infinite;
}
.enBackText .enBkText2{
	animation: bgText2 400s linear infinite;
}
.animeAction .fukuromoji path{
	transform: translateX(0) scale(1);
	opacity: 1;
}
.animeAction .enBkText{
	transform: scale(1);
	opacity: 1;
}
@keyframes bgText{
	0%{
		background-position: 0 center;
	}
	100%{
		background-position: -3600px center;
	}
}
@keyframes bgText2{
	0%{
		background-position: right 0 center;
	}
	100%{
		background-position: 3600px center;
	}
}
.animeRecTitle .text1 path,.animeRecTitle .text2 path,.animeRecTitle .text3 path,.animeRecTitle .text4 path{
	transition: all .4s ease;
	transform: translateX(10px) scale(2);
	opacity: 0;
}
.animeRecTitle .line rect{
	width: 0;
	transition: all .4s;
}
.animeRecTitle .text1 path{
	transition-delay: 0s;
}
.animeRecTitle .text2 path{
	transition-delay: .1s;
}
.animeRecTitle .text3 path{
	transition-delay: 0s;
}
.animeRecTitle .text4 path{
	transition-delay: .1s;
}
.animeRecTitle .line rect{
	transition-delay: .6s;
}
.animeAction.animeRecTitle .text1 path,.animeAction.animeRecTitle .text2 path,.animeAction.animeRecTitle .text3 path,.animeAction.animeRecTitle .text4 path{
	transform: translateX(0) scale(1);
	opacity: 1;
}
.animeAction.animeRecTitle .line rect{
	width: 100%;
}
.singleEdit{
	line-height: 2.1;
	overflow: hidden;
	color: #111;
}
.singleEdit>*:first-child{
	margin-block-start: 0 !important;
}
.singleEdit .has-normal-font-size{
	font-size: 1.6rem;
}
.singleEdit h2{
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.53;
}
.singleEdit h3{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.53;
}
.singleEdit h4,.singleEdit h5,.singleEdit h6{
	font-weight: 500;
}
.singleEdit p{
	font-size: 1.6rem;
	margin: 0 0 2em;
}
.singleEdit ol,.singleEdit ul{
	font-size: 1.6rem;
}
.singleEdit ul li{
	margin-left: 1em;
	text-indent: -1em;
}
.singleEdit ul li::before{
	content: '・';
}
.singleEdit a:not(.wp-block-button__link){
	text-decoration: underline;
}
.singleEdit .wp-block-button__link{
	font-size: 1em;
}
.singleEdit ol{
	padding-left: 2.5em;
	list-style-type: decimal;
}
.singleEdit .wp-block-table th,.singleEdit .wp-block-table td{
	padding: .2em .5em;
}
@media only screen and (max-width: 767px){
	.singleEdit h2{
		font-size: 2rem;
	}
	.singleEdit h3{
		font-size: 2rem;
	}
	.singleEdit>.alignright{
		float: none;

		margin-inline-start: 0 !important;
	}
	.singleEdit>.alignleft{
		float: none;

		margin-inline-end: 0 !important;
	}
	.singleEdit .wp-block-media-text{
		grid-template-areas: 'media-text-media' 'media-text-content';
		grid-template-columns: 1fr;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__media{
		grid-area: media-text-media;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__content{
		padding: 1.5em 0 0;

		grid-area: media-text-content;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__content p{
		margin: 0;
	}
}
@media only screen and (max-width: 767px){
	.singleEdit .wp-block-media-text .wp-block-media-text__media{
		-ms-grid-column: 1;
		-ms-grid-row: 1;
	}
	.singleEdit .wp-block-media-text .wp-block-media-text__content{
		-ms-grid-column: 1;
		-ms-grid-row: 2;
	}
}
/* ==========================================================================
   ページ送り
========================================================================== */
.pagenation{
	max-width: 400px;
	margin: 60px auto 0;
}
.pagenation .morePage{
	height: 60px;
	margin-bottom: 15px;
}
.pagenation .morePage .animeBtn{
	width: 100%;
	height: 100%;
}
.pagenation .pageList{
	display: flex;

	justify-content: space-between;
}
.pagenation .pageList .next,.pagenation .pageList .prev{
	flex: 0 1 120px;
}
.pagenation .pageList .next .animeBtn,.pagenation .pageList .prev .animeBtn{
	font-size: 1.6rem;
	font-weight: bold;
	display: inline-flex;
	width: 100%;
	height: 60px;

	align-items: center;
	justify-content: center;
}
.pagenation .pageList .next .animeBtn span,.pagenation .pageList .prev .animeBtn span{
	background: none;
}
.pagenation .pageList .select{
	position: relative;
	height: 60px;

	flex: 0 1 150px;
}
.pagenation .pageList .select .label{
	font-size: 1.6rem;
	font-weight: bold;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	display: flex;
	width: 100%;
	height: 100%;
	color: #fff;
	background: url('../../img/select_arrow.svg') no-repeat 118px center;
	background-color: #fba913;
	background-size: 17px auto;

	align-items: center;
	justify-content: center;
}
.pagenation .pageList .select select{
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
	opacity: 0;
}
.pagenation .pageList .prev{
	border-radius: 30px 0 0 30px;
	background: #ff8900;
}
.pagenation .pageList .prev .animeBtn{
	border-radius: 30px 0 0 30px;
}
.pagenation .pageList .prev .animeBtn::before{
	background: #ff8900;
}
.pagenation .pageList .prev .animeBtn span{
	background: none;
}
.pagenation .pageList .next{
	border-radius: 0 30px 30px 0;
	background: #ff8900;
}
.pagenation .pageList .next .animeBtn{
	border-radius: 0 30px 30px 0;
}
.pagenation .pageList .next .animeBtn::before{
	background: #ff8900;
}
.pagenation .pageList .next .animeBtn span{
	background: none;
}
.isLoading button,.isLoading select{
	pointer-events: none;
}
@media only screen and (max-width: 767px){
	.pagenation{
		max-width: 71.79487vw;
		margin: 12.82051vw auto 0;
	}
	.pagenation .morePage{
		height: 13.33333vw;
		margin-bottom: 2.30769vw;
	}
	.pagenation .morePage .animeBtn{
		width: 100%;
		height: 100%;
	}
	.pagenation .pageList .next,.pagenation .pageList .prev{
		flex: 0 1 18.97436vw;
	}
	.pagenation .pageList .next .animeBtn,.pagenation .pageList .prev .animeBtn{
		font-size: 1.4rem;
		height: 13.33333vw;
	}
	.pagenation .pageList .select{
		position: relative;
		height: 13.33333vw;

		flex: 0 1 30.76923vw;
	}
	.pagenation .pageList .select .label{
		font-size: 1.4rem;
		background: url('../../img/select_arrow.svg') no-repeat 25.64103vw center;
		background-color: #fba913;
		background-size: 3.58974vw auto;
	}
	.pagenation .pageList .prev{
		border-radius: 7.69231vw 0 0 7.69231vw;
	}
	.pagenation .pageList .prev .animeBtn{
		border-radius: 7.69231vw 0 0 7.69231vw;
	}
	.pagenation .pageList .next{
		border-radius: 0 7.69231vw 7.69231vw 0;
	}
	.pagenation .pageList .next .animeBtn{
		border-radius: 0 7.69231vw 7.69231vw 0;
	}
}
/* ==========================================================================
   ajaロード関連
========================================================================== */
.ajaxFadein{
	animation: fadeInAjax .6s 1 0s ease forwards;
}
@keyframes fadeInAjax{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
.loading{
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	opacity: .8;
}
.loading::before{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 52px;
	height: 52px;
	margin: -26px 0 0 -26px;
	content: '';
	animation: loader .8s infinite linear;
	border: 6px solid #000;
	border-top-color: #ddd;
	border-radius: 50%;
}
.noPost{
	font-size: 1.7rem;
	margin-top: 2em;
	text-align: center;

	grid-column: 1 / 4;
}
@media only screen and (max-width: 767px){
	.loading::before{
		position: absolute;
		top: 50%;
		left: 50%;
		width: 26px;
		height: 26px;
		margin: 0 0 0 -13px;
		content: '';
		animation: loader .8s infinite linear;
		border: 4px solid #000;
		border-top-color: #ddd;
		border-radius: 50%;
	}
}
@keyframes loader{
	0%{
		transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}
/* ==========================================================================
   Futura PT
========================================================================== */
.fontF{
	font-family: 'futura-pt', sans-serif;
}
/* ==========================================================================
   英語付きタイトル
========================================================================== */
.enSecTitle{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	text-align: center;
}
.enSecTitle::before{
	font-family: 'futura-pt', sans-serif;
	font-size: 5.5rem;
	font-weight: 500;
	line-height: 1;
	display: block;
	margin-bottom: 1.28205vw;
	color: #f4a100;
}
@media only screen and (max-width: 767px){
	.enSecTitle{
		font-size: 2rem;
	}
	.enSecTitle::before{
		font-size: 5rem;
	}
}
/* ==========================================================================
   下層ヘッダー
========================================================================== */
.pageMv{
	display: grid;
	height: 380px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;

	place-content: center;
}
.pageMv .pageTitle{
	font-size: 4rem;
	font-weight: 700;
	padding-left: 1.35em;
	letter-spacing: 1.35em;
	color: #fff;
}
@media only screen and (max-width: 767px){
	.pageMv{
		height: 97.4359vw;
	}
	.pageMv .pageTitle{
		font-size: 3rem;
		padding-left: .7em;
		letter-spacing: .7em;
	}
}
/* ==========================================================================
   パンくずリスト
========================================================================== */
.pankuzu{
	font-size: 1.7rem;
	font-weight: 500;
	display: grid;
	padding: 10px 0 80px;
	color: #fff;
	background: #30393f;

	grid-template-columns: minmax(20px,1fr) 1100px minmax(20px,1fr);
}
.pankuzu::before{
	content: '';

	grid-column: 1;
}
.pankuzu::after{
	content: '';

	grid-column: 3;
}
.pankuzu ul{
	display: flex;

	grid-column: 2;
}
.pankuzu ul li:not(:last-child)::after{
	padding: 0 .2em;
	content: '/';
}
.pankuzu a{
	color: #fff;
}
@media only screen and (max-width: 767px){
	.pankuzu{
		font-size: 1.4rem;
		font-weight: 400;
		padding: 2.5641vw 0 20.51282vw;

		grid-template-columns: 2.5641vw 1fr 2.5641vw;
	}
	.pankuzu ul li:not(:last-child){
		flex-shrink: 0;
	}
}
/* ==========================================================================
   polygon背景枠
========================================================================== */
.polygonBox{
	position: relative;
}
.polygonBox::before{
	position: absolute;
	z-index: 1;
	top: -52px;
	left: 0;
	width: 100%;
	height: 53px;
	content: '';
	background: #fff;
	/* chromeでアニメション後にclip-pathが無効になったので追加 バグ？ */

	-webkit-backface-visibility: hidden;
	-webkit-clip-path: polygon(3% 0%, 97% 0%, 100% 100%, 0% 100%);
	        clip-path: polygon(3% 0%, 97% 0%, 100% 100%, 0% 100%);
}
.polygonBoxG::before{
	background: #e9eded;
}
@media only screen and (max-width: 767px){
	.polygonBox::before{
		top: -11.53846vw;
		height: 11.79487vw;

		-webkit-clip-path: polygon(10% 0%, 90% 0%, 100% 100%, 0% 100%);
		        clip-path: polygon(10% 0%, 90% 0%, 100% 100%, 0% 100%);
	}
}
/* ==========================================================================
   polygon オレンジのヘッダー枠
========================================================================== */
.polygonHeader{
	position: relative;
}
.polygonHeader::before{
	position: absolute;
	z-index: 1;
	top: -1px;
	left: -1px;
	width: 30px;
	height: 30px;
	content: '';
	background: #fff;

	-webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
	        clip-path: polygon(100% 0, 0 0, 0 100%);
}
.polygonHeader::after{
	position: absolute;
	z-index: 1;
	top: -1px;
	right: -1px;
	width: 30px;
	height: 30px;
	content: '';
	background: #fff;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 0 0);
}
@media only screen and (max-width: 767px){
	.polygonHeader{
		position: relative;
	}
	.polygonHeader::before{
		top: -.25641vw;
		left: -.25641vw;
		width: 7.69231vw;
		height: 7.69231vw;
	}
	.polygonHeader::after{
		top: -.25641vw;
		right: -.25641vw;
		width: 7.69231vw;
		height: 7.69231vw;
	}
}
/* ==========================================================================
   多角形のブロック
========================================================================== */
.polygonWakuBox{
	position: relative;
}
.polygonWakuBox::before{
	position: absolute;
	z-index: 1;
	top: -1px;
	right: -1px;
	width: 30px;
	height: 30px;
	content: '';

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 0 0);
}
.polygonWakuBox::after{
	position: absolute;
	z-index: 1;
	right: -1px;
	bottom: -1px;
	width: 30px;
	height: 30px;
	content: '';

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
	        clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.polygonWakuBox .polygonLB{
	position: absolute;
	z-index: 1;
	bottom: -1px;
	left: -1px;
	width: 30px;
	height: 30px;

	-webkit-backface-visibility: hidden;
	-webkit-clip-path: polygon(0 0, 100% 100%, 0 100%);
	        clip-path: polygon(0 0, 100% 100%, 0 100%);
}
@media only screen and (max-width: 767px){
	.polygonWakuBox::before{
		top: -.25641vw;
		right: -.25641vw;
		width: 7.69231vw;
		height: 7.69231vw;

		-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
		        clip-path: polygon(100% 0, 100% 100%, 0 0);
	}
	.polygonWakuBox::after{
		right: -.25641vw;
		bottom: -.25641vw;
		width: 7.69231vw;
		height: 7.69231vw;
	}
	.polygonWakuBox .polygonLB{
		bottom: -.25641vw;
		left: -.25641vw;
		width: 7.69231vw;
		height: 7.69231vw;
	}
}
/* ==========================================================================
   更新コンテンツの パーツ
========================================================================== */
.shingleHeaderBox{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;

	align-items: center;
	flex-flow: row wrap;
}
.shingleHeaderBox .title{
	flex: 0 0 100%;
	justify-content: flex-start;
}
.shingleHeaderBox h2{
	font-size: 3rem;
	font-weight: 500;
	line-height: 1.33;
	margin-bottom: 26px;
}
.shingleHeaderBox .cat{
	display: flex;
	margin-left: 30px;

	gap: 5px;
}
.postDateText{
	font-size: 2rem;
	font-weight: bold;
	line-height: 1;
	color: #b9b5b5;
}
.postCatBox{
	font-size: 1.6rem;
	font-weight: 500;
	display: grid;
	min-width: 112px;
	min-height: 32px;
	padding: 3px 25px;
	word-break: break-all;
	color: #fff;
	border-radius: 30px;
	background: #f4a100;

	place-content: center;
}
/* 関連情報 */
.relatedBox{
	padding-bottom: 100px;
	text-align: center;
	background: #e9eded;
}
.relatedBox .enSecTitle{
	margin-bottom: 70px;
}
.relatedBox .row{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;

	gap: 0 40px;
}
@media only screen and (max-width: 767px){
	.shingleHeaderBox{
		max-width: 93.33333vw;
		padding-top: 2.5641vw;
	}
	.shingleHeaderBox h2{
		font-size: 2.4rem;
		line-height: 1.45;
		margin-bottom: 7.69231vw;
	}
	.shingleHeaderBox .cat{
		margin-left: 7.69231vw;

		gap: 2.5641vw;
	}
	.postCatBox{
		min-width: 28.71795vw;
		min-height: 8.20513vw;
		padding: .76923vw 2.5641vw;
		text-align: center;
		border-radius: 7.69231vw;
	}
	/* 関連情報 */
	.relatedBox{
		padding-bottom: 17.94872vw;
	}
	.relatedBox .enSecTitle{
		margin-bottom: 12.30769vw;
	}
	.relatedBox .row{
		max-width: 94.87179vw;
	}
}
/* ==========================================================================
   アニメーションリンク
========================================================================== */
.btnLink{
	position: relative;
	overflow: hidden;
	transition: color .45s;

	-webkit-tap-highlight-color: transparent;
}
.btnLink::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: transform .45s cubic-bezier(.785,.135,.15,.86);
	transform: scale(1);
	transform-origin: left center;
}
.btnLink span{
	z-index: 2;
}
.btnLink:hover{
	opacity: 1;
}
.btnLink:hover::before{
	transform: scaleX(0);
	transform-origin: right center;
}
.animeBtn{
	font-size: 1.6rem;
	font-weight: bold;
	display: flex;
	text-align: center;
	color: #fff;
	border-radius: 30px;
	background: #fff;
	box-shadow: 0 0 0 1px #f4a100 inset;

	align-items: center;
	justify-content: center;
}
.animeBtn::before{
	top: -1px;
	left: -1px;
	width: 103%;
	height: 103%;
	background: #f4a100;
}
.animeBtn span{
	position: relative;
	z-index: 5;
	width: 100%;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%3E%3Cpath%20d%3D%22M17.162%2C19.636a.561.561%2C0%2C0%2C0%2C.767%2C0l4.522-4.359a.513.513%2C0%2C0%2C0%2C0-.739l-4.522-4.359a.557.557%2C0%2C0%2C0-.752.014.509.509%2C0%2C0%2C0-.014.725L21.3%2C14.908%2C17.162%2C18.9A.513.513%2C0%2C0%2C0%2C17.162%2C19.636Z%22%20transform%3D%22translate(-11.044%20-6.408)%22%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%2F%3E%3Cpath%20d%3D%22M0%2C0H17V17H0Z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: calc(100% - 25px) center;
	background-size: 17px auto;
}
.animeBtn:hover{
	color: #f4a100;
}
.animeBtn:hover span{
	position: relative;
	z-index: 5;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%3E%3Cpath%20d%3D%22M17.162%2C19.636a.561.561%2C0%2C0%2C0%2C.767%2C0l4.522-4.359a.513.513%2C0%2C0%2C0%2C0-.739l-4.522-4.359a.557.557%2C0%2C0%2C0-.752.014.509.509%2C0%2C0%2C0-.014.725L21.3%2C14.908%2C17.162%2C18.9A.513.513%2C0%2C0%2C0%2C17.162%2C19.636Z%22%20transform%3D%22translate(-11.044%20-6.408)%22%20fill%3D%22%23F4A100%22%20fill-rule%3D%22evenodd%22%2F%3E%3Cpath%20d%3D%22M0%2C0H17V17H0Z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E');
}
@media only screen and (max-width: 767px){
	.animeBtn{
		font-size: 1.4rem;
		font-weight: bold;
		border-radius: 7.69231vw;
	}
	.animeBtn span{
		background-position: calc(100% - 5.12821vw) center;
		background-size: 3.84615vw auto;
	}
}
/* ==========================================================================
   フォーム
========================================================================== */
.formWall{
	text-align: justify;
}
.formWall select,.formWall input[type='text'],.formWall input[type='tel'],.formWall input[type='email']{
	font-size: 1.5rem;
	line-height: 40px;
	width: 100%;
	height: 40px;
	padding: 0 10px;
	border: 1px solid #ccc;
	border-radius: 7px;
}
.formWall textarea{
	font-size: 1.5rem;
	width: 100%;
	height: 166px;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 7px;
}
.formWall .formBox{
	display: flex;
	margin-top: -1px;
	border: 1px solid #ccc;
}
.formWall .formBox .inputTitle{
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.47;
	display: flex;
	padding: 0 25px;
	letter-spacing: .1em;
	border-right: 1px solid #ccc;
	background: #e9eded;

	align-items: center;
	flex: 0 1 253px;
	justify-content: space-between;
}
.formWall .formBox .inputTitle .required{
	font-size: 1.3rem;
	font-weight: 500;
	display: flex;
	width: 30px;
	height: 20px;
	letter-spacing: 0;
	color: #fff;
	border-radius: 5px;
	background: #cb0505;

	align-items: center;
	flex-shrink: 0;
	justify-content: center;
}
.formWall .formBox .inputBox{
	padding: 15px;

	flex: 0 1 663px;
}
.formWall .birthday p{
	display: flex;

	align-items: center;
}
.formWall .birthday p .txt{
	margin: 0 20px 0 10px;
	color: #777;
}
.formWall .birthday p input{
	width: 90px;;
}
.formWall .accept{
	font-size: 1.3rem;
	font-weight: 500;
	display: flex;
	max-width: 560px;
	height: 55px;
	margin: 50px auto 0;
	text-align: center;
	border-radius: 30px;
	background: #e9eded;

	align-items: center;
	justify-content: center;
}
.formWall .accept label{
	display: flex;

	align-items: center;
}
.formWall .accept a{
	text-decoration: underline;
}
.formWall .accept .wpcf7-list-item-label{
	padding-left: 10px;
}
.formWall .send{
	text-align: center;
}
.formWall .send .animeBtn{
	width: 180px;
	height: 60px;
	margin: 34px auto 0;
	cursor: pointer;
}
.formWall .send .disabled{
	pointer-events: none;
	opacity: .5;
}
.formWall .send input{
	display: none;
}
.formWall .send .wpcf7-spinner{
	display: block;
	margin: 10px auto 0;
}
.formWall .wpcf7-not-valid-tip{
	font-size: 1.5rem;
	padding: .3em;
}
.formWall .wpcf7-response-output{
	font-size: 1.5rem;
	margin: 0 !important;
	padding: 1em !important;
	text-align: center;
}
@media only screen and (max-width: 767px){
	.formWall select,.formWall input[type='text'],.formWall input[type='tel'],.formWall input[type='email']{
		font-size: 16px;
		line-height: 10.25641vw;
		height: 10.25641vw;
		padding: 0 5.12821vw;
		border-radius: 1.79487vw;
	}
	.formWall textarea{
		font-size: 16px;
		height: 42.5641vw;
		padding: 2.5641vw 5.12821vw;
		border-radius: 1.79487vw;
	}
	.formWall .formBox{
		display: block;
	}
	.formWall .formBox .inputTitle{
		padding: 5.64103vw 6.15385vw;
	}
	.formWall .formBox .inputTitle .required{
		width: 7.69231vw;
		height: 5.12821vw;
		border-radius: 1.28205vw;
	}
	.formWall .formBox .inputBox{
		padding: 4.10256vw;
	}
	.formWall .birthday p{
		display: flex;

		align-items: center;
	}
	.formWall .birthday p .txt{
		margin: 0 20px 0 10px;
		color: #777;
	}
	.formWall .birthday p input{
		width: 90px;;
	}
	.formWall .accept{
		max-width: none;
		height: 14.10256vw;
		margin: 12.82051vw auto 0;
		border-radius: 7.69231vw;
	}
	.formWall .accept .wpcf7-list-item-label{
		padding-left: 2.5641vw;
	}
	.formWall .send .animeBtn{
		width: 46.15385vw;
		height: 15.38462vw;
		margin: 8.71795vw auto 0;
	}
	.formWall .send .wpcf7-spinner{
		margin: 2.5641vw auto 0;
	}
	.formWall .wpcf7-not-valid-tip{
		font-size: 1.3rem;
		padding: .3em;
	}
	.formWall .wpcf7-response-output{
		font-size: 1.5rem;
		margin: 0 !important;
		padding: 1em !important;
		text-align: center;
	}
}
/* ==========================================================================
   共通設定
========================================================================== */
html{
	font-size: 62.5%;
	overflow-y: scroll;

	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}
body{
	font-family: 'Zen Kaku Gothic New','ヒラギノ角ゴ ProN W3','游ゴシック', '游ゴシック体','メイリオ',Meiryo,sans-serif;
	font-size: 1.6rem;
	line-height: 1.2;
	overflow: hidden;
	width: 100%;
	min-width: 1160px;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: .05em;
	color: #111;
	color: var(--color);

	font-feature-settings: 'pkna';
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;

	backface-visibility: hidden;
}
a{
	text-decoration: none;
	color: #111;
	color: var(--color);
}
a:hover{
	opacity: .8;
}
.spShow{
	display: none;
}
.pcShow{
	display: inline-block;
}
.container{
	display: grid;
	min-height: 100vh;

	grid-template: 'header' 80px
	'pageContainer' 1fr
	'endNaviBox' auto
	'footer' auto / 100%;
}

.header{
	position: relative;
	z-index: 3;

	grid-area: header;
	-ms-grid-column: 1;
	-ms-grid-row: 1;
}
.home .container>.header{
	-ms-grid-column: 1;
	-ms-grid-row: 1;
}
.pageContainer{
	position: relative;
	z-index: 2;

	grid-area: pageContainer;
	-ms-grid-column: 1;
	-ms-grid-row: 2;
}
.home .container>.pageContainer{
	-ms-grid-column: 1;
	-ms-grid-row: 2;
}
.endNaviBox{
	z-index: 2;

	grid-area: endNaviBox;
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}
.home .container>.endNaviBox{
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}
.footer{
	z-index: 3;

	grid-area: footer;
	-ms-grid-column: 1;
	-ms-grid-row: 4;
}
.home .container>.footer{
	-ms-grid-column: 1;
	-ms-grid-row: 4;
}
button{
	padding: 0;
	border: none;
	outline: none;
	background: none;
}
button:focus{
	outline: none;
}
button:hover{
	opacity: .8;
}
button:disabled{
	opacity: 1;
}
button:disabled:hover{
	opacity: 1;
}
.anchor{
	display: block;
	margin-top: -90px;
	padding-top: 90px;
}
/* ==========================================================================
   ヘッダー
========================================================================== */
.header{
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	display: grid;
	width: 100%;
	min-width: 1120px;
	padding: 0 32px 0 52px;
	background: #fff;

	grid-template-columns: 257px 1fr 110px;
	grid-template-rows: 80px;
}
.header .logo{
	align-self: center;
	grid-column: 1;
}
.header .gNav{
	overflow: hidden;
	margin-right: 25px;
	transition: transform .2s;
	transform: scaleX(1);
	transform-origin: right;

	align-self: center;
	grid-column: 2;
}
.header .gNav .pageNav{
	font-size: 1.6rem;
	display: flex;

	gap: 0 36px;
	justify-content: flex-end;
}
.header .lang{
	position: relative;
	width: 110px;
	padding: 0 16px;

	align-self: center;
	grid-column: 3;
}
.header .lang .country{
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1;
}
.header .lang .country .inner{
	display: flex;

	align-items: center;
}
.header .lang .country .inner::before{
	width: 25px;
	height: 16px;
	margin-right: 13px;
	content: '';
}
.header .lang .jp{
	cursor: pointer;
}
.header .lang .jp .inner::before{
	background: url('../../img/flag_jp.svg') no-repeat center center / contain;
}
.header .lang .jp .inner::after{
	width: 10px;
	height: 6px;
	margin: 0 0 0 auto;
	content: '';
	transition: transform .2s linear;
	transform: rotate(180deg);
	transform-origin: center;
	background: url('../../img/lang_arrow.svg') no-repeat center center / contain;
}
.header .lang .jpOpne .inner::after{
	transform: rotate(0deg);
}
.header .lang .otherLangList{
	position: absolute;
	top: 25px;
	left: 0;
	display: none;
	width: 110px;
	padding: 0 16px 12px;
	border-radius: 5px;
	background: #fff;
}
.header .lang .otherLangList li+li{
	margin-top: 8px;
}
.header .lang .en .inner::before{
	background: url('../../img/flag_en.png') no-repeat center center / contain;
}
.header .lang .vn .inner::before{
	background: url('../../img/flag_vn.svg') no-repeat center center / contain;
}
.header .menuBtn{
	display: none;

	align-self: center;
}
.header .menuBtn button{
	line-height: 1;
	height: auto;
	padding: 5px 0;
}
.header .menuBtn svg{
	width: 100%;
	transition: transform .4s;
	transform: rotate(0deg);
	transform-origin: center;
}
.header .menuBtn .d{
	transition: transform .4s,opacity .4s;
	transform-origin: center;
}
.header .menuBtn .d:nth-child(3){
	opacity: 0;
}
.header .menuBtn .d:nth-child(4){
	opacity: 0;
}
.header .btnOpen button{
	height: 32px;
}
.header .btnOpen svg{
	transform: rotate(180deg);
}
.header .btnOpen .d:nth-child(1),.header .btnOpen .d:nth-child(2),.header .btnOpen .d:nth-child(5){
	opacity: 0;
}
.header .btnOpen .d:nth-child(3){
	transform: rotate(-45deg);
	opacity: 1;
}
.header .btnOpen .d:nth-child(4){
	transform: rotate(45deg);
	opacity: 1;
}
.headerFix{
	grid-template-columns: 180px 1fr 110px 62px;
}
.headerFix .gNav{
	transform: scaleX(0);
}
.headerFix .menuBtn{
	display: block;
	margin-left: 24px;

	align-self: center;
	grid-column: 4;
}
@media only screen and (max-width: 1430px){
	.header .gNav{
		margin-right: 0;
	}
	.header .gNav .pageNav{
		font-size: 1.5rem;

		gap: 20px;
	}
}
@media only screen and (max-width: 1250px){
	.header{
		grid-template-columns: 180px 1fr 110px;
	}
	.header .gNav{
		margin-right: 0;
	}
	.header .gNav .pageNav{
		font-size: 1.5rem;

		gap: 15px;
	}
}
/* ==========================================================================
   hbgNav
========================================================================== */
.overlay{
	position: fixed;
	z-index: 888;
	top: 80px;
	left: 0;
	display: none;
	width: 100%;
	height: calc(100% - 80px);
}
.hbgNav{
	position: fixed;
	z-index: 900;
	top: 80px;
	left: 0;
	display: none;
	width: 100%;
	min-width: 1120px;
	height: 380px;
	border-right: 10px solid #f4a100;
	border-left: 10px solid #f4a100;
	background-color: #30393f;

	place-content: center;
}
.hbgNav::before{
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	width: 20px;
	height: 20px;
	content: '';
	background: #f4a100;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 0 0);
}
.hbgNav::after{
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	width: 20px;
	height: 20px;
	content: '';
	background: #f4a100;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
	        clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.hbgNav .polygonLB{
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 20px;
	height: 20px;
	background: #f4a100;

	-webkit-clip-path: polygon(0 0, 100% 100%, 0 100%);
	        clip-path: polygon(0 0, 100% 100%, 0 100%);
}
.hbgNav a{
	color: #fff;
}
.hbgNav .inner{
	display: grid;
	max-width: 1288px;
	margin: 0 auto;
	padding: 65px 20px;

	grid-gap: 0 35px;
	grid-template-columns: 1fr 330px 250px;
}
.hbgNav .img{
	grid-column: 1;
}
.hbgNav ul{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1;
	position: relative;
	display: grid;
	width: 100%;
	margin: 0 auto;

	align-self: center;
	grid-column: 2;
	grid-gap: 20px 10px;
	grid-template-columns: repeat( auto-fill, minmax(130px,1fr) );
}
.hbgNav li{
	flex: 0 1 50%;
}
.hbgNav .contact{
	position: relative;
	width: 250px;
	height: 70px;

	align-self: center;
	grid-column: 3;
}
.hbgNav .contact::before{
	position: absolute;
	z-index: 2;
	top: 0;
	right: -1px;
	width: 20px;
	height: 20px;
	content: '';
	background: #30393f;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 0 0);
}
.hbgNav .contact::after{
	position: absolute;
	z-index: 2;
	right: -1px;
	bottom: 0;
	width: 20px;
	height: 20px;
	content: '';
	background: #30393f;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
	        clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.hbgNav .contact .polygonLB{
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: -1px;
	width: 20px;
	height: 20px;
	background: #30393f;

	-webkit-backface-visibility: hidden;
	-webkit-clip-path: polygon(0 0, 100% 100%, 0 100%);
	        clip-path: polygon(0 0, 100% 100%, 0 100%);
}
.hbgNav .contact .more{
	font-size: 1.8rem;
	font-weight: 500;
	display: flex;
	overflow: hidden;
	height: 70px;
	text-align: center;
	background: url('../../img/menu_contact_bk.svg') no-repeat center center / contain;

	align-items: center;
	justify-content: center;
}
.hbgNav .contact .more::before{
	background: #f4a100;
}
.hbgNav .contact .more span{
	width: 100%;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%207.74%2013.98%22%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20id%3D%22d%22%20d%3D%22m.22%2C13.76c.29.29.77.29%2C1.06%2C0l6.25-6.25c.29-.29.29-.77%2C0-1.06L1.28.2C.97-.08.5-.06.22.24-.05.53-.05.97.22%2C1.26l5.72%2C5.72L.22%2C12.7c-.29.29-.29.77%2C0%2C1.06Z%22%20style%3D%22fill%3A%23fff%3B%20fill-rule%3Aevenodd%3B%20stroke-width%3A0px%3B%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: calc(100% - 26px) center;
	background-size: 7px auto;
}
.hbgNav .contact .more:hover{
	color: #f4a100;
}
.hbgNav .contact .more:hover span{
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%207.74%2013.98%22%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20id%3D%22d%22%20d%3D%22m.22%2C13.76c.29.29.77.29%2C1.06%2C0l6.25-6.25c.29-.29.29-.77%2C0-1.06L1.28.2C.97-.08.5-.06.22.24-.05.53-.05.97.22%2C1.26l5.72%2C5.72L.22%2C12.7c-.29.29-.29.77%2C0%2C1.06Z%22%20style%3D%22fill%3A%23f4a100%3B%20fill-rule%3Aevenodd%3B%20stroke-width%3A0px%3B%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
.navOpen{
	display: grid;
	animation: menuFadeIn .4s 1 0s linear forwards;
}
.navClose{
	animation: menuFadeOut .4s 1 0s ease-out forwards;
}
/* ==========================================================================
   endNaviBox
========================================================================== */
.endNaviBox{
	display: flex;
	min-height: 415px;
	padding: 69px 0 75px;
	background: url('../../img/end_box_bk.jpg') no-repeat center center / cover;

	gap: 0 257px;
	justify-content: center;
}
.endNaviBox>section{
	text-align: center;
	color: #fff;

	flex: 0 1 443px;
}
.endNaviBox>section .text{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.94;
	margin-top: 25px;
}
.endNaviBox>section .goBtn{
	display: block;
	display: flex;
	overflow: hidden;
	width: 60px;
	height: 60px;
	margin: 25px auto 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 2px #f4a100 inset;

	align-items: center;
	justify-content: center;
}
.endNaviBox>section .goBtn::before{
	background: #f4a100;
}
.endNaviBox>section .goBtn svg .arrow{
	fill: #fff;
}
.endNaviBox>section .goBtn:hover .arrow{
	fill: #f4a100;
}
.endNaviBox .goFaq .enSecTitle::before{
	content: 'FAQ';
}
.endNaviBox .goContact .enSecTitle::before{
	content: 'CONTACT';
}
/* ==========================================================================
   footer
========================================================================== */
.footer{
	display: grid;
	min-width: 1120px;
	color: #fff;
	background: #30393f;

	grid-template-columns: 1fr 31.85714%31.85714% 31.85714% 1fr;
	grid-template-rows: 61px auto 61px;
}
.footer::before{
	content: '';

	grid-column: 1;
	grid-row: 2;
}
.footer::after{
	content: '';

	grid-column: 5;
	grid-row: 2;
}
.footer .footerNav{
	font-size: 1.6rem;
	display: flex;
	background: #252b2f;

	align-items: center;
	gap: 0 3em;
	grid-column: 1 / 6;
	grid-row: 1;
	justify-content: center;
}
.footer .footerNav a{
	color: #fff;
}
.footer .companyAddr1{
	grid-column: 2;
	grid-row: 2;
}
.footer .companyAddr2{
	background: #252b2f;

	grid-column: 3;
	grid-row: 2;
}
.footer .companyAddr{
	padding: 40px;
}
.footer .companyAddr h2{
	margin-bottom: 45px;
}
.footer .companyAddr ul{
	font-size: 1.6rem;
	font-style: normal;
	line-height: 2;
	color: #aaa;
}
.footer .companyAddr ul li{
	display: flex;
	word-break: break-all;
}
.footer .companyAddr ul li::before{
	width: 24px;
	height: 2em;
	margin-right: 6px;
	content: '';

	flex-shrink: 0;
}
.footer .companyAddr ul li+li{
	margin-top: 1em;
}
.footer .companyAddr ul .addr{
	justify-content: left;
}
.footer .companyAddr ul .addr::before{
	width: 16px;
	margin-right: 10px;
	background: url('../../img/addr_icon.svg') no-repeat center center / contain;
}
.footer .companyAddr ul .tel::before{
	background: url('../../img/tel_icon.svg') no-repeat center center / contain;
}
.footer .companyAddr ul .mail::before{
	background: url('../../img/mail_icon.svg') no-repeat center center / contain;
}
.footer .companyAddr ul a{
	color: #aaa;
}
.footer .other{
	display: flex;
	padding: 40px;
	background: #30393f;

	flex-flow: column;
	grid-column: 4;
	grid-row: 2;
	justify-content: center;
}
.footer .other .otherLink{
	font-size: 1.6rem;
	line-height: 1.56;
	margin-top: 10px;
}
.footer .other .otherLink a{
	color: #aaa;
}
.footer .other .otherLink li+li{
	margin-top: 1em;
}
.footer .other .snsLink{
	display: flex;

	gap: 0 21px;
}
.footer .other .snsLink li{
	align-content: center;
	align-items: center;
	justify-content: center;
	justify-items: center;
	display: flex;
	width: 50px;
	height: 50px;
	border-radius: 10px;
	background-color: #3B4146;

}
.footer .other .snsLink li a{
	align-content: center;
	align-items: center;
	justify-content: center;
	justify-items: center;
}
.footer .copyright{
	font-size: 1.4rem;
	line-height: 1;
	display: grid;
	text-align: center;
	color: #aaa;
	background: #252b2f;

	grid-column: 1 / 6;
	grid-row: 3;
	place-content: center;
}
.footer .pagetop{
	position: fixed;
	z-index: 900;
	right: 40px;
	bottom: 30px;
}
.footer .pagetop:focus{
	outline: none;
}
/* ==========================================================================
   ニュース共通
========================================================================== */
.newsPage .pageMv{
	background-image: url('../../img/news_mv_bk.jpg');
}
.newsPage .pankuzu{
	background: #eba505;
}
/* ==========================================================================
   ニュース詳細
========================================================================== */
.newsSingle .singleEdit{
	max-width: 1100px;
	margin: 36px auto 0;
	padding-bottom: 140px;
}
.newsSingle .relatedBox .enSecTitle::before{
	content: 'RELATED NEWS';
}
.newsSingle .relatedBox .row{
	display: flex;

	gap: 0 40px;
}
.newsSingle .relatedBox .relatedPost{
	text-align: justify;

	flex: 0 1 340px;
}
.newsSingle .relatedBox .relatedPost header{
	display: flex;

	align-items: center;
	flex-flow: row wrap;
}
.newsSingle .relatedBox .relatedPost .postDateText{
	margin-right: 30px;
}
.newsSingle .relatedBox .relatedPost h2{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2.1;
	margin-top: 12px;

	flex: 0 0 100%;
}
/* ==========================================================================
   ニュース一覧
========================================================================== */
.archivePage{
	padding-bottom: 100px;
}
.archivePage .newsTitle{
	font-size: 3rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 100px;
	text-align: center;
}
.archivePage .listRow{
	position: relative;
	max-width: 1100px;
	min-height: 150px;
	margin: 0 auto;
}
.archivePage .listBox a{
	display: grid;

	grid-gap: 25px 35px;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto 1fr;
}
.archivePage .listBox time{
	grid-column: 1;
	grid-row: 1;
}
.archivePage .listBox .cat{
	align-self: start;
	grid-column: 1;
	grid-row: 2;
}
.archivePage .listBox h2{
	font-size: 1.8rem;
	font-weight: 500;

	grid-column: 2;
	grid-row: 1 / 3;
}
.archivePage .listBox+.listBox{
	margin-top: 30px;
}
/* ==========================================================================
   お問い合わせ
========================================================================== */
.contactPage{
	padding-bottom: 100px;
}
.contactPage .pageMv{
	background-image: url('../../img/contact_mv_bk.jpg');
}
.contactPage .pageMv .wall{
	text-align: center;
}
.contactPage .pageMv .wall p{
	margin-top: 45px;
	font-size: 4rem;
	font-weight: 700;
	color: #fff;
}
.contactPage .formSection{
	max-width: 915px;
	margin: 0 auto;
	text-align: center;
}
.contactPage .enSecTitle{
	margin-bottom: 75px;
}
.contactPage .enSecTitle::before{
	content: 'お問い合わせ・ご相談';
}
/* ==========================================================================
   パートナー募集
========================================================================== */
.partnerPage{
	padding-bottom: 100px;
}
.partnerPage .pageMv{
	background-image: url('../../img/partner_mv_bk.jpg');
}
.partnerPage .partnerSection{
	text-align: center;
}
.partnerPage .partnerSection .recruitmentTitle{
	margin-bottom: 75px;
}
.partnerPage .partnerSection .recruitmentTitle .enSecTitle::before{
	content: 'PARTNERS RECRUITMENT';
}
.partnerPage .partnerSection .topBanner{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
	background: url('../../img/partner_banner.jpg') no-repeat center center;
	background-size: cover;
	align-items: center;
}
.partnerPage .partnerSection .topBanner li{
	display: flex;
	height: 331px;

	align-items: center;
	flex: 0 0 50%;
	flex-flow: column;
	justify-content: center;
}
.partnerPage .partnerSection .topBanner .freelanceBtn{
	display: block;
	display: flex;
	overflow: hidden;
	width: 60px;
	height: 60px;
	margin: 15px auto 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 2px #f4a100 inset;

	align-items: center;
	justify-content: center;
}
.partnerPage .partnerSection .topBanner .freelanceBtn::before{
	background: #f4a100;
}
.partnerPage .partnerSection .topBanner .freelanceBtn svg{
	transform: rotate(90deg);
	transform-origin: center;
	vertical-align: bottom;
}
.partnerPage .partnerSection .topBanner .freelanceBtn svg .arrow{
	fill: #fff;
}
.partnerPage .partnerSection .topBanner .freelanceBtn:hover .arrow{
	fill: #f4a100;
}
.partnerPage .partnerSection .topBanner .companyBtn{
	font-weight: 500;
	width: 313px;
	height: 60px;
	margin-top: 22px;
}
.partnerPage .partnerSection .topBanner .companyBtn span{
	background-position: calc(100% - 14px) center;
	background-size: 24px auto;
}
.partnerPage .partnerSection .topText{
	font-size: 1.6rem;
	line-height: 2.1;
	max-width: 1100px;
	margin: 40px auto 0;
	text-align: justify;
}
.partnerPage .partnerSection .imgBox{
	max-width: 1100px;
	margin: 40px auto 0;
}
.partnerPage .partnerSection .benefits{
	max-width: 1100px;
	margin: 100px auto 0;
}
.partnerPage .partnerSection .benefits .benefitsTitle{
	margin-bottom: 50px;
}
.partnerPage .partnerSection .benefits .benefitsTitle .enSecTitle::before{
	content: 'BENEFITS FOR FREELANCER';
}
.partnerPage .partnerSection .poitRow{
	display: grid;

	grid-gap: 0 25px;
	grid-template-columns: repeat(3, 350px);
}
.partnerPage .partnerSection .pointSec{
	display: grid;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.partnerPage .partnerSection .pointSec h2{
	font-size: 2.7rem;
	font-weight: bold;
	line-height: 1.2;
	display: grid;
	width: 330px;
	padding: 11px 10px;
	letter-spacing: .03em;
	color: #fff;
	background: #f4a100;

	justify-self: center;
	place-content: center;
}
.partnerPage .partnerSection .pointSec .img{
	padding: 10px 10px 0;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.partnerPage .partnerSection .pointSec p{
	font-size: 1.6rem;
	line-height: 2.1;
	position: relative;
	padding: 21px 18px 0;
	text-align: justify;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.partnerPage .partnerSection .pointSec p::after{
	position: absolute;
	bottom: -30px;
	left: 0;
	width: 100%;
	height: 31px;
	content: '';
	background: url('../../img/parter_waku_bittin.png') no-repeat center center;
}
.partnerPage .flow{
	margin-top: 180px;
	padding-bottom: 110px;
	background: #e9eded;
}
.partnerPage .flow .flowTitle{
	margin-bottom: 50px;
}
.partnerPage .flow .flowTitle .enSecTitle::before{
	content: 'FLOW';
}
.partnerPage .flow .topText{
	max-width: 1070px;
}
.partnerPage .flow ol{
	display: grid;
	max-width: 1070px;
	margin: 51px auto 0;

	grid-gap: 0 30px;
	grid-template-columns: repeat(4,245px);
}
.partnerPage .flow li{
	display: grid;

	grid-row: span 2;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.partnerPage .flow li:nth-child(2),.partnerPage .flow li:nth-child(3),.partnerPage .flow li:nth-child(4){
	position: relative;
}
.partnerPage .flow li:nth-child(2)::before,.partnerPage .flow li:nth-child(3)::before,.partnerPage .flow li:nth-child(4)::before{
	position: absolute;
	z-index: 2;
	top: 50%;
	left: -38px;
	width: 48px;
	height: 48px;
	margin-top: -24px;
	content: '';
	background: url('../../img/parter_arrow.svg') no-repeat center center / contain;
}
.partnerPage .flow .flowBox{
	display: grid;

	grid-row: span 2;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.partnerPage .flow .flowBox .polygonHeader{
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.25;
	display: grid;
	width: 231px;
	padding: 4px 5px;
	letter-spacing: .03em;
	color: #fff;
	background: #f4a100;

	justify-self: center;
	place-content: center;
}
.partnerPage .flow .flowBox .polygonHeader::before,.partnerPage .flow .flowBox .polygonHeader::after{
	background: #e9eded;
}
.partnerPage .flow .flowBox p{
	font-size: 1.6rem;
	line-height: 1.68;
	position: relative;
	padding: 22px 18px 0;
	text-align: justify;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.partnerPage .flow .flowBox p::before{
	display: block;
	width: 50px;
	height: 50px;
	margin: 0 auto 10px;
	content: '';
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.partnerPage .flow .flowBox p::after{
	position: absolute;
	bottom: -21px;
	left: 0;
	width: 100%;
	height: 22px;
	content: '';
	background: url('../../img/parter_waku_bittin2.png') no-repeat center center;
}
.partnerPage .flow .flowBox1 p::before{
	background-image: url('../../img/parter_icon1.svg');
}
.partnerPage .flow .flowBox2 p::before{
	background-image: url('../../img/parter_icon2.svg');
}
.partnerPage .flow .flowBox3 p::before{
	background-image: url('../../img/parter_icon3.svg');
}
.partnerPage .flow .flowBox4 p::before{
	background-image: url('../../img/parter_icon4.svg');
}
.partnerPage .formSection .formTitle{
	margin-bottom: 73px;
}
.partnerPage .formSection .formTitle .enSecTitle::before{
	content: 'REGISTRATION FORM';
}
.partnerPage .formSection .formWall{
	max-width: 915px;
	margin: 0 auto;
}
/* ==========================================================================
   SERVICE
========================================================================== */
.servicePage .pageMv{
	background-image: url('../../img/service_mv_bk.jpg');
}
.servicePage .serviceSection{
	text-align: center;
}
.servicePage .serviceTitle{
	margin-bottom: 70px;
}
.servicePage .serviceTitle .enSecTitle::before{
	content: 'SERVICE';
}
.servicePage .pageNav{
	max-width: 1100px;
	margin: 0 auto;
}
.servicePage .pageNav ul{
	display: flex;

	justify-content: space-between;
}
.servicePage .pageNav li{
	flex: 0 1 340px;
}
.servicePage .pageNav li::before,.servicePage .pageNav li::after{
	z-index: 2;
}
.servicePage .pageNav li .btnLink{
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1;
	display: flex;
	height: 90px;
	padding-top: 24px;
	letter-spacing: .03em;
	color: #fff;
	background: url('../../img/service_navi_bk.svg') no-repeat center center / contain;

	justify-content: center;
}
.servicePage .pageNav li .btnLink::before{
	z-index: 1;
	top: 1px;
	left: 1px;
	width: 100%;
	height: 100%;
	background: #f4a100;
}
.servicePage .pageNav li .btnLink span::after{
	display: block;
	width: 22px;
	height: 12px;
	margin: 14px auto 0;
	content: '';
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.servicePage .pageNav li .btnLink:hover{
	color: #f4a100;
}
.servicePage .pageNav li .btnLink:hover span::after{
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23F4A100%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
.servicePage .serviceBtn{
	width: 180px;
	height: 60px;
	margin: 50px auto 0;
}
.servicePage .serviceSec .secTitle{
	font-size: 4.5rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 70px;
	letter-spacing: .03em;
}
.servicePage .serviceSec .secTitle::after{
	font-family: 'futura-pt', sans-serif;
	font-size: 2.2rem;
	font-weight: 500;
	display: block;
	margin: 14px auto 0;
	color: #f4a100;
}
.servicePage .serviceSec .topBox{
	display: flex;
	max-width: 1100px;
	margin: 0 auto 80px;

	align-items: center;
	justify-content: space-between;
}
.servicePage .serviceSec .topBox p{
	font-size: 1.6rem;
	line-height: 2.5;
	text-align: justify;

	flex: 0 1 530px;
}
.servicePage .serviceSec .topBox .img{
	flex: 0 1 530px;
}
.servicePage .serviceSec .polygonWakuBox{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
	padding: 15px 35px 15px 15px;
	text-align: justify;
	background: #fff;

	align-items: center;
	justify-content: space-between;
}
.servicePage .serviceSec .polygonWakuBox .text{
	flex: 0 1 720px;
	order: 2;
}
.servicePage .serviceSec .polygonWakuBox .text h2{
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 5px;
	text-align: left;
}
.servicePage .serviceSec .polygonWakuBox .text p{
	font-size: 1.6rem;
	line-height: 1.87;
}
.servicePage .serviceSec .polygonWakuBox .img{
	flex: 0 1 291px;
	order: 1;
}
.servicePage .serviceSec .polygonWakuBox+.polygonWakuBox{
	margin-top: 30px;
}
.servicePage .system{
	margin-top: 52px;
	padding-bottom: 150px;
	background: #e9eded;
}
.servicePage .system .secTitle::after{
	content: 'SYSTEM DEVELOPMENT';
}
.servicePage .system .systemSec::before{
	background: #e9eded;
}
.servicePage .system .systemSec::after{
	background: #e9eded;
}
.servicePage .system .systemSec .polygonLB{
	background: #e9eded;
}
.servicePage .lab{
	padding-bottom: 150px;
}
.servicePage .lab .secTitle::after{
	content: 'IT HUMAN RESOURCES LAB';
}
.servicePage .lab .labSec{
	background: #e9eded;
}
.servicePage .lab .labSec::before{
	background: #fff;
}
.servicePage .lab .labSec::after{
	background: #fff;
}
.servicePage .lab .labSec .polygonLB{
	background: #fff;
}
.servicePage .consulting{
	padding-bottom: 100px;
	background: #e9eded;
}
.servicePage .consulting .secTitle::after{
	content: 'IT CONSULTING';
}
.servicePage .consulting .consultingSec::before{
	background: #e9eded;
}
.servicePage .consulting .consultingSec::after{
	background: #e9eded;
}
.servicePage .consulting .consultingSec .polygonLB{
	background: #e9eded;
}
/* ==========================================================================
   COMPANY
========================================================================== */
.companyPage .pageMv{
	background-image: url('../../img/company_mv_bk.jpg');
}
.companyPage .message{
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.companyPage .message .enSecTitle{
	margin-bottom: 48px;
}
.companyPage .message .enSecTitle::before{
	content: 'CEO MESSAGE';
}
.companyPage .message .row{
	display: flex;

	align-items: flex-end;
	justify-content: space-between;
}
.companyPage .message p{
	font-size: 1.6rem;
	line-height: 2.18;
	text-align: justify;

	flex: 0 1 540px;
}
.companyPage .message .ph{
	flex: 0 1 521px;
}
.companyPage .message figure{
	display: grid;

	grid-template-columns: auto;
	grid-template-rows: auto;
}
.companyPage .message figure img{
	z-index: 1;

	grid-column: 1;
	grid-row: 1;
}
.companyPage .message figure figcaption{
	font-size: 1.8rem;
	line-height: 1;
	z-index: 2;
	display: flex;
	width: 509px;
	height: 58px;
	margin-bottom: 30px;
	padding-top: 15px;
	background: url('../../img/company_cocvu_bk.png') no-repeat center center;

	align-self: end;
	grid-column: 1;
	grid-row: 1;
	justify-content: center;
}
.companyPage .message figure figcaption strong{
	font-size: 1.7rem;
	font-weight: bold;
	padding-right: 1em;
}
.companyPage .innerSec{
	display: grid;
	max-width: 1100px;
	margin: 0 auto;

	grid-template-rows: auto 1fr;
}
.companyPage .innerSec h2{
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.57;
	margin-bottom: 25px;
}
.companyPage .innerSec p{
	font-size: 1.6rem;
	line-height: 2.5;
}
.companyPage .vision{
	margin-top: 145px;
	padding-bottom: 120px;
	text-align: center;
	background: #e9eded;
}
.companyPage .vision .enSecTitle{
	margin-bottom: 76px;
}
.companyPage .vision .enSecTitle::before{
	content: 'VISION';
}
.companyPage .vision .innerSec{
	text-align: right;

	grid-gap: 0 45px;
	grid-template-columns: 1fr 344px;
}
.companyPage .vision .innerSec h2{
	grid-column: 1;
	grid-row: 1;
}
.companyPage .vision .innerSec p{
	grid-column: 1;
	grid-row: 2;
}
.companyPage .vision .innerSec .img{
	grid-column: 2;
	grid-row: 1 / 3;
}
.companyPage .mission{
	padding-bottom: 130px;
	text-align: center;
}
.companyPage .mission .enSecTitle{
	margin-bottom: 43px;
}
.companyPage .mission .enSecTitle::before{
	content: 'MISSION';
}
.companyPage .mission .innerSec{
	text-align: left;

	grid-gap: 0 70px;
	grid-template-columns: 353px 1fr;
}
.companyPage .mission .innerSec h2{
	grid-column: 2;
	grid-row: 1;
}
.companyPage .mission .innerSec p{
	grid-column: 2;
	grid-row: 2;
}
.companyPage .mission .innerSec .img{
	grid-column: 1;
	grid-row: 1 / 3;
}
.companyPage .profile{
	padding-bottom: 150px;
	text-align: center;
	background: #e9eded;
}
.companyPage .profile .enSecTitle{
	margin-bottom: 70px;
}
.companyPage .profile .enSecTitle::before{
	content: 'COMPANY PROFILE';
}
.companyPage .profile dl{
	font-size: 1.6rem;
	line-height: 1.56;
	display: flex;
	max-width: 650px;
	margin: 0 auto;
	text-align: justify;

	flex-flow: row wrap;
}
.companyPage .profile dt{
	flex: 0 1 140px;
}
.companyPage .profile dd{
	flex: 0 1 510px;
}
.companyPage .profile dt:not(:nth-last-of-type(1)){
	margin-bottom: 1.5em;
}
.companyPage .profile dd:not(:nth-last-of-type(1)){
	margin-bottom: 1.5em;
}
.companyPage .profile .rowList{
	display: flex;

	flex-flow: row wrap;
}
.companyPage .profile .rowList li{
	min-width: 50%;
}
.companyPage .access{
	padding-bottom: 140px;
	text-align: center;
}
.companyPage .access .enSecTitle{
	margin-bottom: 50px;
}
.companyPage .access .enSecTitle::before{
	content: 'ACCESS';
}
.companyPage .access .row{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
	background: #dfe3e3;
}
.companyPage .access .row::before,.companyPage .access .row::after{
	background: #fff;
}
.companyPage .access .row .map{
	height: 250px;

	flex: 0 1 50%;
}
.companyPage .access .row .map iframe{
	width: 100%;
	height: 100%;
}
.companyPage .access .row ul{
	padding: 30px;
	text-align: justify;

	flex: 0 1 50%;
}
.companyPage .access .row li{
	line-height: 2.5;
	display: flex;
}
.companyPage .access .row li::before{
	width: 16px;
	height: 2.5em;
	margin-right: 9px;
	content: '';

	flex-shrink: 0;
}
.companyPage .access .row li:nth-child(1)::before{
	background: url('../../img/map_icon.svg') no-repeat center center / contain;
}
.companyPage .access .row li:nth-child(2)::before{
	background: url('../../img/train_icon.svg') no-repeat center center / contain;
}
.companyPage .faq{
	position: relative;
	padding-bottom: 125px;
	text-align: center;
	background: #e9eded;
}
.companyPage .faq .enSecTitle{
	margin-bottom: 70px;
}
.companyPage .faq .enSecTitle::before{
	content: 'FAQ';
}
.companyPage .faq .faqBox{
	position: relative;
	z-index: 1;
	max-width: 1100px;
	margin: 0 auto;
	cursor: pointer;
	text-align: justify;
}
.companyPage .faq .faqBox header{
	position: relative;
	z-index: 2;
}
.companyPage .faq .faqBox header:hover{
	opacity: .8;
}
.companyPage .faq .faqBox header::before{
	display: block;
	width: 100%;
	height: 21px;
	content: '';
	background: url('../../img/faq_waku_top.png') no-repeat center center;
}
.companyPage .faq .faqBox header::after{
	position: absolute;
	bottom: -21px;
	left: 0;
	width: 100%;
	height: 21px;
	content: '';
	background: url('../../img/faq_waku_bottom.png') no-repeat center center;
}
.companyPage .faq .faqBox header .inner{
	display: flex;
	padding: 0 30px;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #fff;
}
.companyPage .faq .faqBox header .inner .num{
	font-size: 4rem;
	font-weight: 500;
	line-height: 1;
	width: 105px;
	color: #faba27;

	flex-shrink: 0;
}
.companyPage .faq .faqBox header .inner h2{
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.5;
	margin-right: 38px;
	padding-top: .2em;
	letter-spacing: .1em;
}
.companyPage .faq .faqBox header .inner .plus{
	line-height: 1;
	display: block;
	width: 19px;
	margin: 0 0 0 auto;
	margin-top: .6em;

	flex-shrink: 0;
}
.companyPage .faq .faqBox header .inner .plus .d{
	transition: opacity .2s;

	fill: #7b7b7b;
	stroke-width: 0;
}
.companyPage .faq .faqBox .open .close{
	opacity: 0;
}
.companyPage .faq .faqBox .hideBox{
	position: relative;
	z-index: 1;
}
.companyPage .faq .faqBox .hideBox::after{
	position: absolute;
	bottom: -29px;
	left: 0;
	width: 100%;
	height: 29px;
	content: '';
	background: url('../../img/faq_waku_bottom_g2.png') no-repeat center bottom;
}
.companyPage .faq .faqBox .hideBox .inner{
	display: none;
	padding: 0 30px;
	padding-top: 55px;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #f7f7f7;
}
.companyPage .faq .faqBox .hideBox .textBox{
	display: flex;
}
.companyPage .faq .faqBox .hideBox .aText{
	font-size: 4rem;
	font-weight: 500;
	width: 105px;
	color: #ff9d00;

	flex-shrink: 0;
}
.companyPage .faq .faqBox .hideBox p{
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.5;
	padding-top: .4em;
	letter-spacing: .1em;
}
.companyPage .faq .faqBox+.faqBox{
	margin-top: 48px;
}
/* ==========================================================================
   home
========================================================================== */
.home .container{
	display: grid;
	min-height: 100vh;

	grid-template: 'header' 0
	'pageContainer' 1fr
	'endNaviBox' auto
	'footer' auto / 100%;
}
.home .header{
	transition: background .2s;
}
.homeHeader{
	background: none;
}
.homeHeader .gNav a{
	color: #fff;
}
.homeHeader .menuBtn .d{
	fill: #fff;
}
.homeHeader .btnOpen .d{
	fill: #111;
}
.homeHeader .lang{
	color: #fff;
}
.homeHeader .lang a{
	color: #fff;
}
.homeHeader .lang .jp .inner::after{
	background: url('../../img/lang_arrow_w.svg') no-repeat center center / contain;
}
.homeHeader .lang .otherLangList{
	background: none;
}
.homePage .mv{
	display: grid;
	height: calc(100vh + 53px);
	min-height: 640px;
	background: #30393f;

	grid-template-columns: 100%;
	grid-template-rows: auto 1fr;
}
.homePage .mv .videoBox{
	position: relative;
	z-index: 1;
	display: flex;
	overflow: hidden;
	height: calc(100vh - 140px);
	min-height: 447px;

	align-items: center;
	grid-column: 1;
	grid-row: 1;
	justify-content: center;
}
.homePage .mv .videoBox video{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 101%;
	height: 101%;

	filter: drop-shadow(0px 0px rgba(0,0,0,0));
	-o-object-fit: cover;
	   object-fit: cover;
}
.homePage .mv .videoBox::after{
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background: rgba(0,0,0,.33);
}
.homePage .mv .videoBox .catch{
	z-index: 3;
}
.homePage .mv .textBox{
	position: relative;
	z-index: 2;
	margin-top: -75px;

	grid-column: 1;
	grid-row: 2;
}
.homePage .mv .textBox::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 75px;
	content: '';
	background: rgba(48,57,63,.58);
}
.homePage .mv .textBox .text{
	font-size: 2rem;
	line-height: 2.5;
	position: relative;
	z-index: 2;
	padding-top: 20px;
	text-align: center;
	color: #fff;
}
.homePage .topAnimeBtn{
	max-width: 180px;
	height: 60px;
}
.homePage .topAnimeBtn span{
	background-position: calc(100% - 16px) center;
	background-size: 24px auto;
}
.homePage .about{
	z-index: 4;
	padding-bottom: 150px;
	text-align: center;
}
.homePage .about .enSecTitle{
	margin-bottom: 165px;
}
.homePage .about .enSecTitle::before{
	content: 'ABOUT US';
}
.homePage .about .row{
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	text-align: justify;
}
.homePage .about .row .enText{
	font-size: 5.5rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -.02em;
	color: #555;
}
.homePage .about .row .enText>span{
	display: block;
}
.homePage .about .row .enText>span span{
	color: #f4a100;
}
.homePage .about .row .enText>span+span{
	margin-top: 35px;
}
.homePage .about .row .img{
	position: absolute;
	top: -75px;
	left: 342px;
	width: 908px;
}
.homePage .about .row .text{
	font-size: 1.8rem;
	line-height: 2.2;
	margin-top: 87px;
}
.homePage .about .row ul{
	display: flex;
	margin-top: 53px;
}
.homePage .about .row ul li{
	font-size: 2.7rem;
	font-weight: 500;
	line-height: 1;

	flex: 0 1 33.33333%;
}
.homePage .about .row ul .inner{
	display: inline-flex;

	flex-flow: column;
}
.homePage .about .row ul .inner span{
	font-size: 7rem;
	font-weight: 400;
	line-height: 1;
	padding-bottom: 20px;
	text-align: center;
	letter-spacing: -.02em;
	color: #f4a100;
}
.homePage .about .row ul li:nth-child(2){
	position: relative;
	text-align: center;

	justify-content: center;
}
.homePage .about .row ul li:nth-child(2)::before{
	position: absolute;
	top: -20px;
	left: -97px;
	width: 97px;
	height: 151px;
	content: '';
	background: url('../../img/top_about_line.png') no-repeat center center;
}
.homePage .about .row ul li:nth-child(2)::after{
	position: absolute;
	top: -20px;
	right: -97px;
	width: 97px;
	height: 151px;
	content: '';
	background: url('../../img/top_about_line.png') no-repeat center center;
}
.homePage .about .row ul li:nth-child(3){
	text-align: right;

	justify-content: flex-end;
}
.homePage .about .tuyomi{
	margin-top: 80px;
}
.homePage .about .tuyomi>header h2{
	font-size: 4rem;
	font-weight: 500;
	line-height: 1.45;
	margin-bottom: 51px;
}
.homePage .about .tuyomi .row{
	display: grid;

	grid-gap: 0 25px;
	grid-template-columns: repeat(3, 350px);
}
.homePage .about .tuyomi .tuyomiSec{
	display: grid;

	grid-row: span 2;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.homePage .about .tuyomi .tuyomiSec h2{
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.36;
	display: grid;
	width: 330px;
	padding: 20px 10px;
	letter-spacing: .03em;
	color: #fff;
	background: #f4a100;

	justify-self: center;
	place-content: center;
}
.homePage .about .tuyomi .tuyomiSec p{
	font-size: 1.8rem;
	line-height: 1.38;
	position: relative;
	padding: 17px 16px 8px;
	text-align: justify;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.homePage .about .tuyomi .tuyomiSec p::before{
	display: block;
	width: 68px;
	height: 68px;
	margin: 0 auto 10px;
	content: '';
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.homePage .about .tuyomi .tuyomiSec p::after{
	position: absolute;
	bottom: -19px;
	left: 0;
	width: 100%;
	height: 20px;
	content: '';
	background: url('../../img/tuyomi_waku_bittin.png') no-repeat center center;
}
.homePage .about .tuyomi .tuyomiSec:nth-child(1) p::before{
	background-image: url('../../img/tuyomi_icon1.svg');
}
.homePage .about .tuyomi .tuyomiSec:nth-child(2) p::before{
	background-image: url('../../img/tuyomi_icon2.svg');
}
.homePage .about .tuyomi .tuyomiSec:nth-child(3) p::before{
	background-image: url('../../img/tuyomi_icon3.svg');
}
.homePage .about .animeBtn{
	margin: 70px auto 0;
}
.homePage .service{
	z-index: 1;
	padding-bottom: 150px;
	text-align: center;
	background: #e9eded;
}
.homePage .service .enSecTitle{
	margin-bottom: 137px;
}
.homePage .service .enSecTitle::before{
	content: 'SERVICE';
}
.homePage .service .serviceBox{
	display: flex;
	max-width: 1400px;
	min-height: 466px;
	margin: 0 auto;
	text-align: justify;

	align-items: center;
	gap: 0 40px;
}
.homePage .service .serviceBox .text{
	flex: 0 1 700px;
}
.homePage .service .serviceBox .text h2{
	font-size: 5rem;
	font-weight: bold;
	line-height: 1.3;
	max-width: 550px;
	margin-bottom: 10px;
	letter-spacing: .03em;
}
.homePage .service .serviceBox .text p{
	font-size: 1.6rem;
	line-height: 2.18;
	max-width: 550px;
	letter-spacing: .03em;
}
.homePage .service .serviceBox .text .animeBtn{
	margin-top: 30px;
}
.homePage .service .serviceBox .img{
	flex: 0 1 700px;
}
.homePage .service .serviceBox1{
	position: relative;

	flex-flow: row-reverse;
	justify-content: flex-end;
}
.homePage .service .serviceBox1::before{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 50%;
	width: 50vw;
	min-width: 570px;
	height: 467px;
	margin-left: 130px;
	content: '';
	background: #fff;
}
.homePage .service .serviceBox1::after{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 50%;
	width: 260px;
	height: 882px;
	margin-left: -130px;
	content: '';
	background: url('../../img/top_service_bk.png') no-repeat center center;
}
.homePage .service .serviceBox2{
	position: relative;
	margin-top: -52px;
}
.homePage .service .serviceBox2::before{
	position: absolute;
	z-index: -1;
	top: 0;
	right: 50%;
	width: 50vw;
	min-width: 570px;
	height: 467px;
	margin-right: 130px;
	content: '';
	background: #fff;
}
.homePage .service .serviceBox2 .text h2,.homePage .service .serviceBox2 .text p{
	margin-right: 0;
	margin-left: auto;
}
.homePage .service .serviceBox2 .text .btnBox{
	max-width: 550px;
	margin-right: 0;
	margin-left: auto;
}
.homePage .service .serviceBox3{
	position: relative;
	margin-top: 50px;

	flex-flow: row-reverse;
	justify-content: flex-end;
}
.homePage .service .serviceBox3::before{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 50%;
	width: 50vw;
	min-width: 570px;
	height: 467px;
	margin-left: 130px;
	content: '';
	background: #fff;
}
.homePage .service .serviceBox3::after{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 50%;
	width: 261px;
	height: 467px;
	margin-left: -130px;
	content: '';
	background: url('../../img/top_service_bk2.png') no-repeat center center;
}
.homePage .service .serviceBox3 .text::before{
	position: absolute;
	z-index: 1;
	right: 50%;
	bottom: 0;
	width: 50vw;
	min-width: 700px;
	height: 53px;
	content: '';
	background: #fff;
}
.homePage .clients{
	padding-bottom: 150px;
	text-align: center;
}
.homePage .clients .enSecTitle{
	margin-bottom: 70px;
}
.homePage .clients .enSecTitle::before{
	content: 'CLIENTS';
}
.homePage .clients .swiper{
	position: relative;
	z-index: 1;
	overflow: visible;
	width: 100%;
	margin: 0 auto;
}
.homePage .clients .swiper-wrapper{
	transition-timing-function: linear;

	align-items: center;
}
.homePage .clients .swiper-slide{
	width: 170px;
}
.homePage .clients .logoBox{
	display: flex;
	width: 170px;
	height: 80px;

	align-items: center;
	justify-content: center;
}
.homePage .clients .logoBox img{
	-o-object-fit: contain;
	   object-fit: contain;
}
.homePage .works{
	padding-bottom: 160px;
	text-align: center;
	background: #e9eded;
}
.homePage .works .enSecTitle{
	margin-bottom: 46px;
}
.homePage .works .enSecTitle::before{
	content: 'PAST WORK';
}
.homePage .works .worksBox{
	max-width: 1100px;
	margin: 0 auto;
	text-align: justify;
}
.homePage .works .worksBox a{
	position: relative;
	display: flex;
	max-width: 1060px;
	padding: 15px;
	background: #fff;

	align-items: center;
	flex-flow: row-reverse;
	gap: 0 33px;
	justify-content: flex-end;
}
.homePage .works .worksBox a::before{
	background: #e9eded;
}
.homePage .works .worksBox a::after{
	background: #e9eded;
}
.homePage .works .worksBox a .polygonLB{
	background: #e9eded;
}
.homePage .works .worksBox .num{
	position: absolute;
	overflow: hidden;
	width: 40px;
	height: 230px;

	-webkit-clip-path: polygon(0 17.4%, 100% 0, 100% 100%, 0 82.6%);
	        clip-path: polygon(0 17.4%, 100% 0, 100% 100%, 0 82.6%);
}
.homePage .works .worksBox .numInner{
	font-size: 3rem;
	font-weight: 500;
	line-height: 1;
	display: flex;
	display: flex;
	width: 100%;
	height: 100%;
	letter-spacing: -.04em;
	color: #fff;
	background: url('../../img/top_works_btn_bk.svg') no-repeat center center / contain;

	align-items: center;
	justify-content: center;
	justify-content: center;
}
.homePage .works .worksBox .numInner::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: transform .45s cubic-bezier(.785,.135,.15,.86);
	transform: scale(1);
	transform-origin: left center;
	background: #f4a100;
}
.homePage .works .worksBox .numInner span{
	z-index: 2;
}
.homePage .works .worksBox a:hover{
	opacity: 1;
}
.homePage .works .worksBox a:hover .numInner{
	color: #f4a100;
}
.homePage .works .worksBox a:hover .numInner::before{
	transform: scaleX(0);
	transform-origin: right center;
}
.homePage .works .worksBox .text{
	flex: 0 1 629px;
}
.homePage .works .worksBox .text h2{
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.85;
	margin-bottom: 5px;
}
.homePage .works .worksBox .text p{
	font-size: 1.6rem;
	line-height: 1.87;
}
.homePage .works .worksBox .img{
	flex: 0 1 344px;
}
.homePage .works .worksBox:nth-child(even) a{
	margin-right: 0;
	margin-left: auto;
}
.homePage .works .worksBox:nth-child(even) .num{
	top: 50%;
	left: -39px;
	transform: translateY(-50%);
}
.homePage .works .worksBox:nth-child(odd) a{
	margin-right: auto;
	margin-left: 0;
}
.homePage .works .worksBox:nth-child(odd) .num{
	top: 50%;
	right: -39px;
	transform: translateY(-50%);

	-webkit-clip-path: polygon(0 0, 100% 17.4%, 100% 82.6%, 0% 100%);
	        clip-path: polygon(0 0, 100% 17.4%, 100% 82.6%, 0% 100%);
}
.homePage .works .worksBox:nth-child(odd) .numInner{
	background: url('../../img/top_works_btn_bk2.svg') no-repeat center center / contain;
}
.homePage .works .worksBox+.worksBox{
	margin-top: 40px;
}
.homePage .technologes{
	padding-bottom: 100px;
	text-align: center;
}
.homePage .technologes .enSecTitle{
	margin-bottom: 70px;
}
.homePage .technologes .enSecTitle::before{
	content: 'AVAILABLE TECHNOLOGIES';
}
.homePage .technologes .row{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;

	justify-content: space-between;
}
.homePage .technologes .techBox{
	display: flex;
	height: 500px;

	align-items: center;
	flex: 0 1 350px;
}
.homePage .technologes .techBox h2{
	font-size: 2.6rem;
	font-weight: 500;
	display: grid;
	width: 60px;
	height: 100%;

	place-content: center;
	writing-mode: vertical-rl;
}
.homePage .technologes .techBox ul{
	padding-left: 18px;
	text-align: left;
}
.homePage .technologes .techBox ul li+li{
	margin-top: 30px;
}
.homePage .technologes .techBox1{
	background: url('../../img/top_tech_bk1.png') no-repeat center center;
}
.homePage .technologes .techBox2{
	background: url('../../img/top_tech_bk2.png') no-repeat center center;
}
.homePage .technologes .techBox3{
	background: url('../../img/top_tech_bk3.png') no-repeat center center;
}
.homePage .recruit{
	position: relative;
	position: relative;
	padding: 40px 0 120px;
	text-align: center;
	background: #f4a100;
}
.homePage .recruit::before{
	position: absolute;
	z-index: 2;
	top: -1px;
	left: -1px;
	width: 50px;
	height: 50px;
	content: '';
	background: #fff;

	-webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
	        clip-path: polygon(100% 0, 0 0, 0 100%);
}
.homePage .recruit::after{
	position: absolute;
	z-index: 2;
	top: -1px;
	right: -1px;
	width: 50px;
	height: 50px;
	content: '';
	background: #fff;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 0 0);
}
.homePage .recruit>header{
	position: relative;
	z-index: 2;
}
.homePage .recruit .enSecTitle{
	margin-bottom: 134px;
	color: #fff;
}
.homePage .recruit .enSecTitle::before{
	font-size: 8.5rem;
	content: 'JOB INFORMATION';
	letter-spacing: .4em;
	opacity: .38;
	color: #fff;
}
.homePage .recruit .inner::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 605px;
	content: '';
	background: url('../../img/top_recruit_bk.jpg') no-repeat center center / cover;
}
.homePage .recruit .text1{
	font-size: 6.5rem;
	font-weight: 500;
	line-height: 1;
	position: relative;
	z-index: 2;
	margin-bottom: 25px;
	letter-spacing: .25em;
	color: #f4a100;
}
.homePage .recruit .text2{
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.7;
	position: relative;
	z-index: 2;
	margin-bottom: 45px;
	color: #fff;
}
.homePage .recruit .text2 strong{
	font-weight: 500;
	color: #f4a100;
}
.homePage .recruit .text3{
	line-height: 1;
	position: relative;
	z-index: 2;
	margin-bottom: 21px;
}
.homePage .recruit .text4{
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.45;
	text-align: center;
	color: #fff;
}
.homePage .recruit .topAnimeBtn{
	margin: 42px auto 0;
	color: #111;
	border: 2px solid #fff;
	background: none;
}
.homePage .recruit .topAnimeBtn::before{
	background: #fff;
}
.homePage .recruit .topAnimeBtn span{
	position: relative;
	z-index: 5;
	width: 100%;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%3E%3Cpath%20d%3D%22M17.162%2C19.636a.561.561%2C0%2C0%2C0%2C.767%2C0l4.522-4.359a.513.513%2C0%2C0%2C0%2C0-.739l-4.522-4.359a.557.557%2C0%2C0%2C0-.752.014.509.509%2C0%2C0%2C0-.014.725L21.3%2C14.908%2C17.162%2C18.9A.513.513%2C0%2C0%2C0%2C17.162%2C19.636Z%22%20transform%3D%22translate(-11.044%20-6.408)%22%20fill%3D%22%23111%22%20fill-rule%3D%22evenodd%22%2F%3E%3Cpath%20d%3D%22M0%2C0H17V17H0Z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: calc(100% - 16px) center;
	background-size: 24px auto;
}
.homePage .recruit .topAnimeBtn:hover{
	color: #fff;
}
.homePage .recruit .topAnimeBtn:hover span{
	position: relative;
	z-index: 5;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2017%2017%22%3E%3Cpath%20d%3D%22M17.162%2C19.636a.561.561%2C0%2C0%2C0%2C.767%2C0l4.522-4.359a.513.513%2C0%2C0%2C0%2C0-.739l-4.522-4.359a.557.557%2C0%2C0%2C0-.752.014.509.509%2C0%2C0%2C0-.014.725L21.3%2C14.908%2C17.162%2C18.9A.513.513%2C0%2C0%2C0%2C17.162%2C19.636Z%22%20transform%3D%22translate(-11.044%20-6.408)%22%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%2F%3E%3Cpath%20d%3D%22M0%2C0H17V17H0Z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E');
}
.homePage .news{
	padding-bottom: 120px;
	text-align: center;
	background: #30393f;
}
.homePage .news::before{
	background: #30393f;
}
.homePage .news .enSecTitle{
	margin-bottom: 65px;
	color: #fff;
}
.homePage .news .enSecTitle::before{
	content: 'NEWS';
}
.homePage .news .row{
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	text-align: justify;
}
.homePage .news .listBox a{
	display: grid;
	color: #fff;

	grid-gap: 25px 35px;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto 1fr;
}
.homePage .news .listBox time{
	color: #fff;

	grid-column: 1;
	grid-row: 1;
}
.homePage .news .listBox .cat{
	align-self: start;
	grid-column: 1;
	grid-row: 2;
}
.homePage .news .listBox h2{
	font-size: 1.8rem;
	font-weight: 500;

	grid-column: 2;
	grid-row: 1 / 3;
}
.homePage .news .listBox+.listBox{
	margin-top: 30px;
}
.homePage .media{
	padding: 50px 0 108px;
}
.homePage .media a{
	display: flex;
	max-width: 1164px;
	margin: 0 auto;
	padding: 0 20px;

	align-items: center;
	justify-content: space-between;
}
.homePage .media h2{
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: .1em;
}
.homePage .media .img{
	flex: 0 1 486px;
}
.homePage .media .arrow{
	display: flex;
	overflow: hidden;
	height: 40px;
	border-radius: 50%;
	box-shadow: 0 0 0 2px #104b74 inset;

	align-items: center;
	flex: 0 0 40px;
	justify-content: center;
}
.homePage .media .arrow::before{
	background: #104b74;
}
.homePage .media .arrow svg path{
	fill: #fff;
}
.homePage .media a:hover{
	opacity: 1;
}
.homePage .media a:hover .arrow::before{
	transform: scaleX(0);
	transform-origin: right center;
}
.homePage .media a:hover .arrow svg path{
	fill: #104b74;
}
/* ==========================================================================
   works詳細
========================================================================== */
.worksSingle .pageMv{
	background-image: url('../../img/works_mv_bk.jpg');
}
.worksSingle .topBox{
	display: flex;
	max-width: 1100px;
	margin: 30px auto 0;

	justify-content: space-between;
}
.worksSingle .topBox .tm{
	display: grid;

	flex: 0 1 550px;
	place-content: center;
}
.worksSingle .topBox .subCat{
	display: flex;
	padding: 20px 170px 20px 20px;
	background: #e9eded;

	align-content: center;
	flex: 0 1 520px;
	flex-flow: row wrap;
	gap: 7px;
}
.worksSingle .topBox .subCat a{
	font-size: 1.5rem;
	line-height: 1.2;
	display: grid;
	min-height: 25px;
	padding: 3px 11px;
	text-align: center;
	letter-spacing: .03em;
	border: 1px solid #aaa;
	border-radius: 13px;
	background: #fff;

	place-content: center;
}
.worksSingle .singleEdit{
	max-width: 1100px;
	margin: 50px auto 0;
	padding-bottom: 140px;
}
.worksSingle .relatedBox{
	padding-bottom: 142px;
}
.worksSingle .relatedBox .enSecTitle::before{
	content: 'RELATED WORKS';
}
.worksSingle .relatedBox .row{
	display: grid;

	grid-gap: 0 25px;
	grid-template-columns: repeat(3,350px);
}
.worksPost{
	display: grid;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.worksPost a{
	position: relative;
	display: grid;
	padding: 10px 10px 0;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.worksPost a::after{
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 100%;
	height: 20px;
	content: '';
	background: url('../../img/related_waku_bottom.png') no-repeat center center;
}
.worksPost .tm{
	grid-row: 1;
}
.worksPost header{
	display: flex;
	margin-top: 16px;

	align-items: center;
	flex-flow: row wrap;
	gap: 10px 5px;
	grid-row: 2;
	justify-content: space-between;
}
.worksPost header h2{
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.36;
	text-align: justify;
	letter-spacing: .03em;

	align-self: flex-start;
}
.worksPost .subCat{
	display: flex;
	margin-top: 10px;

	align-content: center;
	align-self: start;
	flex-flow: row wrap;
	gap: 7px;
	grid-row: 3;
}
.worksPost .subCat li{
	font-size: 1.5rem;
	line-height: 1.2;
	display: grid;
	min-width: 93px;
	min-height: 25px;
	padding: 3px 6px;
	text-align: center;
	letter-spacing: .03em;
	border: 1px solid #aaa;
	border-radius: 13px;
	background: #fff;

	place-content: center;
}
/* ==========================================================================
   works一覧
========================================================================== */
.worksArchive{
	padding-bottom: 100px;
}
.worksArchive .pageMv{
	background-image: url('../../img/works_list_mv_bk.jpg');
}
.worksArchive .lsitTitle{
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 70px;
	text-align: center;
}
.worksArchive .topText{
	font-size: 1.6rem;
	max-width: 1100px;
	margin: 0 auto 30px;
}
.worksArchive .searchBox{
	max-width: 1100px;
	margin: 0 auto 50px;
}
.worksArchive .searchBox .topList{
	display: flex;

	justify-content: space-between;
}
.worksArchive .searchBox .topList .term{
	position: relative;
	height: 69px;

	flex: 0 1 255px;
}
.worksArchive .searchBox .topList .word{
	height: 69px;
	background: url('../../img/works_list_keyword.svg') no-repeat center center / contain;

	flex: 0 1 275px;
}
.worksArchive .searchBox .topList .word form{
	display: flex;
	height: 100%;

	align-items: center;
}
.worksArchive .searchBox .topList .word input{
	font-size: 1.6rem;
	width: 100%;
	height: 100%;
	padding-left: 10px;
	border: none;
	outline: none;
	background: none;
}
.worksArchive .searchBox .topList .word button{
	display: flex;

	align-items: center;
	flex: 0 0 48px;
	justify-content: center;
}
.worksArchive .searchBox .topList .termBox{
	font-size: 2rem;
	font-weight: bold;
	position: relative;
	position: relative;
	z-index: 998;
	display: flex;
	overflow: hidden;
	width: 100%;
	height: 100%;
	transition: color .45s;
	color: #fff;
	border: none;
	background: url('../../img/works_list_term_bk.svg') no-repeat center center / contain;

	align-items: center;
	-webkit-clip-path: url(#cpath1);
	        clip-path: url(#cpath1);
	-webkit-tap-highlight-color: transparent;
}
.worksArchive .searchBox .topList .termBox::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: transform .45s cubic-bezier(.785,.135,.15,.86);
	transform: scale(1);
	transform-origin: left center;
	background: #f4a100;
}
.worksArchive .searchBox .topList .termBox>span{
	z-index: 2;
	display: flex;
	width: 100%;
	padding: 0 10px 0 10px;

	align-items: center;
	justify-content: space-between;
}
.worksArchive .searchBox .topList .termBox>span .num{
	font-size: 2rem;
	font-weight: 700;
	display: grid;
	width: 29px;
	height: 29px;
	transition: opacity .2s;
	opacity: 0;
	color: #111;
	border: 1px solid #707070;
	border-radius: 50%;
	background: #fff;

	flex-shrink: 0;
	place-content: center;
}
.worksArchive .searchBox .topList .termBox>span .numShow{
	opacity: 1;
}
.worksArchive .searchBox .topList .termBox>span::after{
	width: 29px;
	height: 8px;
	content: '';
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;

	flex-shrink: 0;
}
.worksArchive .searchBox .topList .termBox:hover{
	opacity: 1;
}
.worksArchive .searchBox .topList .termOpen{
	opacity: 1;
	color: #f4a100;
}
.worksArchive .searchBox .topList .termOpen::before{
	transform: scaleX(0);
	transform-origin: right center;
}
.worksArchive .searchBox .topList .termOpen>span::after{
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23F4A100%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
.worksArchive .searchBox .topList .termOpen+.chieckboxList{
	opacity: 1;
}
.worksArchive .searchBox .topList .chieckboxList{
	position: absolute;
	z-index: 999;
	top: 59px;
	left: 0;
	width: 100%;
	padding: 25px 15px;
	opacity: 0;
	border: 1px solid #707070;
	background: #fff;
}
.worksArchive .searchBox .topList .chieckboxList li input{
	display: none;
}
.worksArchive .searchBox .topList .chieckboxList li label{
	font-size: 1.7rem;
	font-weight: 500;
	display: flex;

	align-items: center;
}
.worksArchive .searchBox .topList .chieckboxList li label .name{
	padding-left: .5em;
}
.worksArchive .searchBox .topList .chieckboxList li label::before{
	width: 18px;
	height: 18px;
	content: '';
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cg%20id%3D%22c%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20style%3D%22fill%3A%23fff%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3Cpath%20d%3D%22m1%2C1v16h16V1H1M0%2C0h18v18H0V0Z%22%20style%3D%22fill%3A%23707070%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3Cpath%20d%3D%22m7.17%2C13.29c-.13%2C0-.26-.05-.35-.15l-3.05-3.05c-.19-.2-.19-.52.01-.71.19-.19.5-.19.69%2C0l2.69%2C2.69%2C6.35-6.35c.2-.19.52-.19.71.01.19.19.19.5%2C0%2C.69l-6.7%2C6.7c-.09.09-.22.15-.36.15Z%22%20style%3D%22fill%3A%23fff%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;

	flex-shrink: 0;
}
.worksArchive .searchBox .topList .chieckboxList li input[type='checkbox']:checked+label::before{
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cg%20id%3D%22c%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20style%3D%22fill%3A%23f4a100%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3Cpath%20d%3D%22m1%2C1v16h16V1H1M0%2C0h18v18H0V0Z%22%20style%3D%22fill%3A%23707070%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3Cpath%20d%3D%22m7.17%2C13.29c-.13%2C0-.26-.05-.35-.15l-3.05-3.05c-.19-.2-.19-.52.01-.71.19-.19.5-.19.69%2C0l2.69%2C2.69%2C6.35-6.35c.2-.19.52-.19.71.01.19.19.19.5%2C0%2C.69l-6.7%2C6.7c-.09.09-.22.15-.36.15Z%22%20style%3D%22fill%3A%23fff%3B%20stroke-width%3A0px%3B%22%20%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
.worksArchive .searchBox .topList .chieckboxList li+li{
	margin-top: 14px;
}
.worksArchive .searchBox .termClose{
	position: fixed;
	z-index: 900;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0);
}
.worksArchive .searchBox svg{
	position: absolute;
	left: -9999px;
}
.worksArchive .listRow{
	position: relative;
	display: grid;
	max-width: 1100px;
	min-height: 350px;
	margin: 0 auto;

	grid-gap: 30px 25px;
	grid-template-columns: repeat(3,350px);
}
.worksArchive .listRow .loading{
	top: 100px;
}
.worksArchive .listRow .worksPost{
	grid-template-columns: subgrid;
}
.worksArchive .listRow .worksPost a{
	grid-template-columns: subgrid;
}
/* ==========================================================================
   DOCUMENTS詳細
========================================================================== */
.documentsSingle .pageMv{
	background-image: url('../../img/document_mv_bk.jpg');
}
.documentsSingle .singleEdit{
	max-width: 1100px;
	margin: 50px auto 0;
	padding-bottom: 140px;
}
.documentsSingle .relatedBox{
	padding-bottom: 195px;
}
.documentsSingle .relatedBox .enSecTitle::before{
	content: 'RELATED DOCUMENTS';
}
.documentsSingle .relatedBox .row{
	display: grid;

	grid-gap: 0 25px;
	grid-template-columns: repeat(3,350px);
}
.documentsSingle .documentsForm{
	padding-bottom: 100px;
	text-align: center;
}
.documentsSingle .documentsForm .enSecTitle{
	margin-bottom: 50px;
}
.documentsSingle .documentsForm .enSecTitle::before{
	content: 'REQUEST FORM';
}
.documentsSingle .documentsForm .formWall{
	max-width: 915px;
	margin: 0 auto;
}
.documentsSingle .documentsForm .formWall .topText{
	font-size: 1.6rem;
	line-height: 1.87;
	margin-bottom: 30px;
}
.documentsPost{
	display: grid;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.documentsPost a{
	position: relative;
	display: grid;
	padding: 10px 10px 0;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.documentsPost a::after{
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 100%;
	height: 20px;
	content: '';
	background: url('../../img/related_waku_bottom.png') no-repeat center center;
}
.documentsPost .tm{
	grid-row: 1;
}
.documentsPost header{
	display: flex;
	margin-top: 16px;

	align-items: center;
	flex-flow: row wrap;
	gap: 10px 5px;
	grid-row: 2;
	justify-content: space-between;
}
.documentsPost header h2{
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.36;
	text-align: justify;
	letter-spacing: .03em;

	align-self: flex-start;
}
.documentsPost .excerpt{
	margin-top: 10px;

	grid-row: 3;
}
.documentsPost .excerpt p{
	font-size: 1.6rem;
	line-height: 1.56;
	display: -webkit-box;
	overflow: hidden;
	text-align: justify;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
/* ==========================================================================
   documents一覧
========================================================================== */
.documentsArchive{
	padding-bottom: 150px;
}
.documentsArchive .pageMv{
	background-image: url('../../img/documents_list_mv_bk.jpg');
}
.documentsArchive .lsitTitle{
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 70px;
	text-align: center;
}
.documentsArchive .topText{
	font-size: 1.6rem;
	line-height: 1.87;
	max-width: 1100px;
	margin: 0 auto 30px;
}
.documentsArchive .searchBox{
	max-width: 1100px;
	margin: 0 auto 50px;
}
.documentsArchive .searchBox ul{
	display: flex;

	justify-content: space-between;
}
.documentsArchive .searchBox ul .select{
	position: relative;
	height: 69px;

	flex: 0 1 255px;
}
.documentsArchive .searchBox ul .select select{
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
.documentsArchive .searchBox ul .word{
	height: 69px;
	background: url('../../img/works_list_keyword.svg') no-repeat center center / contain;

	flex: 0 1 275px;
}
.documentsArchive .searchBox ul .word form{
	display: flex;
	height: 100%;

	align-items: center;
}
.documentsArchive .searchBox ul .word input{
	font-size: 1.6rem;
	width: 100%;
	height: 100%;
	padding-left: 10px;
	border: none;
	outline: none;
	background: none;
}
.documentsArchive .searchBox ul .word button{
	display: flex;

	align-items: center;
	flex: 0 0 48px;
	justify-content: center;
}
.documentsArchive .searchBox .termBox{
	font-size: 2rem;
	font-weight: bold;
	position: relative;
	position: relative;
	z-index: 1;
	display: flex;
	overflow: hidden;
	width: 100%;
	height: 100%;
	transition: color .45s;
	color: #fff;
	border: none;
	background: url('../../img/works_list_term_bk.svg') no-repeat center center / contain;

	align-items: center;
	-webkit-clip-path: url(#cpath1);
	        clip-path: url(#cpath1);
	-webkit-tap-highlight-color: transparent;
}
.documentsArchive .searchBox .termBox::before{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: transform .45s cubic-bezier(.785,.135,.15,.86);
	transform: scale(1);
	transform-origin: left center;
	background: #f4a100;
}
.documentsArchive .searchBox .termBox>span{
	z-index: 2;
	display: flex;
	width: 100%;
	padding: 0 35px 0 10px;

	align-items: center;
}
.documentsArchive .searchBox .termBox>span::after{
	position: absolute;
	top: 50%;
	right: 20px;
	width: 29px;
	height: 8px;
	content: '';
	transform: translateY(-50%);
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23fff%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.documentsArchive .searchBox .termBox:hover{
	opacity: 1;
}
.documentsArchive .searchBox .termOpen{
	opacity: 1;
	color: #f4a100;
}
.documentsArchive .searchBox .termOpen::before{
	transform: scaleX(0);
	transform-origin: right center;
}
.documentsArchive .searchBox .termOpen>span::after{
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22b%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2021.65%2012%22%3E%3Cdefs%3E%3Cstyle%3E.d%7Bfill%3A%23F4A100%3Bfill-rule%3Aevenodd%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22c%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22m.34.34C-.11.79-.11%2C1.53.34%2C1.98l9.68%2C9.68c.46.45%2C1.19.45%2C1.64%2C0L21.35%2C1.98c.44-.47.41-1.21-.07-1.64-.45-.41-1.13-.41-1.58%2C0l-8.86%2C8.86L1.98.33c-.46-.45-1.19-.45-1.64%2C0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
}
.documentsArchive .searchBox .termOpen+.chieckboxList{
	opacity: 1;
}
.documentsArchive .searchBox svg{
	position: absolute;
	left: -9999px;
}
.documentsArchive .listRow{
	position: relative;
	display: grid;
	max-width: 1100px;
	min-height: 350px;
	margin: 0 auto;

	grid-gap: 30px 25px;
	grid-template-columns: repeat(3,350px);
}
.documentsArchive .listRow .loading{
	top: 100px;
}
.documentsArchive .listRow .documentPost{
	grid-template-columns: subgrid;
}
.documentsArchive .listRow .documentPost a{
	grid-template-columns: subgrid;
}
/* ==========================================================================
   RECRUIT
========================================================================== */
.recruitPage .pageMv{
	background-image: url('../../img/recruit_mv_bk.jpg');
}
.recruitPage .pankuzu{
	background: #f4a100;
}
.recruitPage .listSec .enBackText{
	padding: 25px 0 75px;
	text-align: center;
}
.recruitPage .listSec .enBackText .fukuromoji{
	position: relative;
	z-index: 2;
	width: 710px;
	margin: 0 auto;
}
.recruitPage .listSec .enBackText .enBkText1{
	top: -45px;
	left: 0;
	height: 174px;
	background-image: url('../../img/recruit_title1_en1.png');
}
.recruitPage .listSec .enBackText .enBkText2{
	bottom: 0;
	left: 0;
	height: 174px;
	background-image: url('../../img/recruit_title1_en2.png');
}
.recruitPage .jobList{
	display: flex;
	max-width: 1100px;
	margin: 0 auto;

	flex-flow: row wrap;
	gap: 30px 46px;
}
.recruitPage .jobList li{
	flex: 0 1 336px;
}
.recruitPage .jobList .jobBtn{
	font-size: 1.8rem;
	font-weight: 700;
	display: grid;
	height: 85px;
	color: #f4a100;
	border: 2px solid #f4a100;
	background: #f4a100;

	place-content: center;
}
.recruitPage .jobList .jobBtn::before{
	top: -1px;
	left: -1px;
	width: 103%;
	height: 103%;
	transition: transform .45s cubic-bezier(.785,.135,.15,.86),opacity .2s;
	background: #fff;
}
.recruitPage .jobList .jobBtn span{
	position: relative;
	z-index: 5;
	width: 100%;
}
.recruitPage .jobList .jobBtn small{
	font-size: 1em;
}
.recruitPage .jobList .jobBtn:hover{
	opacity: 1;
	color: #fff;
}
.recruitPage .jobList .current{
	color: #fff;
	background: #f4a100;
}
.recruitPage .jobList .current::before{
	opacity: 0;
}
.recruitPage .jobList .current:hover{
	color: #fff;
}
.recruitPage .secTitle{
	width: 326px;
	height: 154px;
}
.recruitPage .rinen{
	margin-top: 64px;
}
.recruitPage .rinen .secTitle{
	margin: 0 auto 31px;
}
.recruitPage .rinen .enBackText{
	min-height: 393px;
}
.recruitPage .rinen .enBackText .fukuromoji{
	position: relative;
	z-index: 2;
	width: 1100px;
	margin: 0 auto;
}
.recruitPage .rinen .enBackText .enBkText1{
	top: 0;
	left: 0;
	height: 174px;
	background-image: url('../../img/recruit_title1_en1.png');
}
.recruitPage .rinen .enBackText .enBkText2{
	bottom: 0;
	left: 0;
	height: 174px;
	background-image: url('../../img/recruit_title1_en2.png');
}
.recruitPage .rinen ul{
	position: relative;
	display: flex;
	max-width: 1100px;
	margin: 47px auto 0;
	background: url('../../img/recruit_rinen_bk.png') no-repeat center center;

	flex-flow: row wrap;
	gap: 140px;
}
.recruitPage .rinen ul::after{
	position: absolute;
	top: 318px;
	left: 50%;
	width: 361px;
	height: 389px;
	content: '';
	transform: translateX(-50%);
	background: url('../../img/recruit_rinen_img.png') no-repeat center center;
	background-size: contain;
}
.recruitPage .rinen ul li{
	font-size: 2.7rem;
	font-weight: 500;
	line-height: 1.85;
	display: flex;
	height: 480px;
	text-align: center;
	border: 1px solid #707070;
	border-radius: 50%;
	background: #fff;

	align-items: center;
	flex: 0 1 480px;
	justify-content: center;
}
.recruitPage .kankyou{
	max-width: 1140px;
	margin: 150px auto 0;
}
.recruitPage .kankyou>header{
	display: flex;
	height: 253px;
	margin-bottom: 45px;
	padding-bottom: 38px;
	background: url('../../img/recruit_kankyou_img.png') no-repeat center top;
	background-size: contain;
	align-items: flex-end;
	justify-content: center;
}
.recruitPage .kankyou .topText{
	max-width: 1106px;
	margin: 0 auto 57px;
	text-align: center;
}
.recruitPage .kankyou .topText2{
	font-size: 2.7rem;
	line-height: 1.85;
	max-width: 1100px;
	margin: 0 auto;
}
.recruitPage .kankyou .rinenList{
	max-width: 1140px;
	margin: 44px auto 0;
}
.recruitPage .kankyou .rinenList .rinenBox{
	position: relative;
	max-width: 1106px;
	margin-top: -1px;
	padding: 27px 20px 34px;
	border: 2px solid #f4a100;
	background: #fff;
}
.recruitPage .kankyou .rinenList .rinenBox::after{
	position: absolute;
	z-index: -1;
	box-sizing: border-box;
	width: 100%;
	height: calc(100% + 3px);
	content: '';
	border: 1px solid #f4a100;
}
.recruitPage .kankyou .rinenList .rinenBox h2{
	line-height: 1;
	margin-bottom: 16px;
	padding-left: 10px;
}
.recruitPage .kankyou .rinenList .rinenBox p{
	font-size: 2.7rem;
	line-height: 1.85;
}
.recruitPage .kankyou .rinenList .rinenBox1::after,.recruitPage .kankyou .rinenList .rinenBox3::after,.recruitPage .kankyou .rinenList .rinenBox5::after{
	bottom: -10px;
	left: 10px;
	background: #f4a100;
}
.recruitPage .kankyou .rinenList .rinenBox2,.recruitPage .kankyou .rinenList .rinenBox4{
	margin-left: auto;
}
.recruitPage .kankyou .rinenList .rinenBox2::after,.recruitPage .kankyou .rinenList .rinenBox4::after{
	bottom: -10px;
	left: -10px;
	background: #f8c45e;
}
.recruitPage .kankyou .endText{
	font-size: 2.7rem;
	line-height: 1.85;
	max-width: 1100px;
	margin: 37px auto 0;
}
.recruitPage .staff{
	max-width: 1100px;
	margin: 74px auto 0;
}
.recruitPage .staff .secTitle{
	margin: 0 auto 41px;
}
.recruitPage .staff .slideWall{
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
}
.recruitPage .staff .slideWall .swiper-slide{
	height: auto;
}
.recruitPage .staff .slideWall .swiper-button-next,.recruitPage .staff .slideWall .swiper-button-prev{
	position: static;
	width: 60px;
	height: 60px;
	margin: 0;
	text-indent: -9999px;
}
.recruitPage .staff .slideWall .swiper-button-next{
	background: url('../../img/slide_next.svg') no-repeat center center / contain;
}
.recruitPage .staff .slideWall .swiper-button-prev{
	background: url('../../img/slide_prev.svg') no-repeat center center / contain;
}
.recruitPage .staff .slideWall .partsRow{
	display: flex;
	margin-top: 30px;

	align-items: center;
	justify-content: flex-end;
}
.recruitPage .staff .slideWall .partsRow .swiper-button-prev{
	margin-right: 30px;

	flex-shrink: 0;
}
.recruitPage .staff .slideWall .partsRow .swiper-button-next{
	margin-right: 30px;

	flex-shrink: 0;
}
.recruitPage .staff .slideWall .partsRow .swiper-pagination{
	position: static;
	background: #d9d8d8;
}
.recruitPage .staff .slideWall .partsRow .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
	background: #f4a100;
}
.recruitPage .staff .staffSlide{
	height: 100%;
}
.recruitPage .staff .staffSlide a{
	display: grid;
	height: 100%;

	grid-template-columns: 100%;
	grid-template-rows: auto;
}
.recruitPage .staff .staffSlide .img{
	z-index: 1;

	align-self: center;
	grid-column: 1;
	grid-row: 1;
	justify-self: center;
}
.recruitPage .staff .staffSlide .data{
	z-index: 2;
	width: 320px;
	margin-bottom: 50px;

	align-self: end;
	grid-column: 1;
	grid-row: 1;
	justify-self: end;
}
.recruitPage .staff .staffSlide .data p{
	display: flex;

	align-items: center;
}
.recruitPage .staff .staffSlide .data .job{
	font-size: 2.3rem;
	font-weight: 700;
	line-height: 1.3;
	min-height: 40px;
	padding: 5px 10px;
	color: #fff;
	background: #f4a100;
}
.recruitPage .staff .staffSlide .data .name{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3;
	min-height: 30px;
	padding: 2px 10px;
	color: #555;
	border-right: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	border-left: 1px solid #c7c7c7;
	background: #fff;

	justify-content: flex-end;
}
.recruitPage .staff .staffSlide .staffModal{
	display: none;
}
.staffOverlays{
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	display: none;
	width: 100%;
	height: 100%;

	align-items: center;
	justify-content: center;
}
.staffModal{
	position: relative;
	display: flex;
	width: 1100px;
	height: 600px;
	border: 1px solid #777;
	background: #f4a100;

	justify-content: space-between;
}
.staffModal .imgBox{
	display: grid;

	flex: 0 0 350px;
	grid-template-columns: 100%;
	grid-template-rows: auto;
}
.staffModal .imgBox .img{
	z-index: 1;

	align-self: center;
	grid-column: 1;
	grid-row: 1;
	justify-self: center;
}
.staffModal .imgBox .data{
	z-index: 2;
	width: 320px;
	margin-bottom: 50px;

	align-self: end;
	grid-column: 1;
	grid-row: 1;
	justify-self: end;
}
.staffModal .imgBox .data .job{
	font-size: 2.3rem;
	font-weight: 700;
	line-height: 1.3;
	display: flex;
	min-height: 40px;
	padding: 5px 10px;
	color: #fff;
	background: #f4a100;

	align-items: center;
}
.staffModal .imgBox .data .name{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3;
	display: flex;
	min-height: 30px;
	padding: 2px 10px;
	color: #555;
	border-right: 1px solid #c7c7c7;
	border-bottom: 1px solid #c7c7c7;
	border-left: 1px solid #c7c7c7;
	background: #fff;

	align-items: center;
	justify-content: flex-end;
}
.staffModal .talkBox{
	padding: 25px 0 23px 0;

	flex: 0 0 730px;
}
.staffModal .talkBox .inner{
	overflow-y: auto;
	height: 100%;
	padding-top: 25px;

	overscroll-behavior-y: none;
}
.staffModal .talkBox .inner::-webkit-scrollbar{
	width: 16px;
	border: 1px solid #707070;
	background: #fff;
}
.staffModal .talkBox .inner::-webkit-scrollbar-thumb{
	border: 1px solid #707070;
	background: #f4a100;
}
.staffModal .talkBox .talk{
	position: relative;
	width: 500px;
	margin-left: 80px;
}
.staffModal .talkBox .talk span{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.38;
	position: relative;
	z-index: 2;
	display: block;
	padding: 17px 20px;
	border: 1px solid #707070;
	border-radius: 20px;
	background: #fff;
}
.staffModal .talkBox .talk::before{
	position: absolute;
	z-index: 1;
	top: 26px;
	width: 13px;
	height: 10px;
	content: '';
	background: url('../../img/staff_fukidashi.svg') no-repeat center center / contain;
}
.staffModal .talkBox .talk+.talk{
	margin-top: 20px;
}
.staffModal .talkBox .hostComment::before{
	right: -10px;
}
.staffModal .talkBox .hostComment::after{
	position: absolute;
	top: -21px;
	right: -80px;
	width: 73px;
	height: 78px;
	content: '';
	background: url('../../img/staff_host.png') no-repeat center center / contain;
}
.staffModal .talkBox .staffComment::before{
	left: -10px;
	transform: rotate(-180deg);
}
.staffModal .talkBox .staffComment::after{
	position: absolute;
	top: 0;
	left: -80px;
	width: 60px;
	height: 60px;
	content: '';
	border: 1px solid #707070;
	border-radius: 50%;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.staffModal .modalCloseBtn{
	line-height: 1;
	position: absolute;
	top: -1px;
	right: -1px;
	display: block;
	width: 50px;
}
.openModal{
	display: flex;
	animation: modalFadeIn .3s 1 0s linear forwards;
	opacity: 1;
}
.modalClose{
	animation: modalFadeOut .3s 1 0s linear forwards;
}
@keyframes modalFadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes modalFadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}
.recruitPage .saiyou{
	margin-top: 54px;
	padding-top: 10px;
}
.recruitPage .saiyou .secTitle{
	margin: 0 auto 68px;
}
.recruitPage .saiyou .jobList{
	margin-bottom: 70px;
}
.recruitPage .saiyou .saiyouSec{
	max-width: 1100px;
	margin: 0 auto;
}
.recruitPage .saiyou .saiyouSec>h2{
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.8;
	margin-bottom: 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid #333;
}
.recruitPage .saiyou .saiyouSec p{
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.87;
}
.recruitPage .saiyou .innerSec{
	margin-top: 22px;
}
.recruitPage .saiyou .innerSec h2{
	font-size: 1.7rem;
	font-weight: 700;
	display: flex;
	height: 45px;
	margin-bottom: 22px;
	padding: 0 20px;
	color: #fff;
	border-radius: 10px 10px 0 0;
	background: #f4a100;

	align-items: center;
}
.recruitPage .tabWall{
	padding-bottom: 148px;
	background: #fff;
}
.recruitPage .tabBox{
	display: none;
}
.recruitPage .defaultOpen{
	display: block;
}
.recruitPage .tabOpen{
	display: block;
	animation: fadeIn .6s 0s 1 ease-in-out forwards;
}
.recruitPage .entryForm{
	padding-bottom: 100px;
	background: #e9eded;
}
.recruitPage .entryForm .enSecTitle{
	margin-bottom: 70px;
}
.recruitPage .entryForm .enSecTitle::before{
	content: 'ENTRY FORM';
}
.recruitPage .entryForm .formWall{
	max-width: 915px;
	margin: 0 auto;
}
.recruitPage .entryForm .formWall .inputTitle{
	background: #fff;
}
.recruitPage .entryForm .formWall .inputBox{
	background: #f8f8f8;
}
.recruitPage .pankuzu{
	height: 110px;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 97% 52.26%, 3% 52.26%, 0 100%, 0 0);
	        clip-path: polygon(100% 0, 100% 100%, 97% 52.26%, 3% 52.26%, 0 100%, 0 0);
}
.recruitPage .bakcW{
	background: #fff;
}
.recruitPage .bakcWImg{
	display: inline-block;
	background: #fff;
}
.recruitPage .main{
	position: relative;
	margin-top: -53px;
	padding-top: 53px;
}
.recruitPage .bkMovie{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100dvh;
}
.recruitPage .bkMovie video{
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 101%;
	height: 101%;
	transition: opacity .3s ease-in;
	transition-delay: .2s;
	opacity: 0;

	filter: drop-shadow(0px 0px rgba(0,0,0,0));
	-o-object-fit: cover;
	   object-fit: cover;
}
.recruitPage .bkMoviePlay video{
	opacity: 1;
}
.recruitPage .movieFix{
	position: fixed;
}
/* ==========================================================================
   サービス下層共通
========================================================================== */
.serviceSubPage .pageMv{
	background-image: url('../../img/service_mv_bk.jpg');
}
.serviceSubPage .main{
	text-align: center;
}
.serviceSubPage .subPageTitle{
	font-size: 4.5rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 60px;
	letter-spacing: .03em;
}
.serviceSubPage .subPageTitle::after{
	font-family: 'futura-pt', sans-serif;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1;
	display: block;
	color: #f4a100;
}
.serviceSubPage .circleSec{
	max-width: 1100px;
	margin: 70px auto 0;
	padding: 46px 62px 70px;
	background: #e9eded;
}
.serviceSubPage .circleSec::before{
	background: #fff;
}
.serviceSubPage .circleSec::after{
	background: #fff;
}
.serviceSubPage .circleSec .polygonLB{
	background: #fff;
}
.serviceSubPage .circleSec .circleSecTitle{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1.09;
	margin-bottom: 40px;
	color: #f4a100;
}
.serviceSubPage .circleSec .innerSec{
	display: flex;
	text-align: justify;

	align-items: center;
	flex-flow: row-reverse;
	gap: 0 43px;
}
.serviceSubPage .circleSec .innerSec .img{
	overflow: hidden;
	border-radius: 50%;

	flex: 0 0 200px;
}
.serviceSubPage .circleSec .innerSec .text{
	flex: 0 1 720px;
}
.serviceSubPage .circleSec .innerSec h2{
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1.14;
	margin-bottom: 5px;
}
.serviceSubPage .circleSec .innerSec p{
	font-size: 1.6rem;
	line-height: 1.87;
}
.serviceSubPage .circleSec .innerSec+.innerSec{
	margin-top: 50px;
}
.serviceSubPage .flowRow{
	display: grid;
	max-width: 1100px;
	margin: 0 auto;

	grid-gap: 0 25px;
	grid-template-columns: repeat(3, 350px);
}
.serviceSubPage .flowSec{
	display: grid;

	grid-row: span 3;
	grid-template-rows: subgrid;
	row-gap: 0;
}
.serviceSubPage .flowSec h2{
	font-size: 2.7rem;
	font-weight: bold;
	line-height: 1.2;
	display: grid;
	width: 330px;
	min-height: 90px;
	padding: 11px 10px;
	letter-spacing: .03em;
	color: #fff;
	background: #f4a100;

	justify-self: center;
	place-content: center;
}
.serviceSubPage .flowSec .img{
	padding: 10px 10px 0;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.serviceSubPage .flowSec p{
	font-size: 1.6rem;
	line-height: 2.1;
	position: relative;
	padding: 21px 18px 0;
	text-align: justify;
	letter-spacing: 0;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
	background: #f9f9f9;
}
.serviceSubPage .flowSec p::after{
	position: absolute;
	bottom: -30px;
	left: 0;
	width: 100%;
	height: 31px;
	content: '';
	background: url('../../img/parter_waku_bittin.png') no-repeat center center;
}
.serviceSubPage .flowSec p a{
	font-weight: 700;
	text-decoration: underline;
	color: #f4a100;
}
.serviceSubPage .flowSec:nth-child(2),.serviceSubPage .flowSec:nth-child(3){
	position: relative;
}
.serviceSubPage .flowSec:nth-child(2)::before,.serviceSubPage .flowSec:nth-child(3)::before{
	position: absolute;
	z-index: 2;
	top: 50%;
	left: -38px;
	width: 48px;
	height: 48px;
	margin-top: -24px;
	content: '';
	background: url('../../img/parter_arrow.svg') no-repeat center center / contain;
}
/* ==========================================================================
   システム開発事業
========================================================================== */
.system-developmentPage .subPageTitle::after{
	content: 'SYSTEM DEVELOPMENT';
}
.system-developmentPage .topSec{
	display: grid;
	max-width: 1100px;
	margin: 0 auto;
	text-align: justify;

	grid-gap: 0 40px;
	grid-template-columns: 1fr 530px;
	grid-template-rows: auto auto 1fr;
}
.system-developmentPage .topSec h2{
	font-size: 3.8rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 20px;

	grid-column: 1;
	grid-row: 1;
}
.system-developmentPage .topSec h2 span{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.36;
	display: block;
	margin-top: 10px;
	color: #f4a100;
}
.system-developmentPage .topSec .catch{
	font-size: 3.4rem;
	font-weight: 700;
	line-height: 1.34;
	margin-bottom: 13px;

	grid-column: 1;
	grid-row: 2;
}
.system-developmentPage .topSec .text{
	font-size: 1.6rem;
	line-height: 1.87;

	grid-column: 1;
	grid-row: 3;
}
.system-developmentPage .topSec .img{
	grid-column: 2;
	grid-row: 1 / 4;
}
.system-developmentPage .wallG{
	margin-top: 150px;
	padding: 10px 0 155px;
	background: #e9eded;
}
.system-developmentPage .listSec{
	max-width: 1100px;
	margin: 0 auto;
}
.system-developmentPage .listSec>header{
	margin-bottom: 70px;
}
.system-developmentPage .listSec>header h2{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1;
	color: #f4a100;
}
.system-developmentPage .listSec ul{
	display: flex;

	flex-flow: row wrap;
	gap: 30px 46px;
}
.system-developmentPage .listSec ul li{
	font-size: 1.8rem;
	font-weight: bold;
	display: grid;
	height: 85px;
	text-align: center;
	color: #f4a100;
	background: #30393f;

	flex: 0 1 335px;
	place-content: center;
}
.system-developmentPage .gijyutu{
	margin-top: 80px;
}
.system-developmentPage .flow{
	padding-bottom: 130px;
}
.system-developmentPage .flow .flowTitle{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1.27;
	margin-bottom: 70px;
}
/* ==========================================================================
   IT人材ラボ事業
========================================================================== */
.it-human-resources-labPage .subPageTitle::after{
	content: 'IT HUMAN RESOURCES LAB';
}
.it-human-resources-labPage .topSec{
	display: grid;
	max-width: 1100px;
	margin: 0 auto;
	text-align: justify;

	grid-gap: 0 40px;
	grid-template-columns: 1fr 530px;
	grid-template-rows: auto auto 1fr;
}
.it-human-resources-labPage .topSec h2{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 2.5;
	display: block;
	margin: 35px 0 5px;
	color: #f4a100;

	grid-column: 1;
	grid-row: 1;
}
.it-human-resources-labPage .topSec .catch{
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1.34;
	margin-bottom: 10px;

	grid-column: 1;
	grid-row: 2;
}
.it-human-resources-labPage .topSec .text{
	font-size: 1.6rem;
	line-height: 1.87;

	grid-column: 1;
	grid-row: 3;
}
.it-human-resources-labPage .topSec .img{
	grid-column: 2;
	grid-row: 1 / 4;
}
.it-human-resources-labPage .olPoint{
	font-size: 1.6rem;
	line-height: 1.87;
	max-width: 1100px;
	margin: 0 auto;
	counter-reset: my-counter;
	text-align: justify;
}
.it-human-resources-labPage .olPoint>li{
	display: flex;

	align-items: flex-start;
}
.it-human-resources-labPage .olPoint>li::before{
	font-family: 'futura-pt', sans-serif;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1;
	margin-right: 28px;
	content: counter(my-counter);
	counter-increment: my-counter;
	color: #f4a100;
	border-bottom: 1px solid #f4a100;

	flex-shrink: 0;
}
.it-human-resources-labPage .olPoint>li+li{
	margin-top: 33px;
}
.it-human-resources-labPage .modern{
	margin-top: 150px;
	padding-bottom: 155px;
	background: #e9eded;
}
.it-human-resources-labPage .modern .modernSecTitle{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1.27;
}
.it-human-resources-labPage .modern .olPoint{
	margin-top: 60px;
}
.it-human-resources-labPage .modern .merit{
	margin-top: 75px;
	background: #fff;
}
.it-human-resources-labPage .modern .merit::before,.it-human-resources-labPage .modern .merit::after{
	background: #e9eded;
}
.it-human-resources-labPage .modern .merit .polygonLB{
	background: #e9eded;
}
.it-human-resources-labPage .ses{
	padding-bottom: 155px;
}
.it-human-resources-labPage .ses .sesTitle{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1.27;
}
.it-human-resources-labPage .ses .olPoint{
	margin-top: 60px;
}
.it-human-resources-labPage .flow{
	padding-bottom: 130px;
	background: #e9eded;
}
.it-human-resources-labPage .flow .flowHeader{
	margin-bottom: 70px;
}
.it-human-resources-labPage .flow .flowHeader h2{
	font-size: 4.3rem;
	font-weight: 700;
	line-height: 1.27;
}
.it-human-resources-labPage .flow .flowHeader p{
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 2.5;
	color: #f4a100;
}
.it-human-resources-labPage .flow .polygonHeader::before,.it-human-resources-labPage .flow .polygonHeader::after{
	background: #e9eded;
}
/* ==========================================================================
   プライバシーポリシー
========================================================================== */
.privacy-policyPage .pageMv{
	background-image: url('../../img/privacy_mv_bk.jpg');
}
.privacy-policyPage .privacyMain{
	max-width: 1100px;
	margin: 0 auto;
	padding-bottom: 100px;
	text-align: center;
}
.privacy-policyPage .privacyMain .enSecTitle{
	margin-bottom: 70px;
}
.privacy-policyPage .privacyMain .enSecTitle::before{
	content: 'PRIVACY POLICY';
}
.privacy-policyPage .privacyMain p,.privacy-policyPage .privacyMain li{
	font-size: 1.6rem;
	line-height: 1.68;
	letter-spacing: 0;
}
.privacy-policyPage .topText{
	text-align: justify;
}
.privacy-policyPage .privacySec{
	margin-top: 40px;
	text-align: justify;
}
.privacy-policyPage .privacySec>h2{
	font-size: 3.5rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 40px;
	letter-spacing: 0;
}
.privacy-policyPage .privacySec .innerSec{
	margin-top: 30px;
}
.privacy-policyPage .privacySec .innerSec>h2{
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1;
	display: flex;
	margin-bottom: 30px;
	letter-spacing: 0;
}
.privacy-policyPage .privacySec .innerSec>h2 span:first-child{
	margin-right: 1em;

	flex-shrink: 0;
}
.privacy-policyPage .privacySec .innerSec>*+*:not(.noMagin){
	margin-top: 30px;
}
.privacy-policyPage .privacySec .innerSec .flexLine{
	display: flex;
}
.privacy-policyPage .privacySec .innerSec .flexLine span:first-child{
	margin-right: 1em;

	flex-shrink: 0;
}
.privacy-policyPage .contactSec address{
	font-style: normal;
	margin-top: 30px;
}
.privacy-policyPage .aboutSec{
	margin-top: 100px;
}
/* ==========================================================================
   end
========================================================================== */
@media only screen and (max-width: 767px){
	html{
		font-size: 2.5641vw;
	}
	body{
		width: 100%;
		min-width: 0;
	}
	img{
		width: 100%;
	}
	.spShow{
		display: inline-block;
	}
	.pcShow{
		display: none;
	}
	.container{
		grid-template: 'header' 15.38462vw
		'pageContainer' 1fr
		'endNaviBox' auto
		'footer' auto /100%;
	}
	.anchor{
		display: block;
		margin-top: -15.38462vw;
		padding-top: 15.38462vw;
	}
	/* ==========================================================================
   ヘッダー
========================================================================== */
	.header{
		display: grid;
		min-width: 0;
		padding: 0 5.12821vw;
		background: #fff;

		grid-template-columns: 40.25641vw 1fr 8.20513vw;
		grid-template-rows: 15.38462vw;
	}
	.header .gNav{
		display: none;
	}
	.header .lang{
		width: 28.20513vw;
		margin-right: 2.30769vw;
		padding: 0 4.35897vw;

		grid-column: 2;
		justify-self: end;
	}
	.header .lang .country .inner::before{
		width: 6.41026vw;
		height: 4.10256vw;
		margin-right: 3.33333vw;
		content: '';
	}
	.header .lang .jp .inner::after{
		width: 2.5641vw;
		height: 1.53846vw;
		margin: 0 0 0  2.82051vw;
	}
	.header .lang .otherLangList{
		top: 6.41026vw;
		left: 0;
		width: 28.20513vw;
		padding: 0 4.35897vw 2.30769vw;
		border-radius: 1.28205vw;
	}
	.header .lang .otherLangList li+li{
		margin-top: 2.5641vw;
	}
	.header .lang .en .inner::before{
		background: url('../../img/sp_flag_en.png') no-repeat center center / contain;
	}
	.header .menuBtn{
		display: block;
		width: 8.20513vw;
		margin-left: 0;

		grid-column: 3;
		justify-self: end;
	}
	/* ==========================================================================
   hbgNav
========================================================================== */
	.hbgNav{
		z-index: 900;
		top: 15.38462vw;
		width: 100%;
		min-width: 0;
		height: calc(100dvh - 15.38462vw);
		padding: 2.5641vw 0;
		border-top: 2.5641vw solid #f4a100;
		border-right: none;
		border-bottom: 2.5641vw solid #f4a100;
		border-left: none;
	}
	.hbgNav::before{
		width: 5.12821vw;
		height: 5.12821vw;

		-webkit-clip-path: polygon(100% 0, 100% 100%, 0 0);
		        clip-path: polygon(100% 0, 100% 100%, 0 0);
	}
	.hbgNav::after{
		width: 5.12821vw;
		height: 5.12821vw;

		-webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
		        clip-path: polygon(100% 0, 100% 100%, 0 100%);
	}
	.hbgNav .polygonLB{
		width: 5.12821vw;
		height: 5.12821vw;
	}
	.hbgNav .inner{
		display: block;
		overflow-y: auto;
		max-width: none;
		height: 100%;
		margin: 0 auto;
		padding: 2.5641vw;

		overscroll-behavior-y: none;
	}
	.hbgNav .img{
		margin-bottom: 8.97436vw;
	}
	.hbgNav ul{
		display: block;
		max-width: none;
	}
	.hbgNav li{
		text-align: center;
	}
	.hbgNav li+li{
		margin-top: 6.41026vw;
	}
	.hbgNav li:first-child{
		text-align: center;
	}
	.hbgNav li:first-child img{
		width: 5.89744vw;
	}
	.hbgNav .contact{
		width: 94.87179vw;
		height: 15.38462vw;
	}
	.hbgNav .contact::before{
		right: -.25641vw;
		width: 2.5641vw;
		height: 2.5641vw;
		content: '';
	}
	.hbgNav .contact::after{
		right: -.25641vw;
		width: 2.5641vw;
		height: 2.5641vw;
	}
	.hbgNav .contact .polygonLB{
		left: -.25641vw;
		width: 2.5641vw;
		height: 2.5641vw;
	}
	.hbgNav .contact .more{
		height: 15.38462vw;
		margin-top: 8.97436vw;
		background: url('../../img/sp_menu_contact_bk.svg') no-repeat center center / contain;
	}
	.hbgNav .contact .more span{
		background-position: calc(100% - 5.64103vw) center;
		background-size: 2.05128vw auto;
	}
	.navOpen{
		display: block;
		animation: menuFadeInSp .4s 1 0s linear forwards;
	}
	.navClose{
		animation: menuFadeOut .4s 1 0s ease-out forwards;
	}
	/* ==========================================================================
   endNaviBox
========================================================================== */
	.endNaviBox{
		display: block;
		min-height: 0;
		padding: 0;
		background: none;
	}
	.endNaviBox>section{
		display: flex;
		height: 97.4359vw;

		align-items: center;
		flex-flow: column;
		justify-content: center;
	}
	.endNaviBox>section .text{
		font-size: 1.7rem;
		font-weight: 500;
		line-height: 2;
		margin-top: 8.46154vw;
	}
	.endNaviBox>section a{
		display: block;
		width: 15.38462vw;
		height: 15.38462vw;
		margin: 9.48718vw auto 0;
		box-shadow: 0 0 0 .51282vw #f4a100 inset;
	}
	.endNaviBox .goFaq{
		background: url('../../img/sp_end_box_bk1.jpg') no-repeat center center / cover;
	}
	.endNaviBox .goContact{
		background: url('../../img/sp_end_box_bk2.jpg') no-repeat center center / cover;
	}
	/* ==========================================================================
   footer
========================================================================== */
	.footer{
		position: relative;
		display: block;
		min-width: 0;
	}
	.footer::before{
		display: none;
	}
	.footer::after{
		display: none;
	}
	.footer .footerNav{
		display: none;
	}
	.footer .companyAddr{
		padding: 12.82051vw 5.12821vw 15.38462vw;
	}
	.footer .companyAddr h2{
		margin-bottom: 7.69231vw;
	}
	.footer .companyAddr ul li::before{
		width: 5.38462vw;
		margin-right: 2.05128vw;
	}
	.footer .companyAddr ul li+li{
		margin-top: 1em;
	}
	.footer .companyAddr ul .addr{
		justify-content: left;
	}
	.footer .companyAddr ul .addr::before{
		width: 4.10256vw;
		margin-right: 2.5641vw;
	}
	.footer .companyAddr ul .mail::before{
		margin-top: .1em;
	}
	.footer .companyAddr1 h2{
		width: 47.4359vw;
	}
	.footer .companyAddr2 h2{
		width: 68.97436vw;
	}
	.footer .other{
		display: block;
		padding: 12.82051vw 5.12821vw;
	}
	.footer .other .otherLink{
		font-size: 1.6rem;
		line-height: 1.56;
	}
	.footer .other .otherLink a{
		color: #aaa;
	}
	.footer .other .otherLink li+li{
		margin-top: 1em;
	}
	.footer .other .snsLink{
		margin-top: 8.97436vw;

		gap: 0 6.92308vw;
	}
	.footer .other .snsLink li{
		flex: 0 1  8.46154vw;
	}
	.footer .copyright{
		height: 15.64103vw;
	}
	.footer .pagetop{
		right: 5.12821vw;
		bottom: 5.12821vw;
		width: 15.38462vw;
	}
	.footer .pagetop:focus{
		outline: none;
	}
	.footer .pagetop:hover{
		opacity: 1;
	}
	.footer .stopBtn{
		position: absolute;
		bottom: 14.10256vw;
	}
	/* ==========================================================================
   ニュース共通
========================================================================== */
	.newsPage .pageMv{
		background-image: url('../../img/sp_news_mv_bk.jpg');
	}
	/* ==========================================================================
   ニュース詳細
========================================================================== */

	.newsSingle .singleEdit{
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;
		padding-bottom: 28.20513vw;
	}
	.newsSingle .relatedBox .row{
		display: block;
	}
	.newsSingle .relatedBox .relatedPost header{
		display: grid;

		grid-gap: 5.12821vw 4.61538vw;
		grid-template-columns: 28.71795vw 1fr;
		grid-template-rows: auto 1fr;
	}
	.newsSingle .relatedBox .relatedPost .postDateText{
		margin-right: 0;
		padding-top: .4em;

		grid-column: 1;
		grid-row: 1;
	}
	.newsSingle .relatedBox .relatedPost .postCatBox{
		min-width: 0;

		align-self: start;
		grid-column: 1;
		grid-row: 2;
	}
	.newsSingle .relatedBox .relatedPost h2{
		font-size: 1.7rem;
		font-weight: 400;
		line-height: 2;
		margin-top: 0;

		align-self: start;
		grid-column: 2;
		grid-row: 1 / 3;
	}
	.newsSingle .relatedBox .relatedBox+.relatedBox{
		margin-top: 7.69231vw;
	}
	/* ==========================================================================
   ニュース一覧
========================================================================== */
	.archivePage{
		padding-bottom: 17.94872vw;
	}
	.archivePage .newsTitle{
		font-size: 2.7rem;
		line-height: 1.3;
		margin-bottom: 13.58974vw;
		padding-top: 2.5641vw;
	}
	.archivePage .listRow{
		max-width: 94.87179vw;
		min-height: 38.46154vw;
	}
	.archivePage .loadingBox .listBox{
		opacity: .1;
	}
	.archivePage .listBox a{
		display: grid;

		grid-gap: 5.12821vw 4.61538vw;
		grid-template-columns: 28.71795vw 1fr;
		grid-template-rows: auto 1fr;
	}
	.archivePage .listBox .postDateText{
		padding-top: .4em;
	}
	.archivePage .listBox .cat{
		min-width: 0;

		align-self: start;
	}
	.archivePage .listBox h2{
		font-size: 1.7rem;
		font-weight: 400;
		line-height: 2;
	}
	.archivePage .listBox+.listBox{
		margin-top: 7.69231vw;
	}
	/* ==========================================================================
   お問い合わせ
========================================================================== */
	.contactPage{
		padding-bottom: 17.94872vw;
	}
	.contactPage .pageMv{
		background-image: url('../../img/sp_contact_mv_bk.jpg');
	}
	.contactPage .formSection{
		max-width: 94.87179vw;
	}
	.contactPage .enSecTitle{
		margin-bottom: 13.33333vw;
	}
	/* ==========================================================================
   パートナー募集
========================================================================== */
	.partnerPage{
		padding-bottom: 17.94872vw;
	}
	.partnerPage .pageMv{
		background-image: url('../../img/sp_partner_mv_bk.jpg');
	}
	.partnerPage .partnerSection{
		text-align: center;
	}
	.partnerPage .partnerSection .recruitmentTitle{
		margin-bottom: 12.82051vw;
	}
	.partnerPage .partnerSection .recruitmentTitle .enSecTitle::before{
		content: 'PARTNER\ARECRUITMENT';
		white-space: pre;
	}
	.partnerPage .partnerSection .topBanner{
		display: block;
		max-width: 94.87179vw;
		background: none;
	}
	.partnerPage .partnerSection .topBanner li{
		height: 47.69231vw;
	}
	.partnerPage .partnerSection .topBanner li:nth-child(1){
		background: url('../../img/sp_partner_banner1.jpg') no-repeat center center / cover;
	}
	.partnerPage .partnerSection .topBanner li:nth-child(1) img{
		width: 59.74359vw;
	}
	.partnerPage .partnerSection .topBanner li:nth-child(2){
		background: url('../../img/sp_partner_banner2.jpg') no-repeat center center / cover;
	}
	.partnerPage .partnerSection .topBanner li:nth-child(2) img{
		width: 15.12821vw;
	}
	.partnerPage .partnerSection .topBanner .freelanceBtn{
		width: 14.10256vw;
		height: 14.10256vw;
		margin: 3.33333vw auto 0;
	}
	.partnerPage .partnerSection .topBanner .companyBtn{
		width: 66.92308vw;
		height: 12.82051vw;
		margin-top: 5.12821vw;
	}
	.partnerPage .partnerSection .topBanner .companyBtn span{
		background-position: calc(100% - 2.5641vw) center;
		background-size: 5.12821vw auto;
	}
	.partnerPage .partnerSection .topText{
		font-size: 1.6rem;
		line-height: 2.1;
		max-width: 94.87179vw;
		margin-top: 7.69231vw;
	}
	.partnerPage .partnerSection .imgBox{
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;
	}
	.partnerPage .partnerSection .benefits{
		max-width: 94.87179vw;
		margin: 20.51282vw auto 0;
	}
	.partnerPage .partnerSection .benefits .benefitsTitle{
		margin-bottom: 12.82051vw;
	}
	.partnerPage .partnerSection .poitRow{
		display: block;
		max-width: 94.87179vw;
	}
	.partnerPage .partnerSection .pointSec{
		display: block;
	}
	.partnerPage .partnerSection .pointSec h2{
		width: 89.74359vw;
		min-height: 23.07692vw;
		margin: 0 auto;
		padding: 2.82051vw 2.5641vw;
	}
	.partnerPage .partnerSection .pointSec .img{
		padding: 2.5641vw 2.5641vw 0;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
		background: #f9f9f9;
	}
	.partnerPage .partnerSection .pointSec p{
		padding: 5.38462vw 4.61538vw 0;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.partnerPage .partnerSection .pointSec p::after{
		position: absolute;
		bottom: -7.69231vw;
		left: 0;
		width: 100%;
		height: 7.94872vw;
		content: '';
		background: url('../../img/sp_parter_waku_bittin.png') no-repeat center center / 100% auto;
	}
	.partnerPage .partnerSection .pointSec+.pointSec{
		margin-top: 13.07692vw;
	}
	.partnerPage .flow{
		margin-top: 37.17949vw;
		padding-bottom: 35.38462vw;
	}
	.partnerPage .flow .flowTitle{
		margin-bottom: 12.30769vw;
	}
	.partnerPage .flow .topText{
		max-width: 94.87179vw;
	}
	.partnerPage .flow ol{
		max-width: 94.87179vw;
		margin: 10.51282vw auto 0;

		grid-gap: 7.69231vw 2.5641vw;
		grid-template-columns: repeat(2,46.15385vw);
		grid-template-rows: auto 1fr;
	}
	.partnerPage .flow li:nth-child(2)::before,.partnerPage .flow li:nth-child(4)::before{
		left: -4.87179vw;
		width: 7.4359vw;
		height: 7.4359vw;
		margin-top: -3.71795vw;
	}
	.partnerPage .flow li:nth-child(3)::before{
		top: -4.41026vw;
		right: -5.12821vw;
		left: auto;
		width: 7.4359vw;
		height: 7.4359vw;
		margin-top: 0;
		transform: rotate(135deg);
		transform-origin: center;
	}
	.partnerPage .flow .flowBox .polygonHeader{
		font-size: 1.8rem;
		width: 42.5641vw;
		padding: 2.82051vw 0 1.79487vw;
	}
	.partnerPage .flow .flowBox .polygonHeader::before{
		width: 5.12821vw;
		height: 5.12821vw;
	}
	.partnerPage .flow .flowBox .polygonHeader::after{
		width: 5.12821vw;
		height: 5.12821vw;
	}
	.partnerPage .flow .flowBox p{
		font-size: 1.6rem;
		line-height: 1.56;
		padding: 3.84615vw 2.5641vw 0;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.partnerPage .flow .flowBox p::before{
		width: 12.82051vw;
		height: 12.82051vw;
		margin: 0 auto 2.05128vw;
	}
	.partnerPage .flow .flowBox p::after{
		bottom: -5.64103vw;
		height: 5.89744vw;
		background: url('../../img/sp_parter_waku_bittin2.png') no-repeat center center / 100% auto;
	}
	.partnerPage .flow .flowBox1 p::before{
		background-image: url('../../img/parter_icon1.svg');
	}
	.partnerPage .flow .flowBox2 p::before{
		background-image: url('../../img/parter_icon2.svg');
	}
	.partnerPage .flow .flowBox3 p::before{
		background-image: url('../../img/parter_icon3.svg');
	}
	.partnerPage .flow .flowBox4 p::before{
		background-image: url('../../img/parter_icon4.svg');
	}
	.partnerPage .formSection .formTitle{
		margin-bottom: 12.82051vw;
	}
	.partnerPage .formSection .formTitle .enSecTitle::before{
		content: 'REGISTRATION\A FORM';
		white-space: pre;
	}
	.partnerPage .formSection .formWall{
		max-width: 94.87179vw;
	}
	/* ==========================================================================
   SERVICE
========================================================================== */
	.servicePage .pageMv{
		background-image: url('../../img/sp_service_mv_bk.jpg');
	}
	.servicePage .serviceTitle{
		margin-bottom: 12.82051vw;
	}
	.servicePage .pageNav{
		max-width: none;
	}
	.servicePage .pageNav ul{
		display: flex;
	}
	.servicePage .pageNav li{
		flex: 0 1 32.82051vw;
	}
	.servicePage .pageNav li::before{
		width: 5.12821vw;
		height: 5.12821vw;
	}
	.servicePage .pageNav li::after{
		width: 5.12821vw;
		height: 5.12821vw;
	}
	.servicePage .pageNav li .btnLink{
		font-size: 1.7rem;
		line-height: 1.17;
		height: 23.07692vw;
		padding-top: 5.12821vw;
		background: url('../../img/sp_service_navi_bk.svg') no-repeat center center / contain;
	}
	.servicePage .pageNav li .btnLink::before{
		top: 0;
		left: 0;
	}
	.servicePage .pageNav li .btnLink span::after{
		width: 3.84615vw;
		height: 2.05128vw;
		margin: 3.07692vw auto 0;
	}
	.servicePage .serviceBtn{
		width: 46.15385vw;
		height: 15.38462vw;
		margin: 7.69231vw auto 0;
	}
	.servicePage .serviceSec .secTitle{
		font-size: 3.8rem;
		margin-bottom: 14.87179vw;
	}
	.servicePage .serviceSec .secTitle::after{
		font-size: 2rem;
		margin: 3.58974vw auto 0;
	}
	.servicePage .serviceSec .topBox{
		display: flex;
		max-width: 94.87179vw;
		margin: 0 auto 10.25641vw;

		align-items: flex-start;
		flex-flow: column;
		justify-content: flex-start;
	}
	.servicePage .serviceSec .topBox p{
		line-height: 1.87;

		flex: 1 1 auto;
		order: 2;
	}
	.servicePage .serviceSec .topBox .img{
		margin-bottom: 7.69231vw;

		flex: 1 1 auto;
		order: 1;
	}
	.servicePage .serviceSec .polygonWakuBox{
		max-width: 94.87179vw;
		padding: 3.84615vw 3.84615vw 10.25641vw;

		align-items: flex-start;
		flex-flow: column;
		justify-content: sflex-start;
	}
	.servicePage .serviceSec .polygonWakuBox .text{
		flex: 1 1 auto;
		order: 2;
	}
	.servicePage .serviceSec .polygonWakuBox .text h2{
		font-size: 3.5rem;
		font-weight: bold;
		line-height: 1.1;
		margin-bottom: 2.5641vw;
	}
	.servicePage .serviceSec .polygonWakuBox .img{
		margin-bottom: 3.84615vw;

		flex: 1 1 auto;
		order: 1;
	}
	.servicePage .serviceSec .polygonWakuBox+.polygonWakuBox{
		margin-top: 5.12821vw;
	}

	.servicePage .system{
		margin-top: 18.71795vw;
		padding-bottom: 28.20513vw;
		background: #e9eded;
	}
	.servicePage .system .systemSec::before{
		background: #e9eded;
	}
	.servicePage .system .systemSec::after{
		background: #e9eded;
	}
	.servicePage .system .systemSec .polygonLB{
		background: #e9eded;
	}
	.servicePage .lab{
		padding-bottom: 28.20513vw;
	}
	.servicePage .consulting{
		padding-bottom: 17.94872vw;
	}
	/* ==========================================================================
   COMPANY
========================================================================== */
	.companyPage .pageMv{
		background-image: url('../../img/sp_company_mv_bk.jpg');
	}
	.companyPage .message{
		max-width: 94.87179vw;
	}
	.companyPage .message .enSecTitle{
		margin-bottom: 12.30769vw;
	}
	.companyPage .message .row{
		display: flex;

		align-items: flex-start;
		flex-flow: column-reverse;
		justify-content: flex-start;
	}
	.companyPage .message p{
		margin-top: 7.69231vw;

		flex: 1 1 auto;
	}
	.companyPage .message .ph{
		flex: 1 1 auto;
	}
	.companyPage .message figure figcaption{
		font-size: 1.6rem;
		display: flex;
		width: 91.79487vw;
		height: 17.4359vw;
		padding-top: 1.28205vw;
		background: url('../../img/sp_company_cocvu_bk.png') no-repeat center center / contain;

		align-items: center;
		flex-flow: column;
		justify-content: flex-start;
	}
	.companyPage .message figure figcaption strong{
		font-size: 2.5rem;
		display: block;
		padding: 0  0 1.28205vw;
		letter-spacing: .3em;
	}
	.companyPage .innerSec{
		display: grid;
		max-width: 94.87179vw;
		margin: 0 auto;

		grid-template-rows: auto auto 1fr;
	}
	.companyPage .innerSec h2{
		font-size: 3rem;
		line-height: 1.8;
		margin-bottom: 2.5641vw;
	}
	.companyPage .vision{
		margin-top: 28.20513vw;
		padding-bottom: 30.76923vw;
	}
	.companyPage .vision .enSecTitle{
		margin-bottom: 12.30769vw;
	}
	.companyPage .vision .innerSec{
		text-align: justify;

		grid-gap: 0;
		grid-template-columns: 100%;
	}
	.companyPage .vision .innerSec h2{
		grid-column: 1;
		grid-row: 2;
	}
	.companyPage .vision .innerSec p{
		grid-column: 1;
		grid-row: 3;
	}
	.companyPage .vision .innerSec .img{
		grid-column: 1;
		grid-row: 1;
	}
	.companyPage .mission{
		padding-bottom: 28.20513vw;
	}
	.companyPage .mission .enSecTitle{
		margin-bottom: 12.30769vw;
	}
	.companyPage .mission .innerSec{
		text-align: justify;

		grid-gap: 0;
		grid-template-columns: 100%;
	}
	.companyPage .mission .innerSec h2{
		grid-column: 1;
		grid-row: 2;
	}
	.companyPage .mission .innerSec p{
		grid-column: 1;
		grid-row: 3;
	}
	.companyPage .mission .innerSec .img{
		grid-column: 1;
		grid-row: 1;
	}
	.companyPage .profile{
		padding-bottom: 28.20513vw;
	}
	.companyPage .profile .enSecTitle{
		margin-bottom: 13.07692vw;
	}
	.companyPage .profile .enSecTitle::before{
		content: 'COMPANY\APROFILE';
		white-space: pre;
	}
	.companyPage .profile dl{
		font-size: 1.5rem;
		max-width: 94.87179vw;
	}
	.companyPage .profile dt{
		flex: 0 1 29.23077vw;
	}
	.companyPage .profile dd{
		text-align: left;

		flex: 0 1 65.64103vw;
	}
	.companyPage .profile .rowList{
		display: block;
	}
	.companyPage .profile .rowList li{
		min-width: 0;
	}
	.companyPage .access{
		padding-bottom: 28.20513vw;
	}
	.companyPage .access .enSecTitle{
		margin-bottom: 8.97436vw;
	}
	.companyPage .access .row{
		display: block;
		max-width: 94.87179vw;
	}
	.companyPage .access .row::before{
		top: auto;
		right: auto;
		bottom: -.25641vw;
		left: -.25641vw;

		-webkit-clip-path: polygon(0 0, 100% 100%, 0 100%);
		        clip-path: polygon(0 0, 100% 100%, 0 100%);
	}
	.companyPage .access .row .map{
		width: 100%;
		height: 65.64103vw;
	}
	.companyPage .access .row ul{
		padding: 7.69231vw 5.12821vw;
	}
	.companyPage .access .row li::before{
		width: 4.10256vw;
		margin-right: 2.30769vw;
	}
	.companyPage .faq{
		padding-bottom: 23.07692vw;
	}
	.companyPage .faq .enSecTitle{
		margin-bottom: 12.30769vw;
	}
	.companyPage .faq .faqBox{
		position: relative;
		max-width: 94.87179vw;
	}
	.companyPage .faq .faqBox::before{
		position: absolute;
		top: 2.30769vw;
		right: -2.30769vw;
		width: 97.17949vw;
		height: 5.38462vw;
		content: '';
		background: url('../../img/faq_waku_top_g.png') no-repeat center bottom / 100% auto;
	}
	.companyPage .faq .faqBox header:hover{
		opacity: 1;
	}
	.companyPage .faq .faqBox header::before{
		display: block;
		height: 5.12821vw;
		background: url('../../img/sp_faq_waku_top.png') no-repeat center center / 100% auto;
	}
	.companyPage .faq .faqBox header::after{
		bottom: -5.12821vw;
		height: 5.38462vw;
		background: url('../../img/sp_faq_waku_bottom.png') no-repeat center center / 100% auto;
	}
	.companyPage .faq .faqBox header .inner{
		position: relative;
		padding: 0 2.5641vw;
		border-right: .25641vw solid #ccc;
		border-left: .25641vw solid #ccc;

		align-items: center;
	}
	.companyPage .faq .faqBox header .inner::after{
		position: absolute;
		top: 2.30769vw;
		right: -2.5641vw;
		width: 2.30769vw;
		height: calc(100% - 2.30769vw);
		content: '';
		border-right: .25641vw solid #ccc;
		background: #f7f7f7;
	}
	.companyPage .faq .faqBox header .inner .num{
		font-size: 3rem;
		width: 17.94872vw;
	}
	.companyPage .faq .faqBox header .inner h2{
		font-size: 1.8rem;
		margin-right: 1em;
		padding-top: 0;
	}
	.companyPage .faq .faqBox header .inner .plus{
		width: 4.10256vw;
		margin-top: 0;
	}
	.companyPage .faq .faqBox .open .close{
		opacity: 0;
	}
	.companyPage .faq .faqBox .hideBox{
		width: 97.17949vw;
	}
	.companyPage .faq .faqBox .hideBox::after{
		bottom: -7.69231vw;
		width: 97.17949vw;
		height: 7.69231vw;
		background: url('../../img/sp_faq_waku_bottom_g2.png') no-repeat center bottom / 100% auto;
	}
	.companyPage .faq .faqBox .hideBox .inner{
		padding: 0 2.5641vw;
		padding-top: 11.53846vw;
		border-right: .25641vw solid #ccc;
		border-left: .25641vw solid #ccc;
		background: #f7f7f7;
	}
	.companyPage .faq .faqBox .hideBox .aText{
		font-size: 3rem;
		width: 17.94872vw;
	}
	.companyPage .faq .faqBox .hideBox p{
		font-size: 1.8rem;
		padding-top: 0;
	}
	.companyPage .faq .faqBox+.faqBox{
		margin-top: 12.30769vw;
	}
	/* ==========================================================================
   home
========================================================================== */
	.homeHeader{
		background: none;

		grid-template-columns: 40.25641vw 1fr;
	}
	.homeHeader .gNav a{
		color: #fff;
	}
	.homeHeader .lang .vn{
		background: none;
	}
	.homeHeader .menuBtn .d{
		fill: #fff;
	}
	.homeHeader .btnOpen .d{
		fill: #111;
	}
	.homeSpHeader{
		background: #fff;
	}
	.homePage .mv{
		position: relative;
		display: block;
		height: auto;
		min-height: 0;
		background: none;
	}
	.homePage .mv .videoBox{
		position: static;
		z-index: 2;
		display: block;
		height: auto;
		min-height: 0;
	}
	.homePage .mv .videoBox video{
		height: 100%;
		min-height: 100dvh;
	}
	.homePage .mv .videoBox .catch{
		position: relative;
		z-index: 3;
		display: flex;
		width: 94.87179vw;
		min-height: calc(100dvh - 47.94872vw);
		margin: 0 auto;
		padding: 25.64103vw 0 25.64103vw;

		align-items: center;
		justify-content: center;
	}
	.homePage .mv .textBox{
		position: relative;
		z-index: 3;
		margin-top: 0;
		padding: 8.97436vw 2.5641vw 25.64103vw;
	}

	.homePage .mv .textBox::before{
		height: 47.94872vw;
		margin-top: 0;
	}
	.homePage .mv .textBox::after{
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: calc(100% - 47.94872vw);
		content: '';
		background: #30393f;
	}
	.homePage .mv .textBox .text{
		font-size: 1.8rem;
		line-height: 2.6;
		padding-top: 0;
		text-align: justify;
	}
	.homePage .topAnimeBtn{
		font-size: 1.6rem;
		max-width: 46.15385vw;
		height: 15.38462vw;
	}
	.homePage .topAnimeBtn span{
		background-position: calc(100% - 4.10256vw) center;
		background-size: 6.15385vw auto;
	}
	.homePage .about{
		padding-bottom: 29.48718vw;
	}
	.homePage .about .enSecTitle{
		margin-bottom: 9.23077vw;
	}
	.homePage .about .row{
		max-width: 94.87179vw;
	}
	.homePage .about .row .enText{
		font-size: 5rem;
	}
	.homePage .about .row .enText>span+span{
		margin-top: 8.97436vw;
	}
	.homePage .about .row .img{
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		margin-top: 9.23077vw;
	}
	.homePage .about .row .text{
		font-size: 1.6rem;
		line-height: 2.18;
		margin-top: 6.66667vw;
	}
	.homePage .about .row ul{
		display: flex;
		margin-top: 12.82051vw;

		justify-content: space-between;
	}
	.homePage .about .row ul li{
		font-size: 1.7rem;

		flex: 0 1 auto;
	}
	.homePage .about .row ul .inner{
		display: inline-flex;

		flex-flow: column;
	}
	.homePage .about .row ul .inner span{
		font-size: 4.6rem;
		padding-bottom: 5.12821vw;
	}
	.homePage .about .row ul li:nth-child(1){
		text-align: center;

		justify-content: center;
	}
	.homePage .about .row ul li:nth-child(2){
		text-align: center;

		justify-content: center;
	}
	.homePage .about .row ul li:nth-child(2)::before{
		display: none;
	}
	.homePage .about .row ul li:nth-child(2)::after{
		display: none;
	}
	.homePage .about .row ul li:nth-child(3){
		text-align: center;

		justify-content: center;
	}
	.homePage .about .tuyomi{
		margin-top: 20.51282vw;
	}
	.homePage .about .tuyomi>header h2{
		font-size: 4rem;
		font-weight: 500;
		line-height: 1.45;
		margin-bottom: 51px;
	}
	.homePage .about .tuyomi .row{
		display: block;
	}
	.homePage .about .tuyomi .tuyomiSec{
		display: block;
	}
	.homePage .about .tuyomi .tuyomiSec h2{
		width: 89.74359vw;
		min-height: 17.94872vw;
		margin: 0 auto;
		padding: 2.82051vw 2.5641vw;
	}
	.homePage .about .tuyomi .tuyomiSec p{
		font-size: 1.8rem;
		line-height: 1.38;
		position: relative;
		padding: 5.12821vw 5.12821vw 2.05128vw;
		text-align: justify;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.homePage .about .tuyomi .tuyomiSec p::before{
		width: 17.4359vw;
		height: 17.4359vw;
		margin: 0 auto 2.5641vw;
	}
	.homePage .about .tuyomi .tuyomiSec p::after{
		bottom: -7.69231vw;
		height: 7.69231vw;
		background: url('../../img/sp_parter_waku_bittin.png') no-repeat center center / 100% auto;
	}
	.homePage .about .tuyomi .tuyomiSec+.tuyomiSec{
		margin-top: 13.07692vw;
	}
	.homePage .about .animeBtn{
		margin: 12.82051vw auto 0;
	}
	.homePage .service{
		padding-bottom: 28.20513vw;
	}
	.homePage .service .enSecTitle{
		margin-bottom: 12.82051vw;
	}
	.homePage .service .serviceBox{
		display: flex;
		max-width: none;
		min-height: 0;
		margin: 0 auto;
		text-align: justify;

		align-items: flex-start;
		flex-flow: column-reverse;
		gap: 0;
	}
	.homePage .service .serviceBox .text{
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;

		flex: 1 1 auto;
	}
	.homePage .service .serviceBox .text h2{
		font-size: 4rem;
		max-width: none;
		margin-bottom: 5.12821vw;
	}
	.homePage .service .serviceBox .text p{
		max-width: none;
	}
	.homePage .service .serviceBox .text .animeBtn{
		margin-top: 7.69231vw;
	}
	.homePage .service .serviceBox .img{
		flex: 1 1 auto;
	}
	.homePage .service .serviceBox1{
		flex-flow: column-reverse;
		justify-content: flex-start;
	}
	.homePage .service .serviceBox1::before{
		display: none;
	}
	.homePage .service .serviceBox1::after{
		display: none;
	}
	.homePage .service .serviceBox2{
		position: relative;
		margin-top: 17.94872vw;
	}
	.homePage .service .serviceBox2::before{
		display: none;
	}
	.homePage .service .serviceBox2 .text h2,.homePage .service .serviceBox2 .text p{
		margin-right: 0;
		margin-left: 0;
	}
	.homePage .service .serviceBox2 .text .btnBox{
		max-width: none;
		margin-right: 0;
		margin-left: 0;
	}
	.homePage .service .serviceBox3{
		margin-top: 17.94872vw;

		flex-flow: column-reverse;
		justify-content: flex-start;
	}
	.homePage .service .serviceBox3::before{
		display: none;
	}
	.homePage .service .serviceBox3::after{
		display: none;
	}
	.homePage .service .serviceBox3 .text::before{
		display: none;
	}
	.homePage .clients{
		padding-bottom: 38.46154vw;
	}
	.homePage .clients .enSecTitle{
		margin-bottom: 17.94872vw;
	}
	.homePage .clients .swiper-slide{
		width: 43.58974vw;
	}
	.homePage .clients .logoBox{
		width: 43.58974vw;
		height: 20.51282vw;
	}
	.homePage .works{
		padding-bottom: 28.20513vw;
	}
	.homePage .works .enSecTitle{
		margin-bottom: 12.82051vw;
	}
	.homePage .works .worksBox{
		max-width: 94.87179vw;
	}
	.homePage .works .worksBox a{
		position: relative;
		display: flex;
		max-width: 85.89744vw;
		padding: 3.33333vw 2.5641vw 7.17949vw;
		background: #fff;

		align-items: flex-start;
		flex-flow: column-reverse;
		gap: 0;
		justify-content: flex-start;
	}
	.homePage .works .worksBox .num{
		width: 9.23077vw;
		height: 53.33333vw;
	}
	.homePage .works .worksBox .numInner{
		font-size: 2.6rem;
	}
	.homePage .works .worksBox .text{
		flex: 1 1 auto;
	}
	.homePage .works .worksBox .text h2{
		font-size: 3.1rem;
		margin-bottom: 0;
	}
	.homePage .works .worksBox .text h2,.homePage .works .worksBox .text p{
		padding: 0 1.28205vw;
	}
	.homePage .works .worksBox .img{
		margin-bottom: 2.5641vw;

		flex: 1 1 auto;
	}
	.homePage .works .worksBox:nth-child(even) a{
		margin-right: 0;
		margin-left: auto;
	}
	.homePage .works .worksBox:nth-child(even) .num{
		top: 10.76923vw;
		left: -8.97436vw;
		transform: translateY(0%);
	}
	.homePage .works .worksBox:nth-child(odd) a{
		margin-right: auto;
		margin-left: 0;
	}
	.homePage .works .worksBox:nth-child(odd) .num{
		top: 10.76923vw;
		right: -8.97436vw;
		transform: translateY(0%);
	}
	.homePage .works .worksBox:nth-child(odd) .numInner{
		background: url('../../img/top_works_btn_bk2.svg') no-repeat center center / contain;
	}
	.homePage .works .worksBox+.worksBox{
		margin-top: 7.69231vw;
	}
	.homePage .technologes{
		padding-bottom: 17.94872vw;
		text-align: center;
	}
	.homePage .technologes .enSecTitle{
		margin-bottom: 17.94872vw;
	}
	.homePage .technologes .enSecTitle::before{
		content: 'AVAILABLE\ATECHNOLOGIES';
		white-space: pre;
	}
	.homePage .technologes .row{
		display: block;
		max-width: 89.74359vw;
	}
	.homePage .technologes .techBox{
		height: 128.20513vw;
	}
	.homePage .technologes .techBox h2{
		width: 15.38462vw;
	}
	.homePage .technologes .techBox ul{
		padding-left: 4.61538vw;
		text-align: left;
	}
	.homePage .technologes .techBox ul li+li{
		margin-top: 7.69231vw;
	}
	.homePage .technologes .techBox1{
		background: url('../../img/sp_top_tech_bk1.png') no-repeat center center / contain;
	}
	.homePage .technologes .techBox1 li:nth-child(1){
		width: 46.41026vw;
	}
	.homePage .technologes .techBox1 li:nth-child(2){
		width: 27.94872vw;
	}
	.homePage .technologes .techBox1 li:nth-child(3){
		width: 33.84615vw;
	}
	.homePage .technologes .techBox1 li:nth-child(4){
		width: 30.25641vw;
	}
	.homePage .technologes .techBox1 li:nth-child(5){
		width: 27.94872vw;
	}
	.homePage .technologes .techBox2{
		margin-top: 7.69231vw;
		background: url('../../img/sp_top_tech_bk2.png') no-repeat center center / contain;
	}
	.homePage .technologes .techBox2 li:nth-child(1){
		width: 25.64103vw;
	}
	.homePage .technologes .techBox2 li:nth-child(2){
		width: 17.69231vw;
	}
	.homePage .technologes .techBox2 li:nth-child(3){
		width: 22.05128vw;
	}
	.homePage .technologes .techBox2 li:nth-child(4){
		width: 13.33333vw;
	}
	.homePage .technologes .techBox2 li:nth-child(5){
		width: 28.71795vw;
	}
	.homePage .technologes .techBox3{
		margin-top: 7.69231vw;
		background: url('../../img/sp_top_tech_bk3.png') no-repeat center center / contain;
	}
	.homePage .technologes .techBox3 li:nth-child(1){
		width: 29.74359vw;
	}
	.homePage .technologes .techBox3 li:nth-child(2){
		width: 38.97436vw;
	}
	.homePage .technologes .techBox3 li:nth-child(3){
		width: 54.87179vw;
	}
	.homePage .technologes .techBox3 li:nth-child(4){
		width: 58.20513vw;
	}
	.homePage .technologes .techBox3 li:nth-child(5){
		width: 62.05128vw;
	}
	.homePage .recruit{
		padding: 3.84615vw 0 28.20513vw;
		background: url('../../img/sp_top_recruit_bk.jpg') no-repeat center top /100% auto;
		background-color: #f4a100;
	}
	.homePage .recruit::before{
		display: none;
	}
	.homePage .recruit::after{
		display: none;
	}
	.homePage .recruit .enSecTitle{
		margin-bottom: 43.58974vw;
	}
	.homePage .recruit .enSecTitle::before{
		font-size: 5.8rem;
		line-height: 1;
		margin-bottom: 3.84615vw;
		content: 'JOB\AINFORMATION';
		white-space: pre;
		letter-spacing: 0;
	}
	.homePage .recruit .inner::before{
		display: none;
	}
	.homePage .recruit .text1{
		font-size: 4.3rem;
		line-height: 1.44;
		margin-bottom: 1.28205vw;
		letter-spacing: 0;
	}
	.homePage .recruit .text2{
		font-size: 1.8rem;
		line-height: 2;
		margin-bottom: 45px;
	}
	.homePage .recruit .text3{
		width: 92.5641vw;
		margin: 0 auto 12.05128vw;
	}
	.homePage .recruit .text4{
		font-size: 2.2rem;
		line-height: 1.81;
		width: 94.87179vw;
		margin: 0 auto;
	}
	.homePage .recruit .topAnimeBtn{
		margin: 7.69231vw auto 0;
		border: .51282vw solid #fff;
	}
	.homePage .recruit .topAnimeBtn span{
		background-position: calc(100% - 4.10256vw) center;
		background-size: 6.15385vw auto;
	}
	.homePage .news{
		padding-bottom: 28.20513vw;
	}
	.homePage .news .enSecTitle{
		margin-bottom: 12.82051vw;
	}
	.homePage .news .row{
		max-width: 94.87179vw;
	}
	.homePage .news .listBox a{
		display: grid;

		grid-gap: 5.12821vw 4.61538vw;
		grid-template-columns: 28.71795vw 1fr;
		grid-template-rows: auto 1fr;
	}
	.homePage .news .listBox .postDateText{
		padding-top: .4em;
	}
	.homePage .news .listBox .cat{
		min-width: 0;

		align-self: start;
	}
	.homePage .news .listBox h2{
		font-size: 1.7rem;
		font-weight: 400;
		line-height: 2;
	}
	.homePage .news .listBox+.listBox{
		margin-top: 7.69231vw;
	}
	.homePage .media{
		padding: 14.10256vw 0 23.07692vw;
		text-align: center;
	}
	.homePage .media a{
		display: block;
		max-width: 94.87179vw;
		margin: 0 auto;
		padding: 0;
	}
	.homePage .media h2{
		font-size: 2.2rem;
		line-height: 1;
		margin-bottom: 5.12821vw;
		letter-spacing: 0;
	}
	.homePage .media .arrow{
		display: none;
	}
	.homePage .media a:hover{
		opacity: .8;
	}
	/* ==========================================================================
   works詳細
========================================================================== */
	.worksSingle .pageMv{
		background-image: url('../../img/sp_works_mv_bk.jpg');
	}
	.worksSingle .topBox{
		display: block;
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;
	}
	.worksSingle .topBox .subCat{
		padding: 2.5641vw;

		gap: 1.79487vw;
	}
	.worksSingle .topBox .subCat a{
		display: grid;
		min-height: 6.41026vw;
		padding: .76923vw 2.82051vw;
		border: .25641vw solid #aaa;
		border-radius: 3.33333vw;

		place-content: center;
	}
	.worksSingle .singleEdit{
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;
		padding-bottom: 29.48718vw;
	}
	.worksSingle .relatedBox{
		padding-bottom: 23.07692vw;
	}
	.worksSingle .relatedBox .row{
		display: grid;

		grid-gap: 0 2.5641vw;
		grid-template-columns: repeat(2,46.15385vw);
	}
	.worksSingle .relatedBox .worksPost:nth-child(3){
		display: none;
	}
	.worksPost a{
		padding: 2.5641vw 2.5641vw 0;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.worksPost a::after{
		bottom: -5.12821vw;
		width: 100%;
		height: 5.12821vw;
		background: url('../../img/sp_related_waku_bottom.png') no-repeat center center / 100% auto;
	}
	.worksPost header{
		display: flex;
		margin-top: 2.5641vw;

		align-content: flex-start;
		flex-flow: column;
		gap: 0;
		justify-content: flex-start;
	}
	.worksPost header h2{
		font-size: 1.9rem;
		line-height: 1.05;

		order: 3;
	}
	.worksPost header .cat{
		font-size: 1.4rem;
		width: 100%;
		min-width: 0;
		min-height: 7.4359vw;
		padding: .76923vw 1.28205vw;

		order: 1;
	}
	.worksPost header .postDateText{
		font-size: 1.6rem;
		width: 100%;
		margin: 2.30769vw 0 3.33333vw;
		text-align: right;

		order: 2;
	}
	.worksPost .subCat{
		margin-top: 2.5641vw;

		gap: 1.79487vw 0;
		justify-content: space-between;
	}
	.worksPost .subCat li{
		font-size: 1.2rem;
		min-width: 19.23077vw;
		min-height: 5.12821vw;
		padding: .76923vw 1.53846vw;
		border: .25641vw solid #aaa;
		border-radius: 3.33333vw;
	}
	/* ==========================================================================
   works一覧
========================================================================== */
	.worksArchive{
		padding-bottom: 17.94872vw;
	}
	.worksArchive .pageMv{
		background-image: url('../../img/sp_works_list_mv_bk.jpg');
	}
	.worksArchive .pageMv .pageTitle{
		letter-spacing: .6em;
	}
	.worksArchive .lsitTitle{
		font-size: 2.7rem;
		margin-bottom: 12.82051vw;
		padding-top: 2.5641vw;
	}
	.worksArchive .topText{
		max-width: 94.87179vw;
		margin: 0 auto 6.41026vw;
	}
	.worksArchive .searchBox{
		max-width: 96.66667vw;
		margin: 0 auto 7.69231vw;
	}
	.worksArchive .searchBox .topList{
		display: flex;

		flex-flow: row wrap;
		gap: 3.58974vw 0;
		justify-content: space-between;
	}
	.worksArchive .searchBox .topList .term{
		position: relative;
		height: 12.5641vw;

		flex: 0 1 46.41026vw;
	}
	.worksArchive .searchBox .topList .word{
		height: 12.5641vw;
		background: url('../../img/works_list_keyword.svg') no-repeat center center / contain;

		flex: 0 1 46.41026vw;
	}
	.worksArchive .searchBox .topList .word input{
		font-size: 16px;
		padding-left: 2.5641vw;
	}
	.worksArchive .searchBox .topList .word button{
		flex: 0 0 9.74359vw;
	}
	.worksArchive .searchBox .topList .word button img{
		width: 4.61538vw;
	}
	.worksArchive .searchBox .topList .termBox{
		font-size: 1.4rem;
	}
	.worksArchive .searchBox .topList .termBox>span{
		padding: 0 2.05128vw 0 2.05128vw;
	}
	.worksArchive .searchBox .topList .termBox>span .num{
		font-size: 1.7rem;
		width: 6.41026vw;
		height: 6.41026vw;
		border: .25641vw solid #707070;

		flex-shrink: 0;
	}
	.worksArchive .searchBox .topList .termBox>span::after{
		width: 6.41026vw;
		height: 1.53846vw;
	}
	.worksArchive .searchBox .topList .term:nth-child(3) .termBox{
		font-size: 1.3rem;
	}
	.worksArchive .searchBox .topList .chieckboxList{
		top: 11.02564vw;
		overflow-y: auto;
		max-height: 60vw;
		padding: 6.66667vw 3.84615vw;
		border: .25641vw solid #707070;
	}
	.worksArchive .searchBox .topList .chieckboxList li label::before{
		width: 4.61538vw;
		height: 4.61538vw;
	}
	.worksArchive .searchBox .topList .chieckboxList li+li{
		margin-top: 3.58974vw;
	}
	.worksArchive .listRow{
		position: relative;
		display: grid;
		max-width: 94.87179vw;
		min-height: 25.64103vw;
		margin: 0 auto;

		grid-gap: 7.94872vw 2.5641vw;
		grid-template-columns: repeat(2,46.15385vw);
	}
	.worksArchive .listRow .loading{
		top: 7.69231vw;
	}
	.worksArchive .listRow .worksPost{
		grid-template-columns: subgrid;
	}
	.worksArchive .listRow .worksPost a{
		grid-template-columns: subgrid;
	}
	/* ==========================================================================
   DOCUMENTS詳細
========================================================================== */
	.documentsSingle .pageMv{
		background-image: url('../../img/sp_document_mv_bk.jpg');
	}
	.documentsSingle .singleEdit{
		max-width: 94.87179vw;
		margin: 7.69231vw auto 0;
		padding-bottom: 29.48718vw;
	}
	.documentsSingle .relatedBox{
		padding-bottom: 23.07692vw;
	}
	.documentsSingle .relatedBox .enSecTitle::before{
		content: 'RELATED \A DOCUMENTS';
		white-space: pre;
	}
	.documentsSingle .relatedBox .row{
		display: grid;

		grid-gap: 0 2.5641vw;
		grid-template-columns: repeat(2,46.15385vw);
	}
	.documentsSingle .relatedBox .documentsPost:nth-child(3){
		display: none;
	}
	.documentsSingle .documentsForm{
		padding-bottom: 17.94872vw;
	}
	.documentsSingle .documentsForm .enSecTitle{
		margin-bottom: 7.69231vw;
	}
	.documentsSingle .documentsForm .enSecTitle::before{
		content: 'REQUEST FORM';
	}
	.documentsSingle .documentsForm .formWall{
		max-width: 94.87179vw;
	}
	.documentsSingle .documentsForm .formWall .topText{
		margin-bottom: 7.69231vw;
	}
	.documentsPost a{
		padding: 2.5641vw 2.5641vw 0;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.documentsPost a::after{
		bottom: -5.12821vw;
		width: 100%;
		height: 5.12821vw;
		background: url('../../img/sp_related_waku_bottom.png') no-repeat center center / 100% auto;
	}
	.documentsPost header{
		display: flex;
		margin-top: 2.5641vw;

		align-content: flex-start;
		flex-flow: column;
		gap: 0;
		justify-content: flex-start;
	}
	.documentsPost header h2{
		font-size: 1.9rem;
		line-height: 1.05;

		order: 3;
	}
	.documentsPost header .cat{
		font-size: 1.4rem;
		width: 100%;
		min-width: 0;
		min-height: 7.4359vw;
		padding: .76923vw 1.28205vw;

		order: 1;
	}
	.documentsPost header .postDateText{
		font-size: 1.6rem;
		width: 100%;
		margin: 2.30769vw 0 3.33333vw;
		text-align: right;

		order: 2;
	}
	.documentsPost .excerpt{
		margin-top: 2.5641vw;
	}
	.documentsPost .excerpt p{
		-webkit-line-clamp: 4;
	}
	/* ==========================================================================
   documents一覧
========================================================================== */
	.documentsArchive{
		padding-bottom: 30.76923vw;
	}
	.documentsArchive .pageMv{
		background-image: url('../../img/sp_documents_list_mv_bk.jpg');
	}
	.documentsArchive .pageMv .pageTitle{
		padding-left: .3em;
		letter-spacing: .3em;
	}
	.documentsArchive .lsitTitle{
		font-size: 2.7rem;
		line-height: 1.3;
		margin-bottom: 12.82051vw;
	}
	.documentsArchive .topText{
		max-width: 94.87179vw;
		margin: 0 auto 7.69231vw;
	}
	.documentsArchive .searchBox{
		max-width: 94.87179vw;
		margin: 0 auto 7.69231vw;
	}
	.documentsArchive .searchBox ul .select{
		position: relative;
		height: 12.5641vw;

		flex: 0 1 46.41026vw;
	}
	.documentsArchive .searchBox ul .word{
		height: 12.5641vw;
		background: url('../../img/works_list_keyword.svg') no-repeat center center / contain;

		flex: 0 1 46.41026vw;
	}
	.documentsArchive .searchBox ul .word input{
		font-size: 16px;
		padding-left: 2.5641vw;
	}
	.documentsArchive .searchBox ul .word button{
		flex: 0 0 9.74359vw;
	}
	.documentsArchive .searchBox ul .word button img{
		width: 4.61538vw;
	}
	.documentsArchive .searchBox .termBox{
		font-size: 1.3rem;
	}
	.documentsArchive .searchBox .termBox>span{
		z-index: 2;
		display: flex;
		width: 100%;
		padding: 0 6.41026vw 0 2.5641vw;

		align-items: center;
	}
	.documentsArchive .searchBox .termBox>span::after{
		position: absolute;
		right: 3.58974vw;
		width: 2.5641vw;
		height: 1.53846vw;
		content: '';
	}
	.documentsArchive .listRow{
		position: relative;
		display: grid;
		max-width: 94.87179vw;
		min-height: 25.64103vw;
		margin: 0 auto;

		grid-gap: 7.94872vw 2.5641vw;
		grid-template-columns: repeat(2,46.15385vw);
	}
	.documentsArchive .listRow .loading{
		top: 7.69231vw;
	}
	.documentsArchive .listRow .worksPost{
		grid-template-columns: subgrid;
	}
	.documentsArchive .listRow .worksPost a{
		grid-template-columns: subgrid;
	}
	/* ==========================================================================
   RECRUIT
========================================================================== */
	.recruitPage .pageMv{
		background-image: url('../../img/sp_recruit_mv_bk.jpg');
	}
	.recruitPage svg{
		width: 100%;
		height: auto;
	}
	.recruitPage .listSec .enBackText{
		padding: 10.25641vw 0 7.69231vw;
		text-align: center;
	}
	.recruitPage .listSec .enBackText .fukuromoji{
		position: relative;
		z-index: 2;
		width: 91.02564vw;
		margin: 0 auto;
	}
	.recruitPage .listSec .enBackText .enBkText1{
		top: 1.79487vw;
		left: 0;
		height: 35.64103vw;
		background-image: url('../../img/sp_recruit_title1_en1.png');
	}
	.recruitPage .listSec .enBackText .enBkText2{
		bottom: 0;
		left: 0;
		height: 35.64103vw;
		background-image: url('../../img/sp_recruit_title1_en2.png');
	}
	.recruitPage .jobList{
		display: flex;
		max-width: 94.87179vw;
		margin: 0 auto;

		flex-flow: row wrap;
		gap: 2.30769vw 2.5641vw;
	}
	.recruitPage .jobList li{
		flex: 0 1 46.15385vw;
	}
	.recruitPage .jobList .jobBtn{
		line-height: 1.38;
		height: 25.64103vw;
		text-align: center;
		border: .51282vw solid #f4a100;
	}
	.recruitPage .jobList .jobBtn small{
		font-size: 1.6rem;
	}
	.recruitPage .secTitle{
		width: 60vw;
		height: 27.94872vw;
	}
	.recruitPage .rinen{
		margin-top: 16.92308vw;
	}
	.recruitPage .rinen .secTitle{
		margin: 0 auto 8.97436vw;
	}
	.recruitPage .rinen .enBackText{
		min-height: 0;
	}
	.recruitPage .rinen .enBackText .fukuromoji{
		width: 93.58974vw;
	}
	.recruitPage .rinen .enBackText .enBkText1{
		top: 8.97436vw;
		left: 0;
		height: 35.64103vw;
		background-image: url('../../img/sp_recruit_title1_en1.png');
	}
	.recruitPage .rinen .enBackText .enBkText2{
		bottom: 7.94872vw;
		left: 0;
		height: 35.64103vw;
		background-image: url('../../img/sp_recruit_title1_en2.png');
	}
	.recruitPage .rinen ul{
		position: relative;
		display: block;
		max-width: none;
		margin: 11.53846vw auto 0;
		background: url('../../img/sp_recruit_rinen_bk.png') no-repeat center center / auto 192.30769vw;
	}
	.recruitPage .rinen ul::after{
		position: absolute;
		z-index: 1;
		top: 154.61538vw;
		width: 76.92308vw;
		height: 81.79487vw;
		background: url('../../img/sp_recruit_rinen_img.png') no-repeat center center / contain;
	}
	.recruitPage .rinen ul li{
		font-size: 1.9rem;
		line-height: 1.84;
		width: 89.74359vw;
		height: 89.74359vw;
		border: .25641vw solid #707070;
		border-radius: 50%;
		background: #fff;
	}
	.recruitPage .rinen ul li:nth-child(1){
		margin-left: -2.5641vw;
	}
	.recruitPage .rinen ul li:nth-child(2){
		margin: -7.4359vw -7.69231vw 0 auto;
	}
	.recruitPage .rinen ul li:nth-child(3){
		position: relative;
		z-index: 2;
		margin: 51.02564vw 0 0 -5.12821vw;
	}
	.recruitPage .rinen ul li:nth-child(4){
		position: relative;
		z-index: 3;
		margin: -10vw -7.69231vw 0 auto;
	}
	.recruitPage .kankyou{
		max-width: none;
		margin: 16.15385vw auto 0;
	}
	.recruitPage .kankyou>header{
		max-width: 97.4359vw;
		height: 94.87179vw;
		margin: 0 auto;
		padding-bottom: 0;
		background: url('../../img/sp_recruit_kankyou_img.png') no-repeat center bottom / 100% auto;

		align-items: flex-start;
	}
	.recruitPage .kankyou .topText{
		max-width: 91.28205vw;
		margin: 0 0 8.20513vw 2.82051vw;
	}
	.recruitPage .kankyou .topText2{
		font-size: 2.4rem;
		line-height: 1.66;
		max-width: 94.87179vw;
		margin: 0 auto;
	}
	.recruitPage .kankyou .rinenList{
		max-width: none;
		margin: 7.69231vw auto 0;
	}
	.recruitPage .kankyou .rinenList li+li{
		margin-top: 2.5641vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox{
		max-width: 93.84615vw;
		margin-top: 0;
		padding: 8.20513vw 0 5.12821vw;
		border: .51282vw solid #f4a100;
		background: #fff;
	}
	.recruitPage .kankyou .rinenList .rinenBox::after{
		height: calc(100% + .51282vw);
		border: .25641vw solid #f4a100;
	}
	.recruitPage .kankyou .rinenList .rinenBox h2{
		line-height: 1;
		margin-bottom: 4.10256vw;
		margin-left: 5.12821vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox p{
		font-size: 1.8rem;
		line-height: 1.66;
		width: 84.10256vw;
		margin: 0 auto;
	}
	.recruitPage .kankyou .rinenList .rinenBox1,.recruitPage .kankyou .rinenList .rinenBox3,.recruitPage .kankyou .rinenList .rinenBox5{
		margin-right: 2.5641vw;
		margin-left: auto;
	}
	.recruitPage .kankyou .rinenList .rinenBox1::after,.recruitPage .kankyou .rinenList .rinenBox3::after,.recruitPage .kankyou .rinenList .rinenBox5::after{
		bottom: -3.07692vw;
		left: 2.5641vw;
		background: #f4a100;
	}
	.recruitPage .kankyou .rinenList .rinenBox2,.recruitPage .kankyou .rinenList .rinenBox4{
		margin-left: 0;
	}
	.recruitPage .kankyou .rinenList .rinenBox2::after,.recruitPage .kankyou .rinenList .rinenBox4::after{
		bottom: -3.07692vw;
		left: 2.5641vw;
		background: #f4a100;
	}
	.recruitPage .kankyou .rinenList .rinenBox1 h2{
		width: 82.05128vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox2 h2{
		width: 64.10256vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox3 h2{
		width: 74.35897vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox4 h2{
		width: 84.10256vw;
	}
	.recruitPage .kankyou .rinenList .rinenBox5 h2{
		width: 47.94872vw;
	}
	.recruitPage .kankyou .endText{
		font-size: 2.4rem;
		line-height: 1.66;
		max-width: 94.87179vw;
		margin: 10.25641vw auto 0;
	}
	.recruitPage .staff{
		max-width: 94.87179vw;
		margin: 16.66667vw auto 0;
	}
	.recruitPage .staff .secTitle{
		margin: 0 auto 8.97436vw;
	}
	.recruitPage .staff .slideWall{
		max-width: 94.87179vw;
	}
	.recruitPage .staff .slideWall .swiper-button-next,.recruitPage .staff .slideWall .swiper-button-prev{
		width: 12.05128vw;
		height: 12.05128vw;
	}
	.recruitPage .staff .slideWall .partsRow{
		margin-top: 6.15385vw;
	}
	.recruitPage .staff .slideWall .partsRow .swiper-button-prev{
		margin-right: 5.64103vw;
	}
	.recruitPage .staff .slideWall .partsRow .swiper-button-next{
		margin-right: 5.64103vw;
	}
	.recruitPage .staff .staffSlide .data{
		width: 41.53846vw;
		margin-bottom: 2.82051vw;
	}
	.recruitPage .staff .staffSlide .data .job{
		font-size: 1.5rem;
		min-height: 6.92308vw;
		padding: 1.28205vw;
		color: #fff;
		background: #f4a100;
	}
	.recruitPage .staff .staffSlide .data .name{
		font-size: 1.5rem;
		min-height: 5.89744vw;
		padding: 1.28205vw;
		border-right: .25641vw solid #c7c7c7;
		border-bottom: .25641vw solid #c7c7c7;
		border-left: .25641vw solid #c7c7c7;
	}

	.staffModal{
		display: block;
		width: 94.87179vw;
		height: calc(100dvh - 5.12821vw);
		border: .25641vw solid #777;
		background: linear-gradient(90deg,#f4c500 0%, #f4a100 100%);
	}
	.staffModal .imgBox{
		display: grid;

		grid-template-columns: 45.89744vw 1fr;
		grid-template-rows: auto;
	}
	.staffModal .imgBox .img{
		align-self: center;
		grid-column: 1;
		grid-row: 1;
		justify-self: center;
	}
	.staffModal .imgBox .data{
		width: 41.53846vw;
		margin-bottom: 0;

		align-self: center;
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
	}
	.staffModal .imgBox .data .job{
		font-size: 1.5rem;
		min-height: 6.92308vw;
		padding: 1.28205vw;
		color: #fff;
		background: #f4a100;
	}
	.staffModal .imgBox .data .name{
		font-size: 1.5rem;
		min-height: 5.89744vw;
		padding: 1.28205vw;
		border-right: .25641vw solid #c7c7c7;
		border-bottom: .25641vw solid #c7c7c7;
		border-left: .25641vw solid #c7c7c7;
	}
	.staffModal .talkBox{
		padding: 0  0 5.12821vw;
	}
	.staffModal .talkBox .inner{
		overflow-y: auto;
		height: calc(100dvh - 88.71795vw);
		padding: 8.20513vw 0 0 2.5641vw;
	}
	.staffModal .talkBox .inner::-webkit-scrollbar{
		width: 3.07692vw;
		border: .25641vw solid #707070;
	}
	.staffModal .talkBox .inner::-webkit-scrollbar-thumb{
		border: .25641vw solid #707070;
	}
	.staffModal .talkBox .talk{
		width: 65.89744vw;
		margin-left: 0;
	}
	.staffModal .talkBox .talk span{
		font-size: 1.7rem;
		line-height: 1.47;
		padding: 2.5641vw 3.07692vw;
		border: .25641vw solid #707070;
		border-radius: 5.12821vw;
	}
	.staffModal .talkBox .talk::before{
		position: absolute;
		z-index: 1;
		top: 6.66667vw;
		width: 3.33333vw;
		height: 2.5641vw;
	}
	.staffModal .talkBox .talk+.talk{
		margin-top: 5.12821vw;
	}
	.staffModal .talkBox .hostComment::before{
		right: -2.5641vw;
	}
	.staffModal .talkBox .hostComment::after{
		position: absolute;
		top: -4.87179vw;
		right: -20.51282vw;
		width: 18.71795vw;
		height: 20vw;
		content: '';
		background: url('../../img/sp_staff_host.png') no-repeat center center / contain;
	}
	.staffModal .talkBox .staffComment{
		margin-left: 20.51282vw;
	}
	.staffModal .talkBox .staffComment::before{
		left: -2.5641vw;
	}
	.staffModal .talkBox .staffComment::after{
		left: -20.51282vw;
		width: 15.38462vw;
		height: 15.38462vw;
		border: .25641vw solid #707070;
	}
	.staffModal .modalCloseBtn{
		top: -.25641vw;
		right: -.25641vw;
		width: 12.82051vw;
	}
	.recruitPage .saiyou{
		margin-top: 14.10256vw;
		padding-top: 2.5641vw;
	}

	.recruitPage .saiyou .secTitle{
		margin: 0 auto 10.25641vw;
	}
	.recruitPage .saiyou .jobList{
		margin-bottom: 7.69231vw;
	}
	.recruitPage .saiyou .saiyouSec{
		max-width: 94.87179vw;
	}
	.recruitPage .saiyou .saiyouSec>h2{
		margin-bottom: 4.61538vw;
		padding-bottom: 3.07692vw;
		border-bottom: .25641vw solid #333;
	}
	.recruitPage .saiyou .innerSec{
		margin-top: 5.64103vw;
	}
	.recruitPage .saiyou .innerSec h2{
		height: 11.53846vw;
		margin-bottom: 5.64103vw;
		padding: 0 5.12821vw;
		border-radius: 2.5641vw 2.5641vw 0 0;
	}
	.recruitPage .tabWall{
		padding-bottom: 32.05128vw;
	}
	.recruitPage .entryForm{
		padding-bottom: 25.64103vw;
	}
	.recruitPage .entryForm .enSecTitle{
		margin-bottom: 12.82051vw;
	}
	.recruitPage .entryForm .formWall{
		max-width: 94.87179vw;
		margin: 0 auto;
	}
	.recruitPage .pankuzu{
		height: 27.4359vw;

		-webkit-clip-path: polygon(100% 0, 100% 100%, 89.74% 58.87%, 10.25% 58.87%, 0 100%, 0 0);
		        clip-path: polygon(100% 0, 100% 100%, 89.74% 58.87%, 10.25% 58.87%, 0 100%, 0 0);
	}
	.recruitPage .main{
		margin-top: -11.28205vw;
		padding-top: 10.76923vw;
	}
	/* ==========================================================================
   サービス下層共通
========================================================================== */
	.serviceSubPage .pageMv{
		background-image: url('../../img/sp_service_mv_bk.jpg');
	}
	.serviceSubPage .subPageTitle{
		font-size: 3.8rem;
		margin-bottom: 12.82051vw;
	}
	.serviceSubPage .subPageTitle::after{
		font-size: 2rem;
	}
	.serviceSubPage .circleSec{
		max-width: 94.87179vw;
		margin: 12.82051vw auto 0;
		padding: 13.33333vw 5.12821vw;
	}
	.serviceSubPage .circleSec .circleSecTitle{
		font-size: 3.8rem;
		line-height: 1.23;
		margin-bottom: 6.41026vw;
	}
	.serviceSubPage .circleSec .innerSec{
		align-items: flex-start;
		flex-flow: column-reverse;
		gap: 0;
	}
	.serviceSubPage .circleSec .innerSec .img{
		width: 51.28205vw;
		margin: 0 auto 5.12821vw;

		flex: 1 1 auto;
	}
	.serviceSubPage .circleSec .innerSec .text{
		letter-spacing: 0;

		flex: 1 1 auto;
	}
	.serviceSubPage .circleSec .innerSec h2{
		font-size: 3.3rem;
		line-height: 1.2;
		margin-bottom: 3.84615vw;
		text-align: center;
	}
	.serviceSubPage .circleSec .innerSec+.innerSec{
		margin-top: 12.82051vw;
	}
	.serviceSubPage .flowRow{
		display: grid;
		max-width: 94.87179vw;

		grid-gap: 14.10256vw 2.5641vw;
		grid-template-columns: 46.15385vw 1fr;
		grid-template-rows: auto 1fr;
	}
	.serviceSubPage .flowSec h2{
		font-size: 1.9rem;
		line-height: 1.15;
		min-height: 16.15385vw;
		margin: 0 auto;
		padding: 2.82051vw 2.5641vw;
	}
	.serviceSubPage .flowSec .img{
		padding: 2.5641vw 2.5641vw 0;
		border-top: .25641vw solid #ddd;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
		background: #f9f9f9;
	}
	.serviceSubPage .flowSec p{
		font-size: 1.55rem;
		line-height: 1.56;
		padding: 2.05128vw 2.5641vw 1.79487vw;
		border-right: .25641vw solid #ddd;
		border-left: .25641vw solid #ddd;
	}
	.serviceSubPage .flowSec p::after{
		position: absolute;
		left: 0;
		width: 100%;
		content: '';
	}
	.serviceSubPage .flowSec:nth-child(1){
		grid-column: 1;
	}
	.serviceSubPage .flowSec:nth-child(1) h2{
		width: 42.5641vw;
	}
	.serviceSubPage .flowSec:nth-child(1) p::after{
		bottom: -5.12821vw;
		height: 5.51282vw;
		background: url('../../img/sp_sd_flow_bk.png') no-repeat center center / 100% auto;
	}
	.serviceSubPage .flowSec:nth-child(2){
		grid-column: 2;
	}
	.serviceSubPage .flowSec:nth-child(2)::before{
		left: -5.12821vw;
		width: 7.4359vw;
		height: 7.4359vw;
		margin-top: -3.71795vw;
	}
	.serviceSubPage .flowSec:nth-child(2) h2{
		width: 42.5641vw;
	}
	.serviceSubPage .flowSec:nth-child(2) p::after{
		bottom: -5.12821vw;
		height: 5.51282vw;
		background: url('../../img/sp_sd_flow_bk.png') no-repeat center center / 100% auto;
	}
	.serviceSubPage .flowSec:nth-child(3){
		grid-column: 1 / 3;
	}
	.serviceSubPage .flowSec:nth-child(3)::before{
		top: -10.51282vw;
		left: 50%;
		width: 7.4359vw;
		height: 7.4359vw;
		margin-top: 0;
		margin-left: -3.71795vw;
		transform: rotate(125deg);
		transform-origin: center;
	}
	.serviceSubPage .flowSec:nth-child(3) h2{
		width: 91.02564vw;
	}
	.serviceSubPage .flowSec:nth-child(3) p::after{
		bottom: -7.69231vw;
		height: 7.94872vw;
		background: url('../../img/sp_parter_waku_bittin.png') no-repeat center center / 100% auto;
	}
	/* ==========================================================================
   システム開発事業
========================================================================== */
	.system-developmentPage .topSec{
		max-width: 94.87179vw;

		grid-gap: 0;
		grid-template-columns: 100%;
		grid-template-rows: auto auto auto 1fr;
	}
	.system-developmentPage .topSec h2{
		font-size: 3.6rem;
		margin-bottom: 5.12821vw;

		grid-column: 1;
		grid-row: 2;
	}
	.system-developmentPage .topSec h2 span{
		margin-top: 5.12821vw;
	}
	.system-developmentPage .topSec .catch{
		font-size: 3.5rem;
		margin-bottom: 3.33333vw;

		grid-column: 1;
		grid-row: 3;
	}
	.system-developmentPage .topSec .text{
		grid-column: 1;
		grid-row: 4;
	}
	.system-developmentPage .topSec .img{
		margin-bottom: 7.69231vw;

		grid-column: 1;
		grid-row: 1;
	}
	.system-developmentPage .wallG{
		margin-top: 38.46154vw;
		padding: 2.5641vw 0 38.46154vw;
	}
	.system-developmentPage .listSec{
		max-width: 94.87179vw;
	}
	.system-developmentPage .listSec>header{
		margin-bottom: 12.82051vw;
	}
	.system-developmentPage .listSec>header h2{
		font-size: 3.6rem;
		letter-spacing: 0;
	}
	.system-developmentPage .listSec ul{
		gap: 2.5641vw;
	}
	.system-developmentPage .listSec ul li{
		line-height: 1.38;
		height: 25.64103vw;
		letter-spacing: 0;

		flex: 0 1 46.15385vw;
	}
	.system-developmentPage .gijyutu{
		margin-top: 20.51282vw;
	}
	.system-developmentPage .flow{
		padding-bottom: 24.35897vw;
	}
	.system-developmentPage .flow .flowTitle{
		font-size: 3.5rem;
		line-height: 1.28;
		margin-bottom: 10.25641vw;
	}
	/* ==========================================================================
   IT人材ラボ事業
========================================================================== */
	.it-human-resources-labPage .topSec{
		max-width: 94.87179vw;
		letter-spacing: 0;

		grid-gap: 0;
		grid-template-columns: 100%;
		grid-template-rows: auto auto auto 1fr;
	}
	.it-human-resources-labPage .topSec h2{
		line-height: 1.36;
		margin: 0 0 1.28205vw;

		grid-column: 1;
		grid-row: 2;
	}
	.it-human-resources-labPage .topSec .catch{
		margin-bottom: 2.5641vw;

		grid-column: 1;
		grid-row: 3;
	}
	.it-human-resources-labPage .topSec .text{
		font-size: 1.6rem;
		line-height: 1.87;

		grid-column: 1;
		grid-row: 4;
	}
	.it-human-resources-labPage .topSec .img{
		margin-bottom: 7.69231vw;

		grid-column: 1;
		grid-row: 1;
	}
	.it-human-resources-labPage .olPoint{
		max-width: 94.87179vw;
	}
	.it-human-resources-labPage .olPoint>li::before{
		margin-right: 7.17949vw;
		border-bottom: .25641vw solid #f4a100;
	}
	.it-human-resources-labPage .olPoint>li+li{
		margin-top: 5.64103vw;
	}
	.it-human-resources-labPage .modern{
		margin-top: 37.17949vw;
		padding-bottom: 29.48718vw;
	}
	.it-human-resources-labPage .modern .modernSecTitle{
		font-size: 3.8rem;
		line-height: 1.18;
	}
	.it-human-resources-labPage .modern .olPoint{
		margin-top: 12.82051vw;
	}
	.it-human-resources-labPage .modern .merit{
		margin-top: 17.94872vw;
	}
	.it-human-resources-labPage .ses{
		padding-bottom: 28.20513vw;
	}
	.it-human-resources-labPage .ses .sesTitle{
		font-size: 3.8rem;
		line-height: 1.18;
	}
	.it-human-resources-labPage .ses .olPoint{
		margin-top: 12.82051vw;
	}
	.it-human-resources-labPage .flow{
		padding-bottom: 23.07692vw;
	}
	.it-human-resources-labPage .flow .flowHeader{
		margin-bottom: 10.25641vw;
	}
	.it-human-resources-labPage .flow .flowHeader h2{
		font-size: 3.8rem;
		line-height: 1.18;
		margin-bottom: 2.05128vw;
	}
	.it-human-resources-labPage .flow .flowHeader p{
		font-size: 1.9rem;
		line-height: 1.31;
	}
	.it-human-resources-labPage .flow .polygonHeader::before,.it-human-resources-labPage .flow .polygonHeader::after{
		background: #e9eded;
	}
	/* ==========================================================================
   プライバシーポリシー
========================================================================== */
	.privacy-policyPage .pageMv{
		background-image: url('../../img/sp_privacy_mv_bk.jpg');
	}
	.privacy-policyPage .pageMv .pageTitle{
		padding-left: .3em;
		letter-spacing: .3em;
	}
	.privacy-policyPage .privacyMain{
		max-width: 94.87179vw;
		margin: 0 auto;
		padding-bottom: 25.64103vw;
	}
	.privacy-policyPage .privacyMain .enSecTitle{
		margin-bottom: 12.82051vw;
	}
	.privacy-policyPage .privacyMain p,.privacy-policyPage .privacyMain li{
		font-size: 1.6rem;
		line-height: 2.18;
	}
	.privacy-policyPage .topText{
		text-align: justify;
	}
	.privacy-policyPage .privacySec{
		margin-top: 15.38462vw;
		text-align: justify;
	}
	.privacy-policyPage .privacySec>h2{
		margin-bottom: 15.38462vw;
	}
	.privacy-policyPage .privacySec .innerSec{
		margin-top: 10.25641vw;
	}
	.privacy-policyPage .privacySec .innerSec>h2{
		font-size: 2.4rem;
		font-weight: 500;
		line-height: 1.45;
		margin-bottom: 10.25641vw;
	}
	.privacy-policyPage .privacySec .innerSec>*+*:not(.noMagin){
		margin-top: 10.25641vw;
	}
	.privacy-policyPage .contactSec address{
		font-style: normal;
		margin-top: 10.25641vw;
	}
	.privacy-policyPage .aboutSec{
		margin-top: 33.33333vw;
	}
	/*end*/
	.header{
		-ms-grid-column: 1;
		-ms-grid-row: 1;
	}
	.pageContainer{
		-ms-grid-column: 1;
		-ms-grid-row: 2;
	}
	.endNaviBox{
		-ms-grid-column: 1;
		-ms-grid-row: 3;
	}
	.footer{
		-ms-grid-column: 1;
		-ms-grid-row: 4;
	}
}
@media only screen and (max-width: 481px){
}

.menuBar{
	font-size: 1.7rem;
	font-weight: 500;
	display: grid;
	padding: 10px 0 10px;
	color: #000;
	background: #E9EDED;

	grid-template-columns: minmax(20px,1fr) 1100px minmax(20px,1fr);
}
.menuBar::before{
	content: '';

	grid-column: 1;
}
.menuBar::after{
	content: '';

	grid-column: 3;
}
.menuBar ul{
	display: flex;

	grid-column: 2;
}
.menuBar ul li:not(:last-child)::after{
	padding: 0 .2em;
	content: '/';
}
.menuBar a{
	color: #000;
}
@media only screen and (max-width: 767px){
	.menuBar{
		font-size: 1.4rem;
		font-weight: 400;
		padding: 2.5641vw 0 20.51282vw;

		grid-template-columns: 2.5641vw 1fr 2.5641vw;
	}
	.menuBar ul li:not(:last-child){
		flex-shrink: 0;
	}
}

.newsPage, .newCategoryPage {
	background:#E9EDED;
}

.newsPage .banner {
	display: flex;
	justify-content: center;
}

.newsCategoryPage .banner {
	display: block;
}

.newsPage .news-categories ul {
	list-style: none;
	padding: 10px 0;
}

.newsPage .news-categories ul li {
	display: inline-block;
	padding-right: 10px;
	padding-bottom: 10px;
}

.newsPage .news-categories ul li a{
	text-decoration: none;
}


.newsPage .news-categories ul li a span{
	text-decoration: none;
	font-size: 1.6rem;
    font-weight: 500;
    display: grid;
    min-width: 112px;
    min-height: 32px;
    padding: 3px 25px;
    word-break: break-all;
    color: #000;
    border-radius: 30px;
    background: #fff;
    place-content: center;
}


.newsPage .news-categories ul li a span.active{
	color: #fff;
    background: #f4a100;
}

.newsPage .summary-category {
	position: absolute;
	top: 10px;
	left: 10px;
	background: rgba(0, 0, 0, 0.6) !important;
	color: #fff;
	font-size: 15px;
}

.newsPage .news-summary-thumnail {
	width: 100%;
    height: 185px;
    object-fit: cover;
}

.show-1-lines{
	line-height: 1.5em;
    min-height: 1.5em;
	width: 100%;
	overflow: hidden;
    display: -webkit-box;
   -webkit-line-clamp: 1;
           line-clamp: 1; 
   -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
}

.show-2-lines{
	line-height: 1.5em;
    min-height: 3em;
	width: 100%;
	overflow: hidden;
    display: -webkit-box;
   -webkit-line-clamp: 2;
           line-clamp: 2; 
   -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
}

.show-3-lines{
	line-height: 1.5em;
    min-height: 4.5em;
	width: 100%;
	overflow: hidden;
    display: -webkit-box;
   -webkit-line-clamp: 3;
           line-clamp: 3; 
   -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
}

.show-4-lines{
	line-height: 1.5em;
    min-height: 6em;
	width: 100%;
	overflow: hidden;
    display: -webkit-box;
   -webkit-line-clamp: 4;
           line-clamp: 4; 
   -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
}

.newsPage .news-summary-body {
	padding: 25px;
}

.newsPage .news-summary-title {
	line-height: 1.5em;
    min-height: 3em;
	overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
	font-size: 17px;
	font-weight: 700;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.newsPage .news-summary-item .card {
	border: none;
}
.newsPage .news-summary-item .card::after{
	width: 0px;
    height: 0px;
    background: #fff;
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    border-top: 15px solid white;
    border-right: 15px solid rgb(233, 237, 237);
    border-left: 15px solid white;
    border-bottom: 15px solid rgb(233, 237, 237);
}

.newsPage .news-summary-content {
	line-height: 1.5em;
    min-height: 6em;
    font-size: 15px;
    font-weight: 400;
	overflow: hidden;
    display: -webkit-box;
   -webkit-line-clamp: 4;
           line-clamp: 4; 
   -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
	margin-top: 16px;
}

.newsPage .news-summary-date {
	line-height: 1.5em;
    height: 1.5em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
	font-size: 15px;
	font-weight: 500;
	color: rgba(0, 0, 0, 1);
}

.newsPage .newsPage-content .widget_block{
	display: contents;
}

.newsPage .newsPage-content .banner img{
	width: 100%;
	object-fit: cover;
}
.newsPage .newsPage-content-wrap{
	display: flex;
	justify-content: center;
}
.newsPage .newsPage-content{
	max-width: 1100px;
}
.newsPage .newsPage-header{
	background:rgba(48, 57, 62, 1);
	margin-top: 80px;
}

.admin-bar .newsPage .menuBar{
	margin-top: -32px;
}

.newsPage .menuBar {
	background: transparent;
	color: rgba(141, 141, 141, 1);
	font-size: 15px;
	font-weight: 500;
	padding: 15px 0px 15px;
}

.newsPage .menuBar a{
	color: rgba(141, 141, 141, 1);
}

.newsPage .top-slide{
	background:rgba(48, 57, 62, 1);
	padding: 0px 15px 15px 10px;
}

.newsPage .top-slide .card-title{
	font-size: 25px;
	font-weight: 700;
	color: rgba(0, 0, 0, 1);
}
.newsPage a{
	text-decoration: none;
}

.newsPage .pagenation .prev, .newsPage .pagenation .next {
	background: rgba(187, 198, 198, 1);
	color: #000;
}


.newsPage .pagenation .prev .animeBtn{
	background: rgba(187, 198, 198, 1);
	color: #000;
}

.newsPage .pagenation .prev .animeBtn::before{
	background: rgba(187, 198, 198, 1);
	color: #000;
}

.newsPage .pagenation .next .animeBtn{
	background: rgba(187, 198, 198, 1);
	color: #000;
}

.newsPage .pagenation .next .animeBtn::before{
	background: rgba(187, 198, 198, 1);
	color: #000;
}

.newsPage .pagenation .select{
	background: rgba(211, 222, 222, 1);
	color: #000;
}

.newsPage .pagenation .select .label{
	background-color: rgba(211, 222, 222, 1);
	color: #000;
}

.newsCategoryPage {
	max-width: 1100px;
	width: 100vw;
	margin-top: 80px;
}

.newsCategoryPage .menuBar-list {
	text-decoration: none;
}

.bg-news-main{
	background: #E9EDED;
}

.newsCategoryPage .newsTitle-page{
	font-size: 35px;
	font-weight: 900;
	color: rgba(0, 0, 0, 1);
}

.newsCategoryPage .newsCategoryPage-item .news-summary-item{
	height: 234px;
}

.newsCategoryPage .news-summary-thumnail {
    width: 100%;
    height: 234px;
    object-fit: cover;
}

.newsCategoryPage .news-summary-body {
    height: 234px;
}

.newsCategoryPage .carousel-indicators{
	bottom: -30px;
}

.newsCategoryPage .carousel-indicators button{
	background-color: rgba(187, 198, 198, 1);
}

.newsCategoryPage .carousel-indicators button.active{
	background-color: rgba(108, 143, 162, 1);
}

.newsCategoryPage .carousel-indicators .news-summary-content {
	line-height: 1.5em;
    min-height: 6em;
    font-size: 15px;
    font-weight: 400;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
    position: relative;
    z-index: 10;
    padding-top: 16px;
}

.newsCategoryPage .widget_tag_cloud{
	padding-top: 30px;
}
.newsCategoryPage .wp-block-tag-cloud .tag-cloud-link {
	font-size: 1.6rem;
    font-weight: 500;
    min-width: 70px;
    min-height: 32px;
    padding: 10px;
    word-break: break-all;
    color: #000;
    border-radius: 30px;
    background: #fff;
    place-content: center;
	text-align: center;
	margin-bottom: 10px;
}

.singleHeader {
	border-bottom: 1px solid #E9EDED;
}

.button-metting{
	position: fixed;
	right: 0;
	bottom: 200px;
	background-color: #F4A100;
	border-radius: 50px 0px 0px 50px;
	width: 222px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999 !important;
}

.button-metting a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}

.button-metting a .icon {
	width: 32px;
	height: 32px;
}

.button-metting a .text {
	font-size: 18px;
	margin-left: 10px;
}