@charset "utf-8";
#index_wrap{padding-top:90px;}
.mv{
	position:relative;
	overflow:hidden;
	border-radius:10px;
	height:calc(100svh - 120px);
	margin:0 30px 30px;
}
.mv::after{
	content:'';
	position:absolute;
	z-index:5;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:101%;
	height:101%;
	background:#fff;
	opacity:1;
	transition:opacity 1s,visibility 1s;
}
.mv.anime_fin::after{opacity:0;visibility:hidden;}
.mv_item {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	height: calc(100svh - 220px);
	will-change: transform;
}

.mv_slide{
	position:relative;
	width:100%;
	height:calc(100svh - 220px);
	overflow:hidden;
}
#wrapper.load .mv_slide.slick-initialized{opacity:1 !important;}

.mv_slide .slick-list{border-radius:10px;}

.mv_slide img {
	width: 100%;
	height: calc(100svh - 220px);
	object-fit: cover;
	transition:transform 7s linear;
}

.img_flowup, .img_flowdown, .img_flowleft, .img_flowright, .img_smaller{transform:scale(1.1);}
.slick-current .img_flowup{transform:scale(1.1) translateY(-4%);transition:transform 10s linear;}
.slick-current .img_flowdown{transform:scale(1.1) translateY(4%);}
.slick-current .img_flowleft{transform:scale(1.1) translateX(-3%);}
.slick-current .img_flowright{transform:scale(1.1) translateX(4%);transition:transform 10s linear;}
.slick-current .img_larger{transform:scale(1.1);}
.slick-current .img_smaller{transform:scale(1);}

.mv_txt{
	position:absolute;
	left:0;
	bottom:0;
}
.mv_txt_in{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column-reverse;
	text-align:center;
	font-family:"Noto Serif JP", serif;
	color:#445C5D;
	transition:color .1s;
	position:relative;
}
.mv_txt_in h1,.mv_txt_in p{display:none;}
.mv_txt_in img{display:block;height:70px;}

.index_about{
	max-width:1160px;
	margin:120px auto 112px;
	padding:0 30px;
	display:flex;
	justify-content:space-between;
	flex-direction:row-reverse;
	align-items:center;
}
.index_about_txt{width:40.3636%;}
.index_about_txt h2{
	font-size:2.6rem;
	letter-spacing:2.6px;
	color:#0A4451;
	font-family:"Noto Serif JP", serif;
	margin-bottom:30px;
}
.index_about_txt h2::before{
	content:attr(data-name);
	font-size:1.2rem;
	letter-spacing:1.2px;
	color:#7A9096;
	display:block;
	margin-bottom:12px;
}
.index_about_txt p{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2;
}
.index_about_img{width:44.8181%;}

.more{margin:40px 0 0 3px;}
.more a,.more p{
	display:inline-block;
	position:relative;
	font-family:"Noto Serif JP", serif;
	font-size:1.8rem;
	letter-spacing:0;
	color:#0A4451;
	text-decoration:none !important;
	padding-right:67px;
}
.more a::before,.more p::before{
	content:'';
	display:block;
	width:49px;
	height:49px;
	border-radius:50%;
	border:1px solid #0A4451;
	position:absolute;
	right:0;
	top:calc(50% - 24.5px);
}
.more a::after,.more p::after{
	content:'';
	display:block;
	width:19px;
	height:5px;
	background:url(/img/common/arrow_r_green.svg) center no-repeat;
	position:absolute;
	right:15px;
	top:calc(50% - 2.5px);
}
.more a:hover::after,a:hover .more p::after{animation:arrow 0.3s forwards cubic-bezier(0.75,0,0.2,1);}
@keyframes arrow{
	0%{right:15px;opacity:1;}
	60%{right:0;opacity:0;}
	61%{right:30px;opacity:0;}
	100%{right:15px;opacity:1;}
}
.more span{position:relative;display:inline-block;padding:5px 0 10px;}
.more span::before{
	content:'';
	position:absolute;
	bottom:0;
	right:0;
	left:auto;
	width:0;
	height:2px;
	background:#093741;
	transition:width 0.3s;
}
.more a:hover span::before,a:hover .more span::before{
	right:auto;
	left:0;
	width:100%;
}

