@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,100..900;1,100..900&display=swap');
/*Goshic見出し　font-family: "Shippori Antique B1", sans-serif;　*/
/*mincho見出し　font-family: "Zen Old Mincho", serif;*/

/*========================
	header
=====================================================================*/
#header{
	position: fixed;
	width: 100%;
	height: 100px;
	display: flex;
	justify-content: space-between;
	z-index: 999;
	transition: .4s;
}
#header.change{
	background: #fff;
	transition: .4s;
}
.hlogo{
	padding: 5px 2vw;
	height: 100%;
	width: 30%;
}
.hlogo img{
	width: 100%;
	min-width: 280px;
	max-width: 350px;
	object-fit: contain;
}
.m1{
	display: flex;
	justify-content: flex-end;
}
.gnav ul{
	display: flex;
	height: 100%;
	justify-content: flex-end;
	align-items: center;
	margin-right: 20px;
}
.gnav li a{
	padding: 0 15px;
	font-weight: 600;
	position: relative;
}
.gnav li a:hover{
	color:#009245;
}

.gnav li a::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 50%;
    background:#009245;
    transition: all .3s;
    transform: scale(0, 1);/*X方向0.04、Y方向1*/
    transform-origin:center bottom;/*中央下部基点*/
}
.gnav li a:hover::after {
    height: 2px;/*縦幅を変化*/
    border-radius: 0;/*丸みをなくす*/   
    transform: scale(0.8, 1);/*X方向0.8、Y方向1にスケール拡大*/
}
.head_contact{
	width: 240px;
	font-size: 22px;
	font-weight: 600;
	display: flex;
	flex-direction: column;
}
.head_contact div{
	height: 50%;
}
.head_contact div a{
	display: flex;
	align-items: center;
	justify-content: center;
	background: #009245;
	height: 100%;
	color: #fff;
	letter-spacing: .1rem;
}
.head_contact div:last-child a{
	background: #ff0;
	color: #009245;
}

@media(max-width:949px){
	#header{ height: 60px; }
	.gnav{ display: none; }
	.head_contact{ 
		font-size: 20px; 
		width: 230px;
		margin-right: 5px;
	}	
}
@media(max-width:650px){
	#header{
		position: relative;
		z-index: 888;
	}
	.m1{
		display: none;
	}
}

/*========================
	MobileNavi
=====================================================================*/
.openbtn{
	position: relative;
	background:#009245;
	cursor: pointer;
    width: 60px;
    height:60px;
}
@media(min-width:950px){
	.openbtn{
		display: none;
	}
}
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 25%;
    height: 2px;
    border-radius: 5px;
	background: #fff;
  	width: 50%;
}

.openbtn span:nth-of-type(1) {
	top:13px;	
}

.openbtn span:nth-of-type(2) {
	top:20px;
}

.openbtn span:nth-of-type(3) {
	top:27px;
}

.openbtn span:nth-of-type(3)::after {
	content:"Menu";
	position: absolute;
	top:5px;
	left:50%;
	color: #fff;
	font-size: 0.7rem;
	text-transform: uppercase;
	transform: translateX(-50%);
}
.openbtn.active span:nth-of-type(1) {
    top: 14px;
    transform: translateY(6px) rotate(-45deg);
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 26px;
    transform: translateY(-6px) rotate(45deg);
}

.openbtn.active span:nth-of-type(3)::after {
	content:"Close";
    transform: translate(0,3px) rotate(-45deg) ;
	top:5px;
}

#g-nav{
    position:fixed;
    z-index: 888;
	top:0;
    right: -120%;
	width:100%;
	max-width: 450px;
    height: 100vh;
	background:#fff;
	box-shadow: 0 0 5px rgba(102,102,102,.4);    
	transition: all 0.6s;
	padding: 30px 1rem;
}
#g-nav.panelactive{
    right: 0;
}
.spnav_logo{
	opacity: 0;
	width: 250px;
}

#g-nav ul {
	width: 95%;
	margin: 30px auto;	
}
#g-nav li{
	border-bottom: 1px dotted #666;
	padding-left: 1.5rem;
	position: relative;
}
#g-nav li::before{
	position: absolute;
	content: '\f0da';
	left: 10px;
	top: 10px;
	color: #ed1c24;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;		
}
#g-nav li a{
	color: #333;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}
.g-nav_contact{
	width: 95%;
	margin: 0 auto;
	text-align: center;
}
.g-nav_contact div{
	margin-top: 20px;
}
.g-nav_contact div a{
	display: block;
	width: 90%;
	margin: 0 auto;
	padding: .5rem 0;
	font-size: 1.3rem;
	text-align: center;
	border: 1px solid #666;
	font-family: "Shippori Antique B1", sans-serif;
}

@media(max-width:650px){
	.spnav_logo{
		opacity: 1;
	}
	#g-nav{
		max-width: 100%;	
	}
}
/*========================
	sp_footbtn
=====================================================================*/
.sp_footbtn {
  position: fixed;
  bottom: -100px; /* 初期状態は画面外（非表示） */
  left: 0;
  width: 100%;
  z-index: 999;
  background: #009245;
  border-top: 2px solid #ff0;
  transition: bottom 0.4s ease-in-out; /* スライドアニメーション */
}

