@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;500;600&display=swap');

/* reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a:focus {
  outline: none;
}

input, select, button, textarea {
  appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  border-color: inherit;
  background: none transparent;
  background-clip: padding-box;
  color: inherit;
  font-size: inherit;
  vertical-align: middle;
}
textarea {
  resize: none;
}

main {
  position: relative;
  background: #e5f5ec;
  border-top: solid 1px #efefef;
}
main#top_page,
main#sec_page {
  background: #fff;
  border-top: 0;
}

/* clearfix */
.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

body {
  font-family: "Noto Sans JP", "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
  font-weight: 300;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  color: #000;
}
body.noscroll {
  overflow: hidden;
}

img {
  max-width:100%;
  height:auto;
  display:block;
}
a {
  color:#000;
  text-decoration:none;
}
.sp {
  display: none !important;
}
.twocol {
  width:100%;
  display:flex;
}
.ibk {
  display: inline-block;
}

#wrapper {
  margin-top:95px;
  overflow: hidden;
}
.inner {
  max-width:992px;
  margin:0 auto;
  position:relative;
}
header {
  width:100%;
  height:95px;
  padding:0;
  background:#fff;
  position: fixed;
  top:0;
  left:0;
  z-index:9;
}
header .inner {
  width:calc(100% - 40px);
  display:flex;
  justify-content: space-between;
}
header .hdtxt {
  padding:9px 20px 11px;
  background:#289A5B;
}
header .hdtxt p {
  color:#fff;
  font-size:14px;
  line-height:1;
  max-width:992px;
  margin:0 auto;
}
header .logo {
  width:28.28%;
  margin:3px 0 0;
}
header ul {
  padding:18px 0 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header ul li {
  font-size:18px;
  line-height:1;
  margin:0 0 0 35px;
}
#spbtn, #spnavi {
  display:none;
}

footer {
  padding:18px 20px 28px;
  background:#fff;
}
footer ul {
  width:100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
footer ul li {
  font-size:14px;
  line-height:1.33;
  margin:5px 0 0;
}
footer ul li::before {
  content:"｜";
}
footer ul li:first-child::before {
  display:none;
}
footer p.copyright {
  font-size:14px;
  line-height:1.33;
  text-align: center;
  margin:20px 0 0;
}

/* ページトップへ */
#pageTop {
  height: 0;
  margin: 0 auto;
  z-index: 30000;
  clear: both;
  position: relative;
	visibility: visible;
}
#totopLink {
  width: 60px;
  height: 60px;
  position:fixed;
	bottom:20px;
	right:10px;
  box-sizing: border-box;
}
#totopLink a {
  width: 60px;
  height: 60px;
	background:rgba(171,171,171,0.7);
	background-size:50% 50%;
	display:block;
	float: right;
	position: relative;
	top:100px;
  border-radius:50%;
	transition:all ease 0.3s;
}
#totopLink a::after {
  content:"";
  width:53.33%;
  height:33.33%;
  position:absolute;
  top:47%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
  background:url(../images/totop.svg) no-repeat 0 0;
  background-size:100% auto;
  display:block;
}
#wrapper.totop #totopLink a {
	top:0;
}

.main {
  padding:0 20px;
  min-height:580px;
  position:relative;
  background:url(../../images/main.jpg) no-repeat center 0;
  background-size:auto 100%;
}
.main_inner {
  width:100%;
  max-width:992px;
  margin:0 auto;
  padding:40px 0;
  display: flex;
}
.main_inner .title {
  width:50%;
  padding:99px 20px 0 0;
}
.main_inner .main_right {
  width:50%;
}
.main_inner .search_form {
  width:100%;
  padding:24px 50px;
  background:rgba(255,255,255,0.85);
  box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.3);
}
.search_form form {
  width:100%;
  margin:0 auto;
}
.search_form input,
.search_form select,
.search_form textarea {
  font-family: "Noto Sans JP", "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
  display: block;
}
.search_form ::placeholder,
.input_box ::placeholder {
  color:#CECECE;
}
.search_form .form_select {
  text-align: right;
  position: relative;
  margin-bottom:25px;
}
.search_form .form_select::after {
  content:"";
  width:13px;
  height:20px;
  background:url(../images/ico_arrow.svg) no-repeat 0 0;
  background-size:100% auto;
  position: absolute;
  top:50%;
  right:15px;
  transform: translateY(-50%) rotate(90deg);
}
.search_form select {
  font-size:16px;
  width:255px;
  padding:5px 40px 5px 15px;
  background:#fff;
  border:solid 1px #E0DCDC;
  display: inline-block;
}
.modal_select {
  margin:0 0 16px;
}
.modal_select a {
  color:#009944;
  font-size:18px;
  font-weight:400;
  padding:7px 27px 9px 20px;
  display: block;
  border:solid 1px #E0DCDC;
  border-radius:5px;
  background:url(../images/ico_arrow.svg) no-repeat right 10px center #fff;
  background-size:8px auto;
  cursor:pointer;
}
.modal_select a .select_text {
  color:#000;
  float: right;
}
.freeword_area {
  margin:0 0 20px;
}
.search_input_block {
  width:100%;
  display: flex;
}
.search_input_block input {
  color:#000;
  font-size:18px;
  font-weight:400;
  padding:7px 20px 9px;
  border:solid 1px #888;
  border-radius:5px;
  width:75%;
  display: block;
}
.switchArea {
  width:25%;
  padding:0 0 0 25px;
  position: relative;
}
.switchArea p.switch_label {
  font-size:16px;
  font-weight:400;
  line-height:1;
  height:16px;
}
.switchArea p.switch_label span:nth-child(1) {
  float: left;
}
.switchArea p.switch_label span:nth-child(2) {
  float: right;
}
.switchArea input[type="checkbox"] {
  display: none;
}
.switchArea label {
  width:54px;
  height:22px;
  background:#009944;
  border-radius:20px;
  margin:4px 10px 0;
  display:block;
  cursor:pointer;
  position: relative;
}
.switchArea .switch_toggle {
  width:15px;
  height:15px;
  position: absolute;
  background: #fff;
  top:50%;
  left:4px;
  transform:translateY(-50%);
  border-radius:50%;
  transition:ease .3s;
  pointer-events: none;
}
.switchArea input[type="checkbox"]:checked + label .switch_toggle {
  transform:translateY(-50%) translateX(31px);
}
.search_form p.search_total {
  font-size:16px;
  font-weight:400;
  line-height:1;
  text-align: center;
}
#job_count {
  color:#009944;
  font-size:112.5%;
}
.twobtn {
  width:100%;
  display: flex;
  justify-content: space-between;
  margin:20px 0 0;
}
.twobtn a {
  font-size:18px;
  font-weight:400;
  line-height:48px;
  white-space: nowrap;
  padding:0 30px;
  text-align: center;
  display: block;
  border-radius:30px;
  cursor:pointer;
}
.twobtn a.detail_search_btn {
  background:#fff;
  border:solid 2px #95989A;
}
.twobtn a.search_btn {
  color:#fff;
  letter-spacing:0.4em;
  background:#009944;
  border:solid 2px #009944;
}
.twobtn a.search_btn img {
  width:16px;
  height:auto;
  display: inline-block;
  margin-left:3px;
}
.entry_btn {
  margin:23px 0 0;
}
.entry_btn .button {
  margin:0 10px 15px;
}
.entry_btn .button a {
  color:#fff;
  font-size:24px;
  font-weight:500;
  text-align: center;
  padding:13px 10px 15px;
  border-radius:10px;
  background:#143935;
  box-shadow:0px 2px 2px 0px rgba(0,0,0,0.3);
  display: block;
}
.entry_btn .txtlink {
  text-align: center;
}
.entry_btn .txtlink a {
  font-size: 18px;
  line-height: 1.2;
  text-decoration: underline;
}

.page_body {
  width:100%;
  max-width:1032px;
  display: flex;
  padding:15px 20px 110px;
  justify-content: space-between;
}
main#top_page .page_body {
  padding-top:80px;
}
main#sec_page .page_body {
  display:block;
}
.page_con {
  width:67.5%;
}
.page_con section {
  margin:50px 0 0;
}
.page_con section:first-child {
  margin:0;
}
.page_con section h1 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1;
  margin:0 0 27px;
}

.keyword ul {
  width:100%;
  display:flex;
  flex-wrap:wrap;
}
.keyword ul li {
  font-size:18px;
  line-height:1;
  margin:10px 20px 0 0;
}
.page_con p.more a:hover,
.keyword ul li a {
  text-decoration:none;
}
.keyword ul li a:hover,
.page_con p.more a {
  text-decoration:underline;
}
.page_con p.more {
  font-size:18px;
  line-height:1;
  text-align:right;
  margin:20px 0 0;
}
.page_con section.job_type {
  margin-left:-15px;
  margin-right:-15px;
}
.page_con section.job_type h1 {
  margin-left:15px;
}
ul.jobs_slider {
  padding-bottom:40px;
  position: relative;
  overflow: hidden;
}
ul.jobs_slider .slick-slide {
  padding:0 15px;
  box-sizing: border-box;
}
ul.jobs_slider li a {
  display: block;
  border-radius:5px;
  background:#009944;
  box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.2);
}
ul.jobs_slider li a .image img {
  border-radius:5px 5px 0 0;
}
ul.jobs_slider li a h2 {
  color:#fff;
  font-size:18px;
  font-weight:400;
  line-height:1.33;
  padding:10px 15px 15px;
}

ul.company_slider {
  padding-bottom:11px;
  overflow: hidden;
}
ul.company_slider li {
  max-width:670px;
  padding-right:24px;
  flex-wrap: wrap;
}
ul.company_slider .slick-dots li {
  padding:0;
}
ul.company_slider.slick-initialized .slick-slide {
  display: flex;
  justify-content: space-between;
}
ul.company_slider li a {
  width:calc(25% - 12px);
  margin:0 0 24px;
  display: block;
}

.jobs ul li {
  padding-top:17px;
  margin-top:17px;
  border-top:solid 1px #CDCDCD;
}
.jobs ul li:first-child {
  padding-top:0;
  margin-top:0;
  border:0;
}
.jobs ul li a {
  padding-right:20px;
  display: block;
  background:url(../images/ico_arrow.svg) no-repeat right 7px center;
  background-size:10px auto;
}
.jobs ul li p.date {
  color:#989898;
  font-size:14px;
  font-weight:400;
  line-height:1;
  margin:0 0 10px;
}
.jobs ul li p.date span.employment_type {
  color:#009944;
}
.jobs ul li h2 {
  font-size:16px;
  font-weight:400;
  line-height:1.56;
  margin:0 0 10px;
}

