@charset "utf-8";

/* --------------------------------------------------------------
 TOP用スタイルシート
-------------------------------------------------------------- */

/* メインビジュアル
-------------------------------------------------------------- */
.mainvisual .mv-item {
	position: relative;
	height: 270px;
}
.mainvisual .mv-item img {
	max-width: 160%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
}
.mainvisual .mv-item span {
	display: block;
	width: 100%;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 15;
	font-size: 40px;
	line-height: 1.4;
	font-weight: bold;
	text-shadow: 1px 1px 10px #fff;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.mainvisual .mv-in .mv-item:nth-child(1) span {
}
.mainvisual .mv-in .mv-item:nth-child(2) span {
}
.mainvisual .mv-in .mv-item:nth-child(3) span {
}
.mainvisual .mv-in .mv-item:nth-child(4) span {
}
.mainvisual .mv-in .mv-item:nth-child(5) span {
}

@media screen and (min-width: 768px){ /* PC */
	.mainvisual .mv-item {
		height: 770px;
		overflow: hidden;
	}
	.mainvisual .mv-item img {
		width: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.mainvisual .mv-item span {
		font-size: 80px;
	}
	.mainvisual .mv-in .mv-item:nth-child(1) span {
		top: 50%;
		left: 75%;
	}
	.mainvisual .mv-in .mv-item:nth-child(2) span {
		top: 50%;
		left: 75%;
	}
	.mainvisual .mv-in .mv-item:nth-child(3) span {
		top: 90%;
		left: 80%;
	}
	.mainvisual .mv-in .mv-item:nth-child(4) span {
		top: 90%;
		left: 20%;
	}
	.mainvisual .mv-in .mv-item:nth-child(5) span {
		top: 90%;
		left: 80%;
	}
	.mainvisual .mv-in .mv-item:nth-child(6) span {
		top: 90%;
		left: 20%;
	}
}

/* 特設コーナー①
-------------------------------------------------------------- */
.special-corner-1 {
	padding: 30px 20px;
	background: #e5eff9;
}

/* 特設コーナー②
-------------------------------------------------------------- */
.special-corner-2 {
	padding: 30px 20px;
	
}


/* サービススライダー
-------------------------------------------------------------- */
.service-slider {
	padding: 30px 58px;
	background: #e5eff9;
}
.ss-in .slick-list {
	padding: 0 30% 0 0;
}
.ss-in .ss-item {
	width: 150px !important;
	position: relative;
}
.ss-in .ss-item a {
	display: block;
	text-decoration: none;
	color: #222;
}
.ss-in .ss-item span {
	display: block;
	width: 140px;
	font-size: 14px;
	text-align: center;
	position: absolute;
	bottom: 18px;
	left: 0;
}
.ss-in .slick-prev {
	width: 40px;
	height: 40px;
	left: -50px;
}
.ss-in .slick-prev:before {
	display: block;
	content: "";
	opacity: 1;
	width: 40px;
	height: 40px;
	background: #394b56;
	border-radius: 60px;
}
.ss-in .slick-prev:after {
	display: block;
	content: "";
	opacity: 1;
	width: 6px;
	height: 6px;
	position: absolute;
	top: 50%;
	left: 55%;
	transform: translate(-50%, -50%) rotate(45deg);
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.ss-in .slick-next {
	width: 40px;
	height: 40px;
	right: -50px;
}
.ss-in .slick-next:before {
	display: block;
	content: "";
	opacity: 1;
	width: 40px;
	height: 40px;
	background: #394b56;
	border-radius: 60px;
}
.ss-in .slick-next:after {
	display: block;
	content: "";
	opacity: 1;
	width: 6px;
	height: 6px;
	position: absolute;
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%) rotate(45deg);
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
}
@media screen and (min-width: 768px){ /* PC */
	.service-slider {
		padding: 50px 58px;
		background: #e5eff9;
	}
	.service-slider-in {
		width: 820px;
		margin: 0 auto;
	}
	.ss-in .slick-prev {
		width: 50px;
		height: 50px;
		left: -80px;
	}
	.ss-in .slick-prev:before {
		width: 50px;
		height: 50px;
	}
	.ss-in .slick-prev:after {
		border-left: 2px solid #fff;
		border-bottom: 2px solid #fff;
	}
	.ss-in .slick-next {
		width: 50px;
		height: 50px;
		right: -80px;
	}
	.ss-in .slick-next:before {
		width: 50px;
		height: 50px;
	}
	.ss-in .slick-next:after {
		border-right: 2px solid #fff;
		border-top: 2px solid #fff;
	}
	.ss-in .slick-list {
		padding: 0;
	}
	.ss-in .ss-item {
		width: 170px !important;
	}
	.ss-in .ss-item a:hover {
		opacity: 0.7;
	}
}

/* ニュース
-------------------------------------------------------------- */
.news-box {
	padding: 50px 20px 20px;
	background: #f5f5f5;
}
.news-box h2 {
	font-size: 20px;
	color: #2a3f4c;
	font-weight: bold;
	text-align: center;
	padding: 0 0 18px;
	position: relative;
}
/*.news-box h2:before {
	display: block;
	content: "";
	width: 100px;
	height: 2px;
	background: #2a3f4c;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -50px;
}
.news-box h2 span:before {
	display: block;
	content: "";
	width: 24px;
	height: 2px;
	background: #f1a200;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -24px
}
.news-box h2 span:after {
	display: block;
	content: "";
	width: 26px;
	height: 2px;
	background: #dd3802;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin: 0 0 0 -50px
}*/
.news-box .news-list dl {
	margin: 20px 0 0;
}
.news-box .news-list dl dt {
	font-size: 14px;
	margin: 0 0 8px;
	position: relative;
}
.news-box .news-list dl dt span {
	display: inline-block;
	width: 90px;
	text-align: center;
	font-size: 10px;
	margin: 0;
	padding: 2px 0;
	background: #fff;
	border: 1px solid #ccc;
	color: #ccc;
	position: absolute;
	top: -2px;
	left: 120px;
}
.news-box .news-list dl dt span.news-ir {
	border: 1px solid #257bb9;
	background: #257bb9;
	color: #fff;
}
.news-box .news-list dl dt span.news-media {
	border: 1px solid #6f859b;
	background: #6f859b;
	color: #fff;
}
.news-box .news-list dl dt span.news-relese {
	border: 1px solid #6f859b;
	background: #6f859b;
	color: #fff;
}
.news-box .news-list dl dt span.news-recruit {
	border: 1px solid #e58621;
	background: #e58621;
	color: #fff;
}
.news-box .news-list dl dt span.news-info {
	border: 1px solid #f1a200;
	background: #f1a200;
	color: #fff;
}
.news-box .news-list dl dd a {
	color: #222;
	line-height: 1.2;
}
.news-box .news-link-btn {
	margin: 30px 0 0;
	text-align: center;
}
.news-box .news-link-btn a {
	display: inline-block;
	width: 200px;
	text-align: center;
	background: #fff;
	font-size: 14px;
	padding: 14px 0;
	border: 1px solid #666666;
	color: #222;
	text-decoration: none;
	position: relative;
	border-radius: 60px;
}
.news-box .news-link-btn a:before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	border: none;
	background: #3b4d58;
	border-radius: 60px;
	position: absolute;
	top: 50%;
	right: 12px;
	margin: -9px 0 0;
}
.news-box .news-link-btn a:after {
	content: "";
	display: block;
	width: 3px;
	height: 3px;
	background: none;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 19px;
	top: 50%;
	margin: -3px 0 0;
	transform: rotate(-45deg);
}
.news-box .news-list-btn {
	margin: 30px 0 0;
	text-align: center;
	position: relative;
}
/*.news-box .news-list-btn:before {
	display: block;
	content: "";
	width: 100px;
	height: 2px;
	background: #2a3f4c;
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -50px;
}
.news-box .news-list-btn > span:before {
	display: block;
	content: "";
	width: 24px;
	height: 2px;
	background: #f1a200;
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -24px
}
.news-box .news-list-btn > span:after {
	display: block;
	content: "";
	width: 26px;
	height: 2px;
	background: #dd3802;
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -50px
}*/
.news-box .news-list-btn a {
	display: inline-block;
	text-align: center;
	font-size: 14px;
	padding: 10px 40px 10px 0;
	color: #222;
	text-decoration: none;
	position: relative;
	border-radius: 60px;
}
.news-box .news-list-btn a:before {
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	border: 1px solid #344b57;
	background: #fff;
	border-radius: 60px;
	position: absolute;
	top: 50%;
	right: 0;
	margin: -15px 0 0;
}
.news-box .news-list-btn a > span:before {
	position: absolute;
	top: 17px;
	right: 10px;
	margin: auto;
	content: "";
	display: block;
	width: 10px;
	height: 1px;
	border-bottom: 1px solid #344b57;
}
.news-box .news-list-btn a > span:after {
	position: absolute;
	top: 2px;
	right: 7px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #344b57;
}
.news-link-block {
	text-align: center;
	margin: 30px 0;
}
.news-link-block a {
	display: inline-block;
	max-width: 300px;
	width: 100%;
	font-weight: bold;
	color: #394b56;
	text-decoration: none;
	border: 1px solid #56656f;
	padding: 20px 2px;
	background: #fff;
	position: relative;
	border-radius: 60px;
	box-shadow:0px 0px 10px 1px #dddfe3;
}
.news-link-block a:first-child {
	margin: 0 0 20px;
}
.news-link-block a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #344b57;
}
.news-link-block a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 16px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #344b57;
}
@media screen and (min-width: 768px){ /* PC */
	.news-box {
		padding: 50px 0 50px;
		background: #f5f5f5;
	}
	.news-box .news-box-wrap {
		width: 1200px;
		margin: 0 auto;
		position: relative;
	}
	.news-box .news-box-in {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.news-box .news-box-in > div:nth-child(1) {
		width: 230px;
	}
	.news-box .news-box-in > div:nth-child(2) {
		width: 780px;
		min-height: 94px;
		box-sizing: border-box;
		padding: 3px 30px;
		background: url(../../img/line.png) left top no-repeat,url(../../img/line.png) right top no-repeat;
		background-size: 1px 100%;
	}
	.news-box h2 {
		padding: 40px 0 0;
		text-align: center;
	}
	.news-box h2:before {
		display: none;
	}
	.news-box h2 span:before {
		display: none;
	}
	.news-box h2 span:after {
		display: none;
	}
	.news-box .news-list dl {
		margin: 14px 0 0;
	}
	.news-box .news-list dl:nth-child(1) {
		margin: 0;
	}
	.news-box .news-list dl {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.news-box .news-list dl dt {
		font-size: 16px;
		margin: 0;
		width: 280px;
	}
	.news-box .news-list dl dt span {
		width: 120px;
		font-size: 12px;
		margin: 0;
		padding: 3px 0;
		left: 140px;
	}
	.news-box .news-list dl dd {
		width: 470px;
	}
	.news-box .news-list dl dd a {
		text-decoration: none;
	}
	.news-box .news-list dl dd a:hover {
		text-decoration: underline;
	}
	.news-box .news-list-btn {
		margin: 0;
		padding: 0;
		text-align: center;
		position: absolute;
		top: 30px;
		right: 40px;
	}
	.news-box .news-list-btn:before {
		display: none;
	}
	.news-box .news-list-btn > span:before {
		display: none;
	}
	.news-box .news-list-btn > span:after {
		display: none;
	}
	.news-box .news-list-btn a:hover {
		text-decoration: underline;
	}
	.news-box .news-link-btn a {
		padding: 10px 0;
	}
	.news-box .news-link-btn a:hover {
		opacity: 0.7;
	}
	.news-link-block {
		margin: 50px 0 0;
	}
	.news-link-block a:hover {
		opacity: 0.7;
	}
	.news-link-block a:first-child {
		margin: 0 20px 0 0;
	}
}


/* キャッチコピー
-------------------------------------------------------------- */
.catchcopy-box {
	padding: 40px 20px 130px;
	background: url(../../img/bg_catchcopy_sp.png) right bottom no-repeat;
	position: relative;
}
.catchcopy-box h2 {
	text-align: center;
	padding: 0 10px;
}
.catchcopy-box p {
	margin: 20px 0 0;
	line-height: 1.8;
}
.catchcopy-box .catchcopy-btn {
	text-align: center;
	margin: 30px 0 0;
}
.catchcopy-box .catchcopy-btn a {
	display: inline-block;
	max-width: 300px;
	width: 100%;
	font-weight: bold;
	color: #394b56;
	text-decoration: none;
	border: 1px solid #56656f;
	padding: 20px 2px;
	background: #fff;
	position: relative;
	border-radius: 60px;
	box-shadow:0px 0px 10px 1px #dddfe3;
}
.catchcopy-box .catchcopy-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #344b57;
}
.catchcopy-box .catchcopy-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 16px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #344b57;
}
.catchcopy-box .movie-btn {
	position: absolute;
	bottom: -46px;
	right: 10px;
}
.catchcopy-box .movie-btn a {
	display: block;
}
@media screen and (min-width: 768px){ /* PC */
	.catchcopy-box {
		padding: 90px 0 130px;
		background: url(../../img/bg_catchcopy_pc.png) right bottom no-repeat;
		position: relative;
	}
	.catchcopy-box h2 {
		padding: 0 0 20px;
	}
	.catchcopy-box p {
		text-align: center;
		margin: 0;
		font-size: 18px;
	}
	.catchcopy-box .catchcopy-btn {
		text-align: center;
		margin: 40px 0 0;
	}
	.catchcopy-box .catchcopy-btn a {
		font-size: 18px;
		padding: 23px 2px;
	}
	.catchcopy-box .catchcopy-btn a:hover {
		opacity: 0.7;
	}
	.catchcopy-box .movie-btn {
		bottom: -57px;
		right: 356px;
	}
	.catchcopy-box .movie-btn a:hover {
		opacity: 0.7;
	}
}

