a {
  text-decoration: none;
}

.pc a:hover {
  opacity: 0.7;
}

.pc a.ssan:hover {
  opacity: 1;
}
.pc .recruit_btn {
  cursor: pointer;
}
.pc .recruit_btn:hover {
  opacity: 0.7;
}
.pc .only_SP{
  display: none;
}

.content {
  position: relative;
  padding-bottom: 150px;
  font-size: 24px;
  line-height: 1.5;
}

.txt_right {
  text-align: right;
}

.subpage h1 {
  margin: 0 30px 30px;
  padding: 25px 0;
  background: url("../images/recruit/ttl_line.png") no-repeat top center, url("../images/recruit/ttl_line.png") no-repeat bottom center;
  background-size: 100% auto, 100% auto;
  text-align: center;
}
.subpage h1 .ja {
  color: #2348c3;
  font-size: 45px;
  display: block;
  margin-bottom: 5px;
}
.subpage h1 .en {
  display: block;
  font-size: 20px;
  font-weight: normal;
}

.recruit_gnav_wrap.menuOpen::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  background: #f2f4fb;
  opacity: 0;
  transition: opacity 0.4s;
}

.recruit_gnav_wrap.menuOpen::after {
  opacity: 1;
}

.recruit_gnav {
  position: fixed;
  bottom: 0;
  width: 660px;
  z-index: 5;
}
.recruit_gnav .recruit_gnav_list {
  display: flex;
  justify-content: space-between;
  border-top: solid 4px #2348c3;
  border-bottom: solid 4px #2348c3;
  background: #fff;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item {
  width: 33%;
  border-left: solid 4px #2348c3;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sp .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item {
  height: 100px;
}
.pc .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item {
  height: 50px;
}
.sp .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.pc .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body {
  display: flex;
  justify-content: center;
  align-items: center;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body .txt {
  font-weight: bold;
  font-size: 16px;
  color: #2348c3;
  line-height: 1;
}
.sp .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body .txt {
  margin-top: 10px;
}
.pc .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body .txt {
  margin-left: 10px;
}
.sp .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body img {
  height: 50px;
}
.pc .recruit_gnav .recruit_gnav_list .recruit_gnav_list_item .recruit_gnav_list_item_body img {
  height: 30px;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item.menu .recruit_gnav_list_item_body {
  cursor: pointer;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item.menu .recruit_gnav_list_item_body:hover {
  opacity: 0.7;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item.entry {
  background: #2348c3;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item.entry .txt {
  color: #fff;
}
.recruit_gnav .recruit_gnav_list .recruit_gnav_list_item.entry.closed .recruit_gnav_list_item_body {
  opacity: 0.3;
}

.recruit_subnav {
  position: fixed;
  width: 660px;
  background: #f2f4fb;
  z-index: 4;
  display: none;
  overflow-y: scroll;
  white-space: nowrap;
}
.sp .recruit_subnav {
  bottom: 100px;
}
.pc .recruit_subnav {
  bottom: 50px;
}
.recruit_subnav::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.recruit_subnav::-webkit-scrollbar-track {
  border-radius: 5px;
}
.recruit_subnav::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #2348c3;
}
.recruit_subnav ul {
  padding: 50px 0;
  text-align: center;
}
.recruit_subnav ul li .nolink, .recruit_subnav ul li a {
  display: block;
  padding: 20px 0;
  font-weight: bold;
}
.recruit_subnav ul li .nolink span, .recruit_subnav ul li a span {
  display: inline-block;
  padding: 0 40px 0 0;
  position: relative;
  color: #2348c3;
  font-size: 30px;
}
.recruit_subnav ul li .nolink span:before, .recruit_subnav ul li a span:before {
  content: "";
  width: 30px;
  height: 30px;
  background: url("../images/recruit/icon_arrow.png") no-repeat center right;
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  top: -3px;
  bottom: 0;
  margin: auto;
}
.recruit_subnav ul li .nolink span.blank:before, .recruit_subnav ul li a span.blank:before {
  background: url("../images/recruit/icon_window.png") no-repeat;
  background-size: 100% 100%;
}
.recruit_subnav ul li .nolink span small, .recruit_subnav ul li a span small {
  font-size: 16px;
}
.recruit_subnav ul li .nolink span {
  filter: grayscale(100%);
  opacity: 0.6;
}

.pc .recruit_subnav ul {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 0;
}
.pc .recruit_subnav ul li {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pc .recruit_subnav ul li .nolink span, .pc .recruit_subnav ul li a span {
  font-size: 22px;
}

.occupation {
  background: #fff;
  border-radius: 12px;
  border: dotted 4px #acacac;
  padding: 25px;
  text-align: center;
  position: relative;
}
.occupation:before {
  content: "";
  width: 101%;
  height: 8px;
  position: absolute;
  top: -2px;
  left: -2px;
  background: url("../images/recruit/point_edge.png") no-repeat top left, url("../images/recruit/point_edge.png") no-repeat top right;
}
.occupation:after {
  content: "";
  width: 101%;
  height: 8px;
  position: absolute;
  bottom: -2px;
  left: -2px;
  background: url("../images/recruit/point_edge.png") no-repeat top left, url("../images/recruit/point_edge.png") no-repeat top right;
}
.occupation p {
  margin-bottom: 20px !important;
}
.occupation .occupation_ttl {
  font-size: 26px;
  font-weight: bold;
}
.occupation .occupation_detail {
  font-size: 34px;
}
.occupation .occupation_txt {
  padding-top: 20px;
  border-top: dotted 4px #acacac;
  text-align: left;
}

p.caption {
  font-size: 14px;
  margin-top: 10px;
}

.recruit_btn {
  border: solid 2px #2348c3;
  border-radius: 6px;
  text-align: center;
  font-weight: bold;
  padding: 25px 0;
  position: relative;
  display: block;
  margin: 0 4px;
  font-size: 30px;
  text-decoration: none;
}
.recruit_btn:before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  background: url("../images/recruit/index_cont_edge_left.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  left: -4px;
  top: -4px;
  z-index: 2;
}
.recruit_btn:after {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  background: url("../images/recruit/index_cont_edge_right.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  right: -4px;
  bottom: -4px;
  z-index: 2;
}
.recruit_btn span {
  display: inline-block;
  padding: 4px 50px 2px 0;
  line-height: 1;
}
.recruit_btn.acc span {
  background: url("../images/recruit/icon_acc.png") no-repeat;
  background-position: center right;
  background-size: auto 100%;
}
.recruit_btn.blank span {
  background: url("../images/recruit/icon_window.png") no-repeat;
  background-position: center right;
  background-size: auto 100%;
}
.recruit_btn.noicon span {
  padding: 4px 0;
}
.recruit_btn.on.acc span {
  background: url("../images/recruit/icon_acc_minus.png") no-repeat;
  background-position: center right;
  background-size: auto 100%;
}
.recruit_btn.on:hover {
  opacity: 1;
}
.recruit_btn .ourmission_wrap {
  overflow: hidden;
  display: none;
}
.recruit_btn .ourmission_wrap .ourmission {
  margin: 40px 30px 30px;
  border-radius: 6px;
  border: solid 2px #637dd4;
}
.recruit_btn .ourmission_wrap .ourmission dt {
  background: #637dd4;
  padding: 5px 0;
}
.recruit_btn .ourmission_wrap .ourmission dd {
  font-weight: normal;
  font-size: 24px;
  padding: 30px 0;
  line-height: 1.8;
}
.recruit_btn.entry span {
  background: url(../images/recruit/icon_arrow.png) no-repeat;
  background-size: 30px 30px;
  background-position: right center;
}

.recruit_link_list li {
  margin-bottom: 30px;
}
.recruit_link_list li:last-child {
  margin-bottom: 0;
}

.cont_link {
  border-radius: 6px;
  background: url("../images/recruit/index_cont_bk.png");
  padding: 10px;
  display: block;
  text-decoration: none;
  position: relative;
  margin-bottom: 30px;
}
.cont_link:before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  background: url("../images/recruit/index_cont_edge_left.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  left: 7px;
  top: 7px;
  z-index: 2;
}
.cont_link:after {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  background: url("../images/recruit/index_cont_edge_right.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  right: 7px;
  bottom: 7px;
  z-index: 2;
}
.cont_link.label01:before {
  content: "";
  display: block;
  width: 146px;
  height: 146px;
  background: url("../images/recruit/index_cont_interview_label01.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  left: 7px;
  top: 7px;
  z-index: 2;
}
.cont_link .cont_link_inner {
  border-radius: 6px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  border: solid 2px #2348c3;
}
.cont_link .cont_link_inner img {
  width: 100%;
}
.cont_link .cont_link_inner p {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: url("../images/recruit/index_cont_ttl_bk.png");
  font-weight: bold;
  font-size: 30px;
  padding: 15px 35px;
}
.cont_link .cont_link_inner p span {
  display: block;
  padding: 16px 0 9px;
  background: url("../images/recruit/index_cont_line.png") no-repeat top center, url("../images/recruit/index_cont_line.png") no-repeat bottom center;
  position: relative;
  line-height: 1.3;
}
.cont_link .cont_link_inner p span:before {
  content: "";
  width: 30px;
  height: 30px;
  background: url("../images/recruit/icon_arrow.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.cont_link .cont_link_inner p span small {
  font-size: 18px;
}

div.cont_link:before {
  background: url("../images/recruit/index_cont_edge_left_dark.png") no-repeat;
  background-size: 100% 100%;
}
div.cont_link:after {
  background: url("../images/recruit/index_cont_edge_right_dark.png") no-repeat;
  background-size: 100% 100%;
}
div.cont_link .cont_link_inner {
  position: relative;
  border: solid 2px #152b75;
}
div.cont_link .cont_link_inner:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
}

#recruit_index section.recruit_index_lead {
  border: solid 14px #2348c3;
  text-align: center;
}
#recruit_index section.recruit_index_lead h1 {
  margin: 35px auto 40px;
}
#recruit_index section.recruit_index_lead h1 img {
  width: 53%;
}
#recruit_index section.recruit_index_lead h2 {
  margin-bottom: 50px;
}
#recruit_index section.recruit_index_lead h2 img {
  width: 90%;
}
#recruit_index section.recruit_index_lead .recruit_index_lead_inner {
  background: #f2f4fb;
  padding: 60px 30px 30px;
}
#recruit_index section.recruit_index_lead .recruit_index_lead_inner img {
  max-width: 100%;
}
#recruit_index section.recruit_index_lead .recruit_index_lead_inner p {
  margin-bottom: 25px;
}
#recruit_index section.recruit_index_lead .recruit_index_lead_inner .products {
  margin-bottom: 20px;
}
#recruit_index section.recruit_index_style {
  margin: 30px 30px 0;
  padding: 45px 40px;
  border: solid 2px #2348c3;
  border-radius: 10px;
}
#recruit_index section.recruit_index_style h3.ttl {
  text-align: center;
  margin-bottom: 60px;
}
#recruit_index section.recruit_index_style h3.ttl img {
  width: 100%;
}
#recruit_index section.recruit_index_style .recruit_index_style_detail li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#recruit_index section.recruit_index_style .recruit_index_style_detail li:first-child {
  margin-bottom: 40px;
}
#recruit_index section.recruit_index_style .recruit_index_style_detail li p {
  font-weight: bold;
  color: #2348c3;
}
#recruit_index section.recruit_index_cont {
  margin: 110px 30px 0;
}
#recruit_index section.recruit_index_cont h3 {
  padding: 25px 0;
  background: url("../images/recruit/ttl_line.png") no-repeat top center, url("../images/recruit/ttl_line.png") no-repeat bottom center;
  background-size: 100% auto, 100% auto;
  text-align: center;
  margin-bottom: 30px;
}
#recruit_index section.recruit_index_cont h3 .ja {
  color: #2348c3;
  font-size: 45px;
  display: block;
  margin-bottom: 5px;
}
#recruit_index section.recruit_index_cont h3 .en {
  display: block;
  font-size: 20px;
  font-weight: normal;
}
#recruit_index section.recruit_index_cont p.recruit_index_cont_txt {
  text-align: center;
  margin: 30px 0;
}