.sp_footbtn.visible {
  bottom: 0; /* 表示状態 */
}
.sp_footbtn ul{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.sp_footbtn li:not(:last-child){
	border-right: 1px solid #ff0;
}
.sp_footbtn li a{
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 6px 0;
	text-align: center;
	font-size: 15px;
	color: #ff0;
	font-family: "Zen Old Mincho", serif;
}
.sp_footbtn .icon{
	height: 30px;
	width:30px;
	margin: 0 auto;

}
.sp_footbtn .icon img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media(min-width:650px){
	.sp_footbtn{
		display: none;
	}
}
@media(max-width:400px){
	.sp_footbtn li a{
		font-size: 11px;
	}	
	.sp_footbtn .icon{
		height: 20px;
		width:20px;
		margin: 0 auto;
	}
}

/*========================
	Footer
=====================================================================*/
.pagetop_wrap{
	width: 180px;
}
.footer_contents{
	width: calc(100% - 180px);
}
.f_contact a{
	/*background: #39b54a;*/
	padding: 4rem ;
	display: flex;
	justify-content: center;
	background: linear-gradient(270deg, #009245 0%, #15a358 25%, #39b54a 51%, #8dc91c 100%);
    background-position: 1% 50%;
    background-size: 200% auto;
}
.f_contact a:hover {
    background-position: 99% 50%;
}
.fc_txt{
	width: 60%;
	min-width: 545px;
	color: #fff;
}
.fc_arrow{
	width: 30%;
	position:relative;
}
.farrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.farrow::before,
.farrow::after{
	position: absolute;
	top: 60px;
	bottom:0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.farrow::before{
	box-sizing: border-box;
	width: 60px;
	height: 60px;
	border: 2px solid #ff0;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	transition: .4s;
}
.farrow::after{
	left: 10px;
	width: 25px;
	height: 25px;
	border-top: 2px solid #ff0;
	border-right: 2px solid #ff0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.f_contact a:hover .farrow::before{
	transform: scale(1.2);
	transition: .4s;
}
.fc_txt h2{
	margin-bottom: 30px;
}
.fc_txt h2 .jp{
	font-size: 1.5rem;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	display: block;
	line-height: 1.3;
}
.fc_txt h2 .en{
	font-family: "Zen Old Mincho", serif;
	font-size: 3rem;
}
.fc_txt h3{
	font-weight: 400;
}
.f_info{
	display: flex;
	justify-content: space-between;
	background: #047c40;
	color: #fff;
}
.f_info .left{
	width: 40%;
	min-width: 430px;
	background: #006837;
	text-align: center;
	padding: 3rem 4rem;
}
.flogo{
	width: 90%;
	min-width: 300px;
	margin: 20px auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px
	
}
.flogo a{
	width: 100%;
	margin-right: 8px;
}

.flogo a img{
	width: 100%;
	object-fit: contain;
}
.iso{
	display: flex;
	justify-content: center;
	width: 100%;
	gap:15px;
	margin-bottom: 10px;
}
.iso img{
	width: 70px;
	object-fit: contain;
}

.fnavi{
	width: 50%;
	padding: 3rem 2rem;
}
.fnavi ul{
}
.fnavi li a{
	display: block;
	padding: 8px 0;
	padding-right: 3rem;
	color: #fff;
	font-weight: 600;
}
.fnavi li a:hover{
	opacity: .5;
}
.fnavi li.child a{
	padding: 0 3rem 5px;
	padding-left: 1.5rem;
	font-size: 95%;
	font-weight: 400;
	position: relative;
}
.fnavi li.child a::before{
	position: absolute;
	content: '\f105';
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	color: #ff0;
	left: .5rem;
	top: 5px;
	font-size: 13px;
}

.copy{
	padding: 5px 0;
	font-size: 13px;
	text-align: center;
}
@media(max-width:999px){
	.pagetop_wrap{
		width: 75px;
	}	
	.footer_contents{
		width: calc(100% - 75px);
	}	
	.fnavi{
		display: none;
	}
	.f_info .left{
		width: 100%;
	}
	.f_contact a {
    	padding: 2rem;
		padding-right: .5rem;
	}
	.fc_arrow{
		width: 100px;
	}
	.fc_txt{
		width: calc(100% - 100px);
		min-width: auto;
	}
	.fc_txt h3{
		font-size:clamp(1rem, 0.57rem + 1.81vw, 1.7rem);
	}
}
@media(max-width:560px){
	.f_info .left{
		min-width: 100%;
		padding: 2rem 1.5rem;
	}
	.f_contact a {
    	flex-direction: column;
		padding-right: 2rem;
	}
	.fc_arrow,.fc_txt,.farrow{
		width: 100%;
	}
	.fc_arrow{
		height: 100px;
	}
	.farrow::before{
		left: auto;
		right: 0;
	}
	.farrow::after{
		left: auto;
		right: 23px;
	}	
	.iso img{
		width: 55px;
	}	
}
@media(max-width:460px){
	.pagetop_wrap{
		width: 40px;
	}	
	.footer_contents{
		width: calc(100% - 40px);
	}	
	.flogo{
		width: 80%;
		min-width: auto;
	}
}
/*========================
	pagetop
=====================================================================*/
#pagetop{
	display: flex;
	align-items: center;
	justify-content: center;
}
#pagetop a{
	height: 150px;
	transition:all 0.3s;
}
#pagetop a img{
	width: 100%;
	object-fit: contain;
}
#pagetop a:hover{
	transform: translateY(-1rem);
	transition:all 0.3s;
}
/*========================
	FV
=====================================================================*/
#fv{
	padding-top: 100px;
	height: 100vh;
	position: relative;
	display: flex;
	justify-content: space-between;
	background: url("../img/bg01.jpg")no-repeat center/cover;
}
.fv_txt{
	width: 33vw;
	padding: 10vw 3vw;
	font-family: "Zen Old Mincho", serif;
	position: relative;
}
.catch_en{
	font-size: clamp(2.2rem, 1.737rem + 1.95vw, 3.2rem);
	margin-bottom: 30px;
	line-height: 1.3;	
	white-space: nowrap;
	position: relative;
	z-index: 10;
	text-shadow: 0 0 3px #fff;	
}
.catch_ja{
	position: relative;
	font-size:clamp(1.2rem, 1.015rem + 0.78vw, 1.6rem);
	padding: 0 3rem;
	display: inline-block;
	white-space: nowrap;
	z-index: 10;
	text-shadow: 0 0 3px #fff;
}
.catch_ja::before,.catch_ja::after{
	position: absolute;
	content: '';
	width: 2.3rem;
	height: 2px;
	background: #222;
	top: 50%;
}
.catch_ja::before{
	left: 0;
}
.catch_ja::after{
	right: 0;
}
#slider {
	width: 66vw;
	height: calc(90vh - 100px)!important;
	border-radius: 30px 0 0 30px;
	overflow: hidden;
}
@media(max-width:950px){
#fv{
	padding-top: 60px;
	aspect-ratio: 7 / 5;
	height: auto;
	max-height: 100vh;
	padding-bottom: 60px;
}	
.fv_txt{
	width: 23vw;
}	
#slider {
	width: 77vw;
	aspect-ratio: 7 / 5;
	height: auto!important;
	min-height: calc(70vh - 60px)!important;
}
}
@media (max-width: 650px) {
#fv{
	  padding: 40px 0;
}
#slider {
	min-height: calc(55vh - 60px)!important;
}	
}
@media (max-width: 450px){
.fv_txt{
	width: 3vw;
}	
	#slider {
		width: 95vw;
		min-height:60vh!important;
	}	
}
@media (max-width: 370px) {
.catch_en{
	font-size: 2rem;	
}
.catch_ja{
	font-size:1rem;
}	
}
.looptxt{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	width: 100%;
}