.info ul li {
  margin-top:40px;
}
.info ul li:first-child {
  margin-top:0;
}
.info ul li a {
  display: block;
}
.info ul li p.date {
  color:#989898;
  font-size:14px;
  font-weight:400;
  line-height:1;
  margin:0 0 10px;
}
.info ul li h2 {
  font-size:16px;
  font-weight:400;
  line-height:1.56;
  margin:0;
}

.side_con {
  width:25.8%;
  padding-right:1.6%;
}
#search_result .side_con {
  width:256px;
  min-width:256px;
  padding-right:16px;
}
.side_con ul li {
  margin:25px 0 0;
}
.side_con ul li:first-child {
  margin-top:0;
}
.side_con ul li a {
  border:solid 2px #009944;
  border-radius:5px;
  background:#fff;
  display:block;
}
.side_con ul li a img {
  border-radius:0 0 3px 3px;
}
.side_con ul li a h2 {
  font-size:18px;
  font-weight:300;
  line-height:1.2;
  padding:15px 0px 10px 10px;
}

.search_footer {
  padding:30px 20px 50px;
  background:#009944;
}
.search_footer .inner {
  max-width:670px;
}
.ftblock {
  margin:50px 0 0;
}
.search_footer .ftblock:first-child {
  margin:0;
}
.ftblock h2 {
  color:#fff;
  font-size:20px;
  font-weight:600;
  line-height:1.5;
  margin:0 0 13px;
}
.ftblock ul {
  display: flex;
  flex-wrap: wrap;
}
.ftblock .fthead h3,
.ftblock ul li {
  color:#fff;
  font-size:16px;
  font-weight:300;
  line-height:1.33;
  margin:10px 1em 0 0;
}
.ftblock ul li {
  margin:15px 1em 0 0;
}
.ftblock ul li a,
.ftblock .fthead h3 a {
  color:#fff;
  text-decoration:underline;
}
.ftblock .fthead {
  width:138px;
  min-width:138px;
}
.ftblock .fthead h3 {
  margin:10px 0 0;
}

/* modal */
.modal-container,
.modal-container1,
.modal-container2 {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,20%);
	padding: 40px 30px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
  box-sizing: border-box;
  z-index:10;
}
.modal-container:before,
.modal-container1:before,
.modal-container2:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
.modal-container.active,
.modal-container1.active,
.modal-container2.active {
	opacity: 1;
	visibility: visible;
}
.modal-body,
.modal-body1,
.modal-body2 {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 800px;
	width: 90%;
  padding:0;
  background:#fff;
  box-shadow:0 0 13px 0 rgba(0,0,0,0.6);
}
.modal-close,
.modal-close1,
.modal-close2 {
	position: absolute;
	top: 24px;
	right: 20px;
	width: auto;
	color: #000;
  font-size:18px;
  line-height:24px;
  padding-right:30px;
	cursor: pointer;
  background:url(../images/ico_close.svg) no-repeat right 0 top 4px;
  background-size:20px auto;
}
.modal-content,
.modal-content1,
.modal-content2 {
  background:transparent;
	text-align: left;
	padding:0;
}
.modal_search {
  padding:0 0 40px;
}
.modal_search h1 {
  font-size:24px;
  font-weight:600;
  line-height:1.25;
  text-align: center;
  padding:20px;
  border-bottom:solid 1px #CDCDCD;
}
.modal_search .inner {
  padding:50px 50px 40px;
}
.modal-content2 .modal_search .inner {
  padding-top:15px;
}
.modal_search .leftcol, .modal_search .rightcol {
  width:50%;
}
.modal_search .twocol {
  position: relative;
}
.modal_search .twocol ul {
  height:500px;
  overflow-y: auto;
  border:solid 1px #CDCDCD;
  border-bottom:0;
}
.modal-content2 .modal_search .twocol ul.rightcol {
  position: absolute;
  top:0;
  right:0;
  display:none;
  opacity:0;
  transition:ease .5s;
}
.modal_search .twocol ul li {
  border-bottom:solid 1px #CDCDCD;
}
.modal_search .twocol ul li input {
  display:none;
}
.modal_search .twocol ul li label {
  padding:15px 80px 15px 50px;
  display:block;
  background:#fff;
  position: relative;
  transition:ease .3s;
  cursor: pointer;
}
.modal_search .twocol ul li label .txt {
  font-size:16px;
  font-weight:400;
  line-height:1.5;
}
.modal_search .twocol ul li label .selected_txt {
  color:#fff;
  font-size:14px;
  line-height:1;
  padding:3px 6px 4px;
  background:#F2902C;
  display: block;
  border-radius:3px;
  position: absolute;
  top:50%;
  right:10px;
  transform:translateY(-50%);
  opacity:0;
  transition:ease .3s;
}
.modal_search .twocol ul li label::before,
.modal_search .twocol ul li label::after {
  content: "";
  display: block;
  position: absolute;
}
.modal_search .twocol ul li label::before {
  background:transparent;
  border-radius: 0;
  border: 1px solid #CDCDCD;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  top: 50%;
  left: 15px;
}
.modal_search .twocol ul li label::after {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  opacity: 0;
  height: 7px;
  width: 11px;
  transform:translateY(-50%) rotate(-45deg);
  top: 47%;
  left: 20px;
}
.modal_search .twocol ul li input[type="checkbox"]:checked + label,
.modal_search .twocol ul li input[type="radio"]:checked + label {
  background-color:#EFEFEF;
}
.modal_search .twocol ul li input[type="checkbox"]:checked + label::before,
.modal_search .twocol ul li input[type="radio"]:checked + label::before {
  border: 1px solid #009944;
  background:#009944;
}
.modal_search .twocol ul li input[type="checkbox"]:checked + label::after,
.modal_search .twocol ul li input[type="checkbox"]:checked + label .selected_txt,
.modal_search .twocol ul li input[type="radio"]:checked + label::after,
.modal_search .twocol ul li input[type="radio"]:checked + label .selected_txt {
  opacity:1;
}
.modal-content2 .modal_search .twocol ul li input[type="radio"]:checked + label + ul.rightcol {
  display: block;
  opacity:1;
}

.submit_area {
  margin:0;
  position: relative;
}
.submit_area p.gaitou {
  font-size:16px;
  line-height:1;
  font-weight:400;
  position: absolute;
  top:50%;
  left:25px;
  transform: translateY(-50%);
}
.submit_area p.gaitou .num {
  color:#009944;
  font-size:112.5%;
}
.submit_area .submit_btn {
  text-align: center;
}
.submit_area .submit_btn button {
  color:#fff;
  font-size:18px;
  font-weight:400;
  text-align: center;
  width:auto;
  padding:10px 30px;
  display:inline-block;
  background:#009944;
  border-radius:30px;
  cursor: pointer;
}
.modal_search h3 {
  font-size:18px;
  line-height:1.33;
  font-weight:600;
  margin:0 0 25px;
}
.modal_search .input_text {
  margin:0 0 30px;
}
.modal_search .input_text input {
  color: #000;
  font-size: 18px;
  font-weight: 400;
  padding: 8px 20px;
  border: solid 1px #E0DCDC;
  border-radius: 5px;
  width:100%;
  display: block;
}
.modal_search ::placeholder {
  color:#CECECE;
}
.modal-content2 .modal_search .twocol ul.leftcol > li > label {
  padding-left:20px !important;
}
.modal-content2 .modal_search .twocol ul.leftcol > li > label::before,
.modal-content2 .modal_search .twocol ul.leftcol > li > label::after {
  display:none !important;
}

.pankuzu {
  padding:10px 20px 25px;
}
.pankuzu ul {
  width:100%;
  max-width:992px;
  margin:0 auto;
  display:flex;
}
.pankuzu ul li {
  font-size:14px;
  line-height:1.5;
  padding:0 0 0 22px;
  position:relative;
}
.pankuzu ul li::before {
  content:"＞";
  font-size:14px;
  position:absolute;
  left:4px;
}
.pankuzu ul li:first-child {
  padding:0;
}
.pankuzu ul li:first-child::before {
  display:none;
}
.pankuzu ul li a:hover {
  color:#009944;
  text-decoration:underline;
}

