/*============================================
ヘッダー
===========================================*/
header {
	transition: transform 0.5s 0.3s;
	background-color: rgba(255, 255, 255, 0.85);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	position: fixed;
	width: 100%;
	box-sizing: border-box;
	top: 0;
	left: 0;
	padding: 0.20rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	z-index: 10;
	min-width: 1080px;
}

@media screen and (max-width: 599px) {
	header {
		min-width: 100%;
	}
}

/* ヘッダーが上に消える */
header.hide {
	/* transform: translateY(-1.50rem); */
}

/* スクロールで表示された状態 */
header.scr {}

/* ロゴ */
header .logo {
	width: 2.00rem;
	position: relative;
}

@media screen and (max-width: 599px) {
	header .logo {
		width: 1.50rem;
		top: -0.03rem;
	}
}

header .logo img {
	display: block;
}

/* 年度 */
header .year_wrap {
	position: absolute;
	width: max-content;
	right: -2.50rem;
	bottom: 0;
	color: #8cc63f;
	font-size: 0.18rem;
	font-weight: 700;
}

@media screen and (max-width: 1180px) {
	header .year_wrap {
		right: -1.40rem;
		font-size: 0.15rem;
		bottom: 0.01rem;
	}
	header .year_wrap .year {
		display: block;
		padding-bottom: 0.05rem;
	}
}

@media screen and (max-width: 599px) {
	header .year_wrap {
		width: max-content;
		right: -1.10rem;
		color: #8cc63f;
		font-size: 0.12rem;
		bottom: 0;
	}
}


/* ナビゲーション */
header .glo_navi {
	padding-right: 2.00rem;
}

@media screen and (max-width: 1180px) {
	header .glo_navi {
		padding-right: 1.80rem;
	}
}

@media screen and (max-width: 599px) {
	header .glo_navi {
		padding: 0.20rem 0.30rem;
		position: absolute;
		top: 0.75rem;
		left: 0;
		width: 100%;
		box-sizing: border-box;
		display: none;
		background-color: rgba(0, 169, 157, 0.85);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}
}

header .glo_navi .list {
	display: flex;
	justify-content: flex-end;
}

@media screen and (max-width: 599px) {
	header .glo_navi .list {
		display: block;
	}
}

header .glo_navi .list .link {
	padding-left: 0.30rem;
}

@media screen and (max-width: 1180px) {
	header .glo_navi .list .link {
		padding-left: 0.20rem;
	}
}

@media screen and (max-width: 599px) {
	header .glo_navi .list .link {
		padding: 0.15rem 0;
	}
}

header .glo_navi .list .link a {
	font-size: 0.16rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	text-decoration: none;
	color: #222;
	position: relative;
}

@media screen and (max-width: 599px) {
	header .glo_navi .list .link a {
		color: #FFF;
	}
}

header .glo_navi .list .link a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #333;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

@media screen and (max-width: 599px) {
	header .glo_navi .list .link a::after {
		height: 1px;
		background: #FFF;
	}
}

header .glo_navi .list .link a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}

header .glo_navi .list .link a.active:after {
	transform-origin: left top;
	transform: scale(1, 1);
}

/* エントリーボタン */
header .entry_btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 1.80rem;
	height: 100%;
}

header .entry_btn a {
	background-color: #3aa999;
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	text-overflow: #FFF;
	font-size: 0.18rem;
	font-weight: 700;
	color: #FFF;
	position: relative;
}

header .entry_btn a:hover {
	background-color: #3fb5ea;
}

header .entry_btn a::after {
	content: "";
	width: 0.20rem;
	height: 0.08rem;
	background-image: url(../common/img/down_btn.svg);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0.10rem;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s;
}

header .entry_btn a:hover::after {
	bottom: 0.06rem;
}

header .entry_btn a span {
	position: absolute;
	text-align: center;
	width: 100%;
	left: 0;
	top: 45%;
	transform: translateY(-50%);
}

@media screen and (max-width: 599px) {
	header .entry {
		background-color: #FFF;
		margin: 0.20rem 0 0.25rem;
	}

	header .entry a {
		line-height: 0;
		display: block;
		padding: 0.24rem 0 0.28rem;
		color: #00a99d;
		text-decoration: none;
		text-align: center;
		font-size: 0.16rem;
		font-weight: 700;
	}
}

/*============================================
ムービーMV
===========================================*/
.mv_mov_wrap {
	width: 100%;
	height: calc(100vh - 1.00rem);
	max-height: 7.00rem;
	margin-top: 0.87rem;
	position: relative;
	overflow: hidden;
}

@media screen and (max-width: 599px) {
	.mv_mov_wrap {
		max-height: 4.00rem;
		margin-top: 0.75rem;
	}
}

.mv_mov_wrap video {
	display: block;
	position: absolute;
	width: 101%;
	z-index: 0;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

@media screen and (max-width: 599px) {
	.mv_mov_wrap video {
		width: auto;
		height: 100%;
	}
}

.mv_mov_wrap .catch_wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 8.00rem;
}