.looptxt::before,
.looptxt::after{
	display: block;
	position: absolute;
	bottom: 0;
	content: "KADODENKO";
	width: 100%;
	height: auto;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	color: #333;
	z-index: -10;
	font-family: "Shippori Antique B1", sans-serif;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	opacity: 0.3;
	font-size: clamp(3.5rem, 22vw,12rem) ;
}
.looptxt::before{
	left: 0;
	animation: flowimg 15s linear infinite;
}
.looptxt::after{
	left: 1500px;
	animation: flowimg 15s linear infinite;
}
@keyframes flowimg{
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-1425px);
	}
}
@media (max-width: 750px){
	.looptxt::before,
	.looptxt::after{
		font-size:clamp(6rem,17vw,8rem);
	}
	.looptxt::before{
		animation: flowimg 12s linear infinite;
	}
	.looptxt::after{
		left: clamp(720px,130vw,1300px);
		animation: flowimg 12s linear infinite;
	}
}
@keyframes flowimg{
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-130vw);
	}
}
/*========================
	index
=====================================================================*/

#top-feature .container-wrap {
	position: relative;
    width: 100%;
    padding-block: 6rem;
}

#top-feature .container-wrap::before {
	position: absolute;
	content: '';
    top: 0;
    right: 0;
    background-color: #F5F5F5;
    width: 81%;
    height: 100%;
    border-radius: 2rem 0 0 2rem;
}

#top-feature .container {
    position: relative;
    margin: auto;
    max-width: calc(1920px - 12rem);
    width: calc(100% - 6vw);	
    align-items: center;
    justify-content: space-between;
    gap: 5vw;
}
#top-feature .container .images-wrap {
    display: flex;
    align-items: flex-start;
    width: 40%;
    gap: 0.4rem;
}
#top-feature .container .images-wrap .img {
    width: 33%;
	aspect-ratio: 1 / 2;
	overflow: hidden;

}
#top-feature .container .images-wrap .img:nth-of-type(1) {
    margin-top: 6rem;
}
#top-feature .container .images-wrap .img:nth-of-type(2) {
    margin-top: 3rem;
}
#top-feature .container .images-wrap .img:nth-of-type(3) {
    margin-top: 0;
}
#top-feature .container .images-wrap img{
	aspect-ratio: 1 / 2;
	object-fit: cover;
  	object-position: center;
}

.contents-wrap, .container.l-head .heading-wrap {
    position: relative;
    padding-top: 6rem;
    padding-left: 0;
}
#top-feature .container .contents-wrap, 
#top-feature .container.l-head .heading-wrap {
    width: 60%;
}
.contents-wrap .text, .container.l-head .heading-wrap .text {
    display: block;
    margin-top: 4rem;
	padding-left: 2.5rem
}

@media(max-width:819px){
	.container.flex{
		flex-direction: column-reverse;
	}
	#top-feature .container .contents-wrap, 
	#top-feature .container.l-head .heading-wrap {
    	width: 100%;
	}
	#top-feature .container .images-wrap {
		width: 90%;
	}
}


/*TOPservice*/
#t_service::after{
	position: absolute;
	content: '';
	width: 100%;
	height: 40%;
	background: linear-gradient(to bottom,transparent,rgba(255,255,255,.8));
	bottom: -2vw;
	left: 0;
	z-index: 0;
}


#t_service .inner{
	position: relative;
}

/*CIRCLE設定*/
.circle-container {
	position: relative;
	width: 28vw;
	height: 28vw;
	min-width: 320px;
	min-height: 320px;
	margin: 200px auto 50px;
}

.circle {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40vw;
	height: 40vw;
	min-width: 450px;
	min-height: 450px;
	border-radius: 50%;
	border: 5vw solid #ebffcc;
	transform: translate(-50%, -50%);
}

.menu-item {
  position: absolute;
  text-align: center;
  color: #009245;
  transition: all 0.7s ease;
  width: 160px;
  transform: translate(-50%, -100%) scale(0.7);
	opacity: .5;
	font-size: 1.4rem;	
}

.menu-item.active {
	color: #009245;
	font-weight: bold;
	transform: translate(-50%, -20%) scale(1);
	opacity: 1;
}

.menu-item img {
  width: 130px;
  height: 130px;
  display: block;
	object-fit: contain;
  margin: 1vw auto 8px;
}

.center-text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 350px;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #004d2d;
  transition: opacity 0.5s ease;
	z-index: 5;
}

.center-text h3 {
  color: #009245;
  font-size: 1rem;
  letter-spacing: 2px;
  margin-bottom: 0.3rem;
}

