@charset "UTF-8";

/* reset */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
body {line-height:1;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
nav ul{list-style:none;}
blockquote, q{quotes:none;}
blockquote:before, blockquote:after,q:before, q:after { content:'';content:none;}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{text-decoration: line-through;}
abbr[title], dfn[title]{border-bottom:1px dotted;cursor:help;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
input, select{vertical-align:middle;}

/*======================================
	カスタムプロパティ
======================================*/
:root {
	
	--headerMargin: 61px;
	--fontawesome: "Font Awesome 7 Free";
	--fontawesomeBrands: "Font Awesome 7 Brands";
	--sidePadding: 20px;

	--colorPurple01:	#ffcffd; 	/* 薄い(紫) */
	--colorPurple02:	#ed9ae9; 	/* ちょっと薄い(紫) */
	--colorPurple03:	#8C1789; 	/* 濃い(紫) */


	--colorBlue01:		#d1fdff; 	/* 薄い(青) */
	--colorBlue02:		#69d6db; 	/* ちょっと薄い(青) */
	--colorBlue03:		#43989c; 	/* 濃い(青) */
	--colorBlue04:		#006499;	/* 青 - 04 */

	--colorYellow01:	#fffcc9; 	/* 黄色 - 01 */
	--colorYellow02:	#faff6b; 	/* 黄色 - 02 */
	--colorYellow03:	#fff424; 	/* 黄色 - 03 */
	
	--colorYellow04:	#ffd82b; 	/* 黄色 - 04 */
	--colorYellow05:	#ebe013;	/* 黄色 - 05 */
	
	--colorYellow06:	#ffe226;	/* 黄色 - 06 */
	--colorYellow07:	#fdffb8;	/* 黄色 - 07 */



	--colorGreen01:		#65AD05;	/* 緑 - 01 */
	--colorGreen02:		#f3ffde;	/* 緑 - 02 */
	--colorGreen03:		#62a608;	/* 緑 - 03 */
	--colorGreen04:		#3f6e00;	/* 緑 - 04 */
	
	
	
	--colorRed01:		#f00000;	/* 赤 - 01 */

	
	
	--colorBrown01:		#450500;	/* 茶色01 */
	
	--colorOrange01:	#ffa930;	/* オレンジ */
	--colorOrange02:	#f8e7bc;	/* 薄いオレンジ  */
	--colorOrange03:	#fcb100;	/* 濃いオレンジ  */

	--colorCaution01:	#feffeb;	/* 注意書き01 */
	--colorCaution02:	#fffde3;	/* 注意書き02 */

	
	
	/* 優先順位 */
	--priorityHeader:		51;
	--prioritySpnavi:		51;
	--priorityNavi:			50;
	--priorityContentWrap:	10;
	--priorityMainVisual:	11;

	/* リンク内スクロールをした時 */
	scroll-behavior: smooth;

}


/*======================================
	基本スタイル
======================================*/
html {
	font-size: 62.5%;
}

body {
	color: #333;
	
	height: 100%;
	line-height: 1.4;
	font-size: 1.4rem;
	letter-spacing: 0.02rem;

	overflow-wrap: anywhere;

	margin: 0;
	
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

body, textarea, input, pre {
	font-family: 'Noto sans JP', serif;
	font-weight: 400;
}

.fsetSerif {
	font-family: 'Noto Serif JP', serif;
}


*, *::before, *::after {
	box-sizing: border-box;
}

a { text-decoration: none; }

ul { margin: 0; padding: 0; }

p {
	margin: 0;
	padding: 0;
	font-size: 3.8vw;
	line-height: 1.4;
}

sup {
	vertical-align: super;
	font-size: small;
}

li {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}

/* 高さを中心にする */
img.img_bottom {
	width: auto;
	height: 100%;
}


.nblur {
	-webkit-backface-visibility: hidden;
}

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; }


/*======================================
	debug
======================================*/
.debug {
}

.debug .disp {
	position: fixed;
	font-size: .8rem;
	width: 200px;
	height: 100px;
	background: #eee;
	bottom: 50px;
	
	z-index: 10000;
}

/*
.line1,
.line2 {
	position: fixed;
	width: 100%;
}

.line1 { border-top: 1px #f00 solid; }
.line2 { border-top: 1px #00f solid; }

*/

/*======================================
	breadcrumb
======================================*/
#breadcrumbList {
	position: relative;
	color: #000;
	background: #fff;
	padding: 10px 5px;
}

#breadcrumbList .cMiddle {
	padding: 0;
}


/* リスト親 */
#breadcrumbList .list {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	width: 100%;
	padding: 6px 0;
	overflow-x: auto;
}

/* スクロールバー設定 */
#breadcrumbList .list::-webkit-scrollbar {
	height: 7px;
}

#breadcrumbList .list::-webkit-scrollbar-track {
	background: #ccc;
	border-radius: 10px;
}

#breadcrumbList .list::-webkit-scrollbar-thumb {
	background: #999;
	border-radius: 10px;
}



#breadcrumbList .list .item {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
}



#breadcrumbList .list .item:not(:last-of-type):after {
	content: "\f054";
	font-weight: bold;
	font-size: 3.4vw;
	line-height: 1;
	padding: 0 10px;
}


#breadcrumbList .list .item a {
	padding: 0;
	color: #000;
	font-size: 4.0vw;
}

#breadcrumbList .list .item span {
	white-space: nowrap;
}




/*======================================
	トップページへのリンク
======================================*/
.topLink {
	position: fixed;
	width: 50px;
	height: 50px;
	background: rgba( 33, 33, 33, .6 );
	bottom: 20px;
	right: -50px;
	border-radius: 5px;
	cursor: pointer;
	z-index: 98;
}

.topLink span {
	display: block;
	position: absolute;
	font-size: 2.6rem;
	color: #fff;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	text-align: center;
}

.animeTopLink1 {
	animation: animeTopLink1 .6s forwards;
}

.animeTopLink2 {
	animation: animeTopLink2 .6s forwards;
}