/* result */
.search_result_top {
  padding:5px 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.search_result_top p.gaitou {
  font-size:16px;
}
.search_result_top p.gaitou .num {
  color:#009944;
  font-size:112.5%;
  font-weight:400;
}
.search_result_top .btns button {
  color:#009944;
  font-size:14px;
  padding:7px 30px 5px;
  line-height:1;
  border:solid 1px #009944;
  border-radius:20px;
  background:#fff;
  display:inline-block;
  cursor:pointer;
}
.page_con .result_sec {
  margin:0 !important;
}
.page_con .result_sec .box {
  margin:23px 0 0;
  padding:24px;
  background:#fff;
  position:relative;
}
.result_sec ul.status,
.other_jobs_slider ul.status {
  display: flex;
  flex-wrap: wrap;
}
.result_sec ul.status li,
.other_jobs_slider ul.status li {
  color:#000;
  font-size:14px;
  line-height:1;
  padding:10px 14px;
  margin:0 16px 10px 0;
  background:#E0DCDC;
  border-radius:10px;
}
.result_sec ul.status li.new,
.other_jobs_slider ul.status li.new {
  color:#fff;
  background:#009944;
}
div.featured_job_new  {
  color:#fff;
  background:#009944;
  display:inline-block;
  width: 50px;
  margin-right:5px;
  text-align: center;
  border-radius:6px;
}
.page_con section.result_sec h1 {
  color: #000;
  line-height: 1.5;
  margin: 5px 0 35px;
}
.page_con section.result_sec h1 div.employment_type {
  color:#009944;
  font-size: initial;
  font-weight: initial;
}
.result_sec .twocol {
  justify-content: space-between;
}
.result_sec .twocol .image {
  width:24.2%;
  max-width:150px;
}
.result_sec .twocol .image img {
  display: block;
}
.result_sec .twocol .text {
  width:75.9%;
  padding:0 30px 0 0;
}
.result_sec .twocol .text dl {
  width:100%;
  display:flex;
  margin:0 0 15px;
}
.result_sec .twocol .text dl dt {
  font-size:16px;
  line-height:1.75;
  font-weight:600;
  min-width:117px;
}
.result_sec .twocol .text dl dd {
  font-size:16px;
  line-height:1.75;
}
.result_sec .btn_area {
  width:100%;
  margin:20px 0 0;
  display: flex;
  justify-content: center;
}
.result_sec .btn_area a {
  color:#000;
  font-size:18px;
  line-height:1;
  text-align: center;
  width:180px;
  padding:12px 15px 15px;
  margin:0 8px;
  border:solid 1px #000;
  border-radius:30px;
  background:#fff;
  display:block;
  cursor:pointer;
}
.result_sec .btn_area .apply_btn {
  color:#fff;
  border:solid 1px #F2902C;
  background:#F2902C;
}
.case_num {
  margin:14px 0 0;
}
.case_num p,
.pager p {
  color:#989898;
  font-size:16px;
  line-height:1;
  text-align: center;
}
.pager {
  margin:28px 0 0;
}
.pager ul {
  width:100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin:38px 0 0;
}
.pager ul li {
  color:#989898;
  font-size:16px;
  line-height:36px;
  margin:0 4px 8px;
}
.pager ul li a {
  color:#989898;
  text-align:center;
  width:36px;
  height:36px;
  background:#fff;
  border-radius:4px;
  position:relative;
  display:block;
}
.pager ul li.current a {
  color:#fff;
  background:#009944;
  pointer-events: none;
}
.pager ul li.prev {
  margin:0 12px 8px 0;
}
.pager ul li.next {
  margin:0 0 8px 12px;
}
.pager ul li.prev a::after,
.pager ul li.next a::after {
  content:"";
  width:38.88%;
  height:38.88%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
  background:url(../images/ico_pager_arrow.svg) no-repeat 0 0;
  background-size:100% auto;
}
.pager ul li.prev a::after {
  opacity:.6;
}
.pager ul li.next a::after {
  transform: rotateY(180deg) translateX(50%) translateY(-50%);
}

.search_cond {
  padding:25px 8px 40px;
  background:#fff;
  border-radius:5px;
}
.search_cond h2 {
  font-size:18px;
  font-weight:600;
  line-height:1;
  text-align:center;
  margin:0 0 18px;
}
.search_cond h3 {
  font-size:14px;
  font-weight:600;
  line-height:1.85;
  text-align:left;
  margin:27px 0 8px;
}
.search_cond h2 + h3 {
  margin-top:0;
}
.search_cond h4 {
  font-size:14px;
  font-weight:300;
  line-height:1.85;
  text-align:left;
  margin:13px 0 10px;
}
.search_cond .range-slider h4 {
  margin-bottom:5px;
}
.search_cond .select_btn {
  width:100%;
  display:flex;
  flex-wrap:wrap;
}
.select_btn .radio_btn {
  width:calc(50% - 4px);
  margin-top:8px;
  position:relative;
}
.select_btn .radio_btn:nth-child(1),
.select_btn .radio_btn:nth-child(2) {
  margin-top:0;
}
.select_btn .radio_btn:nth-child(odd) {
  margin-right:4px;
}
.select_btn .radio_btn:nth-child(even) {
  margin-left:4px;
}
.select_btn .radio_btn input {
  width:0;
  height:0;
  visibility:hidden;
  position:absolute;
}
.select_btn .radio_btn label {
  color:#3B4043;
  font-size:14px;
  text-align:center;
  width:100%;
  padding:6px 4px 8px;
  display:block;
  cursor:pointer;
  border:solid 1px #CDCDCD;
  border-radius:2px;
  position:relative;
}
.select_btn .radio_btn label .mark {
  padding:0 0 0 27px;
  display: inline-block;
  position: relative;
}
.select_btn .radio_btn label .mark::before,
.select_btn .radio_btn label .mark::after {
  content:"";
  position:absolute;
  top:52%;
  transform:translateY(-50%);
}
.select_btn .radio_btn label .mark::before {
  background:transparent;
  border-radius:10px;
  border:1px solid #989898;
  width:20px;
  height:20px;
  left:0;
}
.select_btn .radio_btn label .mark::after {
  background:#009944;
  border-radius:6px;
  width:12px;
  height:12px;
  left:4px;
  transition:ease .3s;
  opacity:0;
}
.select_btn .radio_btn input[type="radio"]:checked + label .mark::after {
  opacity:1;
}
.select_status {
  border:solid 1px #CDCDCD;
  border-radius:2px;
}
.select_locations {
  margin-top:16px;
}
.select_status .select_head {
  width:100%;
  padding:10px 15px;
  display:flex;
  justify-content:space-between;
  border-bottom:solid 1px #CDCDCD;
}
.select_status .select_head button {
  color:#009944;
  font-size:14px;
  line-height:1;
  padding:6px 14px 5px;
  border:solid 1px #009944;
  border-radius:20px;
  background:#fff;
  cursor:pointer;
}
.select_status .select_head h5 {
  color:#3B4043;
  font-size:14px;
  font-weight:600;
  line-height:1.9;
}
.select_status .select_detail {
  padding:12px 15px;
}
.select_status .select_detail p {
  color:#3B4043;
  font-size:14px;
  line-height:1.85;
}
.select_btn .radio_btn.fulltime_btn,
.select_btn .radio_btn.parttime_btn {
  width:100% !important;
  margin:0 !important;
}
.select_btn .radio_btn.fulltime_btn label,
.select_btn .radio_btn.parttime_btn label {
  text-align: left;
  padding:10px 15px 12px;
}
.select_btn .radio_btn.parttime_btn label {
  border-top:0;
}
.select_btn .radio_btn.fulltime_btn label .mark::before,
.select_btn .radio_btn.parttime_btn label .mark::before {
  top:2px;
  transform:translateY(0);
}
.select_btn .radio_btn.fulltime_btn label .mark::after,
.select_btn .radio_btn.parttime_btn label .mark::after {
  top:6px;
  transform:translateY(0);
}
.select_btn .radio_btn label .sml {
  font-size:85%;
  display: block;
}
.select_btn .radio_btn.first_btn {
  width:calc(41.05% - 4px);
}
.select_btn .radio_btn.second_btn {
  width:calc(58.95% - 4px);
}
.select_btn .radio_btn.first_btn label,
.select_btn .radio_btn.second_btn label {
  text-align: left;
  white-space: nowrap;
  padding:6px 7px 8px;
}
.input_box input {
  font-size:14px;
  border:solid 1px #CDCDCD;
  width:100%;
  padding:9px 8px 8px;
  display: block;
  border-radius:2px;
}
.search_cond .submit_area {
  margin:40px 0 0;
}
.search_cond .submit_area p.gaitou {
  margin:0 0 10px;
  text-align: center;
  position:relative;
  top:0;
  left:0;
  transform:translateY(0);
}


/* detail */
#search_detail .page_con {
  width:100%;
}
#search_detail .page_con .result_sec .box {
  padding-bottom:40px;
}
.result_sec p.numbers {
  color:#989898;
  font-size:16px;
  line-height:1;
  position:absolute;
  top:25px;
  right:25px;
}
.result_sec ul.tags {
  margin:-10px 0 30px;
  display: flex;
  flex-wrap: wrap;
}
.result_sec ul.tags li {
  font-size:18px;
  line-height:1;
  margin:0 16px 10px 0;
}
#search_detail .result_sec .twocol {
  flex-direction: row-reverse;
}
#search_detail .result_sec .twocol .image {
  width:29.65%;
  max-width:280px;
  padding-top:15px;
}
#search_detail .result_sec .twocol .text {
  width:70.35%;
}
.result_sec .twocol .detail_line dl {
  padding:15px 0;
  margin:0;
}
.row_line dl {
  width:100%;
  display:flex;
}
.detail_line dl + dl,
.row_line dl + dl {
  border-top:solid 1px #CDCDCD;
}
.result_sec .twocol .detail_line dl dt {
  font-size:20px;
  line-height:1.4;
  font-weight:600;
  min-width:96px;
  text-align: center;
}
.result_sec .twocol .detail_line dl dd,
.column_line p,
.row_line dl dd {
  font-size:16px;
  line-height:1.75;
  white-space:pre-line;
}
.result_sec .twocol .detail_line dl dd {
  padding:0 10px;
}
.osusume {
  padding:15px 25px;
  margin:20px 0 5px;
  background:#fdefe1;
}
.osusume h3 {
  color:#F2902C;
  font-size:16px;
  font-weight:600;
  line-height:1.5;
  margin:0 0 15px;
}
.osusume p {
  color:#000;
  font-size:16px;
  font-weight:600;
  line-height:1.66;
  margin:10px 0 0;
  padding-left:30px;
  position: relative;
}
.osusume p::before {
  content:"";
  width:20px;
  height:14px;
  background:url(../images/ico_osusume_check.svg) no-repeat 0 0;
  position:absolute;
  top:7px;
  left:0;
  background-size:100% auto;
}
.column_line {
  padding:20px 25px;
}
.column_line + .column_line {
  border-top:solid 1px #CDCDCD;
}
.column_line h3,
.row_line h3 {
  font-size:20px;
  font-weight:600;
  line-height:1.5;
  margin:0 0 10px;
  padding:0 0 0 12px;
  position:relative;
}
.column_line h3::before,
.row_line h3::before {
  content:"";
  width:8px;
  height:8px;
  background:#000;
  display: block;
  position: absolute;
  top:12px;
  left:0;
}
.column_line h3.sq_or::before, .row_line h3.sq_or::before {
  background:#F2902C;
}
.column_line h3.sq_gr::before, .row_line h3.sq_gr::before {
  background:#009944;
}
.row_line h3 {
  margin:30px 0 0 25px;
}
.row_line dl {
  padding:15px 25px 20px;
  margin:0;
}
.row_line dl dt {
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  width:280px;
  min-width:280px;
}
.result_sec p.recruiter {
  font-size:16px;
  margin:40px 25px 50px;
}
.fix_btn {
  width:100%;
  padding:15px 0;
  position:fixed;
  display:flex;
  justify-content:center;
  background:#fff;
  left:0;
  bottom:0;
  z-index:10;
}
.fix_btn.hide {
  display:none;
}
.fix_btn > a {
  font-size:18px;
  line-height:1;
  text-align:center;
  margin:0 8px;
  width:180px;
  padding:13px 10px 15px;
  border-radius:25px;
}
.fix_btn > a.apply_btn {
  color:#fff;
  border:solid 1px #F2902C;
  background:#F2902C;
}
.fix_btn > a.contact_btn {
  color:#000;
  text-align:center;
  border:solid 1px #000;
  background:#fff;
}
.fix_btn > a.mailcon .icon {
  padding:0 0 2px 27px;
  display:inline-block;
  background:url(../images/ico_mail.svg) no-repeat 0 center;
  background-size:auto 15px;
}
.fix_btn > a.contact_btn {

}
.telcon {
  display:none;
}
.page_con .other_jobs,
.page_con .similar_jobs {
  margin:60px 0 0;
  overflow: hidden;
}
.other_jobs h2,
.similar_jobs h2 {
  font-size:24px;
  font-weight:600;
  line-height:1.5;
  margin:0 0 30px;
}
.other_jobs_slider {
  margin:0 -6px;
}
.other_jobs_slider li.slick-slide {
  width:calc(33.33% - 12px);
  margin:0 6px;
  background:#fff;
}
.other_jobs_slider li.slick-slide .image img {
  width:100% !important;
  height:auto;
}
.other_jobs_slider li .image {
  background-size:cover;
}
.other_jobs_slider li .text {
  padding:20px 25px 25px;
}
.other_jobs_slider li h3 {
  font-size:20px;
  font-weight:600;
  line-height:1.4;
}
.other_jobs_slider li dl {
  margin:17px 0 0;
}
.other_jobs_slider li dl dt {
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  width:80px;
  min-width:80px;
}
.other_jobs_slider li dl dd {
  font-size:16px;
  line-height:1.75;
  text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
}
.other_jobs_slider li .button {
  text-align:center;
  margin:30px 0 0;
}
.other_jobs_slider li .button a {
  font-size:18px;
  line-height:1;
  padding:14px 45px 16px;
  display: inline-block;
  border:solid 1px #000;
  border-radius:25px;
}
.similar_jobs ul {
  width:100%;
  display:flex;
  flex-wrap:wrap;
}
.similar_jobs ul li {
  font-size:18px;
  line-height:1;
  margin:0 20px 10px 0;
}
.similar_jobs ul li a {
  color:#000;
  text-decoration:none;
}

