@charset "utf-8";

* {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	font-family: 'Noto Sans JP', sans-serif;
	outline: none;
}

.pc {display: block; }
.sp { display: none; }

#contents {
	width: 100%;
}
#contents hr {
	border: 0;
	border-top: 2px solid #E8E8E8;
}



.header {
	width: 100%;
	height: 155px;
	background-color: white;
}

.header_box_test {
	width: 100%;
	height: 155px;
	position: fixed;
	flex-direction: column;
	background-color: white;
	border-bottom: 3px solid #E8E8E8;
	z-index: 2;
}

.header_navi {
	width: 1114px;
	height: 135px;
	display:block;
	margin: 0 auto;
	padding-top: 20px;
	flex-direction: column;
	position: relative;
	background-color: white;
	border-bottom: 3px solid #E8E8E8;
	z-index: 2;
}

.header_text {
	position : absolute;
	top: 25px;
	left: 0px;
	font-size: 18px;
	font-style: "Noto Sans JP";
	color: #009A59;
	z-index: 3;
}

.header_rogo {
	position: absolute;
	bottom: 25px;
}

.navi_btn1,
.navi_btn2,
.navi_btn3,
.navi_btn4{
	position: absolute;
	top:90px;
	border: 2px solid #009A59;
	line-height: 28px;
	border-radius: 5px;
	height: 32px;
	box-sizing: border-box;
}

.navi_btn1{
	right:580px;
	width: 130px;
	background-color: #fff;
}

 .navi_btn2{
	right: 363px;
	width: 209px;
	background-color: #009A59;
}

.navi_btn3{
	right: 152px;
	width: 203px;
	background-color: #009A59;
}

.navi_btn4{
	right: 0;
	width: 144px;
	background-color: #009A59;
}

.navi_btn1 p {
	position: absolute; left: 8px;
	font-size: 17px;
	color: #009A59;
  }

.navi_btn2 p,
.navi_btn3 p,
.navi_btn4 p {
	position: absolute; left:8px;
	font-size: 16px;
	color: #fff;
}

.btn_text2,.btn_text3 ,.btn_text4 {
	color:#F8FF00;
}

 .navi_btn1 p:before,
 .navi_btn2 p:before,
 .navi_btn3 p:before,
 .navi_btn4 p:before{
	position: absolute;
	content: "";
	width: 22px; height:22px;
	top: calc(50% + 1px);
	transform: translateY(-50%);
}

 .navi_btn1 p:before{
	background: url(../images/top_arrow.png);
	background-size: cover;
	left:calc(130px - 34px) ; /*ボタン幅-34px*/
}

.navi_btn2 p:before {
	background: url(../images/top_arrow_white.png);
	background-size: cover;
	left:calc(209px - 34px) ;/*ボタン幅-34px*/
}

.navi_btn3 p:before {
	background: url(../images/top_arrow_white.png);
	background-size: cover;
	left:calc(203px - 34px) ;/*ボタン幅-34px*/
}

.navi_btn4 p:before {
	background: url(../images/top_arrow_white.png);
	background-size: cover;
	left:calc(144px - 34px) ;/*ボタン幅-34px*/
}

.btn_link a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
}

#anchor2,
#anchor3,
#anchor4 {
	margin-top: -30px;
	padding-top: 30px;
}


.top_hr {
	height: 2px
  background-color: #E8E8E8
}


.header_cont {
	bottom: 474px;
	width: 1114px;
	height:251px;
 	display: flex;
 	margin: 0 auto;
	background-color: white;
}


.header img {
	margin: 0;
}


.top_img {
	width: 1115px;
	height: 190px;
	margin: auto 0;
	padding-top: 30px;
	text-align: center;

}

.top_img p {
	margin-top: 47px;
	font-size: 20px;
	line-height: 35px;
	letter-spacing: 1.3px;
}

.pc_copy_title {
	font-size: 35px;
	margin: 55px auto 0;
}

.pc_copy {
	font-size: 20px;
	line-height: 35px;
	margin: 47px auto;
}

.cont01 {
	position: relative;
	width: 100%;
	padding: 50px 0;
	overflow: hidden;
	background: url(../images/dot.jpg);
}

.slider2 {
 margin-top: 50px;
}

.message {
	width: 1114px;
	height: 590px;
	margin: 0 auto;
	text-align: center;
	background-color: white;
	position: relative;
}

.messge_ilust_left img {
	position: absolute;
	top:175px;
	left:0;
}

.messge_ilust_right img {
	position: absolute;
	top:175px;
	right:0;
}

.message_title {
	margin: 65px auto 0;
}

.cont01_copy {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	transform: translateY(-50%);

}

.cont01_copy p {
	display: inline;
	padding: 30px 30px 30px 50px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: 70px;
	color: #009A59;
	white-space: pre;
	background: #fff;
}

.cont02 {
	width: 100%;
	padding: 85px	0;
	background: url(../images/comp_background.png);
}

.pickup_area {
	width: 1011px;
	margin: 0 auto;
	padding: 50px;
	border-radius: 20px;
	text-align: center;
}

.pickup_title {
	display: inline-block;
	padding: 20px 40px;
	background: #fff;
}
.comp_title p,
.pickup_title p {
	font-size: 20px;
	color: #484848;
	margin-left: 10px;
}

.pickup_box {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
	padding: 20px 20px 30px;
	background: #fff;
	border: 3px solid #009A59;
}

.pickup_main {
	width: 454px;
	height: 360px;
	position: relative;
}

.pickup_main_headline {
	font-size: 20px;
	font-weight: bold;
}

