@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho+B1:wght@700&display=swap");
/*
  This mixin can be used to set the object-fit:
  @include object-fit(contain);

  or object-fit and object-position:
  @include object-fit(cover, top);
*/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
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;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

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

body {
  line-height: 1;
}

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;
}

button {
  border: none;
}

body {
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  color: #181818;
}
body * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
body img {
  max-width: 100%;
  vertical-align: bottom;
}
body a {
  text-decoration: none;
  color: #181818;
}
body a:hover {
  opacity: 0.8;
}
body strong {
  font-weight: 600;
}

html {
  scroll-behavior: smooth;
}

.common__heading_h2 {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: bold;
  font-size: 40px;
  line-height: 1.3;
  letter-spacing: 0;
  display: block;
  text-align: center;
}
@media (max-width: 63.9375em) {
  .common__heading_h2 {
    font-size: 28px;
  }
}

.common__heading_h2_en {
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: 0px;
  margin-bottom: 16px;
  font-family: "Times New Roman", serif;
  display: block;
  text-align: center;
  color: #ffd063;
}
@media (max-width: 63.9375em) {
  .common__heading_h2_en {
    margin-bottom: 12px;
    font-size: 20px;
  }
}

.common__letter_L {
  font-size: 26px;
  line-height: 1.5;
  font-family: "Shippori Mincho B1", serif;
}
@media (max-width: 63.9375em) {
  .common__letter_L {
    font-size: 20px;
  }
}

.common__letter_M {
  font-size: 22px;
  line-height: 1.3;
  font-family: "Shippori Mincho B1", serif;
}
@media (max-width: 63.9375em) {
  .common__letter_M {
    font-size: 16px;
  }
}

.common__center {
  text-align: center;
}

.common__bold {
  font-weight: 600;
}

.common__title {
  font-size: 24px;
  line-height: 1.4;
  font-weight: 600;
}

.common__title__S {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 600;
}

.common__text__S {
  font-size: 15px;
  line-height: 2;
}

.common__text__SM {
  font-size: 15px;
  line-height: 1.5;
}

.common__text__M {
  font-size: 16px;
  line-height: 2;
}

.common__text__MS {
  font-size: 16px;
  line-height: 1.6;
}

.common__sectionBorder {
  border-top: 12px solid #cda420;
}