/* form */
#apply_form {
  border-top:0;
}
#apply_form .page_body {
  padding-top:0;
  display:block;
}
.page_title {
  padding:25px 20px;
  border-bottom: solid 1px #efefef;
  background:#fff;
}
.page_title h2 {
  font-size:24px;
  font-weight:600;
  line-height:1.33;
  margin:0 0 25px;
}
.page_title p {
  font-size:18px;
   line-height:1.66;
}
#apply_form .page_con {
  width:auto;
}
.apply_form p.chui {
  color:#DB757A;
  font-size:18px;
  font-weight:300;
  line-height:1.5;
  margin:15px 0 10px;
}
.apply_form .form {
  padding:30px 25px 56px;
  background:#fff;
}
::placeholder {
  color:#cecece;
}
.required,
.form_body dl dt .code {
	color:#db757a;
}
.form_body dl {
	margin:45px 0 0;
}
.form_body dl:nth-child(1) {
  margin:0 !important;
}
.form_body dl dt {
	font-size:18px;
	font-weight:600;
	line-height:1.33;
	margin:0 0 20px;
}
.form_body dl dt .code,
.form_body dl dt .sml {
	font-size:77.78%;
	font-weight:normal;
	display: inline-block;
}
.form_body dl dd {
	font-size:16px;
	line-height:1.33;
}
.form_body dl dd + dt {
	margin-top:25px;
}
.form_body .input_text,
.form_body .input_mail,
.form_body textarea {
	color:#000;
	font-size:16px;
	min-width:200px;
	padding:15px 25px;
	border:solid 1px #707070;
	background:#fff;
}
.form_body .input_mail {
	min-width:400px;
}
.form_body .input_text.frtxt {
	margin-left:0.5em;
}
.form_body .input_text.bktxt {
	margin-right:0.5em;
}
.input_area .box {
	display: inline-block;
}
.input_area .box + .box {
	margin-left:40px;
}
.select_area {
	padding:0;
	display: flex;
}
.select_area > div {
	margin-right:30px;
}
.select_area select {
	color:#000;
	font-size:16px;
  text-align:center;
	min-width:100px;
	padding:10px 5px;
  margin-right:5px;
	border:solid 1px #707070;
	appearance:none;
}
.radio_area {
	display: flex;
}
.radio_area label {
	margin:10px 0 0 30px;
	display: block;
}
.radio_area label input {
	width:15px;
	height:15px;
	margin:0 8px 0 0;
	position:relative;
	top:2px;
}
.form_body textarea {
	width:100%;
	height:320px;
}
.check_area {
  margin-bottom:10px;
}
.check_area input {
	display:none;
}
.checkbox {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 0 5px 36px;
  position: relative;
  width: auto;
}
.checkbox::before {
  background: #fff;
  border: 1px solid #707070;
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  left: 2px;
  margin-top: -11px;
  position: absolute;
  top: 50%;
}
.checkbox::after {
  border-right: 3px solid #009944;
  border-bottom: 3px solid #009944;
  content: '';
  display: block;
  width: 9px;
  height: 16px;
  left: 9px;
  margin-top: -10px;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
}
.check_area input:checked + .checkbox::after {
  opacity: 1;
}
.steptxt {
	margin:20px 0 40px;
}
.steptxt p {
	text-indent:-1em;
	padding-left:1em;
}
.privacy {
	height:292px;
  margin:30px 0 0;
	padding:20px 25px 10px;
	border:solid 1px #707070;
	overflow-y: scroll;
}
.privacy h2 {
	color:#000;
	font-size:16px;
	font-weight:400;
	text-align:left;
	margin:40px 0 15px;
}
.privacy p,
.privacy ul li {
	color:#000;
	font-size:16px;
	line-height:1.66;
	text-align:left;
	margin:0 0 15px;
}
.privacy p {
  margin:0 0 25px;
}
.privacy p a {
	color:#306fbd;
	text-decoration:underline;
}
.privacy p a:hover {
	text-decoration:none;
}
.privacy p.chushaku {
	font-size:13px;
	text-indent:-1em;
	padding-left:1em;
	margin:0;
}
.privacy ul.indent li {
	text-indent:-1em;
	padding-left:1em;
	margin:0;
}

.submit_area {
	margin:50px 0 0;
}
.submit_area button {
	color:#fff;
	font-size:18px;
	line-height:1;
  text-align: center;
	width:180px;
  padding:16px;
	margin:0 auto;
	border-radius:30px;
	background:#F2902C;
	border:0;
	display:block;
	cursor:pointer;
}
.submit_area button:hover {
	transition:ease .3s;
	opacity:.7;
}

/* privacy */
#sec_page .st {
  font-weight:600;
}
#sec_page h1 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 45px;
}
.privacy_sec,
.qa_sec,
.flow_sec {
  margin:50px 0 0;
}
.privacy_sec h2,
.qa_sec h2 {
  color:#009944;
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 15px;
}
#sec_page p,
#sec_page h3,
.privacy_sec .no_margin ul li {
  font-size:16px;
  font-weight:400;
  line-height:1.75;
}
.privacy_sec p {
  margin:30px 0 0;
}
.privacy_sec h2 + p {
  margin-top:0;
}
.privacy_sec .no_margin {
  margin:30px 0 0;
}
.privacy_sec .no_margin p {
  margin:0;
}
.privacy_sec .no_margin ul li {
  text-indent:-1em;
  padding-left:1em;
}
.privacy_sec p a {
  text-decoration:underline;
}

/* qa */
.q_area {
  min-height:40px;
  padding:1px 0 0 68px;
  background:url(../../qa/images/q.svg) no-repeat 18px 0;
  background-size:18px auto;
}
.qa_sec h2 {
  margin:0;
}
#sec_page .qa_sec h3 {
  font-weight:600;
  margin-top:30px;
}
.a_area {
  min-height:40px;
  margin:20px 0 0;
  padding:0 0 0 68px;
  background:url(../../qa/images/a.svg) no-repeat 18px 8px;
  background-size:18px auto;
}
.a_area > h3:first-child {
  margin-top:0;
}

