@charset "utf-8";
.page_title{
	position:relative;
	background:url(/img/common/bg_1.jpg);
}
.page_title::before{
	content:'';
	display:block;
	width:410px;
	height:220px;
	position:absolute;
	right:54px;
	bottom:0;
	background:url(/img/index/h2.png) right bottom no-repeat;
	background-size:auto 100%;
}
.page_title h1{
	max-width:1140px;
	height:330px;
	display:flex;
	align-items:center;
	padding:68px 200px 0 20px;
	margin:auto;
	font-size:3.2rem;
	letter-spacing:2.9px;
	position:relative;
}
.page_title h1 span{
	display:inline-block;
	padding-bottom:4px;
	background:url(/img/common/dot.svg) left bottom repeat-x;
	background-size:auto 4px;
	line-height:5rem;
}

.content_area{
	max-width:1140px;
	padding:100px 20px 120px;
	margin:auto;
}
.content_area > *:first-child{margin-top:0;}

.content_area h2{
	position:relative;
	margin:100px 0 26px;
	font-size:2.8rem;
	letter-spacing:2.8px;
	line-height:1.8;
	padding-bottom:15px;
}
.content_area h2::before{
	content:'';
	display:block;
	background:#A1D454;
	width:50px;
	height:4px;
	border-radius:4px;
	position:absolute;
	left:0;
	bottom:0;
}
.content_area h3{
	position:relative;
	margin:60px 0 20px;
	font-size:2.4rem;
	line-height:1.8;
	padding-bottom:16px;
}
.content_area h3::before{
	content:'';
	display:block;
	background:#ccc;
	width:100%;
	height:2px;
	border-radius:4px;
	position:absolute;
	left:0;
	bottom:0;
}
.content_area h4{
	position:relative;
	margin:60px 0 20px;
	font-size:2rem;
	letter-spacing:2px;
	line-height:1.8;
	padding-left:13px;
}
.content_area h4::before{
	content:'';
	display:block;
	background:#A1D454;
	width:2px;
	height:19px;
	border-radius:4px;
	position:absolute;
	left:0;
	top:9px;
}
.content_area h5{
	position:relative;
	margin:40px 0 20px;
	font-size:2rem;
	letter-spacing:2px;
	line-height:1.8;
}

.content_area p{margin-bottom:20px;line-height:3rem;}
.content_area ul,.content_area ol{
	padding-left:0;
	margin-bottom:20px;
}
.content_area ol{padding-left:30px;}
.content_area ul li{list-style:none;position:relative;padding-left:20px;margin-bottom:10px;}
.content_area ul li::before{
	content:'';
	display:block;
	border-radius:50%;
	width:8px;
	height:8px;
	background:#32A700;
	position:absolute;
	left:0;
	top:0.5em;
}
.content_area ul li li::before{
	background:none;
	border:2px solid #32A700;
	left:0;
	top:0.5em;
}
.content_area ul li li li::before{
	content:'';
	border-radius:0;
	background:#32A700;
	border:none;
	left:0;
	top:0.5em;
}
.content_area ol li{list-style:decimal;}
.content_area li{margin-bottom:5px;}
table{
	width:100%;
	margin:20px 0;
	border-top:1px solid #ccc;
}
th, td{
	padding:18px 20px;
	border-bottom:1px solid #ccc;
	vertical-align:top;
}
th{
	width:25%;
	background-color:#EAF6E5;
	text-align:left;
}
td *:last-child{margin-bottom:0;}

.alignleft{margin-right:auto;text-align:left;}
.aligncenter{margin:auto;text-align:center;}
.alignright{margin-left:auto;text-align:right;}

#pankuzu{
	max-width:1140px;
	padding:0 20px;
	margin:auto;
}
#pankuzu ol{
	display:flex;
	padding:0;
	margin:0;
}
#pankuzu li{
	list-style:none;
	margin:0 25px 15px 0;
	font-size:1.3rem;
	position:relative;
}
#pankuzu li::after{
	content:'';
	position:absolute;
	top:6px;
	right:-14px;
	width:6px;
	height:6px;
	border-top:1px solid #333;
	border-right:1px solid #333;
	transform:rotate(45deg);
}
#pankuzu li:last-child:after{display:none;}
#pankuzu a{color:#333 !important;}
#pankuzu li:last-child a{
	text-decoration:none !important;
	pointer-events:none;
}
#pankuzu a:hover{text-decoration:none;}

.page_link{
	padding:0 !important;
	overflow:hidden;
}
.page_link li{
	float:left;
	list-style:none !important;
	margin:0 20px 10px 0;
}
.page_link li::before{display:none;}
.page_link a{
	position:relative;
	padding-left:20px;
	color:#333;
	font-size:1.4rem;
	text-decoration:none;
}
.page_link a:hover{text-decoration:underline;}
.page_link a::before, .page_link a::after{
	content:'';
	display:block;
	position:absolute;
	bottom:0;
	margin:auto;
}
.page_link a::before{
	top:1px;
	left:0;
	width:16px;
	height:16px;
	background:url(/img/common/arrow_b_green.svg) center no-repeat;
}
.page_link a:hover{text-decoration:underline;}

