@charset "UTF-8";
* { margin: 0px auto; padding:0px;  outline: none;}

html{
	font-family: 'メイリオ', sans-serif; font-weight: 400;
	font-size: 62.5%;	color:#484033; background: #fff;
  line-height: 1.9; letter-spacing: 0.07em;
	height:100%;
}

.center{ text-align: center; }
.left{ text-align: left; }
.right{ text-align: right; }
.white{ color:#fff; }

.flex{ display: flex; flex-wrap: wrap; justify-content:space-between; }

img{ width:100%; }
a{ text-decoration: none;  }
.linkimg_l:hover,.searchbtn:hover{ opacity: 0.75; transition: 0.8s; }
.menu:hover,.menu:active{ background: #df3335; transition: 0.8s; }

h1{ color:#fff; font-size: 1rem; font-weight: 400; letter-spacing: 0.08em;}
h2{ font-size: 2.6rem; }
aside{ font-size:1.3rem; letter-spacing: 0.15em; display: block; width:50%; max-width:200px; border-top: solid 1px #484033;}

h3{ font-size: 2.6rem; }
h3 span{ background:linear-gradient(transparent 60%, #FFE3E3 60%); letter-spacing: 0.1em;}

.text{ font-size: 1.6rem; margin: 20px auto;}
.title_text{ font-size: 1.9rem;  margin:30px auto; font-weight: 600; }

section{ padding:50px 0px 70px; }

/* ヘッダー */
.h_title{ position: absolute; top: 15px; left:15px; z-index:999;}
.menu{
  display: none; width: 100%; height:60px;
  background: #F10000;
  position: fixed; bottom: 0; z-index:999;
	border-radius: 30px 30px 0px 0px;
}
.menu a{ display: block; width: 100%; height:100%; padding:15px; font-size: 2rem; color:#fff; }
.menu svg{ width:30px; height:30px; margin-left: -40px; vertical-align: middle; fill:#fff; }
.header_bg{
  height: 60px; width: 100%; margin:0; padding:0;
  background-color: #F10000;
  position: fixed; top:0; z-index:98;
	}


/* メイン動画 */
#topimg{ padding:0px; }
.video_outer{ position:relative; top:0; height:100vh; height: -webkit-fill-available;}

.video_outer::after{ display: block; content:''; width:100%; height:100%;  position:absolute; top:0; z-index:10; background:linear-gradient(25deg, rgba(255, 190, 44, 0.3), rgba(255, 44, 171, 0.3));}
.video_outer video{	width:100%;height:100vh; height: -webkit-fill-available; object-fit: cover; }
.maincopy{ position:absolute; top:28vh; left:0; text-align: center;  z-index:20;}
.arrow{ position:absolute; bottom:40px; left:48vw; text-align: center;  z-index:20;}

/* メッセージ */
#message .title_text{ margin:20px auto; }
#message .text{ width:92%; max-width: 500px; margin:30px auto;}
#message img{ width:92%;  max-width: 500px; display: block; text-align: center;}
#message{ padding-top:30px; background: url(../images/sp_town.png) no-repeat right bottom/40%; }

/* 仕事の種類 */
#job{ background:#EEE; }
.title_text { position: relative;}
#job .title_text img{ position: absolute; right:10px; top:-60px; width:60px; }
.slider{ width:90vw; height:116vw;}
.slider_content{ width:calc(90vw - 2px); height:116vw; border: solid 1px #707070;background: #fff;}
.content_img{ width:100%; height:60vw;}
.content_text{ width:85%; }
.content_text .text{ font-size: 1.3rem; line-height: 1.5;}
.searchBtn{ display: block;  width:100%; height:40px; font-size: 1.3rem;  line-height: 40px; background-color: #4FD80C; color:#fff; position: relative;   box-shadow: 0 3px 0 #4FD80C; }
.searchBtn:active { top: 2px; box-shadow: none; }
.searchBtn:hover { opacity: 0.8;}

.prev img,.next img{ width:30px; }
.prev{ position: absolute; top:50%; left:-16px; z-index:99;}
.next{ position: absolute; top:50%; right:-15px; z-index:99;}

/* スタッフの声 */
#staff_voice h2{ display: inline-block; }
#staff_voice img{	width:30px; position: relative; bottom:-10px; padding:0px 10px;}
.yt_profile{ font-size: 1.4rem; width:45%; background-color: #484033; color:#fff; padding-left: 15px; margin: 10px 0px;}
.yt_title{ font-size:2rem; font-weight: bold; padding-left: 15px;}

.yt_video{ width:92vw; max-width:376px; height:51vw; max-height:212px; margin-bottom:70px;  position:relative; }
.yt_video::after,.yt_video iframe{ width:100%; height:100%; position:absolute; }
.yt_video::after{ display: block; content:''; width:70%; background: #FFE3E3; z-index:0; bottom:-20px; right:-20px;}
.yt_video iframe{ z-index:1; }

/* 仕事検索 */
#search{ background:#EEE;}
.title_text { position: relative;}
#search .title_text img{ position: absolute; left:20px; top:-10px; width:60px; }

#search .flex{ width:90%; padding-bottom: 30px;}
.searchWrap{ margin:50px auto; }
.selectStyle{width: 90%; max-width:350px; margin: 30px auto;}
#search .searchBtn{ width: 90%; max-width:350px; height:50px; border-radius: 30px; border: none; font-size: 2rem;  line-height: 50px; position: relative;　color:#fff;}
.searchBtn img{ position: absolute; width:30px; left:40px; top:10px; vertical-align: middle;  }

.selectStyle select {
  font-size: 2rem;
  width:100%;  height:3em; padding-right: 1em;
  cursor: pointer; text-indent: 0.01px; text-overflow: ellipsis;
  border: none; outline: none; background: transparent; background: none; box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.selectStyle select::-ms-expand {display: none;}
.selectStyle.customForm { position:relative; border: 1px solid #707070; background: #fff;}
.selectStyle.customForm select { padding: 8px; color: #707070; }
.selectStyle.customForm::before {
  position: absolute; top: 0.8em; right: 1em;
  content: '〉';  transform:rotate(90deg); color: #707070;   font-size: 1.6rem;
  pointer-events: none; padding-left:20px;
}

/* 会社情報 */
#company{ padding:30px 0px; }
.link{ font-size: 1.2rem; margin:15px auto;}
.link a{ margin:0px 5px; }
.logo { margin:20px auto; }
.logo img{ width:80%; max-width: 280px; }
.link a,.link a:visited{ color:#484033; }

/* フッター */
footer{ background:#484033; color:#fff; margin:0 auto; padding:10px 0 80px; }
.copylight{letter-spacing: 0.1em; line-height: 1.8em;}


/*-- PC版表示CSS --*/
@media screen and (min-width:1021px){
	.sp_area,.sp_br{ display: none; }
	.pc_area{ display: block; }

	h1{ font-size: 1.4rem; }
	small{ font-size: 1.4rem;}

	#merit .flex{ width:1000px; padding-bottom: 100px; }
	#search .flex{ width:850px; margin:0 auto; padding:0;}

	/* ヘッダー */
	.h_title{ position: fixed; top: 20px; left:calc((100% - 950px) / 2);}
	.menu{ display: block; width:200px; height:40px; border-radius: 10px; top:10px; left:calc((100% - 950px) / 2 + 780px); background: none; border: solid 1px #fff;}
	.menu a{ padding:0px 10px; font-size: 1.8rem; line-height: 40px; }
	.menu:hover,.menu:active{ background: #fff; transition: 0.8s; color:#F10000; }
	.menu a:hover,.menu a:active{ color:#F10000; }

	.menu svg{ width:20px; margin-left: -20px; vertical-align: middle; fill:currentcolor;}
	.header_bg{ display: none; }

	/* TOP */
	.video_outer{ position:relative; top:0; height:100vh;}
	.maincopy{ top:40vh; left:calc((100% - 800px) / 2);}
	.arrow{ font-size:1.2rem; bottom:40px; left:48vw; }

	/* メッセージ */
	#message { position:relative; height:500px;}
	#message .title_text { width:420px;  position:absolute; left:50%;}
	#message .text{ width:420px; position:absolute; left:calc(50% + 30px); top:140px; }
	#message img{ width:500px; position:absolute; left:calc(50% - 500px); top:90px; }
	#message .title_text img { width:100%; top:30px; left:0;}
	#message{ padding-top:30px; background: url(../images/pc_town.png) no-repeat right bottom/600px; }

/* 仕事の種類 */
	.title_text { position: relative; width:950px; }
	#job .title_text img{ right:100px; top:-40px; width:80px; }
	#search .title_text img{ left:280px; top:-10px; width:80px; }

	.slider{ width:100%; height:310px;}
	.slider_content{ width:600px; height:310px; margin:0 20px; position: relative;}
	.content_img{ width:264px; height:310px; position: absolute; left:0; top:0;}

	.content_img.sales{ background:url(../images/pc_sales.jpg);  background-size: cover;}
	.content_img.medicaloffice{ background:url(../images/pc_medicaloffice.jpg);  background-size: cover;}
	.content_img.driver{ background:url(../images/pc_driver.jpg);  background-size: cover;}
	.content_img.restaurant{ background:url(../images/pc_restaurant.jpg);  background-size: cover;}

	.content_text{ width:260px;  height:308px; position:absolute; right:40px;  top:32px;}
	.content_text p{margin:40px auto;}

	.prev{ left:calc(( 100% - 600px)/2 - 20px); }
	.next{ right:calc(( 100% - 600px)/2 - 20px); }

	/* スタッフの声 */
	.yt_outer{ display: flex; flex-wrap: wrap; justify-content:space-between; width:950px; margin:50px auto; }
	.yt_profile{ padding-left: 5px;}
	.yt_title{ padding-left: 5px;}

/* 仕事検索 */
	.search_outer{ display: flex; flex-wrap: wrap; justify-content:space-between; width:750px; margin:30px auto; }

/* 会社情報 */
	.link{ font-size: 1.4rem;  margin:0px auto;}
	.link a{ margin:0px 10px; }
	.logo { margin:10px auto 30px; }

/* フッター */
	footer{ padding:10px 0 ; font-size: 1.4rem;  }
}

/*-タブレット版表示CSS-*/
@media screen and (min-width:561px) and (max-width:1020px) {
	.sp_area,.sp_br{ display: none; }
	.pc_area{ display: block; }
	.header_bg{ display: none; }

	h1{ font-size: 1.4rem; }
	small{ font-size: 1.4rem;}

	/* ヘッダー */
	.h_title{ position: fixed; }
	.menu{ display: block; width:200px; height:40px; border-radius: 10px; top:10px; right:30px; background: none; border: solid 1px #fff;}
	.menu a{ padding:0px 10px; font-size: 1.8rem; line-height: 40px; }
	.menu:hover,.menu:active{ background: #fff; transition: 0.8s; color:#F10000; }
	.menu a:hover,.menu a:active{ color:#F10000; }

	.menu svg{ width:20px; margin-left: -20px; vertical-align: middle; fill:currentcolor;}

	/* TOP */
	.video_outer{ position:relative; top:0; height:100vh;}
	.maincopy{ width:85%; top:40vh; left:7%;}
	.maincopy img{ }
	.arrow{ font-size:1.2rem; bottom:40px; left:48vw; }

/* 仕事の種類 */
	#job .title_text img{ right:100px; top:-40px; width:80px; }
	#search .title_text img{ right:300px; top:-10px; width:80px; }

	.slider{ width:100%; height:500px;}
	.slider_content{ width:450px; height:500px; margin:0 20px; position: relative}
	.content_img{ width:450px; height:304px; }
	.content_img.sales{ background:url(../images/sp_sales.jpg);  background-size: cover;}
	.content_img.medicaloffice{ background:url(../images/sp_medicaloffice.jpg);  background-size: cover;}
	.content_img.driver{ background:url(../images/sp_driver.jpg);  background-size: cover;}
	.content_img.restaurant{ background:url(../images/sp_restaurant.jpg);  background-size: cover;}
	.prev{ left:calc(( 100% - 450px)/2 - 20px); }
	.next{ right:calc(( 100% - 450px)/2 - 20px); }
}

/*-スマホ版表示CSS-*/
@media screen and (max-width:560px){
	html{padding-bottom: 60px;}
	.pc_area,.pc_br{ display: none; }
	.sp_area{ display: block; }
	.header_bg{ display: none; }

	.content_img.sales{ background:url(../images/sp_sales.jpg);  background-size: cover;}
	.content_img.medicaloffice{ background:url(../images/sp_medicaloffice.jpg);  background-size: cover;}
	.content_img.driver{ background:url(../images/sp_driver.jpg);  background-size: cover;}
	.content_img.restaurant{ background:url(../images/sp_restaurant.jpg);  background-size: cover;}

}
