@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Josefin+Sans:300&display=swap");
@import url("https://fonts.googleapis.com/css?family=Red+Hat+Display:400,500&display=swap");
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 {
  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; }

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto; }

/* border-box */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

html, body {
  height: 100%; }

html {
  font-size: 62.5%; }

@media screen and (max-width: 767px) {
  html {
    font-size: calc(45% + 0.5vw); } }

body {
  color: #05161d;
  font-size: 1.5rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  min-width: 1040px;
  word-wrap: break-word;
  -webkit-text-size-adjust: none; }

@media screen and (max-width: 767px) {
  body {
    min-width: 0;
    font-size: 3.2vw; } }

a {
  color: inherit;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
  text-decoration: none; }

@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.6; } }

/* helper */
._spOnly {
  display: none; }

@media screen and (max-width: 767px) {
  ._spOnly {
    display: block; }
  ._pcOnly {
    display: none; } }

._font-josefin {
  font-family: 'Josefin Sans', sans-serif; }

._font-redhat {
  font-family: 'Red Hat Display', sans-serif; }

._font-hirakaku {
  font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif; }

._anime-blinking {
  -webkit-animation: blink .8s ease-in-out infinite alternate;
  -moz-animation: blink .8s ease-in-out infinite alternate;
  animation: blink .8s ease-in-out infinite alternate; }

._anime-blinking-hukidashi {
  -webkit-animation: blinkBorder01 .8s ease-in-out infinite alternate;
  -moz-animation: blinkBorder01 .8s ease-in-out infinite alternate;
  animation: blinkBorder01 .8s ease-in-out infinite alternate; }
  ._anime-blinking-hukidashi::before, ._anime-blinking-hukidashi::after {
    -webkit-animation: blink .8s ease-in-out infinite alternate;
    -moz-animation: blink .8s ease-in-out infinite alternate;
    animation: blink .8s ease-in-out infinite alternate; }

