.access-desc {
  font-size: calc((13*2/750)*100vw);
  line-height: 1.75;
  margin: 0 auto calc((50*2/750)*100vw);
}

@media screen and (min-width: 768px), print {
  .access-desc {
    font-size: 13px;
    text-align: center;
    margin-bottom: min(calc((60/1280)*100vw), 60px);
  }
}

.access-nav ul {
  margin: 0;
}

@media screen and (min-width: 768px), print {
  .access-nav ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: min(calc((1028/1280)*100vw), 1028px);
    margin: 0 auto;
  }
}

.access-nav ul li {
  margin: 0 0 calc((20*2/750)*100vw);
}

@media screen and (min-width: 768px), print {
  .access-nav ul li {
    width: min(calc((298/1280)*100vw), 298px);
    margin-bottom: min(calc((30/1280)*100vw), 30px);
  }
}

.access-nav ul a {
  display: block;
  font-size: calc((13*2/750)*100vw);
  text-align: center;
  line-height: 1;
  padding: calc((25*2/750)*100vw);
  background-color: #fff;
}

@media screen and (min-width: 768px), print {
  .access-nav ul a {
    font-size: 13px;
    padding: min(calc((23/1280)*100vw), 23px) 0;
  }
}

@media screen and (min-width: 1000px) {
  .access-nav ul a {
    font-size: 16px;
  }
}

/* 採用ページ全体：各見出し別SECTION */
.access-sec {
  padding: calc((60*2/750)*100vw) 0 0;
  width: 70%;
  margin: auto;
}

@media screen and (min-width: 768px), print {
  .access-sec {
    padding-top: min(calc((60/1280)*100vw), 60px);
  }
}

@media screen and (max-width: 968px), print {
  .access-sec {
    width: 90%;
  }
}

.access-desc {
  font-size: calc((13*2/750)*100vw);
  line-height: 1.75;
  margin: 0 auto calc((50*2/750)*100vw);
}

@media screen and (min-width: 768px), print {
  .access-desc {
    font-size: 13px;
    text-align: center;
    margin-bottom: min(calc((60/1280)*100vw), 60px);
  }
}

.access-nav ul {
  margin: 0;
}

@media screen and (min-width: 768px), print {
  .access-nav ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: min(calc((1028/1280)*100vw), 1028px);
    margin: 0 auto;
  }
}

.access-nav ul li {
  margin: 0 0 calc((20*2/750)*100vw);
}

@media screen and (min-width: 768px), print {
  .access-nav ul li {
    width: min(calc((298/1280)*100vw), 298px);
    margin-bottom: min(calc((30/1280)*100vw), 30px);
  }
}

.access-nav ul a {
  display: block;
  font-size: calc((13*2/750)*100vw);
  text-align: center;
  line-height: 1;
  padding: calc((25*2/750)*100vw);
  background-color: #fff;
}

@media screen and (min-width: 768px), print {
  .access-nav ul a {
    font-size: 13px;
    padding: min(calc((23/1280)*100vw), 23px) 0;
  }
}

@media screen and (min-width: 1000px) {
  .access-nav ul a {
    font-size: 16px;
  }
}

/* ページ全体：各見出し別SECTION */
.access-sec {
  padding: calc((60*2/750)*100vw) 0 0;
  width: 70%;
  margin: auto;
}

@media screen and (min-width: 768px), print {
  .access-sec {
    padding-top: min(calc((60/1280)*100vw), 60px);
  }
}

@media screen and (max-width: 968px), print {
  .access-sec {
    width: 90%;
  }
}

/* H2見出し */
.access-heading {
  color: #9F887F;
  font-size: calc((14*2/750)*100vw);
  font-weight: bold;
  margin: 0 0 calc((10*2/750)*100vw);
  border-bottom: 1px solid #D3D3D3;
}

@media screen and (min-width: 768px), print {
  .access-heading {
    font-size: 16px;
    margin-bottom: min(calc((15/1280)*100vw), 15px);
  }
}

/* ページ全体：案内DIV */
.access-directions-container {
  position: relative;
  max-width: 80vw;
  margin-bottom: 100px;
}
@media screen and (min-width: 768px), print {
  .access-directions-container {
    display: flex;
    font-size: 16px;
    max-width: 750px;
  }
}
/* 案内：矢印 */
.access-directions-container::after {
  content: "";
  display: block;
  position: absolute;
  width: 50px;
  height: 50px;
  margin: 0 125px;
  background-image: url('../img/access/access-arrow-down.png');
  background-size: contain;
  bottom: -80px;
}
@media screen and (min-width: 768px), print {
  .access-directions-container::after {
    width: 70px;
    height: 70px;
    margin: 0 140px;
  }
}

.access-sec .access-directions-container:last-child::after {
  background-image: none;
}
.access-sec .access-directions-no-arrow::after {
  content: none;
}

.direction-img {
  width: 100%;
}
.direction-text {
  width: 100%;
}
@media screen and (min-width: 768px), print {
  .direction-text {
    margin: 20px 0;
  }
  .access-direction-text-area {
    margin-left: 100px;
  }
  .direction-img {
    width: 350px;
  }
}

.access-howget-area {
  font-size: 14px;
  margin-bottom: 50px;
}
.access-howget-area .access-howget-heading {
  font-size: 16px;
  font-weight: bold;
  border-bottom: 2px dashed;
  padding-bottom: 5px;
}
@media screen and (min-width: 768px), print {
  .access-howget-area {
    font-size: 15px;
  }
  .access-howget-area .access-howget-heading {
    font-size: 17px;
  }
}

