@charset "utf-8";
.boxBreadcrumb {
	position: relative;
	padding-top: 24px
}
@media all and (max-width:750px) {
	.boxBreadcrumb {
		display: none
	}
}
.breadcrumbIn {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-start;
	align-items: flex-start
}
.breadcrumbIn span {
	letter-spacing: .1em;
	font-size: .9375rem
}
.breadcrumbIn .sepaBreadcrumb {
	display: inline-block;
	margin: 0 .45em 0 .45em
}
.dOneLine {
	display: inline-block
}
.dPcOneLine {
	display: inline-block
}
@media all and (max-width:750px) {
	.dPcOneLine {
		display: inline
	}
}
.boxSystemMessage {
	position: fixed;
	z-index: 1100;
	top: 0;
	left: 0;
	padding: 50px;
	background-color: rgba(0, 0, 0, .8);
	color: #fff
}
.fontB {
	font-weight: 700
}
.fontI {
	font-style: italic
}
.underline {
	text-decoration: underline
}
.boxChkImg {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 150px
}
@media all and (max-width:640px) {
	.boxChkImg {
		height: 50vw
	}
}
.boxChkImg .chkImg {
	position: absolute;
	top: 0;
	left: 50%;
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	max-width: none;
	height: auto
}
.boxChkImg .chkImg.horizontalImg {
	width: 100%;
	height: auto
}
.boxChkImg .chkImg.verticalImg {
	width: auto;
	height: 100%
}
.linkBaseTelno, .linkBaseSp {
	pointer-events: none;
	cursor: auto
}
@media all and (max-width:750px) {
	.linkBaseTelno, .linkBaseSp {
		pointer-events: auto
	}
}
.linkBaseExternal {
	padding-right: 1.4em;
	background-image: url(./../../images/base/base-icn-external-link01.png);
	background-repeat: no-repeat;
	background-position: 97% .2em;
	background-size: .94em auto
}
.linkBaseExternal.typeWhite {
	background-image: url(./../../images/base/base-icn-external-link02.png)
}
@media all and (max-width:750px) {
	.linkBaseExternal {}
}
.boxBaseError {
	color: red
}
.isPc {
	display: none;
	width: 1px
}
@media all and (max-width:750px) {
	.isSp {
		display: none;
		width: 2px
	}
}
.dPc {
	display: block!important
}
@media all and (max-width:750px) {
	.dPc {
		display: none!important
	}
}
.dPcInline {
	display: inline!important
}
@media all and (max-width:750px) {
	.dPcInline {
		display: none!important
	}
}
.dSp {
	display: none!important
}
@media all and (max-width:750px) {
	.dSp {
		display: block!important
	}
}
.dSpInline {
	display: none!important
}
@media all and (max-width:750px) {
	.dSpInline {
		display: inline!important
	}
}
.mb0 {
	margin-bottom: 0
}
.mb5 {
	margin-bottom: 5px
}
.mb10 {
	margin-bottom: 10px
}
.mb15 {
	margin-bottom: 15px
}
.mb20 {
	margin-bottom: 20px
}
.mb25 {
	margin-bottom: 25px
}
.mb30 {
	margin-bottom: 30px
}
.mb35 {
	margin-bottom: 35px
}
.mb40 {
	margin-bottom: 40px
}
.mb45 {
	margin-bottom: 45px
}
.mb50 {
	margin-bottom: 50px
}
.mb55 {
	margin-bottom: 55px
}
.mb60 {
	margin-bottom: 60px
}
.mb65 {
	margin-bottom: 65px
}
.mb70 {
	margin-bottom: 70px
}
.mb75 {
	margin-bottom: 75px
}
.mb80 {
	margin-bottom: 80px
}
.mb85 {
	margin-bottom: 85px
}
.mb90 {
	margin-bottom: 90px
}
.mb95 {
	margin-bottom: 95px
}
.mb100 {
	margin-bottom: 100px
}
.mb105 {
	margin-bottom: 105px
}
.mb110 {
	margin-bottom: 110px
}
.mb115 {
	margin-bottom: 115px
}
.mb120 {
	margin-bottom: 120px
}
.mb125 {
	margin-bottom: 125px
}
.mb130 {
	margin-bottom: 130px
}
.mb135 {
	margin-bottom: 135px
}
.mb140 {
	margin-bottom: 140px
}
.mb145 {
	margin-bottom: 145px
}
.mb150 {
	margin-bottom: 150px
}
@media all and (max-width:750px) {
	.mb0 {
		margin-bottom: 0
	}
	.mb5 {
		margin-bottom: 5%
	}
	.mb10 {
		margin-bottom: 6%
	}
	.mb15 {
		margin-bottom: 7%
	}
	.mb20 {
		margin-bottom: 8%
	}
	.mb25 {
		margin-bottom: 9%
	}
	.mb30 {
		margin-bottom: 10%
	}
	.mb35 {
		margin-bottom: 11%
	}
	.mb40 {
		margin-bottom: 12%
	}
	.mb45 {
		margin-bottom: 13%
	}
	.mb50 {
		margin-bottom: 14%
	}
	.mb55 {
		margin-bottom: 15%
	}
	.mb60 {
		margin-bottom: 16%
	}
	.mb65 {
		margin-bottom: 17%
	}
	.mb70 {
		margin-bottom: 18%
	}
	.mb75 {
		margin-bottom: 19%
	}
	.mb80 {
		margin-bottom: 20%
	}
	.mb85 {
		margin-bottom: 21%
	}
	.mb90 {
		margin-bottom: 22%
	}
	.mb95 {
		margin-bottom: 23%
	}
	.mb100 {
		margin-bottom: 24%
	}
	.mb105 {
		margin-bottom: 25%
	}
	.mb110 {
		margin-bottom: 26%
	}
	.mb115 {
		margin-bottom: 27%
	}
	.mb120 {
		margin-bottom: 28%
	}
	.mb125 {
		margin-bottom: 29%
	}
	.mb130 {
		margin-bottom: 30%
	}
	.mb135 {
		margin-bottom: 31%
	}
	.mb140 {
		margin-bottom: 32%
	}
	.mb145 {
		margin-bottom: 33%
	}
	.mb150 {
		margin-bottom: 34%
	}
}
.clearfix:after {
	content: ' ';
	display: block;
	clear: both
}
.clearBoth {
	clear: both
}
#loaderBg {
	display: none;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	left: 100%;
	background-color: #fff;
	position: fixed;
	z-index: 1100;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0
}
#loader {
	position: fixed;
	z-index: 1101;
	left: 0;
	top: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%
}
@media all and (max-width:750px) {
	#loader img {
		width: 60vw
	}
}
#loaderIn {
	width: 200px;
	height: 1px
}
#loaderIn .loadingBar {
	width: 0;
	height: 10px;
	background-color: #021055;
	-webkit-animation: loader 10s ease normal;
	animation: loader 10s ease normal
}
#loaderIn .loadingBarV2 {
	width: 0;
	height: 1px;
	background-color: #000;
	transition: all 0.2s linear 0s
}
@keyframes loader {
	0% {
		width: 0
	}
	100% {
		width: 200px
	}
}
.inView {
	transition: .8s
}
.inViewHead {
	transition: .8s
}
.inViewUl li {
	position: relative
}
.inViewUl li.initial {
	opacity: 0;
	bottom: -40px;
	transition: none
}
.inViewUl li.active {
	opacity: 1;
	bottom: 0;
	transition: 0.8s
}
a.btnActionA {
	position: relative;
	z-index: 2;
	transition: 0.3s;
	outline: none
}
a.btnActionA:hover {
	background-color: #fff!important;
	color: #000!important
}
a.btnActionA.typeBlue01:hover {
	background-color: #fff!important;
	color: #021055!important
}
a.btnActionA:before, a.btnActionA:after {
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	display: block;
	width: 50%;
	height: 100%;
	background-color: #000!important;
	transition: 0.3s
}
a.btnActionA.typeBlue01:before, a.btnActionA.typeBlue01:after {
	background-color: #021055!important
}
a.btnActionA:before {
	right: 0
}
a.btnActionA:after {
	left: 0
}
a.btnActionA:hover:before, a.btnActionA:hover:after {
	width: 0;
	background-color: #fff
}
a.btnActionB {
	position: relative;
	z-index: 2;
	transition: 0.3s;
	outline: none;
	border: 1px #000 solid
}
a.btnActionB:hover {
	background-color: #000!important;
	border: 1px #000 solid;
	color: #fff!important
}
a.btnActionB.typeRed:hover {
	background-color: #ab1818!important;
	border: 1px #ab1818 solid;
	color: #fff!important
}
a.btnActionB:before, a.btnActionB:after {
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	display: block;
	width: 50%;
	height: 100%;
	background-color: #fff!important;
	transition: 0.3s
}
a.btnActionB:before {
	right: 0
}
a.btnActionB:after {
	left: 0
}
a.btnActionB:hover:before, a.btnActionB:hover:after {
	width: 0;
	background-color: #000
}
a.btnActionB.typeRed:hover:before, a.btnActionB.typeRed:hover:after {
	width: 0;
	background-color: #ab1818
}
padding:0;
line-height:1.8;
letter-spacing:.107em;
font-size:1rem
}
@media all and (max-width:750px) {
	.boxPostBody>p {
		font-size: .9rem
	}
}
.boxPostBody>p+p {
	margin-top: 1.7em
}
.boxPostBody strong {
	font-weight: 700
}
.boxPostBody em {
	font-style: italic
}
.boxPostBody ul {
	padding-left: 20px;
	list-style: disc
}
@media all and (max-width:750px) {
	.boxPostBody ul {
		padding-left: 6vw
	}
}
.boxPostBody ol {
	padding-left: 20px;
	list-style: decimal
}
@media all and (max-width:750px) {
	.boxPostBody ol {
		padding-left: 8%
	}
}
.boxPostBody li {
	margin-bottom: 10px
}
@media all and (max-width:750px) {
	.boxPostBody li {
		margin-bottom: 3%
	}
}
.boxPostBody .alignleft {
	float: left;
	margin: 7px 28px 28px 0
}
@media all and (max-width:750px) {
	.boxPostBody .alignleft {
		float: none;
		display: block;
		width: 100%;
		height: auto;
		margin: 5% 0 5% 0
	}
}
.boxPostBody .alignright {
	float: right;
	margin: 7px 0 28px 28px
}
@media all and (max-width:750px) {
	.boxPostBody .alignright {
		float: none;
		display: block;
		width: 100%;
		height: auto;
		margin: 5% 0 5% 0
	}
}
.boxPostBody .aligncenter {
	clear: both;
	display: block;
	margin: 7px auto
}
@media all and (max-width:750px) {
	.boxPostBody .aligncenter {
		clear: both;
		display: block;
		margin: 5% auto
	}
}
*/ .boxYoutube {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: auto;
	padding-top: 56.25%
}
.boxYoutube .youtube {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0
}
.boxYoutube.typePoster .youtube {
	display: none
}
.boxYoutube .imgYoutubePoster, .boxYoutube .imgMoviePoster {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	max-width: none;
	height: 100%;
	cursor: pointer
}
.boxMp4Movie {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: auto;
	padding-top: 56.25%
}
.boxMp4Movie .mp4 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}
.boxMp4Movie.typePoster .mp4 {
	display: none
}
.boxMp4Movie .imgMp4Poster, .boxMp4Movie .imgMoviePoster {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	max-width: none;
	height: 100%;
	cursor: pointer
}
.boxMp4Movie .btnMp4Play {
	position: absolute;
	z-index: 3;
	top: 65.5%;
	right: 13.2%;
	cursor: pointer
}
@media all and (max-width:640px) {
	.boxMp4Movie .btnMp4Play {
		top: 66%;
		right: 6%;
		width: 30%
	}
}
.boxPagination {
	position: relative;
	z-index: 10;
	margin-top: 7em;
	margin-bottom: 20px;
	padding: 10px 0 10px 0;
	border-top: 0;
	text-align: center
}
@media all and (max-width:750px) {
	.boxPagination {
		margin-top: 2em;
		margin-bottom: 5vw;
		padding: 5vw 0 5vw 0
	}
	.boxPagination.top {
		padding-bottom: 0;
		border: 0
	}
}
.boxPaginationIn {
	width: 100%;
	margin: 0 auto
}
.boxPaginationInLR {
	display: table;
	margin-left: auto
}
@media all and (max-width:750px) {
	.boxPaginationInLR {
		display: block
	}
}
.boxPaginationInL {
	display: table-cell;
	vertical-align: middle
}
@media all and (max-width:750px) {
	.boxPaginationInL {
		display: none
	}
}
.boxPaginationInL span {
	padding-right: 20px;
	padding-left: 15px;
	display: inline-block;
	background-image: url(./../../images/recruit/pagenation-separation01.png);
	background-repeat: no-repeat;
	background-position: left center
}
.boxPaginationInL .txtSeparation {
	display: inline-block;
	padding-right: 5px;
	font-size: 1.5rem
}
@media all and (max-width:750px) {
	.boxPaginationInL .txtSeparation {
		padding-right: 3%;
		font-size: 4.5vw
	}
}
.boxPaginationInR {
	display: table-cell;
	vertical-align: middle
}
@media all and (max-width:750px) {
	.boxPaginationInR {
		display: block
	}
}
ul.page-numbers {
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-start;
	align-items: flex-start
}
.pageRecruitment ul.page-numbers {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	padding: 0
}
ul.page-numbers>li>.page-numbers {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 1.9em;
	height: 1.9em;
	margin: 0 .12em;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 1.27rem;
	color: #fff;
	background-color: #1f1f1f;
	border: 2px solid #1f1f1f;
	font-family: "Jost-500-Medium"
}
@media all and (max-width:750px) {
	ul.page-numbers>li>.page-numbers {
		width: 2em;
		height: 2em;
		margin: 0 .25em;
		font-size: .9rem
	}
}
ul.page-numbers>li>.page-numbers.current, ul.page-numbers>li:not(.liPrev):not(.liNext)>.page-numbers:not(.dots):hover {
	background-color: transparent;
	border: 2px solid #78c20c;
	color: #78c20c
}
ul.page-numbers>li.liPrev a, ul.page-numbers>li.liNext a {
	background-color: transparent;
	border: none;
	font-family: "Jost-500-Medium";
	color: #fff
}
.pageRecruitment ul.page-numbers>li.liPrev, .pageRecruitment ul.page-numbers>li.liNext {
	position: static
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liPrev, ul.page-numbers>li.liNext {
		top: 2.5em
	}
}
ul.page-numbers>li.liPrev {
	left: 0;
	margin-right: 40px;
	padding-left: 20px;
	background: url(../../images/common/ico-arrow-left-green.svg) no-repeat left center;
	background-size: 11px
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liPrev {
		left: 0
	}
}
ul.page-numbers>li.liNext {
	right: 0;
	margin-left: 40px;
	padding-right: 20px;
	background: url(../../images/common/ico-arrow-right-green.svg) no-repeat right center;
	background-size: 11px
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liNext {
		right: 0
	}
}
ul.page-numbers>li.liPrev>.page-numbers, ul.page-numbers>li.liNext>.page-numbers {
	width: auto;
	color: #fff;
	font-size: 1.125rem
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liPrev>.page-numbers, ul.page-numbers>li.liNext>.page-numbers {
		font-size: .95rem
	}
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liPrev>.page-numbers {}
}
@media all and (max-width:750px) {
	ul.page-numbers>li.liNext>.page-numbers {}
}
.boxSingleNavi {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	margin-top: 5em;
	padding: 0;
  color: #78c20c;
}
@media all and (max-width:750px) {
	.boxSingleNavi {
		padding: 0
	}
}
.boxSingleNavi a[rel="prev"], .boxSingleNavi a[rel="next"] {
	border-radius: 0;
	background-repeat: no-repeat;
	background-size: auto auto;
	text-align: center;
	letter-spacing: .05em;
	font-size: 1.1rem;
	font-weight: 700
}
@media all and (max-width:750px) {
	.boxSingleNavi a[rel="prev"], .boxSingleNavi a[rel="next"] {
		border: 0;
		background-size: 2vw auto;
		font-size: .9rem
	}
}
.boxSingleNavi a[rel="prev"] {
	padding-left: 25px;
	background: url(../../images/common/ico-arrow-left-green.svg) no-repeat left center;
	background-size: 12px
}
@media all and (max-width:750px) {
	.boxSingleNavi a[rel="prev"] {
		padding-left: 1.5em
	}
}
.boxSingleNavi.type2Col a[rel="prev"] {
	left: 0
}
@media all and (max-width:750px) {
	.boxSingleNavi a[rel="prev"]:hover {
		transform: none;
		-ms-transform: none
	}
}
.boxSingleNavi a[rel="next"] {
	padding-right: 25px;
	background: url(../../images/common/ico-arrow-right-green.svg) no-repeat right center;
	background-size: 12px
}
@media all and (max-width:750px) {
	.boxSingleNavi a[rel="next"] {
		padding-right: 1.5em
	}
}
.boxSingleNavi.type2Col a[rel="next"] {
	right: 0
}
@media all and (max-width:750px) {
	.boxSingleNavi a[rel="next"]:hover {
		transform: none;
		-ms-transform: none
	}
}
.boxSingleToArchive, .boxSingleBackLink {
	text-align: center
}
@media all and (max-width:750px) {
	.boxSingleToArchive, .boxSingleBackLink {}
}
.boxSingleToArchive .linkSingleToArchive {
	position: relative;
	top: -2.3em;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 226px;
	height: 45px;
	padding-top: .15em;
	background-color: #014ea2;
	background-image: url(./../../images/common/single-to-archive-icn-arrow01.png), -moz-linear-gradient(left, #014ea2 0%, #9953e2 100%);
	background-image: url(./../../images/common/single-to-archive-icn-arrow01.png), -webkit-linear-gradient(left, #014ea2 0%, #9953e2 100%);
	background-image: url(./../../images/common/single-to-archive-icn-arrow01.png), linear-gradient(to right, #014ea2 0%, #9953e2 100%);
	background-repeat: no-repeat, no-repeat;
	background-position: 1.2em center, left top;
	background-size: auto auto, auto auto;
	border-radius: 45px;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 1rem;
	font-weight: 700;
	color: #fff
}
@media all and (max-width:750px) {
	.boxSingleToArchive .linkSingleToArchive {
		top: -8vw;
		width: 50%;
		height: 10vw;
		border-radius: 10vw;
		background-size: 4vw auto, auto auto;
		font-size: 1rem
	}
}
.boxSingleToArchive .linkSingleToArchive:hover {
	background-color: #555;
	color: #fff
}
.boxSingleBackLink .typeCssArrow {
	position: relative;
	padding-left: 1.3em;
	line-height: 1;
	letter-spacing: .1em;
	font-size: 1.2rem
}
@media all and (max-width:750px) {
	.boxSingleBackLink .typeCssArrow {
		font-size: 1rem
	}
}
.boxSingleBackLink .typeCssArrow:before {
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: .55em;
	height: .55em;
	border-top: 1px #000 solid;
	border-left: 1px #000 solid;
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}
.icnAccordion, .btnAccordion {
	cursor: pointer
}
@media all and (max-width:750px) {
	.icnAccordion {
		cursor: pointer
	}
}
.boxAccordion {
	display: none
}
.icnAccordionPc {
	cursor: pointer
}
@media all and (max-width:750px) {
	.icnAccordionPc {
		display: none;
		cursor: auto
	}
}
.boxAccordionPc {
	display: none
}
@media all and (max-width:750px) {
	.boxAccordionPc {
		display: block
	}
}
.icnAccordionSp {
	display: none
}
@media all and (max-width:750px) {
	.btnAccordionSp {
		margin-bottom: 5%
	}
	.icnAccordionSp {
		display: inline-block
	}
	.boxAccordionSp {
		display: none
	}
}
.upToTop {
	opacity: 1;
	display: none;
	position: fixed;
	right: 2%;
	bottom: 20px;
	z-index: 13;
	cursor: pointer
}
.upToTop img {
	width: 45px
}
@media all and (max-width:750px) {
	.upToTop {
		right: 2%;
		bottom: 6.5vw;
		width: 12vw;
		height: auto
	}
}
.upToTop:hover {
	opacity: .8
}
.upToTop .upToTopIn {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 40px;
	height: 40px;
	background-color: #333;
	font-size: 1.2rem;
	color: #999
}
.upToTop.type02 .btnUpToTop {
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	opacity: 0;
	transition: 0.8s;
	width: 150%;
	max-width: none;
	height: auto
}
.upToTop.type02 .btnUpToTop.active {
	opacity: 1;
	width: 100%
}
@media all and (max-width:750px) {
	.upToTop .txtPageTop {
		display: inline-block;
		padding: 10px 4vw 0 0;
		font-weight: 700;
		color: #333
	}
}