@-webkit-keyframes blink {
  0% {
    opacity: 0; }
  20% {
    opacity: 1; }
  50% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@-moz-keyframes blink {
  0% {
    opacity: 0; }
  20% {
    opacity: 1; }
  50% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@keyframes blink {
  0% {
    opacity: 0; }
  20% {
    opacity: 1; }
  50% {
    opacity: 1; }
  80% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@-webkit-keyframes blinkBorder01 {
  0% {
    border-color: #fff; }
  100% {
    border-color: #f68d31; } }

@-moz-keyframes blinkBorder01 {
  0% {
    border-color: #fff; }
  100% {
    border-color: #f68d31; } }

@keyframes blinkBorder01 {
  0% {
    border-color: #fff; }
  100% {
    border-color: #f68d31; } }

.inner {
  width: 1280px;
  margin: 0 auto;
  padding: 0 40px; }

@media screen and (max-width: 1360px) {
  .inner {
    width: 100%; } }

@media screen and (max-width: 767px) {
  .inner {
    width: 100%;
    padding: 0 2.66667vw; } }

/* header
-----------------------*/
#header {
  display: -webkit-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  width: 100%;
  min-width: 1040px;
  padding: 28px 32px 0 50px;
  z-index: 10; }
  #header .site-logo {
    width: 129px; }
  #header .site-description {
    margin-left: 45px;
    font-style: italic;
    letter-spacing: -0.05em; }
  #header .button-contact {
    margin-left: auto; }
    #header .button-contact a {
      display: block;
      width: 260px;
      color: #fff;
      font-size: 1.6rem;
      text-align: center;
      line-height: 42px;
      background-color: #f68d31;
      border-radius: 42px; }

.nav-button {
  width: 50px;
  margin-left: 55px;
  cursor: pointer; }
  .nav-button span {
    display: inline-block;
    position: relative;
    width: 50px;
    height: 5px;
    margin: 10px 0;
    background-color: #fff; }
    .nav-button span::before, .nav-button span::after {
      position: absolute;
      left: 0;
      display: inline-block;
      width: 100%;
      height: 5px;
      background-color: #fff;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      content: ''; }
    .nav-button span::before {
      top: -10px; }
    .nav-button span::after {
      bottom: -10px; }
  .nav-button p {
    color: #fff;
    text-align: center;
    line-height: 1; }
  .nav-button.is-open span {
    margin: 20px 0;
    background: none; }
    .nav-button.is-open span::before {
      background-color: #05161d;
      -webkit-transform: translateY(10px) rotate(45deg);
      -ms-transform: translateY(10px) rotate(45deg);
      transform: translateY(10px) rotate(45deg); }
    .nav-button.is-open span::after {
      background-color: #05161d;
      -webkit-transform: translateY(-10px) rotate(-45deg);
      -ms-transform: translateY(-10px) rotate(-45deg);
      transform: translateY(-10px) rotate(-45deg); }
  .nav-button.is-open p {
    display: none; }

@media screen and (max-width: 767px) {
  #wrapper {
    padding-top: 13.33333vw;
    overflow: hidden; }
  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: initial;
    height: 13.33333vw;
    padding: 0 2.66667vw;
    background-color: #fff; }
    #header .site-logo {
      width: 24vw;
      margin-top: -1.33333vw; }
    #header .site-description {
      font-size: 2.93333vw;
      margin-left: 2.93333vw;
      letter-spacing: -.08em; }
  .nav-button {
    width: 8vw;
    margin-left: auto; }
    .nav-button span {
      width: 8vw;
      height: 3px;
      margin: 2vw 0 2vw 0;
      background-color: #000000; }
      .nav-button span::before, .nav-button span::after {
        height: 3px;
        background-color: #000000; }
      .nav-button span::before {
        top: -2vw; }
      .nav-button span::after {
        bottom: -2vw; }
    .nav-button p {
      margin: 0 -1.33333vw;
      color: #000000;
      font-size: 3.2vw;
      letter-spacing: -0.1em; }
  .is-open .nav-button span {
    margin: 2.66667vw 0;
    background: none; }
    .is-open .nav-button span::before {
      top: -2.66667vw;
      background-color: #05161d;
      -webkit-transform: translateY(10px) rotate(45deg);
      -ms-transform: translateY(10px) rotate(45deg);
      transform: translateY(10px) rotate(45deg); }
    .is-open .nav-button span::after {
      bottom: -2.66667vw;
      background-color: #05161d;
      -webkit-transform: translateY(-10px) rotate(-45deg);
      -ms-transform: translateY(-10px) rotate(-45deg);
      transform: translateY(-10px) rotate(-45deg); }
  .is-open .nav-button p {
    display: none; } }

/* glnavi
-----------------------*/
#global-navi {
  display: none; }
  #global-navi.is-show {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: 90px;
    background-color: rgba(255, 126, 0, 0.97);
    z-index: 999;
    opacity: 1; }
  #global-navi .nav-button {
    position: absolute;
    right: 33px;
    top: 25px; }
  #global-navi ul {
    border-top: 1px solid #d16200;
    border-bottom: 1px solid #d16200; }
    #global-navi ul li {
      border-top: 1px solid #d16200; }
      #global-navi ul li:first-child {
        border-top: none; }
      #global-navi ul li a {
        display: block;
        padding: 20px 0;
        font-size: 2.0rem;
        font-weight: 700;
        text-align: center; }
      #global-navi ul li.link-local a small {
        display: block;
        color: #d16200;
        font-size: 1.6rem; }
      #global-navi ul li.link-contact {
        padding: 20px 50px; }
        #global-navi ul li.link-contact a {
          display: inline-block;
          width: 500px;
          height: 60px;
          background-color: #fff; }

@media screen and (max-width: 767px) {
  #global-navi.is-show {
    top: 13.33333vw;
    padding-top: 0; }
  #global-navi .nav-button {
    display: none; }
  #global-navi ul {
    border: none; }
    #global-navi ul li a {
      padding: 4vw;
      font-size: 4.26667vw; }
    #global-navi ul li.link-local a small {
      font-size: 2.93333vw; }
    #global-navi ul li.link-contact {
      padding: 5.33333vw 8.66667vw; }
      #global-navi ul li.link-contact a {
        width: 100%;
        height: auto;
        font-size: 4.26667vw;
        font-weight: 700;
        text-align: center;
        line-height: 13.33333vw; } }

/* mv
-----------------------*/
#mv {
  position: relative;
  height: 100vh;
  overflow: hidden; }
  #mv .bg-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-height: 100vh;
    min-width: 100%;
    min-width: 100vw;
    width: auto;
    height: auto;
    z-index: -100;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  #mv .inner {
    position: relative;
    height: 100vh; }
  #mv .text-box {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 1148px;
    padding: 50px 0;
    text-align: center;
    border: 2px solid #fff;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.7);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    #mv .text-box .text {
      font-size: 3.8rem;
      font-weight: 700;
      text-shadow: 0 0 10px #FFF, 0 0 10px #FFF, 0 0 10px #FFF; }
      #mv .text-box .text span {
        display: inline-block;
        white-space: nowrap; }
    #mv .text-box .logo {
      margin: -30px 0 -45px 0;
      line-height: 1; }
    #mv .text-box .release {
      font-size: 4.8rem;
      font-weight: 500;
      text-shadow: 0 0 10px #FFF, 0 0 10px #FFF, 0 0 10px #FFF; }
  #mv .scroll {
    position: absolute;
    left: 50%;
    bottom: 35px;
    width: 61px;
    padding-top: 65px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    letter-spacing: 0.1em;
    background: url(../../images/e-staffing_new_index/ico_scroll.png) no-repeat center top;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }

@media screen and (max-width: 1200px) {
  #mv .text-box {
    width: 900px; } }