/* merit */
.merit_sec {
  margin-top:-30px;
}
.merit_sec ul {
  width:100%;
  padding:10px 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.merit_sec ul li {
  width:calc(50% - 40px);
  padding:60px 20px 48px;
  margin:75px 0 0;
  border:solid 1px #009944;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.merit_sec ul li h2 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1;
  height:82px;
  padding:0 20px;
  position: absolute;
  top:-35px;
  left:50%;
  transform:translateX(-50%);
  background:#fff;
}
.merit_sec ul li h2::after {
  content:"";
  position:absolute;
  bottom:0;
  left:50%;
  transform: translateX(-50%);
}
.merit_sec ul li.merit1 h2::after {
  width:27px;
  height:40px;
  background:url(../../merit/images/icon1.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit2 h2::after {
  width:49px;
  height:35px;
  background:url(../../merit/images/icon2.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit3 h2::after {
  width:41px;
  height:40px;
  background:url(../../merit/images/icon3.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit4 h2::after {
  width:69px;
  height:40px;
  background:url(../../merit/images/icon4.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li p {
  text-align: center;
}

/* flow */
.flow_sec h2 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 25px;
}
.flow_sec ul li {
  width:100%;
  margin:40px 0 0;
  display:flex;
  justify-content: space-between;
}
.flow_sec ul li .image {
  min-width:326px;
  width:326px;
  margin-left:50px;
}
.flow_sec ul li .text {
  padding:0 0 0 70px;
  position: relative;
}
#sec_page .flow_sec ul li h3 {
  color:#009944;
  font-size:40px;
  font-weight:600;
  line-height:1;
  position: absolute;
  top:0;
  left:0;
}
.green_box {
  margin:55px 0 0;
}
.green_box .box {
  padding:30px 80px;
  margin:32px 0 0;
  background:#e5f5ec;
  border-radius:10px;
  position: relative;
}
#sec_page .green_box .box h3 {
  color:#009944;
  font-size:42px;
  font-weight:600;
  line-height:1;
  text-align:center;
  width:80px;
  position: absolute;
  top:25px;
  left:0;
}
.green_box .box h4 {
  font-size:16px;
  font-weight:600;
  line-height:1.75;
}
.green_box .box p {
  margin:30px 0 0;
}
.green_box .box .text *:first-child {
  margin:0;
}

/* company */
.company_sec {
  margin:50px 0 0;
}
.company_sec dl {
  width:100%;
  padding:0 0 15px;
  margin:15px 0 0;
  border-bottom:solid 1px #707070;
  display:flex;
}
.company_sec dl:last-child {
  padding-bottom:0;
  border-bottom:0;
}
.company_sec dl dt {
  width:12.5em;
  min-width:12.5em;
  padding-right:35px;
}
.company_sec dl dt h2 {
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  white-space:nowrap;
}
#sec_page .company_sec h3 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 30px;
}
.company_sec h4,
.company_sec p {
  font-size:16px;
  line-height:1.75;
}
.company_sec p .st {
  font-weight:600;
}
.company_sec h4 {
  font-weight:600;
  margin:30px 0;
}
.company_sec dl dd {
  width:calc(100% - 12.5em);
}
.company_sec dl dd .map {
  width:100%;
  margin:20px 0 10px;
}
.company_sec dl dd .map iframe {
  width:100%;
  max-width:600px;
  height:370px;
  display:block;
}

/* corporation */
.corporation_sec {
  margin:50px 0 0;
}
#sec_page .corporation_sec .lead {
  margin:0 0 30px;
}
#sec_page .corporation_sec .lead p {
  margin:30px 0 0;
}
#sec_page .corporation_sec h3 {
  color:#009944;
  font-size:24px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 10px;
}
.corporation_sec dl {
  width:100%;
  padding:10px 0;
  border-top:solid 1px #707070;
  display:flex;
}
.corporation_sec .lead + dl {
  padding-top:0;
  border-top:0;
}
.corporation_sec dl dt {
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  min-width:9.5em;
  padding:10px;
  white-space: nowrap;
  background:#ccebda;
}
.corporation_sec dl dd {
  font-size:16px;
  line-height:1.75;
  padding:0 0 0 25px;
}
.stepcol {
  width:100%;
  padding:25px 0 0;
  margin:35px 0 0;
  border-top:solid 1px #009944;
  display: flex;
  position: relative;
}
.stepcol::before {
  content:"";
  width:24px;
  height:15px;
  background:url(../../corporation/images/arrow.svg) no-repeat 0 0;
  background-size:100% auto;
  position: absolute;
  top:0;
  left:24px;
}
.corporation_sec h3 + .stepcol {
  border-top:0;
}
.corporation_sec h3 + .stepcol::before {
  display:none;
}
.stepcol .left {
  width:82px;
  min-width:82px;
}
.stepcol .right {
  padding-left:28px;
}
.stepcol h4 {
  color:#009944;
  font-size:16px;
  font-weight:600;
  line-height:1.75;
  margin:0 0 15px;
}
.stepcol .icon {
  text-align: center;
}
.stepcol .icon img {
  display: inline-block;
}


@media screen and (min-width: 768px) {
#spbtn, #spnavi {
  display:none !important;
}
header ul li a:hover {
  opacity:.8;
  text-decoration:underline;
}
.jobs ul li a:hover,
.side_con ul li a:hover,
ul.jobs_slider li a:hover,
.twobtn a.search_btn:hover,
.twobtn a.detail_search_btn:hover,
.fix_btn > a.apply_btn:hover {
  transition:ease .3s;
  opacity:.7;
}
.jobs ul li a:hover p.date,
.jobs ul li a:hover h2,
footer ul li a:hover {
  text-decoration:underline;
}
.ftblock ul li a:hover,
.entry_btn .txtlink a:hover,
.privacy_sec p a:hover {
  text-decoration:none;
}
.submit_area .submit_btn button:hover {
  transition:ease .3s;
  opacity:.7;
}
.search_result_top .btns button:hover,
.select_status .select_head button:hover {
  transition:ease .3s;
  color:#fff;
  background:#009944;
}
.result_sec .btn_area a:hover,
.fix_btn > a.contact_btn:hover,
.other_jobs_slider li .button a:hover {
  transition:ease .3s;
  background:#E0DCDC;
  border:solid 1px #E0DCDC;
}
.result_sec .btn_area .apply_btn:hover {
  background:#f6b26c;
  border:solid 1px #f6b26c;
}
.pager ul li a:hover {
  transition:ease .3s;
  color:#fff;
  background:#009944;
}
.pager ul li.prev a:hover::after,
.pager ul li.next a:hover::after {
  transition:ease .3s;
  opacity:1;
  background-image:url(../images/ico_pager_arrow_w.svg);
  background-size:100% auto;
}
#totopLink a:hover {
  transition:ease .3s;
  background:rgba(206,206,206,0.7);
}
.similar_jobs ul li a:hover {
  transition:ease .3s;
  color:#009944;
  text-decoration:underline;
}
.entry_btn .button a:hover {
  transition:ease .3s;
  background:#5b7572;
}

}


@media screen and (max-width: 1040px) {
.side_con {
  padding-right:0;
}
#search_result .page_con {
  width:72%;
  padding-right:25px;
}
.main {
  min-height: inherit;
}
.main_inner {
  padding:30px 0;
}
.main_inner .title {
  width: 45%;
  padding: 75px 10px 0 0;
}
.main_inner .main_right {
  width:55%;
}
.main_inner .search_form {
  padding:20px 35px;
}

.page_con .result_sec .box {
  padding:20px;
}
.result_sec ul.status li,
.other_jobs_slider ul.status li {
  padding:8px 12px;
  margin-right:12px;
}
.page_con section.result_sec h1 {
  font-size:22px;
  margin:3px 0 30px;
}
.result_sec .twocol .text {
  padding:0 25px 0 0;
}
.result_sec .twocol .text dl dt {
  font-size:15px;
  min-width:90px;
}
.result_sec .twocol .text dl dd {
  font-size: 15px;
}
.result_sec .btn_area a {
  font-size:16px;
  width:170px;
  padding:10px 15px 13px;
}

}


@media screen and (max-width: 900px) {
header {
  height:88px;
}
header ul li {
  font-size: 16px;
  margin:0 0 0 25px;
}
#wrapper {
  margin-top:88px;
}

.entry_btn .button a {
  font-size:22px;
  padding:11px 10px 13px;
  margin: 0 10px 12px;
}
.entry_btn .txtlink a {
  font-size:16px;
}
.modal_select a,
.search_input_block input {
  font-size:16px;
}
.twobtn a {
  font-size:16px;
  line-height:42px;
  padding: 0 25px;
}
.switchArea p.switch_label {
  font-size:14px;
}
.switchArea {
  padding:0 0 0 15px;
}
.page_body {
  padding:15px 20px 90px;
}
main#top_page .page_body {
  padding-top:80px;
}
.page_con section h1 {
  font-size:22px;
}
.keyword ul li,
ul.jobs_slider li a h2,
.page_con p.more,
.side_con ul li a h2 {
  font-size:16px;
}
.page_con section.job_type {
  margin-left:-10px;
  margin-right:-10px;
}
.page_con section.job_type h1 {
  margin-left:10px;
}
ul.jobs_slider .slick-slide {
  padding:0 10px;
}
ul.jobs_slider li a h2 {
  padding:10px;
}
ul.company_slider li a {
  width: calc(25% - 8px);
  margin: 0 0 12px;
}
ul.company_slider {
  padding-bottom: 20px;
}
.jobs ul li p.date,
.info ul li p.date,
footer ul li,
footer p.copyright {
  font-size:13px;
}
.jobs ul li h2,
.info ul li h2,
.ftblock .fthead h3, .ftblock ul li {
  font-size:15px;
}
.side_con ul li a h2 {
  padding:15px 10px;
}
.ftblock h2 {
  font-size:18px;
}

#search_result .side_con {
  width:240px;
  min-width:240px;
  padding-right:0;
}
.result_sec .twocol .image {
  display:none;
}
.result_sec .twocol .text {
  width:100%;
  padding:0;
}
#search_detail .result_sec .twocol .image {
  display:block;
}
#search_detail .result_sec .twocol .text {
  padding:0 25px 0 0;
}
.row_line dl dt {
  width:200px;
  min-width:200px;
}
.other_jobs_slider li .text {
  padding: 20px 15px 25px;
}
.other_jobs_slider li h3 {
  font-size: 16px;
}
.other_jobs_slider li dl {
  margin:12px 0 0;
  display: block;
}
.other_jobs_slider li dl dt,
.other_jobs_slider li dl dd {
  font-size:14px;
}
.other_jobs_slider li .button a {
  font-size:16px;
  padding:9px 35px 11px;
}

/* merit */
.merit_sec ul li {
  width:calc(50% - 20px);
  padding:60px 15px 45px;
}

}


@media screen and (max-width: 767px) {
.sp {
  display:block !important;
}
.pc,
.pankuzu {
  display:none !important;
}
header {
  height:110px;
  padding:0;
}
header .inner {
  display: block;
}
header .logo {
  width:40%;
  padding:10px 0 0;
  margin:0;
}
header .logo img {
  width:auto;
  height:61.4%;
}
header .hdtxt {
  padding:9px 20px 11px;
}
header .hdtxt p {
  font-size:16px;
}
#wrapper {
  margin-top:110px;
}

#spbtn {
  cursor:pointer;
  position:absolute;
	top:8px;
	right:0;
	width:60px;
	height:60px;
	background:#fff;
  display:block;
}
#spbtn.open {
  background:url(../images/ico_close.svg) no-repeat center center #fff;
	background-size:22px auto;
}
#spbtn img {
  width:50%;
  height:auto;
  position: absolute;
  top:50%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
  transition:ease .3s;
  opacity:1;
}
#spbtn.open img {
  opacity:0;
}
#spnavi {
  width:calc(100% + 40px);
  height:auto;
  padding:20px 20px;
  background:#fff;
	display:none;
	clear:both;
	z-index:9;
  position: absolute;
  bottom:0;
  left:-20px;
  transform: translateY(100%);
}
header ul li {
  font-size: 1.6rem;
  text-align: center;
  margin:0;
  padding-left:0;
  border-left:0;
}
#spnavi li a {
  padding:20px 10px;
  display: block;
}
footer ul {
  justify-content: flex-start;
}
.ftblock h2 {
  font-size: 20px;
  margin:0 0 11px;
}