.column_2, .column_3, .column_4, .gallery,.column_5{
	display:grid;
	grid-gap:40px;
	margin-bottom:40px;
}
.column_5{
	display:grid;
	grid-gap:25px;
	margin-bottom:20px;
}
.column_2, .gallery-columns-2{grid-template-columns:repeat(auto-fit, calc((100% - 40px) / 2));}
.column_3, .gallery-columns-3{grid-template-columns:repeat(auto-fit, calc((100% - 80px) / 3));}
.column_4{grid-template-columns:repeat(auto-fit, calc((100% - 120px) / 4));}
.column_5{grid-template-columns:repeat(auto-fit, calc((100% - 100px) / 5));}
.gallery-caption{
	margin:8px 0;
	font-size:1.3rem;
	letter-spacing:0.7px;
	line-height:1.9rem;
}

.txt_box{
	display:flex;
	justify-content:space-between;
	width:100%;
	margin-bottom:70px;
}
.img_l{
	float:left;
	margin-right:60px;
	max-width:50%;
	width:340px;
}
.img_r{
	float:right;
	margin-left:60px;
	max-width:50%;
	width:340px;
}
.txt{
	overflow:hidden;
	height:100%;
	width:calc(100% - 400px);
}
.txt_box img{display:block; width:100%; height:auto;max-width:340px;}
.txt *:first-child{margin-top:0 !important;}

.img_w{
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding:0 40px;
}
.img_w img {
	display: block;
	width: 100%;
	max-width:1500px;
	height: auto;
	margin:auto;
}
.br_sp{display:none;}

.map, .movie_wrap{
	position:relative;
	width:auto;
	height:0;
	padding-bottom:480px;
	margin:40px auto 0;
	border-radius:30px;
	overflow:hidden;
}
.map iframe, .map object, .map embed, .movie_wrap iframe, .movie_wrap object, .movie_wrap embed{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:none;
}

.job .column_5{font-size:1.4rem;letter-spacing:0.84px;margin-top:30px;}
.job .column_5 p em{
	display:block;
	font-size:1.6rem;
	letter-spacing:0.96px;
	margin:29px 0 7px;
}
.job .column_5 p{
	line-height:1.5;
}
.content_area .yarigai{
	border-radius:30px;
	overflow:hidden;
	background:url(/img/common/bg_1.jpg);
	padding:73px 64px;
}
.content_area .yarigai li{
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:0 0 24px;
	margin-bottom:20px;
	background:url(/img/common/dot_3.svg) left bottom repeat-x;
	background-size:auto 4px;
	list-style:none !important;
}
.content_area .yarigai li::before{display:none;}
.content_area .yarigai li:last-child{padding:0;margin:0;background:none;}
.content_area .yarigai li img{width:170px;height:auto;}
.content_area .yarigai p{width:calc(100% - 210px);margin:0;}
.job_flow{
	border-radius:30px;
	border:2px solid #32A700;
	padding:60px;
}
.job_flow img{max-width:910px;height:auto;margin:auto;width:100%;}

.content_contact{
	border-radius:10px;
	overflow:hidden;
	background:#EAF6E5;
	display:flex;
	align-items:center;
	padding:36px 40px;
}
.content_contact_txt{
	width:48%;
	padding-right:20px;
	margin:0 !important;
}
.content_contact_tel{
	width:50%;
	display:flex;
	align-items:center;
	margin:0 !important;
	white-space:nowrap;
}
.tel_link{
	text-decoration:none;
	color:#32A700 !important;
	font-size:2.8rem;
	letter-spacing:2.8px;
}

.contact_bg{
	border-radius:10px;
	overflow:hidden;
	background:#EAF6E5;
	text-align:center;
	padding:30px 20px;
}
.contact_bg p{margin-bottom:0 !important;}
.txt_tel{display:flex;align-items:center;justify-content:center;}
.txt_small{
	font-size:1.3rem;
	letter-spacing:0.78px;
}
.contact_bg p.txt_small{margin-top:10px;line-height:1.2;}
.contact_bg .link_btn{margin:0;}





.sp_img{display:none !important;}

@media screen and (max-width:1179px){
.img_w{padding:0 20px;}
}

@media screen and (max-width:1023px){

.page_title{font-size:2.4rem;}
.content_area{padding-bottom:100px;}

p{font-size:1.4rem;}
ul, ol{font-size:1.4rem;}

th, td{
	padding:14px 15px;
	font-size:1.4rem;
}
th{width:27%;}

.link_btn a{font-size:1.4rem;}

}
@media screen and (max-width:950px){
.scroll_table.tab table{min-width:1000px;}
.page_title::before{right:20px;}
.content_area h2{
	font-size:2.4rem;
	letter-spacing:2.4px;
}
.content_area h3{
	font-size:2.2rem;
	letter-spacing:2.2px;
}
.content_area h4{
	font-size:1.8rem;
	letter-spacing:1.8px;
}
.content_area h5{
	font-size:1.8rem;
	letter-spacing:1.8px;
}
.img_l{margin-right:30px;}
.img_r{margin-left:30px;}
.txt{width:calc(100% - 370px);}
.column_5{grid-template-columns:repeat(auto-fit, calc((100% - 50px) / 3));}


}