@media screen and (max-width: 767px) {
  #mv {
    position: relative;
    height: 120vw; }
    #mv .bg-video {
      min-height: 120vw;
      height: 120vw; }
    #mv .inner {
      height: 100%; }
    #mv .text-box {
      width: 72vw;
      height: 72vw;
      padding: 8vw 0;
      -webkit-transform: translate(-50%, -57%);
      -ms-transform: translate(-50%, -57%);
      transform: translate(-50%, -57%); }
      #mv .text-box .text {
        font-size: 4.26667vw; }
      #mv .text-box .logo {
        margin: 0 0 -1.06667vw 0; }
      #mv .text-box .release {
        font-size: 5.06667vw; }
    #mv .scroll {
      bottom: 4vw;
      font-size: 3.2vw;
      width: 12vw;
      background-size: contain;
      padding-top: 13.33333vw; }
      #mv .scroll::after {
        height: 10.93333vw;
        margin-top: 1.33333vw; } }

/* renewal-url
-----------------------*/
.renewal-url {
  padding: 95px 0 0 0;
  text-align: center; }
  .renewal-url h2 {
    position: relative;
    width: 770px;
    margin: 0 auto 13px auto;
    padding: 10px 0;
    color: #f68d31;
    font-size: 3.4rem;
    text-align: center;
    line-height: 1.4;
    border: 2px solid #f68d31;
    /*&::before {
      position: absolute;
      top: 10px;
      left: 10px;
      border-style: solid;
      border-width: 7px;
      border-color: #666 transparent transparent #666;
      content: '';
    }*/ }
    .renewal-url h2 span.ex {
      display: block;
      font-size: 2.0rem;
      line-height: 2.0; }
  .renewal-url .text {
    color: #666;
    text-align: center;
    line-height: 1.9; }
    .renewal-url .text span {
      color: #f68d31; }

@media screen and (max-width: 767px) {
  .renewal-url {
    padding: 8vw 2.66667vw 2.66667vw 2.66667vw; }
    .renewal-url h2 {
      width: 100%;
      margin: 0 auto 3.73333vw auto;
      padding: 3.33333vw 0;
      font-size: 4.8vw;
      line-height: 1.6; }
      .renewal-url h2 span {
        font-size: 5.33333vw; }
        .renewal-url h2 span.ex {
          font-size: 4vw; }
      .renewal-url h2::before {
        top: 2.66667vw;
        left: 2.66667vw;
        border-width: 1.33333vw; }
    .renewal-url .text {
      font-size: 3.2vw;
      line-height: 1.6; } }

/* renewal-point
-----------------------*/
.renewal-point {
  margin-top: 440px;
  background-color: #efefef; }

.point-header {
  text-align: center; }
  .point-header h3 {
    margin-bottom: 45px;
    font-size: 5.0rem; }
    .point-header h3 small {
      display: block;
      color: #f68d31;
      font-size: 2.2rem; }
  .point-header .lead {
    font-size: 1.8rem;
    line-height: 1.9; }

.point-title {
  margin-bottom: 45px;
  color: #f68d31;
  font-size: 3.8rem;
  text-align: left;
  white-space: nowrap; }
  .point-title span {
    display: block;
    font-size: 3.4rem;
    font-weight: normal; }
  .point-title::after {
    display: block;
    width: 60px;
    height: 4px;
    margin: 18px 0px 0 8px;
    background-color: #434343;
    content: ''; }

.renewal-point-header {
  position: relative;
  top: -335px;
  overflow: hidden; }
  .renewal-point-header::before {
    display: block;
    position: absolute;
    top: 50px;
    right: 0;
    width: calc(50%  + 640px);
    height: 550px;
    background-image: -webkit-linear-gradient(-52deg, #ff4e00 0, #ff8400 100%);
    background-image: -webkit-linear-gradient(142deg, #ff4e00 0, #ff8400 100%);
    background-image: -o-linear-gradient(142deg, #ff4e00 0, #ff8400 100%);
    background-image: linear-gradient(-52deg, #ff4e00 0, #ff8400 100%);
    content: '';
    z-index: 1; }
  .renewal-point-header::after {
    display: block;
    position: absolute;
    top: 50px;
    right: 0;
    width: calc(50%  + 640px);
    height: 550px;
    background: url(../../images/e-staffing_new_index/pc_bg_lead-01.png) no-repeat left top;
    content: '';
    z-index: 2; }
  .renewal-point-header .inner {
    position: relative;
    color: #fff;
    text-align: right;
    z-index: 3; }
    .renewal-point-header .inner .image {
      float: right;
      margin-right: -185px; }
    .renewal-point-header .inner h2 {
      margin-left: -35px;
      padding: 220px 663px 0 0;
      font-size: 5.8rem;
      letter-spacing: -0.07em;
      line-height: 2; }
    .renewal-point-header .inner .text {
      padding-right: 660px;
      font-size: 2.0rem;
      line-height: 2; }

.point-image {
  position: relative;
  overflow: hidden; }
  .point-image .image-wrap {
    position: relative;
    display: inline-block; }
  .point-image .hukidashi {
    position: absolute;
    padding: 25px 25px;
    font-size: 1.8rem;
    text-align: left;
    line-height: 1.9;
    border: 1px solid #010101;
    border-radius: 10px;
    background-color: #fff; }
    .point-image .hukidashi::before {
      position: absolute;
      top: 50%;
      left: 100%;
      display: block;
      border-bottom: 1px solid #010101;
      content: ''; }
    .point-image .hukidashi::after {
      position: absolute;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      background-color: #010101;
      z-index: 1;
      content: ''; }
  .point-image .border {
    position: absolute;
    border: 5px solid #f68d31; }

#login {
  clear: both;
  margin: -295px 0 102px 0; }
  #login .point-header {
    margin-bottom: 50px; }
  #login .point-title {
    padding: 29px 12% 0 0; }
  #login .point-image {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    #login .point-image .image-wrap {
      width: 984px; }

#calendar {
  margin-bottom: 330px; }
  #calendar .point-header {
    margin-bottom: 83px; }
  #calendar .point-image.-image01 {
    margin-bottom: 50px;
    text-align: right; }
    #calendar .point-image.-image01 .image-wrap {
      width: 984px; }
      #calendar .point-image.-image01 .image-wrap img {
        margin-right: -7px; }
      #calendar .point-image.-image01 .image-wrap .border {
        top: 297px;
        left: 55px;
        width: 172px;
        height: 45px;
        border-radius: 45px; }
      #calendar .point-image.-image01 .image-wrap .hukidashi {
        top: 258px;
        left: -308px; }
        #calendar .point-image.-image01 .image-wrap .hukidashi::before {
          top: 49%;
          left: 100%;
          width: 60px; }
        #calendar .point-image.-image01 .image-wrap .hukidashi::after {
          top: 40%;
          right: -72px; }
  #calendar .point-image.-image02 {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
    #calendar .point-image.-image02 .point-title {
      padding: 6px 0 0 65px; }
    #calendar .point-image.-image02 .hukidashi {
      top: 650px;
      right: -428px; }
      #calendar .point-image.-image02 .hukidashi::before {
        width: 100px;
        left: -100px; }
      #calendar .point-image.-image02 .hukidashi::after {
        top: 42%;
        left: -104px; }
    #calendar .point-image.-image02 .hukidashi-image {
      position: absolute;
      top: 55.4%;
      left: 85.3%;
      width: 52%; }