@media screen and (max-width: 599px) {
	.mv_mov_wrap .catch_wrap {
		max-width: 3.00rem;
	}
}

.mv_mov_wrap .catch_wrap .catch {
	padding-bottom: 0.50rem;
}

.mv_mov_wrap .catch_wrap .title {
	max-width: 5.50rem;
	margin: auto;
}

/* スクロールアイコン */
.mv_mov_wrap .scr {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	font-size: 0.14rem;
	font-family: 'Poppins', sans-serif;
	letter-spacing: 0.05em;
	color: #FFF;
	z-index: 2;
	padding-bottom: 0.60rem;
}

@media screen and (max-width:599px) {
	.mv_mov_wrap .scr {
		font-size: 0.10rem;
		padding-bottom: 0;
		bottom: 0.40rem;
	}
}

.mv_mov_wrap .scr .scrolldown-anime {
	width: 1px;
	height: 0.40rem;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	overflow: hidden;
}

@media screen and (max-width:599px) {
	.mv_mov_wrap .scr .scrolldown-anime {
		height: 0.30rem;
		bottom: -0.40rem;
	}
}

.mv_mov_wrap .scr .scrolldown-anime .line {
	width: 100%;
	height: 100%;
	display: block;
	background: linear-gradient(to bottom, white 50%, rgba(255, 255, 255, 0) 50%);
	background-position: 0 -0.40rem;
	background-size: 100% 200%;
	animation: scrolldown 1.2s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
}

@keyframes scrolldown {
	0% {
		background-position: 0 -0.40rem;
	}

	75% {
		background-position: 0 0;
	}

	100% {
		background-position: 0 0.40rem;
	}
}

@media screen and (max-width:599px) {
	@keyframes scrolldown {
		0% {
			background-position: 0 -0.30rem;
		}

		75% {
			background-position: 0 0;
		}

		100% {
			background-position: 0 0.30rem;
		}
	}
}

/*============================================
コンテンツ共通
===========================================*/
.ContBox {
	clear: both;
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.ContBox .sec_title {
	text-align: center;
	font-size: 0.24rem;
	letter-spacing: 0.10em;
	padding-bottom: 0.40rem;
	line-height: 1.5;
}

@media screen and (max-width: 599px) {
	.ContBox .sec_title {
		font-size: 0.16rem;
	}
}

.ContBox .sec_title strong {
	border-bottom: 2px solid #111;
	padding-bottom: 0.05rem;
	font-weight: 700;
}

@media screen and (max-width: 599px) {
	.ContBox {
		padding-top: 10%;
		padding-bottom: 10%;
	}
}

/*============================================
私たちについて
===========================================*/
#p01.ContBox {
	background: #FFF;
	padding-top: 0.80rem;
}

#p01.ContBox .catch {
	padding-bottom: 0.50rem;
	text-align: center;
}

#p01.ContBox .catch img {
	width: 100%;
	max-width: 4.00rem;
	display: block;
	margin: auto;
}

@media screen and (max-width: 599px) {
	#p01.ContBox .catch img {
		max-width: 2.50rem;
	}
}

#p01.ContBox .catch span {
	font-size: 0.22rem;
	letter-spacing: 0.075em;
	display: block;
	font-weight: 700;
	padding-top: 0.20rem;
}

@media screen and (max-width: 599px) {
	#p01.ContBox .catch span {
		font-size: 0.19rem;
		line-height: 1.65;
		letter-spacing: 0.05em;
	}
}

#p01.ContBox .text {
	text-align: center;
	font-size: 0.16rem;
	letter-spacing: 0.075em;
	padding-bottom: 0.10rem;
	line-height: 1.91;
}

@media screen and (max-width: 599px) {
	#p01.ContBox .text {
		text-align: justify;
		letter-spacing: 0.05em;
		line-height: 1.85;
	}
}

#RuralYurai {
	text-align: center;
	padding: 0.40rem 0;
	margin: auto;
	max-width: 4.00rem;
	min-width: 3.00rem;
}

#MovBox {
	text-align: center;
	max-width: 716px;
	max-height: 404px;
	margin: auto;
	margin-top: 20px;
	overflow: hidden;
	border: 1px solid #999;
	border-radius: 3px;
	box-sizing: border-box;
}

#MovBox video {
	width: 100.5%;
	margin-left: -1px;
}

@media screen and (max-width:320px) {
	#RuralYurai {
		max-width: 100%;
		min-width: inherit;
		padding: 0;
		padding-top: 20px;
		padding-bottom: 20px;
	}

	#MovBox {
		max-width: 100%;
	}

	#MovBox video {
		width: 10%;
		margin-left: 0;
	}
}

/*============================================
各動画コンテンツエリア
===========================================*/
.mov_cont_wrap {
	padding: 0.80rem 0;
	overflow: hidden;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap {
		padding: 0.50rem 0;
	}
}

.mov_cont_wrap .mov_cont_box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	margin-bottom: 0.60rem;
}

.mov_cont_wrap .mov_cont_box:nth-child(even) {
	flex-direction: row-reverse;
}