#index_news{max-width:1160px;margin:auto;padding:0 30px;}
.index_news_txt{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
}
.index_news_txt h2{
	font-family:"Noto Serif JP", serif;
	font-size:1.6rem;
	color:#7A9096;
	font-weight:300;
}
.index_news_txt h2::before{
	content:attr(data-name);
	font-size:6rem;
	letter-spacing:0;
	color:#0A4451;
	display:inline-block;
	margin-right:15px;
}
#home_news_tab_list{
	display:flex;
	margin:0;
	padding:0;
}
#home_news_tab_list li{
	list-style:none;
	margin-left:22px;
}
#home_news_tab_list a{
	display:block;
	color:#000;
	text-decoration:none;
	font-size:1.5rem;
	letter-spacing:1.5px;
	font-weight:400;
}
#home_news_tab_list a span{
	display:block;
	position:relative;
	border-bottom:2px solid rgba(0,0,0,0);
	padding-bottom:10px;
	cursor: pointer;
}
#home_news_tab_list a span::before{
	content:'';
	position:absolute;
	bottom:0;
	right:0;
	left:auto;
	width:0;
	height:2px;
	background:#093741;
	transition:width 0.3s;
}
#home_news_tab_list a:hover span::before,#home_news_tab_list .active a span::before{
	right:auto;
	left:0;
	width:100%;
}
.index_news_list{margin:40px 0 103px;}
.news_list{border-top:1px solid #ddd;}
.news_item{border-bottom:1px solid #ddd;}
.news_link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	color:#333 !important;
	text-decoration:none;
	background:url(/img/common/arrow_r_green.svg) right 20px center no-repeat;
	transition:background .3s;
	padding:24px 50px 24px 0;
}
.news_link:hover{background-color:#FAF9F8;}
.news_link_info{
	display:flex;
	width:196px;
	justify-content:space-between;
	margin-right:30px;
	align-items:center;
	padding-left:20px;
	font-size:1.2rem;
	letter-spacing:1.2px;
}
.n_day{
	font-weight:300;
	color:#515D5F !important;
}
.n_cate{
	display:inline-block;
	border:1px solid #7A9096;
	background:#fff;
	padding:2px 5px;
	color:#515D5F;
	text-align:center;
	line-height:1.2;
	font-weight:400;
	width:88px;
}
.news_link_title{
	width:calc(100% - 226px);
	font-size:1.5rem;
	font-weight:400;
	letter-spacing:1.5px;
}
.index_news_list .more{text-align:center;margin:50px 0 0;}

.index_business{
	position:relative;
	padding:60px 30px 100px;
}
.index_business::before{
	content:'';
	display:block;
	width:42%;
	min-width:450px;
	position:absolute;
	left:0;
	top:0;
	height:100%;
	border-radius:0 10px 10px 0;
	overflow:hidden;
	background:url(/img/index/bg_business.jpg) center no-repeat;
	background-size:cover;
}
.index_business_in{
	max-width:1100px;
	margin:auto;
	position:relative;
}
.index_business h2{
	color:#fff;
	font-size:1.6rem;
	letter-spacing:1.6px;
	font-family:"Noto Serif JP", serif;
}
.index_business h2::before{
	content:attr(data-name);
	display:inline-block;
	font-size:6rem;
	letter-spacing:0;
	margin-right:15px;
}
.index_business_list{margin:0;padding:0;}
.index_business_item{margin:30px 0 0;padding:0;list-style:none;}
.index_business_item a{
	display:flex;
	position:relative;
	background:#F7F6F5;
	border-radius:10px;
	overflow:hidden;
	color:#000;
	text-decoration:none;
}
.index_business_item:nth-child(even) a{flex-direction:row-reverse;}
.index_business_item .thum{
	overflow:hidden;
	position:relative;
	width:54.545454%;
}
.thum img{
	display:block;
	object-fit:cover;
	width:100%;
	height:100%;
	transition:transform .3s;
}
a:hover .thum img{transform:scale(1.03);}
.index_business_txt{
	width:45.454545%;
	display:flex;
	padding:100px 50px;
	position:relative;
}
.index_business_txt_h{
	font-size:2.4rem;
	letter-spacing:2.4px;
	font-family:"Noto Serif JP", serif;
}
.index_business_txt_p{
	font-size:1.4rem;
	letter-spacing:1.4px;
	margin:20px 0 0;
	line-height:1.7;
}
.index_business_txt .more{
	position:absolute;
	right:35px;
	bottom:35px;
}

.index_prop{
	max-width:1160px;
	margin:140px auto 130px;
	padding:0 30px;
}
.index_prop a{
	display:flex;
	align-items:center;
	height:220px;
	position:relative;
	overflow:hidden;
	border-radius:10px;
	color:#fff !important;
	text-decoration:none !important;
}
.index_prop_img{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	transition:transform .3s;
}
a:hover .index_prop_img{transform:scale(1.03);}
.index_prop_img img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.index_prop_txt{
	position:relative;
	width:100%;
	padding:0 60px;
}
.index_prop_txt h2{
	font-family:"Noto Serif JP", serif;
	font-size:3.7rem;
	font-weight:300;
}
.index_prop_txt p{
	font-weight:300;
	margin-top:18px;
	line-height:2.7rem;
}
.index_prop_txt .more{
	position:absolute;
	right:50px;
	top:calc(50% - 21px);
	margin:0;
}
.index_prop_txt .more p{
	color:#fff !important;
	margin:0;
}
.index_prop_txt .more span::before{background:#fff;}
.index_prop_txt .more p::before{
	border:1px solid #fff !important;
}
.index_prop_txt .more p::after{
	background:url(/img/common/arrow_r_white.svg) center no-repeat;
}

.index_recruit{
	max-width:1160px;
	margin:130px auto 110px;
	padding:0 30px;
	display:flex;
	justify-content:space-between;
}
.index_recruit_txt{width:45.636363%;}
.index_recruit_txt h2{
	font-family:"Noto Serif JP", serif;
	font-size:1.6rem;
	color:#7A9096;
	font-weight:300;
}
.index_recruit_txt h2::before{
	content:attr(data-name);
	font-size:6rem;
	letter-spacing:0;
	color:#0A4451;
	display:inline-block;
	margin-right:15px;
}
.index_recruit_txt p{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2;
}
.index_recruit_txt strong{
	display:inline-block;
	font-family:"Noto Serif JP", serif;
	font-weight:300;
	font-size:2.4rem;
	letter-spacing:2.4px;
	line-height:1.8;
	color:#0A4451;
	margin:24px 0 22px;
}
.index_recruit_img{width:54.363636%;}
.index_recruit_img img{border-radius:10px;}

.index_group{
	margin-top:150px;
	background:#F7F7F5;
}
.index_group_area{
	max-width:1160px;
	margin:auto;
	padding:92px 30px 100px;
}
.index_group_area h2{
	font-family:"Noto Serif JP", serif;
	font-size:1.6rem;
	color:#7A9096;
	font-weight:300;
	margin-bottom:47px;
}
.index_group_area h2::before{
	content:attr(data-name);
	font-size:5rem;
	letter-spacing:0;
	color:#0A4451;
	display:inline-block;
	margin-right:12px;
}
.index_group_list{
	display:grid;
	grid-gap:20px;
	grid-template-columns:repeat(auto-fit, calc((100% - 60px) / 4));
}
.index_group_link{
	display:block;
	position:relative;
	border-radius:2px;
}
.index_group_link::after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	border-radius:2px;
	border:1px solid #fff;
	position:absolute;
	left:0;
	top:0;
	opacity:1;
	visibility:hidden;
	transition:opacity .3s,visibility .3s,border .3s;
}
.index_group_link:hover::after{
	opacity:1;
	visibility:visible;
	border:1px solid #073742;
}

@media screen and (max-width:900px){
#index_wrap{padding-top:54px;}
.mv{
	height:440px;
	margin:0 30px 30px;
	border-radius:0
}
.mv_slide{border-radius:10px;}
.mv_slide,.mv_slide img {height:350px;}
.mv_txt_in img{height:auto;width:509px;}

.index_about{margin:60px auto 90px;}
.index_about_txt{
	width:52%;
	padding-top:0;
}
.index_about_txt h2{
	font-size:2.4rem;
	letter-spacing:2.4px;
	margin-bottom:22px;
}
.index_about_txt h2 .sp_size{display:inline !important;}
.index_about_txt h2::before{
	margin-bottom:12px;
}
.index_about_txt p{
	line-height:1.8;
}
.index_about_txt p .pc_size{display:none !important;}
.index_about_img{width:41.666666%;}

.more{margin:30px 0 0;}
.more a,.more p{
	font-size:1.6rem;
	padding-right:55px;
}
.more a::before,.more p::before{
	width:41px;
	height:41px;
	top:calc(50% - 20.5px);
}
.more a::after,.more p::after{
	right:11px;
}
@keyframes arrow{
	0%{right:11px;opacity:1;}
	60%{right:0;opacity:0;}
	61%{right:22px;opacity:0;}
	100%{right:11px;opacity:1;}
}
.more span{padding:5px 0 10px;}

.index_news_txt h2{
	font-size:1.4rem;
}
.index_news_txt h2::before{
	font-size:4.4rem;
	margin-right:8px;
}
#home_news_tab_list li{
	margin:0 0 0 26px;
}
#home_news_tab_list a{
	font-size:1.3rem;
	letter-spacing:1.3px;
}
#home_news_tab_list a span{
	padding-bottom:8px;
}
.index_news_list{margin:38px 0 93px;}
.news_link{padding:17px 40px 17px 0;background-position:right center;}
.news_link_title{font-size:1.4rem;letter-spacing:1.4px;}
.news_link_info{padding-left:0;width:176px;margin-right:0;}
.news_link_title{width:calc(100% - 200px);}
.index_news_list .more{margin-top:27px;}