@keyframes animeTopLink1 {
	0% {
		opacity: 0;
		transform: translateX(0);
		-webkit-transform: translateX(0);
	}
	
	100% {
		opacity: 1;
		transform: translateX(-70px);
		-webkit-transform: translateX(-70px);
	}
	
}


@keyframes animeTopLink2 {
	0% {
		opacity: 1;
		transform: translateX(-70px);
		-webkit-transform: translateX(-70px);
	}
	
	100% {
		opacity: 0;
		transform: translateX(0);
		-webkit-transform: translateX(0);
	}
	
}



/*======================================
	アイコン設定
======================================*/

/* 疑似要素設定 */
.iconfas::before,
.iconfas::after,
.iconfas *::before,
.iconfas *::after,
.iconfas_b *::before,
.iconfas_f *::after {
	font-family: var( --fontawesome );
}


/* 疑似要素設定 */
.gicon::before,
.gicon::after,
.gicon *::before,
.gicon *::after,
.gicon_b *::before,
.gicon_f *::after {
	font-family: 'Material Icons';
}


/*======================================
	マージン
======================================*/
.mt10 { margin-top: 10px; }
.mt20 { margin-top: 20px; }
.mt30 { margin-top: 30px; }
.mt50 { margin-top: 50px; }
.mt80 { margin-top: 80px; }

.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb50 { margin-bottom: 50px; }
.mb80 { margin-bottom: 80px; }

/*======================================
	画像の比率設定
======================================*/

/* 4:3 */
[class*="img-ratio"] {
	position: relative;
	display: block;
	width: 100%;
}

[class*="img-ratio"] img {
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
}

[class*="img-ratio"]::before {
	content: "";
	display: block;
}

/* 4:3 */
.img-ratio01::before { padding-top: 75%; }

/* 16:9 */
.img-ratio02::before { padding-top: 56.25%; }


/*======================================
	コンテンツ調整
======================================*/
.cMiddle {
	padding: 0 10px;
}

.cMiddle.padding01 { padding-top: 50px; padding-bottom: 50px; }


[id*="content-"] {
	padding-bottom: 16vw;
}

.firstPadding {
	padding-top: 5vw;
}


/*======================================
	コメントボックス
======================================*/
[class*="commentBox"] p {
	font-size: 4.2vw;
}

[class*="commentBox"] .mb {
	margin-bottom: 3vw;
}

[class*="commentBox"] .spmb {
	margin-bottom: 10px;
}

/* 自動マージン */
[class*="commentBox"].automb p:not(:last-child) {
	margin-bottom: 15px;
}

/*================================================
	ページ上部へ移動するボタン
=================================================*/
.jumpScroll {
	position: fixed;
	display: block;
	width: 60px;
	height: 60px;
	background: rgba( 33, 33, 33, .6 );
	right: -80px;
	bottom: 96px;
	cursor: pointer;
	z-index: 50;
	
	border: 2px #fff solid;
	border-radius: 50%;
	transition: .4s;
}

.jumpScroll.show {
	transform: translateX(-100px);
}

.jumpScroll::before {
	position: absolute;
	content: "\f062";
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50% );
	color: #fff;
	font-size: 3.0rem;
	font-family: var( --fontawesome );
	font-weight: bold;

}



/*======================================
	flexbox
======================================*/
.fbox {
	display: flex;
}


/*======================================
	サブコメントボックス
======================================*/
.subComment {
	border: 1px #aaa dotted;
	padding: 10px 20px;
	background: #fffbe3;
	
	border-radius: 5px;
}


/*======================================
	中央
======================================*/
.posMid {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

/*======================================
	その他
======================================*/
/* 表示,非表示 */
.chide { visibility: hidden; }
.cshow { visibility: visible; }

/* SPのみ表示 */
.pconly { display: none; }


/* font */
.fset01 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
}

.blank {
	width: 100%;
	height: 100%;
	background: #fff;
}



/*---------------------------
　矢印
---------------------------*/

/* arrow01 */

.arrow01::before {
	position: absolute;
	content: "\f105";
	color: #f00;
	font-weight: bold;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	transition: .4s;
}

.arrow01:hover:before {
	transform: translate(5px, -50%);
}

/* color */