/* サービスエリア
-------------------------------------------------------------- */
.service-box {
	padding: 40px 20px 50px;
	background: rgba(0,0,0,0.1);
}
.service-box h2 {
	text-align: center;
	font-size: 13px;
	color: #394b56;
}
.service-box h2 span {
	display: inline-block;
	margin: 5px 0 0;
	font-weight: bold;
	font-size: 30px;
	color: #f1a200;
	background: linear-gradient(to right, #ffbb53 ,#d86c0a);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .service-box h2 span { background: none; } /* IE11 */
}
.service-box .service-list > div,
.service-box .service-list > a {
	display: block;
	margin: 30px 0 0;
	background: url(../../img/line_02.png) left top no-repeat #fff;
	background-size: 2px 100%;
	padding: 30px 30px 20px;
	color: #222;
	text-decoration: none;
}
.service-box .service-list > div h3,
.service-box .service-list > a h3 {
	font-size: 20px;
	font-weight: bold;
	color: #394b56;
	line-height: 1.4;
}
.service-box .service-list > div p,
.service-box .service-list > a p {
	margin: 10px 0 0;
	line-height: 1.2;
}
.service-box .service-list .service-img {
	margin: 10px 0 0;
}
.service-box .service-list .service-img img {
	width: 100%;
	border-radius: 10px;
}
.service-box .service-list .service-btn {
	text-align: center;
	margin: 20px 0 0;
}
.service-box .service-list .service-btn a {
	display: inline-block;
	width: 180px;
	font-size: 14px;
	color: #394b56;
	text-decoration: none;
	border: 1px solid #56656f;
	padding: 10px 2px;
	background: #fff;
	position: relative;
	border-radius: 60px;
}
.service-box .service-list .service-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #344b57;
}
.service-box .service-list .service-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 7px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #344b57;
}
@media screen and (min-width: 768px){ /* PC */
	.service-box {
		padding: 90px 0 100px;
	}
	.service-box h2 {
		font-size: 16px;
		padding: 0 0 26px;
	}
	.service-box h2 span {
		font-size: 40px;
	}
	.service-box .service-list {
		width: 1200px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.service-box .service-list > div,
	.service-box .service-list > a {
		width: 585px;
		height: 200px;
		box-sizing: border-box;
		padding: 40px 200px 40px 40px;
		position: relative;
	}
	.service-box .service-list > div:nth-child(4),
	.service-box .service-list > a:nth-child(4) {
		padding: 23px 200px 24px 40px;
	}
	.service-box .service-list > div h3,
	.service-box .service-list > a h3 {
		font-size: 24px;
	}
	.service-box .service-list > div:hover .service-img img,
	.service-box .service-list > a:hover .service-img img {
		transform: scale(1.08);
	}
	.service-box .service-list .service-img {
		position: absolute;
		top: 20px;
		right: 30px;
		margin: 0;
	}
	.service-box .service-list .service-img img {
		width: auto;
	}
	.service-box .service-list .service-btn {
		text-align: left;
		margin: 30px 0 0;
	}
	.service-box .service-list .service-btn a {
		text-align: center;
	}
	.service-box .service-list .service-btn a:hover {
		opacity: 0.7;
	}

}


/* IR/RECRUIT
-------------------------------------------------------------- */
.ir-recruit-box .ir-box {
	background: url(../../img/bg_ir_sp.png) center top no-repeat #fff;
	background-size: cover;
	padding: 50px 20px;
}
.ir-recruit-box .ir-box {
	text-align: center;
}
.ir-recruit-box .ir-box h2 {
	display: inline-block;
	font-size: 30px;
	padding: 0 56px;
	font-weight: bold;
	color: #fff;
	background: url(../../img/ir_icon.png) left top no-repeat;
}
.ir-recruit-box .ir-box h2 span {
	font-size: 10px;
	font-weight: normal;
	display: block;
	margin: 2px 0 0;
	opacity: 0.5;
}
.ir-recruit-box .ir-box p {
	line-height: 1.6;
	margin: 20px 0 0;
	color: #fff;
}
.ir-recruit-box .ir-box .ir-btn {
	text-align: center;
	margin: 20px 0 0;
}
.ir-recruit-box .ir-box .ir-btn a {
	display: inline-block;
	width: 200px;
	font-size: 14px;
	font-weight: bold;
	color: #394b56;
	text-decoration: none;
	border: 1px solid #56656f;
	padding: 20px 2px;
	background: #fff;
	position: relative;
	border-radius: 60px;
	box-shadow:0px 0px 10px 1px #5d798f;
}
.ir-recruit-box .ir-box .ir-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #344b57;
}
.ir-recruit-box .ir-box .ir-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 7px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #344b57;
}
.ir-recruit-box .recruit-box {
	background: url(../../img/bg_recruit_sp.png) center top no-repeat #fff;
	background-size: cover;
	padding: 50px 20px;
}
.ir-recruit-box .recruit-box {
	text-align: center;
}
.ir-recruit-box .recruit-box h2 {
	display: inline-block;
	font-size: 30px;
	padding: 0 50px;
	font-weight: bold;
	color: #222;
	background: url(../../img/recruit_icon01.png) left top no-repeat,url(../../img/recruit_icon02.png) right top no-repeat;
}
.ir-recruit-box .recruit-box h2 span {
	font-size: 10px;
	display: block;
	margin: 2px 0 0;
	opacity: 0.5;
}
.ir-recruit-box .recruit-box h3 {
	text-align: center;
	margin: 20px 0 0;
}
.ir-recruit-box .recruit-box p {
	line-height: 1.6;
	margin: 20px 0 0;
	color: #222;
}
.ir-recruit-box .recruit-box .recruit-btn {
	text-align: center;
	margin: 20px 0 0;
}
.ir-recruit-box .recruit-box .recruit-btn a {
	display: inline-block;
	width: 200px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	border: 1px solid #000;
	padding: 20px 2px;
	background: #000;
	position: relative;
	border-radius: 60px;
	box-shadow:0px 0px 10px 1px #a87a06;
}
.ir-recruit-box .recruit-box .recruit-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #fff;
}
.ir-recruit-box .recruit-box .recruit-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 7px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}
@media screen and (min-width: 768px){ /* PC */
	.ir-recruit-box {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.ir-recruit-box .ir-box {
		width: 50%;
		height: 386px;
		padding: 70px 20px 50px;
		background: none;
		position: relative;
		overflow: hidden;
	}
	.ir-recruit-box .ir-box:before {
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: url(../../img/bg_ir_pc.jpg) center top no-repeat #fff;
		background-size: cover;
		transition: transform 125ms;
		z-index: 0;
	}
	.ir-recruit-box .ir-box:hover:before {
		transform: scale(1.06);
	}
	.ir-recruit-box .ir-box h2 {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .ir-box h3 {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .ir-box p {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .recruit-box {
		width: 50%;
		height: 386px;
		padding: 70px 20px 50px;
		background: none;
		position: relative;
		overflow: hidden;
	}
	.ir-recruit-box .recruit-box:before {
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: url(../../img/bg_recruit_pc.jpg) center top no-repeat #fff;
		background-size: cover;
		transition: transform 125ms;
		z-index: 0;
	}
	.ir-recruit-box .recruit-box:hover:before {
		transform: scale(1.06);
	}
	.ir-recruit-box .recruit-box h2 {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .recruit-box h3 {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .recruit-box p {
		position: relative;
		z-index: 1;
	}
	.ir-recruit-box .ir-box .ir-btn a {
		margin: 44px 0 0;
	}
	.ir-recruit-box .ir-box .ir-btn a:hover {
		opacity: 0.7;
	}
	.ir-recruit-box .recruit-box .recruit-btn a:hover {
		opacity: 0.7;
	}
}


/* ピックアップ
-------------------------------------------------------------- */
.pickup-box {
	padding: 50px 20px 30px;
}
.pickup-box h2 {
	text-align: center;
	font-size: 13px;
	color: #394b56;
}
.pickup-box h2 span {
	display: inline-block;
	margin: 5px 0 0;
	font-weight: bold;
	font-size: 30px;
	color: #dc3400;
	background: linear-gradient(to right, #dc3400 ,#e88227);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .pickup-box h2 span { background: none; } /* IE11 */
}
.pickup-box .pickup-list ul li {
	margin: 30px 0 0;
}
.pickup-box .pickup-list ul li img {
	width: 100%;
}
.pickup-box .pickup-list ul li a {
	display: block;
}
@media screen and (min-width: 768px){ /* PC */
	.pickup-box {
		padding: 90px 0 50px;
	}
	.pickup-box h2 {
		font-size: 16px;
		padding: 0 0 10px;
	}
	.pickup-box h2 span {
		font-size: 40px;
	}
	.pickup-box .pickup-list {
		margin: 0 auto;
	}
	.pickup-box .pickup-list ul {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: flex-start;
	}
	.pickup-box .pickup-list ul li {
		margin: 30px 15px 0;
	}
	.pickup-box .pickup-list ul li img {
		width: auto;
	}
	.pickup-box .pickup-list ul li a:hover {
		opacity: 0.7;
	}
}

/* シェア
-------------------------------------------------------------- */
.share-box {
	padding: 30px 0 30px;
	margin: 0 20px;
	border-top: 1px solid #cccccc;
}
.share-box > div:nth-child(1) {
	background: #0160a9;
	padding: 30px;
	border-radius: 20px 20px 0 0;
}
.share-box > div:nth-child(2) {
	background: #eeeeee;
	padding: 20px;
	border-radius: 0 0 20px 20px;
}
.share-box > div h2 {
	text-align: center;
}
.share-box > div h3 {
	font-size: 24px;
	font-weight: bold;
	color: #005ea9;
}
.share-box > div p {
	margin: 10px 0 0;
	font-size: 14px;
	line-height: 1.4;
}
.share-box .sb-link-btn {
	text-align: center;
	margin: 20px 0 0;
}
.share-box .sb-link-btn a {
	display: inline-block;
	text-align: center;
	width: 180px;
	font-size: 14px;
	color: #0160a9;
	text-decoration: none;
	border: 1px solid #0160a9;
	padding: 10px 2px;
	background: #fff;
	position: relative;
	border-radius: 60px;
}
.share-box .sb-link-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #0160a9;
}
.share-box .sb-link-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 7px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #0160a9;
}

@media screen and (min-width: 768px){ /* PC */
	.share-box {
		padding: 50px 0 50px;
		width: 1200px;
		margin: 0 auto;
		border-top: 1px solid #cccccc;
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
	}
	.share-box > div:nth-child(1) {
		width: 430px;
		box-sizing: border-box;
		padding: 0;
		border-radius: 20px 0 0 20px;
		align-self: stretch;
		position: relative;
	}
	.share-box > div:nth-child(2) {
		width: 770px;
		box-sizing: border-box;
		padding: 26px 30px;
		border-radius: 0 20px 20px 0;
	}
	.share-box > div h2 {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.share-box > div h2 img {
		width: auto;
		max-width: unset;
	}
	.share-box > div p {
		margin: 10px 0 0;
		font-size: 13px;
		line-height: 1.4;
	}
	.share-box .sb-link-btn {
		text-align: left;
		margin: 10px 0 0;
	}
	.share-box .sb-link-btn a {
		text-align: left;
		width: 150px;
		font-size: 13px;
		padding: 5px 2px 5px 20px;
	}
	.share-box .sb-link-btn a:hover {
		opacity: 0.7;
	}
}

/* バナー（20230216追加）
-------------------------------------------------------------- */
.banner-box {
	padding: 0px 20px 100px;
	margin: 0;
}
.banner-box h2 {
	text-align: center;
	font-size: 13px;
	color: #394b56;
}
.banner-box h2 span {
	display: inline-block;
	margin: 5px 0 0;
	font-weight: bold;
	font-size: 30px;
	color: #dc3400;
	background: linear-gradient(to right, #dc3400 ,#e88227);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .banner-box h2 span { background: none; } /* IE11 */
}
.banner-box .banner-list ul li {
	margin: 30px 0 0;
}
.banner-box .banner-list ul li img {
	width: 100%;
}
.banner-box .banner-list ul li a {
	display: block;
}
@media screen and (min-width: 768px){ /* PC */
	.banner-box {
		padding: 0px 0 50px;
		width: 1200px;
		margin: 0 auto;
	}
	.banner-box h2 {
		font-size: 16px;
		padding: 0 0 10px;
	}
	.banner-box h2 span {
		font-size: 40px;
	}
	.banner-box .banner-list {
		margin: 0 auto;
	}
	.banner-box .banner-list ul {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: flex-start;
	}
	.banner-box .banner-list ul li {
		margin: 30px 0;
	}
	.banner-box .banner-list ul li img {
		width: auto;
	}
	.banner-box .banner-list ul li a:hover {
		opacity: 0.7;
	}
}
/* 最新IR情報　ボタン追加（20230303追加）
-------------------------------------------------------------- */
.irnews-box {
	padding: 40px 20px 30px;
	background:#ffffff;
	position: relative;
}
.irnews-box .ir-link-btn {
	text-align: center;
}
.irnews-box .ir-link-btn a {
	display: inline-block;
	max-width: 320px;
	width: 100%;
	font-weight: bold;
	color: #ffffff;
	text-decoration: none;
	padding: 20px 2px;
	background: linear-gradient(to right, #ffbb53 ,#d86c0a);
	position: relative;
	border-radius: 60px;
	box-shadow:0px 0px 10px 1px #dddfe3;
}
.irnews-box .ir-link-btn a > span:before {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	border-bottom: 1px solid #ffffff;
}
.irnews-box .ir-link-btn a > span:after {
	position: absolute;
	top: 2px;
	bottom: 0;
	right: 16px;
	bottom: 0;
	margin: auto;
	content: "";
	display: block;
	box-sizing: border-box;
	width: 5px;
	height: 5px;
	border: 3px solid transparent;
	border-left: 3px solid #ffffff;
}

@media screen and (min-width: 768px){ /* PC */
	.irnews-box {
		padding: 10px 0 30px;
		background:#ffffff;
		position: relative;
	}
	.irnews-box .ir-link-btn {
		text-align: center;
		margin: 40px 0 0;

	}
	.irnews-box .ir-link-btn a {
		max-width: 500px;
		font-size: 18px;
		padding: 23px 2px;
	}
	.irnews-box .ir-link-btn a:hover {
		opacity: 0.7;
	}
}