.mov_cont_wrap .mov_cont_box::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0.40rem;
	bottom: -0.30rem;
	z-index: -1;
	border-radius: 0.10rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box::before {
		left: 0.20rem;
		bottom: -0.20rem;
		border-radius: 0.05rem;
	}
}

.mov_cont_wrap .mov_cont_box::after {
	content: "";
	width: 2.00rem;
	height: 2.00rem;
	opacity: 0.4;
	background-image: url(../img/logo_white.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: -0.60rem;
	bottom: -0.70rem;
	z-index: 0;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box::after {
		width: 1.00rem;
		height: 1.00rem;
		right: -0.30rem;
		bottom: -0.40rem;
	}
}

.mov_cont_wrap .mov_cont_box:nth-child(even)::after {
	right: auto;
	left: -0.60rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box:nth-child(even)::after {
		left: -0.30rem;
	}
}

/* 会社を知る */
.mov_cont_wrap #cat01.mov_cont_box::before {
	background-color: #cceeeb;
}

/* 仕事を知る */
.mov_cont_wrap #cat02.mov_cont_box::before {
	background-color: #e8f4d9;
	left: -0.40rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap #cat02.mov_cont_box::before {
		left: -0.20rem;
	}
}

/* 人を知る */
.mov_cont_wrap #cat03.mov_cont_box::before {
	background-color: #feefd8;
}

.mov_cont_wrap .mov_cont_box .ph_wrap {
	width: 50%;
	height: 3.00rem;
	position: relative;
	z-index: 1;
	border-radius: 0.10rem;
	border: 4px solid #FFF;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .ph_wrap {
		width: 100%;
		height: 55vw;
	}
}

.mov_cont_wrap .mov_cont_box .ph_wrap::after {
	content: "";
	width: 2.40rem;
	height: 0.80rem;
	background-image: url(../img/mov_cat_deco.svg);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -0.30rem;
	left: 0.30rem;
	z-index: 2;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .ph_wrap::after {
		width: 1.50rem;
		height: 0.60rem;
		bottom: -0.30rem;
		left: auto;
		right: 0.20rem;
	}
}

.mov_cont_wrap .mov_cont_box .ph_wrap a {
	position: relative;
	display: block;
	height: 100%;
	border-radius: 0.10rem;
	cursor: pointer;
	overflow: hidden;
}

.mov_cont_wrap .mov_cont_box .ph_wrap a::before {
	content: "";
	width: 0.80rem;
	height: 0.80rem;
	background-image: url(../img/movie_play_icon.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.4;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.3s;
	z-index: 2;
}

.mov_cont_wrap .mov_cont_box .ph_wrap a:hover::before {
	opacity: 0.7;
}

.mov_cont_wrap .mov_cont_box .ph_wrap a img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.3s;
}

.mov_cont_wrap .mov_cont_box .ph_wrap a:hover img {
	transform: scale(1.02);
}

.mov_cont_wrap .mov_cont_box .textbox {
	width: 45%;
	position: relative;
	z-index: 1;
	padding-top: 0.15rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .textbox {
		width: 100%;
		padding-top: 0.20rem;
		padding-bottom: 0.20rem;
	}
}

.mov_cont_wrap .mov_cont_box .textbox .title {
	font-size: 0.28rem;
	font-weight: 700;
	letter-spacing: 0.10em;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .textbox .title {
		font-size: 0.24rem;
		text-align: center;
		padding-bottom: 0.15rem;
	}
}

.mov_cont_wrap .mov_cont_box .textbox .title .en_text {
	font-family: 'Poppins', sans-serif;
	display: block;
	padding-bottom: 0.15rem;
	letter-spacing: 0.05em;
	font-size: 0.12rem;
	font-weight: 400;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .textbox .title .en_text {
		padding-bottom: 0.10rem;
		font-size: 0.11rem;
	}
}

.mov_cont_wrap #cat01.mov_cont_box .textbox .title .en_text {
	color: #00a99d;
}

.mov_cont_wrap #cat02.mov_cont_box .textbox .title .en_text {
	color: #8cc63f;
}

.mov_cont_wrap #cat03.mov_cont_box .textbox .title .en_text {
	color: #fbb03b;
}

.mov_cont_wrap .mov_cont_box .textbox .text {
	font-size: 0.16rem;
	line-height: 1.91;
	letter-spacing: 0.05em;
	padding-bottom: 0.20rem;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .textbox .text {
		font-size: 0.15rem;
		line-height: 1.85;
	}
}

.mov_cont_wrap .mov_cont_box .textbox .more_btn a {
	font-family: 'Poppins', sans-serif;
	font-size: 0.16rem;
	color: #222;
	letter-spacing: 0.05em;
	text-decoration: none;
}

@media screen and (max-width: 599px) {
	.mov_cont_wrap .mov_cont_box .textbox .more_btn a {
		font-weight: 600;
		display: block;
		text-align: center;
	}
}