.main {
  padding: 0 20px;
  background: url(../../images/main_sp.jpg) no-repeat center 0;
  background-size:100% auto;
}
.main_inner {
  padding:32.5vw 0 0;
  display: block;
}
.main_inner .title {
  display:none;
}
.main_inner .main_right {
  width:auto;
}
.main_inner .search_form {
  width:auto;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.search_form .form_select {
  width: 35%;
  position: absolute;
  top:22vw;
  right:20px;
}
.search_form select {
  font-size:20px;
  width:100%;
  padding:10px 40px 10px 20px;
  border: solid 1px #707070;
  display:block;
}
.modal_select a, .search_input_block input {
  font-size: 20px;
}
.modal_select {
  margin:25px 0;
}
.modal_select a {
  padding: 15px 45px 16px 20px;
  background: url(../images/ico_arrow.svg) no-repeat right 15px center #fff;
  background-size: 12px auto;
}
.search_input_block {
  align-items: center;
}
.search_input_block input {
  font-size: 20px;
  padding: 15px 20px 16px;
  width: 85%;
}
.switchArea {
  width:15%;
  padding: 0 0 0 2vw;
}
.switchArea p.switch_label {
  font-size: 18px;
}
.switchArea label {
  margin:10px auto 0;
}
.search_form p.search_total {
  font-size: 20px;
}
.freeword_area {
  margin: 0 0 35px;
}
.twobtn {
  margin:35px 0 0;
  flex-direction:column-reverse;
}
.twobtn a {
  font-size: 26px;
  line-height: 60px;
  width:70%;
  margin:0 auto;
}
.twobtn a.detail_search_btn {
  margin-top:30px;
}
.twobtn a.search_btn {
  width:50%;
}
.twobtn a.search_btn img {
  width:21px;
  position: relative;
  top:2px;
}
.entry_btn {
  margin:45px 0 0;
}
.entry_btn .button {
  margin:0 30px 35px;
}
.entry_btn .button a {
  font-size:26px;
  padding:15px 10px 18px;
}
.entry_btn .txtlink a {
  font-size: 20px;
}

.page_body {
  padding:15px 20px 100px;
  display: block;
}
main#top_page .page_body {
  padding-top:60px;
}
.page_con {
  width:auto;
}
#search_result .page_con {
  width:auto;
  padding-right:0;
}
.side_con {
  display:none;
}

.page_con section.job_type {
  margin-left:0;
  margin-right:0;
}
.page_con section.job_type h1 {
  margin:0 0 3px;
}
ul.jobs_slider {
  width:100%;
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
ul.jobs_slider li {
  width:calc(33.33% - 18px);
  margin:24px 0 0;
}
.page_con section.company {
  margin-left:-20px;
  margin-right:-20px;
}
.page_con section.company h1 {
  margin-left:20px;
}
ul.company_slider {
  padding-bottom: 40px;
}
ul.company_slider li {
  max-width:none;
  padding:0 20px;
}
ul.company_slider li a {
  width: calc(50% - 16px);
  margin:0;
}

/* modal */
.modal-container, .modal-container1, .modal-container2 {
  padding:0;
}
.modal-container:before, .modal-container1:before, .modal-container2:before {
  display:none;
}
.modal-body, .modal-body1, .modal-body2 {
  width:auto;
  display: block;
}
.modal_search .twocol ul {
  height:auto;
  border-left:0;
  border-right:0;
}
.modal_search .twocol ul.leftcol {
  border-bottom: solid 1px #CDCDCD;
}
.modal_search h1 {
  color:#fff;
  background:#009944;
  border:0;
}
.modal-close, .modal-close1, .modal-close2 {
  text-indent:-9999px;
  padding-right:20px;
  background: url(../images/ico_close_w.svg) no-repeat right 0 top 0;
  background-size: 20px auto;
}
.modal-close {
  background-image:url(../images/ico_close.svg);
}
.modal_search .leftcol, .modal_search .rightcol {
  width:100%;
}
.modal_search {
  padding-bottom:80px;
}
.modal_search .inner {
  padding: 0 0 15px;
}
.modal_search h3 {
  margin-left:20px;
}
.search_cond h3 {
  margin-left:0 !important;
}
.modal_search .input_text {
  padding:0 20px;
}
.submit_area {
  padding:20px 0;
  position: fixed;
  width:100%;
  left:0;
  bottom:0;
  background:#fff;
}
.modal-content2 .modal_search .twocol ul.rightcol {
  position: relative;
}
.search_form .form_select::after {
  content: "";
  width: 13px;
  height: 20px;
  background: url(../images/ico_arrow.svg) no-repeat 0 0;
  background-size: 100% auto;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) rotate(90deg);
}
.modal_search .twocol ul li label {
  padding-right:30px;
  background:url(../images/ico_select_arrow_down.svg) no-repeat right 15px center;
  background-size:13px auto;
}
.modal_search .twocol ul.rightcol li label {
  padding-right:100px;
}
.modal_search .twocol ul.leftcol > li > input[type="checkbox"]:checked + label,
.modal_search .twocol ul.leftcol > li > input[type="radio"]:checked + label {
  background:url(../images/ico_select_arrow_up.svg) no-repeat right 15px center;
  background-size:13px auto;
}
.modal_search .twocol ul li label .selected_txt {
  right:40px;
}
.modal_search .twocol ul.leftcol > li > label .selected_txt {
  display:none;
}
.modal_search .twocol ul.leftcol li:last-child {
  border:0;
}
.submit_area p.gaitou {
  line-height:1.2;
  top:48%;
}
.modal-content1 .modal_search .twocol ul.rightcol {
  display: none !important;
  opacity: 0;
  transition: ease .5s;
}
.modal-content1 .modal_search .twocol ul li input[type="checkbox"]:checked + label + ul.rightcol {
  display: block !important;
  opacity: 1;
}
.modal-content1 .modal_search .twocol ul.rightcol label {
  padding-left:85px;
  background:#fff;
}
.modal-content1 .modal_search .twocol ul.rightcol li label::before {
  left:50px;
}
.modal-content1 .modal_search .twocol ul.rightcol li label::after {
  left:55px;
}


/* result */
main {
  border-top:0;
}
#search_result .page_body {
  padding:0 0 80px;
}
.conditions {
  padding:15px 20px 30px;
  background:#009944;
}
.conditions h2 {
  color:#fff;
  font-size:18px;
  font-weight:600;
  line-height:1;
  margin:0 0 15px;
}
.conditions h3 {
  font-size:18px;
  font-weight:300;
  line-height:1;
  padding:20px 25px 20px 15px;
  background:#fff;
  border-radius:5px;
  position:relative;
  cursor:pointer;
  transition:ease .3s;
}
.conditions h3::after {
  content:"";
  width:11px;
  height:17px;
  background:url(../images/ico_arrow.svg) no-repeat 0 0;
  background-size:100% auto;
  position:absolute;
  top:50%;
  right:15px;
  transform:translateY(-50%) rotate(90deg);
}
.conditions h3.open {
  border-radius:5px 5px 0 0;
}
.conditions h3.open::after {
  transform:translateY(-50%) rotate(270deg);
}
.current_cond ul {
  display:none;
  padding:15px 15px 8px;
  border-top:solid 1px #CDCDCD;
  border-radius:0 0 5px 5px;
  background:#fff;
}
.current_cond ul li {
  font-size:16px;
  width:100%;
  margin:0 0 7px;
  display:flex;
}
.current_cond ul li .hd {
  font-weight:600;
  min-width:100px;
  width:100px;
}
.search_result_top {
  padding:20px 20px 15px;
  background:#fff;
  border-bottom:solid 1px #efefef;
}
.search_result_top .btns {
  display: flex;
}
.search_cond_op {
  margin-right:15px;
}
.search_result_top .btns button {
  padding: 10px 20px 8px;
}
.page_con .result_sec {
  padding:20px 20px 0;
}
.page_con .result_sec .box {
  margin:20px 0 0;
}
.page_con .result_sec .box:nth-child(1) {
  margin-top:0;
}
.page_con .result_sec .box {
  padding:25px;
}
.result_sec ul.status li,
.other_jobs_slider ul.status li {
  padding:10px 14px;
  margin-right:16px;
}
.page_con section.result_sec h1 {
  font-size:24px;
}
.result_sec .twocol .text dl {
  margin:0 0 10px;
}
.result_sec .twocol .text dl dt {
  font-size:16px;
  min-width:86px;
}
.result_sec .twocol .text dl dd {
  font-size:16px;
}
.result_sec .btn_area a {
  font-size:18px;
  width:180px;
  padding:13px 15px 16px;
}
.pager ul {
  margin:20px 0 0;
}

.search_cond {
  padding-left:20px;
  padding-right:20px;
}
.search_cond .submit_area {
  padding:20px 0;
  margin:0;
}
.search_cond .submit_area p.gaitou {
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 25px;
  transform: translateY(-50%);
}


/* detail */
.telcon {
  display:block;
}
#search_detail .page_con .result_sec {
  padding:5px 0 0;
}
#search_detail .page_con .result_sec .box {
  padding-bottom: 20px;
}
.fix_btn > a {
  padding:8px 10px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius:30px;
}
.fix_btn > a.contact_btn {
  width:120px;
  font-size:14px;
}
.fix_btn > a.mailcon .icon {
  padding: 22px 0 0;
  background: url(../images/ico_mail.svg) no-repeat center 0;
  background-size: auto 15px;
}
.fix_btn > a.telcon .icon {
  padding: 22px 0 0;
  background: url(../images/ico_tel.svg) no-repeat center 0;
  background-size: auto 18px;
  display: inline-block;
}
#search_detail .result_sec .twocol {
  display:block;
}
#search_detail .result_sec .twocol .image,
#search_detail .result_sec .twocol .text {
  width:100%;
  padding:0;
}
#search_detail .result_sec .twocol .image {
  max-width:560px;
  margin:0 auto 20px;
}
#search_detail .result_sec .twocol .text dl {
  margin: 0;
}
.row_line dl {
  padding: 20px 25px 0;
  display: block;
}
.row_line dl + dl {
  border:0;
}
.row_line h3 {
  padding-top:20px;
  margin:20px 0 0;
  padding-left:37px;
  border-top:solid 1px #CDCDCD;
}
.row_line h3::before {
  top:32px;
  left:25px;
}
.result_sec p.recruiter {
  padding:20px 25px 0;
  border-top:solid 1px #CDCDCD;
  margin:20px 0 30px;
}
.fix_btn.hide {
  display:flex;
  position: relative;
}
.page_con .contact_info {
  margin:30px 0 0;
}
.contact_info .box {
  padding:10px 25px;
  background:#fff;
}

/* form */
.apply_form p.chui {
  margin:10px 0 20px;
}
.apply_form .submit_area {
  position:relative;
  padding:0;
}

/* privacy */
#sec_page .page_body {
  padding-top:20px;
}
#sec_page h1 {
  font-size:26px;
  line-height:1.33;
  text-align: center;
}
.privacy_sec p {
  margin:20px 0 0;
}
#sec_page h1 + .privacy_sec p {
  margin-top:5px;
}
.privacy_sec h2 {
  font-size:20px;
}
.privacy_sec h2 + p {
  margin-bottom:20px;
}

/* qa */
.qa_sec h3 {
  margin-top:25px;
}
.a_area {
  margin-top:20px;
}

