@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*::before, *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*::-moz-selection {
  background-color: color(selection);
}
*::selection {
  background-color: color(selection);
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 10vw;
}
body {
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  background-color: #fff;
  line-height: 1.7;
  font-size: 16px;
  overflow-x: clip;
}
@media screen and (max-width: 768px) {
  body {
    line-height: 1.5;
  }
}
a {
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
a:hover {
  opacity: 0.7;
}
@media (min-width: 769px) {
  a a[href^="tel:"] {
    pointer-events: none;
  }
}
img {
  image-rendering: -webkit-optimize-contrast;
}
img, svg, video {
  width: 100%;
  max-width: 100%;
  height: auto;
}
picture img {
  width: 100%;
  height: auto;
}
table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}
table th, table td {
  word-break: break-all;
}
input::-ms-clear {
  display: none;
}
[data-js-focus-visible]:focus:not([data-focus-visible-added]) {
  outline: none;
}
/*!
 * ress.css • v2.0.4
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
}
*, ::before, ::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
}
::before, ::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}
* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}
*:focus {
  outline: none;
}
/* # =================================================================
   # General elements
   # ================================================================= */
hr {
  height: 0; /* Add the correct box sizing in Firefox */
  overflow: visible; /* Show the overflow in Edge and IE */
}
details, main {
  display: block; /* Render the `main` element consistently in IE. */
}
summary {
  display: list-item; /* Add the correct display in all browsers */
}
small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}
[hidden] {
  display: none; /* Add the correct display in IE */
}
abbr[title] {
  /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  border-bottom: none; /* Remove the bottom border in Chrome 57 */
}
a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
}
a:active, a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}
code, kbd, pre, samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}
pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}
b, strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}
/* https://gist.github.com/unruthless/413930 */
sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/* # =================================================================
   # Forms
   # ================================================================= */
/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto; /* Correct the cursor style of increment and decrement buttons in Chrome */
}
[type=search] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}
textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}
button, input, optgroup, select, textarea {
  font: inherit; /* Specify font inheritance of form elements */
}
optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule */
}
button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}
button, select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}
/* Apply cursor pointer to button elements */
button, [type=button], [type=reset], [type=submit], [role=button] {
  color: inherit;
  cursor: pointer;
}
/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  padding: 0;
}
/* Replace focus style removed in the border reset above */
button, html [type=button], [type=reset], [type=submit] {
  /* Correct the inability to style clickable types in iOS */
}
/* Remove the default button styling in all browsers */
button, input, select, textarea {
  background-color: transparent;
}
/* Style select like a standard input */
select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}
select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}
legend {
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
}
::-webkit-file-upload-button {
  /* Correct the inability to style clickable types in iOS and Safari */
}
/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  vertical-align: bottom;
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}
/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}
svg:not([fill]) {
  fill: currentColor;
}
/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden ~ =screen] {
    display: inherit;
  }
  [hidden ~ =screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}
/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}
/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}
ol, ul {
  list-style: none;
}
input[type=submit]:focus, input[type=button]:focus {
  outline-offset: -2px;
}
input, textarea {
  border-radius: 0;
}
input:focus, textarea:focus {
  outline: none;
}
h1, h2, h3, h4 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #231815;
}
p, input, textarea, li, span {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #231815;
}
a {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #231815;
  text-decoration: none;
}
.lazyload-img {
  opacity: 0;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}