@media screen and (max-width:767px){
.page_title h1{
	height:auto;
	padding:110px 80px 40px 20px;
	font-size:2.4rem;
	letter-spacing:2.7px;
}
.page_title::before{
	width:100%;
	height:120px;
	right:-20px;
}
.page_title h1 span{line-height:1.5;}


.content_area{padding:60px 20px;}

.content_area h2{
	margin:60px 0 26px;
	font-size:2rem;
	letter-spacing:2px;
	line-height:1.5;
	padding-bottom:15px;
}
.content_area h2::before{
	width:40px;
	height:3px;
}
.content_area h3{
	margin:60px 0 20px;
	font-size:1.8rem;
	line-height:1.5;
	padding-bottom:12px;
}
.content_area h4{
	margin:40px 0 20px;
	font-size:1.6rem;
	line-height:1.5;
	letter-spacing:1.6px;
	padding-left:8px;
}
.content_area h4::before{
	height:16px;
	top:3px;
}
.content_area h5{
	font-size:1.6rem;
	letter-spacing:1.6px;
}

p,ul, ol{
	margin-bottom:15px;
	font-size:1.4rem;
	letter-spacing:0.84px;
}
ul li:not(:last-child),
ol li:not(:last-child){
	margin-bottom:10px;
}
* + dl{margin-top:10px;}
dl{margin-bottom:15px;}

th, td{
	padding:14px 16px;
	font-size:1.4rem;
	letter-spacing:0.84px;
}
th{width:32%;}

.col_table{table-layout:auto;}

.column_4{grid-template-columns:repeat(auto-fit, calc((100% - 20px) / 2));grid-gap:20px;}

#pankuzu{display:none;}

.page_link li a{font-size:1.2rem;}

.link_btn a{
	max-width:300px;
	padding:13px 0 15px;
}

.tel{pointer-events:auto;}
.scroll_table.sp table{min-width:800px;}
.img_w{padding:0 20px;}
.map, .movie_wrap{padding-bottom:300px;border-radius:20px;}
.column_5{grid-template-columns:repeat(auto-fit, calc((100% - 50px) / 3));}


.content_area .yarigai{
	border-radius:20px;
	padding:36px 20px;
}
.content_area .yarigai li img{width:120px;}
.content_area .yarigai p{width:calc(100% - 140px);}
.job_flow{border-radius:20px;padding:20px;}

.recruit .txt_box{margin-top:50px;}
.recruit .img_l{margin-right:20px;}
.recruit .img_l img{border-radius:20px;}
.recruit .txt{width:calc(100% - 360px);}
.content_area .check_list li{
	padding:17px 0 21px 39px;
	margin-bottom:0;
}
.content_area .check_list li::before{
	content:'';
	width:24px;
	height:24px;
	background:url(/img/common/icon_check.svg) no-repeat;
	background-size:24px;
	position:absolute;
	left:4px;
	top:15px;
}
.content_area .check_list li:last-child{padding-bottom:5px;margin-bottom:0;background:none;}


.content_contact{
	display:block;
	padding:16px 20px;
}
.content_contact_txt{
	width:auto;
	padding-right:0;
}
.content_contact_tel{
	width:auto;
}
.tel_link{
	font-size:2.4rem;
	letter-spacing:2.4px;
}

.contact_bg{
	padding:16px 20px;
}
.txt_small{
	font-size:1.2rem;
	letter-spacing:0.2px;
}
.pc_img{display:none !important;}
.sp_img{display:block !important;}
.job .column_5 p em{margin-top:14px;}
.link_btn a{font-size:1.4rem;}
.br_sp{display:inline;}

}


@media screen and (max-width:599px){
.column_2, .column_3, .column_4{grid-template-columns:repeat(auto-fit, 100%);}
.column_3, .column_4{grid-gap:11px;grid-template-columns:repeat(auto-fit, calc((100% - 11px) / 2));}
.column_5{grid-template-columns:repeat(auto-fit, calc((100% - 25px) / 2));}

.txt_box{
	display:block;
	margin-bottom:50px;
}
.img_l,.img_r{
	float:none;
	margin:0 0 20px;
	max-width:none;
	width:auto;
}
.txt{
	height:auto;
	width:auto;
}
.txt_box img{max-width:none;}

.content_area .yarigai li{
	display:block;
	padding:0 0 24px;
	margin-bottom:20px;
}
.content_area .yarigai li img{width:170px;height:auto;margin:0 auto 20px;}
.content_area .yarigai p{width:auto;margin:0;}
.recruit .txt_box{margin-top:50px;}
.recruit .img_l{margin-right:0;}
.recruit .img_l img{overflow:hidden;border-radius:20px;}
.recruit .txt{width:auto;}

}