.center-text h2 {
  color: #000;
  font-size: 1.7rem;
  margin-bottom: 0.6rem;
}

.center-text p {
  color: #555;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.link-btn{
	margin: 15px auto;
	background: #009245;
	color: #fff;
}
.buttons {
  position: absolute;
  top: 25%;
  left: 50%;
  width: 80%;
  display: flex;
  justify-content: space-between;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.btn {
    background: #ffffff;
    box-shadow: 0 0 10px #00924540;
    border: none;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.3s;
    pointer-events: all;
    position: relative;
}

.btn:hover {
  transform: scale(1.1);
}

.btn::before {
	position: absolute;
	content: '\f054';
	width: 30px;
	height: 30px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #007b36;
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
}
.btn#prevBtn::before{
	transform: translate(-50%,-50%) rotate(180deg); 
}
@media(max-width:820px){
	.circle-container {
		width: 40vw;
		height:40vw;	
		min-width: auto;
		min-height: auto;
	}

	.circle {
		width: 80vw;
		height: 80vw;
		border-width: 10vw;
	}
	.menu-item {
		width: 130px;
		transform: translate(-50%, -100%) scale(0.7);
		opacity: .5;
		font-size: 1.2rem;	
	}
	.menu-item img {
		width: 100px;
		height: 100px;
	}	
	.center-text {
		width: 70%;
	}	
}
@media (max-width:700px) {
  .circle-container {
    width: 100%;
    height: auto;
    margin: 250px auto 100px;
    display: flex;
    align-items: center;
  }

  /* 円やボタン非表示 */
  .circle{
    display: none;
  }

  /* 円形メニュー非表示 */
	.menu-item {
		opacity: 0;
	}

	.menu-item.active {
		transform: translate(-50%, -100%) scale(1);
		opacity: 1;
	}
    .center-text {
        width: 70%;
        position: inherit;
        margin-top: 30px;
    }

  /* 横スクロールリスト */
  .menu-scroll {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 20px;
    padding: 20px;
    width: 100%;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
  }

  .scroll-card {
    flex: 0 0 80%;
    background: #fff;
    border-radius: 30px;
    box-shadow: 0 4px 10px rgba(0,146,69,0.15);
    padding: 30px 20px;
    text-align: center;
    scroll-snap-align: center;
    transition: transform 0.3s ease;
  }

  .scroll-card img {
    width: 80px;
    height: 80px;
    margin-bottom: 12px;
  }

  .scroll-card h2 {
    font-size: 1.3rem;
    color: #009245;
    margin-bottom: 0.5rem;
  }

  .scroll-card p {
    font-size: 0.9rem;
    color: #444;
    line-height: 1.6;
    margin-bottom: 1rem;
  }

  .scroll-card .link-btn {
    display: inline-block;
    background: #009245;
    color: #fff;
    font-size: 1rem;
    padding: 10px 25px;
    border-radius: 50px;
    transition: 0.3s;
  }

  .scroll-card .link-btn:hover {
    background: #007b36;
  }
	
.buttons {
  top: 35%;	
  width: 95%;
}
}
@media(max-width:450px)	{
	.btn {
		width: 40px;
		height: 40px;
	}

	.btn::before {
		width: 25px;
		height: 25px;
	}	
}

/*News*/
#news{
	z-index: 1;
}
#news::before{
	position: absolute;
	content: '';
	width: 100%;
	height: 90%;
	top: -100px;
	left: 0;
	background: linear-gradient(to bottom,transparent,#52ffa3 38%,#52ffa3 60%,#fff);
	z-index: -1;
}
#news .heading1,#news .heading1 .en{
	color: #fff;
	text-shadow: 0 0 3px #009245;
}
#news .heading1::before {
    background-color: #fff;
	box-shadow:  0 1px 2px #009245;
    
}
#newsWrap{
	height: 250px;
	width: 95%;
	max-width: 1000px;
	margin: 0 auto;
	background: #fff;
	padding: 1.8rem 2rem 3rem 3rem;
	box-shadow: 2px 2px 4px #999;
	border-radius: 30px;
}
#newsList{
	height: 200px;
	overflow-y: auto;
}
#newsList li{
	padding: 1rem;
	padding-right: 2rem;
	border-bottom: 1px dotted #999;
	position: relative;
	transition: .4s;
}
#newsList li::after{
	position: absolute;
	content: '\f054';
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%);
	color: #009245;
}
#newsList a:hover li .title{
	letter-spacing: .1rem;
	transition: .4s;
	color: #009245;
}

#newsList .up_ymd{
	margin-right: 15px;
}


#newsList::-webkit-scrollbar {
  width: 3px;
}

#newsList::-webkit-scrollbar-track {
  background-color: transparent;
}

#newsList::-webkit-scrollbar-thumb {
  background-color: #00924540;
  border-radius: 8px;
}

@media(max-width:500px){
	#newsWrap {
		padding: 1.5rem 1.2rem 2.3rem 1rem;
		border-radius: 20px;
	}
}

/*recruit*/
#top-recruit{
	
}
#top-recruit .container-wrap {
    position: relative;
    width: 100%;
}
#top-recruit .image {
    position: absolute;
    width: calc(100% - 12rem);
    height: 36rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0 2rem 2rem 0;
    top: 0;
    left: 0;
    overflow: hidden;
    max-width: calc(100% - (100% - 1980px) / 2 - 12rem);
}

#top-recruit .container {
    padding-top: 12rem;
    position: relative;
    margin: auto;
    max-width: calc(1920px - 12rem);
    width: calc(100% - 6rem);
}
#top-recruit .container .contents-wrap, 
#top-recruit .container.l-head .heading-wrap {
    position: relative;
    margin-inline: auto 0;
    background-color: #F5FF00;
    width: 80vw;
    max-width: 66rem;
}
#top-recruit .container .contents-wrap::before{
	position: absolute;
	content: '';
	width: 6rem;
	height: 100%;
	top: 0;
	right: -6rem;
    background-color: #F5FF00;
	
}
#top-recruit .container .contents-wrap .contents-inner, 
#top-recruit .container.l-head .heading-wrap .contents-inner {
    padding: 6vw;
    padding-left: 8vw;
}