/* merit */
.merit_sec {
  margin-top:-20px;
}
.merit_sec ul {
  display: block;
}
.merit_sec ul li {
  width:auto;
  padding:60px 15px 45px;
}

/* flow */
.flow_sec h2 {
  font-size:22px;
  text-align:center;
}
.flow_sec ul li {
  margin:50px 0 0;
  display:block;
}
.flow_sec ul li .image {
  min-width:inherit;
  width:auto;
  margin:20px 0 0 70px;
}
#sec_page .flow_sec ul li h3 {
  font-size:40px;
  top:5px;
}
.green_box {
  margin:30px 0 0;
}
.green_box .box {
  margin:25px 0 0;
}
#sec_page .green_box .box h3 {
  font-size:40px;
  top:25px;
}
.green_box .box p {
  margin:20px 0 0;
}

/* company */
#sec_page h1 + .company_sec {
  margin-top: -30px;
}
#sec_page .company_sec h3 {
  font-size:20px;
  margin:0 0 10px;
}
.company_sec dl {
  margin:10px 0 0;
  display:block;
}
.company_sec dl dt {
  width:100%;
  min-width:inherit;
  padding-right:0;
}
.company_sec dl dd {
  width:100%;
}
.company_sec dl dd .map iframe {
  max-width:none;
  height:400px;
}

/* corporation */
#sec_page .corporation_sec .lead {
  margin:0 0 50px;
}
.corporation_sec dl {
  margin:30px 0 0;
  padding:0;
  display: block;
  border-top:0;
}
.corporation_sec dl dt {
  color:#009944;
  min-width:inherit;
  padding:0;
  margin:0 0 5px;
  white-space:normal;
  background:transparent;
}
.corporation_sec dl dd {
  padding:0;
}
.stepcol {
  padding:0 0 0 100px;
  margin:30px 0 0;
  border-top:0;
  display:block;
}
.stepcol::before {
  display:none;
}
.stepcol .icon {
  text-align: left;
  position: absolute;
  top:0;
  left:0;
}
.stepcol .right {
  border-top:solid 1px #009944;
  padding:10px 0 0;
}
.stepcol .right p + p {
  margin-top:30px;
}

}


@media screen and (max-width: 639px) {
header {
  height:104px;
}
header .logo {
  width:280px;
  padding:8px 0 0;
}
header .logo img {
  width:100%;
  height:auto;
}
header ul li a {
  padding: 10px;
}
header .hdtxt p {
  font-size:14px;
}
#wrapper {
  margin-top:104px;
}

.search_form .form_select {
  top:18vw;
}
.search_input_block input {
  width:80%;
}
.switchArea {
  width: 20%;
}

.page_con section.job_type h1 {
  margin:0 0 9px;
}
ul.jobs_slider li {
  width: calc(33.33% - 12px);
  margin: 18px 0 0;
}

/* form */
.apply_form .form {
  padding:40px 20px 60px;
}
.name_col {
  width:100%;
  display:flex;
}
.name_col .box {
  display:flex;
  align-items: center;
}
.name_col .box + .box {
  margin-left:20px;
}
.form_body .input_text, .form_body .input_mail, .form_body textarea {
  width:100%;
  padding:15px;
}
.select_area > div {
  margin-right:0;
}
.select_area > div + div {
  margin-left:20px;
}
.steptxt {
  margin:40px 0;
}

.totop #search_detail #totopLink {
  bottom:90px !important;
}
.totop.btn_posi #search_detail #totopLink {
  bottom:20px !important;
}

/* qa */
.q_area {
  padding:1px 0 0 53px;
  background:url(../../qa/images/q.svg) no-repeat 8px 0;
  background-size:18px auto;
}
.a_area {
  padding:0 0 0 53px;
  background:url(../../qa/images/a.svg) no-repeat 8px 8px;
  background-size:18px auto;
}


}


@media screen and (max-width: 559px) {
#totopLink {
  width: 50px;
  height: 50px;
	bottom:10px;
}
#totopLink a {
  width: 50px;
  height: 50px;
}
.name_col {
  justify-content: space-between;
}
.name_col .box {
  width:calc(50% - 10px);
  padding-left:1.5em;
  position: relative;
  box-sizing: border-box;
}
.name_col .box + .box {
  margin-left:0;
}
.name_col .box .input_text {
  min-width:inherit;
}
.name_col .box .txt {
  position: absolute;
  left:0;
}
.form_body .input_text.frtxt {
  margin-left:0;
}
.select_area select  {
  width:calc(100% - 2em);
  min-width:inherit;
}
.select_area > div {
  width:33.33%;
}
.twobtn a.detail_search_btn {
  margin-top:25px;
}
.entry_btn {
  margin:40px 0 0;
}
.entry_btn .button {
  margin:0 0 30px;
}
.entry_btn .button a {
  font-size:24px;
  margin:0 0 5px;
}
.entry_btn .txtlink a {
  font-size: 18px;
}

/* detail */
#search_detail .page_con .result_sec .box {
  padding-top:15px;
}
.result_sec p.numbers {
  font-size:15px;
  top:20px;
  right:12px;
}
.result_sec ul.tags {
  margin:20px 0 10px;
}
.result_sec ul.tags li {
  font-size:12px;
  margin:0 10px 12px 0;
}
#search_detail .result_sec .twocol .image {
  margin:0 auto 5px;
}
#search_detail .result_sec .twocol .text dl:last-child {
  border-bottom:solid 1px #CDCDCD;
}
#search_detail .result_sec .twocol .text dl dt {
  font-size:13px;
  line-height:1.75;
}
.osusume {
  padding:10px 12px;
  margin:15px 0 5px;
}
.osusume h3 {
  font-size:14px;
  margin:0 0 10px;
}
.osusume p {
  font-size:12px;
  padding-left:15px;
}
.osusume p::before {
  width:10px;
  height:7px;
}
.column_line {
  padding: 15px 12px;
}
.column_line h3, .row_line h3 {
  font-size:14px;
}
.column_line h3::before {
  top:7px;
}
.row_line h3 {
  padding-left:24px;
}
.row_line h3::before {
  top:27px;
  left:12px;
}
.result_sec .twocol .detail_line dl dd, .column_line p, .row_line dl dd,
.row_line dl dt {
  font-size:12px;
}
.row_line dl {
  padding: 15px 12px 0;
}
.result_sec p.recruiter {
  font-size:12px;
  padding:15px 12px 0;
  margin-bottom:20px;
}
.fix_btn {
  padding:8px 0;
}
.fix_btn > a {
  font-size:16px;
  width:160px;
  padding:6px 5px 8px;
}
.fix_btn > a.contact_btn {
  width:90px;
  font-size:10px;
}
.contact_info .box {
  padding: 10px 12px;
}
.column_line {
  padding: 10px 12px;
}
.page_con .contact_info {
  margin:16px 0 0;
}
.page_con .other_jobs,
.page_con .similar_jobs {
  margin:30px 0 0;
}
.other_jobs h2, .similar_jobs h2 {
  font-size:14px;
  margin:0 0 15px;
}
.other_jobs_slider {
  width:78vw !important;
}
.other_jobs_slider li .text {
  padding: 16px 12px 25px;
}
.other_jobs_slider li h3 {
  font-size: 19px;
  margin:0 0 15px;
}
.other_jobs_slider li dl {
  margin:2px 0 0;
  display:flex;
}
.other_jobs_slider li dl dt, .other_jobs_slider li dl dd,
.similar_jobs ul li {
  font-size:12px;
}
.other_jobs_slider li dl dt {
  width:64px;
  min-width:64px;
}
.other_jobs_slider li .button a {
  padding: 12px 39px 14px;
}
.similar_jobs ul li {
  margin: 0 12px 12px 0;
}

.totop #search_detail #totopLink {
  bottom:70px !important;
}

}


@media screen and (max-width: 479px) {
header {
  height:84px;
}
header .inner {
  width:calc(100% - 20px);
}
header .logo {
  width:228px;
  padding:7px 0 0;
}
header .logo img {
  width:100%;
  height:auto;
}
header ul li {
  font-size: 1.1rem;
}
header ul li a {
  padding: 10px;
}
header .hdtxt {
  padding:7px 10px 9px;
}
header .hdtxt p {
  font-size:10px;
}
#wrapper {
  margin-top:84px;
}
#spnavi li a {
  padding: 15px 10px;
}
#spbtn {
  top:6px;
  width:46px;
  height:46px;
  right:-10px;
}
footer {
  padding:15px 10px 20px;
}

.main {
  padding: 0 10px;
}
.main_inner {
  padding: 33.5vw 0 20px;
}
.search_form select {
  font-size: 16px;
  padding: 5px 25px 6px 10px;
}
.search_form .form_select::after {
  width:7px;
  height:10px;
  right:10px;
}
.search_form .form_select {
  top:19.5vw;
}
.modal_select {
  margin: 14px 0;
}
.modal_select a {
  padding: 15px 27px 16px 10px;
  background: url(../images/ico_arrow.svg) no-repeat right 9px center #fff;
  background-size: 7px auto;
}
.modal_select a, .search_input_block input {
  font-size: 17px;
}
.search_input_block input {
  padding:15px 10px 16px;
}
.switchArea p.switch_label {
  font-size: 13px;
}
.switchArea label {
  margin: 2px auto 0;
  height:20px;
}
.freeword_area {
  margin: 0 0 25px;
}
.search_form p.search_total {
  font-size: 16px;
}
.twobtn {
  margin: 30px 0 0;
}
.twobtn a {
  font-size:20px;
  line-height:48px;
  width:auto;
  padding:0 55px;
}
.twobtn a.search_btn img {
  width:16px;
  top:1px;
}
.entry_btn .button {
  margin:0 0 20px;
  text-align: center;
}
.entry_btn .button a {
  font-size:20px;
  padding: 12px 15px 15px;
  border-radius:7px;
  display: inline-block;
}
.entry_btn .txtlink a {
  font-size:14px;
}

