@charset "UTF-8";
.main {
	background: url(../images/top/bg.png);
	background-size: 100%;
	background-repeat: repeat-y;
	background-position: center top;
}
@media print, screen and (min-width:1100px){
	.main {
		background-size: cover;
		background-position: center -50px;
	}
}
.modal-inline.recruit,
.inline_wrap{
	display:none;
}
.modal-recruit #cboxContent{
	margin-top:48px;
	padding-bottom:0;
}
.modal-recruit #cboxClose{
	top:-48px;
	right:0;
	width:40px;
	height:40px;
	background-color:#fff;
	background-position:center;
	background-size:60%;
	border:2px solid #c6c6c6;
	border-radius:50%;
}

.mainvisual{
	position:relative;
	height:0;
	padding:0 0 42%;
	overflow:hidden;
}
.mainvisual_iframe{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
@media print, screen and (min-width:1100px){
	.mainvisual{
		height:auto;
		padding:0;
	}
	.mainvisual_iframe{
		display:block;
		position:relative;
		width:1100px;
		height:462px;
		margin:0 auto;
	}
}

.sec{
	margin-bottom:56px;
}
.sec_ttl_en{
	line-height:1;
	margin-bottom:4px;
	font-size:18px;
	font-style:italic;
}
.sec_ttl{
	margin-bottom:16px;
	font-family:'Optima','Segoe UI','ヒラギノ明朝 ProN','Hiragino Mincho ProN','Yu Mincho Light','YuMincho','Yu Mincho','游明朝体',serif;
	font-size:24px;
}
.sec_ttl_inner{
	display:inline-block;
	position:relative;
}
.sec_ttl_inner:after{
	content:"";
	display:block;
	background:#c4d700;
	width:50%;
	height:2px;
	margin-top:2px;
}
.sec_txt{
	font-size:14px;
}

.more-arrow{
	display:block;
	position:relative;
	margin-top:16px;
	width:109px;
	height:8px;
	text-indent:200%;
	white-space:nowrap;
	overflow:hidden;
}
.more-arrow:before,
.more-arrow:after{
	content:"";
	display:block;
	position:absolute;
	background:#fff;
	height:1px;
}
.more-arrow:before{
	bottom:0;
	width:100%;
}
.more-arrow:after{
	top:0;
	right:-1px;
	width:17px;
	transform:rotate(45deg);
}
.more{
	display:block;
	position:relative;
}
.more-basic{
	width:240px;
	margin:0 auto;
	padding:8px 0;
	background:#c5d802;
	color:#007e3d;
	text-align:center;
	font-size:16px;
}
.more-basic:before,
.more-basic:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	right:8px;
	margin:auto;
	background:#007e3d;
	height:1px;
}
.more-basic:before{
	bottom:0;
	width:32px;
}
.more-basic:after{
	bottom:7px;
	width:8px;
	transform:rotate(45deg);
}
.more-ghost{
	width:168px;
	color:#007e3d;
	font-size:14px;
}
.more-ghost:before,
.more-ghost:after{
	content:"";
	display:block;
	position:absolute;
	right:8px;
	margin:auto;
	background:#007e3d;
	height:1px;
}
.more-ghost:before{
	top:2px;
	bottom:0;
	width:56px;
}
.more-ghost:after{
	top:0;
	bottom:4px;
	width:6px;
	transform:rotate(45deg);
}

.sec-topics{
	padding:16px 40px 24px;
	border-bottom:1px solid #efefef;
}
.sec-topics .sec_ttl{
	margin-bottom:0;
	color:#007e3d;
	font-family:'Optima','Segoe UI';
	font-size:16px;
	font-weight:normal;
	font-style:italic;
}
.sec-topics .sec_inner{
	position:relative;
}
.sec-topics .slick-arrow{
	position:absolute;
	top:-2px;
	width:40px;
	height:40px;
	text-indent:200%;
	white-space:nowrap;
	overflow:hidden;
}
.sec-topics .slick-arrow:hover:not(.slick-disabled){
	opacity:.6;
	cursor:pointer;
}
.sec-topics .slick-prev{
	right:40px;
}
.sec-topics .slick-next{
	right:0;
}
.sec-topics .slick-arrow:before,
.sec-topics .slick-arrow:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	margin:auto;
	background:#007e3d;
	height:1px;
}
.sec-topics .slick-arrow:before{
	right:0;
	bottom:0;
	left:0;
	width:12px;
}
.sec-topics .slick-arrow:after{
	bottom:4px;
	width:5px;
}
.sec-topics .slick-prev:after{
	left:14px;
	transform:rotate(-45deg);
}
.sec-topics .slick-next:after{
	right:14px;
	transform:rotate(45deg);
}
.sec-topics .slick-disabled:before,
.sec-topics .slick-disabled:after{
	background:#d0d0d0;
}
.sec-topics .slick-slider{
	position:static;
}
.topics_date,
.topics_txt{
	font-size:14px;
}
.topics_date{
	color:#919191;
}
.topics_txt{
	line-height:1.6;
	margin-top:4px;
}