@media(max-width:600px){
#top-recruit .image {
    width: calc(100% - 6rem);
    max-width:100%;
	height: 25rem;
}	
#top-recruit .container {
    padding-top: 12rem;
    width: 100%;
}	
#top-recruit .container .contents-wrap,
#top-recruit .container.l-head .heading-wrap {
    width: 100vw;
    max-width: 66rem;
}	
}

/*========================
	下層共通
=====================================================================*/
.subfv{
	padding-bottom: 0;
	z-index: 2;
}
.ttlbox{
	width: 90%;
	margin: 0 auto;
	background: url("../img/slide04.jpg")no-repeat center 67%/cover;
	border-radius: 50px;
	position: relative;
	z-index: 0;
}
.ttlbox::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #3E554550;
	z-index: -1;
	border-radius: 50px;
}
.about .ttlbox{
	background: url("../img/about_ttlbox.jpg")no-repeat center 38%/cover;
}

.serv .ttlbox{
	background: url("../img/serv_ttlbox.jpg")no-repeat center 38%/cover;
}
.newsfv .ttlbox{
	background: url("../img/slide04.jpg")no-repeat center 67%/cover;
}
.pagettl{
	padding: 5vw;
	color: #fff;
	font-size:clamp(1.6rem, 0.951rem + 2.73vw, 3rem);
	position: relative;
	z-index: 1;
	text-align: center;
	font-family: "Zen Old Mincho", serif;
}
.pagettl::before{
	position: absolute;
	content: attr(data-label);
	font-size: clamp(2.3rem, 1.049rem + 5.27vw, 5rem);
	color: rgba(38,108,41,0.40);
	z-index: -1;
	top: 30%;
	font-family: "Zen Old Mincho", serif;
}

/*パンくず*/
.all_breadcrumb {
	width: 90%;
    line-height: 1;
    white-space: nowrap;
	padding-top: 5px
}
.all_breadcrumb_list {
    padding-bottom: 2px;
    text-align: right;
    letter-spacing: 0;
    font-size: 0;
}
.all_breadcrumb_list li {
    margin-right: 32px;
    position: relative;
    display: inline-block;
    vertical-align: top;
    font-size: 11px;
    color: #999;
}
.all_breadcrumb_list li:after {
    content: "";
    background: #999;
    width: 10px;
    height: 1px;
    position: absolute;
    right: -22px;
    top: 50%;
    display: block;
}
.all_breadcrumb_list a {
    position: relative;
    display: block;
    color: #006837;
}
.all_breadcrumb_list li:last-child {margin-right: 0;}
.all_breadcrumb_list li:last-child:after { display:none; }


@media(max-width:650px){
.subfv{
	padding-top: 10px;
}	
.ttlbox,.ttlbox::before{
	border-radius: 30px;
	padding: 40px 0;
}	
}

/*========================
	Service
=====================================================================*/
.service{
	padding-bottom: 0;
}
.service .container {
	position: relative;
    margin: auto;
    max-width: calc(1920px - 12rem);
    width: calc(100% - 6vw);
    justify-content: space-between;
    gap: 6rem;
    background-color: #fff;
    padding: 6rem;
    border-radius: 2rem 0 0 2rem;
}
.service .container::after {
	position: absolute;
	content: '';
	display: block;
	width: 6vw;
    height: 100%;
    background-color: #fff;
    top: 0;
    right: -6vw;
}

.service .container .contents-wrap, .service .container.l-head .heading-wrap {
    width: calc(60% - 6rem);
}
.service .container .images-wrap {
    display: flex;
    align-items: flex-start;
    width: 40%;
    gap: 0.4rem;
}
.service .container .heading1 .jp{
    font-size: clamp(1.2rem, 1.061rem + 0.59vw, 1.5rem);
}
.shead{
	position: relative;
	z-index: 1;
	margin-bottom: 100px;
}
.shead-img {
    margin-right: 20vw;
    overflow: hidden;
}
.shead-img img {
    width: 100%;
    aspect-ratio: 5 / 2;
    border-radius: 0 10px 10px 0;
}
.shead-txt {
    position: absolute;
    bottom: -50px;
    right: 0;
    width: 55%;    
    background: #047c40;
    color: #fff;
    border-radius: 15px 0 0 15px;
    font-weight: bold;
    padding: 3.5vw 1vw 3vw 3.5vw;
}
.shead-ttl{
    font-size: 1.75rem;
    line-height: 1.5;
    letter-spacing: .08em;
	margin-bottom: 18px;
}
.shead-ttl-num {
    font-size:clamp(3rem, 1.61rem + 5.85vw, 6rem);
    line-height: 1;
    display: inline-block;
	font-family: "Albert Sans", sans-serif;
    margin-right: 15px;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: 1px #fff;
}
.shead-ttl-txt {
    font-size: clamp(1.7rem, 1.329rem + 1.56vw, 2.5rem);
    letter-spacing: .05em;
    line-height: .47;
}
.shead-ttl-en{
	margin-left: 20px;
    color: #FF0;
    font-size: clamp(20px, 26 / 1920 * 100 * 1vw, 1.625rem);
    height: 45px;
    display: flex;
    align-items: center;
    font-weight: 800;
    padding-left: 20px;
    border-left: 3px solid #8dc91c;
    letter-spacing: normal;
}
.worl_list_txt{
	padding: 1rem;
}
.worl_list_txt h3{
	margin-bottom: 15px;
}

.works .inner_flex{
	display: flex;
	justify-content: space-between;
	width: calc(100% - 6vw);
	margin: 50px 0 0 auto;
}