.lazyload-img.lazyloaded {
  opacity: 1;
}
.is-nav {
  display: block;
}
.is-pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .is-pc {
    display: none;
  }
}
.is-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/**
* @file _l-footer.scss
**/
.footer__tel {
  background-color: #cd3b28;
  padding-top: 20px;
}
@media screen and (max-width: 768px) {
  .footer__tel {
    padding-bottom: 20px;
  }
}
.footer__tel__btn {
  max-width: 405px;
  margin-inline: auto;
}
.footer {
  padding-top: 50px;
}
@media screen and (max-width: 768px) {
  .footer {
    padding-top: 20px;
  }
}
.footer__logo {
  max-width: 555px;
  width: 100%;
  margin-inline: auto;
}
.footer__menu {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 965px;
  margin-inline: auto;
  width: 100%;
  row-gap: 5px;
}
.footer__list {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .footer__list {
    width: 33%;
  }
}
.footer__link {
  display: block;
  margin-inline: auto;
  font-size: 18px;
  font-weight: 700;
  padding-left: 20px;
  padding-right: 20px;
  border-right: 1px solid #231815;
}
@media screen and (max-width: 768px) {
  .footer__link {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 15px;
  }
}
.footer__link:first-of-type {
  border-left: 1px solid #231815;
}
.footer__btn__menu {
  margin-top: 30px;
  display: grid;
  grid-template-columns: 38% 29%;
  justify-content: center;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .footer__btn__menu {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 768px) {
  .footer__btn__list:nth-of-type(2), .footer__btn__list:nth-of-type(3) {
    width: 90%;
    margin-inline: auto;
  }
}
.footer__copyright {
  color: #231815;
  margin-top: 20px;
  display: block;
  font-size: 13px;
  padding-bottom: 130px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .footer__copyright {
    padding-bottom: 120px;
  }
}
/**
* @file _l-header.scss
**/
.header {
  padding: 15px 25px;
  position: fixed;
  z-index: 1000;
  width: 100%;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.header.is-fixed {
  position: fixed;
}
@media screen and (max-width: 768px) {
  .header {
    padding: 15px;
  }
}
.header .header__nav {
  width: 100%;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 90%;
}
@media screen and (max-width: 768px) {
  .header .header__nav {
    width: unset;
  }
}
.header .header__logo {
  width: 100%;
  max-width: 342px;
}
@media screen and (max-width: 768px) {
  .header .header__logo {
    max-width: 135px;
  }
}
.header .header__logo--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .header .header__logo--sp {
    display: block;
    width: 100%;
    margin-inline: auto;
    max-width: 90px;
  }
}
.header .header__menu {
  margin-top: 60px;
  width: 100%;
}
.header .header__menu .header__list {
  white-space: nowrap;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .header .header__menu .header__list {
    width: 100%;
  }
}
.header .header__menu .header__list:first-of-type {
  margin-top: 0;
}
.header .header__menu .header__list .header__link {
  position: relative;
  font-weight: 800;
  font-size: 18px;
}
.header .header__tel__link {
  text-align: right;
  display: block;
  background-color: #fff;
  padding: 20px 20px 20px 50px;
  border: solid 1px #231815;
  -webkit-box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.1);
}
.header .header__tel__link span {
  display: block;
  line-height: 1;
  white-space: nowrap;
}
.header .header__tel__link span:nth-of-type(1) {
  font-size: 24px;
  position: relative;
}
.header .header__tel__link span:nth-of-type(1)::before {
  position: absolute;
  left: -50px;
  top: -3px;
  content: "";
  display: block;
  max-width: 72px;
  width: 100%;
  height: 52px;
  background-image: url(../images/common/tel.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.header .header__tel__link span:nth-of-type(2) {
  margin-top: 5px;
  font-size: 12px;
}
.header .header__nav__title {
  margin-right: auto;
  max-width: 91px;
  margin-top: 50px;
  font-weight: 900;
  font-size: 32px;
}
@media screen and (max-width: 768px) {
  .header .header__nav__title {
    margin-top: 25px;
  }
}
.header .nav {
  overflow-y: scroll; /* 縦方向にスクロール可能にする */
  max-width: 400px;
  position: fixed;
  top: 0;
  right: -100%;
  padding: 100px;
  z-index: 1000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: initial;
  -webkit-justify-content: initial;
  -ms-flex-pack: initial;
  justify-content: initial;
  width: 100%;
  height: 100svh;
  background-color: rgba(255, 255, 255, 0.95);
  -webkit-transition: 0.6s;
  transition: 0.6s;
  /********************************************************/
  /* ハンバーガーメニュー */
  /********************************************************/
}
.header .nav.is-open {
  right: 0;
}
.header .nav .header__lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
  padding: 2% 0;
}
.header .nav .header__item {
  position: relative;
}
@media screen and (max-width: 768px) {
  .header .nav .header__item {
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .header .nav .header__item:first-of-type {
    margin-top: 30px;
  }
}
.header .nav .header__item:not(:first-of-type) {
  margin-left: 2%;
}
@media screen and (max-width: 768px) {
  .header .nav .header__item:not(:first-of-type) {
    margin-left: 20px;
  }
}
@media screen and (max-width: 768px) {
  .header .nav .header__item:not(:first-of-type) {
    margin-left: 0;
  }
}
.header .nav__link {
  width: 100%;
  font-size: min(1vw, 15px);
  font-weight: 600;
  color: #333;
  text-decoration: none;
  position: relative;
  display: inline-block;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.header .nav__link:hover {
  color: #ef7b51;
}
.header .nav__link:hover::after {
  width: 100%;
}
.header .nav__link::after {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -5px;
  left: 50%;
  background-color: #ef7b51;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .header .nav__link {
    display: block;
    padding: 16px 0;
    font-size: 1.5rem;
  }
}
.header .nav .header__lcon__menu {
  margin-top: 40px;
  width: 100%;
  display: grid;
  grid-template-columns: 36% 1fr;
  gap: 40px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.header .nav .header__lcon__menu li:nth-child(3) {
  grid-column: 1 / -1;
}
.header .nav .header__lcon__menu li:nth-child(3) a {
    width: 36%;
    display: block;
    margin: 0 auto;
}
.header .nav__toggle {
  position: fixed;
  z-index: 2000;
  min-width: 58px;
  height: 58px;
  cursor: pointer;
  top: 20px;
  right: 20px;
  background-color: #cd3b28;
  border-radius: 3px;
  padding: 15px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.header .nav__menu-line {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1000;
  width: 34px;
  height: 3.75px;
  background-color: #fff;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
@media screen and (max-width: 768px) {
  .header .nav__link--top {
    padding: 8px 0;
  }
}
.header .menu-line1 {
  top: 18px;
}
.header .menu-line2 {
  top: 28px;
}
.header .menu-line3 {
  top: 39px;
}
.header #js-nav-menu.is-open .menu-line1 {
  position: absolute;
  top: 27px;
  left: 12px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  background-color: #231815;
}
.header #js-nav-menu.is-open .menu-line2 {
  opacity: 0;
}
.header #js-nav-menu.is-open .menu-line3 {
  position: absolute;
  max-width: 50px;
  top: 27px;
  left: 13px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  background-color: #231815;
}
.header .nav__toggle.is-open {
  background-color: #fff;
}
.header #js-nav.is-open .nav__lists {
  right: 0;
}
.top__btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  .top__btn {
    bottom: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
  }
}
.sp__menu {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp__menu {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 1000;
  }
}
.sp__list:nth-of-type(1) .sp__link {
  gap: 10px;
}
.sp__list:nth-of-type(1) .sp__link span {
  display: block;
  font-size: 16px;
}
.sp__list:nth-of-type(2) .sp__link span:nth-of-type(1) {
  display: block;
  font-size: 20px;
}
.sp__list:nth-of-type(2) .sp__link span:nth-of-type(2) {
  margin-top: 10px;
  display: block;
  font-size: 10px;
}
.sp__list:nth-of-type(2) .sp__icon {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}
.sp__link {
  line-height: 1;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #fff;
  padding: 15px;
  border: solid 1px #231815;
  -webkit-box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.1);
  height: 65px;
}
.sp__icon {
  width: 50%;
  max-width: 38px;
}
.sp__text span {
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .header__lower {
    background-color: transparent !important;
  }
}
.bottom__btn {
  position: fixed;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
  z-index: 100;
  max-width: 950px;
}
@media screen and (max-width: 768px) {
  .bottom__btn {
    max-width: 400px;
  }
}
.bottom__btn__link {
  width: 100%;
}
.top__mv__picture {
  display: block;
  width: 100%;
}
/* モーダルが表示されているときのbodyのスタイル */
body.modal-open {
  overflow: hidden;
}
.inner {
  width: 100%;
  max-width: min(100% - 40px, 1130px);
  margin-inline: auto;
}
@media screen and (max-width: 1024px) {
  .inner {
    max-width: min(100% - 30px, 740px);
  }
}
@media screen and (max-width: 768px) {
  .inner {
    max-width: min(100% - 30px, 540px);
  }
}
/* フェードイン(初期値) */
.js-fadeUp {
  opacity: 0;
  /* 最初は非表示 */
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  /* 下に30pxの位置から */
  -webkit-transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, -webkit-transform 0.8s;
  transition: opacity 0.8s, transform 0.8s;
  transition: opacity 0.8s, transform 0.8s, -webkit-transform 0.8s;
  /* 透過率と縦方向の移動を0.8秒 */
}
.inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  -webkit-transform: translateY(0);
  transform: translateY(0);
  /* 30px上に移動する */
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
  /* フェード開始を0.5秒遅らせる */
}
/********************************************************/
/* モーダルウィンドウ */
/********************************************************/
/* モーダルのスタイル */
.modal {
  visibility: hidden;
  position: fixed; /* 固定位置 */
  left: 0;
  top: 0;
  width: 100%; /* 全幅 */
  height: 100%; /* 全高 */
  overflow: auto; /* スクロールが必要な場合に対応 */
  background-color: rgba(0, 0, 0, 0.4); /* 背景の透明度 */
  opacity: 0; /* 初期状態で透明 */
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: 3000;
}
/* モーダルが表示されるときのスタイル */
.modal.show {
  visibility: visible;
  opacity: 1; /* 不透明 */
}
/* モーダルコンテンツ */
.modal__container {
  background-color: #fefefe;
  margin: 15% auto; /* 上下のマージンを追加し、中央揃え */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* 幅を設定 */
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: transform 0.5s ease, opacity 0.5s ease;
  transition: transform 0.5s ease, opacity 0.5s ease, -webkit-transform 0.5s ease; /* アニメーションの追加 */
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px); /* 初期状態で少し上に */
  opacity: 0; /* 初期状態で透明 */
  z-index: 3000;
}
.modal.show .modal__container {
  -webkit-transform: translateY(0);
  transform: translateY(0); /* モーダルが表示されるときに元の位置に */
  opacity: 1; /* 不透明 */
}
/* 閉じるボタンのスタイル */
.close {
  display: block;
  max-width: 98px;
  width: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  top: 20px;
  right: 20px;
}
.close:hover, .close:focus {
  cursor: pointer;
  opacity: 0.7;
}
.modal__occupation__container {
  padding: 40px;
  position: relative;
  background-color: #fff;
  border: 18px solid #3eb157;
  overflow: scroll;
}
@media screen and (max-width: 768px) {
  .modal__occupation__container {
    border: 10px solid #3eb157;
    padding: 140px 10px 10px 10px;
  }
}
.modal__occupation__contents {
  max-width: 965px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
}
@media screen and (max-width: 768px) {
  .modal__occupation__contents {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  .modal__occupation__contents:nth-of-type(1) {
    margin-top: 10px;
  }
}
.modal__occupation__contents:nth-of-type(2) {
  margin-top: 20px;
}
.modal__occupation__headline {
  max-width: 965px;
  margin-inline: auto;
}
.modal__occupation__headline span:nth-of-type(1) {
  display: block;
  font-size: 28px;
}
@media screen and (max-width: 768px) {
  .modal__occupation__headline span:nth-of-type(1) {
    font-size: 20px;
  }
}
.modal__occupation__headline span:nth-of-type(2) {
  margin-top: 20px;
  display: block;
  font-size: 45px;
  font-weight: 900;
}
.modal__occupation__text {
  margin-top: 30px;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .modal__occupation__text {
    margin-top: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }
}
.modal__occupation__flow-title {
  font-size: 21px;
}
@media screen and (max-width: 768px) {
  .modal__occupation__flow-title {
    margin-top: 20px;
  }
}
.modal__occupation__table {
  font-size: 18px;
  font-weight: 700;
}
.modal__occupation__table__header {
  text-align: left;
  width: 13%;
}
.modal__occupation__btn {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .modal__occupation__btn {
    margin-top: 20px;
  }
}
.modal__occupation__btn__link {
  background-color: #3eb157;
  color: #fff;
  padding: 20px;
  text-align: center;
  border-radius: 33px;
  display: block;
  max-width: 335px;
  margin-inline: auto;
}
/********************************************************/
/* modal__staff */
/********************************************************/
.modal__staff__container {
  padding: 180px 40px 40px 40px;
  position: relative;
  background-color: #fff;
  border: 18px solid #0eb2e9;
  overflow: scroll;
}
@media screen and (max-width: 768px) {
  .modal__staff__container {
    border: 10px solid #0eb2e9;
    padding: 140px 10px 10px 10px;
  }
}
.modal__staff__inner {
  max-width: 715px;
  margin-inline: auto;
}
.modal__staff__img {
  max-width: 570px;
  margin-inline: auto;
}
.modal__staff__message {
  margin-top: 30px;
  max-width: 570px;
  margin-inline: auto;
  font-size: 30px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .modal__staff__message {
    margin-top: 20px;
    font-size: 25px;
  }
}
.modal__staff__name {
  margin-top: 30px;
  max-width: 570px;
  font-weight: 500;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .modal__staff__name {
    margin-top: 20px;
  }
}
.modal__staff__name span:nth-of-type(1) {
  font-size: 18px;
}
.modal__staff__name span:nth-of-type(2) {
  font-size: 36px;
}
.modal__staff__menu {
  margin-top: 30px;
  max-width: 570px;
  font-weight: 500;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .modal__staff__menu {
    margin-top: 20px;
  }
}
.modal__staff__list {
  width: 50%;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .modal__staff__list {
    margin-top: 10px;
    width: 100%;
  }
}
.modal__staff__list:first-of-type {
  margin-top: 0;
}
.modal__staff__list span {
  color: #0eb2e9;
}
.modal__staff__question {
  margin-top: 60px;
  font-size: 30px;
  font-weight: 900;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .modal__staff__question {
    padding-left: 60px;
    margin-top: 50px;
    font-size: 23px;
    text-align: left;
    line-height: 1.5;
  }
}
.modal__staff__question span {
  position: relative;
}
.modal__staff__question span::before {
  content: url(../images/common/question.svg);
  display: block;
  height: 55px;
  width: 55px;
  position: absolute;
  left: -70px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .modal__staff__question span::before {
    left: -60px;
  }
}
.modal__staff__answer {
  margin-top: 30px;
  max-width: 570px;
  font-weight: 500;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .modal__staff__answer {
    margin-top: 20px;
  }
}
.modal__staff__btn {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .modal__staff__btn {
    margin-top: 30px;
  }
}
.modal__staff__btn__link {
  background-color: #0eb2e9;
  padding: 15px;
  text-align: center;
  border-radius: 33px;
  display: block;
  border-radius: 33px;
  max-width: 570px;
  margin-inline: auto;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 768px) {
  .modal__staff__btn__link {
    border-radius: 23px;
  }
}
.modal__staff__btn__link:hover {
  opacity: 0.7;
}
.modal__staff__btn__link span {
  position: relative;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}
.modal__staff__btn__link span::before {
  content: "";
  width: 28px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  display: block;
}
.modal__staff__btn__link span::after {
  content: "";
  width: 28px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  display: block;
}
/********************************************************/
/* modal__privacy */
/********************************************************/
.modal__privacy__container {
  padding: 50px;
  position: relative;
  background-color: #fff;
  border: solid 5px #000;
  overflow: scroll;
  margin-top: 40px;
  margin-bottom: 40px;
  width: 90%;
  margin-inline: auto;
  max-width: 1100px;
}
@media screen and (max-width: 768px) {
  .modal__privacy__container {
    border: 3px solid #000;
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
    width: 90%;
  }
}
.modal__privacy__btn {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .modal__privacy__btn {
    margin-top: 30px;
  }
}
.modal__privacy__btn__link {
  background-color: #000;
  padding: 15px;
  text-align: center;
  border-radius: 33px;
  display: block;
  border-radius: 33px;
  max-width: 570px;
  margin-inline: auto;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 768px) {
  .modal__privacy__btn__link {
    border-radius: 23px;
  }
}
.modal__privacy__btn__link:hover {
  opacity: 0.7;
}
.modal__privacy__btn__link span {
  position: relative;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}
.modal__privacy__btn__link span::before {
  content: "";
  width: 28px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  display: block;
}
.modal__privacy__btn__link span::after {
  content: "";
  width: 28px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  left: -50px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  display: block;
}
.privacy__title {
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .privacy__title {
    font-size: 20px;
  }
}
.privacy__text {
  margin-top: 10px;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .privacy__text {
    margin-top: 5px;
    font-size: 14px;
  }
}
.privacy__headline {
  margin-top: 30px;
  font-size: 22px;
}
@media screen and (max-width: 768px) {
  .privacy__headline {
    margin-top: 20px;
    font-size: 16px;
  }
}
.container {
  text-align: center;
  padding: 150px 40px 100px 40px;
}
@media screen and (max-width: 768px) {
  .container {
    padding: 100px 20px 50px 20px;
  }
}
.page-title {
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .page-title {
    font-size: 20px;
  }
}
.page-text {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .page-text {
    font-size: 14px;
  }
}
.splide1 {
  max-width: 100%;
  margin-inline: auto;
  width: 100%;
}
.splide1 .splide__pagination {
  bottom: 40px;
  gap: 25px;
}
@media screen and (max-width: 768px) {
  .splide1 .splide__pagination {
    bottom: 15px;
  }
}
.splide1 .splide__pagination__page {
  background: transparent;
  border: solid 1px #fff;
  -webkit-transform: scale(3);
  transform: scale(3);
}
.splide1 .splide__pagination__page.is-active {
  background: #fff;
  z-index: 1;
}
.features {
  padding-top: 80px;
  padding-bottom: 90px;
  background-color: #fcf8d7;
  border-radius: 0 0 100px 100px;
}
@media screen and (max-width: 768px) {
  .features {
    padding-top: 20px;
    border-radius: 0 0 50px 50px;
  }
}
.features__contents.--top {
  display: grid;
  grid-template-columns: 1fr 43%;
  gap: 100px;
  max-width: 850px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .features__contents.--top {
    gap: 50px;
    grid-template-columns: 1fr;
  }
}
.features__contents.--top figure:only-child {
  grid-column: 1 / -1;
  justify-self: center;
  width: 43%;
}
@media screen and (max-width: 768px) {
  .features__contents.--top figure:only-child {
    width: 100%;
  }
}
.features__contents.--bottom {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 70px;
  max-width: 1000px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .features__contents.--bottom {
    gap: 20px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.features__contents.--bottom .features__img {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .features__contents.--bottom .features__img {
    width: 40%;
  }
}
.common__text.--big.--center {
  font-weight: 900;
  margin-top: 80px;
  font-size: 40px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .common__text.--big.--center {
    font-size: 22px;
  }
}
.common__text.--big.--center span {
  color: #cd3b28;
  border-bottom: 3px solid #cd3b28;
}
.common__text.--center {
  margin-top: 20px;
  font-weight: 700;
  font-size: 23px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .common__text.--center {
    font-size: 17px;
  }
}
.common__text.--bottom.--center {
  font-weight: 900;
  margin-top: 60px;
  font-size: 40px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .common__text.--bottom.--center {
    font-size: 22px;
  }
}
.common__btn {
  margin-top: 50px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .common__btn {
    margin-top: 30px;
  }
}
.common__btn__link {
  margin-inline: auto;
  background-color: #fff;
  font-size: 18px;
  font-weight: 900;
  padding: 20px;
  max-width: 420px;
  width: 100%;
  display: block;
  border-radius: 43px;
  border: solid 3px #231815;
  position: relative;
}
@media screen and (max-width: 768px) {
  .common__btn__link {
    font-size: 16px;
  }
}
.common__btn__link::after {
  content: url(../images/common/arrow-red-w.svg);
  display: block;
  height: 50px;
  width: 50px;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .common__btn__link::after {
    height: 40px;
    width: 40px;
  }
}
.movie {
  padding-top: 110px;
  padding-bottom: 180px;
}
@media screen and (max-width: 768px) {
  .movie {
    padding-top: 100px;
    padding-bottom: 90px;
  }
}
.movie__contents.--top {
  width: 100%;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .movie__contents.--top {
    gap: 30px;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 768px) {
  .movie__img {
    width: 90%;
    margin-left: auto;
  }
}
.movie__title {
  max-width: 200px;
  margin-inline: auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .movie__title {
    max-width: 170px;
  }
}
.movie__title span {
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .movie__title span {
    font-size: 25px;
  }
}
.movie__subtitle {
  text-align: center;
}
.movie__subtitle span:nth-of-type(1) {
  margin-top: 20px;
  display: block;
  max-width: 170px;
  margin-inline: auto;
}
.movie__subtitle span:nth-of-type(2) {
  margin-top: 20px;
  display: inline-block;
  font-size: 27px;
  border-bottom: 3px solid #231815;
}
@media screen and (max-width: 768px) {
  .movie__subtitle {
    display: none;
  }
}
.movie__subtitle.--sp {
  text-align: center;
  display: none;
}
@media screen and (max-width: 768px) {
  .movie__subtitle.--sp {
    display: block;
  }
}
.movie__subtitle.--sp span:nth-of-type(1) {
  margin-top: 20px;
  display: block;
  max-width: 170px;
  margin-inline: auto;
}
.movie__subtitle.--sp span:nth-of-type(2) {
  margin-top: 30px;
  display: inline-block;
  font-size: 21px;
  border-bottom: 3px solid #231815;
}
.movie__contents.--bottom {
  margin-top: -20px;
}
@media screen and (max-width: 768px) {
  .movie__contents.--bottom {
    margin-top: 30px;
    overflow: scroll;
    width: 90%;
    margin-inline: auto;
  }
}
.movie__contents__youtube__wrap {
  position: relative;
  width: 85%;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 3%;
}
@media screen and (max-width: 768px) {
  .movie__contents__youtube__wrap {
    width: 1280px;
  }
}
.movie__contents__youtube iframe {
  border-radius: 25px;
  border: solid 3px #fff;
}
@media screen and (max-width: 768px) {
  .movie .common__btn {
    width: 90%;
    margin-inline: auto;
  }
}
.line-cv1 {
  width: 100%;
  padding-top: 100px;
  padding-bottom: 330px;
  background-image: url(../images/pages/top/bg1.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 100px 100px 0 0;
}
@media screen and (max-width: 768px) {
  .line-cv1 {
    margin-top: 300px;
    border-radius: 0;
    padding-top: 0;
    padding-bottom: 0;
    height: 465px;
    background-position: left;
  }
}
.line-cv__img {
  max-width: 785px;
  margin-inline: auto;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .line-cv__img {
    max-width: 450px;
    top: -300px;
  }
}
.line-cv1__link {
  max-width: 335px;
  width: 100%;
  height: 75px;
  border-radius: 35px;
  display: block;
  position: absolute;
  z-index: 50;
  bottom: 42px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: rgba(255, 255, 255, 0);
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .line-cv1__link {
    bottom: 32px;
  }
}
.line-cv1__link::hover {
  background-color: rgb(255, 255, 255);
}
.occupation {
  background-color: #e8f2d9;
  padding-top: 110px;
  padding-bottom: 180px;
  border-radius: 0 0 100px 100px;
}
@media screen and (max-width: 768px) {
  .occupation {
    padding-top: 80px;
    padding-bottom: 100px;
    border-radius: 0 0 50px 50px;
  }
}
.occupation__contents.--top {
  width: 90%;
  margin-left: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .occupation__contents.--top {
    width: 100%;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.occupation__img {
  width: 90%;
  margin-left: auto;
}
.occupation__title {
  max-width: 385px;
  margin-inline: auto;
  text-align: center;
  width: 90%;
}
.occupation__title span:first-of-type {
  margin-top: 0;
}
.occupation__title span {
  display: block;
  margin-top: 30px;
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .occupation__title span {
    margin-top: 20px;
    font-size: 25px;
  }
}
.occupation__text {
  text-align: center;
  font-size: 20px;
  font-weight: 900;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .occupation__text {
    font-size: 17px;
    font-weight: 900;
    margin-top: 20px;
  }
}
.occupation__subtitle.--sp {
  text-align: center;
  display: none;
}
@media screen and (max-width: 768px) {
  .occupation__subtitle.--sp {
    display: block;
  }
}
.occupation__subtitle.--sp span:nth-of-type(1) {
  margin-top: 50px;
  display: block;
  max-width: 170px;
  margin-inline: auto;
}
.occupation__subtitle.--sp span:nth-of-type(2) {
  margin-top: 30px;
  display: inline-block;
  font-size: 27px;
  border-bottom: 3px solid #231815;
}
.occupation__contents.--bottom {
  max-width: 1150px;
  position: relative;
  margin-top: -20px;
  width: 85%;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .occupation__contents.--bottom {
    margin-top: 30px;
    width: 90%;
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.occupation__contents__text {
  margin-top: 10px;
  font-size: 17px;
  font-weight: 700;
}
.occupation__contents__title {
  margin-top: 10px;
  font-size: 30px;
  font-weight: 900;
}
.occupation__btn {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .occupation__btn {
    margin-top: 20px;
  }
}
.occupation__btn__link {
  margin-inline: auto;
  display: block;
  font-size: 17px;
  font-weight: 900;
  background-color: #3eb157;
  border-radius: 50px;
  padding: 20px;
  max-width: 270px;
  color: #fff;
  width: 100%;
  position: relative;
  border: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .occupation__btn__link {
    font-size: 18px;
  }
}
.occupation__btn__link:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .occupation__btn__link:hover {
    opacity: 1;
  }
}
.occupation__btn__link:visited {
  color: #fff;
}
.occupation__btn__link::after {
  content: url(../images/common/arrow-white-g.svg);
  display: block;
  height: 26px;
  width: 26px;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .occupation__btn__link::after {
    height: 40px;
    width: 40px;
  }
}
.staff {
  padding-top: 190px;
  padding-bottom: 190px;
}
@media screen and (max-width: 768px) {
  .staff {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
.staff__title span:nth-of-type(1) {
  display: block;
  max-width: 190px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .staff__title span:nth-of-type(1) {
    max-width: 165px;
  }
}
.staff__title span:nth-of-type(2) {
  margin-top: 20px;
  display: block;
  text-align: center;
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .staff__title span:nth-of-type(2) {
    font-size: 25px;
  }
}
.staff__title span:nth-of-type(3) {
  display: block;
  text-align: center;
  font-size: 31px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .staff__title span:nth-of-type(3) {
    font-size: 25px;
  }
}
.staff__contents {
  max-width: 1000px;
  margin-inline: auto;
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .staff__contents {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .staff__contents:first-of-type {
    margin-top: 30px;
  }
}
.staff__item {
  display: grid;
  grid-template-columns: 55% 1fr;
  gap: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .staff__item {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.staff__text:nth-of-type(1) {
  font-size: 30px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .staff__text:nth-of-type(1) {
    font-size: 23px;
  }
}
.staff__text:nth-of-type(2) {
  margin-top: 70px;
  font-size: 17px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .staff__text:nth-of-type(2) {
    margin-top: 30px;
  }
}
.staff__text:nth-of-type(3) {
  margin-top: 10px;
  font-size: 36px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .staff__text:nth-of-type(3) {
    margin-top: 5px;
  }
}
.staff__btn {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .staff__btn {
    margin-top: 20px;
  }
}
.staff__btn__link {
  display: block;
  width: 100%;
  padding: 20px;
  background-color: #0eb2e9;
  color: #fff;
  text-align: center;
  font-weight: 900;
  font-size: 18px;
  border-radius: 50px;
  border: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .staff__btn__link {
    font-size: 18px;
  }
}
.staff__btn__link:hover {
  opacity: 0.7;
}
.staff__btn__link span {
  color: #fff;
  position: relative;
}
.staff__btn__link span::after {
  content: url(../images/common/arrow-white-b.svg);
  display: block;
  height: 26px;
  width: 26px;
  position: absolute;
  right: -30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .staff__btn__link span::after {
    height: 40px;
    width: 40px;
    right: -100px;
  }
}
.line-cv2 {
  width: 100%;
  height: 830px;
  position: relative;
  background-image: url(../images/pages/top/bg2.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 100px 100px 0 0;
  margin-top: 180px;
}
@media screen and (max-width: 768px) {
  .line-cv2 {
    border-radius: 50px 50px 0 0;
    margin-top: 500px;
    height: 230px;
  }
}
.line-cv2 .line-cv__img {
  max-width: 785px;
  margin-inline: auto;
  width: 100%;
  position: absolute;
  top: -220px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .line-cv2 .line-cv__img {
    max-width: 450px;
    width: 90%;
    top: -560px;
  }
}
.line-cv1__link {
  max-width: 335px;
  width: 100%;
  height: 75px;
  border-radius: 35px;
  display: block;
  position: absolute;
  z-index: 50;
  bottom: 42px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: rgba(255, 255, 255, 0);
  cursor: pointer;
}
.line-cv1__link:hover {
  background-color: rgba(255, 255, 255, 0.5);
}
.recruit {
  background-color: #fcf8d7;
  padding-top: 200px;
  padding-bottom: 200px;
}
@media screen and (max-width: 768px) {
  .recruit {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
.recruit__title {
  max-width: 265px;
  margin-inline: auto;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .recruit__title {
    max-width: 230px;
  }
}
.recruit__title span:nth-of-type(2) {
  display: block;
  margin-top: 20px;
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .recruit__title span:nth-of-type(2) {
    font-size: 25px;
  }
}
.recruit__text {
  margin-top: 20px;
  text-align: center;
}
.recruit__text span {
  display: inline-block;
  background-color: #cd3b28;
  color: #fff;
  font-weight: 700;
  border-radius: 25px;
  padding: 10px 20px;
  margin-inline: auto;
  text-align: center;
  font-size: 21px;
}
@media screen and (max-width: 768px) {
  .recruit__text span {
    font-size: 17px;
  }
}
.recruit__search {
  max-width: 650px;
  margin-inline: auto;
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .recruit__search {
    margin-top: 30px;
  }
}
.recruit__search__title {
  text-align: center;
  font-size: 26px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .recruit__search__title {
    font-size: 25px;
  }
}
input {
  border: none;
}
select {
  color: #101010;
  width: 60%;
  line-height: 1;
  height: 50px;
  border: 2px solid #231815;
  border-radius: 5px;
  background: #fff;
  padding: 5px;
  font-size: 21px;
  font-weight: 500;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("../images/pages/top/select.svg");
  background-repeat: no-repeat;
  background-size: 38px auto; /* 画像のサイズ（幅 高さ）*/
  background-position: right 5px center; /* 画像の位置 */
}
@media screen and (max-width: 768px) {
  select {
    width: 100%;
  }
}
.recruit__search__item:first-of-type {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit__search__item:first-of-type {
    gap: 20px;
  }
}
.recruit__search__item:first-of-type .recruit__search__item-box {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .recruit__search__item:first-of-type .recruit__search__item-box {
    width: 100%;
  }
}
.recruit__search__item:nth-of-type(2) {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .recruit__search__item:nth-of-type(2) {
    margin-top: 20px;
  }
}
.recruit__search__header {
  font-size: 21px;
  font-weight: 500;
  margin-right: 10px;
  width: 30%;
}
.label {
  width: 70%;
}
.textbox {
  line-height: 1;
  height: 50px;
  border: 2px solid #231815;
  border-radius: 5px;
  background: #fff;
  padding: 5px;
  font-size: 21px;
  font-weight: 500;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 72%;
}
@media screen and (max-width: 768px) {
  .textbox {
    width: 100%;
  }
}
.textbox:focus {
  outline: 0;
  border: 2px solid #2196f3;
}
.recruit__search__btn__menu {
  margin-top: 50px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .recruit__search__btn__menu {
    margin-top: 30px;
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.recruit__search__btn__list:nth-of-type(1) .recruit__search__btn__link {
  background-color: #cd3b28;
  padding: 15px;
  color: #fff;
  font-weight: 700;
  text-align: center;
  border-radius: 50px;
  max-width: 335px;
  display: block;
  font-size: 18px;
  width: 100%;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
@media screen and (max-width: 768px) {
  .recruit__search__btn__list:nth-of-type(1) .recruit__search__btn__link {
    font-size: 16px;
    margin-inline: auto;
  }
}
.recruit__search__btn__list:nth-of-type(1) .recruit__search__btn__link:hover {
  opacity: 0.7;
}
.recruit__search__btn__list:nth-of-type(2) .recruit__search__btn__link {
  background-color: #fff;
  padding: 15px;
  color: #231815;
  font-weight: 700;
  border: 1px solid #231815;
  text-align: center;
  border-radius: 50px;
  max-width: 335px;
  display: block;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .recruit__search__btn__list:nth-of-type(2) .recruit__search__btn__link {
    font-size: 16px;
    margin-inline: auto;
  }
}
.recruit__container {
  margin-top: 100px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 100px 25px;
}
@media screen and (max-width: 768px) {
  .recruit__container {
    margin-top: 50px;
    grid-template-columns: 1fr;
    gap: 50px;
  }
}
.recruit__search__result__title {
  text-align: center;
  padding-top: 120px;
  padding-bottom: 20px;
  border-bottom: 1px solid #231815;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .recruit__search__result__title {
    padding-top: 100px;
    font-size: 24px;
  }
}
.recruit__search__result__text {
  text-align: center;
  padding-top: 100px;
  padding-bottom: 100px;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .recruit__search__result__text {
    font-size: 24px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.recruit__search__container {
  max-width: 1170px;
  margin-inline: auto;
  padding: 50px 40px 100px 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 100px 25px;
}
@media screen and (max-width: 768px) {
  .recruit__search__container {
    padding: 25px 20px 50px 20px;
    grid-template-columns: 1fr;
    gap: 50px;
  }
}
.recruit__date {
  margin-top: 10px;
  font-size: 18px;
  color: #9fa0a0;
}
@media screen and (max-width: 768px) {
  .recruit__date {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.recruit__tag__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  max-width: 180px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit__tag__menu {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.recruit__tag__list {
  padding: 5px;
  color: #fff;
  border-radius: 5px;
  line-height: 1;
  font-weight: 700;
  font-size: 18px;
}
.recruit__tag__list:nth-of-type(1) {
  background-color: #3eb157;
  padding: 5px;
}
.recruit__tag__list:nth-of-type(2) {
  background-color: #cd3b28;
}
.recruit__tag__list:nth-of-type(3) {
  background-color: #0eb2e9;
}
.recruit__contents__text {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit__contents__text {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.line-cv__img {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .line-cv__img {
    margin-top: 50px;
    max-width: 450px;
  }
}
.recruit__line-cv__img {
  max-width: 785px;
  margin-inline: auto;
  width: 100%;
  position: relative;
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .recruit__line-cv__img {
    max-width: 450px;
    margin-top: 50px;
  }
}
.company {
  padding-top: 200px;
  padding-bottom: 200px;
  background-color: #fff;
  border-radius: 100px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .company {
    padding-top: 90px;
    padding-bottom: 90px;
    border-radius: 50px;
  }
}
.company:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fcf8d7;
  z-index: -1;
}
.company__title span:nth-of-type(1) {
  display: block;
  max-width: 305px;
  margin-inline: auto;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .company__title span:nth-of-type(1) {
    max-width: 265px;
  }
}
.company__title span:nth-of-type(2) {
  display: block;
  text-align: center;
  font-size: 40px;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .company__title span:nth-of-type(2) {
    font-size: 25px;
  }
}
.company__contents.--top {
  width: 90%;
  max-width: 950px;
  margin-inline: auto;
  margin-top: 100px;
  display: grid;
  grid-template-columns: 30% 1fr;
  gap: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .company__contents.--top {
    margin-top: 30px;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.company__contents.--bottom {
  max-width: 875px;
  margin-inline: auto;
  margin-top: 100px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .company__contents.--bottom {
    margin-top: 50px;
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.company__contents.--bottom .company__contents__item {
  grid-column: 1 / -1;
  justify-self: center;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .company__contents.--bottom .company__contents__item {
    display: block;
  }
}
.company__img {
  max-width: 217px;
  margin-inline: auto;
}
.company__table {
  text-align: left;
}
.company__table__contents {
  line-height: 2.5;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .company__table__contents {
    line-height: 2;
    font-size: 16px;
  }
}
.company__table__header {
  position: relative;
  padding-right: 10px;
  vertical-align: top;
}
@media screen and (max-width: 768px) {
  .company__table__header {
    width: 40%;
  }
}
.company__table__header::before {
  content: "";
  position: absolute;
  left: -25px;
  top: 17px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: #cd3b28;
  display: block;
  height: 14px;
  width: 14px;
}
@media screen and (max-width: 768px) {
  .company__table__header::before {
    left: -20px;
    top: 10px;
  }
}
@media screen and (max-width: 768px) {
  .company__table__data {
    width: 60%;
  }
}
.company__contents__item:nth-of-type(2) .company__contents__item__img:nth-of-type(1) {
  width: 75%;
  margin-inline: auto;
}
.company__contents__item__img:nth-of-type(1) {
  width: 43.5%;
}
.company__contents__item__img:nth-of-type(2) {
    width: 50%;
}
@media screen and (max-width: 768px) {
    .company__contents__item__img:nth-of-type(1) {
      width: 100%;
      margin-inline: auto;
    }
    .company__contents__item__img:nth-of-type(2) {
      width: 100%;
      margin-top: 30px;
    }
}
.contact {
  padding-top: 100px;
  padding-bottom: 200px;
  background-color: #fcf8d7;
}
@media screen and (max-width: 768px) {
  .contact {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
.contact__title {
  text-align: center;
  color: #cd3b28;
  font-weight: 900;
  font-size: 35px;
}
@media screen and (max-width: 768px) {
  .contact__title {
    font-size: 25px;
  }
}
.contact__form {
  margin-top: 20px;
  border: 5px solid #cd3b28;
  max-width: 965px;
  margin-inline: auto;
  width: 100%;
  padding: 0 80px 80px 80px;
  border-radius: 100px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .contact__form {
    padding: 0 20px 20px 20px;
    border-radius: 0 0 50px 50px;
    width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.contact__form__headline {
  text-align: center;
  background-color: #cd3b28;
  color: #fff;
  font-size: 40px;
  font-weight: 900;
  padding: 15px;
  border-radius: 0 0 58px 58px;
}
@media screen and (max-width: 768px) {
  .contact__form__headline {
    font-size: 29px;
    width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.contact__text.--top {
  margin-top: 30px;
  text-align: center;
  font-size: 25px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .contact__text.--top {
    margin-top: 20px;
    font-size: 16px;
  }
}
.contact__text.--bottom {
  margin-top: 20px;
  text-align: center;
  font-size: 34px;
  font-weight: 700;
  color: #3eb157;
}
@media screen and (max-width: 768px) {
  .contact__text.--bottom {
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 20px;
  }
}
.reserve__menu {
  margin-top: 50px;
  max-width: 800px;
  margin-inline: auto;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .reserve__menu {
    margin-top: 0;
  }
}
.reserve__list {
  width: 100%;
  display: grid;
  gap: 20px;
  grid-template-columns: 30% 1fr;
}
@media screen and (max-width: 768px) {
  .reserve__list {
    grid-template-columns: 1fr;
    gap: 0px;
  }
}
.reserve__list__header {
  padding-top: 20px;
  padding-bottom: 20px;
  font-weight: 700;
  font-size: 16px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .reserve__list__header {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.reserve__list__header__text-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
}
.reserve__list__header__text {
  font-size: 21px;
}
.reserve__list__required {
  margin-left: auto;
  display: inline-block;
  margin-top: 2px;
  font-size: 16px;
  padding: 3px;
  color: #cd3b28;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .reserve__list__required {
    margin-left: 0;
  }
}
.reserve__list__any {
  display: inline-block;
  margin-top: 2px;
  font-size: 8px;
  padding: 3px;
  color: #fff;
  background-color: #a5a5a5;
  text-align: center;
  line-height: 1;
}
.reserve__list__deta {
  padding: 15px;
  letter-spacing: 1.5px;
}
@media screen and (max-width: 768px) {
  .reserve__list__deta {
    padding: 10px 0 20px;
  }
}
.reserve__list:nth-of-type(6) .reserve__list__deta {
  padding: 0;
  border-bottom: none;
}
.reserve__list:last-of-type .reserve__list__deta {
  border-bottom: none;
}
.reserve__list__deta__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #707070;
  padding: 15px;
}
@media screen and (max-width: 768px) {
  .reserve__list__deta__list {
    padding: 15px 0;
  }
}
.reserve__list__deta__text {
  margin-top: 10px;
  font-size: 14px;
  color: #3b4043;
}
textarea::-webkit-input-placeholder, input::-webkit-input-placeholder, select::-webkit-input-placeholder {
  font-size: 18px;
  color: #d0d0d0;
}
textarea::-moz-placeholder, input::-moz-placeholder, select::-moz-placeholder {
  font-size: 18px;
  color: #d0d0d0;
}
textarea:-ms-input-placeholder, input:-ms-input-placeholder, select:-ms-input-placeholder {
  font-size: 18px;
  color: #d0d0d0;
}
textarea::-ms-input-placeholder, input::-ms-input-placeholder, select::-ms-input-placeholder {
  font-size: 18px;
  color: #d0d0d0;
}
textarea::placeholder, input::placeholder, select::placeholder {
  font-size: 18px;
  color: #d0d0d0;
}
.wpcf7-list-item-label {
  color: #3b4043;
  font-size: 14px;
}
.wpcf7-list-item {
  margin: 0;
}
input[type=radio] {
  position: relative;
  margin-right: 10px;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type=radio]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #000;
  content: "";
}
textarea {
  border: solid 1px #231815;
  padding: 10px;
  border-radius: 10px;
  width: 94.5%;
  height: 140px;
  margin-inline: auto;
  display: block;
}
.nomination {
  max-width: 360px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.your-plan .wpcf7-list-item-label {
  margin-top: 10px;
  color: #3b4043;
  font-size: 14px;
}
.your-plan .wpcf7-list-item {
  margin-top: 10px;
}
.wpcf7-list-item-label {
  color: #3b4043;
  font-size: 18px;
}
.reserve__btn {
  position: relative;
  margin-top: 40px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .reserve__btn {
    margin-top: 20px;
  }
}
.wpcf7-submit {
  position: relative;
  text-align: center;
  font-weight: 400;
  display: inline-block;
  max-width: 535px;
  width: 100%;
  background-color: #cd3b28;
  color: #fff;
  border-radius: 50px;
  font-weight: 700;
  padding: 15px;
  font-size: 18px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.wpcf7-submit:hover {
  opacity: 0.7;
}
.reserve-text, .reserve-tel {
  width: 100%;
  border: solid 1px #231815;
  padding: 10px;
  border-radius: 10px;
}
.reserve__checkbox {
  margin-top: 30px;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.reserve__checkbox__text {
  font-size: 23px;
}
@media screen and (max-width: 768px) {
  .reserve__checkbox__text {
    font-size: 17px;
  }
}
.reserve__checkbox__text span {
  color: #3eb157;
  text-decoration: underline;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.reserve__checkbox__text span:hover {
  opacity: 0.7;
}
.wpcf7-not-valid-tip {
  font-size: 12px;
  position: absolute;
}
input[type=checkbox] {
  position: relative;
  cursor: pointer;
  margin-top: 7px;
  margin-right: 10px;
  width: 28px;
  height: 28px;
  border-radius: 4.5px;
  border: 1px solid #000;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 768px) {
  input[type=checkbox] {
    margin-top: 2px;
    margin-right: 10px;
    width: 24px;
    height: 24px;
  }
}
input[type=checkbox]:checked:before {
  position: absolute;
  top: -1px;
  left: 7px;
  -webkit-transform: rotate(50deg);
  transform: rotate(50deg);
  width: 12px;
  height: 20px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  content: "";
}
@media screen and (max-width: 768px) {
  input[type=checkbox]:checked:before {
    top: 1px;
    left: 6px;
    width: 10px;
    height: 16px;
  }
}
.wpcf7-list-item-label {
  display: none;
}
.recruit__single {
  padding-top: 200px;
  padding-left: 40px;
  padding-right: 40px;
}
@media screen and (max-width: 768px) {
  .recruit__single {
    padding-top: 100px;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.recruit__single:nth-of-type(2) {
  padding-top: 0;
  padding-left: 40px;
  padding-right: 40px;
}
@media screen and (max-width: 768px) {
  .recruit__single:nth-of-type(2) {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.recruit__single__inner {
  max-width: 765px;
  margin-inline: auto;
}
.recruit__single__date {
  font-size: 18px;
}
.recruit__single__tag__menu {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
}
.recruit__single__tag__list {
  color: #fff;
  padding: 5px;
  line-height: 1;
  border-radius: 3px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 700;
  font-size: 22px;
}
.recruit__single__tag__list:nth-of-type(1) {
  background-color: #3eb157;
}
.recruit__single__tag__list:nth-of-type(2) {
  background-color: #cd3b28;
}
.recruit__single__tag__list:nth-of-type(3) {
  background-color: #0eb2e9;
}
.recruit__single__title {
  margin-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #231815;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .recruit__single__title {
    font-size: 25px;
  }
}
.recruit__single__headline {
  padding-top: 20px;
}
.recruit__single__img {
  margin-top: 20px;
}
.recruit__single__number {
  margin-top: 40px;
  background-color: #0eb2e9;
  color: #fff;
  font-size: 25px;
  font-weight: 700;
  line-height: 1;
  padding: 0 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px;
}
@media screen and (max-width: 768px) {
  .recruit__single__number {
    font-size: 20px;
    gap: 2px;
  }
}
.recruit__single__number span {
  line-height: 1;
  font-size: 47px;
  color: #fff100;
  padding-bottom: 7px;
}
@media screen and (max-width: 768px) {
  .recruit__single__number span {
    font-size: 37px;
  }
}
.recruit__single__table {
  margin-top: 20px;
  width: 100%;
}
.recruit__single__table__contents {
  margin-top: 20px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.recruit__single__table__header {
  width: 20%;
  text-align: left;
  background-color: #231815;
  color: #fff;
  -moz-text-align-last: justify;
  text-align-last: justify;
  font-weight: 700;
  line-height: 1;
  padding: 8px 10px;
  font-size: 23px;
  letter-spacing: -2px;
  border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .recruit__single__table__header {
    width: 30%;
    font-size: 18px;
  }
}
.recruit__single__table__data {
  padding-left: 20px;
  margin-left: -2px;
  margin-top: -2px;
  width: 80%;
  font-size: 23px;
  border-bottom: 2px solid #231815;
}
@media screen and (max-width: 768px) {
  .recruit__single__table__data {
    margin-top: 5px;
    padding-left: 10px;
    width: 70%;
    font-size: 18px;
  }
}
.recruit__contact {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .recruit__contact {
    margin-top: 50px;
  }
}
/*-----------*/
.side-fixed {
  position: fixed;
  z-index: 100;
  right: 0;
  top: 120px;
}
.side-fixed .side_link + .side_link {
  margin: 10px 0 0;
}
.side-fixed .side_link a {
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
	background-position: center;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 150%;
  width: 50px;
  height: 250px;
}
.side-fixed .side_link.link01 a {
  background-image: url("../images/common/side-bnr01.svg");
}
.side-fixed .side_link.link02 a {
  background-image: url("../images/common/side-bnr02.svg");
}
.features__contents .features__img figcaption {
  display: block;
  background: #fff;
  border: solid 2px #231815;
  border-radius: 50px;
  text-align: center;
  overflow: hidden;
  margin: 35px auto 0;
  max-width: 276px;
}
.features__contents .features__img figcaption a {
  display: block;
  font-size: 17px;
  font-weight: 900;
  color: #231815;
  line-height: 60px;
  transition: all .2s;
	opacity: 1 !important;
}
.features__contents .features__img figcaption a:hover {
  color: #fff;
}
.features__contents .features__img.feature01 figcaption a:hover {
	background: #3EB157;
}
.features__contents .features__img.feature02 figcaption a:hover {
	background: #E60012;
}
@media screen and (max-width: 768px) {
  html[lang="ja"] {
    margin: 0 !important;
  }
  #wpadminbar {
    display: none !important;
  }
	.side-fixed {
  top: auto;
		right:2%;
		bottom:28vw;
}
.side-fixed .side_link a {

  width: 16vw;
  height: 16vw;
}
.side-fixed .side_link.link01 a {
  background-image: url("../images/common/logo-icon1.svg");
}
.side-fixed .side_link.link02 a {
  background-image: url("../images/common/logo-icon2.svg");
}
}