.sec-movie{
	padding:40px;
}
.sec-movie .sec_ttl_en{
	color:#007e3d;
}
.sec-movie .sec_ttl{
	margin-bottom:8px;
}
.sec-movie .sec_body{
	background:#fafafa;
	padding: 40px;
	display: block;
}
.sec-movie .movie_list_item{
	width:100%;
}
.sec-movie .sec_txt{
	font-size:14px;
}
.sec-movie .more{
	margin-top:64px;
}

.sec-business .sec_body{
	background:#fafafa;
	padding: 40px;
	display: block;
}

.sec-business .sec_txt{
	font-size:14px;
}
.sec-business .more{
	margin-top:64px;
}

.sec-date{
	padding:40px;
	background:#fafafa;
}
.date_list_item{
	display:flex;
	flex-direction:column;
	align-items:center;
	margin-top:48px;
	text-align:center;
}
.date_list_img{
	width:auto;
	margin-bottom:4px;
}
.date_dl{
	margin-top:auto;
	color:#007e3d;
	font-size:16px;
}
.date_dt{
	font-weight:bold;
}
.date_num{
	line-height:1;
	margin-right:4px;
	font-size:39px;
	font-style:italic;
}
.date_flex{
	display:flex;
	flex-direction:column;
	align-items:center;
}
.date_sup{
	position:absolute;
}
.date_small{
	line-height:1;
	font-size:12px;
}
.sec-date .more{
	margin-top:72px;
}

.sec-msg{
	padding:0 40px;
}
.sec-msg .sec_ttl_en{
	color:#007e3d;
	text-align:center;
}
.sec-msg .sec_ttl{
	margin-bottom:8px;
	text-align:center;
}
.sec-msg .sec_ttl_inner:after{
	width:56px;
	margin-right:auto;
	margin-left:auto;
}
.msg_list{
	position:static;
	width:100vw;
	margin:0 calc(50% - 50vw);
}
.msg_list .slick-arrow{
	position:absolute;
	top:3px;
	width:56px;
	height:56px;
	border:1px solid #007e3d;
	border-radius:50%;
	text-indent:200%;
	white-space:nowrap;
	overflow:hidden;
}
.msg_list .slick-arrow:hover:not(.slick-disabled){
	opacity:.6;
	cursor:pointer;
}
.msg_list .slick-prev{
	right:68px;
}
.msg_list .slick-next{
	right:0;
}
.msg_list .slick-arrow:before,
.msg_list .slick-arrow:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	margin:auto;
	background:#007e3d;
	height:1px;
}
.msg_list .slick-arrow:before{
	right:0;
	bottom:0;
	left:0;
	width:24px;
}
.msg_list .slick-arrow:after{
	bottom:4px;
	width:7px;
}
.msg_list .slick-prev:after{
	left:14px;
	transform:rotate(-45deg);
}
.msg_list .slick-next:after{
	right:14px;
	transform:rotate(45deg);
}
.msg_list .slick-disabled{
	border-color:#d0d0d0;
}
.msg_list .slick-disabled:before,
.msg_list .slick-disabled:after{
	background:#d0d0d0;
}
.msg_list .slick-list{
	overflow:visible;
}
.msg_list_item{
	position:relative;
	width:300px;
	max-height:400px;
}
.msg_list_link{
	display:block;
}
.msg_list_link:after{
	content:"";
	position:absolute;
	top:50%;
	right:0;
	bottom:0;
	left:0;
	background:linear-gradient(to top,rgba(0,126,61,.6),rgba(0,126,61,0));
}
.msg_list_data{
	line-height:1.3;
	position:absolute;
	bottom:32px;
	left:32px;
	z-index:1;
	color:#fff;
	font-size:16px;
}
.msg_list_num{
	font-style:italic;
}
.msg_list_div,
.msg_list_year{
	font-family:'ヒラギノ明朝 ProN','Hiragino Mincho ProN','Yu Mincho Light','YuMincho','Yu Mincho','游明朝体',serif;
}
.msg_list_div{
	margin-top:16px;
	font-size:20px;
}
.msg_list_year{
	margin-top:4px;
}
.sec-msg .slick-dots{
	display:flex;
	justify-content:center;
	margin-top:8px;
}
.sec-msg .slick-dots li{
	margin:0 6px;
}
.sec-msg .slick-dots button{
	width:32px;
	height:3px;
	background:#eaeaea;
	text-indent:200%;
	white-space:nowrap;
	overflow:hidden;
}
.sec-msg .slick-active button{
	background:#007e3d;
}