#task {
  margin-bottom: 100px; }
  #task .point-header {
    margin-bottom: 65px; }
  #task .point-title {
    padding: 8px 12% 0 0; }
  #task .point-image {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    #task .point-image .image-wrap {
      width: 984px; }
    #task .point-image .border {
      width: 79%;
      height: 35%;
      top: 47.55%;
      left: 19.22%;
      border-radius: 10px; }
    #task .point-image .hukidashi {
      left: -405px;
      top: 368px; }
      #task .point-image .hukidashi::before {
        width: 255px;
        top: 47%;
        left: 100%; }
      #task .point-image .hukidashi::after {
        right: -264px;
        top: 39%; }
    #task .point-image .hukidashi-image {
      position: absolute;
      right: 79.5%;
      top: 54%;
      width: 62.5%; }

#notice {
  padding-bottom: 156px; }
  #notice .point-header {
    margin-bottom: 33px; }
  #notice .point-image.-image01 {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-bottom: 52px; }
    #notice .point-image.-image01 .point-title {
      padding: 15px 0 0 65px; }
    #notice .point-image.-image01 .border {
      top: 390px;
      left: 28px;
      width: 175px;
      height: 60px;
      border-radius: 60px; }
  #notice .point-image.-image02 {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: 76px; }
    #notice .point-image.-image02 .point-title {
      padding: 17px 233px 0 0; }
    #notice .point-image.-image02 .image {
      margin-right: -7px; }
    #notice .point-image.-image02 .hukidashi {
      left: -434px;
      top: 415px; }
      #notice .point-image.-image02 .hukidashi::before {
        width: 402px;
        height: 217px;
        top: -139px;
        background: url(../../images/e-staffing_new_index/img_line.png) no-repeat left center;
        background-size: cover;
        border: none; }
      #notice .point-image.-image02 .hukidashi::after {
        top: -149px;
        right: -420px; }
    #notice .point-image.-image02 .hukidashi-image {
      position: absolute;
      right: 72.5%;
      top: 28.5%;
      width: 75%; }
  #notice .point-image.-image03 {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    margin-left: -40px;
    overflow: visible; }
    #notice .point-image.-image03 .hukidashi-image {
      position: absolute; }
      #notice .point-image.-image03 .hukidashi-image.-hukidashi01 {
        top: 29%;
        left: 29%;
        width: 16%; }
      #notice .point-image.-image03 .hukidashi-image.-hukidashi02 {
        top: 88%;
        left: 63%;
        width: 19%; }
  #notice .point-image.-image04 {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: 50px;
    overflow: visible; }
    #notice .point-image.-image04 .point-title {
      margin-top: -10px;
      padding: 26px 13.9% 0 0; }
    #notice .point-image.-image04 .image-wrap {
      margin-right: 20px; }
    #notice .point-image.-image04 .hukidashi-image {
      position: absolute; }
      #notice .point-image.-image04 .hukidashi-image.-hukidashi01 {
        top: 29%;
        left: 29%;
        width: 16%; }
      #notice .point-image.-image04 .hukidashi-image.-hukidashi02 {
        top: 88%;
        left: 63%;
        width: 19%; }
      #notice .point-image.-image04 .hukidashi-image.-hukidashi03 {
        top: 14.4%;
        right: 74.2%;
        width: 74%; }