.mov_cont_wrap .mov_cont_box .textbox .more_btn a::after {
	content: "";
	width: 0.20rem;
	height: 0.11rem;
	background-image: url(../common/img/icon_right_black.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	position: relative;
	right: 0;
	opacity: 0.5;
	transition: all 0.3s;
}

.mov_cont_wrap .mov_cont_box .textbox .more_btn a:hover::after {
	right: -0.06rem;
}

/*============================================
02 職場紹介
===========================================*/
#p02 {
	background: #50BED2;
	color: #FFF;
	padding: 0.60rem 0;
}

@media screen and (max-width: 599px) {
	#p02 {
		padding: 0.30rem 0;
	}
}

#p02.ContBox .sec_title.txt_left {
	text-align: left;
	font-size: 0.18rem;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 599px) {
	#p02.ContBox .sec_title.txt_left {
		text-align: center;
		padding-bottom: 0.20rem;
	}
}

#p02.ContBox .sub_title.txt_left {
	text-align: left;
	font-size: 0.24rem;
	font-weight: 700;
	line-height: 1.85;
}

@media screen and (max-width: 599px) {
	#p02.ContBox .sub_title.txt_left {
		text-align: center;
		font-size: 0.20rem;
	}
}

#p02.ContBox .sec_title strong {
	border-bottom: 2px solid #FFF;
}

#Cont02_support {
	padding-top: 0.20rem;
	padding-bottom: 0.20rem;
	margin: auto;
}

.Cont02_support_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.Cont02_support_left {
	width: 60%;
}

@media screen and (max-width: 599px) {
	.Cont02_support_left {
		width: 100%;
		margin-bottom: 0.20rem;
	}
}

.Cont02_support_photo {
	width: 38%;
	text-align: center;
}

@media screen and (max-width: 599px) {
	.Cont02_support_photo {
		width: 100%;
		text-align: center;
		padding-top: 0;
	}
}

.Cont02_support_photo img {
	display: block;
	box-sizing: border-box;
	border: 3px solid #FFF;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	margin-bottom: 0.06rem;
}

.Cont02_support_photo span {
	font-size: 0.13rem;
	display: block;
	text-align: center;
	line-height: 2;
}

/* アイコン */
#Cont02_support ul {
	max-width: 5.60rem;
	display: flex;
	padding-top: 0.20rem;
	justify-content: space-between;
}

@media screen and (max-width: 599px) {
	#Cont02_support ul {
		justify-content: space-between;
	}
}

#Cont02_support li {
	width: 22%;
	height: 120px;
	border: 2px solid #FFF;
	position: relative;
	box-sizing: border-box;
	border-radius: 0.05rem;
	text-align: center;
}

@media screen and (max-width: 599px) {
	#Cont02_support li {
		width: 23.5%;
		height: 24vw;
		margin-left: 0;
		margin-right: 0;
	}
}

#Cont02_support li.support_icon01 {
	background-image: url(../img/support_icon01.png);
	background-repeat: no-repeat;
	background-position: center 4px;
	background-size: 60% auto;
}

@media screen and (max-width: 599px) {
	#Cont02_support li.support_icon01 {
		background-size: 80% auto;
	}
}

#Cont02_support li.support_icon02 {
	background-image: url(../img/support_icon02.png);
	background-repeat: no-repeat;
	background-position: center 4px;
	background-size: 64% auto;
}

@media screen and (max-width: 599px) {
	#Cont02_support li.support_icon02 {
		background-size: 80% auto;
	}
}

#Cont02_support li.support_icon03 {
	background-image: url(../img/support_icon03.png);
	background-repeat: no-repeat;
	background-position: center 2px;
	background-size: 60% auto;
}

@media screen and (max-width: 599px) {
	#Cont02_support li.support_icon03 {
		background-size: 70% auto;
	}
}

#Cont02_support li.support_icon04 {
	background-image: url(../img/support_icon04.png);
	background-repeat: no-repeat;
	background-position: center 4px;
	background-size: 60% auto;
}

@media screen and (max-width: 599px) {
	#Cont02_support li.support_icon04 {
		background-size: 80% auto;
	}
}

#Cont02_support li .text {
	position: absolute;
	display: block;
	bottom: 0.20rem;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	line-height: 1.3;
	font-size: 0.14rem;
	width: 100%;
}

@media screen and (max-width: 599px) {
	#Cont02_support li .text {
		font-size: 2.8vw;
		bottom: 3vw;
	}
}

#Cont02_support li .text.line2 {
	bottom: 0.10rem;
}

@media screen and (max-width: 700px) {
	#Cont02_support li .text.line2 {
		bottom: 2vw;
	}
}




#Cont02kakomi {
	background: #FFF;
	padding: 0.30rem;
	border-radius: 0.10rem;
	color: #111;
	overflow: hidden;
	margin-bottom: 0.60rem;
}

@media screen and (max-width: 599px) {
	#Cont02kakomi {
		padding: 0.25rem 0.10rem;
		border-radius: 0.05rem;
		margin-bottom: 0.30rem;
	}
}

