@charset "utf-8";

#header_top{
	position: fixed;
	width: 100%;
	z-index: 1000;
	transition: all 0.2s ease-in-out;
	left: 0;
	top: 0;
}
#header_top.scrolled{
	background: #fff;
	border-bottom: 1px solid #dbdbdb;
}

#header_top.opened{
	background: #FFF;
	border-bottom: 1px solid #000;
}

.anim1{
	/* 0.7s easeOutCubic */
	transition: all 0.7s cubic-bezier(0.215, 0.61, 0.355, 1.000);
}
.anim2{
	/* 0.9s easeOutCubic */
	transition: all 0.9s cubic-bezier(0.215, 0.61, 0.355, 1.000);
}
.anim3{
	/* 0.6s easeOutCubic */
	transition: all 0.6s cubic-bezier(0.215, 0.61, 0.355, 1.000);
}
.anim4{
	/* 0.6s easeInCubic */
	transition: all 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

/* ==================================================================
KV
============================================================================= */
.kv{
	background: url(/images/top/kv_img.jpg) no-repeat 50% 0;
	background-size:2560px 709px;
	min-width: 980px;
	height: 709px;
	position: relative;
}
.kv .main_txt{
	position: absolute;
	top:50%;
	left: 50%;
	font-size: 36px;
	margin-left: -200px;
	text-align: center;
	margin-top: -106px;
	color: #FFF;
	text-shadow:0px 0px 5px #333;
}
.kv .main_txt span{
	font-size: 22px;
	text-shadow:0px 0px 5px #333;
}
/* ==================================================================
STORY
============================================================================= */
.story{
	position: relative;
	top:-220px;
	margin-bottom: -220px;
}
.story .story_box{
	position: relative;
	padding-bottom: 112px;
}
.story .story_box_txt{
	display: none;
}
.story .img_box{
	position: absolute;
	z-index: 1;
	width: 100%;
	top:0;
}
.story .txt_box{
	background: url(/images/top/story_bg_wh.png) no-repeat center 177px;
	background-size:1280px 836px;
}
.story .txt_box_inner{
	position: relative;
	z-index: 2;
	width: 980px;
	height: 878px;
	margin: 0 auto;
}
.story .txt_box .ttl{
	font-weight: normal;
	position: absolute;
	background: #1a1918;
	color: #fff;
	font-size: 30px;
	padding: 30px;
	width: 456px;
}
.story .txt_box .ttl span{
	font-size: 18px;
}
.story .txt_box .txt dt{
	font-size: 24px;
	position: absolute;
	width: 410px;
}
.story .txt_box .txt dd{
	font-size: 18px;
	line-height: 2;
	position: absolute;
	width: 410px;
}
.story .story_box_01 .img_box{
	background: url(/images/top/story_img_01.png) no-repeat center 40px;
	background-size:1280px 836px;
	height: 876px;
}
.story .story_box_02 .img_box{
	background: url(/images/top/story_img_02.jpg) no-repeat center 40px;
	background-size:1280px 836px;
	height: 876px;
}
.story .story_box_03 .img_box{
	background: url(/images/top/story_img_03.jpg) no-repeat center 40px;
	background-size:1280px 836px;
	height: 876px;
}
.story .story_box_01 .ttl,
.story .story_box_03 .ttl{
	left: 28px;
}
.story .story_box_02 .ttl{
	right: 28px;
}
.story .story_box_01 .txt dt,
.story .story_box_03 .txt dt{
	right: 0;
	top: 380px;
}
.story .story_box_02 .txt dt{
	left: 0;
	top: 380px;
}
.story .story_box_01 .txt dd,
.story .story_box_03 .txt dd{
	right: 0;
	top: 430px;
}
.story .story_box_02 .txt dd{
	left: 0;
	top: 430px;
}
.story .story_box_03 .txt dd.btn_box{
	right: 0;
	top: 560px;
}

.story .img_box.ready{
	opacity:0;
}
.story .story_box_01 .ttl.ready,
.story .story_box_03 .ttl.ready{
	left: -28px;
	opacity: 0;
}
.story .story_box_02 .ttl.ready{
	right: -28px;
	opacity: 0;
}
.story .story_box_01 .txt dt.ready,
.story .story_box_03 .txt dt.ready,
.story .story_box_01 .txt dd.ready,
.story .story_box_03 .txt dd.ready,
.story .story_box_03 .txt dd.btn_box.ready{
	right: -20px;
	opacity: 0;
}
.story .story_box_02 .txt dt.ready,
.story .story_box_02 .txt dd.ready{
	left: -20px;
	opacity: 0;
}
/* ==================================================================
CASES
============================================================================= */
.cases{
}
.cases .cases_ttl{
	background: url(/images/top/cases_bg.png) no-repeat 50% 0;
	background-size:2560px 348px;
	height: 348px;
	position: relative;
}
.cases .cases_ttl_inner{
	color: #FFF;
}
.cases .cases_ttl .ttl{
	font-size: 57px;
	font-weight: normal;
	position: absolute;
	top: 150px;
	left: 50%;
	margin-left: -265px;
}
.cases .cases_ttl .ttl_txt{
	font-size: 18px;
	line-height: 1.6;
	position: absolute;
	top: 150px;
	left: 50%;
	margin-left: -62px;
}
.cases .cases_ttl .ttl.ready,
.cases .cases_ttl .ttl_txt.ready{
	opacity: 0;
}
.cases .cases_box{
	position: relative;
	top:-82px;
	margin-bottom: -82px;
	padding-bottom: 104px;
	background: url(/images/top/cases_bg_wh.png) no-repeat 50% 0;
	background-size:1036px 128px;
}
.cases .cases_box ul{
	width: 980px;
	margin: 0 auto;
	padding: 28px 0 0 0;
}
.cases .cases_box li{
	float: left;
	padding: 0 8px 8px 0;
}
.cases .cases_box li:nth-of-type(3n) {
	padding: 0 0 8px 0;
}
.cases .cases_box li a{
	text-decoration: none;
	display: block;
}
.cases .cases_box li.interview_box{
	width: 486px;
}
.cases .cases_box li.blog_box,
.cases .cases_box li.link_box{
	width: 239px;
}
.cases .cases_box .img_box{
	height: 320px;
	position: relative;
}
.cases .cases_box .img_box .tag{
	position: absolute;
	left: 14px;
	bottom: 14px;
}
.cases .cases_box .img_box .tag p{
	display: inline-block;
	border: 1px solid #FFF;
	padding: 5px;
	color: #FFF;
	float: left;
	font-size: 11px;
	margin-right: 7px;
}
.cases .cases_box .img_box .page_ttl{
	position: absolute;
	left:0;
	top:120px;
	text-align: center;
	width: 100%;
	height: 78px;
}
.cases .cases_box .img_box .page_ttl::before {
	background: #b2020d none repeat scroll 0 0;
	content: "";
	display: block;
	height: 1px;
	left: 50%;
	position: absolute;
	bottom: 0;
	width: 28px;
	margin-left: -14px;
}
.cases .cases_box .img_box .page_ttl p:nth-child(1){
	font-size: 24px;
	padding-bottom: 14px;
}
.cases .cases_box li.link_box .img_box{
	background: #1a1918;
	color: #FFF;
}
.cases .cases_box li.link_box .img_box .tag{
	position: static;
	left: 14px;
	bottom: 14px;
}
.cases .cases_box li .img_box.bg_box01{
	background: url(/images/top/interview_img_01.jpg) no-repeat 50% 0;
	background-size:486px 320px;
}
.cases .cases_box li .img_box.bg_box02{
	background: url(/images/top/interview_img_02.jpg) no-repeat 50% 0;
	background-size:486px 320px;
}
.cases .cases_box li .img_box.bg_box03{
	background: url(/images/top/interview_img_03.jpg) no-repeat 50% 0;
	background-size:486px 320px;
}
.cases .cases_box li .img_box.bg_box04{
	background: url(/images/top/interview_img_04.jpg) no-repeat 50% 0;
	background-size:486px 320px;
}


/*追加*/
.cases .cases_box li .img_box.img_01{
	background: url(/images/top/blog_img_01.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_02{
	background: url(/images/top/blog_img_02.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_03{
	background: url(/images/top/blog_img_03.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_04{
	background: url(/images/top/blog_img_04.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_05{
	background: url(/images/top/blog_img_05.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_06{
	background: url(/images/top/blog_img_06.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_07{
	background: url(/images/top/blog_img_07.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_08{
	background: url(/images/top/blog_img_08.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_09{
	background: url(/images/top/blog_img_09.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_10{
	background: url(/images/top/blog_img_10.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_11{
	background: url(/images/top/blog_img_11.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_12{
	background: url(/images/top/blog_img_12.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_13{
	background: url(/images/top/blog_img_13.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_14{
	background: url(/images/top/blog_img_14.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_15{
	background: url(/images/top/blog_img_15.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_16{
	background: url(/images/top/blog_img_16.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_17{
	background: url(/images/top/blog_img_17.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_18{
	background: url(/images/top/blog_img_18.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}
.cases .cases_box li .img_box.img_19{
	background: url(/images/top/blog_img_19.jpg) no-repeat 50% 0;
	background-size:239px 320px;
}


.cases .cases_box .txt_box{
	background: #f5f5f5;
	padding: 10px 14px 14px;
	height: 108px;
	position: relative;
}
.cases .cases_box .txt_box p.tag{
	display: none;
}
.cases .cases_box .txt_box dt{
	font-size: 14px;
	line-height: 1.6;
}
.cases .cases_box .txt_box dd{
	font-size: 12px;
	color: #5d5c5c;
	padding-top: 4px;
	line-height: 1.6;
}
.cases .cases_box .txt_box dd.data{
	font-size: 11px;
	line-height: 1;
	font-style: italic;
	position: absolute;
	bottom: 14px;
	left: 14px;
}
.cases .cases_box .txt_box p{
	text-align: center;
	padding-top: 45px;
}
/* ==================================================================
CAREER
============================================================================= */
.career{
}
.career .career_ttl{
	background: url(/images/top/career_bg.jpg) no-repeat 50% 0;
	background-size:2560px 600px;
	height: 600px;
	padding-bottom: 56px;
}
.career .career_ttl_inner{
	width: 980px;
	margin: 0 auto;
	position: relative;
}
.career .career_ttl .ttl{
	font-size: 30px;
	font-weight: normal;
	padding-bottom: 28px;
	width: 405px;
	position: absolute;
	left: 575px;
	top: 155px;
}
.career .career_ttl .ttl::before {
	background: #b3030e none repeat scroll 0 0;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	position: absolute;
	bottom: 0;
	width: 56px;
}
.career .career_ttl .ttl_txt{
	font-size: 18px;
	line-height: 1.8;
	width: 405px;
	position: absolute;
	left: 575px;
	top: 235px;
}
.career .career_ttl .ttl_btn{
	width: 405px;
	position: absolute;
	left: 575px;
	top: 410px;
}
.career .career_ttl .ttl.ready{
	top: 195px;
	opacity: 0;
}
.career .career_ttl .ttl_txt.ready{
	top: 275px;
	opacity: 0;
}
.career .career_ttl .ttl_btn.ready{
	top: 450px;
	opacity: 0;
}
.career .career_box{
	padding-bottom: 112px;
}
.career .career_box ul{
	width: 980px;
	margin: 0 auto;
	padding: 28px 0 0 0;
}
.career .career_box li{
	float: left;
	width: 322px;
	height: 480px;
	padding: 0 7px 7px 0;
}
.career .career_box li:nth-of-type(3n) {
	padding: 0 0 7px 0;
}
.career .career_box li a{
	display: block;
	width:100%;
	height: 100%;
	position: relative;
}
.career .career_box li .img_box{
	width: 322px;
	height: 480px;
}
.career .career_box li .img_box.member_01{
	position: absolute;
	background: url(/images/top/img_career-members01_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_02{
	position: absolute;
	background: url(/images/top/img_career-members02_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_03{
	position: absolute;
	background: url(/images/top/img_career-members03_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_04{
	position: absolute;
	background: url(/images/top/img_career-members04_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_05{
	position: absolute;
	background: url(/images/top/img_career-members05_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_06{
	position: absolute;
	background: url(/images/top/img_career-members06_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_07{
	position: absolute;
	background: url(/images/top/img_career-members07_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_08{
	position: absolute;
	background: url(/images/top/img_career-members08_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_09{
	position: absolute;
	background: url(/images/top/img_career-members09_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_10{
	position: absolute;
	background: url(/images/top/img_career-members10_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.member_11{
	position: absolute;
	background: url(/images/top/img_career-members11_thumb.jpg) no-repeat center top;
	background-size: cover;
}

.career .career_box li .txt_box{
	position: absolute;
	left: 0;
	bottom: 28px;
	color: #FFF;
	background: rgba(0,0,0,0.9);
	width: 245px;
	padding: 14px;
}
.career .career_box li .txt_box .lead{
	font-size: 16px;
	line-height: 1.8;
	position: relative;
	padding-bottom: 7px;
}
.career .career_box li .txt_box .lead::before {
	background: #b2020d none repeat scroll 0 0;
	content: "";
	display: block;
	height: 1px;
	left: 0;
	position: absolute;
	bottom: 0;
	width: 28px;
}
.career .career_box li .txt_box .name{
	line-height: 1;
	font-size: 14px;
	padding: 14px 0 7px 0;
}
.career .career_box li .txt_box .info{
	line-height: 1.8;
	font-size: 12px;
}
.career .career_box li .txt_box .note{
	font-size: 0.7em;
	margin-top: 1.5em;
}

/* 新卒採用 */
.career.is_new-grads .career_ttl{
	background: url(/images/top/new-grads_bg.jpg) no-repeat 50% 0;
}
.career .career_box li .img_box.new-grads-member_01 {
	position: absolute;
	background: url(/images/top/img_new-grads-members01_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.new-grads-member_02 {
	position: absolute;
	background: url(/images/top/img_new-grads-members02_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.new-grads-member_03 {
	position: absolute;
	background: url(/images/top/img_new-grads-members03_thumb.jpg) no-repeat center top;
	background-size: cover;
}
.career .career_box li .img_box.new-grads-member_04 {
	position: absolute;
	background: url(/images/top/img_new-grads-members04_thumb.jpg) no-repeat center top;
	background-size: cover;
}
@media screen and (max-width:768px) {
	/* ==================================================================
	KV
	============================================================================= */
	.kv{
		background: url(/images/top/sp_kv_img.jpg) no-repeat 50% 50%;
		background-size: 100% auto;
		min-width: 100%;
		height: auto;
		padding: 105% 0 0 0;
	}
	.kv .main_txt{
		width: 400px;
		margin-left: -200px;
		margin-top: -60px;
	}

	/* ==================================================================
	STORY
	============================================================================= */
	.story{
		position: static;
		top:-220px;
		margin-bottom: -56px;
		background: #f0f0f0;
	}
	.story .story_box{
		position: relative;
		height: auto;
		padding-bottom: 0;
		top: -56px;
	}
	.story .story_box_txt{
		display: block;
		background: #FFF;
		position: relative;
		top: -84px;
		margin-left: 3%;
		margin-bottom: 28px;
		padding: 28px;
	}
	.story .story_box_txt dt{
		font-size: 24px;
		position: static;
		width: 100%;
		padding-bottom: 20px;
	}
	.story .story_box_txt dd{
		font-size: 18px;
		line-height: 2;
		position: static;
		width: 100%;
	}
	.story .story_box_txt dd.btn_box{
		text-align: center;
		padding-top:20px;
	}
	.story .story_box_txt dd br{
		display: none;
	}
	.story .img_box{
		position: static;
		z-index: 1;
		width: 100%;
		top:0;
		padding: 105% 0 0 0;
	}
	.story .txt_box{
		background: none;
		position: absolute;
		top: 0;
		height: 200px;
	}
	.story .txt_box_inner{
		position: static;;
		z-index: 2;
		width: 980px;
		height: 878px;
		margin: 0 auto;
	}
	.story .txt_box .ttl{
		position: static;
		background: #1a1918;
		color: #fff;
		font-size: 30px;
		padding: 30px;
		width: 456px;
	}
	.story .txt_box .ttl span{
		font-size: 18px;
	}
	.story .txt_box .txt{
		display: none;
	}
	.story .story_box_01 .img_box{
		background: url(/images/top/sp_story_img_01.png) no-repeat center 28px;
		background-size:100% auto;
		height: auto;
	}
	.story .story_box_02 .img_box{
		background: url(/images/top/sp_story_img_02.png) no-repeat center 28px;
		background-size:100% auto;
		height: auto;
	}
	.story .story_box_03 .img_box{
		background: url(/images/top/sp_story_img_03.png) no-repeat center 28px;
		background-size:100% auto;
		height: auto;
	}

	.story .img_box.ready{
		opacity:inherit;
	}
	.story .story_box_01 .ttl.ready,
	.story .story_box_03 .ttl.ready{
		left: inherit;
		opacity: inherit;
	}
	.story .story_box_02 .ttl.ready{
		right: inherit;
		opacity: inherit;
	}
	.story .story_box_01 .txt dt.ready,
	.story .story_box_03 .txt dt.ready,
	.story .story_box_01 .txt dd.ready,
	.story .story_box_03 .txt dd.ready,
	.story .story_box_03 .txt dd.btn_box.ready{
		right: inherit;
		opacity: inherit;
	}
	.story .story_box_02 .txt dt.ready,
	.story .story_box_02 .txt dd.ready{
		left: inherit;
		opacity: inherit;
	}

	/* ==================================================================
	CASES
	============================================================================= */
	.cases{
	}
	.cases .cases_ttl{
		background:#b3030e  url(/images/top/tb_cases_bg.png) no-repeat right top;
		background-size:auto 230px;
		height: 230px;
		position: static;
	}
	.cases .cases_ttl_inner{
		text-align: center;
	}
	.cases .cases_ttl_inner .ttl.ready,
	.cases .cases_ttl_inner .ttl_txt.ready{
		top: inherit;
		opacity: inherit;
	}
	.cases .cases_ttl .ttl{
		position: static;
		margin-left: 0;
		padding-top: 55px;
	}
	.cases .cases_ttl .ttl_txt{
		position: static;
		margin-left: 0;
		padding-top: 10px;
	}
	.cases .cases_box{
		top:0;
		margin-bottom: 0;
		padding-bottom: 104px;
		background: none;
	}
	.cases .cases_box ul{
		width: 100%;
		padding: 28px 28px 0 28px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cases .cases_box li{
		padding: 0 4px 8px 0 !important;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cases .cases_box li:nth-of-type(2n) {
		padding: 0 0 8px 4px !important;
	}
	.cases .cases_box li:nth-of-type(3n) {
		padding: 0 4px 8px 0;
	}
	.cases .cases_box li.interview_box{
		width: 50%;
	}
	.cases .cases_box li.blog_box,
	.cases .cases_box li.link_box{
		width: 50%;
	}
	.cases .cases_box .img_box{
		height: auto;
		position: relative;
		padding: 60% 0 0 0;
	}
	.cases .cases_box .img_box .tag{
		display: none;
	}
	.cases .cases_box .img_box .page_ttl{
		position: absolute;
		left:0;
		top:50%;
		text-align: center;
		width: 100%;
		height: 78px;
		margin-top: -39px;
	}
	.cases .cases_box .img_box .page_ttl::before {
		background: #b2020d none repeat scroll 0 0;
		content: "";
		display: block;
		height: 1px;
		left: 50%;
		position: absolute;
		bottom: 0;
		width: 28px;
		margin-left: -14px;
	}
	.cases .cases_box .img_box .page_ttl p:nth-child(1){
		font-size: 24px;
		padding-bottom: 14px;
	}
	.cases .cases_box li.link_box .img_box{
		background: #1a1918;
		color: #FFF;
	}
	.cases .cases_box li.link_box .img_box .tag{
		position: static;
		left: 14px;
		bottom: 14px;
	}
	.cases .cases_box li .img_box.bg_box01{
		background: url(/images/top/sp_interview_img_01.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box02{
		background: url(/images/top/sp_interview_img_02.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box03{
		background: url(/images/top/sp_interview_img_03.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box04{
		background: url(/images/top/sp_interview_img_04.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}


/*追加*/
	.cases .cases_box li .img_box.img_01{
		background: url(/images/top/sp_blog_img_01.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_02{
		background: url(/images/top/sp_blog_img_02.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_03{
		background: url(/images/top/sp_blog_img_03.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_04{
		background: url(/images/top/sp_blog_img_04.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_05{
		background: url(/images/top/sp_blog_img_05.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_06{
		background: url(/images/top/sp_blog_img_06.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_07{
		background: url(/images/top/sp_blog_img_07.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_08{
		background: url(/images/top/sp_blog_img_08.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_09{
		background: url(/images/top/sp_blog_img_09.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_10{
		background: url(/images/top/sp_blog_img_10.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_11{
		background: url(/images/top/sp_blog_img_11.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_12{
		background: url(/images/top/sp_blog_img_12.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_13{
		background: url(/images/top/sp_blog_img_13.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_14{
		background: url(/images/top/sp_blog_img_14.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_15{
		background: url(/images/top/sp_blog_img_15.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_16{
		background: url(/images/top/sp_blog_img_16.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_17{
		background: url(/images/top/sp_blog_img_17.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_18{
		background: url(/images/top/sp_blog_img_18.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.img_19{
		background: url(/images/top/sp_blog_img_19.jpg) no-repeat 50% 0;
		background-size:auto 100%;
	}

	.cases .cases_box .txt_box{
		background: #f5f5f5;
		padding: 14px;
		height: 90px;
	}
	.cases .cases_box .txt_box p.tag{
		display: block;
		padding-top: 0;
		text-align: left;
	}
	.cases .cases_box .txt_box p.tag span{
		color: #FFF;
		background: #4d4948;
		padding: 5px;
		display: inline-block;
		margin-bottom: 10px;
		font-size: 12px;
	}
	.cases .cases_box .txt_box dt{
		font-size: 14px;
	}
	.cases .cases_box .txt_box dd{
		font-size: 12px;
		color: #5d5c5c;
		padding-top: 7px;
		line-height: 1.6;
	}
	.cases .cases_box .txt_box dd:first-of-type{
		display: none;
	}
	.cases .cases_box .txt_box dd.data{
		position: static;
	}
	.cases .cases_box .txt_box p{
		padding-top: 38px;
	}

	/* ==================================================================
	CAREER
	============================================================================= */
	.career{
	}
	.career .career_ttl{
		background: url(/images/top/sp_career_bg.jpg) no-repeat 50% 0;
		background-size:100% auto;
		height: auto;
		padding-bottom: 56px;
	}
	.career .career_ttl_inner{
		width: 100%;
		position: static;;
	}
	.career .career_ttl .ttl{
		font-size: 30px;
		font-weight: normal;
		padding-bottom: 20px;
		width: 100%;
		position: relative;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    text-align: center;
    padding-top: 205px;
		top: 0;
	}
	.career .career_ttl .ttl::before {
		background: #b3030e none repeat scroll 0 0;
		content: "";
		display: block;
		height: 1px;
		left: 50%;
		margin-left: -28px;
		position: absolute;
		bottom: 0;
		width: 56px;
	}
	.career .career_ttl .ttl_txt{
		font-size: 18px;
		line-height: 1.8;
		width: 100%;
		position: static;
		padding: 28px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_ttl .ttl_btn{
		width: 100%;
		position: static;
		padding: 0 28px;
		text-align: center;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_ttl .ttl.ready{
		top: inherit;
		opacity: inherit;
	}
	.career .career_ttl .ttl_txt.ready{
		top: inherit;
		opacity: inherit;
	}
	.career .career_ttl .ttl_btn.ready{
		top: inherit;
		opacity: inherit;
	}
	.career .career_box{
		padding-bottom: 112px;
	}
	.career .career_box ul{
		width: 100%;
		margin: 0 auto;
		padding: 28px 28px 0 28px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_box li{
		width: 50%;
		height: auto;
		padding: 0 4px 8px 0 !important;
		text-align: center;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_box li:nth-of-type(2n) {
		padding: 0 0 8px 4px !important;
	}
	.career .career_box li:nth-of-type(3n) {
		padding: 0 0 8px 0;
	}
	.career .career_box li a{
		display: block;
		width:100%;
		height: auto;
		position:static;
		text-decoration: none;
	}
	.career .career_box li .img_box{
		position: static!important;
		width: 100%;
		height: auto;
		padding: 100% 0 0 0;
	}
	.career .career_box li .txt_box{
		position: static;
		left: 0;
		bottom: 28px;
		color: #FFF;
		background: rgba(0,0,0,0.9);
		width: 100%;
		padding: 14px;
		text-align: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_box li .txt_box .lead{
		line-height: 1.8;
		position: relative;
		padding-bottom: 7px;
	}
	.career .career_box li .txt_box .lead::before {
		background: #b2020d none repeat scroll 0 0;
		content: "";
		display: block;
		height: 1px;
		left: 0;
		position: absolute;
		bottom: 0;
		width: 28px;
	}
	.career .career_box li .txt_box .name{
		font-size: 18px;
		padding: 14px 0 7px 0;
		background-size:28px 1px;
	}
	.career .career_box li .txt_box .info{
		line-height: 1.8;
	}
	.career .career_box li .txt_box .node{
		font-size: 0.6em;
	}

	/* 新卒採用 */
	.career.is_new-grads .career_ttl {
		background: url(/images/top/sp_new-grads_bg.jpg) no-repeat 50% 0;
	}
}

@media screen and (max-width:570px) {
	/* ==================================================================
	KV
	============================================================================= */
	.kv{
		background: url(/images/top/sp_kv_img.jpg) no-repeat 50% 0;
		background-size: 100% auto;
		min-width: 100%;
		height: auto;
		padding: 121% 0 0 0;
	}
	.kv .main_txt{
		font-size: 22px;
		width: 320px;
		margin-left: -160px;
		margin-top: -20px;
	}
	.kv .main_txt span{
		font-size: 12px;
		text-shadow:0px 0px 5px #000000;
	}

	/* ==================================================================
	STORY
	============================================================================= */
	.story{
		position: static;
		margin-bottom: -30px;
	}
	.story .story_box{
		top: -40px;
	}
	.story .story_box_txt{
		top: -60px;
		margin-bottom: 30px;
		padding: 20px;
	}
	.story .story_box_txt dt{
		font-size: 16px;
		padding-bottom: 10px;
	}
	.story .story_box_txt dd{
		font-size: 14px;
	}
	.story .story_box_txt dd.btn_box{
		padding-top:10px;
	}
	.story .img_box{
		padding: 105% 0 0 0;
	}
	.story .txt_box{
		height: 100px;
	}
	.story .txt_box .ttl{
		font-size: 18px;
		padding: 15px;
		width: 270px;
	}
	.story .txt_box .ttl span{
		font-size: 12px;
	}
	.story .story_box_01 .img_box{
		background: url(/images/top/sp_story_img_01.png) no-repeat center 20px;
		background-size:100% auto;
		height: auto;
	}
	.story .story_box_02 .img_box{
		background: url(/images/top/sp_story_img_02.png) no-repeat center 20px;
		background-size:100% auto;
		height: auto;
	}
	.story .story_box_03 .img_box{
		background: url(/images/top/sp_story_img_03.png) no-repeat center 20px;
		background-size:100% auto;
		height: auto;
	}

	/* ==================================================================
	CASES
	============================================================================= */
	.cases{
	}
	.cases .cases_ttl{
		background:#b3030e url(/images/top/sp_cases_bg.png) no-repeat right top;
		background-size:auto 130px;
		height: 130px;
	}
	.cases .cases_ttl .ttl{
		padding-top: 30px;
		font-size: 24px;
	}
	.cases .cases_ttl .ttl_txt{
		padding-top: 5px;
		font-size: 14px;
	}
	.cases .cases_box{
		padding-bottom: 40px;
	}
	.cases .cases_box ul{
		padding: 10px 10px 0 10px;
	}
	.cases .cases_box li{
		padding: 0 0 10px 0 !important;
	}
	.cases .cases_box li:nth-of-type(2n) {
		padding: 0 0 10px 0 !important;
	}
	.cases .cases_box li:nth-of-type(3n) {
		padding: 0 0 10px 0;
	}
	.cases .cases_box li.interview_box{
		width: 100%;
	}
	.cases .cases_box li.blog_box,
	.cases .cases_box li.link_box{
		width: 100%;
	}
	.cases .cases_box .img_box{
		padding: 40% 0 0 0;
	}
	.cases .cases_box .img_box .page_ttl{
		position: absolute;
		left:0;
		top:50%;
		text-align: center;
		width: 100%;
		height: 48px;
		margin-top: -24px;
		font-size: 10px;
	}
	.cases .cases_box .img_box .page_ttl::before {
		background: #b2020d none repeat scroll 0 0;
		content: "";
		display: block;
		height: 1px;
		left: 50%;
		position: absolute;
		bottom: 0;
		width: 28px;
		margin-left: -14px;
	}
	.cases .cases_box .img_box .page_ttl p:nth-child(1){
		font-size: 20px;
		padding-bottom: 7px;
	}

	.cases .cases_box li.link_box .img_box{
		background: #1a1918;
		color: #FFF;
	}
	.cases .cases_box li.link_box .img_box .tag{
		position: static;
		left: 14px;
		bottom: 14px;
	}
	.cases .cases_box li .img_box.bg_box01{
		background: url(/images/top/sp_interview_img_01.jpg) no-repeat left 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box02{
		background: url(/images/top/sp_interview_img_02.jpg) no-repeat left 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box03{
		background: url(/images/top/sp_interview_img_03.jpg) no-repeat left 0;
		background-size:auto 100%;
	}
	.cases .cases_box li .img_box.bg_box04{
		background: url(/images/top/sp_interview_img_04.jpg) no-repeat left 0;
		background-size:auto 100%;
	}



	.cases .cases_box .txt_box{
		padding: 10px;
		height: auto;
	}
	.cases .cases_box .txt_box p.tag{
		display: block;
		padding-top: 0;
		text-align: left;
	}
	.cases .cases_box .txt_box p.tag span{
		color: #FFF;
		background: #4d4948;
		padding: 3px;
		display: inline-block;
		margin-bottom: 5px;
		font-size: 10px;
	}
	.cases .cases_box .txt_box dt{
		font-size: 12px;
	}
	.cases .cases_box .txt_box dd{
		font-size: 12px;
		color: #5d5c5c;
		padding-top: 7px;
		line-height: 1.6;
	}
	.cases .cases_box .txt_box dd.data{
		font-size: 11px;
		line-height: 1;
		font-style: italic;
	}
	.cases .cases_box .txt_box p{
		padding: 5px 0;
	}

	/* ==================================================================
	CAREER
	============================================================================= */
	.career{
	}
	.career .career_ttl{
		background: url(/images/top/sp_career_bg.jpg) no-repeat 50% 0;
		background-size:100% auto;
		height: auto;
		padding-bottom: 30px;
	}
	.career .career_ttl .ttl{
		font-size: 20px;
		padding-bottom: 20px;
		padding-top: 29%;
	}
	.career .career_ttl .ttl::before {
		margin-left: -14px;
		width: 28px;
	}
	.career .career_ttl .ttl_txt{
		font-size: 14px;
		line-height: 1.8;
		padding: 20px 10px;
	}
	.career .career_ttl .ttl_btn{
		padding: 0 10px;
	}
	.career .career_box{
		padding-bottom: 40px;
	}
	.career .career_box ul{
		width: 100%;
		margin: 0 auto;
		padding: 0 10px 0 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_box li{
		width: 50%;
		height: auto;
		padding: 0 4px 8px 0 !important;
		text-align: center;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.career .career_box li:nth-of-type(2n) {
		padding: 0 0 8px 4px !important;
	}
	.career .career_box li:nth-of-type(3n) {
		padding: 0 0 8px 0;
	}
	.career .career_box li a{
		display: block;
		width:100%;
		height: auto;
		position:static;
		text-decoration: none;
	}
	.career .career_box li .img_box{
		position: static;
		background: url(/images/top/career_member_01.jpg) no-repeat left top;
		background-size:100% auto;
		width: 100%;
		height: auto;
		padding: 100% 0 0 0;
	}
	.career .career_box li .txt_box{
		padding: 10px;
		height: 200px;
		position: relative;
		bottom: 0;
	}
	.career .career_box li .txt_box .lead{
		line-height: 1.8;
		padding-bottom: 10px;
		font-size: 14px;
	}
	.career .career_box li .txt_box .lead::before {
		width: 20px;
	}
	.career .career_box li .txt_box .lead br{
		display: none;
	}
	.career .career_box li .txt_box .profile{
		position: absolute;
		bottom: 10px;
	}
	.career .career_box li .txt_box .name{
		font-size: 14px;
		padding: 10px 0 7px 0;
		background-size:28px 1px;
	}
	.career .career_box li .txt_box .info{
		line-height: 1.8;
		font-size: 11px;
	}

}
