@charset "utf-8";
/*=============================================================
 contents Layout
=============================================================*/
#contents{
	line-height: 1.8;
}
/*=============================================================
 #ttl
=============================================================*/
h2{
	color: #3B8B42;
}
h2 span.txtEn{
	display: inline-block;
	font-size: 60px;
	font-weight: 700;
	color: #3B8B42;
	line-height: 1.0;
}
h2 span.txtSub{
	font-size: 26px;
	display: inline-block;
	padding: 15px 0 0;
	line-height: 1.5;
}
/*=============================================================
 #btn
=============================================================*/
p.btnGreenArw{
	width: 300px;
	height: 60px;
}
p.btnGreenArw a{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100px;
	background: #3B8B42;
	box-shadow: 0px 3px 6px -2px rgba(0,0,0,0.6);
	transition:all 0s ease-out;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	opacity:1 !important;
	position: relative;
}
p.btnGreenArw a:hover{
	background: #FFC900;
}
p.btnGreenArw a:after{
	content: "";
	width: 23px;
	height: 16px;
	display: block;
	background: url("../shared/img/arw_white.svg") no-repeat 0 0;
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translateY(-50%);
	transition:right 0.4s ease-out;
}
p.btnGreenArw a:hover:after{
	right: 20px;
}
/*=============================================================
 #about
=============================================================*/
#about{
	padding: 120px 10% 5%;
	text-align: center;
}
#about .ttlArea{
	position: relative;
}
#about .ttlArea h2{
	position: relative;
	z-index: 2;
}
#about .ttlArea .boxPhoto{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	bottom: -130%;
	left: 0;
}
#about .ttlArea .boxPhoto .photo{
	width: 22%;
	padding: 0 0 10px 10px;
	position: relative;
}
#about .ttlArea .boxPhoto .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../shared/img/bg_line_green.png") repeat left top;
	border-radius: 18px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#about .ttlArea .boxPhoto .photo img{
	border-radius: 18px;
	position: relative;
	z-index: 2;
}
#about .ttlArea .boxPhoto .photo02{
	transform: translateY(50px)
}
#about .aboutTxt{
	position: relative;
}
#about .aboutTxt .txt1,
#about .aboutTxt .txt2{
	position: relative;
	margin: 50px 0 0;
}
#about .aboutTxt p{
	width: 50%;
	margin: 0 auto;
	font-size: 24px;
	position: relative;
	z-index: 2;
}
#about .aboutTxt .boxPhoto{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	top: 50%;
	left: 0;
}
#about .aboutTxt .boxPhoto .photo{
	width: 22%;
	padding: 0 0 10px 10px;
	position: relative;
}
#about .aboutTxt .boxPhoto .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../shared/img/bg_line_green.png") repeat left top;
	border-radius: 18px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#about .aboutTxt .boxPhoto .photo img{
	border-radius: 18px;
	position: relative;
	z-index: 2;
}
#about .aboutTxt .boxPhoto .photo01{
	transform: translate(20%,25%);
}
#about .aboutTxt .boxPhoto .photo02{
	transform: translate(-20%,80px);
}
/*=============================================================
 #scenes
=============================================================*/
#scenes{
	margin: 90px 0 0;
	padding: 0 10%;
	position: relative;
}
#scenes .scenes{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	z-index: 2;
}
#scenes .scenes .clmL{
	width: 55%;
	padding: 0 25px 0 0;
	position: relative;
}
#scenes .scenes .clmL:before{
	content: "";
	width: 300%;
	height: calc(100% - 15px);
	display: block;
	background-color: #C3DCC6;
	border-radius: 0 40px 40px 0;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}