#p02.ContBox #Cont02kakomi h3 {
	text-align: center;
	font-size: 0.20rem;
	font-weight: 700;
}

@media screen and (max-width: 599px) {
	#p02.ContBox #Cont02kakomi h3 {
		font-size: 0.18rem;
	}
}

#Cont02kakomi h3,
#Cont02kakomi h4 {
	color: #50BED2;
	padding-bottom: 0.10rem;
	clear: both;
	text-align: center;
}

#Cont02kakomi h4 {
	text-align: center;
	padding-top: 0.30rem;
	font-weight: 700;
	font-size: 0.18rem;
}

@media screen and (max-width: 599px) {
	#Cont02kakomi h4 {
		padding-top: 0.20rem;
		font-size: 0.16rem;
	}
}

#Cont02kakomi p {
	text-align: center;
	font-size: 0.15rem;
	line-height: 1.85;
}

@media screen and (max-width: 599px) {
	#Cont02kakomi p {
		text-align: justify;
		font-size: 0.13rem;
		padding: 0 0.15rem;
	}
}

#Cont02kakomi h5 {
	font-size: 1em;
	padding-top: 20px;
}

#Cont02kakomi dl {
	padding-top: 10px;
	font-size: 0.8em;
	line-height: 1.7;
}

#Cont02kakomi dt {
	font-weight: 700;
}

#Cont02kakomi dd {}

#Cont02kakomiLeft {
	width: 48%;
	float: left;
	box-sizing: border-box;
}

#Cont02kakomiRight {
	width: 48%;
	float: right;
	box-sizing: border-box;
}

#chartWrapper {
	padding: 20px;
	overflow: hidden;
}

#chartWrapper img {
	padding-bottom: 10px;
}

#chartWrapper a {
	font-size: 0.14rem;
	text-align: center;
	line-height: 1.6;
	padding-bottom: 0.10rem;
	display: block;
	color: #50BED2;
}

@media screen and (max-width: 599px) {
	#chartWrapper a {
		font-size: 0.10rem;
	}
}

#chartWrapper th {
	width: 100%;
	display: block;
	text-align: left;
	background: #F1F1F1;
	padding: 5px;
}

#chartWrapper td {
	width: 100%;
	display: block;
	padding-bottom: 10px;
}

/* 職場風景 */
#OfficeWrapper {
	text-align: center;
	overflow: hidden;
	padding-bottom: 0.60rem;
}

#OfficeWrapper h5 {
	padding-bottom: 0.05rem;
	font-size: 0.20rem;
	font-weight: 700;
}

@media screen and (max-width: 599px) {
	#OfficeWrapper h5 {
		font-size: 0.18rem;
	}
}

#OfficeWrapper p {
	font-size: 0.14rem;
	line-height: 1.6;
	padding-bottom: 0.10rem;
}

@media screen and (max-width: 599px) {
	#OfficeWrapper p {
		font-size: 0.13rem;
		padding-bottom: 0.05rem;
	}
}

#OfficeWrapper img {
	display: block;
	border: 3px solid #FFF;
	box-sizing: border-box;
	margin-bottom: 0.10rem;
}

#OfficeLeft {
	width: 48%;
	float: left;
}

@media screen and (max-width: 599px) {
	#OfficeLeft {
		width: 100%;
		float: none;
		padding-bottom: 0.30rem;
	}
}

#OfficeRight {
	width: 48%;
	float: right;
}

@media screen and (max-width: 599px) {
	#OfficeRight {
		width: 100%;
		float: none;
	}
}

#OfficeWrapper .tel_link {
	color: #FFF;
	text-decoration: none;
}

@media screen and (max-width: 599px) {
	#OfficeWrapper .tel_link {
		font-weight: 700;
		text-decoration: underline;
	}
}

.MapBtn {
	width: 40%;
	margin: auto;
	padding-top: 0.05rem;
	text-align: center;
}

.MapBtn a {
	display: block;
	border-radius: 4px;
	background: #FFF;
	padding: 0.08rem 0 0.10rem;
	text-align: center;
	text-decoration: none;
	color: #50BED2;
	font-size: 0.15rem;
	font-weight: 700;
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 599px) {
	.MapBtn a {
		font-size: 0.14rem;
	}
}

#DoukoukaiWrapper {
	overflow: hidden;
	margin: auto;
	text-align: center;
}

@media screen and (max-width: 599px) {
	#DoukoukaiWrapper {
		margin: 0 -0.20rem;
		width: 100vw;
	}
}


#DoukoukaiWrapper h3 {
	font-size: 0.18rem;
	font-weight: 700;
	padding-bottom: 0.20rem;
	text-align: center;
}

@media screen and (max-width: 599px) {
	#DoukoukaiWrapper h3 {
		font-size: 0.16rem;
	}
}

.DoukoukaiPhoto_wrap .list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


.DoukoukaiPhoto_wrap .list .detail {
	width: 32%;
	text-align: center;
}

@media screen and (max-width: 599px) {
	.DoukoukaiPhoto_wrap .list .slick-slide {
		padding: 0 0.05rem;
	}
}