.page_body {
  padding: 15px 10px 70px;
}
main#top_page .page_body {
  padding-top:40px;
}
.page_con section {
  margin: 70px 0 0;
}
.page_con section h1 {
  font-size: 21px;
  margin:0 0 15px;
}
.keyword ul li, ul.jobs_slider li a h2, .page_con p.more, .side_con ul li a h2 {
  font-size:14px;
}
ul.jobs_slider {
  padding-bottom:0;
}
ul.jobs_slider li {
  width: calc(33.33% - 7px);
  margin: 12px 0 0;
}
ul.jobs_slider li a h2 {
  padding:6px 10px;
}
ul.company_slider li a {
  width:calc(50% - 12px);
}
.page_con section.company {
  margin-left: -10px;
  margin-right: -10px;
}
.page_con section.company h1 {
  margin-left: 10px;
  margin-bottom:25px;
}
ul.company_slider li {
  padding:0 10px;
}
.jobs ul li p.date, .info ul li p.date, footer ul li, footer p.copyright {
  font-size: 12px;
}
.jobs ul li h2, .info ul li h2, .ftblock .fthead h3, .ftblock ul li {
  font-size: 14px;
}
.jobs ul li a {
  padding-right: 18px;
  background: url(../images/ico_arrow.svg) no-repeat right 5px center;
  background-size: 7px auto;
}
.page_con p.more {
  margin:35px 0 0;
}
.info ul li {
  margin-top: 26px;
}

.search_footer {
  padding:20px 10px 60px;
}
.ftblock {
  margin:60px 0 0;
}
.ftblock .fthead {
  width: 110px;
  min-width: 110px;
}

.modal_search {
  padding-bottom: 70px;
}
.modal_search .inner {
  padding: 0 0 5px;
}
.modal_search h1 {
  font-size:16px;
  padding:17px;
}
.modal-close1, .modal-close2 {
  top:20px;
  right:10px;
  padding-right: 16px;
  background-size: 16px auto;
}
.modal_search .twocol ul li label .txt {
  font-size:14px;
}
.submit_area .submit_btn button {
  font-size:16px;
}
.submit_area p.gaitou {
  font-size:14px;
  top:50%;
}
.submit_area {
  padding: 10px 0 10px 23vw;
}
.submit_area .submit_btn button {
  padding:10px 55px;
}
.modal_search .twocol ul li label {
  padding: 10px 70px 13px 40px;
  background: url(../images/ico_select_arrow_down.svg) no-repeat right 10px center;
  background-size: 8px auto;
}
.modal_search .twocol ul.leftcol > li > input[type="checkbox"]:checked + label, .modal_search .twocol ul.leftcol > li > input[type="radio"]:checked + label {
  background: url(../images/ico_select_arrow_up.svg) no-repeat right 10px center;
  background-size: 8px auto;
}
.modal_search .twocol ul li label .selected_txt {
  font-size:12px;
  right: 26px;
}
.modal_search .twocol ul.rightcol li label {
  padding-right: 80px;
}
.modal_search h3 {
  font-size:15px;
  margin: 0 0 20px 10px;
}
.modal_search .input_text {
  padding: 0 10px;
}
.modal_search .input_text input {
  font-size:15px;
  padding: 8px 10px;
}
.modal_search .twocol ul li label::before {
  left:10px;
}
.modal_search .twocol ul li label::after {
  left:15px;
}
.modal-content1 .modal_search .twocol ul.rightcol label {
  padding-left: 71px;
}
.modal-content1 .modal_search .twocol ul.rightcol li label::before {
  left: 41px;
}
.modal-content1 .modal_search .twocol ul.rightcol li label::after {
  left: 46px;
}
.modal-content2 .modal_search .twocol ul.leftcol > li > label {
  padding-left: 10px !important;
}

/* result */
.conditions {
  padding:10px 10px 20px;
}
.conditions h2 {
  font-size:16px;
}
.conditions h3 {
  font-size:15px;
  padding:15px 20px 15px 15px;
}
.conditions h3::after {
  width:7px;
  height:12px;
  right:10px;
}
.current_cond ul {
  padding:10px 15px 5px;
}
.current_cond ul li {
  font-size:14px;
  margin:0 0 5px;
}
.current_cond ul li .hd {
  min-width:90px;
  width:90px;
}
.search_result_top {
  padding:20px 10px 12px;
}
.search_result_top p.gaitou {
  font-size:12px;
}
.search_result_top p.gaitou .num {
  font-size:16px;
}
.search_cond_op {
  margin-right:8px;
}
.search_result_top .btns button {
  padding:8px 16px 6px;
}
.page_con .result_sec {
  padding:12px 10px 0;
}
.page_con .result_sec .box {
  padding:12px 12px 20px;
  margin:12px 0 0;
}
.result_sec ul.status li,
.other_jobs_slider ul.status li {
  font-size:12px;
  padding:8px 14px 9px;
  margin-right:8px;
  margin-bottom:5px;
  border-radius:5px;
}
.page_con section.result_sec h1 {
  font-size:19px;
  margin:3px 0 15px;
}
.search_cond h3 {
  margin:20px 0 7px !important;
}
.result_sec .twocol .text dl dt {
  font-size:12px;
  min-width:66px;
}
.result_sec .twocol .text dl dd {
  font-size:12px;
}
.result_sec .btn_area {
  margin:15px 0 0;
}
.result_sec .btn_area a {
  font-size:16px;
  width:calc(50% - 12px);
  margin:0 6px;
}
.case_num {
  margin:12px 0 0;
}
.case_num p, .pager p {
  font-size:15px;
}
.pager ul li {
  font-size:14px;
}
.pager ul li.prev {
  margin:0 10px 8px 0;
}
.pager ul li.next {
  margin:0 0 8px 10px;
}

.search_cond {
  padding-left:10px;
  padding-right:10px;
}
.search_cond .submit_area {
  padding:10px 0 10px 23vw;
}

/* form */
.page_title h2 {
  font-size:20px;
  margin:0 0 15px;
}
.page_title p,
.privacy p, .privacy ul li {
  font-size:12px;
}
.apply_form .form {
  padding:30px 12px 40px;
}
.apply_form p {
  font-size:12px;
  line-height:1.66;
}
.apply_form p.chui {
  font-size:12px;
  margin-bottom:15px;
}
.form_body dl {
  margin: 40px 0 0;
}
.form_body dl dt {
  font-size:14px;
  margin:0 0 15px;
}
.form_body dl dd {
  font-size:14px;
}
.form_body .input_text, .form_body .input_mail, .form_body textarea {
  font-size:14px;
  padding:13px 10px;
}
.name_col .box {
  width:calc(50% - 8px);
}
.select_area > div + div {
  margin-left: 12px;
}
.select_area select {
  width:calc(100% - 1.5em);
  padding:8px 5px;
}
.form_body .input_mail {
  min-width:inherit;
}
.form_body textarea {
  height:200px;
}
.privacy {
  height:200px;
  margin:15px 0 0;
  padding:12px 12px 5px;
}
.privacy h2 {
  font-size:13px;
  margin:30px 0 10px;
}
.submit_area {
  margin:35px 0 0;
}
.submit_area button {
  font-size:16px;
  width:160px;
  padding:14px;
}
.checkbox {
  padding:2px 0 3px 32px;
}
.checkbox::before {
  width:20px;
  height:20px;
  margin-top:-9px;
}
.checkbox::after {
  border-right:2px solid #009944;
  border-bottom:2px solid #009944;
  width:7px;
  height:12px;
  margin-top:-7px;
}

/* privacy */
#sec_page h1 {
  font-size:21px;
}
#sec_page p,
#sec_page h3,
.privacy_sec .no_margin ul li,
.qa_sec h2 {
  font-size:14px;
}
.privacy_sec h2 {
  font-size:17px;
  margin:0 0 10px;
}
.privacy_sec .no_margin {
  margin:20px 0 0;
}

/* qa */
.q_area {
  min-height:26px;
  padding:0 0 0 38px;
  background:url(../../qa/images/q.svg) no-repeat 4px 0;
  background-size:13px auto;
}
.qa_sec {
  margin:40px 0 0;
}
.a_area {
  min-height:26px;
  padding:0 0 0 38px;
  background:url(../../qa/images/a.svg) no-repeat 4px 6px;
  background-size:13px auto;
}
.qa_sec h3 {
  margin-top: 20px;
}

/* merit */
.merit_sec ul li {
  padding:32px 10px 25px;
}
.merit_sec ul li h2 {
  font-size:17px;
  height:60px;
  padding:0 10px;
}
.merit_sec ul li.merit1 h2::after {
  width:21px;
  height:32px;
  background:url(../../merit/images/icon1.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit2 h2::after {
  width:32px;
  height:23px;
  background:url(../../merit/images/icon2.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit3 h2::after {
  width:32px;
  height:31px;
  background:url(../../merit/images/icon3.svg) no-repeat 0 0;
  background-size:100% auto;
}
.merit_sec ul li.merit4 h2::after {
  width:61px;
  height:34px;
  background:url(../../merit/images/icon4.svg) no-repeat 0 0;
  background-size:100% auto;
}

/* flow */
.flow_sec h2 {
  font-size:17px;
}
.page_body .flow_sec:last-child h2 {
  font-size:21px;
  line-height:1.33;
}
.flow_sec ul li {
  margin:40px 0 0;
}
.flow_sec ul li:first-child {
  margin:25px 0 0;
}
.flow_sec ul li .image {
  min-width:inherit;
  width:auto;
  margin:10px 0 0 35px;
}
.flow_sec ul li .text {
  padding:0 0 0 35px;
}
#sec_page .flow_sec ul li h3 {
  font-size:21px;
  top:5px;
}
.green_box {
  margin:0;
}
.green_box .box {
  padding:15px 44px;
  margin:20px 0 0;
  border-radius:5px;
}
#sec_page .green_box .box h3 {
  font-size:21px;
  width:44px;
  top:15px;
}
.green_box .box h4 {
  font-size:12px;
}
.green_box .box p {
  margin:15px 0 0;
}

/* company */
#sec_page .company_sec h3 {
  font-size:17px;
}
.company_sec dl dt h2,
.company_sec h4 {
  font-size:14px;
}
.company_sec dl dd .map {
  margin:10px 0;
}
.company_sec dl dd .map iframe {
  height:240px;
}

/* corporation */
#sec_page .corporation_sec .lead {
  margin: 0 0 40px;
}
#sec_page .corporation_sec .lead p {
  margin:20px 0 0;
}
.corporation_sec dl {
  margin:25px 0 0;
}
.corporation_sec dl dt,
.stepcol h4 {
  font-size:12px;
}
.corporation_sec dl dd {
  font-size:14px;
}
#sec_page .corporation_sec h3 {
  font-size:17px;
}
.stepcol {
  margin:40px 0 0;
  padding:0 0 0 70px;
}
.corporation_sec h3 + .stepcol {
  margin-top:20px;
}
.stepcol .icon img {
  width:50px;
  height:auto;
}
.stepcol .right p + p {
  margin-top: 20px;
}


}