.section-separator {
  position: relative;
  top: -85px; }
  .section-separator::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 240px;
    background-image: -webkit-linear-gradient(-52deg, #ff4e00 0, #ff8400 100%);
    background-image: -webkit-linear-gradient(142deg, #ff4e00 0, #ff8400 100%);
    background-image: -o-linear-gradient(142deg, #ff4e00 0, #ff8400 100%);
    background-image: linear-gradient(-52deg, #ff4e00 0, #ff8400 100%);
    content: '';
    z-index: 1; }
  .section-separator::after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 240px;
    background: url(../../images/e-staffing_new_index/pc_bg_separator.png) no-repeat left top;
    content: '';
    z-index: 2; }
  .section-separator p {
    position: relative;
    color: #fff;
    font-size: 4.0rem;
    font-weight: 700;
    text-align: center;
    line-height: 240px;
    z-index: 5; }

@media screen and (max-width: 1360px) {
  .renewal-point-header::before {
    top: 10%;
    width: calc(100% - 40px);
    height: 80%; }
  .renewal-point-header::after {
    top: 10%;
    width: calc(100% - 40px);
    height: 80%; }
  .renewal-point-header .inner .image {
    width: 50%;
    margin: 0 -4% 0 0; }
  .renewal-point-header .inner h2 {
    padding: 10% 50% 0 0;
    font-size: 4.8rem; }
  .renewal-point-header .inner .text {
    padding-right: 50%; }
  #login .point-title {
    padding: 8px 3% 0 0; }
  #login .point-image .image-wrap {
    width: 68%;
    margin: 0; }
  #calendar .point-image.-image01 .image-wrap {
    width: 65%; }
    #calendar .point-image.-image01 .image-wrap .border {
      top: 59%;
      left: 5%;
      width: 19%;
      height: 9%; }
    #calendar .point-image.-image01 .image-wrap .hukidashi {
      top: 50%;
      left: auto;
      right: calc(100% + 20px);
      white-space: nowrap;
      padding: 3% 25px; }
  #calendar .point-image.-image02 .point-title {
    padding: 6px 0 0 3%; }
  #calendar .point-image.-image02 .image-wrap {
    width: 65%;
    margin-left: -1%; }
  #task .point-title {
    padding: 8px 3% 0 0; }
  #task .point-image .image-wrap {
    width: 68%;
    margin: 0; }
  #notice .point-image.-image01 .image-wrap {
    width: 57%;
    margin-left: -1%; }
  #notice .point-image.-image01 .point-title {
    padding: 15px 0 0 3%; }
  #notice .point-image.-image01 .border {
    top: 68%;
    left: 3%;
    width: 19%;
    height: 12%;
    border-radius: 60px; }
  #notice .point-image.-image02 .point-title {
    padding: 17px 3% 0 0; }
  #notice .point-image.-image02 .image-wrap {
    width: 66%; }
  #notice .point-image.-image04 .point-title {
    padding: 17px 3% 0 0; }
  #notice .point-image.-image04 .image-wrap {
    width: 64%;
    margin: 80px 0 0 0; } }