.index_business{padding:42px 30px 80px;}
.index_business h2{
	font-size:1.4rem;
	letter-spacing:1.4px;
	margin-bottom:40px;
}
.index_business::before{min-width:390px;}
.index_business h2::before{
	font-size:4.4rem;
	margin-right:8px;
}
.index_business_item .thum{
	width:200px;
}
.index_business_txt{
	width:calc(100% - 200px);
	display:block;
	padding:30px 30px 92px;
}
.index_business_item{margin-top:26px;}
.index_business_txt_h{
	font-size:2.2rem;
	letter-spacing:2.2px;
}
.index_business_txt_p{
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.8;
	margin-top:15px;
}
.index_business_txt .more{
	right:30px;
	bottom:20px;
}

.index_prop{margin:80px auto 90px;}
.index_prop a{height:180px;}
.index_prop_txt{padding:0 40px;}
.index_prop_txt h2{font-size:2.8rem;}
.index_prop_txt p{
	margin-top:16px;
	line-height:2.52rem;
}
.index_prop_txt .more{
	right:40px;
	top:calc(50% - 19px);
}

.index_recruit{margin:90px auto;}
.index_recruit_txt{
	width:50%;
	min-width:340px;
}
.index_recruit_txt h2{
	font-size:1.4rem;
}
.index_recruit_txt h2::before{
	font-size:4.4rem;
	margin-right:8px;
}
.index_recruit_txt p{
	line-height:1.8;
}
.index_recruit_txt strong{
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:1.6;
	margin:22px 0 19px;
}
.index_recruit_img{width:45.442%;}