.sec-card{
	padding:0 40px;
}
.card_wrap{
	display:flex;
	flex-direction:column;
	align-items:center;
}
.card{
	width:100%;
}
.card + .card{
	margin-top:48px;
}
.card_link{
	display:block;
	width:100%;
	box-shadow:0 3px 6px rgba(0,0,0,.1);
}
.card_body{
	position:relative;
	padding:0 16px 24px;
	background: #fff;
}
.card_ttl_wrap{
	display:flex;
	flex-direction:column;
	justify-content:center;
	width:98px;
	height:88px;
	margin-top:-48px;
	background:#007e3d;
	color:#fff;
	text-align:center;
}
.card_ttl_en{
	font-size:14px;
	font-style:italic;
}
.card_ttl{
	font-family:'Optima','Segoe UI','ヒラギノ明朝 ProN','Hiragino Mincho ProN','YuMincho','Yu Mincho','游明朝体',serif;
}
.card_subttl{
	font-family:'Optima','ヒラギノ明朝 ProN','Hiragino Mincho ProN','YuMincho','Yu Mincho','游明朝体',serif;
}
.card_ttl{
	font-size:14px;
}
.card_subttl{
	line-height:1.3;
	margin:16px 0;
	color:#007e3d;
	font-size:24px;
	font-weight:normal;
}
.card_txt{
	line-height:1.6;
	margin-bottom:16px;
	font-size:16px;
}

.panel + .panel{
	margin-top:24px;
}
.panel_link{
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	height:260px;
	background:no-repeat;
	background-size:cover;
	color:#fff;
	font-family:'Optima','Segoe UI','ヒラギノ明朝 ProN','Hiragino Mincho ProN','Yu Mincho Light','YuMincho','Yu Mincho','游明朝体',serif;
	font-size:24px;
}
.panel_link:before,
.panel_link:after{
	content:"";
	display:block;
	position:absolute;
	right:40px;
	background:#fff;
	height:1px;
}
.panel_link:before{
	bottom:32px;
	width:67px;
}
.panel_link:after{
	bottom:35px;
	width:6px;
	transform:rotate(45deg);
}
.panel_link-welfare{
	background-image:url("../images/top/panel_welfare.jpg");
}
.panel_link-faq{
	background-image:url("../images/top/panel_faq.jpg");
}

.sec-recruit{
	padding:40px;
	background:#fafafa;
}
.sec-recruit .sec_body{
	display:flex;
	flex-direction:column;
	align-items:center;
}
.recruit_imglist{
	display:flex;
	justify-content:center;
	margin:32px -4px 0;
	max-width:100%;
}
.recruit_imglist_item{
	display:flex;
	align-items:center;
	justify-content:center;
	width:33.3%;
	height:238px;
	max-width:165px;
	margin:0 4px;
	overflow:hidden;
}
.recruit_imglist_item:nth-child(2){
	justify-content:flex-end;
}
.recruit_img{
	width:auto;
	max-height:auto;
	max-width:167px;
}
.sec-recruit .sec_txt{
	margin-top:24px;
	font-size:16px;
}
.sec-recruit .more{
	margin-top:40px;
}

.sec-gallery .sec_ttl_en{
	text-align:center;
}
.sec-gallery .sec_ttl{
	margin-bottom:8px;
	text-align:center;
}
.sec-gallery .sec_ttl_inner:after{
	width:56px;
	margin-right:auto;
	margin-left:auto;
}
.modal_list_wrap{
	padding:0;
}
.modal_list{
	margin-top:40px;
}
.modal_list li{
	width:50%;
	margin:0;
}

.js-animate{
	position:relative;
	top:120px;
	opacity:0;
    transition:all 1.0s;
}
.js-animate.js-moving{
    top:0;
    opacity:1;
}