.DoukoukaiPhoto_wrap .list .detail .ph_wrap {
	width: 100%;
	height: 2.20rem;
	border-radius: 0.10rem;
	overflow: hidden;
}

@media screen and (max-width: 599px) {
	.DoukoukaiPhoto_wrap .list .detail .ph_wrap {
		height: 55vw;
		border-radius: 0.05rem;
	}
}

.DoukoukaiPhoto_wrap .list .detail .ph_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.DoukoukaiPhoto_wrap .list .detail .text {
	font-size: 0.14rem;
	padding-top: 0.10rem;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 599px) {
	.DoukoukaiPhoto_wrap .list .detail .text {
		font-size: 0.13rem;
		padding-bottom: 0.10rem;
	}
}

/*============================================
03 私たちについて
===========================================*/
#p03.ContBox {
	background: #FFF;
	padding: 0.80rem 0;
}

#p03.ContBox .lead {
	text-align: center;
	font-size: 0.16rem;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 599px) {
	#p03.ContBox .lead {
		line-height: 1.65;
	}
}

#StaffWrapper {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#p03 .StaffBox {
	width: 33%;
	width: calc(100%/3);
	box-sizing: border-box;
}

@media screen and (max-width: 599px) {
	#p03 .StaffBox {
		width: 100%;
		padding-bottom: 0.30rem;
		border-bottom: 1px solid #CCC;
		margin-bottom: 0.30rem;
	}

	#p03 .StaffBox:last-child {
		padding-bottom: 0;
		border: 0;
		margin-bottom: 0;
	}
}

#p03 .StaffBox a {
	display: block;
	color: #111;
	text-decoration: none;
	text-align: center;
}

#p03 .StaffBox a:hover {
	opacity: 0.7;
}

@media screen and (max-width: 599px) {
	#p03 .StaffBox a:hover {
		display: block;
		opacity: 1;
	}
}

#p03 .StaffBox a span {
	font-size: 0.14rem;
	display: block;
	line-height: 1.35;
}

#p03 .StaffBox a h3 {
	font-size: 0.18rem;
	padding: 0.10rem 0;
	font-weight: 700;
}

#p03 .StaffPhoto {
	width: 50%;
	margin: auto;
	border-radius: 50%;
	margin-bottom: 0.10rem;
	overflow: hidden;
}

@media screen and (max-width: 599px) {
	#p03 .StaffPhoto {
		width: 1.50rem;
		margin: auto;
		border-radius: 50%;
		margin-bottom: 10px;
		overflow: hidden;
	}
}

#p03 .StaffPhoto img {
	display: block;
	width: 100%;
	height: 100%;
}

#p03 .MoreBtn {
	width: 70%;
	margin: 0.15rem auto 0;
	background: #F15A24;
	border-radius: 4px;
	padding: 0.10rem 0 0.12rem;
	text-align: center;
	color: #FFF;
	font-weight: 700;
	font-size: 0.15rem;
	box-shadow: 0 2px 0 rgba(241, 90, 36, 0.3);
}

#sf01.StaffPhoto {
	background: url(../img/staff_ph01.jpg) center center;
	background-size: cover;
}

#sf02.StaffPhoto {
	background: url(../img/staff_ph02.jpg) center center;
	background-size: cover;
}

#sf03.StaffPhoto {
	background: url(../img/staff_ph03.jpg) center center;
	background-size: cover;
}

/*============================================
04 募集要項
===========================================*/
#p04.ContBox {
	background: #F2F9EC;
	padding: 0.80rem 0
}

@media screen and (max-width: 599px) {
	#p04.ContBox {
		padding: 0.40rem 0
	}
}

#p04.ContBox .sec_title {
	text-align: center;
	font-size: 0.18rem;
	padding-bottom: 0.20rem;
}

#p04 .sub_title {
	color: #81BE25;
	font-size: 0.22rem;
	text-align: center;
	font-weight: 700;
	padding-bottom: 0.20rem;
}

#p04.ContBox .lead {
	text-align: center;
	font-size: 0.16rem;
}

@media screen and (max-width: 599px) {
	#p04.ContBox .lead {
		text-align: justify;
		font-size: 0.15rem;
		line-height: 1.65;
	}
}

#RecruiInfoWrapper {
	padding-top: 0.30rem;
}

#RecruiInfoWrapper h4 {
	background: #FFF;
	padding: 0.14rem;
	text-align: left;
	line-height: 1.5;
	font-weight: 700;
	font-size: 0.20rem;
	margin-bottom: 0.20rem;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper h4 {
		font-size: 0.18rem;
	}
}

#RecruiInfoWrapper h4 span {
	display: block;
	font-weight: 500;
	font-size: 0.16rem;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper h4 span {
		font-size: 0.15rem;
	}
}

#RecruiInfoWrapper table {
	font-size: 0.15rem;
	line-height: 1.6;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper table {
		font-size: 0.14rem;
	}
}