/* 詳細内リスト */
.list-style-circle {
  list-style: none;
  padding-left: 15px;
}

/* 詳細内リストの点 */
.list-style-circle:before {
  content: '';
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #AFA4A5;
  margin-left: -10px;
  margin-top: 8px;
}
.access-contact-tel-area {
  color: #9F887F;
}
.access-contact-tel-area .access-contact-tel {
  color: #222;
}
@media screen and (min-width: 768px), print {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

.access-link-arrow {
  position: relative;
  display: inline-block;
  padding: 0 40px 10px 0;
}
.access-link-arrow:after {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 2px #222;
  border-right: solid 2px #222;
  transform: rotate(45deg);
  position: absolute;
  top: -7px;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.access-link-arrow:hover:after {
  border-top: solid 2px #CBBAAF;
  border-right: solid 2px #CBBAAF;
}

.access-table {
  margin: 0 auto calc((60/1280)*100vw);
  border: 1px solid #EADEDF;
  width: 100%;
  font-size: 13px;
}

.access-table:last-child {
  margin: 0 auto;
}

.access-table th, td {
  border: none;
}

.access-table thead {
  border: none;
  color: #9F887F;
  background-color: #EADEDF;
}

.access-table thead th {
  padding: 5px;
}

.access-table tbody {
  color: #9F887F;
  background-color: #EFEFEF;
}

.access-table tbody th, td {
  padding: 0 10px 15px;
  vertical-align: top;
}

.access-table tbody tr:first-child > * {
  padding-top: 15px;
}

.access-table tbody th {
  width: 20%;
}

.access-table tbody td {
  width: 60%;
  color: #000;
  padding-left: 10px;
}

.access-table ul {
  margin-top: 0;
}

/* 業務内容 */
.job-description {
  margin-top: 0;
}


/* 給与：手当一覧 */
.allowance-list {
  margin: 5px 10px !important;
  display: block;
}

/* 給与：モデル月収エリア */
.example-income-area {
  margin: 5px 0;
}

/* 給与：モデル月収見出し */
.example-income-area .example-income-header {
  display: inline-block;
  border-bottom: dotted 3px #AFA4A5;
  padding: 0 5px;
  margin-bottom: 5px;
}

/* 給与：モデル月収リスト */
.example-income-area .example-income {
  list-style: none;
  padding-left: 15px;
}

/* 給与：モデル月収リストの点 */
.example-income-area .example-income:before {
  content: '';
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #AFA4A5;
  margin-left: -10px;
  margin-top: 8px;
}

/* エントリー */
.entry-area {
  width: 100%;
}

/* エントリー：エントリーするボタン */
.entry-button {
  display: block;
  width: min(calc((600/1280)*100vw), 250px);
  line-height: 2;
  background-color: #AFA4A5;
  color: #FFF;
  margin: auto;
  margin-top: 15px;
  padding: min(calc((15/1280)*100vw), 15px) min(calc((20/1280)*100vw), 20px);
  border-radius: min(calc((50/1280)*100vw), 50px);
  text-align: center;
  position: relative;
  z-index: 1;
  transition: .3s;
  overflow: hidden;
}

@media screen and (min-width: 968px), print {
  .entry-button {
    font-size: min(calc((20/1280)*100vw), 20px);
  }
}

.entry-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #CBBAAF;
  transform-origin: 0 50%;
  transform: scaleX(0);
  transition: transform ease .3s;
  margin-right: 5%;
  border-radius: min(calc((50/1280)*100vw), 50px);
}

@media screen and (max-width: 968px), print {
  .entry-button::before {
    vertical-align: middle;
  }
}

a.entry-button:hover {
  color: #FFF !important;
}

a.entry-button:hover:before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.entry-button .contact-img {
  margin-right: 5px;
  vertical-align: middle;
  width: max(calc((19/1280)*100vw), 19px);
  height: max(calc((19/1280)*100vw), 19px)
}

/* エントリー：各手順エリア */
.entry-flow {
  display: block;
  position: relative;
  background-color: #EADEDF;
  border: 1px solid #AFA4A5;
  color: #9F887F;
  width: 90%;
  margin: 0 auto 80px;
  border-radius: 20px ;
  padding: 20px;
}

/* エントリー：下向き三角 */
.entry-flow::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 90px 0 90px;
  border-color: #EADEDF transparent transparent transparent;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -75px;
}

.entry-flow:last-child::after {
  content: "";
  border: none;
}

/* エントリー：手順見出し */
.entry-flow-step {
  color: #404040;
  font-size: 16px;
  font-weight: bold;
}

/* エントリー：手順内容 */
.entry-flow-step-content {
  color: #404040;
  font-size: 13px;
  padding-left: 10px;
}

/* 募集停止案内エリア */
.hiring-freeze-info-area {
  position: fixed;
  background: #fff;
  box-shadow: 0 0 2px 2px rgba( 0, 0, 0, .1 );
  text-align: center;
  width: 650px;
  top: 300px;
  left: 50%;
  transform: translateX( -50% );
  padding: 50px;
  z-index: 9999;
}

/* 募集停止案内：見出し */
.hiring-freeze-info-area .hiring-freeze-topic {
  border-bottom: dotted 3px #AFA4A5;
  padding: 5px 10px;
  color: #404040;
  font-size: 16px;
  font-weight: bold;
}

/* 募集停止案内：案内文 */
.hiring-freeze-info-area .hiring-freeze-txt {
  padding-top: 20px;
  text-align: left;
  color: #404040;
  font-size: 13px;
}