#scenes .scenes .clmL:after{
	content: "";
	width: calc(300%);
	height: calc(100% - 15px);
	display: block;
	background: url("../shared/img/bg_line_green.png") repeat right top;
	border-radius: 0 40px 40px 0;
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 0;
}
#scenes .scenes .clmL img{
	position: relative;
	transform: translateY(-35px);
	z-index: 2;
}
#scenes .scenes .clmR{
	width: 40%;
	padding: 5% 0 0;
}
#scenes .scenes .clmR p.txt{
	margin: 40px 0;
	font-size: 20px;
}
/*=============================================================
 #field
=============================================================*/
#field{
	margin: 110px 0 0;
	padding: 80px 0;
	position: relative;
}
#field:after{
	content: "";
	width: calc(70%);
	height: calc(100%);
	display: block;
	border-radius: 40px 0 0 40px;
	position: absolute;
	background-color: #ebf3ec;
	top: 0px;
	right: 0px;
	z-index: 1;
}
#field .fieldInner{
	width: 67%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#field .fieldInner p.txt{
	margin: 40px 0;
	font-size: 20px;
}
#field .fieldBtn{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}
#field .fieldBtn .box{
	width: 47.5%;
}
#field .fieldBtn .box a{
	width: 100%;
	display: block;
	opacity: 1 !important;
}
#field .fieldBtn .box .photo{
	width: 100%;
	padding: 0 0 10px 10px;
	position: relative;
}
#field .fieldBtn .box .photo div{
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 18px;
}
#field .fieldBtn .box .photo img{
	border-radius: 18px;
	position: relative;
	z-index: 2;
	opacity: 1 !important;
	transition:transform 0.4s ease-out;
}
#field .fieldBtn .box a:hover .photo img{
	transform: scale(1.1);
}
#field .fieldBtn .box .photo:after{
	content: "";
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	display: block;
	background: url("../shared/img/bg_line_green.png") repeat left top;
	border-radius: 18px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#field .fieldBtn .box p.catch{
	padding: 20px 0 0 10px;
	font-size: 32px;
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.45;
}
#field .fieldBtn .box .boxName{
	width: 100%;
	padding: 20px 0 0 10px;
	display: flex;
	justify-content: space-between;
}
#field .fieldBtn .box .boxNameL{
	width: calc(100% - 70px);
}
#field .fieldBtn .box .caption{
	font-size: 18px;
	color: #3B8B42;
	font-weight: 500;
}
#field .fieldBtn .box .name{
	font-size: 24px;
	color: #333;
}
#field .fieldBtn .box .arw{
	width: 60px;
	height: 60px;
	margin-top: 5px;
	background-color: #3B8B42;
	border-radius: 9999px;
	position: relative;
}
#field .fieldBtn .box .arw:after{
	content: "";
	width: 23px;
	height: 16px;
	display: block;
	background: url("../shared/img/arw_white.svg") no-repeat 0 0;
	position: absolute;
	top: 50%;
	right: 17px;
	transform: translateY(-50%);
	transition:right 0.4s ease-out;
}
#field .fieldBtn .box a:hover .arw{
	background-color: #FFC900;
}
#field .fieldBtn .box a:hover .arw:after{
	right: 12px;
}
/*=============================================================
 #sendai
=============================================================*/
#sendai{
	margin: 15% 0 0;
	padding: 0;
	position: relative;
}
#sendai .sendaiTop{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	z-index: 2;
}
#sendai .sendaiTop:after{
	content: "";
	width: calc(49%);
	height: calc(150%);
	display: block;
	border-radius: 0 40px 40px 0;
	position: absolute;
	background-color: #ebf3ec;
	top: 0;
	left: 0px;
	z-index: 1;
}
#sendai .sendaiTop .clmL{
	width: 49%;
	margin-top: 0;
	padding: 0 40px 0 0;
	position: relative;
}
#sendai .sendaiTop .clmL .map{
	width: 87%;
	margin: -30% 0 -50px auto;
	position: relative;
	z-index: 2;
}
#sendai .sendaiTop .clmR{
	width: 47%;
	padding: 5% 10% 0 0;
}
#sendai .sendaiTop .clmR p.txt{
	margin: 40px 0;
	font-size: 20px;
}
#sendai .sendaiBtm{
	width: 100%;
	padding: 0 10% 0 23%;
	margin: 0;
	z-index: 3;
	position: relative;
}
#sendai .sendaiBtm .clm{
	padding: 5%;
	border: 2px solid #3B8B42;
	background-color: #fff;
	border-radius: 40px;
}
#sendai .sendaiBtm .clm + .clm{
	margin: 35px 0 0;
}
#sendai .sendaiBtm h3{
	padding: 0 0 15px;
	font-size: 28px;
	font-weight: 700;
	color: #3B8B42;
}
#sendai .sendaiBtm .clmInfo{
	width: 100%;
	display: flex;
	justify-content: space-between;
}
#sendai .sendaiBtm .clmInfo .clmL{
	width: 43%;
}
#sendai .sendaiBtm .clmInfo .clmL p{
	font-size: 14px;
}
#sendai .sendaiBtm .clmInfo .clmR{
	width: 55%;
	display: flex;
	justify-content: space-between;
}
#sendai .sendaiBtm .clmInfo .clmR .photo{
	width: 48%;
}
#sendai .sendaiBtm .clmInfo .clmR .photo img{
	border-radius: 18px;
}
#sendai .sendaiBtm .clmbnr{
	width: 100%;
	margin: 50px 0 0;
	position: relative;
}
#sendai .sendaiBtm .clmbnr:before{
	content: "";
	width: 112px;
	height: 41px;
	display: block;
	background: url("../img/pickup.png") no-repeat 0 0;
	background-size: 100% 100%;
	position: absolute;
	top: -46px;
	left: 0;
}
#sendai .sendaiBtm .clmbnr a{
	width: 100%;
	display: flex;
	justify-content: space-between;
	border-radius: 20px;
	opacity: 1 !important;
	overflow: hidden;
	position: relative;
}
#sendai .sendaiBtm .clmbnr a .arw{
	width: 60px;
	height: 60px;
	background-color: #fff;
	border-radius: 9999px;
	position: absolute;
	bottom: 15px;
	right: 15px;
}
#sendai .sendaiBtm .clmbnr a .arw:after{
	content: "";
	width: 23px;
	height: 16px;
	display: block;
	background: url("../shared/img/gb_arw.svg") no-repeat 0 0;
	position: absolute;
	top: 50%;
	right: 17px;
	transform: translateY(-50%);
	transition:right 0.4s ease-out;
}
#sendai .sendaiBtm .clmbnr a:hover .arw{
	background-color: #FFC900;
}
#sendai .sendaiBtm .clmbnr a:hover .arw:after{
	right: 12px;
}
#sendai .sendaiBtm .clmbnr .clmL{
	width: 50%;
}
#sendai .sendaiBtm .clmbnr .clmL div{
	width: 100%;
	height: 100%;
	overflow: hidden;
}
#sendai .sendaiBtm .clmbnr .clmL img{
	position: relative;
	z-index: 2;
	opacity: 1 !important;
	transition:transform 0.4s ease-out;
}
#sendai .sendaiBtm .clmbnr a:hover .clmL img{
	transform: scale(1.1);
}
#sendai .sendaiBtm .clmbnr .clmR{
	width: 50%;
	display: flex;
	align-items: center;
	background-color: #3B8B42;
	color: #fff;
}
#sendai .sendaiBtm .clmbnr .clmR div{
	width: 100%;
	padding: 0 0 0 25px;
}
#sendai .sendaiBtm .clmbnr .clmR p.cap{
	font-size: 14px;
}
#sendai .sendaiBtm .clmbnr .clmR p.ttlJa{
	font-size: 22px;
}
#sendai .sendaiBtm .clmbnr .clmR p.ttlEn{
	width: calc(100% - 80px);
	font-size: 42px;
	line-height: 1.0;
}
/*=============================================================
 #recruit
=============================================================*/
#recruit{
	margin: 100px 0 0;
	text-align: center;
	position: relative;
	color: #fff;
}
#recruitbg{
	background: url("../img/bg_recruit.jpg") no-repeat center 0;
	background-size: cover;
}
#recruitbg img{
	width: 100%;
	min-height: 614px;
}
#recruitInner{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
#recruitMenu{
	width: 636px;
	margin: 0 auto;
}
#recruitMenu h2 span.txtEn{
	color: #fff;
	line-height: 1.0;
}
#recruitMenu p.catch{
	padding: 30px 0 0;
	font-size: 28px;
}
#recruitMenu p.sub{
	padding: 20px 0 10px;
}
#recruitMenu .entry{
	width: 616px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