#recruit_message .recruit_message_cont {
  margin: 0 30px 70px;
}
#recruit_message .recruit_message_cont img {
  width: 100%;
}
#recruit_message .recruit_message_cont h2 {
  color: #2348c3;
  margin-bottom: 10px;
  font-weight: bold;
}
#recruit_message .recruit_message_cont h3 {
  color: #2348c3;
  margin-bottom: 20px;
  font-weight: bold;
}
#recruit_message .recruit_message_cont p {
  margin-bottom: 20px;
}
#recruit_message .recruit_message_cont figure {
  margin-bottom: 30px;
}

#recruit_interview {
  padding-bottom: 0;
}
#recruit_interview section img {
  width: 100%;
}
#recruit_interview section figure {
  margin-bottom: 30px;
}
#recruit_interview section.recruit_interview_lead {
  margin: 0 30px 50px;
}
#recruit_interview section.recruit_interview_lead h2 {
  font-size: 40px;
  color: #2348c3;
  font-weight: bold;
}
#recruit_interview section.recruit_interview_cont {
  margin: 0 30px 70px;
}
#recruit_interview section.recruit_interview_cont h3 {
  font-size: 30px;
  padding: 0 0 17px 40px;
  position: relative;
  background: url("../images/recruit/dot_line.png") no-repeat;
  background-position: bottom left;
  background-size: 100%;
  margin-bottom: 30px;
  font-weight: bold;
}
#recruit_interview section.recruit_interview_cont h3 span {
  display: inline-block;
  padding: 0 3px 3px;
  background: url("../images/recruit/under_line.png") repeat-x;
  background-position: bottom;
}
#recruit_interview section.recruit_interview_cont h3:before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: url("../images/recruit/icon_star.png") no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
}
#recruit_interview section.recruit_interview_cont p {
  margin-bottom: 20px;
}
#recruit_interview section.recruit_interview_cont p:last-child {
  margin-bottom: 0;
}
#recruit_interview section.recruit_interview_cont .oneweek li {
  margin-bottom: 40px;
  padding-bottom: 30px;
  padding-left: 43px;
  position: relative;
}
#recruit_interview section.recruit_interview_cont .oneweek li:before {
  content: "";
  width: 2px;
  height: 100%;
  position: absolute;
  left: 13px;
  top: 0;
  background: #2348c3;
}
#recruit_interview section.recruit_interview_cont .oneweek li:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 6px;
  position: absolute;
  left: 11px;
  bottom: 0;
  background: #2348c3;
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner:before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  padding: 0 0 30px;
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner.mon:before {
  content: url("../images/recruit/interview/week_mon.png");
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner.tue:before {
  content: url("../images/recruit/interview/week_tue.png");
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner.wed:before {
  content: url("../images/recruit/interview/week_wed.png");
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner.thu:before {
  content: url("../images/recruit/interview/week_thu.png");
}
#recruit_interview section.recruit_interview_cont .oneweek li .oneweek_inner.fri:before {
  content: url("../images/recruit/interview/week_fri.png");
}
#recruit_interview section.recruit_interview_cont .oneday li {
  margin-bottom: 30px;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner {
  display: flex;
  align-items: stretch;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt {
  width: 20%;
  font-size: 30px;
  font-weight: bold;
  position: relative;
  padding-bottom: 35px;
  display: flex;
  align-items: stretch;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt span {
  background: #fff;
  z-index: 2;
  padding: 0 0 10px;
  position: relative;
  height: 40px;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt:before {
  content: "";
  display: block;
  position: absolute;
  left: 46px;
  bottom: 0;
  width: 2px;
  background: #2348c3;
  height: 95%;
  z-index: 1;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt:after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 6px;
  position: absolute;
  left: 44px;
  top: 100%;
  background: #2348c3;
  z-index: 2;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt.last:after, #recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dt.last:before {
  display: none;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dd {
  width: 80%;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dd .ttl {
  font-size: 30px;
  font-weight: bold;
}
#recruit_interview section.recruit_interview_cont .oneday li .oneday_inner dd .txt {
  padding-bottom: 30px;
}
#recruit_interview section.recruit_interview_cont .profile {
  margin-bottom: 30px;
}
#recruit_interview section.recruit_interview_cont .profile li {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
#recruit_interview section.recruit_interview_cont .profile li p {
  margin-bottom: 0;
}
#recruit_interview section.recruit_interview_cont .profile li p.date {
  width: 25%;
}
#recruit_interview section.recruit_interview_cont .profile li p.txt {
  width: 75%;
}
#recruit_interview section.recruit_interview_cont .interview dt {
  font-size: 26px;
  font-weight: bold;
  color: #2348c3;
  margin-bottom: 20px;
  position: relative;
}
#recruit_interview section.recruit_interview_cont .interview dt:before {
  content: "";
  width: 45px;
  height: 30px;
  background: url("../images/recruit/interview/line_interview.png") no-repeat;
  background-position: left center;
  display: inline-block;
  margin: 0 5px -5px 0;
}
#recruit_interview section.recruit_interview_cont .interview dd {
  margin-bottom: 40px;
}
#recruit_interview section.recruit_interview_cont .interview dd figure {
  margin-top: 20px;
}
#recruit_interview .recruit_interview_others {
  background: #f2f4fb;
  padding: 50px 30px 110px;
}
#recruit_interview .recruit_interview_others h4 {
  font-size: 30px;
  font-weight: bold;
  color: #2348c3;
  text-align: center;
  margin-bottom: 50px;
  position: relative;
}
#recruit_interview .recruit_interview_others h4:before {
  content: "";
  width: 100%;
  height: 2px;
  background: #2348c3;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#recruit_interview .recruit_interview_others h4 span.inner {
  display: block;
  position: relative;
}
#recruit_interview .recruit_interview_others h4 span.inner:before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 6px;
  background: #2348c3;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#recruit_interview .recruit_interview_others h4 span.inner:after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 6px;
  background: #2348c3;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
#recruit_interview .recruit_interview_others h4 span.inner span.inline {
  line-height: 1;
  background: #f2f4fb;
  display: inline-block;
  padding: 0 10px;
}