@charset 'utf-8';
body {
	font-size : 14px;
	color : #000;
	line-height : 1.6;
}
section,div {
	display : block;
}
ul {
	margin : 0;
}
div,span,h1,h2,h3,p,a,img,ul,li,form,label,section {
	margin : 0;
	padding : 0;
	border : 0;
	font-size : 100%;
	font : inherit;
}
h2,h3 {
	background : none !important;
	border : none;
}
.col2 .keni-main_outer {
	max-width : 100%;
}
.page-top {
	display : none !important;
}
/********* コンテンツ　/　汎用パーツ **********/
.shutter {
	position : fixed;
	top : 0;
	left : 0;
	right : 0;
	bottom : 0;
	background-image : -webkit-gradient(linear, 0% 100%, 100% 0%, color-stop(0%, #3ec9db), color-stop(100%, #006cb8));
	background-image :    -moz-linear-gradient(left bottom, #3ec9db 0%, #006cb8 100%);
	background-image : -webkit-linear-gradient(left bottom, #3ec9db 0%, #006cb8 100%);
	background-image :         linear-gradient(to right top,
	#3ec9db 0%,
	#006cb8 100%);
	z-index : 9999;
	        animation : byeShutter 2s forwards;
	z-index : 9999;
	-webkit-animation : byeShutter 2.6s forwards;
	        animation : byeShutter 2.6s forwards;
}
.shutter::before {
	content : '';
	position : absolute;
	top : 0;
	left : 0;
	bottom : 0;
	margin : auto;
	background-color : #fff;
	width : 0;
	height : 1px;
	-webkit-animation : shutterOpen 2.2s forwards;
	        animation : shutterOpen 2.2s forwards;
}
.content {
	-webkit-animation : contentScale 2.6s forwards;
	        animation : contentScale 2.6s forwards;
}
@keyframes byeShutter {
	70% {
		opacity : 1;
	}
	100% {
		opacity : 0;
		display : none;
		z-index : -1;
	}
}
@keyframes shutterOpen {
	0% {
		width : 0;
		height : 1px;
	}
	50% {
		width : 100%;
		height : 1px;
	}
	90% {
		width : 100%;
		height : 100%;
	}
	100% {
		width : 100%;
		height : 100%;
	}
}
#wrap {
	padding-top : 0;
}
.content a {
	display : block;
	color : #000;
	text-decoration : none;
}

.cf:before,.cf:after {
	content : '';
	display : block;
	height : 0;
	overflow : hidden;
}
.cf:after {
	clear : both;
}
.sec-ttl {
	color : #3e74cc;
	font-size : 14px;
	font-weight : bold;
}
.sec-ttl .en {
	font-size : 70px;
	display : block;
}
.en {
	font-family : 'Roboto';
}

.content .l_inner {
	margin : 0 auto;
	width : 100%;
	max-width : 1280px;
	position : relative;
}
.content .l_inner {
	font-weight : bold;
}
.content .point-wrap {
	color : #fff;
}
.content .point-wrap .bg p {
	background : #3e74cc;
}
.effect-fade {
	opacity : 0;
	transform : translate(0, 45px);
	transition : opacity 1.2s, transform 2.2s cubic-bezier(0, -0.01, 0, 1.08);
}
.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
/* 2つ目の要素に200msのdelayをかける */
.content .point-wrap .effect-fade:nth-of-type(2) {
	   -moz-transition-delay : 200ms;
	-webkit-transition-delay : 200ms;
	     -o-transition-delay : 200ms;
	    -ms-transition-delay : 200ms;
}
/* 3つ目の要素に400msのdelayをかける */
.content .point-wrap .effect-fade:nth-of-type(3) {
	   -moz-transition-delay : 300ms;
	-webkit-transition-delay : 300ms;
	     -o-transition-delay : 300ms;
	    -ms-transition-delay : 300ms;
}
@media screen and (min-width: 768px) and (max-width: 1300px) {
	.content .l_inner {
		padding-left : 10px;
		padding-right : 10px;
	}
}
@media screen and (min-width: 768px) {
	.l_header.is_fixed {
		position : fixed;
	}
	.l_header {
		position : absolute;
		top : 0;
		height : auto;
	}
	.l_header .logo a {
		width : 200px;
		height : 200px;
	}
	.l_header.is_fixed .logo {
		width : 100px;
		height : 100px;
	}
	.l_header.is_fixed .logo a {
		width : 100px;
		height : 100px;
	}
	.l_header.is_fixed .logo img {
		width : 60px;
		height : auto;
	}
	.l_header.is_fixed .gnavi,.l_header.is_fixed .btn-cmn {
		height : 55px;
	}
	.l_header.is_fixed .gnavi a {
		padding : 5px 0;
	}
	.l_header.is_fixed .gnavi a.btn-cmn {
		line-height : 1.3;
		padding : 5px 0 0;
	}
	.content .l_inner {
		padding-top : 55px;/*header*/
	}
	.content .line3 {
		max-width : 1040px;
		margin : auto;
	}
	.content .line3 .box {
		width : 32.3%;
		margin : 0.75%;
	}
	.content .line3 .point {
		padding-bottom : 35px;
		font-size : 22px;
		position : relative;
	}
	.content .line3 .point::after {
		display : block;
		content : '';
		width : 1px;
		height : 25px;
		background : #fff;
		position : absolute;
		bottom : 0;
		left : 50%;
	}
	.content .point-wrap .bg {
		background : #fff;
		padding-top : 25px;
		height : 475px;
	}
	.content .point-wrap .bg p {
		font-size : 20px;
		padding : 25px 5px;
		margin : 0 25px 27px;
		line-height : 2;
	}

	.sp {
		display : none !important;
	}
}

@media screen and (max-width: 767px) {
	.l_inner {
		padding : 0 4.2%;
	}
	.l_header {
		position : absolute;
	}
	.l_header.is_fixed {
		background : #fff;
		height : 60px;
		position : fixed;
		top : 0;
	}
	.l_header .logo,.l_header .logo a {
		width : 120px;
		height : 120px;
	}
	.l_header .logo img {
		width : 71.78px;
		height : 69.99px;
	}
	.l_header.is_fixed .logo a {
		width : 60px;
		height : 60px;
	}
	.l_header.is_fixed .logo img {
		width : 50.246px;
		height : 48.993px;
	}
	.gnavi-btn {
		top : 16px;
	}
	.l_header.is_fixed .gnavi-btn {
		top : 7px ;
	}
	.pc {
		display : none;
	}
	.sec-ttl {
		font-size : 12px;
	}
	.sec-ttl .en {
		font-size : 44px;
	}

	.content .line3 {
		width : 90%;
		margin : auto;
	}
	.content .line3 .box {
		padding-bottom : 35px;
	}
	.content .point-wrap {
		width : 100%;
	}
	.content .line3.point-wrap .box {
		position : relative;
		font-size : 22px;
		padding-bottom : 0;
	}
	.content .point-wrap .point {
		font-size : 14px;
		position : absolute;
		left : 5%;
		top : 37px;
	}
	.content .point-wrap .point .num {
		font-size : 32px;
		display : block;
		line-height : 1;
	}
	.content .point-wrap .bg {
		background : #fff;
	}
}

@media screen and (min-width: 768px) {
	.main-visual {
		position : relative;
		background : url('../img/mv_01.jpg') no-repeat top -72px center;
		background-size : cover;
	}
	.main-visual .l_inner {
		padding : 30px 25px;
		height : 800px;
	}
	.main-visual .txt {
		position : absolute;
		bottom : 70px;
		left : 9.7%;
		max-width : 92%;
	}
	.main-visual .mvimg-wrap {
		width : 0;
		height : 302px;
		overflow : hidden;
		transition : 1000ms cubic-bezier(0, 0, 0.3, 1.01);
	}
	.main-visual .mvimg-wrap img {
		max-width : 610px;
	}
	.main-visual .mvimg-wrap.is-show {
		width : 610px;
	}
}
@media screen and (min-width: 768px) and (max-width: 899px) {
	.main-visual .mvimg-wrap img {
		max-width : 610px;
	}
	.main-visual .mvimg-wrap.is-show {
		width : 610px;
	}
}
@media screen and (max-width: 767px) {
	.main-visual {
		background : url('../img/mv_01_sp.jpg') no-repeat 0 center;
		background-size : cover;
		padding-bottom : 20px;
	}
	.main-visual .l_inner {
		height : 70vh;
		padding : 290px 0 0;
	}
	.main-visual .txt {
		max-width : 88%;
		margin : auto;
	}
	.main-visual .mvimg-wrap {
		width : 0;
		height : 163px;
		overflow : hidden;
		transition : 1000ms cubic-bezier(0, 0, 0.3, 1.01);
	}
	.main-visual .mvimg-wrap img {
		max-width : 325px;
	}
	.main-visual .mvimg-wrap.is-show {
		width : 325px;
	}
}
@media screen and (max-width: 320px) {
	.main-visual .mvimg-wrap img {
		max-width : 280px;
	}
	.main-visual .mvimg-wrap.is-show {
		width : 280px;
	}
}
.concept .sec-ttl {
	text-align : right;
}
@media screen and (min-width: 768px) {
	.concept {
		background : url('../img/con_01.jpg') no-repeat center bottom;
		background-size : 100% auto;
		margin : 30px 0 80px;
	}
	.concept .l_inner {
		max-width : 1040px;
		font-size : 34px;
		padding-bottom : 700px;
	}
	.concept .balloon1,.concept .balloon2 {
		color : #fff;
		font-size : 24px;
		line-height : 1;
		height : 104px;
		padding : 20px 0 0 40px;
	}
	.concept .balloon1 {
		background : url('../img/con_02.svg') no-repeat 0 0;
		width : 645px;
	}
	.concept .balloon2 {
		background : url('../img/con_03.svg') no-repeat 0 0;
		width : 647px;
		margin : 0 11% 0 auto;
	}
	.concept p:last-child {
		margin-top : 70px;
	}
	.concept .conimg-wrap {
		width : 0;
		height : 157px;
		overflow : hidden;
		transition : 1000ms cubic-bezier(0, 0, 0.3, 1.01);
	}
	.concept .conimg-wrap img {
		max-width : 567px;
	}
	.concept .conimg-wrap.is-show {
		   -moz-transition-delay : 500ms;
		-webkit-transition-delay : 500ms;
		     -o-transition-delay : 500ms;
		    -ms-transition-delay : 500ms;
		width : 567px;
	}
}
@media screen and (max-width: 767px) {
	.concept {
		margin-top : 10px;
		padding-top : 60px;
		font-size : 22px;
		text-align : center;
	}
	.concept p.balloon1,.concept p.balloon2 {
		color : #fff;
		font-size : 18px;
		padding : 20px 22px;
	}
	.concept p.balloon1 {
		background : url('../img/con_02_sp.svg') no-repeat 0 0;
		width : 246px;
		height : 130px;
		text-align : left;
		line-height : 1.6;
		letter-spacing : -1px;
	}
	.concept p.balloon2 {
		background : url('../img/con_03_sp.svg') no-repeat 0 0;
		width : 245px;
		height : 130px;
		margin : -10px 0 0 auto;
		text-align : right;
		padding : 20px 22px 20px 0;
	}
	.concept .txt img {
		margin : 20px auto 0;
	}
	.concept .txt p {
		margin : 20px auto 0;
		letter-spacing : -1px;
	}
	.concept p:last-child {
		line-height : 2.5;
		margin-bottom : -100px;
	}
	.concept img.sp {
		width : 100%;
	}
	.concept .conimg-wrap {
		width : 0;
		height : 100px;
		overflow : hidden;
		transition : 1000ms cubic-bezier(0, 0, 0.3, 1.01);
		position : relative;
		left : 50%;
		margin-left : -130px ;
	}
	.concept .conimg-wrap img {
		max-width : 260px;
	}
	.concept .conimg-wrap.is-show {
		   -moz-transition-delay : 500ms;
		-webkit-transition-delay : 500ms;
		     -o-transition-delay : 500ms;
		    -ms-transition-delay : 500ms;
		width : 260px;
	}
}
.blog-list .slide .item {
	position : relative;
	font-weight : bold;
	box-shadow : 0 0 20px #ddd;
	font-size : 12px;
}
.blog-list a {
	display : block;
	transition : 0.3s;
}
.blog-list .icon {
	background : #3e74cc;
	justify-content : center;
	color : #fff;
	font-size : 24px;
	padding : 5px;
	width : 64px;
	height : 64px;
	display : flex;
	align-items : center;
	position : absolute;
	top : 0;
	left : 0;
	font-size : 12px;
}
.blog-list .ttl {
	background : #fff;
	font-size : 18px;
}
.blog-list .txt {
	font-size : 14px;
	font-weight : normal;
	line-height : 1.8;
	margin-bottom : 10px;
	padding : 0 55px;
}
.blog-list .info {
	padding : 0 55px 40px;
}
.blog-list .info a {
	display : inline !important;
}
.blog-list .tag .cate {
	color : #3e74cc;
	display : inline-block;
	margin-right : 5px;
}
.blog-list .tag .cate a {
	color : #3e74cc;
}
.blog-list .slick-counter {
	background : #000;
	color : #fff;
	display : flex;
	align-items : center;
	justify-content : center;
	z-index : 99;
	position : relative;
}
@media screen and (min-width: 768px) {
	.blog-list .slide .item {
		margin : 0 20px 20px;
		width : 720px;
	}
	.blog-list .slide .item img {
		width : 100%;
		height : 420px;
		object-fit : cover;
		font-family : 'object-fit: cover;';
	}
	.blog-list a:hover {
		opacity : 0.8;
	}

	.blog-list .ttl {
		background : #fff;
		display : inline-block;
		margin-top : -40px;
		padding : 40px 55px 10px;
		max-width : 90%;
		height : 100px;
		overflow : hidden;
	}
	.blog-list .name {
		font-size : 14px;
		display : inline-block;
		margin-right : 15px;
	}
	.blog-list .info {
		margin-right : 40px;
		background : url('../img/icn_arrow2.svg') no-repeat right 15px;
		z-index : 100;
	}
	.blog-list .slick-counter {
		width : 200px;
		height : 80px;
		margin : -40px 0 0 auto;
	}
}
@media screen and (max-width: 767px) {
	.blog-list .slide .item {
		margin : 25px 20px 30px;
		width : calc(100% - 40px);
	}
	.blog-list .slide .item img {
		width : 100%;
		height : 190px;
		object-fit : cover;
	}
	.blog-list .ttl {
		padding : 35px 6% 0;
		text-align : center;
	}
	.blog-list .txt {
		font-size : 16px;
		margin : 15px 0;
		padding : 10px 6% 0;
		background : #fff;
	}
	.blog-list .name {
		display : block;
	}
	.blog-list .info {
		padding : 10px 6% 20px;
		margin-right : 30px;
		background : url('../img/icn_arrow2.svg') no-repeat right 50%;
		background-size : 22px auto;
		z-index : 100;
	}
	.blog-list .slick-counter {
		height : 72px;
		width : 90%;
		margin : 0 auto;
	}
}
.w-style .sec-ttl {
	text-align : center;
	margin-bottom : 70px;
}
.w-style .ttl {
	font-size : 40px;
	text-align : center;
	margin-bottom : 40px;
	color : #fff;
}
.w-style .box .img-wrap {
	height : 280px;
	overflow : hidden;
	margin-bottom : 55px;
}
@media screen and (min-width: 768px) {
	.w-style .bg {
		background : url('../img/wrk_01.jpg') no-repeat 0 0;
		background-size : cover;
		max-width : 1200px;
		color : #fff;
		padding : 112px 0 0;
		height : 800px;
		margin : auto;
	}
	.w-style .box {
		text-align : center;
		font-size : 26px;
		height : 664px;
		background : url('../img/wrk_05.svg') no-repeat center bottom;
	}
}
@media screen and (max-width: 767px) {
	.w-style {
		margin-top : 10px;
		padding-top : 60px;
	}
	.w-style .sec-ttl {
		margin-bottom : 35px;
	}
	.w-style .l_inner {
		padding : 0;
	}
	.w-style .bg {
		background : url('../img/wrk_01_sp.jpg') no-repeat 0 bottom;
		background-size : cover;
		color : #fff;
		padding : 80px 0 50px;
	}
	.w-style .ttl {
		font-size : 32px;
		margin-bottom : 45px;
	}
	.w-style .box {
		font-size : 22px;
		text-align : center;
	}
	.w-style .box .img-wrap {
		width : 327px;
		height : 272px;
		overflow : hidden;
		margin : 0 auto 35px;
	}
}
@media screen and (max-width: 320px) {
	.w-style .box .img-wrap {
		width : 294.3px;
		height : 244.8px;
	}
}
.worries .sec-ttl .l_box_wrap {
	justify-content : center;
	font-size : 44px;
	margin-bottom : 20px;
}
.worries .sec-ttl .txt {
	padding : 10px 0 0 10px;
}
.worries .box:nth-child(1) img {
	margin-top : 20px;
}
.worries .box:nth-child(2) img {
	margin-top : -15px;
}
.worries .box:nth-child(3) img {
	margin-top : 20px;
}
.worries .btn-cmn {
	margin : 35px auto 0;
	max-width : 1040px;
}
@media screen and (min-width: 768px) {
	.worries {
		margin-top : 70px;
		text-align : center;
		background-image : url('../img/bg.png') ,url('../img/wrr_01.jpg') ;
		background-repeat : repeat-x, no-repeat;
		background-position : 0 bottom, center 250px;
		background-size : auto auto,100% auto;
	}
	.worries .sec-ttl {
		color : #000;
		font-size : 54px;
		margin-bottom : 365px;
		padding-bottom : 145px;
		background : url('../img/ttl_bg.png') no-repeat center bottom !important;
		background-size : 100% auto;
	}
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
	.worries {
		background-size : auto auto,1280px auto;
	}
}
@media screen and (max-width: 767px) {
	.worries {
		margin-top : 45px;
		text-align : center;
		background : url('../img/wrr_01_sp.jpg') no-repeat center 210px;
	}
	.worries img.sp {
		vertical-align : bottom;
		width : 100%;;
	}
	.worries .sec-ttl {
		color : #000;
		font-size : 32px;
		height : 210px;
		letter-spacing : -1px;
	}
	.worries .sec-ttl .l_box_wrap {
		display : flex;
		margin-bottom : 0;
		align-items : center;
	}
	.worries .sec-ttl .txt {
		font-size : 24px;
		padding : 5px 0 0 15px;
	}
	.worries .sec-ttl img {
		width : 199px;
		height : 66px;
	}
	.worries .l_inner {
		padding : 0;
	}
	.worries .bg p {
		text-align : left;
		padding : 32px 5px 32px 85px;
	}
	.worries .box img {
		margin-bottom : 20px;
	}
}
.area .sec-ttl {
	color : #fff;
	text-align : right;
	line-height : 1.3;
}

@media screen and (min-width: 768px) {
	.area {
		background : url('../img/area_01.jpg') no-repeat center center;
		background-size : cover;
		margin-top : 120px;
		height : 400px;
		color : #fff;
	}
	.area .sec-ttl {
		margin-right : 11%;
		padding-top : 40px;
		line-height : 1;
	}
	.area .l_box_wrap {
		padding : 0 8%;
		max-width : 82%;
		margin-top : -15px;
	}
	.area .txt {
		line-height : 1.8;
		font-size : 42px;
		padding-right : 4%;
		width : calc(100% - 290px);
		margin-top : -10px;
	}
	.area .map {
		width : 290px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.area .l_box_wrap {
		padding : 0 3%;
		max-width : 95%;
	}
}
@media screen and (max-width: 767px) {
	.area {
		background : url('../img/area_01_sp.jpg') no-repeat center 0;
		background-size : cover;
		color : #fff;
		padding : 60px 0 70px;
	}
	.area .l_box_wrap {
		display : flex;
		flex-wrap : wrap;
		margin-top : -50px;
	}
	.area .txt {
		font-size : 31px;
		letter-spacing : -1px;
		order : 2;
		width : 100%;
	}
	.area .map {
		display : block;
		order : 1;
		width : 100%;
	}
	.area .map img {
		width : 203px;
		margin-bottom : 10px;
	}
}
.how {
	margin-top : 110px;
}
.how .l_inner {
	max-width : 1040px;
}
.how .sec-ttl {
	margin-right : 11%;
	text-align : right;
	line-height : 1.3;
}
.how .flow {
	align-items : center;
	max-width : 1040px;
	margin : 0 auto;
	color : #3e74cc;
	background : #fff;
}
.how .flow.bg {
	background : #3e74cc;
	color : #fff;
}

.how .flow .image img {
	background : #fff;
}
.how .flow .step {
	width : 16%;
	text-align : center;
}
.how .btn-cmn {
	margin-top : 50px;
}
@media screen and (min-width: 768px) {
	.how .txt {
		font-size : 34px;
		margin : -20px 0 115px;
		line-height : 1.8;
	}
	.how .flow {
		font-size : 24px;
		min-height : 180px;
	}
	.how .flow .image {
		padding : 10px 10px;
		width : 180px;
	}
	.how .flow .note {
		font-size : 20px;
	}
}
@media screen and (max-width: 767px) {
	.how {
		margin-top : 10px;
		padding-top : 60px;
	}
	.how .l_inner {
		padding : 0;
		background : #fff;
		padding-bottom : 20px;
	}
	.how .txt {
		font-size : 16px;
		margin : 25px 5% 45px;
		text-align : center;
	}
	.how .flow {
		font-size : 16px;
		display : flex;
		flex-wrap : wrap;
		min-height : 182px;
	}
	.how .flow .image {
		padding : 30px 25px 10px;
		width : 150px;
	}
	.how .flow .step {
		display : none;
	}
	.how .flow p {
		width : calc(100% - 150px);
		padding-right : 10px;
	}
	.how .flow p .num {
		display : block;
		margin-bottom : 5px;
	}
	.how .flow .note {
		font-size : 14px;
	}
	.how .btn-cmn.arrow {
		display : block;
		width : 90%;
		margin : 0 auto;
		height : 60px;
		line-height : 60px;
	}
	.how .btn-cmn.arrow::after {
		background : url('../img/icn_arrow.svg') no-repeat right center;
		width : 30px;
	}
}
.copy01,.copy02 {
	margin : 50px auto 0;
	max-width : 11000px;
	font-size : 35px;
	padding : 0 4.2%;
	font-weight : bold;
	text-align : center;
}
.copy02 {
	max-width : 800px;
	justify-content : space-between;
	margin-bottom : 40px;
}
.copy02 a {
	text-decoration : underline;
	font-size : 25px;
	margin-top : 10px;
}
@media screen and (max-width: 767px) {
	.copy01,.copy02 {
		font-size : 20px;
	}
	.copy02 a {
		font-size : 16px;
	}
}
.job-ttl {
	text-align : center;
}
.job-top .job-list .box {
	margin : 0 14px;
	box-shadow : none;
}
.job-top .job-list th {
	vertical-align : top;
}
.job-top .note {
	text-align : center;
	margin : 70px auto 20px;
	font-size : 24px;
	font-weight : bold;
	color : #fff;
	padding : 0;
	text-indent : 0;
}
.job-top .note .txt {
	display : inline-block;
	position : relative;
	padding : 0 40px 0 45px;
	letter-spacing : -1px;
}
.job-top .note .txt::before,.job-top .note .txt::after {
	content : '';
	display : block;
	height : 20px;
	width : 2px;
	background : #fff;
	position : absolute;
	top : 9px ;
}
.job-top .note .txt::before {
	        transform : rotate(-20deg);
	   -moz-transform : rotate(-20deg);
	-webkit-transform : rotate(-20deg);
	left : 0;
}
.job-top .note .txt::after {
	        transform : rotate(20deg);
	   -moz-transform : rotate(20deg);
	-webkit-transform : rotate(20deg);
	right : 0;
}
.job-top .btn-job.go-list {
	width : 100%;
	max-width : 1040px;
	height : 106px;
	line-height : 106px;
	border-radius : 53px;
	font-size : 22px;
	position : relative;
}
.job-top .btn-job.go-list::after {
	display : block;
	content : '';
	width : 58px;
	height : 6px;
	position : absolute;
	right : 7%;
	top : 50%;
	margin-top : -3px;
	background : url('../img/icn_arrow.svg') no-repeat 0 center;
}
@media screen and (min-width: 768px) {
	.job-top {
		padding : 55px 10px 80px;
		margin : 80px auto 0;
		position : relative;
	}
	.job-top::after {
		background : url('../img/job_02.png') repeat-y center bottom;
		background-size : 100% auto;
		width : 100%;
		height : 620px;
		content : '';
		display : block;
		position : absolute;
		left : 0;
		bottom : 0;
		z-index : -1;
	}
	.job-top .job-list {
		max-width : 1096px;
		margin : auto;
	}
	.job-top .job-list .job-ttl {
		padding : 0 28px;
	}
	.job-top .slide2 {
		margin-top : 50px;
	}
	.job-top .box .ttl-wrap {
		padding : 15px 30px;
	}
	.job-top .box .ttl {
		font-size : 18px;
		font-weight : bold;
	}
	.job-top .box .txt {
		font-size : 16px;
		padding : 30px 50px;
	}
	.job-top .box .btn-job {
		width : calc(100% - 100px);
	}
	.job-top .job-list .slide2 {
		padding : 0 14px;
	}
}
@media screen and (max-width: 767px) {
	.job-top {
		padding : 60px 4.2% 40px;
		margin : 20px auto 0;
		background : url('../img/job_02_sp.png') no-repeat center bottom;
		background-size : 100% auto;
	}
	.job-top .slide2 {
		margin-top : 30px;
	}
	.job-top .box .txt {
		padding : 30px 60px;
	}
	.job-top .note {
		margin : 30px auto;
		padding : 0;
		font-size : 18px;
	}
	.job-top .btn-job.go-list {
		height : 72px;
		line-height : 72px;
		border-radius : 36px;
		font-size : 18px;
	}
	.job-top .btn-job.go-list::after {
		background : url('../img/icn_arrow.svg') no-repeat right center;
		width : 30px;
	}
}

.l_footer ul a {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .l_footer {
    padding-bottom: 5%;
  }

  .l_footer .l_box_wrap {
    justify-content: center;
  }
}

@media screen and (max-width: 768px) {
  body {
    height: 100vh;
  }
  .l_footer {
    position: fixed;
    bottom: 0;
    width: 100%;
  }
  .main-visual {
    background-position: top;
  }
}