@media screen and (max-width: 767px) {
  .renewal-point {
    margin-top: 77.33333vw; }
  .point-header h3 {
    margin-bottom: 6vw;
    font-size: 6.4vw; }
    .point-header h3 small {
      font-size: 3.46667vw; }
  .point-header .lead {
    font-size: 3.2vw; }
  .point-title {
    margin-bottom: 4.8vw;
    padding-left: 2.66667vw;
    font-size: 5.6vw; }
    .point-title span {
      font-size: 4.8vw; }
    .point-title::after {
      display: block;
      width: 8vw;
      height: 2px;
      margin: 1.33333vw 0 0 0; }
  .renewal-point-header {
    top: -71.46667vw;
    overflow: visible; }
    .renewal-point-header::before {
      top: 7.2vw;
      width: calc(100% - (20 / 750 * 100vw));
      height: 124vw;
      background-image: -webkit-linear-gradient(-74deg, #ff4e00 0, #ff8400 100%);
      background-image: -webkit-linear-gradient(164deg, #ff4e00 0, #ff8400 100%);
      background-image: -o-linear-gradient(164deg, #ff4e00 0, #ff8400 100%);
      background-image: linear-gradient(-74deg, #ff4e00 0, #ff8400 100%); }
    .renewal-point-header::after {
      top: 7.2vw;
      width: calc(100% - (20 / 750 * 100vw));
      height: 124vw;
      background-image: url(../../images/e-staffing_new_index/sp_bg_lead-01.png);
      background-size: cover; }
    .renewal-point-header .inner {
      text-align: center; }
      .renewal-point-header .inner .image {
        width: auto;
        float: none;
        margin: 0 0 -4vw 0;
        padding: 0 4.53333vw; }
      .renewal-point-header .inner h2 {
        margin: 16vw 0 -2.13333vw 0;
        padding: 0;
        font-size: 7.73333vw; }
        .renewal-point-header .inner h2 img {
          width: 29.6vw; }
      .renewal-point-header .inner .text {
        padding-right: 0;
        font-size: 3.2vw; }
  .point-image .hukidashi {
    position: static;
    padding: 0.53333vw 0;
    font-size: 3.2vw;
    text-align: center;
    border-radius: 30px; }
    .point-image .hukidashi::before {
      top: auto;
      bottom: 100%;
      left: 20%;
      width: 1px;
      border-left: 1px solid #010101;
      border-bottom: none; }
    .point-image .hukidashi::after {
      width: 2.4vw;
      height: 2.4vw; }
  .point-image .border {
    border: 3px solid #f68d31; }
  #login {
    margin: -37.86667vw 0 13.33333vw 0; }
    #login .point-header {
      margin-bottom: 6.66667vw; }
      #login .point-header h3 {
        margin-bottom: 4.53333vw; }
    #login .point-title {
      padding: 0 0 0 5.33333vw;
      margin-bottom: 7.2vw; }
    #login .point-image {
      display: block; }
      #login .point-image .image-wrap {
        width: auto;
        margin: 0 0 0 2.13333vw; }
  #calendar {
    margin-bottom: 14.66667vw; }
    #calendar .point-header {
      margin-bottom: 2.66667vw; }
    #calendar .point-image.-image01 {
      margin-bottom: 11.46667vw;
      text-align: right; }
      #calendar .point-image.-image01 .image-wrap {
        width: 100%;
        padding-left: 2.13333vw; }
        #calendar .point-image.-image01 .image-wrap img {
          margin-right: 1.86667vw; }
        #calendar .point-image.-image01 .image-wrap .border {
          top: 30.13333vw;
          left: 7%;
          width: 19%;
          height: 8%; }
        #calendar .point-image.-image01 .image-wrap .hukidashi {
          margin: 1.06667vw 5.06667vw 0 6.4vw; }
          #calendar .point-image.-image01 .image-wrap .hukidashi::before {
            top: 36.8vw;
            left: 16%;
            height: 28.53333vw; }
          #calendar .point-image.-image01 .image-wrap .hukidashi::after {
            top: 34.66667vw;
            right: 82.54%; }
    #calendar .point-image.-image02 {
      display: block; }
      #calendar .point-image.-image02 .point-title {
        margin-bottom: 5.6vw;
        padding: 0 0 0 5.33333vw; }
      #calendar .point-image.-image02 .image-wrap {
        width: auto;
        margin: 0 10px 0 -8px; }
      #calendar .point-image.-image02 .hukidashi {
        margin: 5.6vw 2.93333vw 0 7.2vw;
        letter-spacing: -0.05em; }
        #calendar .point-image.-image02 .hukidashi::before {
          left: 52.5%;
          top: 83.46667vw;
          height: 21.86667vw; }
        #calendar .point-image.-image02 .hukidashi::after {
          top: 81.33333vw;
          left: 51.5%; }
  #task {
    margin-bottom: 13.86667vw; }
    #task .point-header {
      margin-bottom: 6.93333vw; }
    #task .point-title {
      padding: 0 0 0 5.33333vw;
      margin-bottom: 7.2vw; }
    #task .point-image {
      display: block; }
      #task .point-image .image-wrap {
        width: auto;
        margin: 0 0 0 2.13333vw; }
      #task .point-image .border {
        width: 74%;
        height: 20vw;
        top: 29.86667vw;
        left: 24.5%; }
      #task .point-image .hukidashi {
        margin: 2.4vw 5.06667vw 0 9.86667vw; }
        #task .point-image .hukidashi::before {
          top: 50.13333vw;
          left: 53%;
          height: 9.06667vw; }
        #task .point-image .hukidashi::after {
          top: 48.26667vw;
          right: 45.5%; }
  #notice {
    padding-bottom: 26.66667vw; }
    #notice .point-header {
      margin-bottom: 4vw; }
    #notice .point-image.-image01 {
      display: block;
      margin-bottom: 10.4vw; }
      #notice .point-image.-image01 .point-title {
        padding: 0 0 0 5.33333vw;
        margin-bottom: 5.6vw; }
      #notice .point-image.-image01 .image-wrap {
        width: auto;
        margin: 0 2.66667vw 0 -2.13333vw; }
      #notice .point-image.-image01 .border {
        top: 40.53333vw;
        left: 3%;
        width: 19%;
        height: 7.2vw; }
    #notice .point-image.-image02 {
      display: block;
      margin-bottom: 12.53333vw; }
      #notice .point-image.-image02 .point-title {
        padding: 0 0 0 5.33333vw;
        margin-bottom: 4.8vw; }
      #notice .point-image.-image02 .image-wrap {
        width: auto;
        margin: 0 0 0 2.13333vw; }
      #notice .point-image.-image02 .hukidashi {
        margin: 1.86667vw 5.33333vw 0 5.33333vw;
        padding: 1.86667vw 8vw;
        text-align: left; }
        #notice .point-image.-image02 .hukidashi::before {
          top: 30.4vw;
          left: 40.8%;
          width: 1px;
          height: 74.13333vw;
          background: none;
          border-left: 1px solid #010101; }
        #notice .point-image.-image02 .hukidashi::after {
          top: 28.53333vw;
          right: 58%; }
    #notice .point-image.-image03 {
      display: block;
      margin: 0 2.4vw 0 -2.66667vw;
      overflow: visible; }
      #notice .point-image.-image03 .hukidashi {
        position: absolute;
        border-color: #f68d31; }
        #notice .point-image.-image03 .hukidashi::before {
          border-color: #f68d31; }
        #notice .point-image.-image03 .hukidashi::after {
          background-color: #f68d31; }
        #notice .point-image.-image03 .hukidashi.-hukidashi01 {
          top: 15.73333vw;
          left: 26%;
          padding: 1.6vw 3.2vw;
          border-radius: 7px; }
          #notice .point-image.-image03 .hukidashi.-hukidashi01::before {
            left: 100%;
            bottom: 47%;
            width: 5.33333vw;
            border-left: none;
            border-bottom: 1px solid #f68d31; }
          #notice .point-image.-image03 .hukidashi.-hukidashi01::after {
            right: -65%;
            top: 38%; }
        #notice .point-image.-image03 .hukidashi.-hukidashi02 {
          top: 53.33333vw;
          left: 68%;
          padding: 1.86667vw 3.2vw;
          overflow: visible;
          border-radius: 7px; }
          #notice .point-image.-image03 .hukidashi.-hukidashi02::before {
            width: 20vw;
            height: 4.8vw;
            background: url(../../images/e-staffing_new_index/sp_img_line.png) no-repeat;
            background-size: cover;
            left: -125%;
            border: none; }
          #notice .point-image.-image03 .hukidashi.-hukidashi02::after {
            left: -143%;
            top: -5.86667vw; }
    #notice .point-image.-image04 {
      display: block;
      margin-bottom: 12.53333vw; }
      #notice .point-image.-image04 .point-title {
        padding: 0 0 0 5.33333vw;
        margin-bottom: 4.8vw; }
      #notice .point-image.-image04 .image-wrap {
        width: auto;
        margin: 0 0 0 2.13333vw; }
      #notice .point-image.-image04 .hukidashi-image.-hukidashi01 {
        top: 21%; }
      #notice .point-image.-image04 .hukidashi-image.-hukidashi02 {
        top: 67.5%; }
      #notice .point-image.-image04 .hukidashi {
        margin: 5.33333vw 5.33333vw 0 5.33333vw;
        padding: 1.86667vw 10.66667vw;
        text-align: left; }
        #notice .point-image.-image04 .hukidashi::before, #notice .point-image.-image04 .hukidashi::after {
          display: none; }
  .section-separator {
    position: relative;
    top: -32vw; }
    .section-separator::before {
      top: 0;
      height: 32vw; }
    .section-separator::after {
      top: 0;
      background-image: url(../../images/e-staffing_new_index/sp_bg_separator.png);
      background-size: cover;
      height: 32vw; }
    .section-separator p {
      font-size: 4.26667vw;
      line-height: 32vw; } }