.w_slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
   width:94%;
  margin-left: auto;
}
.w_slider li{
	aspect-ratio: 4 / 3;
	z-index: 3;
	color: #666;
}
.w_slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:100%;
	object-fit: cover
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.w_slider .slick-slide {
    margin:0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.w_slider .slick-prev, 
.w_slider .slick-next {
    position: absolute;/*絶対配置にする*/
    bottom: -40px;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    /*border-top: 2px solid #666;
    border-right: 2px solid #666;*/
    height: 30px;
    width: 30px;
	background: url("../img/icon/arrow.svg");
}

.w_slider .slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-180deg);
}

.w_slider .slick-next {/*次へ矢印の位置と形状*/
    right: 1%;
}

@media(max-width:1023px){
	.service .container.flex{
		flex-direction: column;
	}
	.service .container .contents-wrap, .service .container.l-head .heading-wrap {
    	width: 100%;
	}
	.service .container .images-wrap {
		width: 80%;
		margin: 0 auto;
	}	
}
@media(max-width:650px){
	.service .container {
		padding: 6rem 3rem;
	}
}
@media(max-width:570px){
	.shead-img {
		margin-right: 0;
	}
	.shead-img img{
		border-radius: 0;
	}
	.shead-txt {
		bottom: -100px;
		width: 85%;    
	}	
}

@media(max-width:480px){
	.service .container {
		padding: 4rem 1rem;
	}
}

/*工事一覧*/
.year-block {
	padding: 30px;
}
.tablescroll{
  max-height: 445px; /* ← 約10行分 */
  overflow: auto;
}
.works-table {
  min-width: 600px;
}

.works-table th,
.works-table td {
  padding: 6px 10px;
  font-size: 16px;
}

thead {
  background: #F6FFE8;
  font-size: 18px;
}

.works-table tbody {
  display: flex;
  flex-direction: column-reverse;
}

.works-table thead,
.works-table tbody tr {
	display: table;
	width: 100%;
	table-layout: fixed;
	border: 1px solid #999;
	border-bottom: 0;
}
.works-table td:nth-child(2n+1){
	border-right: 1px solid #999;
	width: 40%;
}

@media(max-width:480px){
	.tablescroll{
	  max-height: 45vh; /* ← 約10行分 */
	  overflow: auto;
	}
	thead th{
	  font-size: 16px;
	  text-align: left;
		padding-left: 2rem;
	}
	.works-table th,
	.works-table td {
	  font-size: 14px;
	}	
}
/*========================
	About
=====================================================================*/
.inner_flex{
	display: flex;
	justify-content: space-between;
	width: calc(100% - 12vw);
	margin: 50px auto 0;
}
.inner_flex .heading1{
	width: 200px;
}
.map_wrap,
.txt_content{
	width: calc(100% - 300px);
	position: relative;
}
.txt_content{
	background: #F5F5F5;
	border-radius: 30px 0 0 30px;
	position: relative;
}
.table_content{
	background: #F5F5F5;
	border-radius: 30px 0 0 30px;
	position: relative;
	padding: 50px 2rem;
}

.policy{
	max-width: 960px;
	margin: 0 auto;
	text-align: center;
	margin-bottom: 50px;
}
.txt_content._w{
	background: #FFF;
	padding: 3rem 0 5rem;
}
.txt_content::after,
.table_content::after{	
	position: absolute;
	content: '';
	width: 6vw;
	height: 100%;
	background: #F5F5F5;
	top: 0;
	right: -6vw;
}
.txt_content._w::after{
	background: #FFF;
}
.a_table {
	max-width: 960px;
	margin: 50px auto;
    margin-left: 2vw;
}
.a_table tr{
	border-bottom: 1px solid #999;
}
.a_table th{
	width: 23%;
	font-weight: 400;
	vertical-align: top;
	padding: 1rem 2rem;
	text-align: right;
	border-bottom: 1px solid #006837;
}
.a_table td{
	padding: 1rem;
}
.a_table li{
	position: relative;
	padding-left: 1.5rem;
}
.a_table li::before{
	position: absolute;
	content: '●';
	color: #009245;
	top: 10px;
	left: 5px;
	font-size: 8px;
}
.a_table li:nth-child(even)::before{
	color: #8dc91c;
}
.a_table dl{
	display: flex;
	flex-wrap: wrap;
}
.a_table dt{
	width: 60%;
	border-bottom: 1px dotted #999;
	margin-bottom: .7rem;
}
.a_table dd{
	width: 25%;
	text-align: end;
	border-bottom: 1px dotted #999;
	padding-right: 1rem;
	margin-bottom: .7rem;
}

.map_wrap p{
	margin-bottom: 20px;
}
.map_wrap .map{
	min-height: 45vh;
}
.map_wrap .map iframe{
	border-radius: 30px;
	min-height: 45vh;	
}

.img-grid{
	width: 100%;
	display: grid;
	gap:10px;
	grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}
.img-grid .img01{
	grid-column: 1 / span 2; 
    grid-row: 1 / 2; /* 1行目のみを占める (デフォルト動作だが明示的に指定) */
}
.img-grid .img02 {
    grid-column: 1 / 2; /* 1列目のみを占める */
    grid-row: 2 / 3; /* 2行目のみを占める */
}

.img-grid .img03 {
    grid-column: 2 / 3; /* 2列目のみを占める */
    grid-row: 2 / 3; /* 2行目のみを占める */
}
.img-grid img{
	object-fit: cover;
	width: 100%;
}

.bglight .heading1::before,
.bglight .heading1 .en{
	top: -3vh;
}
.bglight .heading1 .jp{
	padding-top: 2vw;
}