.pickup_main_texist {
	font-size: 16px;
	line-height: 22px;
	margin-top: 15px;
}

.pickup_btn ,
.interview_btn{
	width: 100%;
	background: #009A59;
	text-align: center;
	padding: 7px 0 9px;
	position: absolute;
	left: 50%;
 	transform: translate(-50%);
	bottom: 0;
}

.comp_btn {
	width: 346px;
	background: #009A59;
	text-align: center;
	padding: 7px 0 9px;
	position: absolute;
	left: 50%;
 	transform: translate(-50%);
	bottom: 0;
}

.pickup_btn p,
.comp_btn p,
.interview_btn p  {
	font-size: 20px;
	color: #fff;
}

.pickup_btn p:before,
.comp_btn p:before,
.interview_btn p:before{
	content: "";
	width: 28px;
	height: 28px;
	background: url(../images/btn_arrow.png);
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 96px;
	transform: translateY(-50%);
}

.pickup_btn p:before {
	left: 140px;
}


.pickup_btn a,
.comp_btn a ,
.interview_btn a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.cont03 {
	width: 100%;
	padding: 85px	0 70px;
}

.comp_area {
	width: 1011px;
	margin: 0 auto;
	text-align: center;
}

.comp_main {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 25px;
}

.comp_box {
	width: 320px;
	height: 677px;
	border: 3px solid #009A59;
	position: relative;
	margin-top: 25px;
}

.comp_headline,
.comp_pr,
.comp_merit {
	width: 90%;
	margin: 30px auto 0;
	color: #484848;
}

.comp_headline {
	font-size: 18px;
	font-weight: bold;
}

.comp_pr,
.comp_merit {
	font-size: 16px;
	line-height: 24px;
}

.comp_btn {
	width: 268px;
	bottom: 30px;
}

.comp_btn p:before {
	left:64px;
}

.comp_btn p {
	margin-left: 25px
}

/* 202109追加 インタビュー */
.cont04 {
	width: 100%;
	padding: 70px	0 0;
	background: #009A59;
}

.interview_area {
	width: 1011px;
	margin: 0 auto;
	padding: 0 50px;
	border-radius: 20px;
	text-align: center;
}

.interview_title {
	display: inline-block;
	padding: 20px 40px;
}
.interview_title p {
	font-size: 20px;
	color: #fff;
	margin-left: 10px;
}

.interview_box {
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
	padding: 20px 20px ;
	background: #fff;
	border: 3px solid #009A59;
}

.interview_img img{
	width:320px;
	height:240px;
}
.interview_img{
	position:relative;
}

.interview_img::after{
	content: '';
	position:absolute;
	top:0; left:0;
	background: #F8FF00;
	color:#009A59;
	font-size: 16px;
	padding:0 20px 0 5px;
}
.interview_img.interview_c::after{
	content: '企業向けインタビュー';
}
.interview_img.interview_u::after{
	content: '求職者向けインタビュー';
}

.interview_text{
	width: 590px;
	position: relative;
	text-align: left;
}

.interview_headline {
	font-size: 20px;
	line-height: 29px;
	color:#009A59;
	margin:20px 0;
}
.interview_name {
	color:#484848;
	font-size: 20px;
	line-height: 29px;
	margin-top: 20px;
}

.interview_category {
	color:#484848;
	font-size: 16px;
	line-height: 22px;
	margin-top: 10px;
}

.interview_btn p:before{
	left: 196px;
}
/* 202109追加 インタビューここまで */


.bottom_logo {
	display: block;
	width: 160px;
	height: auto;
	margin: 70px auto 0;
}

.footer {
	width: 100%;
	background: #009A59;
	padding: 55px 0;
}

.footer p {
	font-size: 10px;
	color: #fff;
	text-align: center;
}

.slider1 {
width: 100%;
height: 357px;
background: url(../images/slider_bg1.png);
animation:infinitescroll1 30s linear infinite;
}

@keyframes infinitescroll1 {
	0% {background-position: 0 0 ;}
	100% {background-position: -2930px; }
}

.slider2{
width: 100%;
height: 357px;
background: url(../images/slider_bg2.png);
animation:infinitescroll2 30s linear infinite;
}

@keyframes infinitescroll2 {
	0% {background-position: 0 0 ;}
	100% {background-position: 2930px; }
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;
}

/* slider ---------------- */

.job_slider {
	position: relative;
	width: 478px;
}
.job_slider div img {
	width: 100%;
	height: auto;
}

.prev-arrow {
	position: absolute;
	top: 376px;
	left: 155px;
	z-index: 50;
}

.next-arrow {
	position: absolute;
	top: 376px;
	right: 155px;
	z-index: 50;
}

.slick-dots {
	position: absolute;
	bottom: -33px;
	left: 0;
  display: flex;
  justify-content: center;
}
.slick-dots li button:before {
    font-family: 'slick';
    font-size: 12px;
    line-height: 20px;
    position: absolute;
    top: 4px;
    left: 0;
    width: 20px;
    height: 20px;
    content: '•';
    text-align: center;
    opacity: .25;
    color: #009A59;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
    color: #009A59;
}

/* loading ------------ */
#loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #009A59;
  z-index: 9000;
}
.loading_logo {
	position: relative;
	top: 50%;
	left: 50%;
	text-align: center;
	transform: translate(-50%, -50%);
}
.loading_logo img {
	margin-bottom: 50px;
}
.loading_copy {
	display: inline;
	padding: 110px 30px 30px 50px;
	background: #fff;
}
.loading_copy p {
	display: inline;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: 70px;
	color: #009A59;
	white-space: pre;
}