/* contact
-----------------------*/
#contact {
  padding: 278px 0 64px 0; }
  #contact .point-header h3 {
    margin-bottom: 52px; }
  #contact .contact-box {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 135px; }
    #contact .contact-box > div {
      width: auto;
      margin: 0 10px;
      padding: 35px 20px 25px 20px;
      text-align: center;
      border: 1px solid #82807e;
      border-radius: 10px; }
    #contact .contact-box h4 {
      margin-bottom: 16px; }
    #contact .contact-box .text {
      margin-bottom: 5px;
      font-size: 1.7rem; }
    #contact .contact-box .notice {
      font-size: 1.2rem; }
    #contact .contact-box .tel-box {
      padding-top: 35px; }
    #contact .contact-box .mail-box {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding-top: 30px; }
    #contact .contact-box .tel-mail-box {
      padding-top: 35px; }
    #contact .contact-box .tel-mail-box h4 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
    #contact .contact-box .tel-mail-box h4 span {
      margin: 0 20px;
      height: 39px; }
    #contact .contact-box .tel-mail-box h4 span img {
      height: 39px; }
  #contact .certification {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -60px 0 0 -4%; }
    #contact .certification .item {
      display: -webkit-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 46%;
      margin: 60px 0 0 4%; }
      #contact .certification .item .logo {
        width: 150px;
        text-align: center; }
      #contact .certification .item .text {
        width: calc(100% - 165px);
        line-height: 1.6; }
      #contact .certification .item .align-right {
        text-align: right; }