.index_group_area{padding:38px 30px 60px;}
.index_group_area h2{
	font-size:1.4rem;
	margin-bottom:30px;
}
.index_group_area h2::before{
	font-size:3.8rem;
	margin:0 0 3px;
	display:block;
}
.index_group_list{
	grid-gap:13px;
	grid-template-columns:repeat(auto-fit, calc((100% - 39px) / 4));
}

}

@media screen and (max-width:767px){
.mv{
	height:calc(100svh - 74px);
	min-height:300px;
	margin:0 20px 20px;
}
.mv_slide, .mv_slide img{
	height:calc(100svh - 74px);
	min-height:300px;
}
.mv_item{height:calc(100svh - 200px);}
.mv_txt_in{text-align:left;justify-content:flex-start;}
.mv_txt_in img{height:auto;width:300px;}
.mv_txt_in h1{
	font-size:1.6rem;
	letter-spacing:1.6px;
}
.mv_txt_in p{
	font-size:1.6rem;
	letter-spacing:0.8px;
	margin-bottom:19px;
}
.mv_txt_in p span{
	display:block;
	font-size:3rem;
	letter-spacing:1.5px;
	margin-left:0;
}

.mv_slide img {height: calc(100svh - 74px);}

.index_about{
	margin:49px auto 82px;
	padding:0 20px;
	flex-direction:column-reverse;
}
.index_about_txt{width:auto;padding-top:0;}
.index_about_img{width:auto;padding:0 20px;margin-bottom:40px;}
.index_about_img img{max-width:500px;margin:auto;width:100%;}
.more{text-align:center;}

.index_news_txt h2{margin-bottom:30px;}
#index_news{padding:0 20px;}
#home_news_tab_list li{margin:0 24px 0 0;}
#home_news_tab_list li:last-child{margin-right:0;}
.index_news_txt{display:block;}
.index_news_list{margin:30px 0 63px;}
.news_link{
	display:block;
	background:url(/img/common/arrow_r_green.svg) right 10px center no-repeat;
	padding:14px 50px 18px 0;
}
.news_link_info{
	width:auto;
	justify-content:flex-start;
	margin:0 0 8px;
	padding-left:0;
}
.n_cate{margin-left:20px;}
.news_link_title{
	width:auto;
	font-size:1.4rem;
	letter-spacing:1.4px;
}
.index_news_list .more{margin:30px 0 0;}

.index_business{padding:43px 20px 80px;}
.index_business::before{
	width:100%;
	min-width:auto;
	position:absolute;
	border-radius:0;
}
.index_business h2{margin-bottom:30px;}

.index_prop{margin:50px auto 60px;}
.index_prop a{height:auto;padding:30px 0 0;}
.index_prop_txt{padding:0 26px 90px 30px;}
.index_prop_p{font-size:1.4rem;letter-spacing:1.4px;}
.index_prop_p br{display:none;}
.index_prop_txt .more{
	right:26px;
	top:auto;
	bottom:26px;
}

.index_recruit{
	margin:40px auto 60px;
	padding:0 20px;
	display:block;
}
.index_recruit_txt{width:auto;}
.index_recruit_img{width:auto;margin-top:30px;}

.index_group{margin-top:60px;}
.index_group_area{padding:40px 20px 53px;}
.index_group_area h2{margin-bottom:17px;}
.index_group_list{
	display:flex;
	grid-gap:0;
	flex-wrap:wrap;
	justify-content:center;
	width:fit-content;
	margin:auto;
}
.index_group_item{
	width:260px;
	margin:8px;
}

}
@media screen and (max-width:599px){
.index_business_item a{display:block;}
.index_business_item .thum{width:auto;}
.index_business_txt{
	width:auto;
	display:block;
	padding:26px;
}
.index_business_txt .more{
	position:relative;
	right:auto;
	left:auto;
	bottom:auto;
	text-align:right;
	margin-top:20px;
}
.index_business_item:nth-child(even) .more{left:auto;}
}