.a_button {
  display: block;
  color: #181818;
  font-weight: 700;
  font-family: "Shippori Mincho B1", serif;
  background: -webkit-gradient(linear, left top, right top, from(#ffeaa8), to(#cda420));
  background: linear-gradient(90deg, #ffeaa8 0%, #cda420 100%);
  border-radius: 4px;
  padding: 16px 64px 16px 24px;
  text-align: center;
  font-size: 20px;
  position: relative;
  line-height: 1.4;
}
@media (max-width: 63.9375em) {
  .a_button {
    font-size: 16px;
  }
}
.a_button::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 40px;
  display: block;
  height: 40px;
  background-image: url("../../assets/images/arrow-circle.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 1;
}
.a_button.-shizuoka {
  background: #5b0105;
  color: #fff;
}
.a_button.-yamanashi {
  background: #004b8c;
  color: #fff;
}
.a_button.-nagano {
  background: #004c31;
  color: #fff;
}

.a_button__text {
  text-align: center;
  width: 100%;
  display: block;
}

.a_heading {
  position: relative;
}

.a_heading__subtitle {
  font-size: 26px;
  padding-top: 4px;
  padding-bottom: 6px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  display: block;
  border: 2px solid #ec667a;
  max-width: 600px;
  width: 100%;
  margin: 72px auto 0;
}
@media (max-width: 67.4375em) {
  .a_heading__subtitle {
    font-size: 22px;
    padding-left: 18px;
    padding-right: 18px;
    margin-top: 56px;
  }
}

.a_heading__title {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 54px;
  color: #ec667a;
  font-weight: 600;
  line-height: 1.4;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
.a_heading__title span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (max-width: 67.4375em) {
  .a_heading__title {
    font-size: 34px;
  }
}

.a_heading__quote.-left {
  margin-right: 4px;
}
.a_heading__quote.-right {
  margin-left: 4px;
}

.m_careerTable {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
@media (max-width: 48em) {
  .m_careerTable {
    width: 732px;
  }
}
.m_careerTable__th {
  padding: 20px 0px;
  color: #fff;
  font-size: 26px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  border-right: 2px solid #a6a6a6;
  border-top: 2px solid #a6a6a6;
}
@media (max-width: 63.9375em) {
  .m_careerTable__th {
    font-size: 20px;
  }
}
.m_careerTable__th:first-child {
  border-left: 2px solid #a6a6a6;
}
.m_careerTable__th--label {
  background: #403f3f;
  width: 16%;
}
.m_careerTable__th--shizuoka {
  background: #7d001a;
}
.m_careerTable__th--yamanashi {
  background: #0072ba;
}
.m_careerTable__th--nagano {
  background: #008f79;
}

.m_careerTable__row {
  border-top: 2px solid #a6a6a6;
}
.m_careerTable__row:last-child {
  border-bottom: 2px solid #a6a6a6;
}

.m_careerTable__rowLabel {
  padding: 20px 16px;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  border-right: 2px solid #a6a6a6;
  border-left: 2px solid #a6a6a6;
}

.m_careerTable__td {
  padding: 20px 20px;
  font-size: 15px;
  line-height: 1.8;
  vertical-align: top;
  border-right: 2px solid #a6a6a6;
}
.m_careerTable__td.-shizuoka {
  background-color: #fff3f5;
}
.m_careerTable__td.-yamanashi {
  background-color: #eaf6fd;
}
.m_careerTable__td.-nagano {
  background-color: #eaf6f5;
}

.m_careerTable__catch {
  display: block;
  font-weight: 700;
}

.m-hamburger {
  width: 30px;
  height: 30px;
  position: relative;
  cursor: pointer;
}
.m-hamburger > span {
  top: 50%;
}
.m-hamburger::before, .m-hamburger::after,
.m-hamburger > span {
  content: "";
  width: 30px;
  height: 3px;
  display: block;
  position: absolute;
  background-color: #ec667a;
  left: 0%;
}
.m-hamburger::before {
  top: calc(50% + 10px);
  width: 10px;
}
.m-hamburger::after {
  top: calc(50% - 10px);
}
.m-hamburger > span {
  width: 20px;
}

.m-hamburger.is-open > span {
  background-color: transparent;
  width: 30px;
}
.m-hamburger.is-open::before, .m-hamburger.is-open::after {
  top: 50%;
  width: 30px;
}
.m-hamburger.is-open::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.m-hamburger.is-open::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.m-jobCard {
  max-width: 100%;
  background-color: #fff;
  display: block;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.m-jobCard__thumb img {
  width: 100%;
}

.m-jobCard__info {
  padding: 20px 20px;
  position: relative;
}

.m-jobCard__tag {
  padding: 6px 7px;
  display: inline-block;
  font-size: 14px;
  margin-bottom: 10px;
  min-width: 64px;
  text-align: center;
  color: #fff;
  font-weight: 400;
}
.m-jobCard__tag.-employee {
  background-color: #44474a;
}
.m-jobCard__tag.-secondary {
  background-color: #ec667a;
}

.m-jobCard__title {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 12px;
  font-weight: 400;
}

.m-jobCard__description {
  font-size: 18px;
  line-height: 1.5;
  max-height: 81px;
  overflow-y: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.m-jobCard__detail {
  padding-top: 12px;
}

.m-jobCard__detailItem {
  position: relative;
  font-size: 14px;
  line-height: 1.7;
  display: block;
}

.m-jobCard__linkText {
  position: absolute;
  right: 8px;
  bottom: 8px;
  color: #333;
  font-size: 16px;
  font-weight: 400;
  padding-right: 32px;
  display: block;
}
@media (max-width: 48em) {
  .m-jobCard__linkText {
    font-size: 14px;
    right: 0;
  }
}
.m-jobCard__linkText::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-top: 2px solid #333;
  border-right: 2px solid #333;
}

.m-jobOfferCard {
  display: block;
  background-color: #fff;
  position: relative;
  width: 100%;
}
.m-jobOfferCard * {
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}
.m-jobOfferCard .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 8px;
  position: inherit;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 0;
  padding: 20px;
}
@media (min-width: 64em) {
  .m-jobOfferCard .row {
    padding: 20px 32px;
  }
}
.m-jobOfferCard[href] {
  cursor: pointer;
}

.m-jobOfferCard__recruitmentEnd {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 2;
  pointer-events: none;
}
.m-jobOfferCard__recruitmentEnd > .message {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px;
  letter-spacing: 0.2em;
  width: 100%;
  text-align: center;
}

.m-jobOfferCard__company {
  width: 100%;
  position: relative;
  color: #181818;
  font-size: 17px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 8px;
  display: block;
}
@media (min-width: 64em) {
  .m-jobOfferCard__company {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    line-height: 1.5;
    font-size: 18px;
  }
}

.m-jobOfferCard__image {
  width: 100%;
  height: 185px;
  margin-right: 6px;
  overflow: hidden;
}
.m-jobOfferCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
}
@media (min-width: 48.0625em) {
  .m-jobOfferCard__image {
    width: 100%;
    height: 185px;
    margin-right: 0;
  }
}

.m-jobOfferCard__title {
  color: #181818;
  font-weight: bold;
  margin-bottom: 16px;
  display: block;
  font-size: 17px;
  line-height: 1.3;
  max-height: 66.3px;
  overflow-y: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
@media (min-width: 64em) {
  .m-jobOfferCard__title {
    font-size: 18px;
    line-height: 1.5;
    max-height: 81px;
    overflow-y: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}

.m-jobOfferCard__body {
  width: 100%;
  padding-top: 16px;
  border-top: 1px solid #f1f1f1;
}
.m-jobOfferCard__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.m-jobOfferCard__meta p {
  color: #777;
  font-size: 16px;
  line-height: 1.6;
  margin-top: 6px;
  padding-left: 20px;
  position: relative;
}
@media (min-width: 48.0625em) {
  .m-jobOfferCard__meta p {
    font-size: 14px;
  }
}
.m-jobOfferCard__meta p:before {
  position: absolute;
  top: 4px;
  left: 0;
  content: "";
  display: block;
}
.m-jobOfferCard__meta p:first-child {
  width: 100%;
  margin-top: 0;
}
@media (min-width: 48.0625em) {
  .m-jobOfferCard__meta p:first-child {
    margin-top: 0;
  }
}
.m-jobOfferCard__meta p:first-child:before {
  width: 16px;
  height: 16px;
  background: url(../images/ico_job.svg) center center no-repeat;
  background-size: contain;
}
.m-jobOfferCard__meta p:nth-child(2) {
  width: 100%;
  margin-top: 6px;
  width: 74px;
}
.m-jobOfferCard__meta p:nth-child(2):before {
  background: url(../images/ico_area.svg) center center no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  left: -1px;
}
.m-jobOfferCard__meta p:nth-child(3) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 6px;
  min-width: 0;
  width: calc(100% - 100px);
}
.m-jobOfferCard__meta p:nth-child(3):before {
  background: url(../images/ico_money.svg) center center no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
}

.m-jobOfferCard .m-jobOfferCard__employeeTag {
  position: absolute;
  top: -14px;
  right: 19px;
  color: #181818;
  padding: 6px 12px;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 700;
}
.m-jobOfferCard .m-jobOfferCard__employeeTag.-sidejob {
  color: #fff;
  background: #414040;
}
.m-jobOfferCard .m-jobOfferCard__employeeTag.-employee {
  background: -webkit-gradient(linear, left top, right top, from(#ffeaa8), to(#cda420));
  background: linear-gradient(90deg, #ffeaa8 0%, #cda420 100%);
}
.m-jobOfferCard.-hiring:hover {
  opacity: 0.8;
}
.m_storyItem {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 63.9375em) {
  .m_storyItem {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.m_storyItem.-shizuoka {
  background: linear-gradient(317.7deg, #ac001f -0.01%, #7d001a 46.7%);
}
.m_storyItem.-shizuoka .m_storyItem__meta_pref {
  color: #5b0105;
}
.m_storyItem.-shizuoka .m_storyItem__text::before {
  background: url(../images/sct-story-shizuoka-img02.png) center center no-repeat;
}
.m_storyItem.-yamanashi {
  background: linear-gradient(317.7deg, #0494e3 -0.01%, #0076b6 46.7%);
}
.m_storyItem.-yamanashi .m_storyItem__meta_pref {
  color: #004b8c;
}
.m_storyItem.-yamanashi .m_storyItem__text::before {
  background: url(../images/sct-story-yamanashi-img02.png) center center no-repeat;
}
.m_storyItem.-nagano {
  background: linear-gradient(317.7deg, #00b68d -0.01%, #008f79 46.7%);
}
.m_storyItem.-nagano .m_storyItem__meta_pref {
  color: #004c31;
}
.m_storyItem.-nagano .m_storyItem__text::before {
  background: url(../images/sct-story-nagano-img02.png) center center no-repeat;
}

.m_storyItem__inner {
  max-width: 1600px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 80px;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .m_storyItem__inner {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .m_storyItem__inner {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .m_storyItem__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
}
@media (min-width: 64em) {
  .m_storyItem__inner > * {
    width: 100%;
  }
}

.m_storyItem__content {
  color: #fff;
}

.m_storyItem__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}

.m_storyItem__meta_pref {
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
  padding: 6px 12px;
  background-color: #fff;
  color: #000;
}

.m_storyItem__meta_name {
  font-size: 22px;
  line-height: 1.3;
  font-family: "Shippori Mincho B1", serif;
}
@media (max-width: 63.9375em) {
  .m_storyItem__meta_name {
    font-size: 16px;
  }
}

.m_storyItem__heading {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: bold;
  font-size: 26px;
  line-height: 1.3;
  letter-spacing: 0;
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #fff;
}
@media (max-width: 63.9375em) {
  .m_storyItem__heading {
    font-size: 18px;
  }
}
@media (max-width: 63.9375em) {
  .m_storyItem__heading {
    margin-bottom: 20px;
  }
}

.m_storyItem__text {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 40px;
  position: relative;
}
@media (max-width: 63.9375em) {
  .m_storyItem__text {
    font-size: 15px;
  }
}
.m_storyItem__text::before {
  content: "";
  position: absolute;
  right: -20px;
  bottom: -30px;
  display: block;
  background-size: contain !important;
  width: 200px;
  height: 200px;
}
@media (min-width: 64em) {
  .m_storyItem__text::before {
    width: 367px;
    height: 367px;
    bottom: -140px;
    right: -110px;
  }
}
@media (max-width: 63.9375em) {
  .m_storyItem__text {
    margin-bottom: 24px;
  }
}

.m_storyItem__link {
  max-width: 280px;
}
@media (max-width: 63.9375em) {
  .m_storyItem__link {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
}

.o_about__heading {
  padding-top: 40px;
  padding-bottom: 48px;
  color: #fff;
  background: linear-gradient(294.18deg, #5a5858 -0.01%, #181818 84.45%);
  position: relative;
}
.o_about__heading::before {
  content: "";
  position: absolute;
  bottom: -28px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 28px 24px 0 24px;
  border-color: #414040 transparent transparent transparent;
}

.o_about__headingInner {
  max-width: 1440px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_about__headingInner {
    max-width: 1320px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_about__headingInner {
    max-width: 1280px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_about__content {
  padding-top: 128px;
  padding-bottom: 120px;
  max-width: 1600px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_about__content {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_about__content {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .o_about__content {
    padding-top: 92px;
    padding-bottom: 64px;
  }
}

.o_about__contentItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 64px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 63.9375em) {
  .o_about__contentItem {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.o_about__contentItem_img {
  max-width: 440px;
}
@media (min-width: 64em) {
  .o_about__contentItem_img {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 440px;
            flex: 0 0 440px;
    max-width: 440px;
    width: 100%;
  }
}

.o_about__contentItem_text {
  font-size: 22px;
  line-height: 1.8;
  font-weight: 700;
}
@media (max-width: 63.9375em) {
  .o_about__contentItem_text {
    font-size: 18px;
  }
}

.o_access {
  position: relative;
  height: 420px;
}

.o_access__images {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}
@media (max-width: 48em) {
  .o_access__images {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media (max-width: 48em) {
  .o_access__imageItem {
    height: 140px;
    width: 100%;
  }
}
@media (min-width: 48.0625em) {
  .o_access__imageItem {
    width: calc(100% / 3);
    height: 100%;
  }
}
.o_access__imageItem img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o_access__inner {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  max-width: 1520px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_access__inner {
    max-width: 1400px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_access__inner {
    max-width: 1360px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_access__heading {
  margin-bottom: 24px;
}

.o_access__content {
  font-size: 16px;
  line-height: 2;
}
@media (max-width: 63.9375em) {
  .o_access__content {
    font-size: 15px;
  }
}
@media (max-width: 48em) {
  .o_access__content {
    max-width: 336px;
    margin-left: auto;
    margin-right: auto;
  }
}

.o_career {
  padding-top: 160px;
  padding-bottom: 160px;
}
@media (max-width: 63.9375em) {
  .o_career {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.o_career__heading {
  margin-bottom: 106px;
  max-width: 1600px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_career__heading {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_career__heading {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .o_career__heading {
    margin-bottom: 24px;
  }
}

@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_career__content {
    max-width: 800px;
  }
}
@media (min-width: 48.0625em) {
  .o_career__content {
    max-width: 1800px;
    padding-right: 100px;
    padding-left: 100px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 48.0625em) and (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_career__content {
    max-width: 1680px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (min-width: 48.0625em) and (max-width: 48em) {
  .o_career__content {
    max-width: 1640px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_career__contentText {
  font-size: 16px;
  line-height: 2;
  text-align: center;
  margin-bottom: 80px;
}
@media (max-width: 63.9375em) {
  .o_career__contentText {
    font-size: 15px;
  }
}
@media (max-width: 48em) {
  .o_career__contentText {
    max-width: 1600px;
    padding-right: 100px;
    padding-left: 100px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (max-width: 48em) and (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_career__contentText {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) and (max-width: 48em) {
  .o_career__contentText {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .o_career__contentText {
    margin-bottom: 64px;
    text-align: left;
  }
}

@media (max-width: 48em) {
  .o_career__tableWrapper {
    margin-left: max(calc((100vw - 480px) / 2), 16px);
  }
}

.o_career__table {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 48em) {
  .o_career__table {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #999 #f0f0f0;
  }
  .o_career__table::-webkit-scrollbar {
    height: 6px;
  }
  .o_career__table::-webkit-scrollbar-track {
    background: #f0f0f0;
  }
  .o_career__table::-webkit-scrollbar-thumb {
    background: #999;
    border-radius: 3px;
  }
}

.o_career__banner {
  margin-top: 160px;
  max-width: 1440px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
  max-width: 1440px;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_career__banner {
    max-width: 1320px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_career__banner {
    max-width: 1280px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .o_career__banner {
    margin-top: 100px;
  }
}
.o_career__banner img {
  width: 100%;
}

.o_footer {
  background: linear-gradient(294.18deg, #5a5858 -0.01%, #181818 84.45%);
  padding: 60px 0 80px;
}

.o_footer__inner {
  max-width: 1520px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_footer__inner {
    max-width: 1400px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_footer__inner {
    max-width: 1360px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_footer__cv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  max-width: 840px;
  margin: 0 auto;
}
@media (max-width: 48em) {
  .o_footer__cv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 63.9375em) {
  .o_footer__cv {
    gap: 16px;
  }
}

.o_footer__text {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: bold;
  font-size: 26px;
  line-height: 1.3;
  letter-spacing: 0;
  text-align: center;
  margin-bottom: 40px;
  line-height: 1.5;
  color: #fff;
}
@media (max-width: 63.9375em) {
  .o_footer__text {
    font-size: 20px;
  }
}

.o_footer__cvButton {
  width: 100%;
}

.o_footer__small {
  display: block;
  text-align: center;
  font-size: 14px;
  color: #fff;
  margin-top: 40px;
}

.o_footer__heading {
  max-width: 305px;
  margin: 64px auto 0;
}
@media (max-width: 63.9375em) {
  .o_footer__heading {
    margin-top: 40px;
  }
}
.o_footer__heading img {
  width: 100%;
}

.o_footer__banner {
  max-width: 468px;
  margin: 64px auto 0;
}
.o_footer__banner:hover {
  opacity: 0.8;
}
@media (max-width: 63.9375em) {
  .o_footer__banner {
    margin: 40px auto 0;
  }
}
.o_footer__banner a {
  display: block;
}
.o_footer__banner a img {
  width: 100%;
}

.o_header {
  -webkit-box-shadow: 0px 2px 4px 0px #0000001a;
          box-shadow: 0px 2px 4px 0px #0000001a;
}
@media (min-width: 64em) {
  .o_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    background-color: #fff;
    height: 72px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 63.9375em) {
  .o_header {
    position: fixed;
    z-index: 100;
    width: 100%;
    top: 0;
    left: 0;
    height: 54px;
    background-color: #fff;
  }
  .o_header.is-open .o_header__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.o_header__logo {
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  height: 100%;
}
@media (min-width: 64em) {
  .o_header__logo {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 196px;
            flex: 0 0 196px;
    max-width: 196px;
    width: 100%;
  }
}
@media (max-width: 63.9375em) {
  .o_header__logo {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 152px;
            flex: 0 0 152px;
    max-width: 152px;
    width: 100%;
    margin-left: 12px;
    font-size: 15px;
  }
}

.o_header__logoImg {
  margin-right: 16px;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.o_header__logoText {
  font-weight: 400;
}

@media (min-width: 64em) {
  .o_header__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 30px;
    padding-right: 15px;
  }
}
@media (max-width: 63.9375em) {
  .o_header__inner {
    background-color: #fff;
    margin-left: 0;
    position: relative;
    height: 54px;
  }
}

@media (min-width: 64em) {
  .o_header__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    width: 100%;
  }
}
@media (max-width: 63.9375em) {
  .o_header__nav {
    display: none;
    position: absolute;
    top: 54px;
    left: 0;
    width: 100%;
    background-color: #00000099;
    height: calc(100dvh - px($header_height_sp));
  }
  .o_header__nav.is-open {
    display: block;
    width: 100%;
  }
}

@media (min-width: 64em) {
  .o_header__navItem {
    margin-right: 32px;
  }
  .o_header__navItem:last-child {
    margin-right: 0;
  }
}
@media (max-width: 63.9375em) {
  .o_header__navItem {
    border-top: 1px solid #fff;
  }
  .o_header__navItem:last-child {
    border-bottom: 1px solid #fff;
  }
}

@media (max-width: 63.9375em) {
  .o_header__navList {
    padding-top: 56px;
    width: 100%;
    max-width: 604px;
    padding-left: 22px;
    padding-right: 22px;
    margin: 0 auto;
    padding-bottom: 48px;
    text-align: center;
  }
}
@media (min-width: 64em) {
  .o_header__navList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.o_header__navList a {
  font-weight: normal;
  font-size: 14px;
  line-height: 1.4;
  position: relative;
  display: block;
}
@media (max-width: 63.9375em) {
  .o_header__navList {
    background-color: #fff;
  }
  .o_header__navList a {
    color: #000;
    padding: 18px 0;
    display: block;
    position: relative;
    font-size: 18px;
  }
  .o_header__navList a::before {
    content: "";
    position: absolute;
    background-image: url(../images/icon_arrow.svg);
    width: 14px;
    height: 14px;
    background-repeat: no-repeat;
    background-position: contain;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media (max-width: 63.9375em) {
  .o_header__hamburger {
    position: absolute;
    right: 16px;
    top: 12px;
  }
}
@media (min-width: 64em) {
  .o_header__hamburger {
    display: none;
  }
}

.o_header__button {
  position: absolute;
  right: 0;
  top: 0;
  width: 200px;
  height: 100%;
}
.o_header__button a {
  padding-right: 16px;
}
@media (max-width: 63.9375em) {
  .o_header__button {
    display: none;
  }
}

.o_header__buttonInNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 40px;
}
@media (min-width: 64em) {
  .o_header__buttonInNav {
    display: none;
  }
}

.o_header__cv {
  position: relative;
  border-radius: 24px;
  background-color: #f09800;
  display: block;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 220px;
          flex: 0 0 220px;
  max-width: 220px;
  width: 100%;
  max-width: 100%;
  height: 48px;
  margin-left: 40px;
}
@media (max-width: 63.9375em) {
  .o_header__cv {
    display: none;
  }
}

.o_header__cvText {
  display: block;
  font-size: 15px;
  color: #fff;
  height: 100%;
  position: absolute;
  left: calc(50% - 6px);
  top: calc(50% - 1px);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 400;
}
@media (max-width: 63.9375em) {
  .o_header__cvText {
    font-size: 18px;
  }
}

.o_header__cvIcon {
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.o_job {
  padding-top: 120px;
  padding-bottom: 120px;
  position: relative;
}
@media (max-width: 63.9375em) {
  .o_job {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.o_job::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1000px;
  z-index: -1;
  display: block;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_job::before {
    height: 1400px;
  }
}
@media (max-width: 48em) {
  .o_job::before {
    height: 1300px;
  }
}
.o_job::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background-color: #fff;
}
.o_job#sec-job-shizuoka::after {
  background-color: #fff3f5;
}
.o_job#sec-job-shizuoka::before {
  background-color: #7d001a;
}
.o_job#sec-job-yamanashi::before {
  background-color: #0072ba;
}
.o_job#sec-job-yamanashi::after {
  background-color: #eaf6fd;
}
.o_job#sec-job-nagano::before {
  background-color: #008f79;
}
.o_job#sec-job-nagano::after {
  background-color: #eaf6f5;
}

.o_job__headingWrapper {
  color: #fff;
  max-width: 1440px;
  margin: 0 auto;
  padding-bottom: 80px;
}
@media (max-width: 63.9375em) {
  .o_job__headingWrapper {
    padding-bottom: 64px;
  }
}

.o_job__headingInner {
  max-width: 600px;
  margin: 0 auto;
  color: #fff;
  text-align: center;
}
@media (max-width: 63.9375em) {
  .o_job__headingInner {
    max-width: 1000px;
    padding-right: 100px;
    padding-left: 100px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (max-width: 63.9375em) and (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_job__headingInner {
    max-width: 880px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 63.9375em) and (max-width: 48em) {
  .o_job__headingInner {
    max-width: 840px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_job__heading {
  padding-top: 83px;
  padding-bottom: 83px;
  margin-bottom: 40px;
  position: relative;
}
.o_job__heading::before, .o_job__heading::after {
  content: "";
  z-index: 2;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 282px;
  display: block;
  height: 33px;
  background: url(../images/sct-recruit-decoration.png) no-repeat center center/contain;
}
.o_job__heading::before {
  top: 0;
}
.o_job__heading::after {
  bottom: 0;
  -webkit-transform: translateX(-50%) rotate(180deg);
          transform: translateX(-50%) rotate(180deg);
}

.o_job__content {
  position: relative;
}

@media (max-width: 63.9375em) {
  .o_job__contentImage {
    padding-top: 50vw;
    position: relative;
    margin-bottom: 40px;
    position: relative;
    left: 50%;
    right: 50%;
    width: 100vw;
    margin-right: -50vw;
    margin-left: -50vw;
  }
}
@media (min-width: 64em) {
  .o_job__contentImage {
    position: relative;
    position: relative;
    left: 50%;
    right: 50%;
    width: 100vw;
    margin-right: -50vw;
    margin-left: -50vw;
  }
}

.o_job__contentImageItem {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 63.9375em) {
  .o_job__contentImageItem {
    top: 0;
    width: 50%;
    height: 100%;
  }
  .o_job__contentImageItem.-left {
    left: 0;
  }
  .o_job__contentImageItem.-right {
    right: 0;
  }
}
@media (min-width: 64em) {
  .o_job__contentImageItem {
    top: 50%;
    max-width: 364px;
    min-width: 304px;
    width: calc(364 / 1440 * 100vw);
  }
  .o_job__contentImageItem.-left {
    right: calc(50% + min(50%, 720px));
    -webkit-transform: translateY(-50%) translateX(100%);
            transform: translateY(-50%) translateX(100%);
  }
  .o_job__contentImageItem.-right {
    left: calc(50% + min(50%, 720px));
    -webkit-transform: translateY(-50%) translateX(-100%);
            transform: translateY(-50%) translateX(-100%);
  }
}

.o_job__contentHeading {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: bold;
  font-size: 32px;
  line-height: 1.3;
  letter-spacing: 0;
  margin-bottom: 24px;
}
@media (max-width: 63.9375em) {
  .o_job__contentHeading {
    font-size: 22px;
  }
}

.o_job__contentText {
  font-size: 16px;
  line-height: 2;
}
@media (max-width: 63.9375em) {
  .o_job__contentText {
    font-size: 15px;
  }
}
@media (max-width: 63.9375em) {
  .o_job__contentText {
    text-align: left;
  }
}

.o_job__inner {
  max-width: 1640px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_job__inner {
    max-width: 1520px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_job__inner {
    max-width: 1480px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_job__list {
  position: relative;
}
.o_job__list .swiper-pagination {
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
}
.o_job__list .swiper-pagination-bullet-active {
  background: #000;
}
.o_job__list .swiper-button-prev,
.o_job__list .swiper-button-next {
  color: #fff;
}

.o-jobOffer {
  position: relative;
}
.o-jobOffer * {
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}

.o-jobOfferHead {
  padding: 16px;
  margin-bottom: 24px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 48em) {
  .o-jobOfferHead {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o-jobOfferHead {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.o-jobOffer__types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 63.9375em) {
  .o-jobOffer__types {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.o-jobOffer__types::before {
  content: "絞り込み";
  line-height: 1.6;
  font-size: 16px;
}
@media (min-width: 64em) {
  .o-jobOffer__types::before {
    margin-right: 48px;
  }
}
@media (max-width: 63.9375em) {
  .o-jobOffer__types::before {
    width: 100%;
    margin-bottom: 10px;
    display: block;
  }
}

.o-jobOffer__type {
  margin-right: 10px;
}

.o-JobOffer__paged {
  text-align: center;
  line-height: 1.6;
  font-size: 16px;
}
@media (max-width: 63.9375em) {
  .o-JobOffer__paged {
    margin-top: 8px;
  }
}
@media (max-width: 48em) {
  .o-JobOffer__paged {
    text-align: left;
  }
}
@media (min-width: 48.0625em) {
  .o-JobOffer__paged {
    text-align: left;
    display: block;
    margin-top: 0;
    font-size: 16px;
  }
}

.o-jobOffer__typeButton {
  position: relative;
  padding-left: 32px;
  font-size: 17px;
  font-weight: 700;
  border: none;
  background-color: transparent;
}
@media (max-width: 48em) {
  .o-jobOffer__typeButton {
    font-size: 16px;
  }
}
.o-jobOffer__typeButton::before {
  content: "";
  width: 20px;
  height: 20px;
  background-color: #dddddd;
  border: 1px solid #a6a6a6;
  border-radius: 2px;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.o-jobOffer__typeButton[aria-selected=true] {
  border: none;
}
.o-jobOffer__typeButton[aria-selected=true]::before {
  background-color: #d72638;
}
.o-jobOffer__typeButton[aria-selected=true]::after {
  content: "";
  position: absolute;
  left: 4px;
  top: calc(50% - 2px);
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  width: 11px;
  height: 5px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
}

.o-jobOffer__filterForm {
  display: none;
  width: 255px;
  margin: 24px auto 0;
}
@media (min-width: 48.0625em) {
  .o-jobOffer__filterForm {
    margin: 25px auto 0;
    display: none;
    width: auto;
  }
}
@media (min-width: 48.0625em) {
  .o-jobOffer__filterForm .title {
    font-size: 1.25rem;
  }
}
.o-jobOffer__filterForm .title:after {
  display: inline-block;
  content: "";
  width: 18px;
  height: 1px;
  background-color: #333;
  margin: 0 14px 0 5px;
}
@media (min-width: 48.0625em) {
  .o-jobOffer__filterForm .title:after {
    width: 32px;
  }
}
@media (min-width: 48.0625em) {
  .o-jobOffer__filterForm li {
    font-size: 1.125rem;
  }
}

.m-jobOfferFilterConditionForm {
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.m-jobOfferFilterConditionForm li {
  margin-top: 10px;
}
@media (min-width: 48.0625em) {
  .m-jobOfferFilterConditionForm {
    margin-top: 0;
  }
  .m-jobOfferFilterConditionForm li {
    margin-top: 0;
  }
}
.m-jobOfferFilterConditionForm .a-baseInput__label {
  cursor: pointer;
  display: block;
  position: relative;
  padding-left: 22px;
  margin-right: 14px;
}
@media (min-width: 48.0625em) {
  .m-jobOfferFilterConditionForm .a-baseInput__label {
    padding-left: 28px;
  }
}
.m-jobOfferFilterConditionForm .a-baseInput__label:before {
  content: "";
  display: block;
  height: 14px;
  width: 14px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -11px;
  border: solid 2px #777;
}
@media (min-width: 48.0625em) {
  .m-jobOfferFilterConditionForm .a-baseInput__label:before {
    width: 21px;
    height: 21px;
    margin-top: -13px;
  }
}
.m-jobOfferFilterConditionForm .a-baseInput input:checked + span:after {
  content: "";
  display: block;
  position: absolute;
  top: -4px;
  left: 7px;
  width: 5px;
  height: 12px;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  border-bottom: 2px solid #f36f21;
  border-right: 2px solid #f36f21;
}
@media (min-width: 48.0625em) {
  .m-jobOfferFilterConditionForm .a-baseInput input:checked + span:after {
    top: -3px;
    left: 10px;
    width: 7px;
    height: 14px;
  }
}
.m-jobOfferFilterConditionForm input {
  display: none;
}

.a-jobOfferGrid {
  padding: 0 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
@media (max-width: 48em) {
  .a-jobOfferGrid {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
  }
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .a-jobOfferGrid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
.a-jobOfferGrid .a-jobOfferGrid__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 0;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
  background-color: #fff;
}
.a-jobOfferGrid .a-jobOfferGrid__item:hover {
  opacity: 0.8;
}

.o-jobOffer__footer {
  margin-top: 20px;
  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;
  gap: 16px;
}
@media (min-width: 48.0625em) {
  .o-jobOffer__footer {
    margin-top: 27px;
  }
}
@media (max-width: 48em) {
  .o-jobOffer__footer {
    -ms-flex-wrap: no-wrap;
        flex-wrap: no-wrap;
  }
}
.o-jobOffer__footer .swiper-pagination-bullets {
  text-align: center;
  width: initial !important;
}
@media (min-width: 48.0625em) {
  .o-jobOffer__footer .swiper-pagination-bullets {
    margin: 0 16px;
    text-align: left;
  }
}
@media (min-width: 67.5em) {
  .o-jobOffer__footer .swiper-pagination-bullets {
    display: inline-block;
  }
}
.o-jobOffer__footer .swiper-pagination-bullets .page {
  background-color: #dddddd;
  display: inline-block;
  color: #414040;
  font-weight: bold;
  height: 30px;
  width: 30px;
  line-height: 32px;
  margin: 0 8px;
  text-align: center;
  cursor: pointer;
}
.o-jobOffer__footer .swiper-pagination-bullets .page.-point {
  color: transparent;
  position: relative;
}
.o-jobOffer__footer .swiper-pagination-bullets .page.-point::before {
  content: "⋯";
  background-color: #dddddd;
  position: absolute;
  color: #414040;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.o-jobOffer__footer .swiper-pagination-bullets .swiper-pagination-bullet-active {
  background-color: #414040;
  color: #fff;
}

.link {
  padding: 0 20px;
  display: block;
  text-align: right;
  position: absolute;
  right: 0;
}
@media (max-width: 63.9375em) {
  .link {
    margin-top: 60px;
  }
}
@media (max-width: 48em) {
  .link {
    top: 0;
    position: relative;
    width: 100%;
    margin-top: 38px;
  }
}
.link a {
  color: #333;
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.02em;
  position: relative;
}
@media (min-width: 48.0625em) {
  .link a {
    text-align: right;
    padding-right: 38px;
  }
}
.link a::before {
  content: "";
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url(../images/icon_arrow_black.svg) center center no-repeat;
}
@media (max-width: 48em) {
  .link a::before {
    right: -20px;
  }
}

#app-2 {
  position: relative;
}

.o-jobOffer__footer {
  position: initial;
}
@media (max-width: 63.9375em) {
  .o-jobOffer__footer {
    margin-bottom: 60px;
  }
}
@media (max-width: 48em) {
  .o-jobOffer__footer {
    margin-bottom: 0;
  }
}
.o-jobOffer__footer .swiper-button-next,
.o-jobOffer__footer .swiper-button-prev {
  position: relative;
  top: inherit;
  left: initial;
  right: initial;
  width: 30px;
  height: 30px;
  margin-top: 0;
  background-image: url(../images/arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display: inline-block;
}
.o-jobOffer__footer .swiper-button-next::after,
.o-jobOffer__footer .swiper-button-prev::after {
  display: none;
}
.o-jobOffer__footer .swiper-button-next::before,
.o-jobOffer__footer .swiper-button-prev::before {
  display: none;
}
.o-jobOffer__footer .swiper-button-next {
  margin-left: -16px;
}
.o-jobOffer__footer .swiper-button-prev {
  rotate: 180deg;
  margin-right: -16px;
}

.o_mv {
  height: 600px;
  position: relative;
}
@media (max-width: 63.9375em) {
  .o_mv {
    height: 542px;
  }
}

.o_mv__image {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}
@media (max-width: 48em) {
  .o_mv__image {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media (max-width: 48em) {
  .o_mv__imageItem {
    height: 180.6666666667px;
    width: 100%;
  }
}
@media (min-width: 48.0625em) {
  .o_mv__imageItem {
    width: calc(100% / 3);
    height: 100%;
  }
}
.o_mv__imageItem img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o_mv__wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}
@media (max-width: 63.9375em) {
  .o_mv__wrapper {
    max-width: 568px;
    padding-right: 100px;
    padding-left: 100px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (max-width: 63.9375em) and (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_mv__wrapper {
    max-width: 448px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 63.9375em) and (max-width: 48em) {
  .o_mv__wrapper {
    max-width: 408px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_mv__textMain {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: bold;
  font-size: 64px;
  line-height: 1.3;
  letter-spacing: 0;
  color: #fff;
  margin-bottom: 40px;
  text-shadow: 0px 4px 10px #0000001a;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media (max-width: 63.9375em) {
  .o_mv__textMain {
    font-size: 30px;
  }
}
@media (max-width: 63.9375em) {
  .o_mv__textMain {
    margin-bottom: 20px;
  }
}
@media (max-width: 48em) {
  .o_mv__textMain {
    letter-spacing: -1px;
  }
}

/* letter-spacing が句読点周りまで広げるのを抑える（全ブラウザ向け） */
.o_mv__textMainPunct {
  display: inline-block;
}
@media (max-width: 63.9375em) {
  .o_mv__textMainPunct {
    margin-right: -10px;
    margin-left: -4px;
  }
}

.o_mv__textCatch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
  text-shadow: 0px 4px 10px #0000001a;
  margin-bottom: 16px;
}
@media (max-width: 63.9375em) {
  .o_mv__textCatch {
    gap: 4px;
  }
}

.o_mv__textCatchItem {
  font-size: 26px;
  line-height: 1.5;
  font-family: "Shippori Mincho B1", serif;
  width: 142px;
  height: 59px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
  background-color: #000;
  color: #fff;
  -webkit-box-shadow: 0px 4px 10px 0px #0000001a;
          box-shadow: 0px 4px 10px 0px #0000001a;
}
@media (max-width: 63.9375em) {
  .o_mv__textCatchItem {
    font-size: 20px;
  }
}
@media (max-width: 63.9375em) {
  .o_mv__textCatchItem {
    width: 88px;
    height: 46px;
  }
}
.o_mv__textCatchItem.-shizuoka {
  background-color: #7d001a;
}
.o_mv__textCatchItem.-yamanashi {
  background-color: #0072ba;
}
.o_mv__textCatchItem.-nagano {
  background-color: #008f79;
}

@media (max-width: 63.9375em) {
  .o_mv__textCatchItem_cross {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 24px;
            flex: 0 0 24px;
    max-width: 24px;
    width: 100%;
  }
}

.o_mv__textSub {
  font-size: 26px;
  line-height: 1.5;
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  margin-bottom: 40px;
}
@media (max-width: 63.9375em) {
  .o_mv__textSub {
    font-size: 20px;
  }
}
@media (max-width: 63.9375em) {
  .o_mv__textSub {
    margin-bottom: 20px;
  }
}

.o_mv__cv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 40px;
  max-width: 840px;
  margin: 0 auto;
}
@media (max-width: 63.9375em) {
  .o_mv__cv {
    max-width: 400px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
  }
}

.o_mv__cvButton {
  width: 100%;
}

.o_reason {
  background-color: #2f2e2e;
  color: #fff;
  padding-top: 140px;
  padding-bottom: 160px;
}
@media (max-width: 63.9375em) {
  .o_reason {
    padding-top: 108px;
    padding-bottom: 120px;
  }
}

.o_reason__heading {
  margin-bottom: 40px;
}

.o_reason__headingWrapper {
  padding-bottom: 140px;
  max-width: 1600px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_reason__headingWrapper {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_reason__headingWrapper {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 63.9375em) {
  .o_reason__headingWrapper {
    padding-bottom: 64px;
  }
}
.o_reason__headingWrapper p {
  text-align: center;
  font-size: 16px;
  line-height: 2;
}
@media (max-width: 63.9375em) {
  .o_reason__headingWrapper p {
    font-size: 15px;
  }
}
@media (max-width: 63.9375em) {
  .o_reason__headingWrapper p {
    text-align: left;
  }
}

.o_reason__content {
  max-width: 1600px;
  padding-right: 100px;
  padding-left: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_reason__content {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (max-width: 48em) {
  .o_reason__content {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}

.o_reason__contentList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
@media (max-width: 63.9375em) {
  .o_reason__contentList {
    grid-template-columns: repeat(1, 1fr);
  }
}

.o_reason__contentItem {
  font-size: 16px;
  line-height: 2;
}
@media (max-width: 63.9375em) {
  .o_reason__contentItem {
    font-size: 15px;
  }
}
.o_reason__contentItem.-shizuoka {
  background: linear-gradient(317.7deg, #ac001f -0.01%, #7d001a 46.7%);
}
.o_reason__contentItem.-yamanashi {
  background: linear-gradient(317.7deg, #0494e3 -0.01%, #0072ba 46.7%);
}
.o_reason__contentItem.-nagano {
  background: linear-gradient(317.7deg, #00b68d -0.01%, #008f79 46.7%);
}

.o_reason__contentItem_img img {
  width: 100%;
}

.o_reason__contentItem_text {
  padding: 40px;
}
@media (max-width: 63.9375em) {
  .o_reason__contentItem_text {
    padding: 20px;
  }
}

.o_recruit__headingWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 80px;
}
@media (min-width: 48.0625em) {
  .o_recruit__headingWrapper {
    max-width: 1600px;
    padding-right: 100px;
    padding-left: 100px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 48.0625em) and (min-width: 48.0625em) and (max-width: 63.9375em) {
  .o_recruit__headingWrapper {
    max-width: 1480px;
    padding-right: 40px;
    padding-left: 40px;
    max-width: 880px;
  }
}
@media (min-width: 48.0625em) and (max-width: 48em) {
  .o_recruit__headingWrapper {
    max-width: 1440px;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 520px;
  }
}
@media (max-width: 48em) {
  .o_recruit__headingWrapper {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 63.9375em) {
  .o_recruit__headingWrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 40px;
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

@media (min-width: 64em) {
  .o_recruit__headingContent {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 320px;
            flex: 0 0 320px;
    max-width: 320px;
    width: 100%;
  }
}

.o_recruit__headingBg {
  position: relative;
}

.o_recruit__headingBg_link {
  position: absolute;
  display: block;
  width: 10%;
  height: 10%;
  z-index: 1;
  background-color: transparent;
}
.o_recruit__headingBg_link.-shizuoka {
  top: 70%;
  left: 46%;
}
.o_recruit__headingBg_link.-yamanashi {
  top: 50%;
  left: 55%;
}
@media (max-width: 48em) {
  .o_recruit__headingBg_link.-yamanashi {
    top: 51%;
    left: 59%;
  }
}
.o_recruit__headingBg_link.-nagano {
  top: 34%;
  left: 45%;
}
@media (max-width: 48em) {
  .o_recruit__headingBg_link.-nagano {
    top: 37%;
    left: 44%;
  }
}

.o_recruit__heading {
  margin-bottom: 40px;
}

.o_recruit__headingContent_text {
  font-size: 16px;
  line-height: 2;
  text-align: center;
}
@media (max-width: 63.9375em) {
  .o_recruit__headingContent_text {
    font-size: 15px;
  }
}

.o_story {
  padding-top: 166px;
}
@media (max-width: 63.9375em) {
  .o_story {
    padding-top: 100px;
  }
}

.o_story__heading {
  margin-bottom: 106px;
}
@media (max-width: 63.9375em) {
  .o_story__heading {
    margin-bottom: 64px;
  }
}

.o_story__contentList .m_storyItem:not(:last-child) {
  margin-bottom: 80px;
}
@media (max-width: 63.9375em) {
  .o_story__contentList .m_storyItem:not(:last-child) {
    margin-bottom: 64px;
  }
}

.p-wrapper {
  overflow: hidden;
}

@media (min-width: 31.25em) {
  .u-br-very-narrow {
    display: none;
  }
}

@media (min-width: 48.0625em) {
  .u-br-narrow {
    display: none;
  }
}

@media (min-width: 64em) {
  .u-br-tab {
    display: none;
  }
}

@media (max-width: 48em) {
  .u-br-tab-wide {
    display: none;
  }
}

@media (max-width: 63.9375em) {
  .u-br-wide {
    display: none;
  }
}

@media (min-width: 67.5em) {
  .u-br-lg {
    display: none;
  }
}

@media (min-width: 64em) {
  .u-show-headerbr {
    display: none;
  }
}

.u-object-fit__cover {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
}

.u-object-fit__contain {
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain";
}

.u_mt4 {
  margin-top: 4px !important;
}

.u_mb4 {
  margin-bottom: 4px !important;
}

.u_mr4 {
  margin-right: 4px !important;
}

.u_ml4 {
  margin-left: 4px !important;
}

@media (max-width: 48em) {
  .u_s_mt4 {
    margin-top: 4px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb4 {
    margin-bottom: 4px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr4 {
    margin-right: 4px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml4 {
    margin-left: 4px !important;
  }
}

.u_mt8 {
  margin-top: 8px !important;
}

.u_mb8 {
  margin-bottom: 8px !important;
}

.u_mr8 {
  margin-right: 8px !important;
}

.u_ml8 {
  margin-left: 8px !important;
}

@media (max-width: 48em) {
  .u_s_mt8 {
    margin-top: 8px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb8 {
    margin-bottom: 8px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr8 {
    margin-right: 8px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml8 {
    margin-left: 8px !important;
  }
}

.u_mt12 {
  margin-top: 12px !important;
}

.u_mb12 {
  margin-bottom: 12px !important;
}

.u_mr12 {
  margin-right: 12px !important;
}

.u_ml12 {
  margin-left: 12px !important;
}

@media (max-width: 48em) {
  .u_s_mt12 {
    margin-top: 12px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb12 {
    margin-bottom: 12px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr12 {
    margin-right: 12px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml12 {
    margin-left: 12px !important;
  }
}

.u_mt16 {
  margin-top: 16px !important;
}

.u_mb16 {
  margin-bottom: 16px !important;
}

.u_mr16 {
  margin-right: 16px !important;
}

.u_ml16 {
  margin-left: 16px !important;
}

@media (max-width: 48em) {
  .u_s_mt16 {
    margin-top: 16px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb16 {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr16 {
    margin-right: 16px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml16 {
    margin-left: 16px !important;
  }
}

.u_mt20 {
  margin-top: 20px !important;
}

.u_mb20 {
  margin-bottom: 20px !important;
}

.u_mr20 {
  margin-right: 20px !important;
}

.u_ml20 {
  margin-left: 20px !important;
}

@media (max-width: 48em) {
  .u_s_mt20 {
    margin-top: 20px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb20 {
    margin-bottom: 20px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr20 {
    margin-right: 20px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml20 {
    margin-left: 20px !important;
  }
}

.u_mt24 {
  margin-top: 24px !important;
}

.u_mb24 {
  margin-bottom: 24px !important;
}

.u_mr24 {
  margin-right: 24px !important;
}

.u_ml24 {
  margin-left: 24px !important;
}

@media (max-width: 48em) {
  .u_s_mt24 {
    margin-top: 24px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb24 {
    margin-bottom: 24px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr24 {
    margin-right: 24px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml24 {
    margin-left: 24px !important;
  }
}

.u_mt28 {
  margin-top: 28px !important;
}

.u_mb28 {
  margin-bottom: 28px !important;
}

.u_mr28 {
  margin-right: 28px !important;
}

.u_ml28 {
  margin-left: 28px !important;
}

@media (max-width: 48em) {
  .u_s_mt28 {
    margin-top: 28px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb28 {
    margin-bottom: 28px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr28 {
    margin-right: 28px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml28 {
    margin-left: 28px !important;
  }
}

.u_mt32 {
  margin-top: 32px !important;
}

.u_mb32 {
  margin-bottom: 32px !important;
}

.u_mr32 {
  margin-right: 32px !important;
}

.u_ml32 {
  margin-left: 32px !important;
}

@media (max-width: 48em) {
  .u_s_mt32 {
    margin-top: 32px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb32 {
    margin-bottom: 32px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr32 {
    margin-right: 32px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml32 {
    margin-left: 32px !important;
  }
}

.u_mt36 {
  margin-top: 36px !important;
}

.u_mb36 {
  margin-bottom: 36px !important;
}

.u_mr36 {
  margin-right: 36px !important;
}

.u_ml36 {
  margin-left: 36px !important;
}

@media (max-width: 48em) {
  .u_s_mt36 {
    margin-top: 36px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb36 {
    margin-bottom: 36px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr36 {
    margin-right: 36px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml36 {
    margin-left: 36px !important;
  }
}

.u_mt40 {
  margin-top: 40px !important;
}

.u_mb40 {
  margin-bottom: 40px !important;
}

.u_mr40 {
  margin-right: 40px !important;
}

.u_ml40 {
  margin-left: 40px !important;
}

@media (max-width: 48em) {
  .u_s_mt40 {
    margin-top: 40px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb40 {
    margin-bottom: 40px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr40 {
    margin-right: 40px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml40 {
    margin-left: 40px !important;
  }
}

.u_mt44 {
  margin-top: 44px !important;
}

.u_mb44 {
  margin-bottom: 44px !important;
}

.u_mr44 {
  margin-right: 44px !important;
}

.u_ml44 {
  margin-left: 44px !important;
}

@media (max-width: 48em) {
  .u_s_mt44 {
    margin-top: 44px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb44 {
    margin-bottom: 44px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr44 {
    margin-right: 44px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml44 {
    margin-left: 44px !important;
  }
}

.u_mt48 {
  margin-top: 48px !important;
}

.u_mb48 {
  margin-bottom: 48px !important;
}

.u_mr48 {
  margin-right: 48px !important;
}

.u_ml48 {
  margin-left: 48px !important;
}

@media (max-width: 48em) {
  .u_s_mt48 {
    margin-top: 48px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb48 {
    margin-bottom: 48px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr48 {
    margin-right: 48px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml48 {
    margin-left: 48px !important;
  }
}

.u_mt52 {
  margin-top: 52px !important;
}

.u_mb52 {
  margin-bottom: 52px !important;
}

.u_mr52 {
  margin-right: 52px !important;
}

.u_ml52 {
  margin-left: 52px !important;
}

@media (max-width: 48em) {
  .u_s_mt52 {
    margin-top: 52px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb52 {
    margin-bottom: 52px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr52 {
    margin-right: 52px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml52 {
    margin-left: 52px !important;
  }
}

.u_mt56 {
  margin-top: 56px !important;
}

.u_mb56 {
  margin-bottom: 56px !important;
}

.u_mr56 {
  margin-right: 56px !important;
}

.u_ml56 {
  margin-left: 56px !important;
}

@media (max-width: 48em) {
  .u_s_mt56 {
    margin-top: 56px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb56 {
    margin-bottom: 56px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr56 {
    margin-right: 56px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml56 {
    margin-left: 56px !important;
  }
}

.u_mt60 {
  margin-top: 60px !important;
}

.u_mb60 {
  margin-bottom: 60px !important;
}

.u_mr60 {
  margin-right: 60px !important;
}

.u_ml60 {
  margin-left: 60px !important;
}

@media (max-width: 48em) {
  .u_s_mt60 {
    margin-top: 60px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb60 {
    margin-bottom: 60px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr60 {
    margin-right: 60px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml60 {
    margin-left: 60px !important;
  }
}

.u_mt64 {
  margin-top: 64px !important;
}

.u_mb64 {
  margin-bottom: 64px !important;
}

.u_mr64 {
  margin-right: 64px !important;
}

.u_ml64 {
  margin-left: 64px !important;
}

@media (max-width: 48em) {
  .u_s_mt64 {
    margin-top: 64px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb64 {
    margin-bottom: 64px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr64 {
    margin-right: 64px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml64 {
    margin-left: 64px !important;
  }
}

.u_mt68 {
  margin-top: 68px !important;
}

.u_mb68 {
  margin-bottom: 68px !important;
}

.u_mr68 {
  margin-right: 68px !important;
}

.u_ml68 {
  margin-left: 68px !important;
}

@media (max-width: 48em) {
  .u_s_mt68 {
    margin-top: 68px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb68 {
    margin-bottom: 68px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr68 {
    margin-right: 68px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml68 {
    margin-left: 68px !important;
  }
}

.u_mt72 {
  margin-top: 72px !important;
}

.u_mb72 {
  margin-bottom: 72px !important;
}

.u_mr72 {
  margin-right: 72px !important;
}

.u_ml72 {
  margin-left: 72px !important;
}

@media (max-width: 48em) {
  .u_s_mt72 {
    margin-top: 72px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb72 {
    margin-bottom: 72px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr72 {
    margin-right: 72px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml72 {
    margin-left: 72px !important;
  }
}

.u_mt76 {
  margin-top: 76px !important;
}

.u_mb76 {
  margin-bottom: 76px !important;
}

.u_mr76 {
  margin-right: 76px !important;
}

.u_ml76 {
  margin-left: 76px !important;
}

@media (max-width: 48em) {
  .u_s_mt76 {
    margin-top: 76px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb76 {
    margin-bottom: 76px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr76 {
    margin-right: 76px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml76 {
    margin-left: 76px !important;
  }
}

.u_mt80 {
  margin-top: 80px !important;
}

.u_mb80 {
  margin-bottom: 80px !important;
}

.u_mr80 {
  margin-right: 80px !important;
}

.u_ml80 {
  margin-left: 80px !important;
}

@media (max-width: 48em) {
  .u_s_mt80 {
    margin-top: 80px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mb80 {
    margin-bottom: 80px !important;
  }
}

@media (max-width: 48em) {
  .u_s_mr80 {
    margin-right: 80px !important;
  }
}

@media (max-width: 48em) {
  .u_s_ml80 {
    margin-left: 80px !important;
  }
}

.u-sr-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}