.listbox{
	padding: 1rem;
}
.listbox ul{
	display: flex;
	flex-wrap: wrap;
}
.listbox li{
	width: calc(100% / 3);
	padding: 5px 10px 0 0;
	display: inline-block;
}
.listbox._w2 li{
	width: calc(100% / 2);
	padding: 5px 10px 0 0;
	display: inline-block;
}
.l_list {
	max-width: 97%;
	margin: 0 auto;
}
.l_list tr{
	border-bottom: 1px dotted #999;
}
.l_list th{
	padding: .5rem 1rem;
	text-align: left;
	font-weight: 400;
	width: 50%;
}
.l_list td{
	padding: .5rem 1rem;
	width: 25%;
}
.l_list td.people{
	text-align: end;
}

@media(max-width:950px){
	.inner_flex{
		flex-direction: column;
	}
	.map_wrap,
	.txt_content{
		margin-top: 30px;
		width: 100%;
		position: relative;
	}
	.bglight .inner{
		margin-top: 80px;
	}
}
@media(max-width:714px){
	.a_table th{
		width: 100%;
		border-bottom: none;
		padding: 1rem .5rem 0;
		display: block;
		text-align: left;
		font-weight: 600;
		}
	.a_table td{
		padding-top: .5rem;
		display: block;
	}
	.a_table dt{
		width: 80%;
	}
	.a_table dd{
		width: 17%;
	}
	.l_list td{
		padding: .5rem 0;
	}
	.l_list td.people{
		width: 12%;
	}
	.l_list{
		font-size: clamp(0.875rem, 0.733rem + 0.6vw, 1rem);
	}
	.listbox._w2 li{
		width: 100%;
		padding: 5px 10px 0 0;
		display: inline-block;
	}	
}
@media(max-width:580px){
	.listbox li{
		width: calc(100% / 2);
		padding: 5px 10px 0 0;
		display: inline-block;
	}
	.inner_flex {
    	width: calc(100% - 6vw);
	}
}
@media(max-width:380px){
	.listbox li{
		width: 100%;
		padding: 5px 0 0 0;
		display: inline-block;
	}
}

/*RECRUIT*/
.r_list tr{
	border: 1px solid #999;
}
.r_list th{
	padding: .8rem 1rem;
	text-align: left;
	font-weight: 400;
	width: 23%;
	border-right: 1px solid #999;
	background-color: #F6FFE8;
}
.r_list td{
	padding: .8rem 1rem;
}
.r_list tr:nth-child(even) {
  background-color: #fafafa;
}

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

  .r_list th,
  .r_list td {
    display: block;
    width: 100%;
	  border: none;
  }

  .r_list tr {
    margin-bottom: 20px;
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 8px;
    background: #fff;
  }

  .r_liste td {
    border: none;
    padding: 8px 0;
  }
	.r_list tr:nth-child(even) {
	  background-color: #fff;
	}	

}
/*========================
	Contact
=====================================================================*/


.cta-top .container {
	position: relative;
    margin: auto;
    max-width: calc(1920px - 12rem);
    width: calc(100% - 6vw);
    justify-content: space-between;
    gap: 6rem;
    background-color: #fff;
    padding: 6rem;
    border-radius: 2rem 0 0 2rem;
}
.cta-top .container::after {
	position: absolute;
	content: '';
	display: block;
	width: 6vw;
    height: 100%;
    background-color: #fff;
    top: 0;
    right: -6vw;
}
.cta-top .container .web-form, .cta-top .container .tel {
    width: calc(50% - 3rem);
    padding: 4rem;
    background-color: #F5F5F5;
    border-radius: 2rem;
}
.cta-top .container .web-form b, .cta-top .container .tel b {
    display: block;
    margin-bottom: 2rem;
}
.cta-top .container .web-form .btn-wrap, .cta-top .container .tel .btn-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding-top: 5rem;
}
@media only screen and (max-width: 1024px) {
    .cta-top .container {
        flex-direction: column;
        padding-inline: 2rem;
        gap: 2rem;
    }
    .cta-top .container .web-form, .cta-top .container .tel {
        width: 100%;
        padding: 4rem 2rem;
    }	
}
@media only screen and (max-width: 500px) {
	.cta-top .container {
        padding-inline: 1rem;
    }
}
/*mailform*/
.mailform{
	border-top: 3px solid #f5f5f5;
	margin-top: 15px;
	padding: 2rem 1rem;
}
.mailform .row{
	padding: 20px 0;
	display: flex;
	justify-content: space-between;
}
.mailform .row:not(.last){
	border-bottom: 1px dotted #cccccc;
}
.mailform .row div:nth-child(1){
	width: 28%;
	font-weight: 500;
	letter-spacing: 0.08em;
	font-size: 0.9rem;
}
.mailform .row div:nth-child(2){
	width: 70%;
	line-height: 1.5;
}
.mailform .row span{
	padding: 5px;
	margin-right: 5px;
	font-size: 11px;
	vertical-align: middle;
	font-weight: 500;
}
.mailform .row span.hissu{
	color: #fff;
	background: #006837;
}
.mailform .row span.ninni{
	background: #fff;
	border: 1px solid #aaa;
}
.mailform .row small{
	display: block;
	margin-top: 3px;
}
.mailform .box, .mailform textarea{
	border: 1px solid #ddd;
  	padding: 5px;
  	width: 100% !important;
  	border-radius: 0;
	-webkit-appearance: none;
	margin-bottom: 5px;
	background: #fff;
}
.mailform .box.mini{
	width: 120px !important;
}
.mailform .postal_btn{
	padding: 2px 10px;
	border-radius: 2px;
	margin-left: 5px;
	border: 1px solid #ccc;
}
.mailform .postal_btn:hover{
	opacity: 0.7;
}
.mailform button{
	display: block;
	color: #111;
	text-align: center;
	transition: .6s;
	font-size: 1rem;
	font-weight: 500;
	padding: 8px 5px;
	margin: 0 auto;
	width: 250px;
	background: #006837;
	border: 1px solid #006837;
	border-radius: 25px;
	color: #fff;
}
.mailform button:hover{
	background: #fff;
	color: #006837;
}
.mailform button::before{
	font-family: "Font Awesome 6 Free";
	content: "\f1d8";
	font-weight: 700;
	margin-right: 10px;
}