/* 赤系 */
.sr00 { color: #f22; }

/* 青系 */
.sb00 { color: #00c; }

/* オレンジ系 */
.so00 { color: #ff9500; }

.tshadow01 {
	text-shadow: 1px 1px 1px #000 ;
}

/* 太字 */
.bold {
	font-weight: bold;
}


/* 改行 */
.br,
.spbr { display: block; }

/* SPでは非表示 */
.pcbr,
.spHide { display: none; }
/*======================================
	コンテンツの最後
======================================*/
.endbg {
	display: none;
	position: relative;
	width: 100%;
}

.endbg::before {
	display: block;
	content: "";
	padding-top: 16.16%;
}


.endbg::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
*	background: url( "../img/endbg01.png" ) no-repeat;
	background-size: cover;
	top: 0;
	left: 0;
	
}



/*======================================
	ヘッダー
======================================*/
header {
	position: sticky;
	top: 0;
	left: 0;
	height: 58px;
	z-index: var(--priorityHeader);

}

/* wrapper */
header .headerWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	
	width: 100%;
	height: 100%;
	background: #fff;
	box-shadow: 0 1px 6px #333;
}

/* タイトル */
header .title {
	position: relative;
	height: 100%;

}

/* ロゴ領域 */
header .title .logo {
	width: auto;
	height: 100%;
	padding: 2px 2px;

}


/*======================================
	メニューボタン
======================================*/

/* メニューボタン wrapper */
.menuButtonWrap {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	
	width: 46px;
	height: 86%;
	text-align: center;
	cursor: pointer;
	margin-right: 10px;
}

.menuButtonWrap.head {
	margin-right: 10px;
}


/* メニューボタンコンテナ */
.menuButtonWrap .iconContainer {
	position: relative;
	display: flex;
	align-items: center;
	position: relative;
	width: 100%;
	height: 30px;
	margin: 0 0;
}

/* メニューアイコン(2) - メイン */
.menuButtonWrap .iconContainer .menuIcon {
	position: relative;
	width: 34px;
	height: 2px;
	margin: auto;
	background: #333;
}

.menuButtonWrap .iconContainer .menuIcon::before,
.menuButtonWrap .iconContainer .menuIcon::after {
	position: absolute;
	content: "";
	width: 34px;
	height: 2px;
	background: #333;
	left: 0;
	right: 0;
	margin: auto;
}

.menuButtonWrap .iconContainer .menuIcon::before {
	top: -10px;
}

.menuButtonWrap .iconContainer .menuIcon::after {
	top: 10px;
}



/* ラベル */
.menuButtonWrap .name::before {
	content: "MENU";
	font-size: 1.4rem;
}



/* 上のライン */
.menuButtonWrap.open .icon .menuIcon::before { animation: animeSpMenu1 .6s forwards; }
.menuButtonWrap.close .icon .menuIcon::before { animation: animeSpMenu1c .6s forwards; }
				
/* 真ん中のラインのアニメーション変更 */
.menuButtonWrap.header.open .icon .menuIcon { animation: animeSpMenu2_header .6s forwards; }
.menuButtonWrap.header.close .icon .menuIcon { animation: animeSpMenu2c_header .6s forwards; }

.spNaviContainer .menuButtonWrap.open .icon .menuIcon { animation: animeSpMenu2 .6s forwards; }
.spNaviContainer .menuButtonWrap.close .icon .menuIcon { animation: animeSpMenu2c .6s forwards; }


/* 下のライン */
.menuButtonWrap.open .icon .menuIcon::after { animation: animeSpMenu3 .6s forwards; }
.menuButtonWrap.close .icon .menuIcon::after { animation: animeSpMenu3c .6s forwards; }


/* animation - ヘッダーのライン(中) */
@keyframes animeSpMenu2_header {
	0% { background: #000; }
	100% { background: rgba( 255, 255, 255, 0 ); }
}

@keyframes animeSpMenu2c_header {
	0% { background: rgba( 255, 255, 255, 0 ); }
	100% { background: #000; }
}

/* animation - スマホメニューのライン(中) */
@keyframes animeSpMenu2 {
	0% { background: #fff; }
	100% { background: rgba( 255, 255, 255, 0 ); }
}

@keyframes animeSpMenu2c {
	0% { background: rgba( 255, 255, 255, 0 ); }
	100% { background: #fff; }
}


/* animation - ライン(上) */
@keyframes animeSpMenu1 {
	0% { transform: translateY(0) rotate( 0deg ); }
	100% { transform: translateY(10px) rotate( 405deg ); }
}

@keyframes animeSpMenu1c {
	0% { transform: translateY(10px) rotate( 405deg ); }
	 100% { transform: translateY(0) rotate( 0deg ); }
}

/* animation - ライン(下) */
@keyframes animeSpMenu3 {
	0% { transform: translateY(0) rotate( 0deg ); }
	100% { transform: translateY(-10px) rotate( -405deg ); }
}

@keyframes animeSpMenu3c {
	0% { transform: translateY(-10px) rotate( -405deg ); }
	100% { transform: translateY(0) rotate( 0deg ); }
}







/*======================================
	下部ナビ
======================================*/
.spNaviContainer {
	position: fixed;
	background: var(--colorPurple03);
	width: 100%;
	height: 74px;
	bottom: 0;
}

/* ボタンリストコンテナ */
.spNaviContainer .list {
	display: flex;
	justify-content: space-between;
	height: 100%;
	padding: 8px 0;
}

.spNaviContainer .list .button {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 33%;
	color: #fff;
	text-align: center;
}

.spNaviContainer .list .button .icon {
	height: 30px;
}


/* アイコン */
.spNaviContainer .list .button .icon::before {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #fff;
	font-size: 3.0rem;
	line-height: 1;
}

/* ラベル */
.spNaviContainer .list .button .label::before {
	font-size: 1.6rem;
}


/* 電話 */
.spNaviContainer .list .tel .icon::before { content: "\f095"; }
.spNaviContainer .list .tel .label::before { content: "お電話"; }

/* メール */
.spNaviContainer .list .mail .icon::before { content: "\f0e0"; }
.spNaviContainer .list .mail .label::before { content: "求人応募"; }

/* メニュー */
.spNaviContainer .list .menuButtonWrap .label::before { content: "メニュー"; }


.spNaviContainer .list .button.menuButtonWrap {
	height: 100%;
}

/* 3本線アイコン */
.spNaviContainer .list .button .iconContainer {
	height: 30px;

}

/* 真ん中のライン */
.spNaviContainer .list .button .iconContainer .menuIcon {
	width: 34px;
	background: #fff;
}

/* 上下のライン */
.spNaviContainer .list .button .iconContainer .menuIcon::before,
.spNaviContainer .list .button .iconContainer .menuIcon::after {
	width: 34px;
	background: #fff;
}


/*======================================
	メニュー
======================================*/
header .navi {
	position: fixed;
	top: 58px;
	left: 0;
	width: 100%;
	height: 120%;
	visibility: hidden;
	z-index: -1;
}

/* openが付与されたら表示 */
header .navi.open {
	visibility: visible;
}


/* 背景色 */
header .bglayer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	
	/* opacityで暗転処理するとちょっとおかしいので rgba指定 */
	background: rgba( 0, 0, 0, 0 );
	
	/* visibilityも自動でタイミングが合うらしい。 */
	transition: .4s;
}

/* 背景を暗くする */
header .open .bglayer {
	background: rgba( 0, 0, 0, .7 );
}


/* メニューコンテナ */
header .navi .nwrap {
	position: relative;
	width: 60%;
	height: 100%;
	top: 0;
	left: -60%;
	z-index: 1;
	transition: .4s;
}

/* animation - open */
header .navi.open .nwrap { transform: translateX(100%); }

/* animation - close */
header .navi.close .nwrap { transform: translateX(0); }



/* メニューコンテナ */
header .navi .menuContainer {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-top: 10px;
	background: #fff;
	overflow-y: auto;
}

/* 各メニュー */
header .navi .menuContainer .item {
	position: relative;
}

/* 先頭に持ってくる */
header .navi .menuContainer .item.n01,
header .navi .menuContainer .item.n02 {
	order: -1;
	margin: 0;
	padding: 0;
}

/* 子要素がある見出し */
header .navi .menuContainer .item .str {
	color: #fff;
	font-size: 3.8vw;
	padding: 6px 10px;
	background: var(--colorBlue03);
}

/* サブメニューリスト */
header .navi .menuContainer .item .subItemContainer {
	padding: 0;
}

/* 各項目 */
header .navi .menuContainer .item .subItemContainer .subItem {
	font-size: 3.8vw;
}

/* 最後の要素以外は下線を付ける */
header .navi .menuContainer .item.n01 .link,
header .navi .menuContainer .item .subItem.uline,
header .navi .menuContainer .item .subItemContainer .subItem:not(:last-of-type) {
	border-bottom: 1px #aaa dotted;
}

/* リンクカラー */
header .navi .menuContainer .item .link {
	display: block;
	color: #333;
	padding: 10px 10px;
	background: none;
}


/*======================================
	エントリーボタン
======================================*/
header .entry {
	display: block;
	width: 110px;
	flex-shrink: 0;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
	background: var(--colorBlue03);
	padding: 16px 0;
	border-radius: 5px;
}


/*======================================
	サブページビジュアル
======================================*/
.subVisual {
	position: relative;
	background: #ddd;
}

.subVisual::before {
	display: block;
	content: "";
	padding-top: 43.75%;
}

.subVisual::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #333;
	top: 0;
	left: 0;
	opacity: .2;
	z-index: 1;
}



/* ページタイトルコンテナ */
.subVisual .nameContainer {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50% );
	padding: 0 5px;
	color: #fff;
	text-align: center;
	overflow: hidden;
	z-index: 2;
	text-shadow: 2px 2px #333;

}

/* セパレータ */
.subVisual .nameContainer::before {
	position: absolute;
	content: "";
	background: #fff;
	width: 0px;
	height: 1px;
	top: 4vw;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	
	box-shadow: 2px 2px #3080ff;
	box-shadow: 2px 2px #333;

}

/* animation - セパレータ */
.subVisual.start .nameContainer::before {
	animation: animSubVisualSeparator .6s forwards;
}

@keyframes animSubVisualSeparator {
	0% { width: 0; }
	100% { width: 100%; }
}

/* ja */
.subVisual .nameContainer .ja {
	position: relative;
	white-space: nowrap;
	font-size: 6.8vw;
	letter-spacing: .2vw;
	padding: 5px 0;
	opacity: 0;
	
}

/* animation - ja */
.subVisual.start .nameContainer .ja {
	animation: animSubVisualJa .6s .5s forwards;
}


@keyframes animSubVisualJa {
	0% { opacity: 0; transform: translateY(-100%); }
	100% { opacity: 1; transform: translateY(0); }
}

/* en */
.subVisual .nameContainer .en {
	position: relative;
	font-size: 4.2vw;
	font-weight: normal;
	padding: 5px 0;
	opacity: 0;
}

/* animation - en */
.subVisual.start .nameContainer .en {
	animation: animSubVisualEn .6s .5s forwards;
}

@keyframes animSubVisualEn {
	0% { opacity: 0; transform: translateY(100%); }
	100% { opacity: 1; transform: translateY(0); }
}



/*======================================
	基本コンテンツ
======================================*/
[class*="content-"] {
}

/* コンテンツ wrapper */
[class*="content-"] .contentWrap {
	position: relative;
	padding: 20px 10px;
	z-index: var(--priorityContentWrap)
}


.commentContainer {
	padding: 10px 10px;
	margin: 30px 0 50px;
*	border-radius: 10px;
*	background: rgba( 255, 255, 255, .5 );
}


.commentContainer p {
	font-size: 4.4vw;
	line-height: 1.5;
}

.commentContainer p:not(:last-of-type) {
	margin-bottom: 16px;
}

/*======================================
	ファーストコメント
======================================*/
.commentBox.firstComment {
	padding: 26px 16px;
}

.commentBox.firstComment p {
	font-size: 4.4vw;
}


/*======================================
	中間応募セクション
======================================*/
.content-applybox {
	position: relative;
	display: flex;
	align-items: center;
	padding: 0;
	border-top: 1px #aaa solid;
	border-bottom: 1px #aaa solid;
}

/* 色付け */
.content-applybox::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: linear-gradient( to bottom right, #DFEAC9 0, rgba( 255, 255, 255, 1 ) 40%, rgba( 255, 255, 255, 1 ) 60%, #DFEAC9 100%  );
}


/* 中央寄せ */
.content-applybox .cMiddle {
	position: relative;
	height: 100%;
	padding: 40px 0;
	z-index: 1;
}

/* 女性 */
.content-applybox .cMiddle::before {
	position: absolute;
	content: "";
	
	width: 33vw;
	height: 37vw;
	
	left: 10px;
	bottom: 0;
	background: url( "../img/female01.png" ) no-repeat;
	background-size: contain;
	
	opacity: 0;
	z-index: 1;
	
}

/* animation - 女性 */
.content-applybox .cMiddle.start::before {
	animation: animApplyboxFemale 1s forwards;
}

@keyframes animApplyboxFemale {
	0% { opacity: 0; transform: translateX(20px); }
	100% { opacity: 1; transform: translateX(0); }
	
}

/* コメント */
.content-applybox .comment {
	margin: 0 10px 14vw;
}

/* 文字サイズ */
.content-applybox .comment p {
	font-size: 4.4vw;
}


/* wrapper */
.content-applybox .applyWrap {
}

.content-applybox .applyWrap .applyContainer {
	width: 70%;
	margin-left: auto;
}


.content-applybox .applyWrap .applyContainer .apply .title {
	font-size: 4.2vw;
	text-align: center;
	margin-bottom: 10px;
}


.content-applybox .applyWrap .applyContainer .button {
	display: block;
	width: 70%;
	margin: auto;
	font-size: 4.4vw;
}

/*======================================
	応募案内
======================================*/
.content-entrySection {
	background: #efefef;
}

/* コンテンツ wrapper */
.content-entrySection .contentWrap {
*	padding: 0;
}

/* コンテンツ wrapper */
.content-entrySection .contentWrap .eContainer {
	position: relative;
	background: #fff;
	padding: 20px 15px;
	border-radius: 10px;
	margin: 0;
	
}

.content-entrySection .contentWrap .headerStyle03 .ja {
	font-size: 5.4vw;
}

.content-entrySection .contentWrap .headerStyle03 .en {
	font-size: 4.2vw;
	font-weight: normal;
}	

/* 問い合わせ方法 */
.content-entrySection .contentWrap .contactWrap {
	margin-top: 40px;
}

/* 各問い合わせボックス */
.content-entrySection .contactWrap .contact {
	margin-bottom: 20px;
}

/* タイトル */
.content-entrySection .contactWrap .title {
	color: #fff;
	font-size: 4.8vw;
	text-align: center;
	padding: 5px 0;
	background: var(--colorBlue03);
	margin-bottom: 16px;
}


/* コメントボックス */
.content-entrySection .contactWrap .contact .commentBox {
	margin-bottom: 30px;
}


/* 強調コメントボックス */
.content-entrySection .contactWrap .contact .caution {
	text-align: center;
	background: #fff7d4;
	padding: 10px 20px;
	margin: 20px 0 0;
}

/* 電話番号・リンクボックス */
.content-entrySection .contactWrap .contact .box {
	text-align: center;
	font-weight: bold;
}

/* 各メッセージ */
.content-entrySection .contactWrap .contact .box .msg {
	font-size: 4.4vw;
	line-height: 1.2;
	
}

/* 電話番号 */
.content-entrySection .contactWrap .contact .box .tel {
	font-size: 9.2vw;
	color: var(--colorBlue03);
	line-height: 1.4;
}

/* ボタンwrapper */
.content-entrySection .contactWrap .contact .buttonWrap {
	display: flex;
	justify-content: space-between;
}


.content-entrySection .contactWrap .contact .buttonWrap .box {
	width: 49%;
}

/* リンクボタン */
.content-entrySection .contactWrap .contact .buttonWrap .box .button {
	font-size: 3.7vw;
	padding: 12px 0;
	margin: auto;
}

/* 文字 */
.content-entrySection .contactWrap .contact .buttonWrap .box .button .link {
	color: #fff;
}




/*======================================
	フッター
======================================*/
footer {
	width: 100%;
	background: #333;
}

/* footer wrapper */
.footerWrap {
	width: var(--contentWidth);
	margin: auto;
	padding: 16px 10px 50px;
}

/* ロゴ */
.footerWrap .logo {
	width: 80%;
	margin: 0 auto 40px;
}


/*--------------------------------------
	情報コンテンツ
--------------------------------------*/

/* 情報 wrapper */
.footerWrap .contentWrap {
}



/*--------------------------------------
	共通
--------------------------------------*/
/* 文字色 */
.footerWrap .contentWrap p {
	color: #fff;
}

/*--------------------------------------
	施設情報
--------------------------------------*/
.footerWrap .contentWrap .infoConainer {
	margin-bottom: 40px;

}
/* 情報リスト */
.footerWrap .contentWrap .infoConainer .list {
}

.footerWrap .contentWrap .infoConainer .list .item {
	display: flex;
}

.footerWrap .contentWrap .infoConainer .list .item .name {
	width: 20%;
}

.footerWrap .contentWrap .infoConainer .list .item .value {
	width: 80%;
}


/*--------------------------------------
	セカンドコンテナ
--------------------------------------*/
.footerWrap .secondConainer {
}


.footerWrap .contentTitle {
	color: #fff;
	font-size: 4.2vw;
*	background: linear-gradient( to right, rgba( 255, 255, 255, .1 ) 0 , #fff 30%, #fff 70%, rgba( 255, 255, 255, .1 ) 100% );
*	background: linear-gradient( to right, #fff 0, #fff 30%, rgba( 255, 255, 255, 0 ) 100% );
	border-bottom: 1px #fff solid;
	padding: 4px 0;
	margin-bottom: 10px;
}


/*--------------------------------------
	サイトマップ
--------------------------------------*/
.footerWrap .sitemapContainer {
	margin-bottom: 40px;
}


.footerWrap .sitemapContainer .pageList {
	color: #fff;
}

/* 各ページ */
.footerWrap .sitemapContainer .item {
}

/* ルートページ */
.footerWrap .sitemapContainer .item .root {
	font-size: 3.8vw;
*	font-weight: bold;
}

/* リンク */
.footerWrap .sitemapContainer .item a {
	color: #fff;
	font-size: 3.8vw;
}


.footerWrap .sitemapContainer .item .subList {
*	padding-left: 10px;
}



/*--------------------------------------
	施設リスト
--------------------------------------*/
.footerWrap .facilityConainer {
}

/* 各施設一覧 */
.footerWrap .facilityConainer .facility {
	margin-bottom: 20px;
}

/* 種別 */
.footerWrap .facilityConainer .typeName {
	color: #333;
	background: #fff;
*	text-align: center;
	font-size: 3.8vw;
	margin-bottom: 5px;
	border-bottom: 1px #fff solid;
	padding: 2px 10px;
	border-radius: 5px;
	
}

.footerWrap .facilityConainer .list {
	padding: 0 3px;
}

/* 2列の場合 */
.footerWrap .facilityConainer .list.double {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.footerWrap .facilityConainer .list.double .item {
	width: 49%;
}

.footerWrap .facilityConainer .item a {
	color: #fff;
}



/*--------------------------------------
	画面最下部のCopyRight
--------------------------------------*/
footer .copyRight {
	background: var(--colorPurple03);
	padding: 4px 0;
	margin-bottom: 74px;
}

footer .copyRight p {
	color: #fff;
	font-size: 2.9vw;
	text-align: center;
}

footer .copyRight a {
	color: #fff;
}

/*======================================
	Header Style 01
======================================*/
.headerStyle01 {
	position: relative;
	height: 160px;
	height: 20vw;
	overflow: hidden;
}

/* ベース背景 */
.headerStyle01::before  {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	background: linear-gradient( to right, #ffe95e 0, #ffe95e 60%, #f2d100 );
	z-index: 1;
	
	opacity: 0;
}


/* animation - 01 */
.headerStyle01.start::before {
	animation: animHeaderStyle01a .6s forwards;
}

@keyframes animHeaderStyle01a {
	
	0% { opacity: 0; transform: translateX(100%); }
	100% { opacity: 1; transform: translateX(0); }
}


/* 丸い背景 */
.headerStyle01::after  {
	position: absolute;
	content: "";
	width: 60%;
	height: 400%;
	top: 50%;
	left: -10%;
	background: #fff08f;
	border-radius: 50%;
	transform: translateY(-50%);
	z-index: 1;
	box-shadow: 3px 3px 0 #ffdd08;
	opacity: 0;
}


/* animation - 02 */
.headerStyle01.start::after {
	animation: animHeaderStyle01b .6s .6s forwards;
}

@keyframes animHeaderStyle01b {
	0% { opacity: 0; transform: translate( -100%, -50%); }
	100% { opacity: 1; transform: translate( 0, -50%); }
}


/* 画像 */
x.headerStyle01 .wrap::before {
	position: absolute;
	content: "";
	width: 56%;
	height: 91px;
*	background: url( "../img/header_bg01.png" ) no-repeat;
	background-size: contain;
	z-index: 3;
	bottom: 0;
	right: 0;
	opacity: .6;
}

/* キャプション */
.headerStyle01 .nContainer {
	position: absolute;
	width: var(--contentWidth);
	height: 80%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 30px;
	margin: auto;
	font-weight: bold;
	z-index: 2;
}

/* セクション名 */
.headerStyle01 .nContainer .name {
	display: inline-block;
}

/* 日本語 */
.headerStyle01 .name .ja {
	font-size: 7.0vw;
	line-height: 1.4;
	opacity: 0;
}

/* animation - ja */
.headerStyle01.start .name .ja {
	animation: animHeaderStyle01c 1s 1.2s forwards;
}

@keyframes animHeaderStyle01c {
	0% { opacity: 0; transform: translateY( -30px ); }
	100% { opacity: 1; transform: translateY( 0 ); }
}


/* 先頭の文字 */
.headerStyle01 .name .ja::first-letter {
	color: #FF6D19;
	font-size: 8.2vw;
}


/* 英語名 */
.headerStyle01 .name .en {
	text-align: center;
	font-size: 4.2vw;
	line-height: 1.2;
	opacity: 0;
}


/* animation - en */
.headerStyle01.start .name .en {
	animation: animHeaderStyle01d 1s 1.2s forwards;
}

@keyframes animHeaderStyle01d {
	0% { opacity: 0; transform: translateY( 30px ); }
	100% { opacity: 1; transform: translateY( 0 ); }
}



/*======================================
	Header Style 02
======================================*/
.headerStyle02 {
	position: relative;
	z-index: 1;
}

.headerStyle02::before {
	position: absolute;
	content: "";
	width: 140px;
	height: 140px;

	width: 30vw;
	height: 30vw;

	background: linear-gradient( -45deg, var(--colorYellow06), #fff );
	border-radius: 50%;
	
	top :0;
	bottom: 0;
	left: 0;
	margin: auto;
	
	z-index: -1;
}


.headerStyle02 .wrap {
	position: relative;
	display: inline-block;
	padding-left: 8vw;
	z-index: 1;
}

.headerStyle02 .ja {
	font-size: 7.4vw;
	line-height: 1.2;
	letter-spacing: 0.2vw;
}

.headerStyle02 .ja:first-letter {
	color: #ff6d19;
	font-size: 10.6vw;
}


.headerStyle02 .en {
	font-size: 4.2vw;
	text-align: center;
	letter-spacing: 0.2vw;
	
}



/*======================================
	Header Style 03
======================================*/
.headerStyle03 {
	color: var(--colorBlue03);
	text-align: center;
}

/* ja */
.headerStyle03 .ja {
	position: relative;
	display: inline-block;
	font-size: 4.6rem;
	padding: 5px 20px;
}

/* ライン */
.headerStyle03 .ja:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background: var(--colorBlue03);
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

/* en */
.headerStyle03 .en {
	font-size: 2.4rem;
	padding: 5px 0;
}

/*======================================
	Header Style 04
======================================*/
.headerStyle04 {
	color: #fff;
	background: var(--colorBlue03);
	background: linear-gradient(
				to right,
				#377c80 0,
				var(--colorBlue03) 40%,
				var(--colorBlue03) 60%,
				#377c80 100%
			);
	text-align: center;
	padding: 20px 0;
	margin-bottom: 20px;
}

/* ja */
.headerStyle04 .ja {
	position: relative;
	display: inline-block;
	font-size: 7.0vw;
	padding: 5px 20px;
}

/* ライン */
.headerStyle04 .ja:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

/* en */
.headerStyle04 .en {
	font-size: 4.8vw;
	font-weight: normal;
	padding: 5px 0;
}
/*================================================
	押し込んだ表現
================================================*/
.pressButton {
	outline: none;
	box-shadow: 2px 2px  #333;
	background: linear-gradient( top, #eee 0%, #bbb 100% );
}

/* 押された時 */
.pressButton:active {
	box-shadow: 0 0 0 transparent;
	transform: translate( 2px, 2px );
}


/*================================================
	アンダーライン
================================================*/

/* 左右が透過 */
.uline01 {
	position: relative;
}

.uline01::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background: linear-gradient( to right, rgba( 255, 255, 255, 0 ) 0, #fff 10%, #fff 90%, rgba( 255, 255, 255, 0 ) 100% );
	left: 50%;
	bottom: 0;
	transform: translateX( -50% );
}

/*================================================
	ボタン等に光を走らせる
================================================*/
.effectReflection {
	position: relative;
	display: block;
	overflow: hidden;
}

.effectReflection::before {
	position: absolute;
	content: "";
	width: 40px;
	height: 100%;
	background: #fff;
	top: -50px;
	left: -80px;
	z-index: 1;
	animation: effectReflection 2.4s infinite;
}

@keyframes effectReflection {
	0% {
		opacity: 0;
		transform: scale(0) rotate( 30deg );
	}
	
	30% {
		opacity: 0;
		transform: scale(0) rotate( 30deg );
	}

	31% {
		opacity: 1;
		transform: scale(2) rotate( 30deg );
	}


	100% {
		opacity: 0;
		transform: scale(50) rotate( 30deg );
	}
}


@keyframes effectReflectionDelay {
	0% {
		opacity: 0;
		transform: scale(0) rotate( 30deg );
	}
	
	30% {
		opacity: 0;
		transform: scale(0) rotate( 30deg );
	}

	31% {
		opacity: 1;
		transform: scale(2) rotate( 30deg );
	}


	70% {
		opacity: 0;
		transform: scale(50) rotate( 30deg );
	}

	100% {
		opacity: 0;
		transform: scale(50) rotate( 30deg );
	}

}



/*================================================
	マーカーアニメーション
================================================*/
.effectMarker01 {
	background-image: linear-gradient(to right, #ffff00 50%, rgba( 255, 255, 255, 0 ) 50%);
	background-position: 100% 0;
	background-size: 200% auto;
	background-repeat: no-repeat;
}

@keyframes animeEffectMarker01 {
	0% { background-position: 100% 0; }
	100% { background-position: 0 0; }
}


/*================================================
　汎用アニメーション
================================================*/

/* beat */
@keyframes animBeat {
	0% { filter: drop-shadow( 0 0 0 #000 ); }
	100% { filter: drop-shadow( 0 0 12px rgba( 255, 255, 255, 0 ) ); }
}

/* fade in */
@keyframes animFadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/* fade out */
@keyframes animFadeOut {
	0% { opacity: 1; }
	100% { opacity: 0; }
}


/* 上から下へ移動 */
.effectMove01 {
	position: relative;
	animation: animeEffectMove01 1.6s forwards;
}

.effectInit01 {
	opacity: 0;
}

@keyframes animEffectMove01 {
	0% {
		opacity: 0;
		transform: translateY( -20px );
	}
	
	100% {
		opacity: 1;
		transform: translateY( 0 );
	}
}

/* zoom in */
@keyframes animZoomIn {
	0% { opacity: 0; transform: scale( .6, .6 ); }
	100% { opacity: 1; transform: scale( 1, 1 ); }
}


/*================================================
　縁取り
================================================*/
.tborder-white01 {
	text-shadow: #fff 2px 0px,
				 #fff -2px 0px,
				 #fff 0px -2px,
				 #fff 0px 2px,
				 #fff 2px 2px,
				 #fff -2px 2px,
				 #fff 2px -2px,
				 #fff -2px -2px,
				 #fff 1px 2px,
				 #fff -1px 2px,
				 #fff 1px -2px,
				 #fff -1px -2px,
				 #fff 2px 1px,
				 #fff -2px 1px,
				 #fff 2px -1px,
				 #fff -2px -1px;
}


.tborder-white02 {
	text-shadow: #fff 4px 0px,
				 #fff -4px 0px,
				 #fff 0px -4px,
				 #fff 0px 4px,
				 #fff 4px 4px,
				 #fff -4px 4px,
				 #fff 4px -4px,
				 #fff -4px -4px,
				 #fff 2px 4px,
				 #fff -2px 4px,
				 #fff 2px -4px,
				 #fff -2px -4px,
				 #fff 4px 2px,
				 #fff -4px 2px,
				 #fff 4px -2px,
				 #fff -4px -2px;
}



.tborder-black01 {
	text-shadow: #000 2px 0px,
				 #000 -2px 0px,
				 #000 0px -2px,
				 #000 0px 2px,
				 #000 2px 2px,
				 #000 -2px 2px,
				 #000 2px -2px,
				 #000 -2px -2px,
				 #000 1px 2px,
				 #000 -1px 2px,
				 #000 1px -2px,
				 #000 -1px -2px,
				 #000 2px 1px,
				 #000 -2px 1px,
				 #000 2px -1px,
				 #000 -2px -1px;
}



.tborder-black02 {
	text-shadow: #000 4px 0px,
				 #000 -4px 0px,
				 #000 0px -4px,
				 #000 0px 4px,
				 #000 4px 4px,
				 #000 -4px 4px,
				 #000 4px -4px,
				 #000 -4px -4px,
				 #000 2px 4px,
				 #000 -2px 4px,
				 #000 2px -4px,
				 #000 -2px -4px,
				 #000 4px 2px,
				 #000 -4px 2px,
				 #000 4px -2px,
				 #000 -4px -2px;
}

/*======================================
	Button コンテナ
======================================*/
.buttonContainer {
	text-align: center;
}


/*======================================
	Button Style 01
======================================*/
.buttonStyle01 {
	position: relative;
	display: block;
	color: #fff;
	font-size: 3.8vw;
	text-align: center;
	background: var(--colorBlue03);
	padding: 8px 10px;
	border-radius: 50px;
	
	cursor: pointer;
	transition: .4s;
}

.buttonStyle01:hover {
	background: #33afb5;
}

.buttonStyle01.arrow {
	padding: 10px 46px;
}

.buttonStyle01.arrow::after {
	position: absolute;
	content: "\f105";
	font-family: var(--fontawesome);
	font-weight: bold;
*	font-size: 1.8rem;
	right: 20px;
	transition: .3s;
	
}

.buttonStyle01.arrow:hover:after {
	transform: translateX(6px);
}


/*======================================
	Button Style 02
======================================*/
.buttonStyle02 {
	position: relative;
	display: block;
	color: #fff;
	font-size: 1.8rem;
	text-align: center;
	background: var(--colorBlue03);
	padding: 16px 0;
	border-radius: 5px;
	
	cursor: pointer;
	transition: .4s;
}

.buttonStyle02:hover:aftera {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	border: 1px #000 solid;
	left: 0;
	top :0;
*	animation: animBeat 1s infinite;
}

@keyframes animButtonStyle02 {
	
	0% { opacity: 1; transform: scale( 1, 1 ); }
	100% {  opacity: 0; transform: scale( 1.2, 1.2 ); }
	
}

/*======================================
	サブビジュアル
======================================*/
.subVisual {
	background: url( "../img/recruit_visual.webp" ) no-repeat;
	background-size: cover;
	background-position: center center;
}


/*======================================
	職種ボタン
======================================*/
.jobSelector {
	display: flex;
	justify-content: space-between;
}

.jobSelector .jButton {
	position: relative;
	background: #efefef;
	width: 24%;
	background: var(--colorGreen03);
	padding: 12px 0;
	cursor: pointer;
}

.jobSelector .jButton .name {
	position: relative;
	color: #fff;
	font-size: 3.9vw;
	text-align: center;
}


.jobSelector .jButton .name::after {
	position: relative;
	display: block;
	content: "▼";
	font-size: 2.6vw;
	font-weight: normal;
}


.jobSelector .jButton.now {
	background: #fff;
}
.jobSelector .jButton.now .name {
	color: #333;
	font-weight: bold;
}

/*======================================
	雇用タイプボタン
======================================*/
.typeSelector {
	display: flex;
	justify-content: center;
	padding: 20px 0;
	gap: 30px;
	margin-bottom: 20px;
}

.typeSelector .tButton {
	position: relative;
	background: #efefef;
	width: 30%;
	background: #ccc;
	padding: 10px 0;
	cursor: pointer;
	border-radius: 10px;
	
}

.typeSelector .tButton .name {
	position: relative;
	color: #fff;
	font-size: 4.2vw;
	text-align: center;
}

.typeSelector .tButton.now {
	background: #fff;
	background: var(--colorBlue03);
}
.typeSelector .tButton.now .name {
	color: #333;
	color: #fff;
	font-weight: bold;
}



/*======================================
	募集要項
======================================*/
.content-recruit {
	background: #efefef;
}


/* 募集要項 wrapper */
.content-recruit .recruitWrap {
	position: relative;
	background: #fff;
	padding: 20px 10px;
	overflow: hidden;
}


/* 各職種ごとのコンテナ */
.content-recruit .recruitWrap .jobContainer {
	position: relative;
}

/* 募集要項リスト */
.content-recruit .recruitWrap .jobContainer .commonInfo {
	margin-bottom: 80px;
}



/* 募集要項リスト */
.content-recruit .recruitWrap .jobContainer .itemList {
	position: relative;
}


/* 募集要項コンテナ */
.content-recruit .recruitWrap .item {
*	display: flex;
*	justify-content: space-between;
	margin-bottom: 5px;
}

/* 項目名 */
.content-recruit .recruitWrap .item .name {
*	display: flex;
*	align-items: center;
*	width: 27%;
	background: #f7f2ed;
	background: #e6e0da;
	padding: 5px 10px;
	border-radius: 5px;
}

/* 項目名文字 */
.content-recruit .recruitWrap .item .name p {
	color: #333;
	font-size: 4.4vw;
}


/* 詳細 */
.content-recruit .recruitWrap .item .detail {
*	width: 70%;
	padding: 20px 5px;
*	border-bottom: 1px dotted #333;
}

/* 基本文字 */
.content-recruit .recruitWrap .item .detail p {
	font-size: 4.4vw;
}

/* 文字間 */
.content-recruit .recruitWrap .item .detail p:not(:last-of-type) {
}


/* サブコンテナ */
.content-recruit .recruitWrap .item .detail .subBox:not(:last-of-type) {
	margin-bottom: 10px;
}

/* サブタイトル */
.content-recruit .recruitWrap .item .detail .subTitle {
	color: #007d99;
	font-weight: bold;
}

/* サブリスト */
.content-recruit .recruitWrap .item .detail .subList {
}

/* サブ項目 */
.content-recruit .recruitWrap .item .detail .subList .subItem {
}

/* サブ項目行間 */
.content-recruit .recruitWrap .item .detail .subList .subItem:not(:last-of-type) {
	margin-bottom: 5px;
}


/*--------------------------------------
	detail 共通設定
---------------------------------------*/

/* 横並び */
.content-recruit .recruitWrap .item .detail .grid {
	display: grid;
	grid-template-columns: 20% max-content;
	align-items: center;
	gap: 2px 16px;
}



.content-recruit .recruitWrap .item .detail .timeName {
	text-align: center;
	vertical-align: middle;
	color: #fff;
	font-size: 4.0vw;
	background: #00689c;
	padding: 2px 2px;
}

.content-recruit .recruitWrap .item .detail .workTime {
	text-align: center;
}


.content-recruit .recruitWrap .item .detail .textRight {
	text-align: right;
}

/*======================================
	職種の切り替え
======================================*/
.content-recruit .recruitWrap .jobContainer {
	position: absolute;
	visibility: hidden;
	top: 0;
	left: 0;
}

.content-recruit .recruitWrap .jobContainer.now {
	position: relative;
	visibility: visible;
}

/*======================================
	正社員・パートの切り替え
======================================*/
.content-recruit .recruitWrap .jobContainer .itemList {
	position: absolute;
	visibility: hidden;
	top: 0;
	left: 0;
	opacity: 0;
}


.content-recruit .recruitWrap .jobContainer .itemList.now  {
	position: relative;
	visibility: visible;
	animation: animFade .6s forwards;
}

@keyframes animFade {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