@media print, screen and (min-width:768px){
	.sec{
		margin-bottom:96px;
	}
	.sec_ttl{
		margin-bottom:32px;
		font-size:24px;
	}
	.more-arrow{
		margin-top:64px;
	}

	.sec-movie{
		min-height: 350px;
	}
	.sec-movie .movie_list_item{
		position:absolute;
		width:53%;
		z-index: 2;
	}
	.sec-movie .sec_body{
		position:absolute;
		top:-50px;
		right: 0;
		width: calc(50% + 100px);
		padding:64px 64px 64px 164px;
		z-index: 1;
	}
	.sec-movie .sec_inner{
		position:relative;
		max-width:1100px;
		margin:auto;
		padding-bottom:83px;
	}
	.sec-movie .more{
		margin-left:0px;
		margin-top:44px;
	}
	.sec-business .sec_inner{
		position:relative;
		max-width:1100px;
		margin:auto;
		padding-bottom:83px;
	}
	.sec-business img{
		max-width:635px;
	}
	.sec-business .sec_body{
		position:absolute;
		top:75px;
		right:0;
		width:50%;
		padding:64px 64px;
	}
	.sec-business .more{
		margin-left:0px;
		margin-top:44px;
	}
a.work-hover:hover{
	background:#229057;
	opacity:1.0;
}

	.date_list{
		display:flex;
		justify-content:center;
	}
	.date_list_item + .date_list_item{
		margin-left:110px;
	}

	.sec-msg .sec_ttl{
		margin-bottom:32px;
	}
	.msg_list_item{
		width:30vw;
		overflow:hidden;
	}
	.msg_list_img{
		width:100%;
	}

	.card_img{
		width:100%;
	}

	.panel_wrap{
		display:flex;
		max-width:100%;
		margin:0 auto;
	}

	.panel{
		flex:1;
	}
	.panel + .panel{
		margin:0;
	}
	.panel_link{
		height:283px;
	}

	.modal_list_wrap{
		width:100vw;
		max-width:none;
		margin:0 calc(50% - 50vw);
	}
	.modal_list{
		justify-content:flex-start;
	}
	.modal_list li{
		width:25%;
		margin:0 !important;
	}
}
@media print, screen and (min-width:1200px){
	.sec-topics .sec_inner{
		display:flex;
		max-width:1100px;
		margin:0 auto;
	}
	.topics_list{
		max-width:960px;
		margin-top:3px;
		margin-left:16px;
	}
	.topics{
		display:flex;
	}
	.topics br{
		display:none;
	}
	.topics_txt{
		margin-top:3px;
		padding:0 0 0 32px;
	}

	.sec-movie .sec_inner{
		position:relative;
		max-width:1100px;
		margin:auto;
	}

	.sec-date{
		margin-left:calc((100vw - 1180px) / 2);
	}
	.sec-date .sec_inner{
		display:flex;
		justify-content:space-between;
		position:relative;
		max-width:1100px;
	}
	.sec-date .more{
		position:absolute;
		bottom:0;
	}

	.sec-msg .sec_inner{
		position:relative;
		max-width:1100px;
		margin:auto;
	}

	.card_wrap{
		align-items:stretch;
		justify-content:center;
		flex-direction:row;
	}
	.card{
		max-width:356px;
	}
	.card + .card{
		margin:0 0 0 16px;
	}
	.card_link{
		height:100%;
		box-shadow:none;
	}
	.card_link:hover{
		opacity:1;
		box-shadow:0 3px 6px rgba(0,0,0,.1);
	}
	.card_txt{
		font-size:14px;
	}

	.sec-recruit{
		margin-right:calc((100vw - 1180px) / 2);
	}
	.sec-recruit .sec_inner{
		display:flex;
		align-items:flex-start;
		justify-content:space-between;
		position:relative;
		max-width:1100px;
		margin-left:auto;
	}
	.sec-recruit .sec_ttl_wrap{
		margin-top:40px;
	}
	.sec-recruit .more{
		position:absolute;
		bottom:64px;
	}
	.recruit_imglist{
		margin:0 -12px;
	}
	.recruit_imglist_item{
		align-items:flex-start;
		max-width:227px;
		height:328px;
		margin:0 12px;
	}
	.recruit_imglist_item:nth-child(2){
		margin-top:64px;
	}
	.recruit_img{
		max-width:227px;
		height:328px;
	}
	.sec-recruit .sec_txt{
		position:absolute;
		top:104px;
		left:0;
		width:360px;
		font-size:14px;
	}

	.sec-gallery .sec_inner{
		position:relative;
		max-width:1100px;
		margin:auto;
	}
}



.border-r{
	border-radius: 20px;
}
.border-rtop{
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
