@charset "UTF-8";
@media screen and (max-width: 768px) {
  .u-desktop {
    display: none;
  }
}

.u-mobile {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-mobile {
    display: block;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #3E3A39;
}

body.hidden {
  overflow: hidden;
}

/*  */
html {
  font-size: 1.3333333333vw;
}
@media (max-width: 360px) {
  html {
    font-size: 4.4444444444vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 16px;
  }
}
@media (min-width: 1200px) {
  html {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/*  */
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

::-moz-selection {
  background-color: #db3a0a;
}

::selection {
  background-color: #db3a0a;
}

rt {
  font-size: 0.4em;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

/*  */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

address {
  font-style: normal;
}

.breadcrumbs {
  position: relative;
  z-index: 1;
  min-height: 70px;
  min-height: 4.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .breadcrumbs {
    min-height: 2.25rem;
  }
}

.breadcrumbs__inner.inner {
  max-width: calc(100% - 11.875rem);
  padding-left: calc(50% - 50vw + 1.5625rem);
  padding-right: calc(50% - 50vw + 1.5625rem);
}
@media screen and (max-width: 768px) {
  .breadcrumbs__inner.inner {
    max-width: none;
  }
}

.breadcrumbs--bt {
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .breadcrumbs--bt {
    margin-top: 1.875rem;
  }
}

.breadcrumbs__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 10px;
  gap: 0 0.625rem;
}
@media screen and (max-width: 768px) {
  .breadcrumbs__lists {
    gap: 0 0.5rem;
  }
}

.breadcrumbs__list {
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .breadcrumbs__list {
    font-size: 0.6875rem;
  }
}

.breadcrumbs__list a {
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.breadcrumbs__arrow {
  display: inline-block;
  width: 10px;
  width: 0.625rem;
  height: 10px;
  height: 0.625rem;
  border-top: 2px solid #ffc000;
  border-right: 2px solid #ffc000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-top: 2px;
  margin-top: 0.125rem;
}
@media screen and (max-width: 768px) {
  .breadcrumbs__arrow {
    width: 0.5rem;
    height: 0.5rem;
  }
}

.btn-green {
  display: block;
  padding: 20px;
  padding: 1.25rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.08em;
  max-width: 320px;
  max-width: 20rem;
  width: 100%;
  text-align: center;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  background: #ffc000;
  border: 1px solid #ffc000;
  outline: none;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 768px) {
  .btn-green {
    max-width: 21.875rem;
    padding: 1rem;
  }
}

.btn-green::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background: #fff;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

.btn-green:hover:before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.btn-green__txt {
  position: relative;
  z-index: 3;
  color: #fff;
}

.btn-green:hover .btn-green__txt {
  color: #ffc000;
}

.btn-green::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 22px;
  right: 1.375rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 20px;
  width: 1.25rem;
  height: 14px;
  height: 0.875rem;
  background: url(../../images/common/icon-arrow-white.svg) no-repeat center/contain;
}

.btn-green:hover::after {
  background: url(../../images/common/arrow-right_y.png) no-repeat center/contain;
  z-index: 4;
}

.careers__inner {
  max-width: 1010px;
  max-width: 63.125rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-top: 80px;
  padding-top: 5rem;
  padding-bottom: 90px;
  padding-bottom: 5.625rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .careers__inner {
    padding-top: 3.75rem;
    padding-bottom: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.careers__inner--wide {
  padding-bottom: 110px;
  padding-bottom: 6.875rem;
}
@media screen and (max-width: 768px) {
  .careers__inner--wide {
    padding-bottom: 4.0625rem;
  }
}

.careers__desc {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.9285714286;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .careers__desc {
    font-size: 1.375rem;
    line-height: 1.6818181818;
    letter-spacing: 0.01em;
  }
}

.careers__items {
  margin-top: 50px;
  margin-top: 3.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .careers__items {
    max-width: 31.25rem;
    width: 100%;
    margin-top: 2.5rem;
    margin-right: auto;
    margin-left: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.careers__item {
  max-width: calc(50% - 1.25rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .careers__item {
    max-width: 100%;
  }
}

.careers__item + .careers__item {
  margin-left: 40px;
  margin-left: 2.5rem;
}
@media screen and (max-width: 768px) {
  .careers__item + .careers__item {
    margin-top: 1.25rem;
    margin-left: 0;
  }
}

.careers__item img .lower-head__mv img {
  width: 100%;
  aspect-ratio: 460/120;
}
.careers__infos {
  color: #fff;
  margin-top: 70px;
  margin-top: 4.375rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .careers__infos {
    margin-top: 2.8125rem;
  }
}

.careers__info {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .careers__info {
    font-size: 1rem;
  }
}

.careers__tel {
  font-size: 18px;
  font-size: 1.125rem;
  margin-top: 20px;
  margin-top: 1.25rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .careers__tel {
    font-size: 0.9375rem;
    margin-top: 0.9375rem;
  }
}

.careers__mail {
  font-size: 18px;
  font-size: 1.125rem;
  margin-top: 10px;
  margin-top: 0.625rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .careers__mail {
    font-size: 0.9375rem;
    margin-top: 0.3125rem;
  }
}

.careers__mail a {
  text-decoration: underline;
}

.careers__entry-btn {
  margin-top: 50px;
  margin-top: 3.125rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .careers__entry-btn {
    margin-top: 2.5rem;
  }
}

.curtain {
  overflow: hidden;
  width: 100%;
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.curtain::after {
  background-color: #ffc000;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 0;
  z-index: 2;
  -webkit-transition: left 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s, width 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: left 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s, width 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.curtain.is-active::after {
  left: 100%;
  width: 100%;
}

.curtain img {
  opacity: 0;
  -webkit-transition: opacity 0s 0.4s;
  transition: opacity 0s 0.4s;
}

.curtain.is-active img {
  opacity: 1;
}

.entry-btn {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 32px 0;
  padding: 2rem 0;
  max-width: 560px;
  max-width: 35rem;
  width: 100%;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4583333333;
  background: #ffc000;
  position: relative;
  -webkit-transition: color 0.2s 0.1s ease;
  transition: color 0.2s 0.1s ease;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .entry-btn {
    padding: 1.3125rem 0;
    max-width: 20.9375rem;
    font-size: 1rem;
    line-height: 1.5;
  }
}

.entry-btn:hover {
  color: #ffc000;
}

.entry-btn::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  z-index: 2;
  background: #fff;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
}

.entry-btn:hover::before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.entry-btn__arrow {
  position: relative;
}

.entry-btn__arrow::before,
.entry-btn__arrow::after {
  content: "";
  width: 22px;
  width: 1.375rem;
  height: 15px;
  height: 0.9375rem;
  position: absolute;
  top: 50%;
  right: -140px;
  right: -8.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: opacity 0.1s 0.2s ease;
  transition: opacity 0.1s 0.2s ease;
}
@media screen and (max-width: 768px) {
  .entry-btn__arrow::before,
  .entry-btn__arrow::after {
    width: 1.0625rem;
    height: 0.75rem;
    right: -4.8125rem;
  }
}

.entry-btn__arrow::before {
  background: url(../../images/common/arrow-right--w.png) no-repeat center/contain;
}

.entry-btn:hover .entry-btn__arrow::before {
  opacity: 0;
}

.entry-btn__arrow::after {
  background: url(../../images/common/arrow-right_y.png) no-repeat center/contain;
  opacity: 0;
}

.entry-btn:hover .entry-btn__arrow::after {
  opacity: 1;
}

.entry-btn span {
  position: relative;
  z-index: 3;
}

.entry-form__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  margin-top: 110px;
  margin-top: 6.875rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .entry-form__inner {
    margin-top: 3.75rem;
    margin-bottom: 5rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.entry-form__desc {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .entry-form__desc {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.entry-form__text {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #3E3A39;
}
@media screen and (max-width: 768px) {
  .entry-form__text {
    margin-top: 1.5625rem;
  }
}

@media screen and (max-width: 768px) {
  .entry-form__text--tel .form-text__text--s {
    max-width: 100%;
  }
}

.entry-form__contents {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .entry-form__contents {
    margin-top: 2.5rem;
  }
}

.entry-form__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  border-top: 1px solid rgba(137, 137, 137, .25);
  padding-top: 25px;
  padding-top: 1.5625rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .entry-form__content {
    display: block;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
}

.entry-form__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  max-width: 240px;
  max-width: 15rem;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .entry-form__head {
    max-width: 18.125rem;
  }
}

.entry-form__title {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1;
  letter-spacing: 0.08em;
  margin-left: 20px;
  margin-left: 1.25rem;
}

.entry-form__required {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.075em;
  line-height: 1;
  text-align: center;
  padding: 4px 6px;
  padding: 0.25rem 0.375rem;
  background-color: #ffc000;
  border-radius: 3px;
  color: #fff;
}

.entry-form__option {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.075em;
  line-height: 1;
  text-align: center;
  padding: 4px 6px;
  padding: 0.25rem 0.375rem;
  background-color: #707070;
  border-radius: 3px;
  color: #fff;
}

.entry-form__item {
  margin-left: 45px;
  margin-left: 2.8125rem;
  max-width: 680px;
  max-width: 42.5rem;
  width: 100%;
  position: relative;
  z-index: 99;
}
@media screen and (max-width: 1200px) {
  .entry-form__item {
    max-width: 45.625rem;
    margin-left: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-form__item {
    margin-left: 0;
  }
}

.form-radio__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .form-radio__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .entry-form__check {
    margin-top: 1.875rem;
  }
}

.entry-form__post {
  max-width: 185px;
  max-width: 11.5625rem;
}

.entry-form__experience {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .entry-form__experience {
    margin-top: 1.5625rem;
  }
}

.entry-form__experience .form-text__after {
  margin-left: 8px;
  margin-left: 0.5rem;
}
@media screen and (max-width: 768px) {
  .entry-form__experience .form-text__after {
    margin-left: 0.3125rem;
  }
}

.entry-form__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.entry-form__date + .entry-form__date {
  margin-left: 15px;
  margin-left: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .entry-form__date + .entry-form__date {
    margin-left: 0.3125rem;
  }
}

.entry-form__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .entry-form__flex {
    margin-top: 1.5625rem;
  }
}

@media screen and (max-width: 768px) {
  .entry-form__flex .form-text__text {
    margin-top: 0;
  }
}

.entry-form__content--button {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.entry-form--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.entry-form__comment {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .entry-form__comment {
    letter-spacing: 0.07em;
  }
}

.entry-form__policy {
  padding-top: 80px;
  padding-top: 5rem;
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .entry-form__policy {
    padding-top: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .entry-form__policy input[type=checkbox] + span {
    padding-top: 1.25rem;
  }
}

.entry-form__policy span {
  font-weight: 500;
}

.entry-form__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .entry-form__button {
    margin-top: 1.875rem;
  }
}

.entry-form__textarea {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.entry-txt {
  position: relative;
}

.entry-txt__inner {
  max-width: 1170px;
  width: 100%;
  margin-bottom: 140px;
  margin-bottom: 8.75rem;
  max-width: 100%;
  padding-right: calc(50% - 50vw + 7.5rem);
  padding-left: calc(50% - 50vw + 7.5rem);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .entry-txt__inner {
    padding-right: 20px;
    padding-left: 20px;
    margin-bottom: 3.3125rem;
  }
}

.entry-txt__ttl {
  font-size: 120px;
  /*font-family: "Barlow", sans-serif;*/
  font-family: "MS Serif", "New York", serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-align: center;
  color: #ffc000;
  margin-top: -130px;
}
@media screen and (max-width: 1200px) {
  .entry-txt__ttl {
    font-size: 10rem;
    margin-top: -8.125rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-txt__ttl {
    font-size: 2.375rem;
    margin-top: -2.5rem;
    line-height: 1;
  }
}
.font_tt01{font-family: "MS Serif", "New York", serif;}
.entry-txt__txt {
  font-weight: 500;
  text-align: center;
  color: #ffc000;
  font-size: 28px;
  font-size: 1.75rem;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .entry-txt__txt {
    font-size: 1.4375rem;
    line-height: 1.7391304348;
    margin-top: 1.6875rem;
  }
}

.entry-txt__desc {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.07em;
  text-align: center;
  margin-top: 40px;
}
@media screen and (max-width: 1200px) {
  .entry-txt__desc {
    font-size: 1rem;
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-txt__desc {
    font-size: 0.9375rem;
    line-height: 1.9333333333;
    text-align: left;
    margin-top: 1.5625rem;
  }
}

.entry-txt__desc_a {
  font-size: 18px;
  line-height: 2;
  letter-spacing: 0.07em;
  text-align: left;
  margin-top: 40px;
  padding-left: 80px; padding-right: 80px;
}
.table01{ width: 70% !important; margin-left:auto; margin-right:auto;}
.table01 td{  border-bottom: 1px solid #efefef; padding: 1em; font-size: 110%;}
.table01 .tleft{ width: 15%;}
.table01 .tright{ width: 85%;}
.table01 td input{ border: 1px solid #707070; width: 100%; padding: 1em; border-radius: .2em;}
.table01 td textarea{ border: 1px solid #707070; width: 100%; padding: 1em; height: 200px; border-radius: .2em; resize: none;}
@media screen and (max-width: 1200px) {
  .entry-txt__desc_a {
    font-size: 1rem;
    margin-top: 2.5rem;
    padding-left: 0px; padding-right: 0px;
  }
}
@media screen and (max-width: 768px) {
  .entry-txt__desc_a {
    font-size: 0.9375rem;
    line-height: 1.9333333333;
    text-align: left;
    margin-top: 1.5625rem;
    padding-left: 0px; padding-right: 0px;
  }
  .table01{ width: 100% !important; margin-left:auto;   margin-right:auto;}
.table01 td{  border-bottom: 1px solid #efefef; padding: .2em; font-size: 90%;}
.table01 .tleft{ width: 10%;}
.table01 .tright{ width: 90%;}
.table01 td input{ border: 1px solid #707070; width: 100%; padding: .2em; border-radius: .2em;}
.table01 td textarea{ border: 1px solid #707070; width: 100%; padding: .2em; height: 200px; border-radius: .2em; resize: none;}

}
.entry-txt__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 clamp(40px, 2.2vw, 80px);
  gap: 0 clamp(2.5rem, 2.2vw, 5rem);
  margin-top: 95px;
  margin-top: 5.9375rem;
  max-width: 1120px;
  max-width: 70rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .entry-txt__links {
    display: block;
    margin-top: 0.9375rem;
    padding-right: 10px;
    padding-left: 10px;
  }
}

@media screen and (max-width: 768px) {
  .entry-txt__link + .entry-txt__link {
    margin-left: 0;
  }
}

.entry-txt__link .link-btn-green.link-btn-green--entry {
  width: 100%;
}

.entry-txt__link .link-btn-txt.link-btn-txt--entry {
  width: 100%;
  padding-right: clamp(55px, 4.6vw, 80px);
  padding-right: clamp(3.4375rem, 4.6vw, 5rem);
}
@media screen and (max-width: 768px) {
  .entry-txt__link .link-btn-txt.link-btn-txt--entry {
    padding-right: 0;
  }
}

@media screen and (max-width: 1200px) {
  .entry-txt__link .link-btn-green__arrow {
    margin-right: 0;
  }
}

.entry-txt__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}
@media screen and (max-width: 1200px) {
  .entry-txt__btn {
    font-size: 1.5rem;
    padding-bottom: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-txt__btn {
    font-size: 1.25rem;
    padding-top: 1.875rem;
    padding-bottom: 1.25rem;
  }
}

.entry-txt__btn:hover .entry-txt__btn-arrow {
  scale: 1.6;
  background-color: #ffc000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.entry-txt__btn:hover .entry-txt__btn-arrow::after {
  background-image: url(../../images/common/arrow-right--w.png);
}

.entry-txt__btn--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .entry-txt__btn--center {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.entry-txt__btn-arrow {
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid #ffc000;
  margin-left: 65px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-left: 65px;
  margin-left: 4.0625rem;
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
}
@media screen and (max-width: 768px) {
  .entry-txt__btn-arrow {
    width: 2.6875rem;
    height: 2.6875rem;
    margin-left: 0;
  }
}

.entry-txt__btn-arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: inline-block;
  width: 17px;
  height: 12px;
  background-image: url(../../images/common/arrow-right_y.png);
  background-size: contain;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .entry-txt__btn-arrow::after {
    width: 1.0625rem;
    height: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .entry-txt__btn-arrow::after {
    width: 0.91375rem;
    height: 0.645rem;
  }
}

.entry__img {
  max-width: 100%;
  width: 100%;
}

.entry__img img {
  width: 100%;
  aspect-ratio: 1440/480;
}
@media screen and (max-width: 768px) {
  .entry__img img {
    aspect-ratio: 375/175;
  }
}

.entry__link {
  display: inline-block;
  position: relative;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.08em;
  line-height: 1.45;
  font-weight: 500;
  color: #fff;
  text-align: center;
  max-width: 360px;
  max-width: 22.5rem;
  width: 100%;
  padding-top: 23px;
  padding-top: 1.4375rem;
  padding-bottom: 22px;
  padding-bottom: 1.375rem;
  background-color: #ffc000;
  border: 1px solid transparent;
}
@media screen and (max-width: 768px) {
  .entry__link {
    font-size: 0.875rem;
  }
}

.entryform-button__body {
  display: inline-block;
  position: relative;
  width: 100%;
  max-width: 760px;
  max-width: 47.5rem;
}

.entryform-button__body::after {
  content: "\f061";
  font-family: "FontAwesome";
  position: absolute;
  top: 37%;
  right: 44px;
  right: 2.75rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: inherit;
  color: #fff;
}

.entryform-button__body .entry__link {
  width: 100%;
}

.fadeInMvTtl,
.fadeInTtl {
  line-height: 1;
  z-index: 2;
  overflow: hidden;
}

.fadeInMvTtl span,
.fadeInTtl span {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.5s ease-out;
  transition: -webkit-transform 0.5s ease-out;
  transition: transform 0.5s ease-out;
  transition: transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
  -webkit-transform: translate(0, 100%);
          transform: translate(0, 100%);
}

.fadeInMvTtl:last-child span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media screen and (max-width: 768px) {
  .fadeInMvTtl:last-child span {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.fadeInTtl:last-child span {
  display: inline-block;
}

.fadeInMvTtl:last-child span,
.fadeInTtl:last-child span {
  -webkit-transition: -webkit-transform 0.5s 0.4s ease-out;
  transition: -webkit-transform 0.5s 0.4s ease-out;
  transition: transform 0.5s 0.4s ease-out;
  transition: transform 0.5s 0.4s ease-out, -webkit-transform 0.5s 0.4s ease-out;
  -webkit-transform: translate(0, 100%);
          transform: translate(0, 100%);
}

#trigger_fadeInTtl.on .fadeInMvTtl span,
.fadeInTtl.scrollIn span {
  -webkit-transform: translate(0, 0%);
          transform: translate(0, 0%);
}

.fadeIn {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.fadeIn.scrollIn {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.flow-list {
  max-width: 20%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .flow-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: none;
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .flow-list:nth-of-type(3) {
    padding-bottom: 3rem;
  }
}

@media screen and (max-width: 768px) {
  .flow-list:nth-of-type(4) {
    padding-bottom: 3rem;
  }
}

@media screen and (max-width: 768px) {
  .flow-list:nth-of-type(5) {
    padding-bottom: 2.125rem;
  }
}

@media screen and (max-width: 768px) {
  .flow-list::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    height: 100%;
    width: 0;
    padding-left: 3.4375rem;
    border-right: 1px solid #ccc;
    opacity: 0.45;
  }
}

@media screen and (max-width: 768px) {
  .flow-list {
    padding-bottom: 1.5rem;
  }
}

@media screen and (max-width: 768px) {
  .flow-list__count {
    width: 3.0625rem;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    padding-right: 1.375rem;
    margin-right: 1.625rem;
    border-right: 1px solid #ffc000;
  }
}

.flow-list__en {
  font-size: 13px;
  font-size: 0.8125rem;
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .flow-list__en {
    font-size: 0.625rem;
  }
}

.flow-list__num {
  font-size: 34px;
  font-size: 2.125rem;
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  color: #ffc000;
  margin-top: -10px;
  margin-top: -0.625rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(138, 138, 138, .1490196078);
  -o-border-image: linear-gradient(to right, #ffc000 0%, #ffc000 2.3125rem, rgba(138, 138, 138, .1490196078) 2.3125rem, rgba(138, 138, 138, .1490196078) 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#ffc000), color-stop(2.3125rem, #ffc000), color-stop(2.3125rem, rgba(138, 138, 138, .1490196078)), to(rgba(138, 138, 138, .1490196078)));
     border-image: linear-gradient(to right, #ffc000 0%, #ffc000 2.3125rem, rgba(138, 138, 138, .1490196078) 2.3125rem, rgba(138, 138, 138, .1490196078) 100%);
  border-image-slice: 1;
}
@media screen and (max-width: 768px) {
  .flow-list__num {
    padding-bottom: 0;
    border-bottom: 0;
    font-size: 1.875rem;
    margin-top: 0;
    line-height: 1;
  }
}

.flow-list__ttl {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .flow-list__ttl {
    margin-top: 0;
    font-size: 0.9375rem;
  }
}

.flow-list__txt {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  letter-spacing: 0.02em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .flow-list__txt {
    margin-top: 0.625rem;
  }
}

.flow-list__txt a {
  text-decoration: underline;
}

.flow-list__descs {
  margin-top: 70px;
  margin-top: 4.375rem;
}
@media screen and (max-width: 768px) {
  .flow-list__descs {
    margin-top: 2.1875rem;
  }
}

.flow-list__desc {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 2.3076923077;
  letter-spacing: 0.07em;
}

.flow-list__desc::before {
  content: "※";
  display: inline-block;
}

.flow-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 40px;
  gap: 0 2.5rem;
}
@media screen and (max-width: 768px) {
  .flow-lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.flow__wrap {
  position: relative;
  z-index: 1;
}

.flow__wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 98%;
  padding-left: 116px;
  padding-left: 7.25rem;
  border-right: 1px solid #fff;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .flow__wrap::after {
    top: 0.3125rem;
    padding-left: 0.375rem;
  }
}

.flow__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 58px;
  min-height: 3.625rem;
}
@media screen and (max-width: 768px) {
  .flow__content {
    display: block;
  }
}

.flow__content:last-of-type {
  min-height: auto;
}

.flow__content + .flow__content {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.flow__date {
  width: 80px;
  width: 5rem;
  margin-right: 27px;
  margin-right: 1.6875rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .flow__date {
    font-size: 0.9375rem;
    margin-left: 2.0625rem;
    margin-bottom: -1.125rem;
  }
}

.flow__txt {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.0714285714;
  letter-spacing: 0.08em;
  margin-top: -4px;
  margin-top: -0.25rem;
}
@media screen and (max-width: 768px) {
  .flow__txt {
    line-height: 1.6923076923;
    font-size: 0.8125rem;
  }
}

.flow__txt::before {
  content: "";
  width: 0;
  height: 0;
  border-radius: 50%;
  border: 3px solid #fff;
  background-color: #3E3A39;
  padding: 6.5px;
  padding: 0.40625rem;
  margin-top: 4px;
  margin-top: 0.25rem;
  margin-right: 40px;
  margin-right: 2.5rem;
}
@media screen and (max-width: 768px) {
  .flow__txt::before {
    border: 2px solid #fff;
    padding: 0.28125rem;
    margin-top: -1.5625rem;
    margin-right: 1.25rem;
  }
}

.footer-nav__lists:not(:first-of-type) {
  margin-left: 95px;
}
@media screen and (max-width: 1200px) {
  .footer-nav__lists:not(:first-of-type) {
    margin-left: 5.9375rem;
  }
}
@media screen and (max-width: 768px) {
  .footer-nav__lists:not(:first-of-type) {
    margin-left: 0;
  }
}
.footer-nav__list{font-family: "MS Serif", "New York", serif;}
.footer-nav__list a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #fff;
  display: inline-block;
  font-size: 23px;
  font-size: 1.2125rem;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
  padding: 15px 0 0;
  padding: 0.9375rem 0 0;
  white-space: nowrap;
  
}
@media screen and (max-width: 768px) {
  .footer-nav__list a {
    display: block;
    width: 100%;
    margin-bottom: 0;
    padding: 0.875rem 0;
    margin-bottom: 0;
    border-bottom: 1px solid #707070;
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .footer-nav__list.line-move a::before {
    content: none;
  }
}

@media screen and (max-width: 768px) {
  .footer-nav__list a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: inline-block;
    width: 0.91375rem;
    height: 0.645rem;
    background-image: url(../../images/common/arrow-right_y.png);
    background-size: contain;
    vertical-align: middle;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

.footer-under__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .footer-under__lists {
    display: block;
  }
}

.footer-under__list:not(:first-of-type) {
  margin-left: 30px;
}
@media screen and (max-width: 1200px) {
  .footer-under__list:not(:first-of-type) {
    margin-left: 1.875rem;
  }
}
@media screen and (max-width: 768px) {
  .footer-under__list:not(:first-of-type) {
    margin-left: 0;
  }
}

.footer-under__list a {
  line-height: 2.1538461538;
  letter-spacing: 0.04em;
  color: #fff;
  display: inline-block;
  padding: 10px 0 0;
  padding: 0.625rem 0 0;
  font-size: 13px;
  font-size: 0.8125rem;
}
@media screen and (max-width: 768px) {
  .footer-under__list a {
    padding: 0.3125rem 0;
    font-size: 0.75rem;
  }
}

.footer-under__list a::after {
  content: "";
  display: inline-block;
  margin-left: 10px;
  width: 12px;
  height: 12px;
  background-image: url(../../images/common/link-icon.png);
  background-size: contain;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .footer-under__list a::after {
    margin-left: 0.625rem;
  }
}

.footer-under__copy {
  font-size: 16px;
  font-family: "Barlow", sans-serif;
  line-height: 2.3333333333;
  letter-spacing: 0.07em;
  color: #e0e0e0;
}
@media screen and (max-width: 1200px) {
  .footer-under__copy {
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .footer-under__copy {
    margin-top: 1.25rem;
    line-height: 1.8333333333;
  }
}

.footer__inner {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-top: 130px;
  padding-top: 8.125rem;
  padding-bottom: 60px;
  padding-bottom: 3.75rem;
}
@media screen and (max-width: 768px) {
  .footer__inner {
    padding-top: 3.75rem;
    padding-bottom: 3.125rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.footer__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 105px;
  padding-right: 120px;
  padding-left: 120px;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .footer__items {
    padding-bottom: 6.5625rem;
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media screen and (max-width: 768px) {
  .footer__items {
    display: block;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0;
  }
}

.footer__logo {
  /*max-width: 290px;*/
  width: 100%;
}
.footer__logo img{
  max-width: 290px;
}
@media screen and (max-width: 1200px) {
  .footer__logo {
    max-width: 18.125rem;
  }
}
@media screen and (max-width: 768px) {
  .footer__logo {
    max-width: 15.0625rem;
  }
}

.footer__menus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: -15px;
  margin-top: -0.9375rem;
}
@media screen and (max-width: 768px) {
  .footer__menus {
    display: block;
    margin-top: 2.5rem;
  }
}

.footer__under {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid rgba(137, 137, 137, .15);
  padding-right: 120px;
  padding-right: 7.5rem;
  padding-left: 120px;
  padding-left: 7.5rem;
  padding-top: 40px;
  padding-top: 2.5rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1200px) {
  .footer__under {
    padding-right: 3.125rem;
    padding-left: 3.125rem;
  }
}
@media screen and (max-width: 768px) {
  .footer__under {
    display: block;
    border-top: none;
    padding-top: 2.5rem;
    padding-right: 0;
    padding-left: 0;
  }
}

.form-button__body {
  display: inline-block;
  position: relative;
  width: 100%;
  max-width: 360px;
  max-width: 22.5rem;
  margin-right: auto;
  margin-left: auto;
}

.form-button__body::after {
  color: inherit;
  content: "";
  background-image: url(../../images/common/arrow-right--w.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 19.32px;
  width: 1.2075rem;
  height: 13.63px;
  height: 0.851875rem;
  position: absolute;
  right: 25.6px;
  right: 1.6rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .form-button__body::after {
    width: 1.04875rem;
    height: 0.74rem;
  }
}

.form-button__body .entry__link {
  width: 100%;
}

.form-check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
}
@media screen and (max-width: 768px) {
  .form-check {
    display: block;
  }
}

.form-check a {
  text-decoration: underline;
  color: #ffc000;
}

input[type=checkbox] + span {
  cursor: pointer;
  display: inline-block;
  padding: 0 0 0 30px;
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  line-height: 1.714285;
}
@media screen and (max-width: 768px) {
  input[type=checkbox] + span {
    display: block;
    font-size: 0.8125rem;
  }
}

input[type=checkbox] + span::before {
  -webkit-transform: translateY(-50%);
  background: transparent;
  border: 1px solid #707070;
  content: "";
  display: block;
  height: 20px;
  left: 0;
  top: 12px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
}

input[type=checkbox] + span::after {
  content: "";
  display: block;
  left: 1px;
  opacity: 0;
  position: absolute;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 17px;
  width: 9px;
  background: url(../../images/common/check.png) center center/contain no-repeat;
}

input[type=checkbox]:checked + span::after {
  opacity: 1;
}

.form-check a span {
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.08em;
}

.form-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 1.25rem;
     -moz-column-gap: 1.25rem;
          column-gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .form-radio {
    margin-top: 1.25rem;
  }
}

.form-radio__item {
  display: none;
}

.form-radio li + li {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.form-radio__ttl {
  position: relative;
  margin-left: 16px;
  margin-left: 1rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.form-radio__ttl::before {
  content: "";
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: -16px;
  left: -1rem;
}
@media screen and (max-width: 768px) {
  .form-radio__ttl::before {
    top: 0.5625rem;
  }
}

.form-radio__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 20px;
  gap: 0 1.25rem;
}

.form-radio span {
  cursor: pointer;
  display: inline-block;
  padding: 8px 0 10px 28px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .form-radio label:nth-child(2n+1) {
    margin-left: 0;
  }
}

.form-radio__item span {
  cursor: pointer;
  display: inline-block;
  padding: 8px 30px 10px 28px;
  position: relative;
}

.form-radio__item + span::before {
  -webkit-transform: translateY(-50%);
  background: transparent;
  border: 1px solid #707070;
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.form-radio__item + span::after {
  -webkit-transform: translateY(-50%);
  background: #3E3A39;
  content: "";
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  height: 17px;
  width: 9px;
  background: url(../../images/common/check.png) center center/contain no-repeat;
}

input[type=radio]:checked + span::after,
input[type=checkbox]:checked + span::after {
  opacity: 1;
}

input[type=radio] + span::after,
input[type=checkbox] + span::after {
  -webkit-transform: translateY(-50%);
  background: #3E3A39;
  content: "";
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  height: 17px;
  width: 9px;
  background: url(../../images/common/check.png) center center/contain no-repeat;
}

input[type=radio]:checked + span::after,
input[type=checkbox]:checked + span::after {
  opacity: 1;
}

input[type=radio] + span::before,
input[type=checkbox] + span::before {
  -webkit-transform: translateY(-50%);
  background: transparent;
  border: 1px solid rgba(62, 58, 57, .15);
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.form-text__text {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #F1EFEF;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0;
  color: #3E3A39;
  font-family: inherit;
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.08em;
  padding: 19.5px 21px;
  padding: 1.21875rem 1.3125rem;
  width: 100%;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .form-text__text {
    font-size: 1rem;
  }
}

.form-text__text::-webkit-input-placeholder {
  color: #B5B2B2;
}

.form-text__text::-moz-placeholder {
  color: #B5B2B2;
}

.form-text__text::-ms-input-placeholder {
  color: #B5B2B2;
}

.form-text__text::placeholder {
  color: #B5B2B2;
}

.form-text__text:focus {
  border: 1px solid #ffc000;
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
}

.form-text__text--s {
  max-width: 250px;
  max-width: 15.625rem;
}
@media screen and (max-width: 768px) {
  .form-text__text--s {
    max-width: 12.5rem;
  }
}

.form-text__text--ss {
  max-width: 120px;
  max-width: 7.5rem;
}
@media screen and (max-width: 768px) {
  .form-text__text--ss {
    max-width: 6.25rem;
  }
}

.form-text__after {
  margin-left: 20px;
  margin-left: 1.25rem;
}

.form-text__post-btn {
  margin-left: 20px;
  margin-left: 1.25rem;
}

.form-text__post-banner p {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.075em;
  color: #fff;
  background-color: #3E3A39;
  margin-left: 20px;
  margin-left: 1.25rem;
  padding: 12px 20px;
  padding: 0.75rem 1.25rem;
  border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .form-text__post-banner p {
    margin-left: 0.9375rem;
    padding: 0.8125rem 0.5rem;
  }
}

@-webkit-keyframes onAutoFillStart {}

@keyframes onAutoFillStart {}
input:-webkit-autofill {
  -webkit-animation-name: onAutoFillStart;
          animation-name: onAutoFillStart;
  -webkit-transition: background-color 50000s ease-in-out 0s, color 50000s ease-in-out 0s;
  transition: background-color 50000s ease-in-out 0s, color 50000s ease-in-out 0s;
}

@media screen and (max-width: 768px) {
  .form-textarea {
    margin-top: 1.5625rem;
  }
}

.form-textarea__text {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #F1EFEF;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.08em;
  padding: 17px 17px;
  padding: 1.0625rem 1.0625rem;
  width: 100%;
  height: 200px;
  height: 12.5rem;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  .form-textarea__text {
    padding: 1.25rem 1.0625rem;
  }
}

.form-textarea__text::-webkit-input-placeholder {
  color: #B5B2B2;
}

.form-textarea__text::-moz-placeholder {
  color: #B5B2B2;
}

.form-textarea__text::-ms-input-placeholder {
  color: #B5B2B2;
}

.form-textarea__text::placeholder {
  color: #B5B2B2;
}
@media screen and (max-width: 768px) {
  .form-textarea__text::-webkit-input-placeholder {
    font-size: 0.875rem;
  }
  .form-textarea__text::-moz-placeholder {
    font-size: 0.875rem;
  }
  .form-textarea__text::-ms-input-placeholder {
    font-size: 0.875rem;
  }
  .form-textarea__text::placeholder {
    font-size: 0.875rem;
  }
}

.form-textarea__text:focus {
  border: 1px solid #ffc000;
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
}

@media screen and (max-width: 768px) {
  .form-textarea .entry-form__comment {
    margin-top: 0.9375rem;
  }
}

.gb-line {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.15;
}

.gb-line::before,
.gb-line::after {
  content: "";
  position: fixed;
  z-index: 1;
  top: 0;
  width: 1px;
  height: 100%;
  background-color: #ccc;
}

.gb-line::before {
  top: 120px;
  top: 7.5rem;
  left: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .gb-line::before {
    top: 0;
    left: 1.25rem;
  }
}

.gb-line::after {
  right: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .gb-line::after {
    right: 1.25rem;
  }
}

.gb-line span {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1px;
  height: 100vh;
  background-color: #ccc;
}

.global-menu {
  width: 100%;
  height: 100%;
  max-height: 100vh;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  bottom: 0;
  right: -100%;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  z-index: 10;
  color: #fff;
}

.global-menu.is-open {
  right: 0;
}

.global-menu__logo {
  height: 120px;
  height: 7.5rem;
  width: 100%;
  position: sticky;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #4b4b4b;
  padding-left: 40px;
  padding-left: 2.5rem;
  background-image: url("../../images/common/bg-img.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .global-menu__logo {
    padding-left: 1.4375rem;
    height: 3.75rem;
  }
}

.global-menu__logo a {
  padding: 15px 0;
  padding: 0.9375rem 0;
}

.global-menu__logo img {
  max-width: 302px;
  max-width: 18.875rem;
}
@media screen and (max-width: 768px) {
  .global-menu__logo img {
    max-width: 14.1875rem;
  }
}

.global-menu__inner.inner {
  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;
  height: calc(100% - 7.5rem);
  padding: 50px 40px;
  padding: 3.125rem 2.5rem;
  max-width: 100%;
}
@media screen and (max-width: 1200px) {
  .global-menu__inner.inner {
    padding: 3.125rem 1.25rem 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .global-menu__inner.inner {
    display: block;
    height: auto;
    padding: 0 1.25rem 1.5625rem;
    max-width: none;
  }
}

.global-menu__contents {
  max-width: 960px;
  max-width: 60rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .global-menu__contents {
    max-width: none;
    max-width: initial;
  }
}

.global-menu__info {
  max-width: 960px;
  max-width: 60rem;
  width: 100%;
  margin-top: 64px;
  margin-top: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 50px;
  gap: 0 3.125rem;
}
@media screen and (max-width: 1200px) {
  .global-menu__info {
    display: none;
  }
}

.global-menu__nav--sp,
.global-menu__info--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .global-menu__nav--sp,
  .global-menu__info--sp {
    display: block;
  }
}

.global-menu__info--sp {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.global-nav__inner {
  height: 100%;
}

@media screen and (max-width: 1200px) {
  .global-nav__item {
    border-bottom: 1px solid #D5E3EB;
  }
}

@media screen and (max-width: 1200px) {
  .global-nav__item:last-child {
    border: none;
  }
}

@media screen and (max-width: 1200px) {
  .global-nav__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 1200px) {
  .global-nav__header-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    padding: 0.75rem 0;
    margin: 0.375rem 0;
  }
}

.global-nav__title {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  line-height: 1;
  margin-right: 10px;
  margin-right: 0.625rem;
}

.global-nav__en-title {
  font-size: 11px;
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #acacac;
}

.global-nav__btn {
  display: inline-block;
  margin-right: 0;
  margin-left: auto;
  padding: 0;
}

.global-nav__btn::before {
  display: inline-block;
  padding: 15px;
  padding: 0.9375rem;
  margin-right: -15px;
  margin-right: -0.9375rem;
}

.global-nav__btn--single::before {
  font-size: 15px;
  font-size: 0.9375rem;
  content: "\f061";
  font-family: "FontAwesome";
  color: #61c3ff;
}

.global-nav__btn--parent::before {
  font-size: 15px;
  font-size: 0.9375rem;
  content: "+";
  font-family: "FontAwesome";
  color: #61c3ff;
}

@media screen and (max-width: 1200px) {
  .global-nav__body {
    margin-bottom: 1.875rem;
  }
}

@media screen and (max-width: 1200px) {
  .global-nav__link--sp {
    margin-left: 1.25rem;
    font-size: 0.8125rem;
    line-height: 1.8461538462;
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 768px) {
  .global-nav__link--sp {
    display: block;
  }
}

.global-nav__link--sp:first-child {
  margin-top: 4px;
  margin-top: 0.25rem;
}

.global-nav__link--sp + .global-nav__link--sp {
  margin-top: 18px;
  margin-top: 1.125rem;
}

@media screen and (max-width: 1200px) {
  .global-nav__entry--sp {
    display: inline-block;
    max-width: none;
  }
}

.global-nav__entry--sp + .global-nav__entry--sp {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.graduates-flow {
  margin-top: 145px;
  margin-top: 9.0625rem;
}
@media screen and (max-width: 768px) {
  .graduates-flow {
    margin-top: 4.0625rem;
  }
}

.graduates-flow__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 100px;
  padding-top: 6.25rem;
  padding-bottom: 145px;
  padding-bottom: 9.0625rem;
  padding-right: 25px;
  padding-left: 25px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .graduates-flow__inner {
    padding-top: 4.625rem;
    padding-bottom: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.graduates-flow__lists {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .graduates-flow__lists {
    margin-top: 2.9375rem;
  }
}

.graduates-guide__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  margin-top: 85px;
  margin-top: 5.3125rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .graduates-guide__inner {
    margin-top: 3.75rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.graduates-guide__table.table__wrap--bt {
  border-top: none;
  margin-top: 0;
}

.graduates-guide__table .table__head {
  padding-top: 25px;
  padding-top: 1.5625rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .graduates-guide__table .table__head {
    padding-top: 1.875rem;
    padding-bottom: 0;
  }
}

.graduates-guide__table .table__detail {
  padding-top: 25px;
  padding-top: 1.5625rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .graduates-guide__table .table__detail {
    padding-top: 0.625rem;
    padding-bottom: 1.875rem;
  }
}

.graduates-qa {
  position: relative;
  z-index: 99;
}

.graduates-qa__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-top: 120px;
  margin-top: 7.5rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .graduates-qa__inner {
    margin-top: 4.375rem;
    margin-bottom: 4.375rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.graduates-qa__lists {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .graduates-qa__lists {
    margin-top: 1.625rem;
  }
}

.graduates-sche {
  position: relative;
  z-index: 99;
}

.graduates-sche__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  margin-top: 100px;
  margin-top: 6.25rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .graduates-sche__inner {
    margin-top: 4.375rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.graduates-sche__lists {
  margin-top: 45px;
  margin-top: 2.8125rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__lists {
    margin-top: 0;
  }
}

.graduates-sche__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 15px;
  padding-top: 0.9375rem;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .graduates-sche__list {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
}

.graduates-sche__dates {
  max-width: 120px;
  max-width: 7.5rem;
  width: 100%;
  border-right: 1px solid rgba(137, 137, 137, .1490196078);
  padding-top: 15px;
  padding-top: 0.9375rem;
  padding-bottom: 18px;
  padding-bottom: 1.125rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__dates {
    max-width: 6.25rem;
    border-right: none;
  }
}

.graduates-sche__year {
  font-size: 15px;
  font-size: 0.9375rem;
  font-family: "Barlow", sans-serif;
}

.graduates-sche__date {
  font-size: 32px;
  font-size: 2rem;
  font-family: "Barlow", sans-serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .graduates-sche__date {
    font-size: 1.75rem;
  }
}

.graduates-sche__date span {
  font-size: 15px;
  font-size: 0.9375rem;
  font-family: "Noto Sans JP", sans-serif;
  color: #ffc000;
  margin-left: 5px;
  margin-left: 0.3125rem;
  padding-top: 17px;
  padding-top: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__date span {
    font-size: 0.8125rem;
    padding-top: 0.9375rem;
  }
}

.graduates-sche__info {
  max-width: 840px;
  max-width: 52.5rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 25px;
  padding-left: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__info {
    display: block;
    padding-left: 1.125rem;
    border-left: 1px solid rgba(137, 137, 137, .1490196078);
  }
}

.graduates-sche__situ {
  max-width: 110px;
  max-width: 6.875rem;
  width: 100%;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  color: #ffc000;
  text-align: center;
  border: 1px solid #ffc000;
  padding-top: 5px;
  padding-top: 0.3125rem;
  padding-bottom: 6px;
  padding-bottom: 0.375rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__situ {
    font-size: 0.6875rem;
    display: inline;
    padding: 0.1875rem 0.4375rem;
  }
}

.graduates-sche__details {
  margin-left: 35px;
  margin-left: 2.1875rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__details {
    margin-left: 0;
  }
}

.graduates-sche__detail {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7777777778;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .graduates-sche__detail {
    font-size: 1rem;
    line-height: 1.6875;
    margin-top: 0.625rem;
  }
}

.graduates-sche__desc {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.07em;
  color: #777777;
  margin-top: 5px;
  margin-top: 0.3125rem;
}
@media screen and (max-width: 768px) {
  .graduates-sche__desc {
    font-size: 0.8125rem;
    line-height: 1.6923076923;
    margin-top: 0.1875rem;
  }
}

.graduates__link {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .graduates__link {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.hamburger {
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: calc(50% - 50vw + 7.5rem);
  height: 100%;
  max-height: 120px;
  max-height: 7.5rem;
  padding: 11px 12px;
  padding: 0.6875rem 0.75rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  .hamburger {
    max-width: 3.75rem;
    max-height: 3.75rem;
    padding: 0.875rem 0.9375rem;
  }
}

.hamburger::after {
  position: absolute;
  top: 60%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  content: "menu";
  text-transform: uppercase;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .hamburger::after {
    font-size: 0.6875rem;
  }
}

.hamburger.is-narrow::after {
  top: 65%;
}

.hamburger.is-narrow.is-active::after {
  top: 60%;
}

.hamburger.is-active {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .hamburger.is-active {
    background: #ffc000;
    color: #fff;
  }
}

.hamburger.is-active::after {
  content: "close";
}

.hamburger.is-narrow {
  max-height: 80px;
  max-height: 5rem;
}

.hamburger.is-narrow.is-active {
  max-height: 120px;
  max-height: 7.5rem;
}

.hamburger__inner {
  width: 100%;
  height: 100%;
  position: relative;
}

.hamburger__border {
  display: block;
  width: 50px;
  width: 3.125rem;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 768px) {
  .hamburger__border {
    width: 2.0625rem;
  }
}

.hamburger.is-active .hamburger__border {
  background: #0187D1;
}
@media screen and (max-width: 768px) {
  .hamburger.is-active .hamburger__border {
    background: #fff;
  }
}

.hamburger__border:first-child {
  top: 30%;
}
@media screen and (max-width: 768px) {
  .hamburger__border:first-child {
    top: 1.125rem;
  }
}

.hamburger__border:nth-child(2) {
  top: 40%;
}
@media screen and (max-width: 768px) {
  .hamburger__border:nth-child(2) {
    top: 1.5625rem;
  }
}

.hamburger.is-narrow .hamburger__border:nth-child(2) {
  top: 45%;
}

.hamburger.is-active .hamburger__border:first-child {
  top: 35%;
  background: #fff;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(15deg);
          transform: translate(-50%, -50%) rotate(15deg);
}
@media screen and (max-width: 768px) {
  .hamburger.is-active .hamburger__border:first-child {
    top: 1.375rem;
  }
}

.hamburger.is-active .hamburger__border:nth-child(2) {
  top: 35%;
  background: #fff;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-15deg);
          transform: translate(-50%, -50%) rotate(-15deg);
}
@media screen and (max-width: 768px) {
  .hamburger.is-active .hamburger__border:nth-child(2) {
    top: 1.375rem;
  }
}

.hamburger__text {
  display: inline-block;
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  font-family: "Barlow", sans-serif;
  color: inherit;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
  position: absolute;
  bottom: 1px;
  bottom: 0.0625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .hamburger__text {
    font-size: 0.6875rem;
  }
}

.hamburger.is-active .hamburger__text--open {
  opacity: 0;
}

.hamburger__text--close {
  opacity: 0;
}

.hamburger.is-active .hamburger__text--close {
  opacity: 1;
}

.header {
  width: 100%;
  height: 120px;
  height: 7.5rem;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 999;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  .header {
    background-color: #fff;
    position: sticky;
    height: 3.75rem;
  }
}

.header.is-sticky {
  background: #fff;
  position: sticky;
  top: 0;
}

.header.is-narrow {
  height: 80px;
  height: 5rem;
}

.header__inner {
  z-index: 1;
  position: relative;
  width: 100%;
  height: inherit;
  padding-left: 30px;
  padding-left: 1.875rem;
  padding-right: 30px;
  padding-right: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .header__inner {
    padding-left: 1.25rem;
    padding-right: 3.75rem;
  }
}

.header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-left: 0;
  margin-right: auto;
}

.header__logo-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  padding: 20px 20px 20px 0;
  padding: 1.25rem 1.25rem 1.25rem 0;
}

.header__logo-link img {
  max-width: 302px;
  max-width: 18.875rem;
}
@media screen and (max-width: 768px) {
  .header__logo-link img {
    max-width: 14.1875rem;
  }
}

.header.is-fixed .header__logo-img {
  display: none;
}

@media screen and (max-width: 768px) {
  .header.ham-active .header__logo-img {
    display: none;
  }
}

.header__logo-img--fixed {
  display: none;
}

.header__logo-text {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  color: inherit;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .header__logo-text {
    font-size: 0.5625rem;
  }
}

.header__nav {
  font-weight: 500;
  margin-right: 14px;
  margin-right: 0.875rem;
  border: 1px solid;

  position: relative;
  overflow: hidden;

  text-decoration: none;
  border: 1px solid #ffc000;

  padding: 10px 30px;
  text-align: center;
  outline: none;

  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}


.header__nav span {
  position: relative;
  z-index: 3;

  color: #ffc000;
}

.header__nav:hover span {
  color: #fff;
}

.header__nav:last-of-type {
  margin-right: 130px;
  margin-right: 8.125rem;
}

.header__nav:before {
  content: "";

  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;

  background: #ffc000;

  width: 100%;
  height: 100%;

  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}


.header__nav:hover:before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.header__hamburger {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2;
  background: #ffc000;
}

.header__global-menu {
  z-index: 1;
}

.hero__inner {
  padding-top: 60px;
  padding-top: 3.75rem;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .hero__inner {
    max-width: none;
  }
}

.hero__inner.hero__inner--line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  max-width: calc(100vw - 11.875rem);
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .hero__inner.hero__inner--line {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: none;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.hero__line {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .hero__line {
    margin-top: 1.875rem;
  }
}

.hero__ttl {
  margin: 0 auto;
  max-width: calc(100vw - 11.875rem);
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .hero__ttl {
    max-width: none;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.hero__inner.hero__inner--line .hero__ttl {
  padding: 0;
}

.hero__img {
  margin-top: 60px;
  margin-top: 3.75rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .hero__img {
    margin-top: 1.875rem;
  }
}

.hero__img img {
  width: 100%;
  aspect-ratio: 1440/540;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .hero__img img {
    aspect-ratio: 375/250;
  }
}

.hero__img.hero__img--ceo img {
  aspect-ratio: 1440/640;
}
@media screen and (max-width: 768px) {
  .hero__img.hero__img--ceo img {
    aspect-ratio: 375/250;
  }
}

.infograph-item {
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}
@media screen and (max-width: 768px) {
  .infograph-item {
    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-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 2.8125rem;
    padding-bottom: 2.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
}

@media screen and (max-width: 768px) {
  .infograph-item:first-child {
    padding-top: 0;
  }
}

.infograph-items--company .infograph-item {
  padding-bottom: 60px;
  padding-bottom: 3.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-items--company .infograph-item {
    padding-bottom: 1.875rem;
  }
}

.infograph-items--environment .infograph-item:nth-of-type(n+4) {
  min-height: 442px;
  min-height: 27.625rem;
}
@media screen and (max-width: 768px) {
  .infograph-items--environment .infograph-item:nth-of-type(n+4) {
    min-height: 0;
    min-height: initial;
  }
}

.infograph-items--environment .infograph-item:nth-of-type(3n+1) {
  -o-border-image: linear-gradient(to right, rgba(137, 137, 137, .15) 0%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(rgba(137, 137, 137, .15)), color-stop(97%, rgba(137, 137, 137, .15)), color-stop(97%, #fff), to(#fff));
     border-image: linear-gradient(to right, rgba(137, 137, 137, .15) 0%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
  border-image-slice: 1;
}

.infograph-items--environment .infograph-item:nth-of-type(3n+2) {
  -o-border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(3%, #fff), color-stop(3%, rgba(137, 137, 137, .15)), color-stop(97%, rgba(137, 137, 137, .15)), color-stop(97%, #fff), to(#fff));
     border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
  border-image-slice: 1;
}

.infograph-items--environment .infograph-item:nth-of-type(3n+3) {
  -o-border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(3%, #fff), color-stop(3%, rgba(137, 137, 137, .15)), to(rgba(137, 137, 137, .15)));
     border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 100%);
  border-image-slice: 1;
}

.infograph-items--company .infograph-item:nth-of-type(2n - 1),
.infograph-items--workers .infograph-item:nth-of-type(2n - 1) {
  -o-border-image: linear-gradient(to right, rgba(137, 137, 137, .15) 0%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(rgba(137, 137, 137, .15)), color-stop(97%, rgba(137, 137, 137, .15)), color-stop(97%, #fff), to(#fff));
     border-image: linear-gradient(to right, rgba(137, 137, 137, .15) 0%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
  border-image-slice: 1;
}

.infograph-items--company .infograph-item:nth-of-type(2n),
.infograph-items--workers .infograph-item:nth-of-type(2n) {
  -o-border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(3%, #fff), color-stop(3%, rgba(137, 137, 137, .15)), to(rgba(137, 137, 137, .15)));
     border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 100%);
  border-image-slice: 1;
}

@media screen and (max-width: 768px) {
  .infograph-item__body {
    max-width: 12.5rem;
    width: 100%;
  }
}

.infograph-item__body--mtop {
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__body--mtop {
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .infograph-item__body--wide {
    max-width: none;
  }
}

.infograph-item__body--05 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 226px;
  max-width: 14.125rem;
  width: 100%;
  -webkit-column-gap: 0.875rem;
     -moz-column-gap: 0.875rem;
          column-gap: 0.875rem;
  position: relative;
}

.infograph-item__body--05::after {
  content: "";
  position: absolute;
  bottom: 26px;
  bottom: 1.625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background-color: #EAEAEA;
}

.infograph-item__body--10 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 226px;
  max-width: 14.125rem;
  width: 100%;
  -webkit-column-gap: 0.875rem;
     -moz-column-gap: 0.875rem;
          column-gap: 0.875rem;
  position: relative;
}

.infograph-item__body--10::after {
  content: "";
  position: absolute;
  bottom: 26px;
  bottom: 1.625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 1px;
  background-color: #EAEAEA;
}

.infograph-item__body--11 {
  position: relative;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .infograph-item__body--11 {
    max-width: none;
    gap: 0 0.3125rem;
  }
}

.infograph-item__body--11::before {
  content: "";
  position: absolute;
  bottom: 30px;
  bottom: 1.875rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 110%;
  height: 2px;
  background-color: #777777;
  opacity: 0.15;
}
@media screen and (max-width: 768px) {
  .infograph-item__body--11::before {
    width: 105%;
  }
}

.infograph-item__body--12 {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .infograph-item__body--12 {
    max-width: 18.75rem;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .infograph-item__body--13 {
    max-width: 18.75rem;
    width: 100%;
  }
}

.infograph-item__wrap {
  min-height: 400px;
  min-height: 25rem;
  padding-right: 4px;
  padding-right: 0.25rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__wrap {
    min-height: 0;
    min-height: initial;
    padding-right: 0;
  }
}

.infograph-item__wrap {
  min-height: 400px;
  min-height: 25rem;
  padding-right: 4px;
  padding-right: 0.25rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__wrap {
    min-height: 0;
    min-height: initial;
    padding-right: 0;
  }
}

.infograph-items--environment .infograph-item:nth-of-type(n+4) .infograph-item__wrap {
  margin-top: 22px;
  margin-top: 1.375rem;
}

.infograph-item:not(:nth-of-type(3n+1)) .infograph-item__wrap {
  margin-left: 60px;
  margin-left: 3.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-item:not(:nth-of-type(3n+1)) .infograph-item__wrap {
    margin-left: 0;
  }
}

.infograph-item:not(:nth-of-type(3n)) .infograph-item__wrap {
  border-right: 1px solid rgba(137, 137, 137, .15);
}
@media screen and (max-width: 768px) {
  .infograph-item:not(:nth-of-type(3n)) .infograph-item__wrap {
    border-right: 0;
  }
}

.infograph-items--company .infograph-item .infograph-item__wrap {
  border-right: 0;
}

.infograph-item__ttl {
  padding-top: 30px;
  padding-top: 1.875rem;
  color: #ffc000;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.4545454545;
}
@media screen and (max-width: 768px) {
  .infograph-item__ttl {
    padding-top: 0;
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }
}

.infograph-item__note {
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: right;
  margin-right: 10px;
  margin-right: 0.625rem;
}

.infograph-item__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
  margin-top: 5px;
  margin-top: 0.3125rem;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4583333333;
}
@media screen and (max-width: 768px) {
  .infograph-item__num {
    font-size: 1.25rem;
    line-height: 1.45;
  }
}

.infograph-item__num--small {
  font-size: 13px;
  font-size: 0.8125rem;
}

.infograph-item__num span {
  font-family: "Barlow", sans-serif;
  color: #ffc000;
  font-size: 90px;
  font-size: 5.625rem;
  font-weight: 500;
  line-height: 1.3333333333;
  display: inline-block;
  margin-right: 5px;
  margin-right: 0.3125rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num span {
    text-align: right;
    font-size: 4.375rem;
    line-height: 1.2;
  }
}

.infograph-item__num--company {
  color: #A4A4A4;
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--company {
    font-size: 0.75rem;
  }
}

.infograph-item__num--company span {
  color: #A4A4A4;
  font-size: 50px;
  font-size: 3.125rem;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--company span {
    font-size: 1.875rem;
  }
}

.infograph-item__num--small span {
  font-size: 35px;
  font-size: 2.1875rem;
  width: 36px;
  width: 2.25rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--small span {
    font-size: 2rem;
    width: 1.875rem;
  }
}

.infograph-item__num--01 span {
  width: 100px;
  width: 6.25rem;
}

.infograph-item__num--02 span {
  width: 156px;
  width: 9.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--02 span {
    width: 8.25rem;
  }
}

.infograph-item__num--03 span {
  width: 50px;
  width: 3.125rem;
}

.infograph-item__num--04 span {
  width: 110px;
  width: 6.875rem;
}

.infograph-item__num--05 span {
  width: 134px;
  width: 8.375rem;
}

.infograph-item__num--05sub {
  font-size: 13px;
  font-size: 0.8125rem;
}

.infograph-item__num--05sub span {
  width: 50px;
  width: 3.125rem;
  font-weight: 500;
  font-size: 35px;
  font-size: 2.1875rem;
}

.infograph-item__num--06 span {
  width: 180px;
  width: 11.25rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--06 span {
    width: 8.75rem;
  }
}

.infograph-item__num--07 span {
  width: 77px;
  width: 4.8125rem;
  font-size: 70px;
  font-size: 4.375rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--07 span {
    width: 3.125rem;
    font-size: 3.125rem;
  }
}

.infograph-item__num--10sub,
.infograph-item__num--10sub1,
.infograph-item__num--10sub2,
.infograph-item__num--10sub3 {
  font-size: 13px;
  font-size: 0.8125rem;
}

.infograph-item__num--10sub1 span {
  width: 20px;
  width: 1.25rem;
  font-weight: 500;
  font-size: 35px;
  font-size: 2.1875rem;
}

.infograph-item__num--10sub2 span {
  width: 31px;
  width: 1.9375rem;
  font-weight: 500;
  font-size: 35px;
  font-size: 2.1875rem;
}

.infograph-item__num--10sub3 span {
  width: 37px;
  width: 2.3125rem;
  font-weight: 500;
  font-size: 35px;
  font-size: 2.1875rem;
}

.infograph-item__num--08 span,
.infograph-item__num--14 span {
  width: 166px;
  width: 10.375rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--08 span,
  .infograph-item__num--14 span {
    width: 8.0625rem;
  }
}

.infograph-item__num--15 span {
  width: 189px;
  width: 11.8125rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--15 span {
    font-size: 4.0625rem;
    width: 8.375rem;
  }
}

.infograph-item__num--16 span {
  width: 150px;
  width: 9.375rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--16 span {
    width: 7.5rem;
  }
}

.infograph-item__num--17 span {
  width: 136px;
  width: 8.5rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--17 span {
    width: 6.875rem;
  }
}

.infograph-item__num--10 span {
  width: 100px;
  width: 6.25rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--10 span {
    width: 8.125rem;
  }
}

.infograph-item__num--09 span {
  width: 151px;
  width: 9.4375rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--09 span {
    width: 7.8125rem;
  }
}

.infograph-item__num--12 span {
  width: 73px;
  width: 4.5625rem;
  font-size: 70px;
  font-size: 4.375rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--12 span {
    width: 2.6875rem;
    font-size: 2.5rem;
  }
}

.infograph-item__num--13-1,
.infograph-item__num--13-2 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 0;
}

.infograph-item__num--13-1 span {
  width: 35px;
  width: 2.1875rem;
  font-size: 50px;
  font-size: 3.125rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--13-1 span {
    width: 2.6875rem;
    font-size: 2.5rem;
  }
}

.infograph-item__num--13-2 span {
  width: 50px;
  width: 3.125rem;
  font-size: 50px;
  font-size: 3.125rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__num--13-2 span {
    width: 2.6875rem;
    font-size: 2.5rem;
  }
}

.infograph-item__img {
  width: 100%;
  margin-top: 35px;
  margin-top: 2.1875rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img {
    margin-top: 1.5625rem;
  }
}

.infograph-item__img.infograph-item__img--noTop {
  margin-top: 0;
}

.infograph-item__img img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.infograph-item__img--01 img {
  max-width: 200px;
  max-width: 12.5rem;
  aspect-ratio: 200/146;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--01 img {
    max-width: 10.3125rem;
  }
}

.infograph-item__img--02 img {
  max-width: 240px;
  max-width: 15rem;
  aspect-ratio: 240/128;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--02 img {
    max-width: 12.5rem;
  }
}

.infograph-item__img--03 img {
  max-width: 200px;
  max-width: 12.5rem;
  aspect-ratio: 200/140;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--03 img {
    max-width: 10rem;
  }
}

.infograph-item__img--04 img {
  max-width: 160px;
  max-width: 10rem;
  aspect-ratio: 160/140;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--04 img {
    max-width: 7.9375rem;
  }
}

.infograph-item__img--05 {
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.infograph-item__img--05 img {
  max-width: 50px;
  max-width: 3.125rem;
  aspect-ratio: 50/116;
  margin: 0 auto;
}

.infograph-item__img--10-2,
.infograph-item__img--10-3 {
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.infograph-item__img--10-2 img {
  max-width: 50px;
  max-width: 3.125rem;
  aspect-ratio: 50/100;
  margin: 0 auto;
}

.infograph-item__img--10-3 img {
  max-width: 50px;
  max-width: 3.125rem;
  aspect-ratio: 50/116;
  margin: 0 auto;
}

.infograph-item__img--06 img {
  max-width: 200px;
  max-width: 12.5rem;
  aspect-ratio: 200/142;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--06 img {
    max-width: 9.5625rem;
  }
}

.infograph-item__img--07 {
  max-width: 160px;
  max-width: 10rem;
  width: 100%;
  margin-left: 15px;
  margin-left: 0.9375rem;
  margin-right: 34px;
  margin-right: 2.125rem;
}
.infograph-item__img--12 {
  max-width: 160px;
  max-width: 10rem;
  width: 100%;
  margin-left: 15px;
  margin-left: 0.9375rem;
  margin-right: 15px;
  margin-right: 0.9375rem;
}
.infograph-item__img--07 img,
.infograph-item__img--12 img {
  max-width: 160px;
  max-width: 10rem;
  aspect-ratio: 160/160;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--07 img,
  .infograph-item__img--12 img {
    max-width: 9rem;
  }
}

.infograph-item__img--12 img {
  -webkit-transform: rotate(-120deg);
          transform: rotate(-120deg);
}

.infograph-item__img--08 {
  margin-top: 15px;
  margin-top: 0.9375rem;
  margin-left: 58px;
  margin-left: 3.625rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--08 {
    margin-left: 1.5625rem;
  }
}

.infograph-item__img--08 img {
  max-width: 166px;
  max-width: 10.375rem;
  aspect-ratio: 166/179;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--08 img {
    max-width: 7.75rem;
  }
}

.infograph-item__img--09 {
  margin-top: 15px;
  margin-top: 0.9375rem;
  margin-left: 60px;
  margin-left: 3.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--09 {
    margin-left: 1.125rem;
  }
}

.infograph-item__img--09 img {
  max-width: 178px;
  max-width: 11.125rem;
  aspect-ratio: 178/145;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--09 img {
    max-width: 7.6875rem;
  }
}

.infograph-item__img--11 {
  margin-top: 0;
  max-width: 56px;
  max-width: 3.5rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--11 {
    max-width: 3.125rem;
  }
}

.infograph-item__img--13 {
  max-width: 160px;
  max-width: 10rem;
  width: 100%;
}

.infograph-item__img--14 {
  margin-top: 13px;
  margin-top: 0.8125rem;
  margin-left: 58px;
  margin-left: 3.625rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--14 {
    margin-left: 1.5625rem;
  }
}

.infograph-item__img--15 {
  margin-top: 6px;
  margin-top: 0.375rem;
  margin-left: 48px;
  margin-left: 3rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--15 {
    margin-top: 0;
    margin-left: 1.5625rem;
  }
}

.infograph-item__img--16 {
  margin-top: 27px;
  margin-top: 1.6875rem;
  margin-left: 30px;
  margin-left: 1.875rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--16 {
    margin-left: 0.9375rem;
  }
}

.infograph-item__img--17 {
  margin-top: 19px;
  margin-top: 1.1875rem;
  margin-left: 32px;
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--17 {
    margin-left: 0.9375rem;
  }
}

.infograph-item__img--14 img {
  max-width: 177px;
  max-width: 11.0625rem;
  aspect-ratio: 177/154;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--14 img {
    max-width: 8.125rem;
  }
}

.infograph-item__img--15 img {
  max-width: 157px;
  max-width: 9.8125rem;
  aspect-ratio: 157/154;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--15 img {
    max-width: 8.125rem;
  }
}

.infograph-item__img--16 img {
  max-width: 216px;
  max-width: 13.5rem;
  aspect-ratio: 216/159;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--16 img {
    max-width: 10.625rem;
  }
}

.infograph-item__img--17 img {
  max-width: 226px;
  max-width: 14.125rem;
  aspect-ratio: 226/171;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .infograph-item__img--17 img {
    max-width: 9.6875rem;
  }
}

.infograph-item__element {
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.infograph-item__age {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.infograph-item__date {
  font-size: 13px;
  font-size: 0.8125rem;
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.infograph-item__men {
  color: #fff;
  background-color: #ffc000;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  padding: 4px 9px;
  padding: 0.25rem 0.5625rem;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .infograph-item__men {
    font-size: 0.8125rem;
  }
}

.infograph-item__women {
  color: #ffc000;
  background-color: #EAEAEA;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  padding: 4px 9px;
  padding: 0.25rem 0.5625rem;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .infograph-item__women {
    font-size: 0.8125rem;
  }
}

.infograph-item__numWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  gap: 0.625rem;
}

.infograph-item__numWrap--column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.infograph-item__numWrap--13 {
  gap: 0 60px;
  gap: 0 3.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__numWrap--13 {
    gap: 0 1.25rem;
  }
}

.infograph-item__numWrap--company {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.infograph-item__numBox {
  margin-top: 17px;
  margin-top: 1.0625rem;
}

.infograph-item__numBox--13 {
  margin-top: 0;
  max-width: 160px;
  max-width: 10rem;
  width: 100%;
}

.infograph-item__numDesc {
  font-size: 13px;
  font-size: 0.8125rem;
  color: #A4A4A4;
  line-height: 2;
}

.infograph-item__skill01 {
  padding: 0 10px;
  padding: 0 0.625rem;
  display: inline-block;
  background-color: #ffc000;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .infograph-item__skill01 {
    padding: 0 0.3125rem;
    font-size: 0.8125rem;
  }
}

.infograph-item__skill02 {
  padding: 0 10px;
  padding: 0 0.625rem;
  display: inline-block;
  background-color: #4AB7A1;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .infograph-item__skill02 {
    padding: 0 0.3125rem;
    font-size: 0.8125rem;
  }
}

.infograph-item__skill03 {
  padding: 0 10px;
  padding: 0 0.625rem;
  display: inline-block;
  background-color: #D6D6D6;
  color: #ffc000;
}
@media screen and (max-width: 768px) {
  .infograph-item__skill03 {
    padding: 0 0.3125rem;
    font-size: 0.8125rem;
  }
}

.infograph-item__skill04 {
  padding: 0 10px;
  padding: 0 0.625rem;
  display: inline-block;
  background-color: #EAEAEA;
  color: #ffc000;
}
@media screen and (max-width: 768px) {
  .infograph-item__skill04 {
    padding: 0 0.3125rem;
    font-size: 0.8125rem;
  }
}

.infograph-item__table {
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__table {
    margin-top: 1.3125rem;
  }
}

.infograph-item__table-note {
  text-align: right;
  margin-top: 10px;
  margin-top: 0.625rem;
  font-size: 13px;
  font-size: 0.8125rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__table-note {
    font-size: 0.75rem;
  }
}

.infograph-item__txt {
  margin-top: 15px;
  margin-top: 0.9375rem;
  font-size: 13px;
  font-size: 0.8125rem;
}

.infograph-item__txt span {
  display: inline-block;
  margin-bottom: 5px;
  margin-bottom: 0.3125rem;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffc000;
}

.infograph-item__txt .small {
  font-size: 12px;
  font-size: 0.75rem;
}

.infograph-item__numHead {
  color: #fff;
  background: #ffc000;
  font-size: 14px;
  font-size: 0.875rem;
  border-radius: 0.9375rem;
  padding: 3px;
  padding: 0.1875rem;
  width: 100px;
  width: 6.25rem;
  text-align: center;
}

.infograph-item__descHead {
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  background: #EAEAEA;
  border-radius: 0.9375rem;
  padding: 3px 12px;
  padding: 0.1875rem 0.75rem;
  display: inline-block;
}

.infograph-item__desc {
  max-width: 423px;
  max-width: 26.4375rem;
  width: 100%;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.9333333333;
  letter-spacing: 0.05em;
  margin-top: 17px;
  margin-top: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .infograph-item__desc {
    font-size: 0.8125rem;
    margin-top: 0.625rem;
  }
}

.infograph-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .infograph-items {
    grid-template-columns: repeat(1, 1fr);
  }
}

.infograph-items.infograph-items--workers {
  margin-top: 0;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 768px) {
  .infograph-items.infograph-items--workers {
    grid-template-columns: repeat(1, 1fr);
  }
}

.infograph-items.infograph-items--workers .infograph-item__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.infograph-items.infograph-items--workers .infograph-item .infograph-item__wrap {
  border-right: 0;
  min-height: 285px;
  min-height: 17.8125rem;
}
@media screen and (max-width: 768px) {
  .infograph-items.infograph-items--workers .infograph-item .infograph-item__wrap {
    min-height: 0;
    min-height: initial;
    padding-right: 0;
  }
}

.infograph-items.infograph-items--company .infograph-item:not(:nth-of-type(3n + 1)) .infograph-item__wrap,
.infograph-items.infograph-items--workers .infograph-item:not(:nth-of-type(3n + 1)) .infograph-item__wrap {
  margin-left: 0;
}

.infograph-items.infograph-items--company .infograph-item:nth-of-type(n + 3),
.infograph-items.infograph-items--workers .infograph-item:nth-of-type(n + 3) {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.infograph-items.infograph-items--company .infograph-item:not(:nth-of-type(2n - 1)) .infograph-item__wrap,
.infograph-items.infograph-items--workers .infograph-item:not(:nth-of-type(2n - 1)) .infograph-item__wrap {
  margin-top: 0;
  margin-left: 60px;
  margin-left: 3.75rem;
}
@media screen and (max-width: 768px) {
  .infograph-items.infograph-items--company .infograph-item:not(:nth-of-type(2n - 1)) .infograph-item__wrap,
  .infograph-items.infograph-items--workers .infograph-item:not(:nth-of-type(2n - 1)) .infograph-item__wrap {
    margin-left: 0;
  }
}

.infograph-items.infograph-items--workers .infograph-item:nth-last-of-type(1),
.infograph-items.infograph-items--workers .infograph-item:nth-last-of-type(2) {
  border-bottom: 0;
}

@media screen and (max-width: 768px) {
  .infograph-items.infograph-items--workers .infograph-item:nth-last-of-type(2) {
    border-bottom: 1px solid rgba(137, 137, 137, .15);
    -o-border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
       border-image: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(3%, #fff), color-stop(3%, rgba(137, 137, 137, .15)), color-stop(97%, rgba(137, 137, 137, .15)), color-stop(97%, #fff), to(#fff));
       border-image: linear-gradient(to right, #fff 0%, #fff 3%, rgba(137, 137, 137, .15) 3%, rgba(137, 137, 137, .15) 97%, #fff 97%, #fff 100%);
    border-image-slice: 1;
  }
}

.infograph-items.infograph-items--company {
  margin-top: 0;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 768px) {
  .infograph-items.infograph-items--company {
    grid-template-columns: repeat(1, 1fr);
  }
}

.infograph-items.infograph-items--company .infograph-item__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.infograph-table {
  width: 100%;
}

.infograph-table,
.infograph-table tr:not(:first-child) td,
.infograph-table tr:not(:first-child) th {
  border-collapse: collapse;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}

.infograph-table td {
  text-align: right;
}

.infograph-table th {
  width: 128px;
  width: 8rem;
  font-weight: normal;
  text-align: left;
}

.infograph-table__item {
  background-color: #E5E5E5;
  border-radius: 1rem;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1;
  padding: 3px 10px;
  padding: 0.1875rem 0.625rem;
}

.infograph-table__year {
  font-size: 13px;
  font-size: 0.8125rem;
}
@media screen and (max-width: 768px) {
  .infograph-table__year {
    font-size: 0.75rem;
  }
}

.infograph-table__numMain {
  width: 110px;
  width: 6.875rem;
}

.infograph-table__num {
  font-size: 24px;
  font-size: 1.5rem;
  font-family: "Barlow", sans-serif;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .infograph-table__num {
    font-size: 1.375rem;
  }
}

.infograph-table__num span {
  font-size: 13px;
  font-size: 0.8125rem;
}
@media screen and (max-width: 768px) {
  .infograph-table__num span {
    font-size: 0.75rem;
  }
}

.inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  padding-left: 25px;
  padding-left: 1.5625rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .inner {
    max-width: 1200px;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.inter-course__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .inter-course__inner {
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 4.375rem;
  }
}

.inter-course__sec-ttl {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (max-width: 768px) {
  .inter-course__sec-ttl {
    margin-top: 3.75rem;
  }
}

.inter-course__items {
  padding-top: 75px;
  padding-top: 4.6875rem;
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .inter-course__items {
    padding-top: 3.125rem;
  }
}

.inter-course__item + .inter-course__item {
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media screen and (max-width: 768px) {
  .inter-course__item + .inter-course__item {
    margin-top: 3.125rem;
  }
}

.inter-course__ttl {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .inter-course__ttl {
    font-size: 1.25rem;
  }
}

.inter-course__desc {
  margin-top: 30px;
  margin-top: 1.875rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .inter-course__desc {
    margin-top: 1.5625rem;
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}

.inter-course__img {
  max-width: 100%;
  width: 100%;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .inter-course__img {
    margin-top: 1.5625rem;
  }
}

.inter-course__img img .lower-head__mv img {
  width: 100%;
  aspect-ratio: 960/460;
}
.inter-course__table.table__wrap {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .inter-course__table.table__wrap {
    margin-top: 2.1875rem;
  }
}

.inter-page__link {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .inter-page__link {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.inter-qa__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 120px;
  padding-top: 7.5rem;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .inter-qa__inner {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.inter-qa__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 40px;
  padding-top: 2.5rem;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .inter-qa__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 2.5rem;
  }
}

.inter-qa__no {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  line-height: 1;
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  max-width: calc(100% - 50.625rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .inter-qa__no {
    max-width: 100%;
  }
}

.inter-qa__no span {
  color: #ffc000;
  margin-left: 5px;
  margin-left: 0.3125rem;
}

.inter-qa__txts {
  margin-left: 20px;
  margin-left: 1.25rem;
  max-width: 800px;
  max-width: 50rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .inter-qa__txts {
    max-width: 100%;
    margin-top: 0.9375rem;
    margin-left: 0;
  }
}

.inter-qa__que {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .inter-qa__que {
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }
}

.inter-qa__ans {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.07em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .inter-qa__ans {
    font-size: 0.875rem;
    margin-top: 0.9375rem;
  }
}

.inter-slider {
  overflow: hidden;
  margin-right: calc(50% - 50vw);
  margin-left: auto;
  width: calc(50vw + 50%);
}
.inter-slider__items {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}

.inter-slider__items + .inter-slider__items {
  margin-left: 5px;
  margin-left: 0.3125rem;
}

.inter-slider__item + .inter-slider__item {
  margin-left: 5px;
  margin-left: 0.3125rem;
}

.inter-voice {
  overflow: hidden;
}

.inter-voice__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 120px;
  padding-top: 7.5rem;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .inter-voice__inner {
    padding-top: 4.375rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.inter-voice__contents {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .inter-voice__contents {
    margin-top: 2.8125rem;
  }
}

.inter-voice__content + .inter-voice__content {
  margin-top: 110px;
  margin-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  .inter-voice__content + .inter-voice__content {
    margin-top: 3.4375rem;
  }
}

.inter-voice__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .inter-voice__body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.inter-voice__ttls {
  max-width: calc(100% - 46.25rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .inter-voice__ttls {
    max-width: 100%;
  }
}

.inter-voice__ttl {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .inter-voice__ttl {
    font-size: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
  }
}

.inter-voice__txts {
  max-width: 740px;
  max-width: 46.25rem;
  width: 100%;
  padding-left: 20px;
  padding-left: 1.25rem;
}
@media screen and (max-width: 768px) {
  .inter-voice__txts {
    max-width: 100%;
    padding-left: 0;
  }
}

.inter-voice__txt {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.06em;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 768px) {
  .inter-voice__txt {
    font-size: 0.875rem;
    letter-spacing: 0.07em;
    padding-bottom: 2.5rem;
  }
}

@media screen and (max-width: 768px) {
  .inter-voice__txt:first-of-type {
    padding-top: 2.5rem;
  }
}

.inter-voice__txt:not(:first-of-type) {
  padding-top: 30px;
  padding-top: 1.875rem;
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
}
@media screen and (max-width: 768px) {
  .inter-voice__txt:not(:first-of-type) {
    padding-top: 2.5rem;
  }
}

.inter-voice__imgs {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .inter-voice__imgs {
    margin-top: 0;
  }
}

.inter-voice__slider {
  width: 100%;
}

.interview-art-top {
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .interview-art-top {
    margin-bottom: -3.125rem;
  }
}

.interview-art-top__inner {
  position: relative;
}
.interview-art-top__img {
  position: relative;
  width: 100%;
}

.interview-art-top__img::before {
  content: "";
  display: block;
  padding-top: 54.375%;

}
@media screen and (max-width: 768px) {
  .interview-art-top__img::before {
    padding-top: 77.333%;
  }
}

.interview-art-top__img img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.interview-art-top__intro {
  position: absolute;
  display: inline-block;
  z-index: 101;
  bottom: 0;
  right: calc(50% - 50vw + 7.5rem);
  margin-right: auto;
  background-color: #fff;
  padding-top: 30px;
  padding-top: 1.875rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-right: 40px;
  padding-right: 2.5rem;
  padding-left: 40px;
  padding-left: 2.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art-top__intro {
    position: relative;
    display: block;
    right: 0;
    max-width: 22.1875rem;
    bottom: 3.75rem;
    margin-right: inherit;
    margin-left: auto;
    padding-top: 1.5625rem;
    padding-bottom: 1.25rem;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.interview-art-top__year {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  color: #3E3A39;
}

.interview-art-top__infos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .interview-art-top__infos {
    margin-top: 0.625rem;
  }
}

.interview-art-top__occ {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.07em;
  color: #fff;
  background-color: #ffc000;
  padding-top: 4px;
  padding-top: 0.25rem;
  padding-bottom: 6px;
  padding-bottom: 0.375rem;
  padding-right: 9px;
  padding-right: 0.5625rem;
  padding-left: 9px;
  padding-left: 0.5625rem;
  margin-top: 4px;
  margin-top: 0.25rem;
}
.interview-art-top__name {
  font-size: 24px;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  font-weight: 500;
  margin-left: 15px;
  margin-left: 0.9375rem;
}

.interview-art-top__items {
  margin-top: 15px;
  margin-top: 0.9375rem;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .interview-art-top__items {
    font-size: 0.75rem;
  }
}

.interview-art-top__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.interview-art-top__item + .interview-art-top__item {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.interview-art-top__type {
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .interview-art-top__type {
    max-width: 2.5rem;
    width: 100%;
  }
}

.interview-art-top__text {
  margin-left: 10px;
  margin-left: 0.625rem;
}
.interview-art {
  overflow: hidden;
}

.interview-art__inner {
  width: 100%;
  max-width: 1170px;
  max-width: 73.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .interview-art__inner {
    margin-top: -3.75rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.interview-art__items {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__items {
    margin-top: 5rem;
  }
}

.interview-art__item {
  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;
}
@media screen and (max-width: 768px) {
  .interview-art__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.interview-art__item:not(:first-of-type) {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__item:not(:first-of-type) {
    margin-top: 3.75rem;
  }
}

.interview-art__item:nth-of-type(5) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .interview-art__item:nth-of-type(5) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.interview-art__txts {
  max-width: 440px;
  max-width: 27.5rem;
  width: 100%;
  margin-left: 40px;
  margin-left: 2.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__txts {
    max-width: 100%;
    margin-left: 0;
  }
}

.interview-art__item:nth-of-type(5) .interview-art__txts {
  margin-left: 120px;
  margin-left: 7.5rem;
  margin-right: 40px;
  margin-right: 2.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__item:nth-of-type(5) .interview-art__txts {
    margin-left: 0;
    margin-right: 0;
  }
}

.interview-art__que {
  position: relative;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 500;
  color: #ffc000;
  margin-left: 25px;
  margin-left: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .interview-art__que {
    font-size: 0.8125rem;
    margin-left: 1.5625rem;
  }
}

.interview-art__que::before {
  content: "";
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  left: -25px;
  left: -1.5625rem;
  display: inline-block;
  width: 20.63px;
  width: 1.289375rem;
  height: 14.9px;
  height: 0.93125rem;
  background-image: url(../../images/interview/q.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .interview-art__que::before {
    width: 1.15625rem;
    height: 0.835rem;
    top: 0.1875rem;
    left: -1.5625rem;
  }
}

.interview-art__ttl {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.75;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__ttl {
    font-size: 1.25rem;
    line-height: 1.8;
    margin-top: 1.5625rem;
  }
}

.interview-art__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.07em;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .interview-art__txt {
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.07em;
    margin-top: 1.25rem;
  }
}

.interview-art__txt span {
  text-decoration: underline;
}

.interview-art__img {
  max-width: 520px;
  max-width: 32.5rem;
  width: 100%;
  margin-left: 120px;
  margin-left: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__img {
    max-width: 100%;
    margin-left: 0;
    margin-top: 1.5625rem;
  }
}

.interview-art__item:nth-of-type(5) .interview-art__img {
  margin-left: 0;
}

.interview-art__img img {
  width: 100%;
  aspect-ratio: 520/616;
}
.interview-art__full-img {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__full-img {
    margin-top: 3.75rem;
  }
}

.interview-art__full-img img {
  width: 100%;
  aspect-ratio: 1440/616;
}
@media screen and (max-width: 768px) {
  .interview-art__full-img img {
    aspect-ratio: 375/260;
  }
}

.interview-art__item--ex {
  position: relative;
  z-index: 101;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: -160px;
  margin-right: -10rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media (max-width: 1439px) {
  .interview-art__item--ex {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
}
@media screen and (max-width: 768px) {
  .interview-art__item--ex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.interview-art__item--ex .interview-art__img {
  max-width: 400px;
  max-width: 25rem;
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-art__item--ex .interview-art__img {
    max-width: 68.266%;
    margin-top: 2.8125rem;
  }
}

.interview-art__item--ex .interview-art__img img {
  width: 100%;
  aspect-ratio: 400/250;
}
@media screen and (max-width: 768px) {
  .interview-art__item--ex .interview-art__img img {
    aspect-ratio: 256/160;
  }
}

.interview-art__item--ex .interview-art__txts {
  position: relative;
  z-index: 101;
  max-width: 720px;
  max-width: 45rem;
  margin-top: -105px;
  margin-top: -6.5625rem;
  margin-left: 0;
  padding-top: 80px;
  padding-top: 5rem;
  padding-right: 160px;
  padding-right: 10rem;
  padding-left: 80px;
  padding-left: 5rem;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .interview-art__item--ex .interview-art__txts {
    max-width: 22.1875rem;
    margin-top: -3.4375rem;
    margin-left: auto;
    padding-top: 2.1875rem;
    padding-left: 1.5625rem;
    padding-right: 1.25rem;
  }
}

.interview-breadcrumbs {
  border-bottom: none;
  position: relative;
  z-index: 99;
}
@media screen and (max-width: 768px) {
  .interview-breadcrumbs {
    margin-top: 1.875rem;
    margin-bottom: 0.3125rem;
  }
}

.interview-breadcrumbs .breadcrumbs__lists {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.interview-card {
  max-width: calc(33.33333% - 1.66667rem);
  width: 100%;
  position: relative;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  .interview-card {
    max-width: calc(50% - 0.75rem);
  }
}

.interview-card:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .interview-card:hover {
    opacity: 1;
  }
}

.interview-card a::before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 100%;
}

.interview-card a {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.interview-card + .interview-card {
  margin-left: 40px;
}
@media screen and (max-width: 1200px) {
  .interview-card + .interview-card {
    margin-left: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-card + .interview-card {
    margin-left: 1.4375rem;
  }
}

.interview-card:nth-child(3n+1) {
  margin-left: 0;
}

.interview-card:nth-child(n+4) {
  margin-top: 85px;
}
@media screen and (max-width: 1200px) {
  .interview-card:nth-child(n+4) {
    margin-top: 5.3125rem;
  }
}

@media screen and (max-width: 768px) {
  .interview-card:nth-child(2n+1) {
    margin-left: 0;
  }
}

@media screen and (max-width: 768px) {
  .interview-card:nth-child(n+3) {
    margin-top: 1.875rem;
  }
}

.interview-card__img {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.interview-card__img::before {
  content: "";
  display: block;
  padding-top: 100%;

}

.interview-card__img img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.interview-card:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .interview-card:hover img {
    -webkit-transform: none;
            transform: none;
  }
}

.interview-card__job {
  font-weight: 500;
  line-height: 1.8461538462;
  letter-spacing: 0.08em;
  color: #fff;
  display: inline-block;
  background-color: #ffc000;
  font-size: 13px;
  font-size: 0.8125rem;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 1px 10px;
  padding: 0.0625rem 0.625rem;
}
@media screen and (max-width: 768px) {
  .interview-card__job {
    font-size: 0.6875rem;
    margin-top: 1rem;
    padding: 0.1875rem 0.4375rem 0.1875rem;
  }
}

.interview-card__title {
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
  font-size: 20px;
  font-size: 1.25rem;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .interview-card__title {
    font-size: 1rem;
    margin-top: 0.625rem;
  }
}

.interview-card__info {
  line-height: 1.7142857143;
  letter-spacing: 0.08em;
  color: #777777;
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 12px;
  margin-top: 0.75rem;
}
@media screen and (max-width: 768px) {
  .interview-card__info {
    font-size: 0.75rem;
    margin-top: 0.1875rem;
  }
}

.interview-card__more {
  margin-left: 120px;
  margin-top: -15px;
}
@media screen and (max-width: 1200px) {
  .interview-card__more {
    margin-left: 7.5rem;
    margin-top: -0.9375rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-card__more {
    margin-left: 0;
  }
}

.interview-card__more .link-btn {
  padding-bottom: 10px;
}
@media screen and (max-width: 1200px) {
  .interview-card__more .link-btn {
    padding-bottom: 0.625rem;
  }
}

.interview-flow {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-flow {
    margin-top: 3.75rem;
  }
}

.interview-flow__inner {
  width: 100%;
  max-width: 715px;
  max-width: 44.6875rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 115px;
  padding-top: 7.1875rem;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  padding-right: 25px;
  padding-left: 25px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .interview-flow__inner {
    padding-top: 3.75rem;
    padding-bottom: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.interview-flow__ttl .sec-sub-ttl__jp span {
  position: relative;
  margin-left: 30px;
  margin-left: 1.875rem;
  font-size: 24px;
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .interview-flow__ttl .sec-sub-ttl__jp span {
    font-size: 1.25rem;
    letter-spacing: 0.07em;
    margin-left: 0.9375rem;
  }
}

.interview-flow__ttl .sec-sub-ttl__jp span::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: -30px;
  left: -1.875rem;
}
@media screen and (max-width: 768px) {
  .interview-flow__ttl .sec-sub-ttl__jp span::before {
    width: 0.4375rem;
    height: 0.4375rem;
    top: 0.4375rem;
    left: -0.9375rem;
  }
}

.interview-flow__flow {
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media screen and (max-width: 768px) {
  .interview-flow__flow {
    margin-top: 3.125rem;
  }
}

.interview-flow--grad .flow__content {
  min-height: 20px;
  min-height: 1.25rem;
}

@media screen and (max-width: 768px) {
  .interview-flow--grad .flow__content + .flow__content {
    margin-top: 1.25rem;
  }
}

.interview-flow__flow .flow__txt {
  max-width: calc(100% - 5rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .interview-flow__flow .flow__txt {
    max-width: 100%;
  }
}

.interview-flow--grad .flow__txt {
  max-width: calc(100% - 2.5rem);
  margin-top: -6px;
  margin-top: -0.375rem;
}
@media screen and (min-width: 769px) and (max-width: 1000px) {
  .interview-flow--grad .flow__txt {
    margin-top: -0.41875rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-flow--grad .flow__txt {
    max-width: 100%;
  }
}

.interview-flow__flow .flow__date {
  font-size: 14px;
  font-size: 0.875rem;
  max-width: 80px;
  max-width: 5rem;
  width: 100%;
}

.interview-flow--grad .flow__date {
  font-size: 16px;
  font-size: 1rem;
  font-family: "Barlow", sans-serif;
  letter-spacing: 0.01em;
  text-align: right;
  margin-right: 25px;
  margin-right: 1.5625rem;
  max-width: 40px;
  max-width: 2.5rem;
  width: 100%;
}

.interview-flow__flow .flow__wrap::after {
  top: -30px;
  top: -1.875rem;
  left: -4px;
  left: -0.25rem;
  height: 108%;
}
@media screen and (min-width: 769px) and (max-width: 970px) {
  .interview-flow__flow .flow__wrap::after {
    left: -0.125rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-flow__flow .flow__wrap::after {
    height: 97%;
    top: 0.625rem;
    padding-left: 0.50625rem;
  }
}

.interview-flow--grad .flow__wrap::after {
  left: -46px;
  left: -2.875rem;
  height: 113%;
}
@media screen and (min-width: 769px) and (max-width: 970px) {
  .interview-flow--grad .flow__wrap::after {
    left: -2.75rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-flow--grad .flow__wrap::after {
    height: 97.5%;
    left: -0.25rem;
  }
}

.interview-flow__flow .flow__txt::before {
  background-color: #fff;
  padding: 2.75px;
  padding: 0.171875rem;
  margin-top: 9px;
  margin-top: 0.5625rem;
}
@media screen and (max-width: 768px) {
  .interview-flow__flow .flow__txt::before {
    margin-top: 0.4375rem;
  }
}

.interview-flow--grad .flow__txt::before {
  margin-right: 30px;
  margin-right: 1.875rem;
}
@media screen and (max-width: 768px) {
  .interview-flow--grad .flow__txt::before {
    margin-right: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .interview-flow__flow .flow__txt span {
    display: contents;
    margin-bottom: 0.625rem;
  }
}

@media screen and (max-width: 768px) {
  .interview-flow--grad .flow__txt span {
    font-family: "Barlow", "Noto Sans JP", sans-serif;
  }
}

.interview-link {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-link {
    margin-top: 3.4375rem;
  }
}

.interview-link__inner {
  width: 100%;
  max-width: 770px;
  max-width: 48.125rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 120px;
  padding-top: 7.5rem;
  padding-bottom: 105px;
  padding-bottom: 6.5625rem;
  padding-right: 25px;
  padding-left: 25px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .interview-link__inner {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.interview-link__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .interview-link__cards {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

.interview-link__card {
  max-width: 240px;
  max-width: 15rem;
  width: 100%;
  position: relative;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 768px) {
  .interview-link__card {
    max-width: 9.75rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media screen and (max-width: 768px) {
  .interview-link__card:nth-of-type(2) {
    margin-left: 1.0625rem;
  }
}

.interview-link__card a::before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 100%;
}

.interview-link__card a {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.interview-link__card:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .interview-link__card:hover {
    opacity: 1;
  }
}

.interview-link__card:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .interview-link__card:hover img {
    -webkit-transform: none;
            transform: none;
  }
}

.interview-link__card .interview-card {
  max-width: 100%;
}

.interview-link__card .interview-card__title {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7777777778;
}
@media screen and (max-width: 768px) {
  .interview-link__card .interview-card__title {
    font-size: 0.9375rem;
    line-height: 1.6666666667;
  }
}

.interview-link__card .interview-card__info {
  color: #fff;
}

.interview-link__img {
  max-width: 27px;
  max-width: 1.6875rem;
  width: 100%;
}

.interview-link__all {
  max-width: 70px;
  max-width: 4.375rem;
  width: 100%;
  margin-top: 130px;
  margin-top: 8.125rem;
  margin-right: 85px;
  margin-right: 5.3125rem;
  margin-left: 85px;
  margin-left: 5.3125rem;
  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-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .interview-link__all {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    max-width: 100%;
    margin-top: 1.875rem;
  }
}

.interview-link__all:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .interview-link__all:hover {
    opacity: 1;
  }
}

.interview-link__all img {
  -webkit-transform: 0.3s;
          transform: 0.3s;
}

.interview-link__all:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .interview-link__all:hover img {
    -webkit-transform: none;
            transform: none;
  }
}

.interview-link__all span {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.07em;
  font-weight: 600;
  font-family: "Barlow", sans-serif;
  margin-top: 15px;
  margin-top: 0.9375rem;
  text-decoration: underline;
}

.interview-lower-breadcrumbs {
  border-bottom: none;
  position: relative;
  z-index: 99;
}
@media screen and (max-width: 768px) {
  .interview-lower-breadcrumbs {
    margin-top: 1.875rem;
    margin-bottom: 0.3125rem;
  }
}

.interview-lower-breadcrumbs .breadcrumbs__lists {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  .interview-lower-breadcrumbs .breadcrumbs__lists {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.interview-lower__inner {
  width: 100%;
  max-width: 1250px;
  max-width: 78.125rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
  margin-right: auto;
  margin-left: auto;
  padding-left: calc(50% - 50vw + 7.5rem);
  padding-right: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .interview-lower__inner {
    margin-bottom: 3.75rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.interview-lower__txt {
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.07em;
  margin-top: -20px;
  margin-top: -1.25rem;
  padding-left: 120px;
  padding-left: 7.5rem;
}
@media screen and (max-width: 768px) {
  .interview-lower__txt {
    font-size: 0.875rem;
    line-height: 1.7857142857;
    margin-top: 1.875rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.interview-lower__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards {
    margin-top: 2.1875rem;
  }
}

.interview-lower__cards .interview-card {
  max-width: calc(33.333% - 2.5rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card {
    max-width: calc(50% - 0.71875rem);
  }
}

.interview-lower__cards .interview-card + .interview-card {
  margin-left: 60px;
  margin-left: 3.75rem;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card + .interview-card {
    margin-left: 1.4375rem;
  }
}

.interview-lower__cards .interview-card:nth-child(3n+1) {
  margin-left: 0;
}
.interview-lower__cards .interview-card:nth-child(n+4) {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card:nth-child(n+4) {
    margin-left: 1.4375rem;
    margin-top: 1.875rem;
  }
}

@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card:nth-child(2n+1) {
    margin-left: 0;
  }
}

.interview-lower__cards .interview-card__job {
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card__job {
    font-size: 0.6875rem;
  }
}

.interview-lower__cards .interview-card__title {
  font-size: 24px;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  line-height: 1.625;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card__title {
    font-size: 0.9375rem;
    line-height: 1.6666666667;
  }
}

.interview-lower__cards .interview-card__info {
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .interview-lower__cards .interview-card__info {
    font-size: 0.75rem;
    line-height: 2;
  }
}

.interview-msg__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-top: 120px;
  margin-top: 7.5rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
}
@media screen and (max-width: 768px) {
  .interview-msg__inner {
    margin-top: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.interview-msg__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .interview-msg__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.interview-msg__item + .interview-msg__item {
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .interview-msg__item + .interview-msg__item {
    margin-top: 3.4375rem;
  }
}

.interview-msg__ttl {
  position: relative;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .interview-msg__ttl {
    font-size: 1.25rem;
    margin-left: 1.25rem;
  }
}

.interview-msg__ttl::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 0;
  left: -30px;
  left: -1.875rem;
}
@media screen and (max-width: 768px) {
  .interview-msg__ttl::before {
    width: 0.375rem;
    height: 0.375rem;
    top: 0;
    left: -1.25rem;
  }
}

.interview-msg__txt {
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2.1333333333;
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .interview-msg__txt {
    font-size: 0.875rem;
    margin-top: 1.5625rem;
    letter-spacing: 0.07em;
    line-height: 2;
  }
}

.interview-msg__txt span {
  font-size: 12px;
  font-size: 0.75rem;
}
@media screen and (max-width: 768px) {
  .interview-msg__txt span {
    font-size: 0.625rem;
  }
}

.interview-msg__img {
  max-width: 360px;
  max-width: 22.5rem;
  width: 100%;
  margin-left: 80px;
  margin-left: 5rem;
}
@media screen and (max-width: 768px) {
  .interview-msg__img {
    max-width: 100%;
    margin-top: 1.5625rem;
    margin-left: 0;
  }
}

.interview-msg__img img {
  width: 100%;
  aspect-ratio: 360/248;
}
.interview-swiper__body {
  width: 100%;
  overflow: hidden;
}

.interview-swiper__cards {
  margin-top: 80px;
  margin-left: -60px;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__cards {
    margin-top: 5rem;
    margin-left: -3.75rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__cards {
    margin-top: 2.1875rem;
  }
}

.interview-swiper__card {
  max-width: 320px;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__card {
    max-width: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__card {
    max-width: 15.625rem;
    width: 100%;
  }
}

.interview-swiper__card:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .interview-swiper__card:hover {
    opacity: 1;
  }
}

.interview-swiper__card a::before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 100%;
}

.interview-swiper__card a {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.interview-swiper__card + .interview-swiper__card {
  margin-left: 40px;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__card + .interview-swiper__card {
    margin-left: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__card + .interview-swiper__card {
    margin-left: 1.25rem;
  }
}

.interview-swiper__card.interview-card:nth-child(n+4) {
  margin-top: 0;
}

.interview-swiper .swiper-scrollbar {
  display: none;
}
@media screen and (max-width: 768px) {
  .interview-swiper .swiper-scrollbar {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper .interview-card:nth-child(n+3) {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper .interview-card:first-of-type {
    margin-left: 30px;
  }
}
.interview-swiper .swiper {
  margin-left: 0;
  padding-left: 20px;
}
@media screen and (max-width: 1200px) {
  .interview-swiper .swiper {
    padding-left: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper .swiper {
    padding-left: 2.5rem;
    padding-bottom: 1.25rem;
  }
}
.interview-swiper .swiper-horizontal > .swiper-scrollbar,
.interview-swiper .swiper-scrollbar.swiper-scrollbar-horizontal {
  height: 1px;
}
.interview-swiper .swiper-scrollbar {
  background: rgba(112, 112, 112, .15);
}
.interview-swiper .swiper-scrollbar-drag {
  background: rgba(0, 155, 124, .6);
  opacity: 1;
  height: 3px;
  top: -1px;
  border-radius: 0;
}
.interview-swiper .swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
  width: 11.1111111111%;
  height: 1px;
}
.interview-swiper .swiper-pagination-bullet + .swiper-pagination-bullet {
  margin-left: 0;
}
.interview-swiper .swiper-pagination-bullet {
  border-radius: 0;
}
.interview-swiper .swiper-pagination-bullet-active {
  background: #ffc000;
}
.interview-swiper .swiper-pagination-horizontal {
  width: 100%;
  position: relative;
  margin-top: -40px;
}
@media screen and (max-width: 1200px) {
  .interview-swiper .swiper-pagination-horizontal {
    margin-top: -2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper .swiper-pagination-horizontal {
    display: none;
  }
}

.interview-swiper__controller {
  max-width: 500px;
  margin-right: 70px;
  padding-top: 50px;
  width: 100%;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__controller {
    max-width: 31.25rem;
    margin-right: 4.375rem;
    padding-top: 3.125rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__controller {
    margin-top: 0.625rem;
    margin-left: 9.375rem;
    padding-top: 1.5625rem;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.interview-swiper__pagination {
  width: 100% !important;
  position: static !important;
  position: initial !important;
  bottom: auto !important;
  bottom: initial !important;
  left: auto !important;
  left: initial !important;
  text-align: left !important;
  text-align: initial !important;
}

.interview-swiper__pagination span {
  margin: initial !important;
  max-width: 100px;
  width: 100%;
  height: 1px;
  margin: 0 !important;
  border-radius: 0 !important;
  border-radius: initial !important;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__pagination span {
    max-width: 6.25rem;
  }
}

.interview-swiper__button {
  max-width: 180px;
  width: 100%;
  margin-left: 5px;
  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;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__button {
    max-width: 11.25rem;
    margin-left: 0.3125rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__button {
    margin-left: 0;
  }
}

.interview-swiper__button-prev.swiper-button-prev,
.interview-swiper__button-next.swiper-button-next {
  position: relative;
  width: 60px;
  height: 60px;
  border: 1px solid #ffc000;
  border-radius: 50%;
  opacity: 1 !important;
  cursor: pointer !important;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__button-prev.swiper-button-prev,
  .interview-swiper__button-next.swiper-button-next {
    width: 3.75rem;
    height: 3.75rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__button-prev.swiper-button-prev,
  .interview-swiper__button-next.swiper-button-next {
    width: 2.625rem;
    height: 2.625rem;
  }
}

.interview-swiper__button-prev.swiper-button-prev::after,
.interview-swiper__button-next.swiper-button-next::after {
  background-color: inherit;
  color: blue;
  font-family: "FontAwesome";
  font-size: 16px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
}
@media screen and (max-width: 1200px) {
  .interview-swiper__button-prev.swiper-button-prev::after,
  .interview-swiper__button-next.swiper-button-next::after {
    font-size: 1rem;
  }
}

.interview-swiper__button-prev.swiper-button-prev::after {
  content: "";
  display: inline-block;
  width: 17px;
  height: 12px;
  background-image: url(../../images/common/arrow-left_y.png);
  background-size: contain;
  vertical-align: middle;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__button-prev.swiper-button-prev::after {
    width: 1.0625rem;
    height: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__button-prev.swiper-button-prev::after {
    width: 0.77125rem;
    height: 0.544375rem;
  }
}

.interview-swiper__button-prev:hover,
.interview-swiper__button-next:hover {
  background-color: #ffc000;
  border: none;
}

.interview-swiper__button-prev:hover.swiper-button-prev::after {
  background-image: url(../../images/common/arrow-left--w.png);
  background-color: transparent;
}

.interview-swiper__button-next:hover.swiper-button-next::after {
  background-image: url(../../images/common/arrow-right--w.png);
}

.interview-swiper__button-next.swiper-button-next::after {
  content: "";
  display: inline-block;
  width: 17px;
  height: 12px;
  background-image: url(../../images/common/arrow-right_y.png);
  background-size: contain;
  vertical-align: middle;
  background-color: transparent;
}
@media screen and (max-width: 1200px) {
  .interview-swiper__button-next.swiper-button-next::after {
    width: 1.0625rem;
    height: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .interview-swiper__button-next.swiper-button-next::after {
    width: 0.77125rem;
    height: 0.544375rem;
  }
}

.interview-swiper__button-next.swiper-button-next {
  margin-left: 30px;
  pointer-events: initial !important;
}
@media screen and (max-width: 768px) {
  .interview-swiper__button-next.swiper-button-next {
    margin-left: 1.875rem;
  }
}

.item-head__head {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .item-head__head {
    font-size: 1.25rem;
  }
}

.item-head__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .item-head__txt {
    font-size: 0.875rem;
  }
}

.item-head__cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 50px;
  margin-top: 3.125rem;
  padding-top: 35px;
  padding-top: 2.1875rem;
  border-top: 1px solid rgba(137, 137, 137, .25);
}
@media screen and (max-width: 768px) {
  .item-head__cat {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 1.875rem;
    padding-top: 1.25rem;
  }
}

.item-head__catTtl {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #ffc000;
  font-weight: 500;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.08em;
}

.item-head__catDesc {
  margin-left: 88px;
  margin-left: 5.5rem;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .item-head__catDesc {
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    margin-top: 1rem;
    margin-left: 0;
  }
}

.item-ttl {
  padding-bottom: 32px;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(138, 138, 138, .1490196078);
  -o-border-image: linear-gradient(to right, #ffc000 0%, #ffc000 20%, rgba(138, 138, 138, .1490196078) 20%, rgba(138, 138, 138, .1490196078) 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#ffc000), color-stop(20%, #ffc000), color-stop(20%, rgba(138, 138, 138, .1490196078)), to(rgba(138, 138, 138, .1490196078)));
     border-image: linear-gradient(to right, #ffc000 0%, #ffc000 20%, rgba(138, 138, 138, .1490196078) 20%, rgba(138, 138, 138, .1490196078) 100%);
  border-image-slice: 1;
  max-width: 800px;
  max-width: 50rem;
  width: 100%;
}

.item-ttl__en {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .item-ttl__en {
    font-size: 0.8125rem;
  }
}

.item-ttl__en span::before {
  content: attr(data-en) "";
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  color: #ffc000;
  margin-right: 11px;
  margin-right: 0.6875rem;
}
@media screen and (max-width: 768px) {
  .item-ttl__en span::before {
    margin-right: 0.3125rem;
    font-size: 0.8125rem;
  }
}

.item-ttl__ja {
  margin-top: 32px;
  margin-top: 2rem;
  font-size: 46px;
  font-size: 2.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .item-ttl__ja {
    margin-top: 1.5625rem;
    font-size: 1.5rem;
  }
}

.line-move a {
  position: relative;
}

.line-move a::before {
  position: absolute;
  bottom: 2px;
  bottom: 0.125rem;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #fff;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.line-move a:hover::before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.line__btn {
  background-color: #00c300;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  padding: 10px 20px 10px 10px;
  padding: 0.625rem 1.25rem 0.625rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 40px;
  margin-right: 2.5rem;
}
@media screen and (max-width: 768px) {
  .line__btn {
    margin-right: 0;
    padding: 0.4375rem 0.625rem;
  }
}

.line__btn img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  margin-right: 18px;
  margin-right: 1.125rem;
  width: 26px;
  width: 1.625rem;
  height: 25px;
  height: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .line__btn img {
    margin-right: 0.3125rem;
    width: 1.375rem;
    height: 1.3125rem;
  }
}

.link-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 500;
}
@media screen and (max-width: 1200px) {
  .link-btn {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 768px) {
  .link-btn {
    font-size: 0.875rem;
  }
}

.link-btn--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.link-btn__arrow {
  position: relative;
  width: 50px;
  height: 50px;
  margin-right: 20px;
  border-radius: 50%;
  border: 1px solid #ffc000;
}
@media screen and (max-width: 1200px) {
  .link-btn__arrow {
    width: 3.125rem;
    height: 3.125rem;
    margin-right: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .link-btn__arrow {
    margin-right: 0.5rem;
  }
}

.link-btn__arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: inline-block;
  width: 17px;
  height: 12px;
  background-image: url(../../images/common/arrow-right_y.png);
  background-size: contain;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .link-btn__arrow::after {
    width: 1.0625rem;
    height: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .link-btn__arrow::after {
    width: 0.8825rem;
    height: 0.6225rem;
  }
}

.link-btn-green {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  position: relative;
  padding: 10px 0;
  padding: 0.625rem 0;
}
@media screen and (max-width: 768px) {
  .link-btn-green {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 2.1875rem;
  }
}

.link-btn-green.link-btn-green--entry {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}

.link-btn-green__arrow {
  display: block;
  width: 50px;
  height: 50px;
  position: absolute;
  left: 0;
  margin: auto 0;
  z-index: 1;
  border: 1px solid #ffc000;
  border-radius: 50%;
  -webkit-transition: border 0.5s ease;
  transition: border 0.5s ease;
}
@media screen and (max-width: 1200px) {
  .link-btn-green__arrow {
    width: 3.125rem;
    height: 3.125rem;
    margin-right: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .link-btn-green__arrow {
    margin-right: 0.6875rem;
    width: 3.125rem;
    height: 3.125rem;
  }
}

.link-btn-green:hover .link-btn-green__arrow {
  border: none;
}

.link-btn-green__arrow.link-btn-green__arrow--entry {
  right: 0;
  left: auto;
  left: initial;
}
@media screen and (max-width: 768px) {
  .link-btn-green__arrow.link-btn-green__arrow--entry {
    margin-right: 0;
    width: 2.6875rem;
    height: 2.6875rem;
  }
}

@media screen and (max-width: 768px) {
  .link-btn-green__arrow.link-btn-green__arrow--small {
    width: 2rem;
    height: 2rem;
  }
}

.link-btn-green__arrow::before,
.link-btn-green__arrow::after {
  content: "";
  border-radius: 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
  margin: auto;
  background-color: #ffc000;
  width: 0;
  height: 0;
  -webkit-transition: width 0.2s linear, height 0.2s linear;
  transition: width 0.2s linear, height 0.2s linear;
}

.link-btn-green:hover .link-btn-green__arrow::before {
  width: 100%;
  height: 100%;
}

.link-btn-green:hover .link-btn-green__arrow::after {
  width: 10%;
  height: 10%;
}

.link-btn-green__arrow::after {
  background-color: #fff;
}

.link-btn-green__arrow svg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 17px;
  width: 1.0625rem;
  height: 12px;
  height: 0.75rem;
}
@media screen and (max-width: 768px) {
  .link-btn-green__arrow svg {
    width: 0.8825rem;
    height: 0.6225rem;
  }
}

.link-btn-txt {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2777777778;
  letter-spacing: 0.08em;
  color: #3E3A39;
  position: relative;
  margin-left: 70px;
  margin-left: 4.375rem;
}
@media screen and (max-width: 768px) {
  .link-btn-txt {
    font-size: 0.875rem;
    margin-left: 4.0625rem;
  }
}

.link-btn-txt::after {
  position: absolute;
  bottom: -2px;
  bottom: -0.125rem;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #3E3A39;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.link-btn-txt--white::after {
  background: #fff;
}

.link-btn-txt.link-btn-txt--entry::after {
  background: #ffc000;
  bottom: -30px;
  bottom: -1.875rem;
}

.link-btn-green:hover .link-btn-txt::after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.link-btn-txt.link-btn-txt--nav {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin-left: 65px;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  .link-btn-txt.link-btn-txt--nav {
    font-size: 1.375rem;
    margin-left: 4.0625rem;
  }
}
@media screen and (max-width: 768px) {
  .link-btn-txt.link-btn-txt--nav {
    font-size: 0.875rem;
    margin-left: 2.875rem;
  }
}

.link-btn-txt.link-btn-txt--white {
  color: #fff;
}

.link-btn-txt.link-btn-txt--entry {
  margin-left: 0;
  padding-right: 115px;
  padding-right: 7.1875rem;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .link-btn-txt.link-btn-txt--entry {
    font-size: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .link-btn-txt.link-btn-txt--sp16 {
    font-size: 1rem;
    line-height: 1.5;
    margin-left: 2.375rem;
  }
}

#loading {
  width: 100%;
  height: 100vh;
  -webkit-transition: opacity 0s 0.8s ease, visibility 0s 0.8s ease;
  transition: opacity 0s 0.8s ease, visibility 0s 0.8s ease;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 1;
}

#loading::after {
  background-color: #ffc000;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  z-index: 2;
  -webkit-transition: left 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.8s, width 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: left 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.8s, width 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

#loading.is-active::after {
  left: 100%;
  width: 100%;
}

.loading {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  -webkit-transition: 0s 0.8s ease;
  transition: 0s 0.8s ease;
}

#loading.is-active .loading {
  background-color: transparent;
}

.loading img {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  max-width: 46px;
  max-width: 2.875rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 46/120;
  -o-object-fit: contain;
     object-fit: contain;
  opacity: 1;
  -webkit-animation: slideUp 0.4s ease;
          animation: slideUp 0.4s ease;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media screen and (max-width: 768px) {
  .loading img {
    max-width: 1.9375rem;
  }
}

#loading.slideUp .loading img {
  opacity: 0;
}

#loading.loaded {
  opacity: 0;
  z-index: 0;
  visibility: hidden;
}


@-webkit-keyframes slideUp {
  0% {
    top: 55%;
    opacity: 0;
  }
  100% {
    top: 50%;
    opacity: 1;
  }
}
@keyframes slideUp {
  0% {
    top: 55%;
    opacity: 0;
  }
  100% {
    top: 50%;
    opacity: 1;
  }
}
.nav-btn {
  padding: 4px 8px;
  padding: 0.25rem 0.5rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.08em;
  min-width: 170px;
  min-width: 10.625rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .nav-btn {
    letter-spacing: 0.12em;
    line-height: 2.8333333333;
    padding: 0.375rem 0;
  }
}

.nav-btn.nav-btn--small {
  padding: 4px 0;
  padding: 0.25rem 0;
}
@media screen and (max-width: 768px) {
  .nav-btn.nav-btn--small {
    padding: 0rem 0;
    letter-spacing: 0.02em;
    line-height: 1.2;
    font-size: 0.8125rem;
  }
}

.nav-btn.nav-btn--small::after {
  content: "";
  background: url(../../images/common/icon-link.svg) center center/contain no-repeat;
  display: inline-block;
  margin-top: 2px;
  margin-top: 0.125rem;
  margin-left: 11px;
  margin-left: 0.6875rem;
  width: 12px;
  width: 0.75rem;
  height: 12px;
  height: 0.75rem;
}

.nav {
  color: #fff;
}

.nav__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 36px 108px;
  gap: 2.25rem 6.75rem;
  grid-auto-flow: column;
}
@media screen and (max-width: 768px) {
  .nav__lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
}

.nav__lists.nav__lists--cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 70px;
  gap: 0 4.375rem;
  padding: 40px 0;
  padding: 2.5rem 0;
  margin-top: 50px;
  margin-top: 3.125rem;
  border-top: 1px solid #4b4b4b;
  border-bottom: 1px solid #4b4b4b;
}
@media screen and (max-width: 768px) {
  .nav__lists.nav__lists--cta {
    margin-top: 0;
    padding: 0;
    display: block;
  }
}

.nav__lists.nav__lists--small {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 70px;
  gap: 0 4.375rem;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .nav__lists.nav__lists--small {
    margin-top: 1.5rem;
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .nav__lists.nav__lists--small li {
    line-height: 2.5;
  }
}

.nav__list {
  font-size: 26px;
  font-size: 1.625rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  font-family: "MS Serif", "New York", serif;
}
@media screen and (max-width: 768px) {
  .nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1rem;
    border-bottom: 1px solid #707070;
  }
}

.nav__list::before {
  content: "";
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  background-color: #ffc000;
  margin-right: 15px;
  margin-right: 0.9375rem;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .nav__list::before {
    content: none;
  }
}

.nav__list a {
  display: block;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .nav__list a {
    padding: 0.875rem 0;
  }
}

.nav__list a::before {
  position: absolute;
  bottom: 26px;
  bottom: 1.625rem;
  left: 0;
  content: attr(data-en) "";
  color: transparent;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 1px;
  background: #fff;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media screen and (max-width: 768px) {
  .nav__list a::before {
    content: none;
    background: none;
  }
}

.nav__list a[data-en=data]::before {
  content: attr(data-ut) "";
  font-size: 14px;
  font-size: 0.875rem;
}

.nav__list a:hover::before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}
@media screen and (max-width: 768px) {
  .nav__list a:hover::before {
    -webkit-transform: none;
            transform: none;
  }
}

.nav__list a::after {
  margin-top: 9px;
  margin-top: 0.5625rem;
  content: attr(data-ut) "";
  display: block;
  color: #777777;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.06em;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
@media screen and (max-width: 768px) {
  .nav__list a::after {
    display: inline-block;
    margin-top: 0;
    margin-left: 1rem;
  }
}

.nav__list:hover a::after {
  color: #fff;
}

.nav__list-btn {
  position: relative;
}
@media screen and (max-width: 768px) {
  .nav__list-btn {
    border-bottom: 1px solid #707070;
  }
}

@media screen and (max-width: 768px) {
  .nav__list-btn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1.75rem 0;
  }
}

.nav__btn {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 2.1538461538;
  letter-spacing: 0.04em;
}

@-webkit-keyframes arrow-animation {
  0% {
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
  25% {
    -webkit-transform: translate(150%, -50%);
            transform: translate(150%, -50%);
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: translate(-150%, -50%);
            transform: translate(-150%, -50%);
  }
  75% {
    opacity: 0;
    -webkit-transform: translate(-150%, -50%);
            transform: translate(-150%, -50%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}

@keyframes arrow-animation {
  0% {
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
  25% {
    -webkit-transform: translate(150%, -50%);
            transform: translate(150%, -50%);
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: translate(-150%, -50%);
            transform: translate(-150%, -50%);
  }
  75% {
    opacity: 0;
    -webkit-transform: translate(-150%, -50%);
            transform: translate(-150%, -50%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}
.page-link__menus {
  margin-top: 90px;
  margin-top: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .page-link__menus {
    margin-top: 2.1875rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.page-link__menu {
  display: inline-block;
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  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;
  max-width: calc(33.333% - 2.5rem);
  width: 100%;
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
  border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-link__menu {
    max-width: calc(50% - 0.9375rem);
    padding-top: 0.8125rem;
    padding-bottom: 0.8125rem;
  }
}

.page-link__menu.page-link__menu--fullWith {
  max-width: none;
  padding: 15px 0;
  padding: 0.9375rem 0;
}

.page-link__menu + .page-link__menu {
  margin-left: 60px;
  margin-left: 3.75rem;
}
@media screen and (max-width: 768px) {
  .page-link__menu + .page-link__menu {
    margin-left: 1.875rem;
  }
}

@media screen and (max-width: 768px) {
  .page-link__menu:nth-child(2n+1) {
    margin-left: 0;
  }
}

@media screen and (max-width: 768px) {
  .page-link__menu:nth-child(n+3) {
    margin-top: 0.9375rem;
  }
}

.page-link__menu:nth-child(n+4) {
  margin-top: 30px;
  margin-top: 1.875rem;
  margin-left: 0;
}
@media screen and (max-width: 768px) {
  .page-link__menu:nth-child(n+4) {
    margin-top: 0.9375rem;
    margin-left: 1.875rem;
  }
}

.page-link__txt {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page-link__txt {
    font-size: 0.8125rem;
  }
}

.page-link__txt.page-link__txt--big {
  font-size: 18px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.3333333333;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .page-link__txt.page-link__txt--big {
    font-size: 0.9375rem;
  }
}

.page-link__arrow {
  content: "";
  display: inline-block;
  width: 15px;
  width: 0.9375rem;
  height: 10.59px;
  height: 0.661875rem;
  background-image: url(../../images/common/arrow-down.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page-link__arrow {
    width: 0.74375rem;
    height: 0.525rem;
  }
}

.page-link__arrow-right {
  content: "";
  display: inline-block;
  width: 17px;
  width: 1.0625rem;
  height: 12px;
  height: 0.75rem;
  background-image: url(../../images/common/arrow-right_y.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page-link__arrow-right {
    width: 0.6875rem;
    height: 0.5rem;
  }
}

.page-link__menu::before,
.page-link__menu::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background: #ffc000;
  left: 0;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.page-link__menu::before {
  bottom: 0;
}

.page-link__menu::after {
  top: 0;
}

.page-link__menu:hover::before,
.page-link__menu:hover::after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.pagenation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 5px;
  gap: 0.3125rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .pagenation {
    gap: 0.5625rem 0.375rem;
  }
}

.pagenation a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #ffc000;
  color: #ffc000;
  font-family: "Barlow", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  width: 50px;
  width: 3.125rem;
  height: 50px;
  height: 3.125rem;
}
@media screen and (max-width: 768px) {
  .pagenation a {
    width: 2.1875rem;
    height: 2.1875rem;
    font-size: 0.8125rem;
  }
}

.pagenation a:first-child {
  margin-right: 50px;
  margin-right: 3.125rem;
}
@media screen and (max-width: 768px) {
  .pagenation a:first-child {
    margin-right: 0;
  }
}

.pagenation a:first-child,
.pagenation a:last-child {
  width: 90px;
  width: 5.625rem;
}

@media screen and (max-width: 768px) {
  .pagenation a:first-child {
    width: 3rem;
  }
}

@media screen and (max-width: 768px) {
  .pagenation a:last-child {
    width: 3.75rem;
  }
}

.pagenation .is-active,
.pagenation a:hover {
  background-color: #ffc000;
  color: #fff;
}

.parallax {
  position: relative;
  overflow: hidden;
}
.parallax__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  z-index: -1;
  background: transparent;
}

.parallax__bg::before {
  content: "";
  position: -webkit-fixed;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../../images/common/bg-img.jpg) center/cover no-repeat;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .parallax__bg::before {
    background-image: url("../../images/common/bg-img-sp.jpg");
    background-size: 100% 100%;
  }
}

.place-in__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 80px;
  gap: 0 5rem;
}

.place-in__txt {
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .place-in__txt {
    font-size: 0.875rem;
    letter-spacing: 0.07em;
  }
}

.place-in__txt span {
  display: inline-block;
}

.place-in__img {
  max-width: 360px;
  max-width: 22.5rem;
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.place-in__img img {
  aspect-ratio: 360/213;
}

.place-in__swiper {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .place-in__swiper {
    margin-top: 1.5625rem;
  }
}

.place-swiper {
  position: relative;
}

.place-swiper__wrap {
  padding-bottom: 35px;
  padding-bottom: 2.1875rem;
}

.place-swiper__img {
  width: 100%;
}

.place-swiper__img img {
  height: 100%;
  aspect-ratio: 1040/400;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .place-swiper__img img {
    aspect-ratio: 335/220;
  }
}

.place-swiper__pagination .swiper-pagination-bullet-active {
  background: #ffc000;
}

.qa-list__header {
  border-bottom: 1px solid rgba(137, 137, 137, .1490196078);
  padding-top: 30px;
  padding-top: 1.875rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-right: 30px;
  padding-right: 1.875rem;
  position: relative;
  z-index: 1;
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media screen and (max-width: 768px) {
  .qa-list__header {
    padding-right: 3.125rem;
  }
}

.qa-list__i-box {
  position: absolute;
  top: 50%;
  right: 15px;
  right: 0.9375rem;
  width: 15px;
  width: 0.9375rem;
  height: 15px;
  height: 0.9375rem;
  margin-top: -10px;
  margin-top: -0.625rem;
}
@media screen and (max-width: 768px) {
  .qa-list__i-box {
    top: 55%;
  }
}

.qa-list__i-box:before,
.qa-list__i-box:after {
  position: absolute;
  content: "";
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  vertical-align: middle;
}

.qa-list__i-box:before {
  border-top: 1px solid #ffc000;
  width: 15px;
  width: 0.9375rem;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}

.qa-list__i-box:after {
  border-left: 1px solid #ffc000;
  width: 0;
  height: 15px;
  height: 0.9375rem;
  top: 0;
  bottom: 0;
  right: 7px;
  right: 0.4375rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.qa-list__header.open .qa-list__i-box:after {
  height: 0;
}

.qa-list__answers {
  display: none;
  padding-top: 35px;
  padding-top: 2.1875rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  padding-right: 40px;
  padding-right: 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f4f6f8;
}
@media screen and (max-width: 768px) {
  .qa-list__answers {
    padding: 1.5rem 1.1875rem 1.875rem;
  }
}

/*=========
faq
=========*/
.qa-list__headerinner {
  display: block;
  padding-left: 30px;
  padding-left: 1.875rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .qa-list__headerinner {
    padding-left: 1.5625rem;
  }
}

.qa-list__headerinner::before {
  content: "";
  position: absolute;
  top: 7px;
  top: 0.4375rem;
  left: 0;
  display: inline-block;
  width: 20.85px;
  width: 1.303125rem;
  height: 16.01px;
  height: 1.000625rem;
  background-image: url(../../images/interview/q.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .qa-list__headerinner::before {
    width: 1.15625rem;
    height: 0.835rem;
    top: 0.4375rem;
    left: 0rem;
  }
}

.qa-list__q-txt {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .qa-list__q-txt {
    font-size: 1rem;
  }
}

.qa-list__answer p.qa-list__a-txt {
  font-size: 15px;
  font-size: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .qa-list__answer p.qa-list__a-txt {
    font-size: 0.8125rem;
  }
}

.qa-list__a-links {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .qa-list__a-links {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.qa-list__a-link + .qa-list__a-link {
  margin-left: 20px;
  margin-left: 1.25rem;
}
@media screen and (max-width: 768px) {
  .qa-list__a-link + .qa-list__a-link {
    margin-left: 0.625rem;
  }
}

@media screen and (max-width: 768px) {
  .qa-list__a-link .link-btn-green__arrow {
    width: 2rem;
    height: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .qa-list__a-link .link-btn-txt {
    margin-left: 2.5rem;
    white-space: nowrap;
  }
}

@media screen and (max-width: 768px) {
  .qa-list__a-link .link-btn-green__arrow svg {
    width: 0.7275rem;
    height: 0.51375rem;
  }
}

.recruit-type__inner {
  width: 100%;
  max-width: 1010px;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 145px;
  margin-bottom: 9.0625rem;
}
@media screen and (max-width: 768px) {
  .recruit-type__inner {
    margin-bottom: 3.75rem;
  }
}

.recruit-type__sec-ttl {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (max-width: 768px) {
  .recruit-type__sec-ttl {
    margin-top: 3.75rem;
  }
}

.recruit-type__items {
  margin-top: 26px;
  margin-top: 1.625rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px 32px;
  gap: 1.5625rem 2rem;
}
@media screen and (max-width: 768px) {
  .recruit-type__items {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5625rem 1.25rem;
    margin-top: 1.25rem;
  }
}

.recruit-type__head {
  margin-top: 50px;
  margin-top: 3.125rem;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4583333333;
}
@media screen and (max-width: 768px) {
  .recruit-type__head {
    margin-top: 1.875rem;
    font-size: 1.25rem;
    line-height: 1.45;
  }
}

.recruit-type__img {
  width: 100%;
  max-width: 300px;
  max-width: 18.75rem;
  overflow: hidden;
}

.recruit-type__img img {
  height: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.recruit-type__item-link:hover .recruit-type__img img {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}

.recruit-type__btn {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .recruit-type__btn {
    margin-top: 0.625rem;
  }
}

@media screen and (max-width: 768px) {
  .recruit-type__btn .link-btn-green {
    padding-top: 0.625rem;
  }
}

.recruit-type__item-link:hover .link-btn-green .link-btn-green__arrow {
  border: none;
}

.recruit-type__item-link:hover .link-btn-green .link-btn-green__arrow::before {
  width: 100%;
  height: 100%;
}

.recruit-type__item-link:hover .link-btn-green .link-btn-green__arrow::after {
  width: 10%;
  height: 10%;
}

.recruit-type__item-link:hover .link-btn-green .link-btn-txt::after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.sec-sub-ttl {
  padding-bottom: 35px;
  padding-bottom: 2.1875rem;
  border-bottom: 1px solid rgba(138, 138, 138, .1490196078);
  -o-border-image: linear-gradient(to right, #ffc000 0%, #ffc000 5rem, rgba(138, 138, 138, .1490196078) 5rem, rgba(138, 138, 138, .1490196078) 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#ffc000), color-stop(5rem, #ffc000), color-stop(5rem, rgba(138, 138, 138, .1490196078)), to(rgba(138, 138, 138, .1490196078)));
     border-image: linear-gradient(to right, #ffc000 0%, #ffc000 5rem, rgba(138, 138, 138, .1490196078) 5rem, rgba(138, 138, 138, .1490196078) 100%);
  border-image-slice: 1;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl {
    padding-bottom: 1.5625rem;
  }
}

.sec-sub-ttl.sec-sub-ttl--bNone {
  border-bottom: none;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
}

.sec-sub-ttl.sec-sub-ttl--program {
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl.sec-sub-ttl--program {
    padding-bottom: 0.8125rem;
  }
}

.sec-sub-ttl__jp {
  position: relative;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__jp {
    margin-top: 0.9375rem;
  }
}

.sec-sub-ttl__jp span {
  display: block;
  font-weight: 500;
  font-size: 34px;
  font-size: 2.125rem;
  letter-spacing: 0.06em;
  line-height: 1.6764705882;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__jp span {
    font-size: 1.5rem;
  }
}

.sec-sub-ttl__en span {
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  line-height: 1.8571428571;
  letter-spacing: 0;
  margin-left: 23px;
  margin-left: 1.4375rem;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__en span {
    font-size: 0.8125rem;
    margin-left: 0.9375rem;
  }
}

.sec-sub-ttl__en--cap span {
  text-transform: capitalize;
}

.sec-sub-ttl__en span::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 8px;
  top: 0.5rem;
  left: -23px;
  left: -1.4375rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__en span::before {
    width: 0.4375rem;
    height: 0.4375rem;
    top: 0.4375rem;
    left: -0.9375rem;
  }
}

.sec-sub-ttl__en.sec-sub-ttl__en--history span {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.03em;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__en.sec-sub-ttl__en--history span {
    font-size: 0.75rem;
  }
}

.sec-sub-ttl__jp.sec-sub-ttl__jp--history span {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__jp.sec-sub-ttl__jp--history span {
    letter-spacing: 0;
    font-size: 1.25rem;
  }
}

.sec-sub-ttl.sec-sub-ttl--small {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-bottom: 0;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl.sec-sub-ttl--small {
    padding-bottom: 1.25rem;
  }
}

.sec-sub-ttl__en.sec-sub-ttl__en--small span {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2142857143;
  margin-left: 18px;
  margin-left: 1.125rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__en.sec-sub-ttl__en--small span {
    margin-left: 0.75rem;
    font-size: 0.6875rem;
    line-height: 1.1818181818;
  }
}

.sec-sub-ttl__en.sec-sub-ttl__en--small span::before {
  top: 5px;
  top: 0.3125rem;
  left: -18px;
  left: -1.125rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__en.sec-sub-ttl__en--small span::before {
    top: 0.1875rem;
    left: -0.75rem;
  }
}

.sec-sub-ttl__jp.sec-sub-ttl__jp--small {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.sec-sub-ttl__jp.sec-sub-ttl__jp--small span {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.4285714286;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__jp.sec-sub-ttl__jp--small span {
    font-size: 1.25rem;
    line-height: 1.45;
  }
}

.sec-sub-ttl__desc {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.08em;
  margin-top: 60px;
  margin-top: 3.75rem;
  margin-bottom: 60px;
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__desc {
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.07em;
    margin-top: 2.1875rem;
    margin-bottom: 1.875rem;
  }
}

.sec-sub-ttl__jp.sec-sub-ttl__jp--program span {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .sec-sub-ttl__jp.sec-sub-ttl__jp--program span {
    font-size: 1.25rem;
  }
}

.sec-ttl__jp span {
  position: relative;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.625;
  letter-spacing: 0.08em;
  margin-left: 23px;
  margin-left: 1.4375rem;
}
@media screen and (max-width: 768px) {
  .sec-ttl__jp span {
    margin-left: 0.8125rem;
    font-size: 0.75rem;
  }
}

.sec-ttl__jp span::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  left: -23px;
  left: -1.4375rem;
}
@media screen and (max-width: 768px) {
  .sec-ttl__jp span::before {
    top: 0.25rem;
    left: -0.8125rem;
  }
}

.sec-ttl__interview {
  font-size: 34px;
  font-size: 2.125rem;
  line-height: 1.5294117647;
  letter-spacing: 0.08em;
  font-weight: 500;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec-ttl__interview {
    font-size: 1.5rem;
    line-height: 1.5;
    margin-right: 0.9375rem;
  }
}

.sec-ttl__en {
  position: relative;
  font-family: "Barlow", sans-serif;
  font-size: 86px;
  font-size: 5.375rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin-top: 16px;
  margin-top: 1rem;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .sec-ttl__en {
    margin-top: 0.625rem;
    letter-spacing: 0.1em;
    font-size: 2.375rem;
  }
}

.side-nav {
  width: 100%;
  position: sticky;
  top: 120px;
  top: 7.5rem;
  left: 0;
}
@media screen and (max-width: 768px) {
  .side-nav {
    position: static;
    position: initial;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid #E5E5E5;
  }
}

.side-nav__header {
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
  border-bottom: 1px solid #E5E5E5;
}

.side-nav__title {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-family: "Barlow", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .side-nav__title {
    line-height: 2;
  }
}

.side-nav__list {
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .side-nav__list {
    margin-top: 0.75rem;
  }
}

.side-nav__item + .side-nav__item {
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .side-nav__item + .side-nav__item {
    margin-top: 0.75rem;
  }
}

.side-nav__link {
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2.1428571429;
  letter-spacing: 0.08em;
  color: #878787;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
@media screen and (max-width: 768px) {
  .side-nav__link {
    color: #ffc000;
    text-decoration: underline;
  }
}

.side-nav__link:active {
  color: #878787;
}

.side-nav__link.active,
.side-nav__link.active.colorChange {
  color: #ffc000;
}

.side-nav__link.colorChange,
.side-nav__title.colorChange {
  color: #fff;
}

.side-nav__link::before {
  display: inline-block;
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  margin-bottom: 3px;
  margin-bottom: 0.1875rem;
  margin-right: 10px;
  margin-right: 0.625rem;
  opacity: 0;
  background: transparent;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
@media screen and (max-width: 768px) {
  .side-nav__link::before {
    display: none;
  }
}

.side-nav__link.active::before {
  opacity: 1;
  background: #ffc000;
}

.table__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 22px;
  margin-top: 1.375rem;
}
@media screen and (max-width: 768px) {
  .table__wrap {
    margin-top: 0rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.table__wrap--bt {
  border-top: 1px solid rgba(137, 137, 137, .1490196078);
}

.table__head {
  padding-top: 38px;
  padding-top: 2.375rem;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  font-size: 15px;
  font-size: 0.9375rem;
  width: 22%;
  color: #ffc000;
  border-bottom: 1px solid rgba(137, 137, 137, .25);
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .table__head {
    font-size: 0.875rem;
    padding-top: 1.875rem;
    letter-spacing: 0.03em;
    padding-bottom: 0;
    border-bottom: none;
    width: 100%;
  }
}

.table__detail {
  padding-top: 38px;
  padding-top: 2.375rem;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  font-size: 15px;
  font-size: 0.9375rem;
  width: 78%;
  border-bottom: 1px solid rgba(137, 137, 137, .25);
}
@media screen and (max-width: 768px) {
  .table__detail {
    font-size: 0.875rem;
    width: 100%;
    padding-top: 0.625rem;
    padding-bottom: 1.875rem;
  }
}

.table__head,
.table__detail {
  display: inline-block;
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .table__head,
  .table__detail {
    font-size: 0.875rem;
    line-height: 1.6428571429;
  }
}

.table__detail li {
  position: relative;
  margin-left: 16px;
  margin-left: 1rem;
}

.table__detail li + li {
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 768px) {
  .table__detail li + li {
    margin-top: 0.625rem;
  }
}

.table__detail li::before {
  content: "";
  width: 6px;
  width: 0.375rem;
  height: 6px;
  height: 0.375rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 13px;
  top: 0.8125rem;
  left: -16px;
  left: -1rem;
}
@media screen and (max-width: 768px) {
  .table__detail li::before {
    top: 0.5625rem;
  }
}

.table__head.table__head--num {
  color: #3E3A39;
  text-transform: uppercase;
}

.table__head.table__head--num::after {
  content: attr(data-num) "";
  color: #ffc000;
  margin-left: 5px;
  margin-left: 0.3125rem;
}

.table__detail a {
  text-decoration: underline;
}

.table__detail--accent a {
  position: relative;
  margin-left: 16px;
  margin-left: 1rem;
}

.table__detail--accent a::before {
  content: "";
  position: absolute;
  top: 8px;
  top: 0.5rem;
  left: -16px;
  left: -1rem;
  display: inline-block;
  width: 6px;
  width: 0.375rem;
  height: 10.49px;
  height: 0.655625rem;
  background-image: url(../../images/common/link-accent.png);
  background-size: contain;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .table__detail--accent a::before {
    top: 0.375rem;
  }
}

.table__detail--mt10 {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.table__detail--mt15 {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.table__detail--mt20 {
  margin-top: 20px;
  margin-top: 1.25rem;
  display: block;
}
@media screen and (max-width: 768px) {
  .table__detail--mt20 {
    margin-top: 0.4375rem;
  }
}

.table__dd-head {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
}

.table__dd-detail {
  margin-top: 15px;
  margin-top: 0.9375rem;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .table__dd-detail {
    margin-top: 0.625rem;
    letter-spacing: 0;
  }
}

.table__dd-wrap {
  margin-top: 25px;
  margin-top: 1.5625rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .table__dd-wrap {
    margin-top: 1.25rem;
  }
}

.table__dd-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 370px;
  max-width: 23.125rem;
  width: 100%;
}

.table__dd-img img {
  height: 100%;
  aspect-ratio: 370/247;
  -o-object-fit: cover;
     object-fit: cover;
}

.table__dd-img figcaption {
  margin-top: 5px;
  margin-top: 0.3125rem;
  font-size: 13px;
  font-size: 0.8125rem;
}

.table__detail--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.table__detail--flex span {
  white-space: nowrap;
}

.table__map::before {
  content: "";
  display: inline-block;
  width: 10px;
  width: 0.625rem;
  height: 10px;
  height: 0.625rem;
  border-top: 2px solid #ffc000;
  border-right: 2px solid #ffc000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-right: 10px;
  margin-right: 0.625rem;
}

.table__detail-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .table__detail-lists {
    display: block;
  }
}

.table__detail-list:nth-of-type(2) {
  margin-left: 45px;
  margin-left: 2.8125rem;
}
@media screen and (max-width: 768px) {
  .table__detail-list:nth-of-type(2) {
    margin-left: 0;
    margin-top: 1.25rem;
  }
}

.test {
  font-size: 20px;
  font-size: 1.25rem;
  background-color: #3E3A39;
  color: #fff;
}

/*

----------------------------*/
@-webkit-keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
/*

----------------------------*/
.text-slide {
  display: -ms-grid;
  overflow: hidden;
}

/*----------------------------*/
.text-slide__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

.text-slide__inner ul {
  padding-bottom: 27px;
  padding-bottom: 1.6875rem;
  opacity: 0.8;
}
@media screen and (max-width: 768px) {
  .text-slide__inner ul {
    padding-bottom: 0.9375rem;
  }
}

.text-slide__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
}

.text-slide__list--left {
  -webkit-animation: infinity-scroll-left 150s infinite linear 0.5s both;
          animation: infinity-scroll-left 150s infinite linear 0.5s both;
}

.text-slide__text > p {
  width: 100%;
  padding-right: 0.5em;
  font-size: 140px;
  font-size: 8.75rem;
  font-weight: 600;
  line-height: 1;
  font-family: "Barlow", sans-serif;
  letter-spacing: 0.12em;
  color: transparent;
  -webkit-text-stroke: 1px #d1d1d1;
  white-space: nowrap;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .text-slide__text > p {
    font-size: 4.375rem;
  }
}

.text-slide__list--white .text-slide__text > p {
  -webkit-text-stroke: 1px #fff;
}

.thanks__inner {
  width: 100%;
  max-width: 960px;
  max-width: 60rem;
  margin-top: 90px;
  margin-top: 5.625rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .thanks__inner {
    margin-top: 3.75rem;
    margin-bottom: 5rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.thanks__ttl {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .thanks__ttl {
    font-size: 1.25rem;
    line-height: 1.8;
  }
}

.thanks__txt {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.06em;
  line-height: 2;
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .thanks__txt {
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.07em;
    margin-top: 1.5625rem;
  }
}

@media screen and (max-width: 768px) {
  .top-infos {
    background-image: none;
  }
}

.top-infos__inner {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-left: calc(50% - 50vw + 7.5rem);
  padding-right: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .top-infos__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

.top-infos__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 140px;
  padding-bottom: 160px;
}
@media screen and (max-width: 1200px) {
  .top-infos__items {
    padding-top: 8.75rem;
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .top-infos__items {
    display: block;
    padding-top: 0;
    padding-bottom: 0;
  }
}

.top-infos__item {
  max-width: 600px;
  width: 100%;
  padding: 80px;
}
@media screen and (max-width: 1200px) {
  .top-infos__item {
    max-width: 37.5rem;
    padding: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-infos__item {
    padding-top: 3.4375rem;
    padding-bottom: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
    max-width: 100%;
  }
}

.top-infos__date {
  background-image: url(../../images/top/top-date.jpg);
  background-size: cover;
  background-position: center;
}

.top-infos__work {
  background-image: url(../../images/top/top-work.jpg);
  background-size: cover;
  background-position: center;
  margin-top: 80px;
}
@media screen and (max-width: 1200px) {
  .top-infos__work {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-infos__work {
    margin-top: 0;
  }
}

.top-infos__jp-ttl {
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  color: #fff;
  margin-left: 19px;
  margin-left: 1.1875rem;
}
@media screen and (max-width: 768px) {
  .top-infos__jp-ttl {
    font-size: 0.75rem;
    margin-left: 0.9375rem;
  }
}

.top-infos__jp-ttl::before {
  content: "";
  width: 8px;
  height: 8px;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 7px;
  left: -15px;
}
@media screen and (max-width: 1200px) {
  .top-infos__jp-ttl::before {
    width: 0.5rem;
    height: 0.5rem;
    top: 0.4375rem;
    left: -0.9375rem;
  }
}

.top-infos__en-ttl {
  position: relative;
  font-family: "Barlow", sans-serif;
  font-size: 57px;
  font-size: 3.5625rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #fff;
  margin-top: 20px;
  margin-top: 1.25rem;
  line-height: 1;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 768px) {
  .top-infos__en-ttl {
    font-size: 2.125rem;
    margin-top: 0.75rem;
    padding-bottom: 1.125rem;
  }
}

.top-infos__en-ttl::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 80px;
  width: 5rem;
  border-bottom: 1px solid #ffc000;
}

.top-infos__date .top-infos__txts {
  margin-top: 165px;
  margin-top: 10.3125rem;
}
@media screen and (max-width: 768px) {
  .top-infos__date .top-infos__txts {
    margin-top: 2.8125rem;
  }
}

.top-infos__work .top-infos__txts {
  margin-top: 133px;
  margin-top: 8.3125rem;
}
@media screen and (max-width: 768px) {
  .top-infos__work .top-infos__txts {
    margin-top: 2.8125rem;
  }
}

.top-infos__desc {
  font-size: 16px;
  letter-spacing: 0.07em;
  line-height: 2;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  .top-infos__desc {
    font-size: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .top-infos__desc {
    font-size: 0.8125rem;
    line-height: 2;
  }
}

.top-infos__btn {
  margin-top: 40px;
}
@media screen and (max-width: 1200px) {
  .top-infos__btn {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-infos__btn {
    margin-top: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .top-interview {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.top-interview__img {
  max-width: 100%;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top-interview__img {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.top-interview__img img {
  width: 100%;
  aspect-ratio: 1440/620;
}
@media screen and (max-width: 768px) {
  .top-interview__img img {
    aspect-ratio: 375/200;
  }
}

.top-interview__inner {
  position: relative;
  max-width: 100%;
  margin-top: -250px;
  margin-top: -15.625rem;
  margin-left: calc(50% - 50vw + 7.5rem);
  padding-top: 120px;
  padding-top: 7.5rem;
  background-color: #fff;
  z-index: 99;
}
@media screen and (max-width: 768px) {
  .top-interview__inner {
    margin-top: 0;
    margin-left: 0;
    padding-top: 4.0625rem;
    padding-right: 20px;
    padding-left: 20px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.top-interview__body {
  max-width: 100%;
  width: 100%;
  padding-left: 120px;
}
@media screen and (max-width: 1200px) {
  .top-interview__body {
    padding-left: 7.5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-interview__body {
    padding-left: 0;
  }
}

.top-interview__swiper {
  position: relative;
  margin-top: -115px;
  margin-top: -7.1875rem;
  z-index: 101;
}
@media screen and (max-width: 768px) {
  .top-interview__swiper {
    margin-top: -4.6875rem;
  }
}

.top-interview__ttls .top-section__en-ttl::before,
.top-interview__ttls .top-section__en-ttl::after {
  border-bottom: none;
}

.top-interview__btn {
  padding-top: 60px;
  padding-top: 3.75rem;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  text-align: center;
  background-color: #fff;
  position: relative;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  .top-interview__btn {
    padding-top: 0.625rem;
    padding-bottom: 3.75rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.top-jobs {
  background-image: url(../../images/top/top-our_job-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .top-jobs {
    background-image: url(../../images/top/top-our_job-bg-sp.jpg);
  }
}

.top-jobs__inner {
  position: relative;
  width: 100%;
  padding-top: 140px;
  padding-bottom: 35px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
  overflow: hidden;
  max-width: 100%;
  padding-right: calc(50% - 50vw + 7.5rem);
  padding-left: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 1200px) {
  .top-jobs__inner {
    padding-top: 8.75rem;
    padding-bottom: 2.1875rem;
  }
}
@media screen and (max-width: 768px) {
  .top-jobs__inner {
    padding: 0;
    padding-bottom: 0.625rem;
  }
}

.top-jobs__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .top-jobs__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-jobs__txts {
  max-width: 440px;
  max-width: 27.5rem;
  width: 100%;
  margin-top: 40px;
  margin-top: 2.5rem;
  margin-left: 80px;
  margin-left: 5rem;
}
@media screen and (max-width: 768px) {
  .top-jobs__txts {
    max-width: 100%;
    margin-top: -1.875rem;
    margin-left: 0;
    padding-bottom: 5rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media screen and (max-width: 768px) {
  .top-jobs__ttls {
    margin-top: 5.625rem;
  }
}

.top-jobs__desc {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.07em;
  margin-top: 80px;
}
@media screen and (max-width: 1200px) {
  .top-jobs__desc {
    font-size: 1rem;
    margin-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-jobs__desc {
    font-size: 0.9375rem;
    margin-top: 2.1875rem;
  }
}

.top-jobs__btn {
  margin-top: 45px;
}
@media screen and (max-width: 1200px) {
  .top-jobs__btn {
    margin-top: 2.8125rem;
  }
}
@media screen and (max-width: 768px) {
  .top-jobs__btn {
    margin-top: 0.3125rem;
  }
}

.top-jobs__imgs {
  max-width: 520px;
  max-width: 32.5rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 99;
  margin-left: 160px;
  margin-left: 10rem;
}
@media screen and (max-width: 768px) {
  .top-jobs__imgs {
    max-width: 100%;
    margin-left: 0;
    padding-bottom: 3.75rem;
    padding-right: 20px;
    padding-left: 20px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    z-index: 100;
  }
}

.top-jobs__img {
  max-width: 260px;
  max-width: 16.25rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top-jobs__img {
    max-width: 15.625rem;
    margin-top: -2.5rem;
  }
}

.top-jobs__img:nth-of-type(2) {
  margin-top: 90px;
}
@media screen and (max-width: 1200px) {
  .top-jobs__img:nth-of-type(2) {
    margin-top: 5.625rem;
  }
}
@media screen and (max-width: 768px) {
  .top-jobs__img:nth-of-type(2) {
    position: relative;
    z-index: 99;
    margin-top: 1.5625rem;
  }
}

.top-jobs__img img {
  width: 100%;
  aspect-ratio: 240/480;
}
@media screen and (max-width: 768px) {
  .top-jobs__img img {
    aspect-ratio: 165/327;
  }
}

.top-jobs__slide {
  margin-top: -70px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  width: 100vw;
  opacity: 0.7;
}
@media screen and (max-width: 1200px) {
  .top-jobs__slide {
    margin-top: -4.375rem;
  }
}
@media screen and (max-width: 768px) {
  .top-jobs__slide {
    margin-top: -5.9375rem;
    position: relative;
    z-index: 99;
  }
}

.top-jobs__slide--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .top-jobs__slide--sp {
    display: block;
    margin-top: -0.3125rem;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
}

.top-msg__inner {
  width: 100%;
  overflow: hidden;
  margin-top: 140px;
  margin-top: 8.75rem;
  margin-bottom: 30px;
  margin-bottom: 1.875rem;
  max-width: 100%;
  padding-right: calc(50% - 50vw + 7.5rem);
  padding-left: calc(50% - 50vw + 7.5rem);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .top-msg__inner {
    margin-top: 4.0625rem;
    margin-bottom: 0.625rem;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.top-msg__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .top-msg__items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-pack: inherit;
        -ms-flex-pack: inherit;
            justify-content: inherit;
  }
}

.top-msg__img {
  max-width: 520px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .top-msg__img {
    max-width: 32.5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-msg__img {
    max-width: 31.25rem;
    margin-top: 2.8125rem;
    margin-right: auto;
    margin-left: auto;
  }
}

.top-msg__img img {
  width: 100%;
  aspect-ratio: 520/677;
}
@media screen and (max-width: 768px) {
  .top-msg__img img {
    aspect-ratio: 328/427;
  }
}

.top-msg__txts {
  max-width: 520px;
  max-width: 32.5rem;
  width: 100%;
  margin-top: 35px;
  margin-top: 2.1875rem;
  margin-left: 160px;
  margin-left: 10rem;
}
@media screen and (max-width: 768px) {
  .top-msg__txts {
    max-width: 100%;
    margin-top: -0.3125rem;
    margin-left: 0;
  }
}

.top-msg__ttl {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.9285714286;
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .top-msg__ttl {
    font-size: 1.4375rem;
    line-height: 1.7391304348;
    margin-top: 2.1875rem;
  }
}

.top-msg__desc {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.07em;
  margin-top: 30px;
  margin-top: 1.875rem;
  padding-right: 80px;
  padding-right: 5rem;
}
@media screen and (max-width: 768px) {
  .top-msg__desc {
    font-size: 0.9375rem;
    line-height: 1.9333333333;
    margin-top: 1.5625rem;
    padding-right: 0;
  }
}

.top-msg__btn {
  margin-top: 45px;
}
@media screen and (max-width: 1200px) {
  .top-msg__btn {
    margin-top: 2.8125rem;
  }
}
@media screen and (max-width: 768px) {
  .top-msg__btn {
    margin-top: 0.3125rem;
  }
}

.top-msg__slide {
  position: relative;
  z-index: -1;
  margin-top: -70px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  width: 100vw;
  opacity: 0.7;
}
@media screen and (max-width: 1200px) {
  .top-msg__slide {
    margin-top: -4.375rem;
  }
}
@media screen and (max-width: 768px) {
  .top-msg__slide {
    margin-top: -2.1875rem;
  }
}

.top-msg__slide .text-slide__inner ul {
  opacity: 1;
}

.top-section__ut-ttl {
  position: relative;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8571428571;
  letter-spacing: 0.08em;
  font-family: "MS Serif", "New York", serif;
}
@media screen and (max-width: 1200px) {
  .top-section__ut-ttl {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 768px) {
  .top-section__ut-ttl {
    font-size: 0.75rem;
    line-height: 2.1666666667;
  }
}

.top-section__ut-ttl span {
  position: relative;
  font-size: 24px;
  font-weight: 500;
  line-height: 0.8571428571;
  letter-spacing: 0.08em;
  margin-left: 23px;
}
@media screen and (max-width: 1200px) {
  .top-section__ut-ttl span {
    font-size: 0.875rem;
    margin-left: 1.4375rem;
  }
}
@media screen and (max-width: 768px) {
  .top-section__ut-ttl span {
    font-size: 0.75rem;
    line-height: 2.1666666667;
    margin-left: 0.9375rem;
  }
}

.top-section__ut-ttl--white {
  color: #fff;
}

.top-section__ut-ttl span::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  position: absolute;
  top: 8px;
  top: 0.5rem;
  left: -22px;
  left: -1.375rem;
}
@media screen and (max-width: 768px) {
  .top-section__ut-ttl span::before {
    width: 0.4375rem;
    height: 0.4375rem;
    left: -0.875rem;
  }
}

.top-section__en-ttl {
  position: relative;
  /*font-family: "Barlow", sans-serif;*/
  font-family: "MS Serif", "New York", serif;
  font-size: 64px;
  font-size: 3rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .top-section__en-ttl {
    font-size: 2.375rem;
    margin-top: 0;
  }
}

.top-section__en-ttl--white {
  color: #fff;
}

.top-section__en-ttl span {
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .top-section__en-ttl span {
    padding-bottom: 1.25rem;
  }
}

.top-section__en-ttl::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 440px;
  border-bottom: 1px solid #ccc;
  opacity: 0.15;
}
@media screen and (max-width: 1200px) {
  .top-section__en-ttl::before {
    width: 27.5rem;
  }
}
@media screen and (max-width: 768px) {
  .top-section__en-ttl::before {
    max-width: 20.625rem;
    width: 100%;
  }
}

.top-section__en-ttl::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 80px;
  border-bottom: 1px solid #ffc000;
}
@media screen and (max-width: 1200px) {
  .top-section__en-ttl::after {
    width: 5rem;
  }
}

.top-section__ja-head span {
  color: #fff;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .top-section__ja-head span {
    font-size: 1.5625rem;
    line-height: 2;
  }
}

.top-section__ja-head.top-about__head {
  margin-top: 62px;
  margin-top: 3.875rem;
}
@media screen and (max-width: 768px) {
  .top-section__ja-head.top-about__head {
    margin-top: 2.5rem;
  }
}

.article__inner.inner {
  max-width: 1010px;
  max-width: 63.125rem;
}

.article__inner {
  margin-top: 85px;
  margin-top: 5.3125rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .article__inner {
    margin-top: 3.125rem;
    margin-bottom: 4.6875rem;
  }
}

.article__head-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}
@media screen and (max-width: 768px) {
  .article__head-wrap {
    padding-bottom: 1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.article__ttl-wrap {
  margin-left: 40px;
  margin-left: 2.5rem;
  padding: 30px 60px;
  padding: 1.875rem 3.75rem;
  border-left: 1px solid rgba(137, 137, 137, .15);
  min-height: 90px;
  min-height: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .article__ttl-wrap {
    margin-left: 0;
    border-left: none;
    margin-top: 0.8125rem;
    padding: 1rem 0 0;
    width: 100%;
    border-top: 1px solid rgba(137, 137, 137, .15);
  }
}

.article__ttl {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4444444444;
}

.article__body {
  margin-top: 35px;
  margin-top: 2.1875rem;
}
@media screen and (max-width: 768px) {
  .article__body {
    margin-top: 1.5625rem;
  }
}

.article__body p {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2.1333333333;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .article__body p {
    line-height: 2;
    font-size: 0.875rem;
  }
}

.article__body a {
  text-decoration: underline;
}

.article__btn {
  margin-top: 90px;
  margin-top: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .article__btn {
    margin-top: 2.1875rem;
  }
}

.benefits__inner {
  margin-top: 80px;
  margin-top: 5rem;
  margin-bottom: 117px;
  margin-bottom: 7.3125rem;
  max-width: 1010px;
  max-width: 63.125rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .benefits__inner {
    margin-top: 2.1875rem;
    margin-bottom: 3.9375rem;
  }
}

.benefits__ttl {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (max-width: 768px) {
  .benefits__ttl {
    margin-top: 3.75rem;
  }
}

.benefits__dl dt {
  max-width: 200px;
  max-width: 12.5rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .benefits__dl dt {
    max-width: none;
  }
}

.benefits__dl dd {
  max-width: calc(100% - 12.5rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .benefits__dl dd {
    max-width: none;
  }
}

.benefits__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px 70px;
  gap: 1.875rem 4.375rem;
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .benefits__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.benefits__head {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
}

.benefits__txt {
  margin-top: 24px;
  margin-top: 1.5rem;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .benefits__txt {
    margin-top: 0.625rem;
  }
}

.benefits__img figcaption {
  margin-top: 5px;
  margin-top: 0.3125rem;
  font-size: 13px;
  font-size: 0.8125rem;
}

.concept {
  background: url(../../images/about/bg-about.jpg) no-repeat center/cover;
  color: #fff;
}

.concept__inner.inner {
  padding-top: 140px;
  padding-top: 8.75rem;
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
  max-width: 1010px;
  max-width: 63.125rem;
}
@media screen and (max-width: 768px) {
  .concept__inner.inner {
    padding-top: 4.0625rem;
    padding-bottom: 3.75rem;
  }
}

.concept__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.375;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .concept__txt {
    font-size: 0.875rem;
    line-height: 2;
    letter-spacing: 0.09em;
  }
}

.concept__imgs {
  margin-top: 104px;
  margin-top: 6.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 40px;
  gap: 0 2.5rem;
}
@media screen and (max-width: 768px) {
  .concept__imgs {
    margin-top: 2.8125rem;
    gap: 0 0.875rem;
  }
}

.concept__img {
  max-width: 160px;
  max-width: 10rem;
  width: 100%;
}

.concept__img:nth-child(odd) {
  margin-top: 108px;
  margin-top: 6.75rem;
}
@media screen and (max-width: 768px) {
  .concept__img:nth-child(odd) {
    margin-top: 2.375rem;
  }
}

.concept__img img {
  aspect-ratio: 160/470;
  -o-object-fit: cover;
     object-fit: cover;
}

.date {
  font-family: "Barlow", sans-serif;
}

.date__year {
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.2;
}

.date__month {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.1875;
}
@media screen and (max-width: 768px) {
  .date__month {
    margin-top: 0.625rem;
    display: block;
    font-size: 1.75rem;
  }
}

.date__day {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.4;
  color: #ffc000;
  padding-left: 5px;
  padding-left: 0.3125rem;
}

.history__inner {
  padding-top: 137px;
  padding-top: 8.5625rem;
  padding-bottom: 137px;
  padding-bottom: 8.5625rem;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .history__inner {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}

.history__intro {
  margin-top: 55px;
  margin-top: 3.4375rem;
}
@media screen and (max-width: 768px) {
  .history__intro {
    margin-top: 1.875rem;
  }
}

.history__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.125;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .history__txt {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.history__items {
  margin-top: 68px;
  margin-top: 4.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 48px;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .history__items {
    margin-top: 2.1875rem;
    gap: 1.25rem;
  }
}

.history__img img {
  aspect-ratio: 1;
}

.history__item figcaption {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .history__item figcaption {
    font-size: 0.6875rem;
    letter-spacing: 0.08em;
    margin-top: 0.3125rem;
  }
}

.history__sub-ttl {
  margin-top: 90px;
  margin-top: 5.625rem;
  -o-border-image: none;
     border-image: none;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .history__sub-ttl {
    margin-top: 4rem;
  }
}

.history__flow {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .history__flow {
    margin-top: 3.375rem;
  }
}

.history__products {
  margin-top: 74px;
  margin-top: 4.625rem;
  display: grid;
}
@media screen and (max-width: 768px) {
  .history__products {
    margin-top: 3.125rem;
  }
}

.history__products.history__products--ver1 {
  grid-template-columns: repeat(2, 1fr);
}

.history__products.history__products--ver2 {
  grid-template-columns: repeat(3, 1fr);
}

.history__product-img img {
  aspect-ratio: 48/23;
  -o-object-fit: cover;
     object-fit: cover;
}

.history__product-img.history__product-img--ver2 img {
  aspect-ratio: 32/23;
}

.infograph__inner {
  margin-top: 80px;
  margin-top: 5rem;
  margin-bottom: 117px;
  margin-bottom: 7.3125rem;
  max-width: 1010px;
  max-width: 63.125rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .infograph__inner {
    margin-top: 2.1875rem;
    margin-bottom: 1.25rem;
  }
}

.infograph__ttl {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (max-width: 768px) {
  .infograph__ttl {
    margin-top: 3.75rem;
  }
}

.infograph__small-txt {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: right;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.4615384615;
}
@media screen and (max-width: 768px) {
  .infograph__small-txt {
    margin-top: 0.625rem;
  }
}

.infograph__items {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  .infograph__items {
    margin-top: 1rem;
  }
}

.jobs {
  position: relative;
}

.jobs__inner {
  margin-top: 110px;
  margin-top: 6.875rem;
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  margin-left: auto;
  margin-right: auto;
  max-width: calc(100vw - 11.875rem);
  width: 100%;
}
@media screen and (max-width: 768px) {
  .jobs__inner {
    max-width: none;
    margin-top: 2.5rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    display: block;
  }
}

.jobs__main {
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .jobs__main {
    padding-left: 0;
    margin-left: 0;
    margin-right: 0;
  }
}

.jobs__side {
  max-width: 240px;
  max-width: 15rem;
  width: 100%;
  height: 100%;
  padding-bottom: 134px;
  padding-bottom: 8.375rem;
  position: absolute;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .jobs__side {
    margin-right: 0;
    position: static;
    position: initial;
  }
}

.jobs__intro {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .jobs__intro {
    margin-top: 4.375rem;
  }
}

.jobs__intro-links {
  margin-top: 30px;
  margin-top: 1.875rem;
}

@media screen and (max-width: 768px) {
  .jobs__side-nav {
    position: static;
  }
}

.jobs__section {
  margin-left: 36.1111111111vw;
  margin-right: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .jobs__section {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}

.jobs__section:nth-child(even) {
  color: #fff;
  margin: 0 calc(50% - 50vw);
  padding-left: 36.1111111111vw;
  padding-right: 120px;
  padding-right: 7.5rem;
  width: 100vw;
  padding-top: 134px;
  padding-top: 8.375rem;
  padding-bottom: 138px;
  padding-bottom: 8.625rem;
}
@media screen and (max-width: 768px) {
  .jobs__section:nth-child(even) {
    padding-top: 4.375rem;
    padding-bottom: 3.5625rem;
    margin: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.jobs__section:nth-child(even) .interview-card__info {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .jobs__section:first-child {
    margin-top: 3.375rem;
  }
}

.jobs__section + .jobs__section {
  margin-top: 134px;
  margin-top: 8.375rem;
}
@media screen and (max-width: 768px) {
  .jobs__section + .jobs__section {
    margin-top: 3.5625rem;
  }
}

.jobs__body {
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 800px;
  max-width: 50rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .jobs__body {
    margin-top: 1.875rem;
  }
}

.jobs__img {
  margin-top: 40px;
  margin-top: 2.5rem;
  max-width: 800px;
  max-width: 50rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .jobs__img {
    margin-top: 1.25rem;
  }
}

.jobs__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 800/460;
}

.jobs__cards-wrap {
  margin-top: 74px;
  margin-top: 4.625rem;
  max-width: 800px;
  max-width: 50rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .jobs__cards-wrap {
    margin-top: 2.8125rem;
  }
}

.jobs__interview {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.jobs__interview span {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.3333333333;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .jobs__interview span {
    line-height: 1.4583333333;
    letter-spacing: 0.02em;
    font-size: 1.125rem;
    margin-left: 0.9375rem;
  }
}

.jobs__interview span::before {
  content: "";
  width: 8px;
  width: 0.5rem;
  height: 8px;
  height: 0.5rem;
  display: inline-block;
  background-color: #ffc000;
  margin-right: 20px;
  margin-right: 1.25rem;
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}
@media screen and (max-width: 768px) {
  .jobs__interview span::before {
    margin-bottom: 0.3125rem;
    margin-right: 0.625rem;
    margin-left: -1rem;
  }
}

.jobs__cards {
  margin-top: 30px;
  margin-top: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .jobs__cards {
    margin-top: 1.25rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.mv__inner {
  padding-top: 100px;
  padding-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .mv__inner {
    padding-top: 7.25rem;
  }
}

.mv__txt.inner {
  max-width: none;
  padding-right: calc(50% - 50vw + 7.5rem);
  padding-left: calc(50% - 50vw + 7.5rem);
}
@media screen and (max-width: 768px) {
  .mv__txt.inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.mv__ttl {
  font-size: 4.1666666667vw;
  font-weight: 600;
  line-height: 1.3333333333;
  letter-spacing: 0.08em;
  /*text-transform: uppercase;
  font-family: "Barlow", sans-serif;*/
  font-family: "MS Serif", "New York", serif;
}
@media screen and (max-width: 768px) {
  .mv__ttl {
    font-size: 1.5rem;
    line-height: 1.5833333333;
  }
}

.mv__sub-ttl span {
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 1.3888888889vw;
  line-height: 1.6;
  letter-spacing: 0.08em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .mv__sub-ttl span {
    font-size: 0.875rem;
    line-height: 1.4285714286;
    margin-top: 1.5rem;
  }
}

.mv__sub-ttl span::before {
  content: "";
  width: 8.3333333333vw;
  height: 1px;
  background-color: #3E3A39;
  margin-right: 40px;
  margin-right: 2.5rem;
}
@media screen and (max-width: 768px) {
  .mv__sub-ttl span::before {
    width: 3.5rem;
    margin-bottom: 1.5rem;
  }
}

.mv__movie {
  margin-top: 80px;
  margin-top: 5rem;
  aspect-ratio: 1440/680;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .mv__movie {
    aspect-ratio: 375/331;
    overflow: hidden;
    margin-top: 1.5rem;
  }
}

.mv__movie video {
  width: 101%;
  aspect-ratio: 1440/680;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .mv__movie video {
    position: static;
    aspect-ratio: 375/231;
    -webkit-transform: scale(1.42);
            transform: scale(1.42);
  }
}

.mv__movie::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*background-image: url(../../images/top/mv-mask.png);*/
  background-repeat: repeat;
}

.news__inner.inner {
  max-width: 1010px;
  max-width: 63.125rem;
}

.news__inner {
  margin-top: 85px;
  margin-top: 5.3125rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .news__inner {
    margin-top: 3.4375rem;
    margin-bottom: 4.375rem;
  }
}

.news__wrap {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.news__item + .news__item {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .news__item + .news__item {
    margin-top: 2.5rem;
  }
}

.news__item {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-bottom: 1px solid rgba(137, 137, 137, .15);
}

.news__head {
  display: block;
  margin-top: 10px;
  margin-top: 0.625rem;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.6666666667;
}

.news__head:hover {
  opacity: 0.7;
}

.news__date {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6428571429;
  font-family: "Barlow", sans-serif;
}

.news__pagenation {
  margin-top: 90px;
  margin-top: 5.625rem;
}

.place__inner.inner {
  max-width: 1090px;
  max-width: 68.125rem;
  margin-top: 130px;
  margin-top: 8.125rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .place__inner.inner {
    margin-top: 3.875rem;
    margin-bottom: 3.75rem;
  }
}

.place__intro {
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .place__intro {
    margin-top: 2.1875rem;
  }
}

.place__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.125;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .place__txt {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.place__items {
  margin-top: 80px;
  margin-top: 5rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 63px 72px;
  gap: 3.9375rem 4.5rem;
}
@media screen and (max-width: 768px) {
  .place__items {
    margin-top: 3.125rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.9375rem 1.8125rem;
  }
}

.place__item {
  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: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.place__link {
  margin-top: 56px;
  margin-top: 3.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media screen and (max-width: 768px) {
  .place__link {
    margin-top: 1.25rem;
  }
}

.place__link .page-link__menu {
  margin-top: 11px;
  margin-top: 0.6875rem;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}

.place__link a:hover {
  color: #ffc000;
}

.place__link-ttl {
  text-transform: uppercase;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2142857143;
  letter-spacing: 0.04em;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  .place__link-ttl {
    font-size: 0.625rem;
  }
}

.page-link__menu:hover + .place__link-ttl {
  color: #ffc000;
}

.place__contents {
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .place__contents {
    margin-top: 3.4375rem;
  }
}

.place__content + .place__content {
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .place__content + .place__content {
    margin-top: 2.5rem;
  }
}

.place02__inner.inner {
  padding-top: 120px;
  padding-top: 7.5rem;
  padding-bottom: 140px;
  padding-bottom: 8.75rem;
  color: #fff;
  max-width: 1090px;
  max-width: 68.125rem;
}
@media screen and (max-width: 768px) {
  .place02__inner.inner {
    padding-top: 4.0625rem;
    padding-bottom: 3.75rem;
  }
}

.place02__contents {
  margin-top: 60px;
  margin-top: 3.75rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 70px 40px;
  gap: 4.375rem 2.5rem;
}
@media screen and (max-width: 768px) {
  .place02__contents {
    margin-top: 1.875rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 1.25rem;
  }
}

.place02__img {
  widows: 100%;
  max-width: 320px;
  max-width: 20rem;
}

.place02__img img {
  height: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.place02__head {
  margin-top: 21px;
  margin-top: 1.3125rem;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.7777777778;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .place02__head {
    margin-top: 0.8125rem;
    font-size: 1rem;
    line-height: 1.5;
  }
}

.place02__txt {
  margin-top: 15px;
  margin-top: 0.9375rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .place02__txt {
    margin-top: 0.6875rem;
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
}

.profile__inner.inner {
  margin-top: 135px;
  margin-top: 8.4375rem;
  margin-bottom: 117px;
  margin-bottom: 7.3125rem;
}
@media screen and (max-width: 768px) {
  .profile__inner.inner {
    margin-top: 4.0625rem;
    margin-bottom: 4.375rem;
  }
}

.profile__map {
  text-transform: capitalize;
}

.profile__map:before {
  content: "";
  display: inline-block;
  width: 10px;
  width: 0.625rem;
  height: 10px;
  height: 0.625rem;
  border-top: 2px solid #ffc000;
  border-right: 2px solid #ffc000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-right: 10px;
  margin-right: 0.625rem;
}

.profile__base {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.profile__base span:first-of-type {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.program {
  background-color: #fff;
  color: #3E3A39;
  padding-top: 90px;
  padding-top: 5.625rem;
  padding-bottom: 70px;
  padding-bottom: 4.375rem;
  margin-left: calc(50% - 50vw + 7.5rem);
  padding-left: clamp(50px, 30vw, 50vw - 50% - 120px);
  padding-left: clamp(3.125rem, 30vw, 50vw - 50% - 7.5rem);
  margin-right: calc(50% - 50vw);
  padding-right: calc(50vw - 50% - 7.5rem);
  width: calc(100vw - 7.5rem);
}
@media screen and (max-width: 1440px) {
  .program {
    padding-right: 7.5rem;
  }
}
@media screen and (max-width: 768px) {
  .program {
    margin: calc(50% - 50vw);
    padding: 3.125rem calc(50vw - 50%) 5.4375rem;
    width: 100vw;
  }
}

.program__sub-ttl:not(:first-of-type) {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .program__sub-ttl:not(:first-of-type) {
    margin-top: 4.0625rem;
  }
}

.program__content {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .program__content {
    margin-top: 2.1875rem;
  }
}

.program__content + .program__content {
  margin-top: 40px;
  margin-top: 2.5rem;
}

.program__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px 80px;
  gap: 1.25rem 5rem;
}
@media screen and (max-width: 768px) {
  .program__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.program__content.program__content--other {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 90px;
  gap: 3.125rem 5.625rem;
}
@media screen and (max-width: 768px) {
  .program__content.program__content--other {
    gap: 2.3125rem 5.625rem;
    grid-template-columns: repeat(1, 1fr);
  }
}

.program__head {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 500;
}

.program__txt {
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .program__txt {
    font-size: 0.875rem;
  }
}

.program__img {
  max-width: 400px;
  max-width: 25rem;
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .program__img {
    max-width: none;
  }
}

.program__other {
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  border-bottom: 1px solid rgba(138, 138, 138, .15);
}
@media screen and (max-width: 768px) {
  .program__other {
    padding-bottom: 1.5625rem;
  }
}

.program__other:nth-last-child(1) {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .program__other:nth-last-child(1) {
    border-bottom: 1px solid rgba(138, 138, 138, .15);
  }
}

.program__other:nth-last-child(2),
.program__other:nth-last-child(3) {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .program__other:nth-last-child(2),
  .program__other:nth-last-child(3) {
    border-bottom: 1px solid rgba(138, 138, 138, .15);
  }
}

.top_message__inner.inner {
  max-width: 1010px;
  max-width: 63.125rem;
}

.top_message__inner {
  margin-top: 100px;
  margin-top: 6.25rem;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .top_message__inner {
    margin-top: 4.0625rem;
    margin-bottom: 3.75rem;
  }
}

.top_message__content {
  margin-top: 80px;
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 82px;
  gap: 5.125rem;
}
@media screen and (max-width: 768px) {
  .top_message__content {
    gap: 1.25rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 2.5rem;
  }
}

.top_message__content.top_message__content--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .top_message__content.top_message__content--reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 768px) {
  .top_message__dummy-wrap {
    display: contents;
  }
}

.top_message__head span {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.75;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .top_message__head span {
    font-size: 1.25rem;
  }
}

.top_message__head--narrow {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.top_message__txt {
  font-size: 16px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.07em;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .top_message__txt {
    font-size: 0.875rem;
    margin-top: 0.625rem;
  }
}

.top_message__img {
  max-width: 440px;
  max-width: 27.5rem;
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .top_message__img {
    max-width: none;
  }
}

.top_message__img img {
  width: 100%;
  aspect-ratio: 440/522;
  -o-object-fit: cover;
     object-fit: cover;
}

.top_message__top-name {
  margin-top: 45px;
  margin-top: 2.8125rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .top_message__top-name {
    margin-top: 1.25rem;
  }
}

.top_message__president {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .top_message__president {
    font-size: 0.875rem;
  }
}

.top_message__name {
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.125;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .top_message__name {
    font-size: 1.25rem;
  }
}

.top-about {
  background: url(../../images/pexels-pixabay-46285.jpg) no-repeat center/cover;
}

.top-about__inner.inner {
  padding-top: 110px;
  padding-top: 6.875rem;
  padding-bottom: 180px;
  padding-bottom: 11.25rem;
  padding-left: calc(50% - 50vw + 7.5rem);
  padding-right: calc(50% - 50vw + 7.5rem);
  max-width: 1440px;
  max-width: 90rem;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .top-about__inner.inner {
    padding-top: 2.5rem;
    padding-bottom: 3.75rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    overflow: hidden;
  }
}

.top-about__slide {
  opacity: 0.4;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}

.top-about__ttl {
  margin-top: 58px;
  margin-top: 3.625rem;
  font-family: "MS Serif", "New York", serif;
}
@media screen and (max-width: 768px) {
  .top-about__ttl {
    margin-top: 1.25rem;
  }
}

@media screen and (max-width: 768px) {
  .top-about__head .u-pc {
    display: none;
  }
}

.top-about__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 79px;
  gap: 0 4.9375rem;
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .top-about__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 2.5rem;
  }
}

.top-about__body {
  max-width: 400px;
  max-width: 25rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top-about__body {
    max-width: none;
    max-width: initial;
  }
}

.top-about__txt {
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 2.6;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .top-about__txt {
    font-size: 0.875rem;
    line-height: 2.0714285714;
  }
}

@media screen and (max-width: 768px) {
  .top-about__txt br {
    display: none;
  }
}

.top-about__btn {
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media screen and (max-width: 768px) {
  .top-about__btn {
    margin-top: 0.3125rem;
  }
}

.top-about__btn + .top-about__btn {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  .top-about__btn + .top-about__btn {
    margin-top: 0;
  }
}

.top-about__imgs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .top-about__imgs {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 3rem;
  }
}

.top-about__img {
  max-width: 360px;
  max-width: 22.5rem;
  width: 100%;
}

.top-about__img img {
  width: 100%;
  aspect-ratio: 360/720;
}

.top-about__img:first-child {
  margin-top: -47px;
  margin-top: -2.9375rem;
}
@media screen and (max-width: 768px) {
  .top-about__img:first-child {
    margin-top: 2.0625rem;
  }
}

.top-about__img:last-child {
  margin-top: -167px;
  margin-top: -10.4375rem;
}
@media screen and (max-width: 768px) {
  .top-about__img:last-child {
    margin-top: 0;
  }
}

.top-news {
  width: 100%;
  background: #fff;
  min-height: 90px;
  min-height: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .top-news {
    min-height: 4.375rem;
  }
}

.top-news__inner.inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 84px;
  gap: 0 5.25rem;
  padding-left: calc(50% - 50vw + 7.5rem);
  padding-right: calc(50% - 50vw + 7.5rem);
  max-width: 1440px;
  max-width: 90rem;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top-news__inner.inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 1.125rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    gap: 0;
  }
}

.top-news__wrap {
  display: contents;
}
@media screen and (max-width: 768px) {
  .top-news__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.top-news__ttl {
  font-size: 22px;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: #3E3A39;
  font-family: "Barlow", sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .top-news__ttl {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    font-size: 1rem;
  }
}

.top-news__swiper {
  width: 100%;
}

.top-news__article {
  width: 100%;
  color: #3E3A39;
  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;
}

.top-news__link {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .top-news__link {
    padding: 0.125rem;
  }
}

.top-news__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .top-news__content {
    width: 100%;
  }
}

.top-news__date {
  margin-top: 0;
  margin-right: 22px;
  margin-right: 1.375rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  font-family: "Barlow", sans-serif;
}
@media screen and (max-width: 768px) {
  .top-news__date {
    margin-right: 0.1875rem;
  }
}

.top-news__excerpt {
  margin-top: 0;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  max-width: 300px;
  max-width: 18.75rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  line-height: 1.8571428571;
}
@media screen and (max-width: 768px) {
  .top-news__excerpt {
    font-size: 0.75rem;
    max-width: 12.5rem;
    margin-left: 0.3125rem;
  }
}

.top-news__swiper {
  max-height: 41px;
  max-height: 2.5625rem;
}
@media screen and (max-width: 768px) {
  .top-news__swiper {
    height: auto;
  }
}

.top-news__slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-news__listLink {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.top-news__arrow {
  position: relative;
  z-index: 1;
  margin-top: 0;../../images
  margin-right: 0;
  margin-left: auto;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 10px 0;
  padding: 0.625rem 0;
}
@media screen and (max-width: 768px) {
  .top-news__arrow {
    font-size: 0.75rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.top-news__arrow::after {
  content: "";
  display: block;
 background: url(../../images/common/arrow-right_y.png) no-repeat center/contain;
  width: 17px;
  width: 1.0625rem;
  height: 12px;
  height: 0.75rem;
  margin-left: 15px;
  margin-left: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .top-news__arrow::after {
    margin-left: 0.3125rem;
  }
}

.training {
  overflow: hidden;
}

.training__mv img {
  height: 100%;
  aspect-ratio: 144/52;
  -o-object-fit: cover;
     object-fit: cover;
}

.training__inner {
  padding-top: 115px;
  padding-top: 7.1875rem;
  padding-bottom: 120px;
  padding-bottom: 7.5rem;
  max-width: 1010px;
  max-width: 63.125rem;
  width: 100%;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .training__inner {
    padding-top: 4.0625rem;
    padding-bottom: 0;
  }
}

.training__intro {
  margin-top: 55px;
  margin-top: 3.4375rem;
}
@media screen and (max-width: 768px) {
  .training__intro {
    margin-top: 2.1875rem;
  }
}

.training__head {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .training__head {
    font-size: 1.25rem;
  }
}

.training__txt {
  margin-top: 50px;
  margin-top: 3.125rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 768px) {
  .training__txt {
    margin-top: 1.25rem;
    font-size: 0.875rem;
  }
}

.training__item {
  margin-top: 70px;
  margin-top: 4.375rem;
}
@media screen and (max-width: 768px) {
  .training__item {
    margin-top: 2.5rem;
  }
}

.training__item + .training__item {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  .training__item + .training__item {
    margin-top: 1.25rem;
  }
}

.training__point {
  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;
}
@media screen and (max-width: 768px) {
  .training__point {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.training__point::before,
.training__point::after {
  content: "";
  max-width: 120px;
  max-width: 7.5rem;
  width: 13%;
  height: 1px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .training__point::before,
  .training__point::after {
    content: none;
  }
}

.training__point img {
  max-width: 600px;
  max-width: 37.5rem;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 600/181;
}

.training__system {
  max-width: 960px;
  max-width: 60rem;
  width: 100%;
}

.training__system img {
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 960/738;
}
@media screen and (max-width: 768px) {
  .training__system img {
    aspect-ratio: 335/344;
  }
}

.training__contents-outer {
  margin-top: 40px;
  margin-top: 2.5rem;
  text-align: center;
  padding: 18px;
  padding: 1.125rem;
  border: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .training__contents-outer {
    margin-top: 1.625rem;
    padding: 0.875rem 1.75rem;
  }
}

.training__contents {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 40px;
  gap: 0 2.5rem;
}
@media screen and (max-width: 768px) {
  .training__contents {
    gap: 0 1.625rem;
  }
}

.training__contents span {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .training__contents span {
    font-size: 0.875rem;
  }
}

.training__program {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .training__program {
    margin-top: 3.75rem;
  }
}

.topgo{ width: 90px !important; height: 90px !important; position: fixed; bottom: 1em; right: .5em; z-index: 99999; display: none;}
.topgo img{width: 80%; cursor: pointer;}

@media screen and (max-width: 768px) {
  .topgo{ width: 80px !important; height: 80px !important; position: fixed; bottom: 1em; right: .5em; z-index: 99999; display: none;}
  .topgo img{width: 80%; cursor: pointer;}
}


.box_2{ display: none;}
.box{ margin-right: 7%; position: relative;}
.container-3{
width: 300px;
vertical-align: middle;
white-space: nowrap;
position: relative;

}
.container-3 input#search{
width: 300px;
height: 50px;
background: #e3e3e3;
border: none;
font-size: 10pt;
float: left;
color: #262626;
padding-left: 45px;
-webkit-border-radius: 5em;
-moz-border-radius: 5em;
border-radius: 5em;
color: #000;
}
.container-3 input#search::-webkit-input-placeholder {
color: #65737e;
}
.container-3 input#search:-moz-placeholder { /* Firefox 18- */
color: #65737e;  
}
.container-3 input#search::-moz-placeholder {  /* Firefox 19+ */
color: #65737e;  
}
.container-3 input#search:-ms-input-placeholder {  
color: #65737e;  
}
.container-3 .icon{
position: absolute;
top: 50%;
margin-left: 17px;
margin-top: 12px;
z-index: 1;
color: #4f5b66;
-webkit-transition: all .55s ease;
-moz-transition: all .55s ease;
-ms-transition: all .55s ease;
-o-transition: all .55s ease;
transition: all .55s ease;
}
.container-3 input#search:focus, .container-3 input#search:active{
outline:none; 
}
.container-3:hover .icon{
margin-top: 12px;
color: #93a2ad;
-webkit-transform:scale(1.5); /* Safari and Chrome */
-moz-transform:scale(1.5); /* Firefox */
-ms-transform:scale(1.5); /* IE 9 */
-o-transform:scale(1.5); /* Opera */
transform:scale(1.5);
}
@media screen and (max-width: 600px) {
  .box{ display: none;}
  .box_2{ margin-left: 5%; margin-top: 5%; width: 90%; position: relative; display: block;}
  .container-3{
width: 100%;
vertical-align: middle;
white-space: nowrap;
position: relative;

}
.container-3 input#search{
width: 100%;
height: 50px;
background: #e3e3e3;
border: none;
font-size: 10pt;
float: left;
color: #262626;
padding-left: 45px;
-webkit-border-radius: 5em;
-moz-border-radius: 5em;
border-radius: 5em;
color: #111;
}
 
}

.submita{
  border-radius: 1.5em; font-size:110%; margin-left:auto; margin-right:auto; border: 3px solid #ffc000;
}

@media screen and (max-width: 600px) {
  .submita{
    border-radius: 2.5em; font-size:80%; margin-left:auto; margin-right:auto;
  }
}

.button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  background-color: transparent;
  border-radius: 0.375em;
  border: 0;
  box-shadow: inset 0 0 0 2px #03cbae;
  color: #03cbae !important;
  cursor: pointer;
  display: inline-block;
  font-family: "Roboto Slab", serif;
  font-size: 0.8em;
  font-weight: 700;
  height: 3.5em;
  letter-spacing: 0.075em;
  line-height: 3.5em;
  padding: 0 2.25em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap; }
  input[type="submit"]:hover,
  input[type="reset"]:hover,
  input[type="button"]:hover,
  button:hover,
  .button:hover {
    background-color: rgba(245, 106, 106, 0.05); }
  input[type="submit"]:active,
  input[type="reset"]:active,
  input[type="button"]:active,
  button:active,
  .button:active {
    background-color: rgba(245, 106, 106, 0.15); }
  input[type="submit"].icon:before,
  input[type="reset"].icon:before,
  input[type="button"].icon:before,
  button.icon:before,
  .button.icon:before {
    margin-right: 0.5em; }
  input[type="submit"].fit,
  input[type="reset"].fit,
  input[type="button"].fit,
  button.fit,
  .button.fit {
    width: 100%; }
  input[type="submit"].small,
  input[type="reset"].small,
  input[type="button"].small,
  button.small,
  .button.small {
    font-size: 0.6em; }
  input[type="submit"].large,
  input[type="reset"].large,
  input[type="button"].large,
  button.large,
  .button.large {
    font-size: 1em;
    height: 3.65em;
    line-height: 3.65em; }
  input[type="submit"].primary,
  input[type="reset"].primary,
  input[type="button"].primary,
  button.primary,
  .button.primary {
    background-color: #03cbae;
    box-shadow: none;
    color: #ffffff !important; }
    input[type="submit"].primary:hover,
    input[type="reset"].primary:hover,
    input[type="button"].primary:hover,
    button.primary:hover,
    .button.primary:hover {
      background-color: #f67878; }
    input[type="submit"].primary:active,
    input[type="reset"].primary:active,
    input[type="button"].primary:active,
    button.primary:active,
    .button.primary:active {
      background-color: #f45c5c; }
  input[type="submit"].disabled, input[type="submit"]:disabled,
  input[type="reset"].disabled,
  input[type="reset"]:disabled,
  input[type="button"].disabled,
  input[type="button"]:disabled,
  button.disabled,
  button:disabled,
  .button.disabled,
  .button:disabled {
    pointer-events: none;
    opacity: 0.25; }

    .button.greyish {
      background-color: #576270;
      box-shadow: none;
      color: #ffffff !important; }
      button.greyish:hover,
      .button.greyish:hover {
        background-color: #f67878; }

        .button.red {
          background-color: #FFF;
          box-shadow: inset 0 0 0 2px #f95175 !important;
          box-shadow: none;
          color: #f95175 !important; }
          button.red:hover,
          .button.red:hover {
            background-color: #f67878; color: #fff !important; }

            .button.green {
              background-color: #FFF;
              box-shadow: inset 0 0 0 2px #2f9f2b !important;
              box-shadow: none;
              color: #2f9f2b !important; }
              button.green:hover,
              .button.green:hover {
                background-color: #f67878; color: #fff !important;}
                .button.dgreen {
                  background-color: #20771d;
                  box-shadow: inset 0 0 0 2px #20771d !important;
                  box-shadow: none;
                  color: #FFF !important; }
                  button.dgreen:hover,
                  .button.dgreen:hover {
                    background-color: #ffe169; color: #000 !important;}

                    .button.dgblue {
                      background-color: #4d718e;
                      box-shadow: inset 0 0 0 2px #4d718e !important;
                      box-shadow: none;
                      color: #bdc9c7 !important; }
                      button.dgblue:hover,
                      .button.dgblue:hover {
                        background-color: #0a2140; color: #FFF !important;}
.select_style_01{
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; appearance: auto;
  margin: 2em; height: 60px; line-height: 60px; padding-left: 1em; border-radius: .2em; width: 20%; border: 1px solid #ffc000; background-color: #ffc000; color:#fff; font-size: 110%;
}

.place__img{ max-height: 340px; overflow: hidden;}
.ptitle{ font-weight: bold; padding: 1em; font-family: "MS Serif", "New York", serif; font-size: 28px;
  font-size: 1.75rem;}
.pbody{padding-left: 2em; padding-right: 2em; line-height: 150%; text-align:justify;}
.pbody table{
  width: 90% !important; margin-left:auto !important; margin-right:auto !important; margin-top: 2em !important;
  border-bottom: 1px solid #efefef !important; padding: 1em !important; font-size: 110% !important;
}
.pbodyimg{ width: 30% !important; margin-left: 2em; padding-bottom: 2em;}
.hr_sa{ height: 2em; width: 100%;}
.leftdiv_{width: 14%;float:left;}	
.rightdiv_{width:85%;float:left;}
.leftdiv{ width:14%; height:58px; max-height:58px; min-height:58px; line-height:58px; float:left; font-size:98%; font-weight:normal; letter-spacing:0.1em;border-top:1px solid #efefef; border-bottom:1px solid #efefef;}
.rightdiv{ width:85%; height:58px; max-height:58px; min-height:58px; line-height:58px; float:left; font-size:98%; font-weight:normal; letter-spacing:0.1em; border-top:1px solid #efefef; border-bottom:1px solid #efefef;}
.rightdiv input{ float:left;}

.btns{  position:absolute;top:8px;right:0px;
  box-shadow:inset 0px 1px 0px 0px #efefef;
	background:linear-gradient(to bottom, #ededed 5%, #dfdfdf 100%);
	background-color:#ededed;
	border-radius:5em;
	border:1px solid #dcdcdc;
	display:inline-block;
	cursor:pointer;
	color:#777777;
	font-family:Arial;
	font-size:15px;
	font-weight:bold;
	padding:6px 24px;
	text-decoration:none;
	text-shadow:0px 1px 0px #efefef;
}

#share_style li{ float:left;
    padding:.3em; border-radius:2em; list-style:none; padding-left:.5em; padding-right:.5em;
	margin:.5em .5em auto; background-color: #ffc000; border-bottom:1px solid #b9a99e; font-weight:400; box-shadow: 0 8px 20px -5px rgba(0, 0, 0, 0.1); cursor:pointer;
	transition: all 2s -.3s; /*transition: 屬性 持續時間 delay時間 變化函數*/
	
}
#share_style li:hover{ background-color: #292929; color:#fff;}
#share_style li i{ font-size:70%; color:#000; padding-right:.2em;}
.imggd{max-height:240px; height:240px; overflow:hidden}

.youtubediv{ width: 560px; height: 315px;}
@media screen and (max-width: 600px) {
  .youtubediv{ width: 90%; height: 200px;}

  .select_style_01{
    box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; appearance: auto;
    margin: 2em; height: 60px; line-height: 60px; padding-left: 1em; border-radius: .2em; width: 70%; border: 1px solid #ffc000; background-color: #ffc000; color:#fff; font-size: 110%;
  }
  
}

.footer_li li{
  font-size: large !important; color: #fff; width: 100%; font-weight: normal; font-family: "MS Serif", "New York", serif; letter-spacing: .1em; height: 2em; line-height: 2em;
}
.footer_li_sub li{
  font-size: large !important; color: #292929; width: 100%; font-weight: normal; font-family: "MS Serif", "New York", serif; letter-spacing: .1em; height: 2em; line-height: 2em;
}
.footer_li_sub{ padding-left: 20%;}
@media screen and (max-width: 600px) {
  .footer_li li{
    font-size: small !important; color: #fff; width: 100%; font-weight: normal; font-family: "MS Serif", "New York", serif; letter-spacing: .1em; height: auto;
  }
}