#RecruiInfoWrapper th {
	text-align: left;
	width: 2.00rem;
	font-weight: 400;
	padding: 0.10rem 0;
	border-bottom: 1px solid #AAA;
	vertical-align: top;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper th {
		width: 100%;
		display: block;
		font-weight: 700;
	}
}

#RecruiInfoWrapper td {
	text-align: left;
	padding: 0.10rem 0;
	border-bottom: 1px solid #AAA;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper td {
		width: 100%;
		display: block;
		padding-bottom: 0.30rem;
	}
}

#RecruiInfoWrapper td a {
	color: #3aa999;
	font-weight: 500;
}


#RecruiInfoWrapper td dt {
	width: 1.00rem;
	float: left;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper td dt {
		width: 100%;
		float: none;
	}
}

#RecruiInfoWrapper td dd {
	margin-left: 1.00rem;
}

@media screen and (max-width: 599px) {
	#RecruiInfoWrapper td dd {
		margin-left: 0;
		padding-bottom: 0.20rem;
	}
}

#RecruiInfoWrapper td dl.hBorder {
	border-bottom: 1px dotted #AAA;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

/*============================================
07 キャリア採用
===========================================*/
#p07.ContBox {
	background: #E6F7F6;
	padding: 0.80rem 0;
}

#p07.ContBox p {
	text-align: center;
}

#p07 h3 {
	color: #50BED2;
}


/*============================================
05 応募について
===========================================*/
#p05.ContBox {
	background: #FFF;
	padding: 0.80rem 0;
}

@media screen and (max-width: 599px) {
	#p05.ContBox {
		padding: 0.40rem 0;
	}
}

#p05.ContBox p {
	text-align: center;
	font-size: 0.14rem;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

#Oubo {
	text-align: center;
	font-size: 0.15rem;
	padding-bottom: 0.40rem;
}

.entry_flexbox {
	max-width: 10.00rem;
	margin: auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 0.30rem;
}

@media screen and (max-width: 599px) {
	.entry_flexbox {
		margin-top: 0;
	}
}

.entry_box {
	width: 31%;
	text-align: center;
	box-sizing: border-box;
	padding: 0.16rem;
	padding-top: 0.30rem;
	position: relative;
	margin: 0 0.18rem;
}

@media screen and (max-width: 599px) {
	.entry_box {
		width: 100%;
		margin-bottom: 0.20rem;
	}
}

.entry_box h3 {
	text-align: center;
	font-size: 0.18rem;
	font-weight: 700;
	margin-bottom: 0.20rem;
}

.entry_box h3 img {
	height: 1.2em;
}

.entry_box h3 span {
	display: inline-block;
	padding-bottom: 5px;
}

.entry_box .entry_btn {
	width: 80%;
	position: absolute;
	bottom: 0.20rem;
	left: 50%;
	transform: translateX(-50%);
	font-size: 0.15rem;
}

@media screen and (max-width: 599px) {
	.entry_box .entry_btn {
		width: 80%;
		position: relative;
		bottom: inherit;
		left: inherit;
		transform: none;
		margin: auto;
		margin-top: 0.20rem;
	}
}

.entry_box .entry_btn a {
	display: block;
	text-align: center;
	background-color: #F15A24;
	padding: 0.16rem;
	color: #FFF;
	text-decoration: none;
	font-size: 1em;
	letter-spacing: .1em;
	font-weight: 700;
	box-shadow: 0 2px 0 rgba(241, 90, 36, 0.3);
}

.entry_box .entry_btn a:hover {
	opacity: 0.7;
}

.entry_box .entry_btn span {
	display: block;
	text-align: center;
	font-size: 0.12rem;
	padding-top: 0.16rem;
}

#entry_box01 {
	border: 3px solid #81BE24;
}

#entry_box01 h3 {
	color: #81BE24;
}

#entry_box01 h3 span {
	border-bottom: 2px solid #81BE24;
}

#entry_box02 {
	border: 3px solid #3FB5EA;
}

#entry_box02 h3 span {
	border-bottom: 2px solid #3FB5EA;
}

#entry_box03 {
	border: 3px solid #3AA999;
}

#entry_box03 h3 {
	color: #3AA999;
}

#entry_box03 h3 span {
	border-bottom: 2px solid #3AA999;
}

#entry_box03 table {
	text-align: left;
	width: 90%;
	margin: auto;
	line-height: 1.7;
	font-size: 0.14rem;
}

#entry_box03 th {
	background-color: #C3E5E0;
	width: 60px;
	text-align: center;
	padding: 4px;
	box-sizing: border-box;
}

#entry_box03 td {
	background: #F1F1F1;
	padding: 4px;
}

#entry_box03 em {
	display: block;
	font-size: 0.12rem;
	line-height: 1.4;
	padding-top: 0.10rem;
}

#Oubo img {
	padding-bottom: 0.20rem;
	padding-top: 0.20rem;
}

#OuboAddress {
	max-width: 10.00rem;
	margin: auto;
	margin-top: 0.30rem;
	box-sizing: border-box;
	text-align: center;
}