#recruitMenu .entry li{
	width: 300px;
}
#recruitMenu .entry li p{
	width: 100%;
}
#recruitMenu .entry li a{
	width: 100%;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100px;
	transition:all 0s ease-out;
	color: #3B8B42;
	background: #fff;
	font-size: 16px;
	font-weight: 700;
	opacity:1 !important;
	position: relative;
	vertical-align: middle;
	white-space: nowrap;
}
#recruitMenu .entry li a:hover{
	background: #FFC900;
}
#recruitMenu .entry li a.blank:after{
	content: "";
	width: 12px;
	height: 10px;
	display: inline-block;
	margin: 0 0 0 5px;
	background: url("../shared/img/gb_blank.svg") 0 0;
	vertical-align: middle;
}
#recruitMenu .entry li a.pdf:after{
	content: "";
	width: 10px;
	height: 13px;
	display: inline-block;
	margin: 0 0 0 5px;
	background: url("../shared/img/gb_pdf.svg")0 0;
	vertical-align: middle;
}
#recruitMenu .menu{
	width: 300px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 60px auto 0;
}
#recruitMenu .menu li{
	width: 100%;
	margin: 0;
	height: 60px;
}
#recruitMenu .menu li a{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #fff;
	border-radius: 100px;
	transition:all 0s ease-out;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	opacity:1 !important;
	position: relative;
	white-space: nowrap;
}
#recruitMenu .menu li a:hover{
	background: #FFC900;
}
#recruitMenu .menu li a:after{
	content: "";
	width: 12px;
	height: 10px;
	display: inline-block;
	margin: 0 0 0 5px;
	background: url("../shared/img/ftr_blank.svg") 0 0;
	vertical-align: middle;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 TUB
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:1024px){

}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:899px){
/*=============================================================
 #ttl
=============================================================*/
h2{
	color: #3B8B42;
}
h2 span.txtEn{
	display: inline-block;
	font-size: 40px;
	font-weight: 700;
	color: #3B8B42;
	line-height: 1.0;
}
h2 span.txtSub{
	font-size: 20px;
	padding: 15px 0 0;
}
/*=============================================================
 #about
=============================================================*/
#about{
	padding: 75px 5% 0;
	text-align: center;
}
#about .ttlArea .boxPhoto{
	position: static;
	padding-bottom: 30px;
}
#about .ttlArea .boxPhoto .photo{
	width: 48%;
	padding: 0 0 7px 7px;
	position: relative;
}
#about .ttlArea .boxPhoto .photo:after{
	width: calc(100% - 7px);
	height: calc(100% - 7px);
	background-size: 6px 10px;
}
#about .ttlArea .boxPhoto .photo01{
	transform: translateY(-25px)
}
#about .ttlArea .boxPhoto .photo02{
	transform: translateY(0)
}
#about .aboutTxt .txt1,
#about .aboutTxt .txt2{
	position: relative;
	margin: 30px 0 0;
}
#about .aboutTxt p{
	width: 100%;
	font-size: 16px;
}
#about .aboutTxt .boxPhoto{
	padding: 55px 0 0;
	position: static;
}
#about .aboutTxt .boxPhoto .photo{
	width: 48%;
	padding: 0 0 7px 7px;
	position: relative;
}
#about .aboutTxt .boxPhoto .photo:after{
	width: calc(100% - 7px);
	height: calc(100% - 7px);
	background-size: 6px 10px;
}
#about .aboutTxt .boxPhoto .photo01{
	transform: translate(0,-25px);
}
#about .aboutTxt .boxPhoto .photo02{
	transform: translate(0,0);
}
/*=============================================================
 #scenes
=============================================================*/
#scenes{
	padding: 0 5%;
}
#scenes .scenes{
	width: 100%;
	display: block;
}
#scenes .scenes .clmL{
	width: 100%;
	padding: 0 15px 0 0;
	position: relative;
}
#scenes .scenes .clmL:after{
	top: 7px;
	right: 7px;
	background-size: 6px 10px;
}
#scenes .scenes .clmL img{
	transform: translateY(-25px);
}
#scenes .scenes .clmR{
	width: 100%;
	padding: 20px 0 0;
}
#scenes .scenes .clmR p.txt{
	margin: 30px 0;
	font-size: 16px;
}
/*=============================================================
 #field
=============================================================*/
#field{
	margin: 110px 0 0;
	padding: 40px 5%;
}
#field:after{
	content: "";
	width: calc(82.5%);
}
#field .fieldInner{
	width: 100%;
}
#field .fieldInner p.txt{
	margin: 30px 0;
	font-size: 16px;
}
#field .fieldBtn{
	display: block;
}
#field .fieldBtn .box{
	width: 100%;
}
#field .fieldBtn .box + .box{
	margin: 70px 0 0;
}
#field .fieldBtn .box .photo{
	padding: 0 0 7px 7px;
}
#field .fieldBtn .box .photo:after{
	width: calc(100% - 7px);
	height: calc(100% - 7px);
	background-size: 6px 10px;
}
#field .fieldBtn .box p.catch{
	padding: 20px 0 0 0;
	font-size: 22px;
}
#field .fieldBtn .box .boxName{
	align-items: center;
	padding: 20px 0 0 0;
}
#field .fieldBtn .box .arw{
	margin-top: 0px;
}
#field .fieldBtn .box .caption{
	font-size: 14px;
}
#field .fieldBtn .box .name{
	font-size: 20px;
}
/*=============================================================
 #sendai
=============================================================*/
#sendai{
	margin: 15% 0 0;
	padding: 0 5%;
}
#sendai .sendaiTop{
	display: block;
}
#sendai .sendaiTop:after{
	display: none;
}
#sendai .sendaiTop .clmL{
	width: 100%;
	margin-top: 0;
	padding: 0 0 0 0;
}
#sendai .sendaiTop .clmL .map{
	width: 100%;
	margin: 0 0 0 auto;
	position: relative;
	z-index: 2;
}
#sendai .sendaiTop .clmL .map img{
	margin: -15% 0 0 0;
	position: relative;
	z-index: 3;
}
#sendai .sendaiTop .clmL .map:after{
	content: "";
	width: calc(300%);
	height: calc(85%);
	display: block;
	border-radius: 0 40px 40px 0;
	position: absolute;
	background-color: #ebf3ec;
	top: 15%;
	right: 0px;
	z-index: 1;
}
#sendai .sendaiTop .clmR{
	width: 100%;
	padding: 20px 0 0 0;
}
#sendai .sendaiTop .clmR p.txt{
	margin: 30px 0;
	font-size: 16px;
}
#sendai .sendaiBtm{
	padding: 0;
}
#sendai .sendaiBtm .clm{
	padding: 5%;
	border-radius: 20px;
}
#sendai .sendaiBtm .clm + .clm{
	margin: 30px 0 0;
}
#sendai .sendaiBtm h3{
	font-size: 22px;
}
#sendai .sendaiBtm .clmInfo{
	display: block;
}
#sendai .sendaiBtm .clmInfo .clmL{
	width: 100%;
}
#sendai .sendaiBtm .clmInfo .clmR{
	width: 100%;
	margin: 30px 0 0;
}
#sendai .sendaiBtm .clmbnr{
	width: 100%;
	margin: 80px 0 0;
}
#sendai .sendaiBtm .clmbnr a{
	display: block;
	border-radius: 18px;
}
#sendai .sendaiBtm .clmbnr a:hover .arw{
	background-color: #FFC900;
}
#sendai .sendaiBtm .clmbnr a:hover .arw:after{
	right: 12px;
}
#sendai .sendaiBtm .clmbnr .clmL{
	width: 100%;
}
#sendai .sendaiBtm .clmbnr .clmR{
	width: 100%;
	display: block;
}
#sendai .sendaiBtm .clmbnr .clmR div{
	width: 100%;
	padding: 15px;
}
#sendai .sendaiBtm .clmbnr .clmR p.cap{
	font-size: 14px;
}
#sendai .sendaiBtm .clmbnr .clmR p.ttlJa{
	font-size: 20px;
}
#sendai .sendaiBtm .clmbnr .clmR p.ttlEn{
	font-size: 30px;
}
/*=============================================================
 #recruit
=============================================================*/
#recruit{
	margin: 90px 0 0;
}
#recruitbg{
	background: url("../img/bg_recruit_sp.jpg") no-repeat center 0;
	background-size: cover;
}
#recruitbg img{
	min-height: 639px;
}
#recruitMenu{
	width: 100%;
}
#recruitMenu p.catch{
	padding: 20px 0 0;
	font-size: 18px;
}
#recruitMenu p.sub{
	padding: 20px 0 10px;
}
#recruitMenu .entry{
	width: 300px;
	display: block;
}
#recruitMenu .entry li{
	width: 300px;
}
#recruitMenu .menu{
	width: 300px;
	margin: 60px auto 0;
}
#recruitMenu .menu li{
	width: 300px;
}


}