@media screen and (max-width: 767px) {
  #contact {
    padding: 13.86667vw 0 7.46667vw 0; }
    #contact .point-header h3 {
      margin-bottom: 7.73333vw;
      line-height: 1.3; }
    #contact .contact-box {
      display: block;
      margin-bottom: 24.26667vw;
      padding: 0 2.66667vw; }
      #contact .contact-box > div {
        width: 100%;
        margin: 0;
        padding: 35px 0 3.46667vw 0;
        border-radius: 5px; }
      #contact .contact-box h4 {
        margin-bottom: 1.86667vw;
        padding: 0 5.33333vw; }
      #contact .contact-box .text {
        margin-bottom: 0.53333vw;
        font-size: 3.2vw; }
      #contact .contact-box .notice {
        font-size: 2.66667vw; }
      #contact .contact-box .tel-box {
        padding-top: 4.8vw;
        margin-bottom: 4vw; }
      #contact .contact-box .mail-box {
        padding-top: 3.73333vw; }
        #contact .contact-box .mail-box h4 {
          padding-right: 7.46667vw; }
      #contact .contact-box .tel-mail-box {
        padding: 20px 0; }
      #contact .contact-box .tel-mail-box h4 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
      #contact .contact-box .tel-mail-box h4 span {
        margin: 0 auto 10px auto; }
      #contact .contact-box .tel-mail-box h4 span img {
        height: auto; }
    #contact .certification {
      display: block;
      margin: -6.66667vw 0 0 0;
      padding: 0; }
      #contact .certification .item {
        -webkit-align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        margin: 6.66667vw 0 0 0;
        padding: 0 1.33333vw 0 5.86667vw; }
        #contact .certification .item .logo {
          width: 22vw;
          margin-right: 5.33333vw; }
        #contact .certification .item .text {
          width: 60vw;
          font-size: 3.2vw;
          line-height: 1.45; }
        #contact .certification .item:nth-child(4) .logo img._spOnly {
          width: 90%;
          display: inline-block; }
        #contact .certification .item:nth-child(5) .logo img._spOnly {
          width: 78%;
          display: inline-block; }
        #contact .certification .item:nth-child(6) .logo img._spOnly {
          width: 48%;
          display: inline-block; } }

/* footer
-----------------------*/
#footer {
  padding: 60px 0;
  border-top: 1px solid #000000; }
  #footer .banner {
    display: -webkit-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 55px; }
    #footer .banner::after {
      content: "";
      display: block;
      width: 200px;
      margin: 0 15px; }
    #footer .banner h2 {
      width: 200px;
      margin: 0 15px;
      color: #f68d31;
      font-size: 2.4rem;
      font-weight: 300;
      text-align: right; }
    #footer .banner ul {
      display: -webkit-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      #footer .banner ul li {
        width: 214px;
        margin: 0 15px; }
  #footer .copyright {
    color: #f68d31;
    font-size: 2.4rem;
    font-weight: 300;
    text-align: right; }

@media screen and (max-width: 767px) {
  #footer {
    padding: 8vw 0; }
    #footer .banner {
      display: -webkit-flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-align-items: flex-start;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      padding: 0 2.66667vw;
      margin-bottom: 6.93333vw; }
      #footer .banner::after {
        display: none; }
      #footer .banner h2 {
        margin: -1.6vw 5.33333vw 0 0;
        width: auto;
        font-size: 5.6vw;
        text-align: left; }
      #footer .banner ul {
        display: block; }
        #footer .banner ul li {
          width: 58.66667vw;
          margin: 0 0 5.33333vw 0; }
    #footer .copyright {
      font-size: 3.2vw;
      text-align: center; } }