#OuboAddress h2 {
	color: #81BE25;
	font-weight: 700;
	font-size: 0.20rem;
	padding-bottom: 0.10rem;
}

#OuboAddress strong {
	display: block;
	padding-top: 0.10rem;
	padding-bottom: 0.20rem;
	font-size: 0.16rem;
	font-weight: 400;
	letter-spacing: 0.05em;
}


/* 2017.11.8 */
.OuboNew {
	overflow: hidden;
	padding-bottom: 0.30rem;
	clear: both;
	color: #81BE25;
}

.OuboCarrier {
	overflow: hidden;
	clear: both;
	padding-bottom: 0.30rem;
	color: #50BED2;
}

#Oubo ul {
	display: inline-block;
	text-align: center;
}

#Oubo li {
	display: inline-block;
	padding-left: 0.20rem;
	padding-right: 0.20rem;
	font-size: 1.4em;
	font-weight: 300;
}

#Oubo li span {
	display: inline-block;
	background: #CCC;
	padding: 17px;
	padding-left: 24px;
	padding-right: 24px;
	border-radius: 50px;
	font-size: 1.6em;
	margin-right: 5px;
	position: relative;
	top: 5px;
	font-weight: 100;
}

#Oubo .OuboNew li span {
	background: rgba(129, 190, 37, 0.2);
}

#Oubo .OuboCarrier li span {
	background: rgba(80, 190, 210, 0.2);
}

#Oubo h3 {
	margin: 0;
	padding: 0;
	padding-bottom: 10px;
	color: #333;
	padding-top: 20px;
}


@media screen and (max-width: 700px) {
	#p05.ContBox p {
		text-align: left;
	}

	#Oubo {
		text-align: center;
		font-size: 0.7em;
		max-width: 100%;
	}

	#Oubo img {
		width: 60%;
		margin: auto;
	}

	#OuboAddress p br {
		display: block;
	}

	#OuboAddress strong {
		font-size: 1.6em;
	}

	#Oubo ul {
		display: block;
		text-align: left;
		font-size: 1.2em;
		position: relative;
		margin-left: 18%;
	}

	#Oubo li {
		display: block;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 15px;
	}

}



/*============================================
06 リンク
===========================================*/
#p06.ContBox {
	background: #81BE25;
	color: #FFF;
	position: relative;
	z-index: 2;
	padding: 0.80rem 0;
}

@media screen and (max-width: 599px) {
	#p06.ContBox {
		padding: 0.40rem 0;
	}
}

#p06.ContBox h2 strong {
	border-bottom: 2px solid #FFF;
}

#p06.ContBox p {
	text-align: center;
	font-size: 0.15rem;
}

@media screen and (max-width: 599px) {
	#p06.ContBox p {
		font-size: 0.13rem;
	}
}

#LinkWrapper {
	max-width: 1000px;
	margin: auto;
	overflow: hidden;
}

#LinkWrapper a {
	color: #FFF;
	text-decoration: none;
	font-size: 0.15rem;
	display: block;
}

@media screen and (max-width: 599px) {
	#LinkWrapper a {
		font-size: 0.13rem;
	}
}

#LinkWrapper a:hover {
	opacity: 0.7;
}

#LinkWrapper a img {
	padding-bottom: 10px;
}

.LinkLeft {
	width: 48%;
	float: left;
	text-align: center;
	padding-top: 0.10rem;
}

.LinkRight {
	width: 48%;
	float: right;
	text-align: center;
	padding-top: 0.10rem;
}

@media screen and (max-width: 700px) {
	.LinkLeft {
		width: 100%;
		float: none;
		padding: 0;
		padding-bottom: 0.30rem;
	}

	.LinkRight {
		width: 100%;
		float: none;
		padding: 0;
	}
}

/*============================================
フッター
===========================================*/
footer {
	clear: both;
	padding: 0.30rem;
	background: #FFF;
	overflow: hidden;
	position: relative;
	z-index: 10;
}

@media screen and (max-width: 700px) {
	footer {
		padding: 0.30rem 0.10rem;
	}
}

footer .logo {
	width: 2.00rem;
	float: left;
}

@media screen and (max-width: 700px) {
	footer .logo {
		width: 1.50rem;
		float: none;
		margin: auto;
	}
}

footer p {
	margin-left: 3.00rem;
	padding-top: 0.10rem;
	font-size: 0.13rem;
	line-height: 1.7;
	text-align: left;
}

@media screen and (max-width: 950px) {
	footer p {
		margin-left: 2.30rem;
	}
}

@media screen and (max-width: 700px) {
	footer p {
		margin-left: 0;
		padding-top: 0.20rem;
		font-size: 0.12rem;
	}
}

footer p strong {
	font-weight: 500;
	padding-right: 1em;
}

@media screen and (max-width: 700px) {
	footer p strong {
		display: block;
		font-weight: 700;
	}
}

footer p a {
	color:#3c3c3c;
	text-decoration: none;
}

@media screen and (max-width: 950px) {
	footer p a {
		text-decoration: underline;
	}
}