@media (max-width: 750px){
	#mailform{
		padding: 20px;
	}
	.mailform .row{
		padding: 20px 0;
		flex-direction: column;
	}
	.mailform .row div:nth-child(1){
		width: 100%;
		margin-bottom: 20px;
	}
	.mailform .row div:nth-child(2){
		width: 100%;
	}
}

/*チェックボックス*/
input[type=checkbox] {
    display: none;
}
input[type=checkbox] + label{
    display: inline-block;
	padding-left: 20px;
	position:relative;
	margin-right: 20px;
	margin-bottom: 10px;
	cursor: pointer;
}
input[type=checkbox] + label::before{
    background: #fff;
    border: 1px solid #999;
    content: '';
    display: block;
	position: absolute;
	top: 55%;
	transform: translate(0,-50%);
  	left: 0;
    width: 15px;
  	height: 15px;
	border-radius: 3px;
}
input[type=checkbox] + label::after{
    border-right: 3px solid #006837;
    border-bottom: 3px solid #006837;
    content: '';
    display: block;
    height: 15px;
    left: 8px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 36%;
    width: 5px;
	transform: rotate(45deg) translate3d(0,2px,0) scale3d(.7,.7,1);
	transition: transform .2s ease-in-out, opacity .2s ease-in-out;
}
input[type=checkbox]:checked + label::after{
    opacity: 1;
	transform: rotate(45deg) scale3d(1,1,1);
}
@media (max-width: 750px){
	input[type=checkbox] + label{
		display: block;
	}
}

/*ラジオボタン*/
input[type=radio]{
	display: none;
}
input[type=radio] + label{
    display: inline-block;
	padding-left: 20px;
	position:relative;
	margin-right: 20px;
	margin-bottom: 10px;
	cursor: pointer;
}
input[type=radio] + label::before {
	content: "";
	display: block;
	position: absolute;
	top: 55%;
	transform: translate(0,-50%);
  	left: 0;
    width: 15px;
  	height: 15px;
	background: #f4f4f4;
	border-radius: 100%;
	border: 1px solid #b4b4b4;
	cursor: pointer;
	text-align: center;
	transition: all 250ms ease;
}
input[type=radio]:checked + label::before {
	background-color: #006837;
	box-shadow: inset 0 0 0 2px #f4f4f4;
}
input[type=radio]:focus + label::before{
	outline: none;
	border-color: #006837;
}
input[type=radio]:disabled + label::before {
	box-shadow: inset 0 0 0 2px #f4f4f4;
	border-color: #b4b4b4;
	background: #b4b4b4;
}
input[type=radio] + label:empty::before{
	margin-right: 0;
}
@media (max-width: 750px){
	input[type=radio] + label{
		display: block;
	}
}


.contact_info ul li{
	margin-bottom: 5px;
	text-align: center;
	font-size: 0.9rem;
}

/*プライバシーポリシー*/
.privacy{
}
.privacy li{
}
.privacy li .privacy_wrap{
	
}
.privacy li .privacy_wrap .privacy_subject{
	text-align: center;
	cursor: pointer;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	text-decoration: underline;
	font-size: 0.9rem;
	letter-spacing: 0.1em;
}
.privacy li .privacy_wrap .privacy_subject:hover{
	text-decoration: none;
}
.privacy li .privacy_wrap .privacy_subject.area_close{
}

/*アコーディオンで現れるエリア*/
.privacy li .privacy_wrap .privacy_box{
	position: relative;
	display: none;/*はじめは非表示*/
	padding: 20px;
	background-color:#F7F7F7;
	margin-top: 5px;
}

.privacy_flame{
	height: 250px;
	overflow-y: scroll;
}
.privacy_flame p{
	padding: 10px;
	font-size: 0.8rem;
}
.privacy_flame p span{
	display: block;
	color: #006837;
	font-size: 0.9rem;
	font-weight: 700;
}
.privacy_flame p span::before{
	content: "■";
	display: inline-block;
	font-size: 0.6rem;
	margin-right: 0.5em;
	transform: translateY(-2.5px);
}
.privacy_flame ul li{
	font-size: 0.8rem;
}

/*スクロールバー*/
.privacy_flame::-webkit-scrollbar{
    overflow: hidden;
    width: 1px;
    background: #1c1c1c;
}
.privacy_flame::-webkit-scrollbar-button {
    display: none;
}
.privacy_flame::-webkit-scrollbar-thumb, .privacy_flame::-webkit-scrollbar-corner {
    background: #fff;
}

/*===サンクスページ===*/
.thanks .inner .small p{
	font-size: 0.8rem;
}
.thanks .sbtn a{
	margin-bottom: 20px;
}

/*==============
	news-detail.php用
==========================================*/
.ntitle{
	padding-bottom: 3px;
	border-bottom: 2px solid #006837;
	position: relative;
	padding-left: 2rem;
}
.ntitle::before{
	position: absolute;
	content: '';
	width: .8rem;
	height: .8rem;
	border-radius: 50%;
	background: #009245;
	top: 50%;
	left: 5px;
	transform: translateY(-50%);
}


.detail #up_ymd{
	text-align: end;
	font-size: 16px;	
}
.detail #up_ymd span{
	position: relative;
	padding-left: 25px;
}

.detail #up_ymd span::before{
	position: absolute;
	content: '\f073';
	font-family: "Font Awesome 6 Free";
	font-weight: 600;
	width: 10px;
	height: 18px;
	left: 3px;
}

.detailUpfile{
	max-width: 680px;
	margin: 15px 0;
}
.detailUpfile img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.detail font{
	padding-bottom: 2px;
	border-bottom: 1px solid #eee;
}

.backORcloseBtn{
	margin: 50px auto 30px;
}
.btn_wrap .more-btn{
	margin: 0 auto;
}
